UNPKG

spinjs

Version:

[![Join the chat at https://gitter.im/sysgears/spinjs](https://badges.gitter.im/sysgears/spinjs.svg)](https://gitter.im/sysgears/spinjs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![npm version](https://badge.fury.io/js/spi

57 lines 2.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var fs = require("fs"); var JSRuleFinder_1 = require("./shared/JSRuleFinder"); var AngularPlugin = (function () { function AngularPlugin() { } AngularPlugin.prototype.configure = function (builder, spin) { var stack = builder.stack; if (stack.hasAll(['angular', 'webpack'])) { var webpack = builder.require('webpack'); var jsRuleFinder = new JSRuleFinder_1.default(builder); var tsRule = jsRuleFinder.findAndCreateTSRule(); builder.config = spin.merge(builder.config, { module: { rules: [ { test: tsRule.test, use: { loader: 'angular2-template-loader', options: spin.createConfig(builder, 'angular2Template', {}) } }, { test: /[\\\/]@angular[\\\/]core[\\\/].+\.js$/, parser: { system: true } } ] }, plugins: [ new webpack.ContextReplacementPlugin(/angular[\\\/]core/) ] }); if (!stack.hasAny('dll') && stack.hasAny('web')) { var VirtualModules = builder.require('webpack-virtual-modules'); var polyfillCode = fs.readFileSync(require.resolve('./angular/angular-polyfill.js')).toString(); builder.config = spin.merge(builder.config, { module: { rules: [ { test: /\.html$/, loader: 'html-loader', options: spin.createConfig(builder, 'html', {}) } ] }, plugins: [new VirtualModules({ 'node_modules/@virtual/angular-polyfill.js': polyfillCode })] }); builder.config = spin.merge({ entry: { index: ['@virtual/angular-polyfill'] } }, builder.config); } } }; return AngularPlugin; }()); exports.default = AngularPlugin; //# sourceMappingURL=AngularPlugin.js.map