/// <summary>Constructs a instance of script transformer</summary>
 /// <param name="minifier">Minifier</param>
 /// <param name="translators">List of translators</param>
 /// <param name="postProcessors">List of postprocessors</param>
 public ScriptTransformer(
     IMinifier minifier,
     IList <ITranslator> translators,
     IList <IPostProcessor> postProcessors)
     : this(minifier, translators, postProcessors, new string[0])
 {
 }
示例#2
0
        protected BundlerBase(IHybridWebRootFileProvider webRootFileProvider, IMinifier minifier)
        {
            WebRootFileProvider = webRootFileProvider;
            Minifier            = minifier;

            Logger = NullLogger <BundlerBase> .Instance;
        }
示例#3
0
        public ViewAccountant(ILocalFileProvider localFileProvider, IThemeProvider themeProvider, IMinifier minifier)
        {
            _localFileProvider   = localFileProvider;
            _themeProvider       = themeProvider;
            _minifier            = minifier;
            _parsedTemplateCache = new ConcurrentDictionary <CachedViewKey, CachedView>();

            //set the file system
            Template.FileSystem = new AppThemeFileSystem(this);
            //naming convention camelCaseConvention
            Template.NamingConvention = new CamelCaseNamingConvention();
            //register additional types
            Template.RegisterSafeType(typeof(SelectListItem), new[] { "Text", "Value", "Selected" });

            //register all the enums
            var enumTypes = TypeFinder.EnumTypes();

            foreach (var enumType in enumTypes)
            {
                Template.RegisterSafeType(enumType, x => x.ToString());
            }

            Template.RegisterFilter(typeof(TextFilters));
            Template.RegisterTag <Increment>("increment");
            //register global objects
            GlobalObject.RegisterObject <StoreObject>(GlobalObjectKeys.Store);
            GlobalObject.RegisterObject <CartObject>(GlobalObjectKeys.Cart);
            GlobalObject.RegisterObject <BreadcrumbObject>(GlobalObjectKeys.Breadcrumb);
            GlobalObject.RegisterObject <NavigationObject>(GlobalObjectKeys.Navigation);
            GlobalObject.RegisterObject <CurrentUserObject>(GlobalObjectKeys.CurrentUser);
        }
示例#4
0
        protected BundlerBase(IWebHostEnvironment hostEnvironment, IMinifier minifier)
        {
            HostEnvironment = hostEnvironment;
            Minifier        = minifier;

            Logger = NullLogger <BundlerBase> .Instance;
        }
        /// <summary>
        /// Constructs a instance of script transformer
        /// </summary>
        /// <param name="minifier">Minifier</param>
        /// <param name="translators">List of translators</param>
        /// <param name="postProcessors">List of postprocessors</param>
        /// <param name="ignorePatterns">List of patterns of files and directories that
        /// should be ignored when processing</param>
        /// <param name="coreConfig">Configuration settings of core</param>
        public ScriptTransformer(IMinifier minifier, IList <ITranslator> translators, IList <IPostProcessor> postProcessors,
                                 string[] ignorePatterns, CoreSettings coreConfig)
            : base(ignorePatterns, coreConfig)
        {
            ScriptSettings scriptConfig = coreConfig.Scripts;

            UsePreMinifiedFiles            = scriptConfig.UsePreMinifiedFiles;
            CombineFilesBeforeMinification = scriptConfig.CombineFilesBeforeMinification;

            _jsFilesWithMsStyleExtensions = Utils.ConvertToStringCollection(
                coreConfig.JsFilesWithMicrosoftStyleExtensions.Replace(';', ','),
                ',', true, true);

            IAssetContext scriptContext = BundleTransformerContext.Current.Scripts;

            _minifier    = minifier ?? scriptContext.GetDefaultMinifierInstance();
            _translators = (translators ?? scriptContext.GetDefaultTranslatorInstances())
                           .ToList()
                           .AsReadOnly()
            ;
            _postProcessors = (postProcessors ?? scriptContext.GetDefaultPostProcessorInstances())
                              .ToList()
                              .AsReadOnly()
            ;
        }
示例#6
0
        protected BundlerBase(IWebContentFileProvider webContentFileProvider, IMinifier minifier)
        {
            WebContentFileProvider = webContentFileProvider;
            Minifier = minifier;

            Logger = NullLogger <BundlerBase> .Instance;
        }
 protected HeadResourceReducerBase(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, IUriBuilder uriBuilder)
 {
     WebClientWrapper = webClientWrapper;
     this.uriBuilder  = uriBuilder;
     this.minifier    = minifier;
     this.store       = store;
 }
示例#8
0
 public CssReducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, ISpriteManager spriteManager, ICssImageTransformer cssImageTransformer, IUriBuilder uriBuilder, IRRConfiguration configuration)
     : base(webClientWrapper, store, minifier, uriBuilder)
 {
     this.cssImageTransformer = cssImageTransformer;
     this.configuration       = configuration;
     this.spriteManager       = spriteManager;
 }
示例#9
0
        /// <summary>
        /// See interface docs.
        /// </summary>
        /// <param name="server"></param>
        public void AttachSiteToServer(IWebServer server)
        {
            if (server == null)
            {
                throw new ArgumentNullException("server");
            }
            if (WebServer != server)
            {
                if (WebServer != null)
                {
                    throw new InvalidOperationException("The web site can only be attached to one server");
                }

                _UserManager = Factory.Singleton.Resolve <IUserManager>().Singleton;

                var configurationStorage = Factory.Singleton.Resolve <IConfigurationStorage>().Singleton;
                configurationStorage.ConfigurationChanged += ConfigurationStorage_ConfigurationChanged;

                WebServer   = server;
                server.Root = "/VirtualRadar";

                var installerSettingsStorage = Factory.Singleton.Resolve <IInstallerSettingsStorage>();
                var installerSettings        = installerSettingsStorage.Load();
                server.Port = installerSettings.WebServerPort;

                server.AuthenticationRequired += Server_AuthenticationRequired;

                _Bundler = Factory.Singleton.Resolve <IBundler>();
                _Bundler.AttachToWebSite(this);

                _Minifier = Factory.Singleton.Resolve <IMinifier>();
                _Minifier.Initialise();

                _Pages.Add(_CorsPreflightPage);
                _Pages.Add(_FileSystemPage);
                _Pages.Add(new TextPage(this));
                _Pages.Add(_AircraftListJsonPage);
                _Pages.Add(_ImagePage);
                _Pages.Add(new ServerConfigJsonPage(this));
                _Pages.Add(new AudioPage(this));
                _Pages.Add(new FaviconPage(this));
                _Pages.Add(_ReportRowsJsonPage);
                _Pages.Add(_ClosestAircraftJsonPage);
                _Pages.Add(new AirportDataProxyPage(this));
                _Pages.Add(new PolarPlotJsonPage(this));
                _Pages.Add(new DirectoryEntryJsonPage(this));

                _JavaScriptInjectors.Add(new WebSiteStringsInjector());

                foreach (var page in _Pages)
                {
                    page.Provider = Provider;
                }

                LoadConfiguration();

                server.RequestReceived += Server_RequestReceived;
            }
        }
 /// <summary>Constructs a instance of script transformer</summary>
 /// <param name="minifier">Minifier</param>
 /// <param name="translators">List of translators</param>
 /// <param name="postProcessors">List of postprocessors</param>
 /// <param name="ignorePatterns">List of patterns of files and directories that
 /// should be ignored when processing</param>
 public ScriptTransformer(
     IMinifier minifier,
     IList <ITranslator> translators,
     IList <IPostProcessor> postProcessors,
     string[] ignorePatterns)
     : this(minifier, translators, postProcessors, ignorePatterns, BundleTransformerContext.Current.Configuration.GetCoreSettings())
 {
 }
 public MinifierCSharpRazorCodeGenerator(RazorEngineHost codeGeneratorHost, RazorCodeGenerator incomingCodeGenerator, IMinifier minifier)
     : base(incomingCodeGenerator.ClassName,
            incomingCodeGenerator.RootNamespaceName,
            incomingCodeGenerator.SourceFileName,
            codeGeneratorHost)
 {
     SetBaseType("dynamic");
     _minifier = minifier;
 }
示例#12
0
 public Reducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, ISpriteManager spriteManager, ICssImageTransformer cssImageTransformer, IUriBuilder uriBuilder)
 {
     this.webClientWrapper = webClientWrapper;
     this.cssImageTransformer = cssImageTransformer;
     this.uriBuilder = uriBuilder;
     this.spriteManager = spriteManager;
     this.minifier = minifier;
     this.store = store;
 }
        public HtmlOptimizerMvc4CSharpRazorCodeGenerator(string className, string rootNamespaceName, string sourceFileName, RazorEngineHost host, IMinifier minifier)
            : base(className, rootNamespaceName, sourceFileName, host)
        {
            var webPageRazorHost = host as MvcWebPageRazorHost;
              if (webPageRazorHost == null || webPageRazorHost.IsSpecialPage)
            return;
              this.SetBaseType("dynamic");

              _minifier = minifier;
        }
示例#14
0
        public void TestInitialise()
        {
            _OriginalClassFactory = Factory.TakeSnapshot();

            _Configuration       = new Configuration();
            _SharedConfiguration = TestUtilities.CreateMockSingleton <ISharedConfiguration>();
            _SharedConfiguration.Setup(r => r.Get()).Returns(_Configuration);

            _Minifier = Factory.Singleton.Resolve <IMinifier>();
        }
示例#15
0
        /// <summary>
        /// See interface docs.
        /// </summary>
        /// <param name="next"></param>
        /// <returns></returns>
        public AppFunc AppFuncBuilder(AppFunc next)
        {
            return(async(IDictionary <string, object> environment) => {
                _Minifier = Factory.Resolve <IMinifier>();
                _Config = Factory.ResolveSingleton <IJavascriptManipulatorConfiguration>();

                ManipulateResponseStream(environment);

                await next(environment);
            });
        }
示例#16
0
    protected BundlerBase(
        IWebHostEnvironment hostEnvironment,
        IMinifier minifier,
        IOptions <AbpBundlingOptions> bundlingOptions)
    {
        HostEnvironment = hostEnvironment;
        Minifier        = minifier;
        BundlingOptions = bundlingOptions.Value;

        Logger = NullLogger <BundlerBase> .Instance;
    }
        public HtmlOptimizerMvc4CSharpRazorCodeGenerator(string className, string rootNamespaceName, string sourceFileName, RazorEngineHost host, IMinifier minifier)
            : base(className, rootNamespaceName, sourceFileName, host)
        {
            var webPageRazorHost = host as MvcWebPageRazorHost;

            if (webPageRazorHost == null || webPageRazorHost.IsSpecialPage)
            {
                return;
            }
            this.SetBaseType("dynamic");

            _minifier = minifier;
        }
        /// <summary>
        /// Gets a instance of default minifier
        /// </summary>
        /// <returns>Instance of default minifier</returns>
        public IMinifier GetDefaultMinifierInstance()
        {
            string defaultMinifierName = _assetConfig.DefaultMinifier;

            if (string.IsNullOrWhiteSpace(defaultMinifierName))
            {
                throw new ConfigurationErrorsException(
                          string.Format(Strings.Configuration_DefaultMinifierNotSpecified, OutputCodeType));
            }

            IMinifier defaultMinifier = GetMinifierInstance(defaultMinifierName);

            return(defaultMinifier);
        }
        /// <summary>Constructs a instance of style transformer</summary>
        /// <param name="minifier">Minifier</param>
        /// <param name="translators">List of translators</param>
        /// <param name="postProcessors">List of postprocessors</param>
        /// <param name="ignorePatterns">List of patterns of files and directories that
        /// should be ignored when processing</param>
        /// <param name="coreConfig">Configuration settings of core</param>
        public StyleTransformer(
            IMinifier minifier,
            IList <ITranslator> translators,
            IList <IPostProcessor> postProcessors,
            string[] ignorePatterns,
            CoreSettings coreConfig)
            : base(ignorePatterns, coreConfig)
        {
            StyleSettings styles1 = coreConfig.Styles;

            this.UsePreMinifiedFiles            = styles1.UsePreMinifiedFiles;
            this.CombineFilesBeforeMinification = styles1.CombineFilesBeforeMinification;
            IAssetContext styles2 = BundleTransformerContext.Current.Styles;

            this._minifier       = minifier ?? styles2.GetDefaultMinifierInstance();
            this._translators    = (translators ?? styles2.GetDefaultTranslatorInstances()).ToList <ITranslator>().AsReadOnly();
            this._postProcessors = (postProcessors ?? styles2.GetDefaultPostProcessorInstances()).ToList <IPostProcessor>().AsReadOnly();
        }
示例#20
0
 internal HtmlBuilder(
     HttpContextBase httpContext,
     IBulletRepository bulletRepository,
     IDocmahConfiguration docmahConfiguration,
     IEditAuthorizer editAuthorizer,
     IFirstTimeHelpRepository firstTimeHelpRepository,
     ObjectCache memoryCache,
     IMinifier minifier,
     IUserPageSettingsRepository userPageSettingsRepository)
 {
     _httpContext = httpContext;
     _bulletRepository = bulletRepository;
     _docmahConfiguration = docmahConfiguration;
     _editAuthorizer = editAuthorizer;
     _firstTimeHelpRepository = firstTimeHelpRepository;
     _memoryCache = memoryCache;
     _minifier = minifier;
     _userPageSettingsRepository = userPageSettingsRepository;
 }
示例#21
0
 internal HtmlBuilder(
     HttpContextBase httpContext,
     IBulletRepository bulletRepository,
     IDocmahConfiguration docmahConfiguration,
     IEditAuthorizer editAuthorizer,
     IFirstTimeHelpRepository firstTimeHelpRepository,
     ObjectCache memoryCache,
     IMinifier minifier,
     IUserPageSettingsRepository userPageSettingsRepository)
 {
     _httpContext             = httpContext;
     _bulletRepository        = bulletRepository;
     _docmahConfiguration     = docmahConfiguration;
     _editAuthorizer          = editAuthorizer;
     _firstTimeHelpRepository = firstTimeHelpRepository;
     _memoryCache             = memoryCache;
     _minifier = minifier;
     _userPageSettingsRepository = userPageSettingsRepository;
 }
示例#22
0
 private void Dispose(bool disposing)
 {
     if (disposing)
     {
         if (_Minifier != null)
         {
             _Minifier.Dispose();
             _Minifier = null;
         }
         if (_ConfigurationStorageHooked)
         {
             var configurationStorage = Factory.Singleton.Resolve <IConfigurationStorage>().Singleton;
             configurationStorage.ConfigurationChanged -= ConfigurationChanged;
             _ConfigurationStorageHooked = false;
         }
         if (_WebServerHooked && WebServer != null)
         {
             WebServer.RequestReceived -= WebServer_RequestReceived;
             _WebServerHooked           = false;
         }
     }
 }
示例#23
0
        /// <summary>
        /// See interface docs.
        /// </summary>
        /// <param name="webSite"></param>
        public void AttachToWebSite(IWebSite webSite)
        {
            if (webSite == null)
            {
                throw new ArgumentNullException("webSite");
            }
            if (webSite.WebServer == null)
            {
                throw new InvalidOperationException("The web site must be attached to a web server before the bundler can use it");
            }

            if (_WebServerHooked && WebServer != null)
            {
                WebServer.RequestReceived -= WebServer_RequestReceived;
            }

            if (_Minifier == null)
            {
                _Minifier = Factory.Singleton.Resolve <IMinifier>();
                _Minifier.Initialise();
            }

            WebSite   = webSite;
            WebServer = webSite.WebServer;

            WebServer.RequestReceived += WebServer_RequestReceived;
            _WebServerHooked           = true;

            if (!_ConfigurationStorageHooked)
            {
                var configurationStorage = Factory.Singleton.Resolve <IConfigurationStorage>().Singleton;
                configurationStorage.ConfigurationChanged += ConfigurationChanged;
                _ConfigurationStorageHooked = true;
                LoadConfiguration(configurationStorage);
            }
        }
示例#24
0
 protected BundlerBase(IMinifier minifier)
 {
     Minifier = minifier;
 }
		/// <summary>
		/// Constructs a instance of style transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		/// <param name="postProcessors">List of postprocessors</param>
		/// <param name="ignorePatterns">List of patterns of files and directories that
		/// should be ignored when processing</param>
		/// <param name="coreConfig">Configuration settings of core</param>
		public StyleTransformer(IMinifier minifier, IList<ITranslator> translators, IList<IPostProcessor> postProcessors,
			string[] ignorePatterns, CoreSettings coreConfig)
			: base(ignorePatterns, coreConfig)
		{
			StyleSettings styleConfig = coreConfig.Styles;
			UsePreMinifiedFiles = styleConfig.UsePreMinifiedFiles;
			CombineFilesBeforeMinification = styleConfig.CombineFilesBeforeMinification;

			IAssetContext styleContext = BundleTransformerContext.Current.Styles;

			_minifier = minifier ?? styleContext.GetDefaultMinifierInstance();
			_translators = (translators ?? styleContext.GetDefaultTranslatorInstances())
				.ToList()
				.AsReadOnly()
				;
			_postProcessors = (postProcessors ?? styleContext.GetDefaultPostProcessorInstances())
				.ToList()
				.AsReadOnly()
				;
		}
示例#26
0
 public Configuration UseMinifierForJs(IMinifier <JavaScriptBundle> minifier)
 {
     _defaultJsMinifier = minifier;
     return(this);
 }
示例#27
0
 public Configuration UseMinifierForCss(IMinifier <CSSBundle> minifier)
 {
     _defaultCssMinifier = minifier;
     return(this);
 }
		/// <summary>
		/// Constructs a instance of JS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		/// <param name="postProcessors">List of postprocessors</param>
		/// <param name="ignorePatterns">List of patterns of files and directories that
		/// should be ignored when processing</param>
		public JsTransformer(IMinifier minifier, IList<ITranslator> translators, IList<IPostProcessor> postProcessors,
			string[] ignorePatterns)
			: this(minifier, translators, postProcessors, ignorePatterns,
				BundleTransformerContext.Current.Configuration.GetCoreSettings())
		{ }
示例#29
0
 public JavaScriptRequestProcessor(IMinifier minifier)
 {
     _minifier = minifier;
 }
		/// <summary>
		/// Constructs a instance of CSS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="postProcessors">List of postprocessors</param>
		public CssTransformer(IMinifier minifier, IList<IPostProcessor> postProcessors)
			: this(minifier, null, postProcessors, new string[0])
		{ }
示例#31
0
 /// <summary>
 /// Creates a new object.
 /// </summary>
 public JavascriptManipulator()
 {
     _Minifier = Factory.Resolve <IMinifier>();
     _Config   = Factory.ResolveSingleton <IJavascriptManipulatorConfiguration>();
 }
 public MinifyModifier(IMinifier minifier)
 {
     this.minifier = minifier;
 }
		/// <summary>
		/// Constructs a instance of JS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		public JsTransformer(IMinifier minifier, IList<ITranslator> translators)
			: this(minifier, translators, null, new string[0])
		{ }
		/// <summary>
		/// Constructs a instance of JS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		public JsTransformer(IMinifier minifier)
			: this(minifier, null, null, new string[0])
		{ }
示例#35
0
 public T WithMinifier <TMin>() where TMin : IMinifier <T>
 {
     Minifier = MinifierFactory.Get <T, TMin>();
     return((T)this);
 }
 public JavaScriptReducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, IUriBuilder uriBuilder, IRRConfiguration config, IResponseDecoder responseDecoder) : base(webClientWrapper, store, minifier, uriBuilder)
 {
     this.config          = config;
     this.responseDecoder = responseDecoder;
 }
示例#37
0
 public T WithMinifier <TMin>(TMin minifier) where TMin : IMinifier <T>
 {
     Minifier = minifier;
     return((T)this);
 }
		/// <summary>
		/// Constructs a instance of script transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		/// <param name="postProcessors">List of postprocessors</param>
		/// <param name="ignorePatterns">List of patterns of files and directories that
		/// should be ignored when processing</param>
		/// <param name="coreConfig">Configuration settings of core</param>
		public ScriptTransformer(IMinifier minifier, IList<ITranslator> translators, IList<IPostProcessor> postProcessors,
			string[] ignorePatterns, CoreSettings coreConfig)
			: base(ignorePatterns, coreConfig)
		{
			ScriptSettings scriptConfig = coreConfig.Scripts;
			UsePreMinifiedFiles = scriptConfig.UsePreMinifiedFiles;
			CombineFilesBeforeMinification = scriptConfig.CombineFilesBeforeMinification;

			_jsFilesWithMsStyleExtensions = Utils.ConvertToStringCollection(
				coreConfig.JsFilesWithMicrosoftStyleExtensions.Replace(';', ','),
				',', true, true);

			IAssetContext scriptContext = BundleTransformerContext.Current.Scripts;

			_minifier = minifier ?? scriptContext.GetDefaultMinifierInstance();
			_translators = (translators ?? scriptContext.GetDefaultTranslatorInstances())
				.ToList()
				.AsReadOnly()
				;
			_postProcessors = (postProcessors ?? scriptContext.GetDefaultPostProcessorInstances())
				.ToList()
				.AsReadOnly()
				;
		}
示例#39
0
 public CssRequestProcessor(IMinifier minifier)
 {
     _minifier = minifier;
 }
示例#40
0
 public CssRequestProcessor(IMinifier minifier)
 {
     _minifier = minifier;
 }
示例#41
0
 public JavaScriptRequestProcessor(IMinifier minifier)
 {
     _minifier = minifier;
 }
		/// <summary>
		/// Constructs a instance of JS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		/// <param name="postProcessors">List of postprocessors</param>
		public JsTransformer(IMinifier minifier, IList<ITranslator> translators, IList<IPostProcessor> postProcessors)
			: this(minifier, translators, postProcessors, new string[0])
		{ }
		/// <summary>
		/// Constructs a instance of JS-transformer
		/// </summary>
		/// <param name="minifier">Minifier</param>
		/// <param name="translators">List of translators</param>
		/// <param name="postProcessors">List of postprocessors</param>
		/// <param name="ignorePatterns">List of patterns of files and directories that
		/// should be ignored when processing</param>
		/// <param name="coreConfig">Configuration settings of core</param>
		public JsTransformer(IMinifier minifier, IList<ITranslator> translators, IList<IPostProcessor> postProcessors,
			string[] ignorePatterns, CoreSettings coreConfig)
		{
			_scriptTransformer = new ScriptTransformer(minifier, translators, postProcessors, ignorePatterns, coreConfig);
		}
 public MinifierTransformer(IMinifier minifier)
 {
     _minifier = minifier;
 }