@storybook/angular 6.5.0-alpha.3 → 6.5.0-alpha.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ts3.4/client/preview/angular-beta/utils/NgComponentAnalyzer.d.ts +4 -2
- package/dist/ts3.4/server/angular-cli-webpack-older.d.ts +2 -1
- package/dist/ts3.4/server/framework-preset-angular.d.ts +3 -2
- package/dist/ts3.9/builders/build-storybook/index.js +33 -84
- package/dist/ts3.9/builders/start-storybook/index.js +40 -91
- package/dist/ts3.9/builders/utils/build-standalone-errors-handler.js +13 -11
- package/dist/ts3.9/builders/utils/run-compodoc.js +45 -20
- package/dist/ts3.9/client/preview/angular/app.token.js +1 -1
- package/dist/ts3.9/client/preview/angular/components/app.component.js +55 -59
- package/dist/ts3.9/client/preview/angular/helpers.js +66 -80
- package/dist/ts3.9/client/preview/angular-beta/AbstractRenderer.js +77 -125
- package/dist/ts3.9/client/preview/angular-beta/CanvasRenderer.js +18 -81
- package/dist/ts3.9/client/preview/angular-beta/ComputesTemplateFromComponent.js +75 -69
- package/dist/ts3.9/client/preview/angular-beta/DocsRenderer.js +41 -127
- package/dist/ts3.9/client/preview/angular-beta/RendererFactory.js +30 -66
- package/dist/ts3.9/client/preview/angular-beta/StorybookModule.js +42 -46
- package/dist/ts3.9/client/preview/angular-beta/StorybookProvider.js +15 -17
- package/dist/ts3.9/client/preview/angular-beta/StorybookWrapperComponent.js +63 -92
- package/dist/ts3.9/client/preview/angular-beta/utils/NgComponentAnalyzer.d.ts +4 -2
- package/dist/ts3.9/client/preview/angular-beta/utils/NgComponentAnalyzer.js +30 -77
- package/dist/ts3.9/client/preview/angular-beta/utils/NgModulesAnalyzer.js +10 -14
- package/dist/ts3.9/client/preview/decorateStory.js +16 -36
- package/dist/ts3.9/client/preview/decorators.js +22 -37
- package/dist/ts3.9/client/preview/globals.js +2 -2
- package/dist/ts3.9/client/preview/index.js +8 -21
- package/dist/ts3.9/client/preview/render.js +17 -56
- package/dist/ts3.9/demo/button.component.js +31 -22
- package/dist/ts3.9/demo/welcome.component.js +85 -18
- package/dist/ts3.9/server/__mocks-ng-workspace__/minimal-config/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/some-config/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-angularBrowserTarget/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-nx/tsconfig.json +7 -2
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-nx-workspace/tsconfig.json +7 -2
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-options-styles/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-projects-entry/tsconfig.json +4 -1
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/tsconfig.json +4 -1
- package/dist/ts3.9/server/angular-cli-webpack-12.2.x.js +38 -81
- package/dist/ts3.9/server/angular-cli-webpack-13.x.x.js +42 -81
- package/dist/ts3.9/server/angular-cli-webpack-older.d.ts +2 -1
- package/dist/ts3.9/server/angular-cli-webpack-older.js +77 -123
- package/dist/ts3.9/server/angular-devkit-build-webpack.js +72 -133
- package/dist/ts3.9/server/angular-read-workspace.js +44 -78
- package/dist/ts3.9/server/build.js +10 -47
- package/dist/ts3.9/server/create-fork-ts-checker-plugin.js +2 -2
- package/dist/ts3.9/server/framework-preset-angular-cli.js +111 -179
- package/dist/ts3.9/server/framework-preset-angular-ivy.js +35 -92
- package/dist/ts3.9/server/framework-preset-angular.d.ts +3 -2
- package/dist/ts3.9/server/framework-preset-angular.js +88 -62
- package/dist/ts3.9/server/index.js +2 -2
- package/dist/ts3.9/server/ngx-template-loader/index.js +15 -15
- package/dist/ts3.9/server/options.js +1 -1
- package/dist/ts3.9/server/preset.js +4 -13
- package/dist/ts3.9/server/ts_config.js +5 -5
- package/dist/ts3.9/server/utils/filter-out-styling-rules.js +4 -4
- package/dist/ts3.9/server/utils/module-is-available.js +1 -1
- package/dist/ts3.9/server/utils/normalize-asset-patterns.js +16 -31
- package/dist/ts3.9/server/utils/normalize-optimization.js +3 -3
- package/package.json +9 -19
- package/standalone.d.ts +3 -5
|
@@ -1,14 +1,3 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
1
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
13
2
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
14
3
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -18,45 +7,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
18
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
19
8
|
});
|
|
20
9
|
};
|
|
21
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
22
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
23
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
24
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
25
|
-
function step(op) {
|
|
26
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
27
|
-
while (_) try {
|
|
28
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
29
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
30
|
-
switch (op[0]) {
|
|
31
|
-
case 0: case 1: t = op; break;
|
|
32
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
33
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
34
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
35
|
-
default:
|
|
36
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
37
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
38
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
39
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
40
|
-
if (t[2]) _.ops.pop();
|
|
41
|
-
_.trys.pop(); continue;
|
|
42
|
-
}
|
|
43
|
-
op = body.call(thisArg, _);
|
|
44
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
45
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
49
|
-
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
50
|
-
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
51
|
-
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
52
|
-
r[k] = a[j];
|
|
53
|
-
return r;
|
|
54
|
-
};
|
|
55
10
|
// Private angular devkit stuff
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
11
|
+
const { generateI18nBrowserWebpackConfigFromContext, } = require('@angular-devkit/build-angular/src/utils/webpack-browser-config');
|
|
12
|
+
const { getCommonConfig, getStylesConfig, getDevServerConfig, getTypeScriptConfig, } = require('@angular-devkit/build-angular/src/webpack/configs');
|
|
13
|
+
const TsconfigPathsPlugin = require('tsconfig-paths-webpack-plugin');
|
|
14
|
+
const { filterOutStylingRules } = require('./utils/filter-out-styling-rules');
|
|
60
15
|
/**
|
|
61
16
|
* Extract webpack config from angular-cli 13.x.x
|
|
62
17
|
* ⚠️ This file is in JavaScript to not use TypeScript. Because current storybook TypeScript version is not compatible with Angular CLI.
|
|
@@ -65,35 +20,41 @@ var filterOutStylingRules = require('./utils/filter-out-styling-rules').filterOu
|
|
|
65
20
|
* @param {*} baseConfig Previous webpack config from storybook
|
|
66
21
|
* @param {*} options { builderOptions, builderContext }
|
|
67
22
|
*/
|
|
68
|
-
exports.getWebpackConfig =
|
|
69
|
-
var
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
23
|
+
exports.getWebpackConfig = (baseConfig, { builderOptions, builderContext }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
24
|
+
var _a, _b, _c;
|
|
25
|
+
/**
|
|
26
|
+
* Get angular-cli Webpack config
|
|
27
|
+
*/
|
|
28
|
+
const { config: cliConfig } = yield generateI18nBrowserWebpackConfigFromContext(Object.assign(Object.assign({
|
|
29
|
+
// Default options
|
|
30
|
+
index: 'noop-index', main: 'noop-main', outputPath: 'noop-out' }, builderOptions), {
|
|
31
|
+
// Fixed options
|
|
32
|
+
optimization: false, namedChunks: false, progress: false, buildOptimizer: false, aot: false }), builderContext, (wco) => [
|
|
33
|
+
getCommonConfig(wco),
|
|
34
|
+
getStylesConfig(wco),
|
|
35
|
+
getTypeScriptConfig ? getTypeScriptConfig(wco) : getDevServerConfig(wco),
|
|
36
|
+
]);
|
|
37
|
+
/**
|
|
38
|
+
* Merge baseConfig Webpack with angular-cli Webpack
|
|
39
|
+
*/
|
|
40
|
+
const entry = [
|
|
41
|
+
...baseConfig.entry,
|
|
42
|
+
...((_a = cliConfig.entry.styles) !== null && _a !== void 0 ? _a : []),
|
|
43
|
+
...((_b = cliConfig.entry.polyfills) !== null && _b !== void 0 ? _b : []),
|
|
44
|
+
];
|
|
45
|
+
// Don't use storybooks styling rules because we have to use rules created by @angular-devkit/build-angular
|
|
46
|
+
// because @angular-devkit/build-angular created rules have include/exclude for global style files.
|
|
47
|
+
const rulesExcludingStyles = filterOutStylingRules(baseConfig);
|
|
48
|
+
const module = Object.assign(Object.assign({}, baseConfig.module), { rules: [...cliConfig.module.rules, ...rulesExcludingStyles] });
|
|
49
|
+
const plugins = [...((_c = cliConfig.plugins) !== null && _c !== void 0 ? _c : []), ...baseConfig.plugins];
|
|
50
|
+
const resolve = Object.assign(Object.assign({}, baseConfig.resolve), { modules: Array.from(new Set([...baseConfig.resolve.modules, ...cliConfig.resolve.modules])), plugins: [
|
|
51
|
+
new TsconfigPathsPlugin({
|
|
52
|
+
configFile: builderOptions.tsConfig,
|
|
53
|
+
mainFields: ['browser', 'module', 'main'],
|
|
54
|
+
}),
|
|
55
|
+
] });
|
|
56
|
+
return Object.assign(Object.assign({}, baseConfig), { entry,
|
|
57
|
+
module,
|
|
58
|
+
plugins,
|
|
59
|
+
resolve, resolveLoader: cliConfig.resolveLoader });
|
|
60
|
+
});
|
|
@@ -48,7 +48,7 @@ export declare function getWebpackConfig(baseConfig: webpack.Configuration, opti
|
|
|
48
48
|
mode?: "development" | "production" | "none";
|
|
49
49
|
name?: string;
|
|
50
50
|
context?: string;
|
|
51
|
-
devtool?:
|
|
51
|
+
devtool?: string | boolean;
|
|
52
52
|
output?: webpack.Output;
|
|
53
53
|
externals?: string | RegExp | webpack.ExternalsObjectElement | webpack.ExternalsFunctionElement | webpack.ExternalsElement[];
|
|
54
54
|
target?: "node" | "web" | "webworker" | "async-node" | "node-webkit" | "atom" | "electron" | "electron-renderer" | "electron-preload" | "electron-main" | ((compiler?: any) => void);
|
|
@@ -68,5 +68,6 @@ export declare function getWebpackConfig(baseConfig: webpack.Configuration, opti
|
|
|
68
68
|
performance?: false | webpack.Options.Performance;
|
|
69
69
|
parallelism?: number;
|
|
70
70
|
optimization?: webpack.Options.Optimization;
|
|
71
|
+
infrastructureLogging?: webpack.Options.InfrastructureLogging;
|
|
71
72
|
devServer?: import("webpack-dev-server").Configuration;
|
|
72
73
|
}>;
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -19,138 +8,103 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
19
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
9
|
});
|
|
21
10
|
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (_) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
50
|
-
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
51
|
-
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
52
|
-
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
53
|
-
r[k] = a[j];
|
|
54
|
-
return r;
|
|
55
|
-
};
|
|
56
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
57
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
58
13
|
};
|
|
59
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
60
15
|
exports.getWebpackConfig = void 0;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
16
|
+
const node_logger_1 = require("@storybook/node-logger");
|
|
17
|
+
const tsconfig_paths_webpack_plugin_1 = __importDefault(require("tsconfig-paths-webpack-plugin"));
|
|
18
|
+
const architect_1 = require("@angular-devkit/architect");
|
|
19
|
+
const angular_read_workspace_1 = require("./angular-read-workspace");
|
|
20
|
+
const angular_devkit_build_webpack_1 = require("./angular-devkit-build-webpack");
|
|
21
|
+
const filter_out_styling_rules_1 = require("./utils/filter-out-styling-rules");
|
|
67
22
|
/**
|
|
68
23
|
* Old way currently support version lower than 12.2.x
|
|
69
24
|
*/
|
|
70
25
|
function getWebpackConfig(baseConfig, options) {
|
|
71
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
node_logger_1.logger.info("=> Using default angular project with \"tsConfig:" + options.tsConfig + "\"");
|
|
109
|
-
project = { root: '', extensions: {}, targets: undefined };
|
|
110
|
-
target = { builder: '', options: { tsConfig: options.tsConfig } };
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
node_logger_1.logger.error("=> Could not find angular project: " + error.message);
|
|
115
|
-
node_logger_1.logger.info("=> Fail to load angular-cli config. Using base config");
|
|
116
|
-
return [2 /*return*/, baseConfig];
|
|
117
|
-
}
|
|
118
|
-
_a.label = 5;
|
|
119
|
-
case 5:
|
|
120
|
-
_a.trys.push([5, 7, , 8]);
|
|
121
|
-
return [4 /*yield*/, angular_devkit_build_webpack_1.extractAngularCliWebpackConfig(dirToSearch, project, target, confName)];
|
|
122
|
-
case 6:
|
|
123
|
-
angularCliWebpackConfig = _a.sent();
|
|
124
|
-
node_logger_1.logger.info("=> Using angular-cli webpack config");
|
|
125
|
-
return [3 /*break*/, 8];
|
|
126
|
-
case 7:
|
|
127
|
-
error_2 = _a.sent();
|
|
128
|
-
node_logger_1.logger.error("=> Could not get angular cli webpack config");
|
|
129
|
-
throw error_2;
|
|
130
|
-
case 8: return [2 /*return*/, mergeAngularCliWebpackConfig(angularCliWebpackConfig, baseConfig)];
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const dirToSearch = process.cwd();
|
|
28
|
+
// Read angular workspace
|
|
29
|
+
let workspaceConfig;
|
|
30
|
+
try {
|
|
31
|
+
workspaceConfig = yield angular_read_workspace_1.readAngularWorkspaceConfig(dirToSearch);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
node_logger_1.logger.error(`=> Could not find angular workspace config (angular.json) on this path "${dirToSearch}"`);
|
|
35
|
+
node_logger_1.logger.info(`=> Fail to load angular-cli config. Using base config`);
|
|
36
|
+
return baseConfig;
|
|
37
|
+
}
|
|
38
|
+
// Find angular project target
|
|
39
|
+
let project;
|
|
40
|
+
let target;
|
|
41
|
+
let confName;
|
|
42
|
+
try {
|
|
43
|
+
// Default behavior when `angularBrowserTarget` are not explicitly defined to null
|
|
44
|
+
if (options.angularBrowserTarget !== null) {
|
|
45
|
+
const browserTarget = options.angularBrowserTarget
|
|
46
|
+
? architect_1.targetFromTargetString(options.angularBrowserTarget)
|
|
47
|
+
: {
|
|
48
|
+
configuration: undefined,
|
|
49
|
+
project: angular_read_workspace_1.getDefaultProjectName(workspaceConfig),
|
|
50
|
+
target: 'build',
|
|
51
|
+
};
|
|
52
|
+
const fondProject = angular_read_workspace_1.findAngularProjectTarget(workspaceConfig, browserTarget.project, browserTarget.target);
|
|
53
|
+
project = fondProject.project;
|
|
54
|
+
target = fondProject.target;
|
|
55
|
+
confName = browserTarget.configuration;
|
|
56
|
+
node_logger_1.logger.info(`=> Using angular project "${browserTarget.project}:${browserTarget.target}${confName ? `:${confName}` : ''}" for configuring Storybook`);
|
|
57
|
+
}
|
|
58
|
+
// Start storybook when only tsConfig is provided.
|
|
59
|
+
if (options.angularBrowserTarget === null && options.tsConfig) {
|
|
60
|
+
node_logger_1.logger.info(`=> Using default angular project with "tsConfig:${options.tsConfig}"`);
|
|
61
|
+
project = { root: '', extensions: {}, targets: undefined };
|
|
62
|
+
target = { builder: '', options: { tsConfig: options.tsConfig } };
|
|
131
63
|
}
|
|
132
|
-
}
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
node_logger_1.logger.error(`=> Could not find angular project: ${error.message}`);
|
|
67
|
+
node_logger_1.logger.info(`=> Fail to load angular-cli config. Using base config`);
|
|
68
|
+
return baseConfig;
|
|
69
|
+
}
|
|
70
|
+
// Use angular-cli to get some webpack config
|
|
71
|
+
let angularCliWebpackConfig;
|
|
72
|
+
try {
|
|
73
|
+
angularCliWebpackConfig = yield angular_devkit_build_webpack_1.extractAngularCliWebpackConfig(dirToSearch, project, target, confName);
|
|
74
|
+
node_logger_1.logger.info(`=> Using angular-cli webpack config`);
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
node_logger_1.logger.error(`=> Could not get angular cli webpack config`);
|
|
78
|
+
throw error;
|
|
79
|
+
}
|
|
80
|
+
return mergeAngularCliWebpackConfig(angularCliWebpackConfig, baseConfig);
|
|
133
81
|
});
|
|
134
82
|
}
|
|
135
83
|
exports.getWebpackConfig = getWebpackConfig;
|
|
136
|
-
function mergeAngularCliWebpackConfig(
|
|
137
|
-
var cliCommonWebpackConfig = _a.cliCommonWebpackConfig, cliStyleWebpackConfig = _a.cliStyleWebpackConfig, tsConfigPath = _a.tsConfigPath;
|
|
84
|
+
function mergeAngularCliWebpackConfig({ cliCommonWebpackConfig, cliStyleWebpackConfig, tsConfigPath }, baseConfig) {
|
|
138
85
|
// Don't use storybooks styling rules because we have to use rules created by @angular-devkit/build-angular
|
|
139
86
|
// because @angular-devkit/build-angular created rules have include/exclude for global style files.
|
|
140
|
-
|
|
87
|
+
const rulesExcludingStyles = filter_out_styling_rules_1.filterOutStylingRules(baseConfig);
|
|
141
88
|
// styleWebpackConfig.entry adds global style files to the webpack context
|
|
142
|
-
|
|
143
|
-
|
|
89
|
+
const entry = [
|
|
90
|
+
...baseConfig.entry,
|
|
91
|
+
...Object.values(cliStyleWebpackConfig.entry).reduce((acc, item) => acc.concat(item), []),
|
|
92
|
+
];
|
|
93
|
+
const module = Object.assign(Object.assign({}, baseConfig.module), { rules: [...cliStyleWebpackConfig.module.rules, ...rulesExcludingStyles] });
|
|
144
94
|
// We use cliCommonConfig plugins to serve static assets files.
|
|
145
|
-
|
|
146
|
-
|
|
95
|
+
const plugins = [
|
|
96
|
+
...cliStyleWebpackConfig.plugins,
|
|
97
|
+
...cliCommonWebpackConfig.plugins,
|
|
98
|
+
...baseConfig.plugins,
|
|
99
|
+
];
|
|
100
|
+
const resolve = Object.assign(Object.assign({}, baseConfig.resolve), { modules: Array.from(new Set([...baseConfig.resolve.modules, ...cliCommonWebpackConfig.resolve.modules])), plugins: [
|
|
147
101
|
new tsconfig_paths_webpack_plugin_1.default({
|
|
148
102
|
configFile: tsConfigPath,
|
|
149
103
|
mainFields: ['browser', 'module', 'main'],
|
|
150
104
|
}),
|
|
151
105
|
] });
|
|
152
|
-
return
|
|
153
|
-
module
|
|
154
|
-
plugins
|
|
155
|
-
resolve
|
|
106
|
+
return Object.assign(Object.assign({}, baseConfig), { entry,
|
|
107
|
+
module,
|
|
108
|
+
plugins,
|
|
109
|
+
resolve, resolveLoader: cliCommonWebpackConfig.resolveLoader });
|
|
156
110
|
}
|