private static void RequireModuleLoader( this HtmlHelper helper, ScriptOutputContext context, StringBuilder stringBuilder) { if (!context.IsLoaderScriptWritten) { string action; var config = AmdConfiguration.Current; if (config.ScriptLoadingMode == ScriptLoadingMode.Dynamic) { if (config.LoaderUrl == null) { throw new AmdConfigurationException("Dynamic script loading requires a third-party script loader."); } else { action = "Loader"; } } else { action = "LiteLoader"; } helper.WriteScriptActionInclude(action, stringBuilder, false); context.IsLoaderScriptWritten = true; } }
private static void RequireModuleIncludeRecursive( this HtmlHelper helper, string moduleId, ScriptOutputContext context, StringBuilder stringBuilder) { if (!context.WrittenModules.Contains(moduleId)) { context.WrittenModules.Add(moduleId); var module = context.ResolveModule(moduleId); if (module != null) { foreach (var dependency in module.Dependencies.OrEmpty().Where(m => m.Content != null)) { helper.RequireModuleIncludeRecursive( dependency.Id, context, stringBuilder); } } helper.WriteScriptActionInclude("Module", moduleId, stringBuilder); } }
private static ScriptOutputContext GetScriptOutputContext(HttpContextBase httpContext) { if (httpContext.Items.Contains(OutputContextKey)) { return httpContext.Items[OutputContextKey] as ScriptOutputContext; } var context = new ScriptOutputContext(); httpContext.Items[OutputContextKey] = context; return context; }
private static void RequireAmdConfiguration( this HtmlHelper helper, ScriptOutputContext context, StringBuilder stringBuilder) { if (!context.IsConfigScriptWritten) { helper.WriteScriptActionInclude("config", stringBuilder, false); context.IsConfigScriptWritten = true; } }
private static void EnsureAmdSystemInitialized( this HtmlHelper helper, ScriptOutputContext outputContext, StringBuilder stringBuilder) { helper.RequireModuleLoader(outputContext, stringBuilder); helper.RequireAmdConfiguration(outputContext, stringBuilder); }