/// <summary> /// Configures the <see cref="ScriptRegistrar.DefaultGroup"/>. /// </summary> /// <param name="configureAction">The configure action.</param> /// <example> /// <code lang="CS"> /// <%= Html.NequeoUI().ScriptRegistrar() /// .DefaultGroup(group => group /// .Add("script1.js") /// .Add("script2.js") /// .Combined(true) /// ) /// %> /// </code> /// </example> public virtual ScriptRegistrarBuilder DefaultGroup(Action <WebAssetItemGroupBuilder> configureAction) { // If the instance object is null. if (configureAction == null) { throw new System.ArgumentNullException("configureAction"); } WebAssetItemGroupBuilder builder = new WebAssetItemGroupBuilder(_scriptRegistrar.DefaultGroup); configureAction(builder); return(this); }
/// <summary> /// Call the script action handler. /// </summary> /// <param name="configurationAction">The configuration action.</param> /// <returns>The current script builder</returns> public TBuilder Scripts(Action <WebAssetItemGroupBuilder> configurationAction) { // If the instance object is null. if (configurationAction == null) { throw new System.ArgumentNullException("action"); } // Create the web asset builder and execute the action. WebAssetItemGroupBuilder builder = new WebAssetItemGroupBuilder(Component.Scripts); configurationAction(builder); return(this as TBuilder); }
/// <summary> /// Adds the group. /// </summary> /// <param name="name">The name.</param> /// <param name="configureAction">The configure action.</param> /// <returns></returns> public virtual SharedWebAssetGroupBuilder AddGroup(string name, Action<WebAssetItemGroupBuilder> configureAction) { Guard.IsNotNullOrEmpty(name, "name"); Guard.IsNotNull(configureAction, "configureAction"); WebAssetItemGroup group; if (assets.TryGetValue(name, out group)) { throw new ArgumentException(TextResource.GroupWithSpecifiedNameAlreadyExistsPleaseSpecifyADifferentName.FormatWith(name)); } group = new WebAssetItemGroup(name, true) { DefaultPath = defaultPath }; assets.Add(name, group); WebAssetItemGroupBuilder builder = new WebAssetItemGroupBuilder(group); configureAction(builder); return this; }
/// <summary> /// Gets the group. /// </summary> /// <param name="name">The name.</param> /// <param name="configureAction">The configure action.</param> /// <returns></returns> public virtual SharedWebAssetGroupBuilder GetGroup(string name, Action<WebAssetItemGroupBuilder> configureAction) { Guard.IsNotNullOrEmpty(name, "name"); Guard.IsNotNull(configureAction, "configureAction"); WebAssetItemGroup group; if (!assets.TryGetValue(name, out group)) { throw new ArgumentException(TextResource.GroupWithSpecifiedNameDoesNotExistPleaseMakeSureYouHaveSpecifiedACorrectName.FormatWith(name)); } WebAssetItemGroupBuilder builder = new WebAssetItemGroupBuilder(group); configureAction(builder); return this; }
public WebAssetItemGroupBuilderTests() { _itemGroup = new WebAssetItemGroup("foo") { DefaultPath = WebAssetDefaultSettings.ScriptFilesPath }; _builder = new WebAssetItemGroupBuilder(_itemGroup); }