@storybook/angular 6.4.0-alpha.7 → 6.4.0-beta.1
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/builders/build-storybook/index.d.ts +2 -1
- package/dist/ts3.4/builders/start-storybook/index.d.ts +2 -1
- package/dist/ts3.4/builders/utils/build-standalone-errors-handler.d.ts +1 -0
- package/dist/ts3.4/client/preview/angular/helpers.d.ts +3 -3
- package/dist/ts3.4/client/preview/angular-beta/AbstractRenderer.d.ts +3 -1
- package/dist/ts3.4/client/preview/angular-beta/CanvasRenderer.d.ts +1 -0
- package/dist/ts3.4/client/preview/angular-beta/DocsRenderer.d.ts +1 -0
- package/dist/ts3.4/client/preview/angular-beta/StorybookModule.d.ts +2 -3
- package/dist/ts3.4/client/preview/config.d.ts +4 -0
- package/dist/ts3.4/client/preview/decorateStory.d.ts +3 -3
- package/dist/ts3.4/client/preview/decorators.d.ts +5 -4
- package/dist/ts3.4/client/preview/index.d.ts +3 -2
- package/dist/ts3.4/client/preview/render.d.ts +5 -11
- package/dist/ts3.4/client/preview/types-6-0.d.ts +25 -9
- package/dist/ts3.4/client/preview/types-7-0.d.ts +9 -0
- package/dist/ts3.4/client/preview/types.d.ts +2 -1
- package/dist/ts3.4/renderer.d.ts +0 -1
- package/dist/ts3.4/server/__mocks-ng-workspace__/with-lib/projects/pattern-lib/src/main.d.ts +1 -0
- package/dist/ts3.4/server/__mocks-ng-workspace__/without-projects-entry/projects/pattern-lib/src/main.d.ts +1 -0
- package/dist/ts3.4/server/__mocks-ng-workspace__/without-tsConfig/src/main.d.ts +1 -0
- package/dist/ts3.4/server/framework-preset-angular-cli.d.ts +1 -0
- package/dist/ts3.9/builders/build-storybook/index.d.ts +2 -1
- package/dist/ts3.9/builders/build-storybook/index.js +35 -16
- package/dist/ts3.9/builders/build-storybook/schema.json +14 -2
- package/dist/ts3.9/builders/start-storybook/index.d.ts +2 -1
- package/dist/ts3.9/builders/start-storybook/index.js +35 -16
- package/dist/ts3.9/builders/start-storybook/schema.json +14 -2
- package/dist/ts3.9/builders/utils/build-standalone-errors-handler.d.ts +1 -0
- package/dist/ts3.9/builders/utils/build-standalone-errors-handler.js +36 -0
- package/dist/ts3.9/client/preview/angular/helpers.d.ts +3 -3
- package/dist/ts3.9/client/preview/angular-beta/AbstractRenderer.d.ts +3 -1
- package/dist/ts3.9/client/preview/angular-beta/AbstractRenderer.js +5 -3
- package/dist/ts3.9/client/preview/angular-beta/CanvasRenderer.d.ts +1 -0
- package/dist/ts3.9/client/preview/angular-beta/ComputesTemplateFromComponent.js +3 -1
- package/dist/ts3.9/client/preview/angular-beta/DocsRenderer.d.ts +1 -0
- package/dist/ts3.9/client/preview/angular-beta/StorybookModule.d.ts +2 -3
- package/dist/ts3.9/client/preview/angular-beta/StorybookModule.js +2 -2
- package/dist/ts3.9/client/preview/angular-beta/utils/NgComponentAnalyzer.js +12 -1
- package/dist/ts3.9/client/preview/config.d.ts +4 -0
- package/dist/ts3.9/client/preview/config.js +7 -0
- package/dist/ts3.9/client/preview/decorateStory.d.ts +3 -3
- package/dist/ts3.9/client/preview/decorateStory.js +7 -28
- package/dist/ts3.9/client/preview/decorators.d.ts +5 -4
- package/dist/ts3.9/client/preview/index.d.ts +3 -2
- package/dist/ts3.9/client/preview/index.js +2 -3
- package/dist/ts3.9/client/preview/render.d.ts +5 -11
- package/dist/ts3.9/client/preview/render.js +10 -9
- package/dist/ts3.9/client/preview/types-6-0.d.ts +25 -9
- package/dist/ts3.9/client/preview/types-7-0.d.ts +9 -0
- package/dist/ts3.9/client/preview/types-7-0.js +2 -0
- package/dist/ts3.9/client/preview/types.d.ts +2 -1
- package/dist/ts3.9/renderer.d.ts +0 -1
- package/dist/ts3.9/renderer.js +0 -2
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/angular.json +28 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/projects/pattern-lib/src/main.d.ts +1 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/projects/pattern-lib/src/main.js +5 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/projects/pattern-lib/tsconfig.lib.json +25 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/with-lib/tsconfig.json +13 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-projects-entry/projects/pattern-lib/src/main.d.ts +1 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-projects-entry/projects/pattern-lib/src/main.js +5 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-projects-entry/projects/pattern-lib/tsconfig.lib.json +25 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-projects-entry/tsconfig.json +13 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/angular.json +16 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/src/main.d.ts +1 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/src/main.js +5 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/src/tsconfig.app.json +9 -0
- package/dist/ts3.9/server/__mocks-ng-workspace__/without-tsConfig/tsconfig.json +13 -0
- package/dist/ts3.9/server/angular-devkit-build-webpack.js +2 -2
- package/dist/ts3.9/server/build.js +58 -1
- package/dist/ts3.9/server/framework-preset-angular-cli.d.ts +1 -0
- package/dist/ts3.9/server/framework-preset-angular-cli.js +20 -11
- package/package.json +13 -10
- package/preset.js +7 -0
- package/standalone.d.ts +2 -1
- package/dist/ts3.4/client/preview/angular-beta/ElementRendererService.d.ts +0 -17
- package/dist/ts3.4/client/preview/angular-beta/RendererService.d.ts +0 -35
- package/dist/ts3.4/element-renderer.d.ts +0 -1
- package/dist/ts3.9/client/preview/angular-beta/ElementRendererService.d.ts +0 -17
- package/dist/ts3.9/client/preview/angular-beta/ElementRendererService.js +0 -115
- package/dist/ts3.9/client/preview/angular-beta/RendererService.d.ts +0 -35
- package/dist/ts3.9/client/preview/angular-beta/RendererService.js +0 -170
- package/dist/ts3.9/element-renderer.d.ts +0 -1
- package/dist/ts3.9/element-renderer.js +0 -4
- package/element-renderer.d.ts +0 -1
- package/element-renderer.js +0 -1
|
@@ -1,8 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
2
38
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
40
|
};
|
|
5
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
42
|
var server_1 = require("@storybook/core/server");
|
|
43
|
+
var node_logger_1 = require("@storybook/node-logger");
|
|
7
44
|
var options_1 = __importDefault(require("./options"));
|
|
8
|
-
|
|
45
|
+
function build() {
|
|
46
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
47
|
+
var error_1;
|
|
48
|
+
return __generator(this, function (_a) {
|
|
49
|
+
switch (_a.label) {
|
|
50
|
+
case 0:
|
|
51
|
+
_a.trys.push([0, 2, , 3]);
|
|
52
|
+
return [4 /*yield*/, server_1.buildStatic(options_1.default)];
|
|
53
|
+
case 1:
|
|
54
|
+
_a.sent();
|
|
55
|
+
return [3 /*break*/, 3];
|
|
56
|
+
case 2:
|
|
57
|
+
error_1 = _a.sent();
|
|
58
|
+
node_logger_1.logger.error(error_1);
|
|
59
|
+
return [3 /*break*/, 3];
|
|
60
|
+
case 3: return [2 /*return*/];
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
build();
|
|
@@ -3,6 +3,7 @@ import TsconfigPathsPlugin from 'tsconfig-paths-webpack-plugin';
|
|
|
3
3
|
import { Options as CoreOptions } from '@storybook/core-common';
|
|
4
4
|
export declare type Options = CoreOptions & {
|
|
5
5
|
angularBrowserTarget?: string;
|
|
6
|
+
tsConfig?: string;
|
|
6
7
|
};
|
|
7
8
|
export declare function webpackFinal(baseConfig: webpack.Configuration, options: Options): Promise<webpack.Configuration | {
|
|
8
9
|
entry: any[];
|
|
@@ -91,17 +91,26 @@ function webpackFinal(baseConfig, options) {
|
|
|
91
91
|
return [2 /*return*/, baseConfig];
|
|
92
92
|
case 4:
|
|
93
93
|
try {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
94
|
+
// Default behavior when `angularBrowserTarget` are not explicitly defined to null
|
|
95
|
+
if (options.angularBrowserTarget !== null) {
|
|
96
|
+
browserTarget = options.angularBrowserTarget
|
|
97
|
+
? architect_1.targetFromTargetString(options.angularBrowserTarget)
|
|
98
|
+
: {
|
|
99
|
+
configuration: undefined,
|
|
100
|
+
project: angular_read_workspace_1.getDefaultProjectName(workspaceConfig),
|
|
101
|
+
target: 'build',
|
|
102
|
+
};
|
|
103
|
+
fondProject = angular_read_workspace_1.findAngularProjectTarget(workspaceConfig, browserTarget.project, browserTarget.target);
|
|
104
|
+
project = fondProject.project;
|
|
105
|
+
target = fondProject.target;
|
|
106
|
+
node_logger_1.logger.info("=> Using angular project \"" + browserTarget.project + ":" + browserTarget.target + "\" for configuring Storybook");
|
|
107
|
+
}
|
|
108
|
+
// Start storybook when only tsConfig is provided.
|
|
109
|
+
if (options.angularBrowserTarget === null && options.tsConfig) {
|
|
110
|
+
node_logger_1.logger.info("=> Using default angular project with \"tsConfig:" + options.tsConfig + "\"");
|
|
111
|
+
project = { root: '', extensions: {}, targets: undefined };
|
|
112
|
+
target = { builder: '', options: { tsConfig: options.tsConfig } };
|
|
113
|
+
}
|
|
105
114
|
}
|
|
106
115
|
catch (error) {
|
|
107
116
|
node_logger_1.logger.error("=> Could not find angular project: " + error.message);
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/angular",
|
|
3
|
-
"version": "6.4.0-
|
|
3
|
+
"version": "6.4.0-beta.1",
|
|
4
4
|
"description": "Storybook for Angular: Develop Angular Components in isolation with Hot Reloading.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook"
|
|
7
7
|
],
|
|
8
|
-
"homepage": "https://github.com/storybookjs/storybook/tree/
|
|
8
|
+
"homepage": "https://github.com/storybookjs/storybook/tree/main/app/angular",
|
|
9
9
|
"bugs": {
|
|
10
10
|
"url": "https://github.com/storybookjs/storybook/issues"
|
|
11
11
|
},
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"types": "dist/ts3.9/client/index.d.ts",
|
|
25
25
|
"typesVersions": {
|
|
26
26
|
"<3.8": {
|
|
27
|
-
"
|
|
27
|
+
"dist/ts3.9/*": [
|
|
28
28
|
"dist/ts3.4/*"
|
|
29
29
|
]
|
|
30
30
|
}
|
|
@@ -45,12 +45,14 @@
|
|
|
45
45
|
"prepare": "node ../../scripts/prepare.js"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@storybook/addons": "6.4.0-
|
|
49
|
-
"@storybook/api": "6.4.0-
|
|
50
|
-
"@storybook/core": "6.4.0-
|
|
51
|
-
"@storybook/core-common": "6.4.0-
|
|
52
|
-
"@storybook/core-events": "6.4.0-
|
|
53
|
-
"@storybook/
|
|
48
|
+
"@storybook/addons": "6.4.0-beta.1",
|
|
49
|
+
"@storybook/api": "6.4.0-beta.1",
|
|
50
|
+
"@storybook/core": "6.4.0-beta.1",
|
|
51
|
+
"@storybook/core-common": "6.4.0-beta.1",
|
|
52
|
+
"@storybook/core-events": "6.4.0-beta.1",
|
|
53
|
+
"@storybook/csf": "0.0.2--canary.6aca495.0",
|
|
54
|
+
"@storybook/node-logger": "6.4.0-beta.1",
|
|
55
|
+
"@storybook/store": "6.4.0-beta.1",
|
|
54
56
|
"@types/webpack-env": "^1.16.0",
|
|
55
57
|
"autoprefixer": "^9.8.6",
|
|
56
58
|
"core-js": "^3.8.2",
|
|
@@ -65,6 +67,7 @@
|
|
|
65
67
|
"regenerator-runtime": "^0.13.7",
|
|
66
68
|
"sass-loader": "^10.1.0",
|
|
67
69
|
"strip-json-comments": "3.1.1",
|
|
70
|
+
"telejson": "^5.3.2",
|
|
68
71
|
"ts-dedent": "^2.0.0",
|
|
69
72
|
"ts-loader": "^8.0.14",
|
|
70
73
|
"tsconfig-paths-webpack-plugin": "^3.3.0",
|
|
@@ -128,5 +131,5 @@
|
|
|
128
131
|
"access": "public"
|
|
129
132
|
},
|
|
130
133
|
"builders": "dist/ts3.9/builders/builders.json",
|
|
131
|
-
"gitHead": "
|
|
134
|
+
"gitHead": "000a73948b4b91aa6bf84828b42ccdb7064f72bd"
|
|
132
135
|
}
|
package/preset.js
ADDED
package/standalone.d.ts
CHANGED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import '@webcomponents/custom-elements';
|
|
2
|
-
import '@webcomponents/custom-elements/src/native-shim';
|
|
3
|
-
import { StoryFnAngularReturnType } from '../types';
|
|
4
|
-
import { Parameters } from '../types-6-0';
|
|
5
|
-
/**
|
|
6
|
-
* Bootstrap angular application to generate a web component with angular element
|
|
7
|
-
*/
|
|
8
|
-
export declare class ElementRendererService {
|
|
9
|
-
private rendererService;
|
|
10
|
-
/**
|
|
11
|
-
* Returns a custom element generated by Angular elements
|
|
12
|
-
*/
|
|
13
|
-
renderAngularElement({ storyFnAngular, parameters, }: {
|
|
14
|
-
storyFnAngular: StoryFnAngularReturnType;
|
|
15
|
-
parameters: Parameters;
|
|
16
|
-
}): Promise<CustomElementConstructor>;
|
|
17
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { PlatformRef } from '@angular/core';
|
|
2
|
-
import { StoryFnAngularReturnType } from '../types';
|
|
3
|
-
import { Parameters } from '../types-6-0';
|
|
4
|
-
/**
|
|
5
|
-
* Bootstrap angular application and allows to change the rendering dynamically
|
|
6
|
-
* To be used as a singleton so has to set global properties of render function
|
|
7
|
-
*/
|
|
8
|
-
export declare class RendererService {
|
|
9
|
-
private static instance;
|
|
10
|
-
static SELECTOR_STORYBOOK_WRAPPER: string;
|
|
11
|
-
static getInstance(): RendererService;
|
|
12
|
-
platform: PlatformRef;
|
|
13
|
-
private staticRoot;
|
|
14
|
-
private storyProps$;
|
|
15
|
-
private currentStoryRender;
|
|
16
|
-
constructor();
|
|
17
|
-
/**
|
|
18
|
-
* Bootstrap main angular module with main component or send only new `props` with storyProps$
|
|
19
|
-
*
|
|
20
|
-
* @param storyFnAngular {StoryFnAngularReturnType}
|
|
21
|
-
* @param forced {boolean} If :
|
|
22
|
-
* - true render will only use the StoryFn `props' in storyProps observable that will update sotry's component/template properties. Improves performance without reloading the whole module&component if props changes
|
|
23
|
-
* - false fully recharges or initializes angular module & component
|
|
24
|
-
* @param parameters {Parameters}
|
|
25
|
-
*/
|
|
26
|
-
render({ storyFnAngular, forced, parameters, }: {
|
|
27
|
-
storyFnAngular: StoryFnAngularReturnType;
|
|
28
|
-
forced: boolean;
|
|
29
|
-
parameters: Parameters;
|
|
30
|
-
}): Promise<void>;
|
|
31
|
-
newPlatformBrowserDynamic(): PlatformRef;
|
|
32
|
-
destroyPlatformBrowserDynamic(): void;
|
|
33
|
-
private initAngularRootElement;
|
|
34
|
-
private fullRendererRequired;
|
|
35
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { ElementRendererService } from './client/preview/angular-beta/ElementRendererService';
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import '@webcomponents/custom-elements';
|
|
2
|
-
import '@webcomponents/custom-elements/src/native-shim';
|
|
3
|
-
import { StoryFnAngularReturnType } from '../types';
|
|
4
|
-
import { Parameters } from '../types-6-0';
|
|
5
|
-
/**
|
|
6
|
-
* Bootstrap angular application to generate a web component with angular element
|
|
7
|
-
*/
|
|
8
|
-
export declare class ElementRendererService {
|
|
9
|
-
private rendererService;
|
|
10
|
-
/**
|
|
11
|
-
* Returns a custom element generated by Angular elements
|
|
12
|
-
*/
|
|
13
|
-
renderAngularElement({ storyFnAngular, parameters, }: {
|
|
14
|
-
storyFnAngular: StoryFnAngularReturnType;
|
|
15
|
-
parameters: Parameters;
|
|
16
|
-
}): Promise<CustomElementConstructor>;
|
|
17
|
-
}
|
|
@@ -1,115 +0,0 @@
|
|
|
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
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
14
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
15
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
16
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
17
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
18
|
-
};
|
|
19
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
20
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
21
|
-
};
|
|
22
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
23
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
24
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
25
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
26
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
27
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
28
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
32
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
33
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
34
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
35
|
-
function step(op) {
|
|
36
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
37
|
-
while (_) try {
|
|
38
|
-
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;
|
|
39
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
40
|
-
switch (op[0]) {
|
|
41
|
-
case 0: case 1: t = op; break;
|
|
42
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
43
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
44
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
45
|
-
default:
|
|
46
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
47
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
48
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
49
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
50
|
-
if (t[2]) _.ops.pop();
|
|
51
|
-
_.trys.pop(); continue;
|
|
52
|
-
}
|
|
53
|
-
op = body.call(thisArg, _);
|
|
54
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
55
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
59
|
-
exports.ElementRendererService = void 0;
|
|
60
|
-
// Should be added first :
|
|
61
|
-
// Custom Elements polyfill. Required for browsers that do not natively support Custom Elements.
|
|
62
|
-
require("@webcomponents/custom-elements");
|
|
63
|
-
// Custom Elements ES5 shim. Required when using ES5 bundles on browsers that natively support
|
|
64
|
-
// Custom Elements (either because the browser does not support ES2015 modules or because the app
|
|
65
|
-
// is explicitly configured to generate ES5 only bundles).
|
|
66
|
-
require("@webcomponents/custom-elements/src/native-shim");
|
|
67
|
-
var core_1 = require("@angular/core");
|
|
68
|
-
var elements_1 = require("@angular/elements");
|
|
69
|
-
var rxjs_1 = require("rxjs");
|
|
70
|
-
var StorybookModule_1 = require("./StorybookModule");
|
|
71
|
-
var RendererService_1 = require("./RendererService");
|
|
72
|
-
/**
|
|
73
|
-
* Bootstrap angular application to generate a web component with angular element
|
|
74
|
-
*/
|
|
75
|
-
var ElementRendererService = /** @class */ (function () {
|
|
76
|
-
function ElementRendererService() {
|
|
77
|
-
this.rendererService = RendererService_1.RendererService.getInstance();
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Returns a custom element generated by Angular elements
|
|
81
|
-
*/
|
|
82
|
-
ElementRendererService.prototype.renderAngularElement = function (_a) {
|
|
83
|
-
var _b;
|
|
84
|
-
var storyFnAngular = _a.storyFnAngular, parameters = _a.parameters;
|
|
85
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
86
|
-
var ngModule;
|
|
87
|
-
return __generator(this, function (_c) {
|
|
88
|
-
ngModule = StorybookModule_1.getStorybookModuleMetadata({ storyFnAngular: storyFnAngular, parameters: parameters, targetSelector: RendererService_1.RendererService.SELECTOR_STORYBOOK_WRAPPER }, new rxjs_1.BehaviorSubject(storyFnAngular.props));
|
|
89
|
-
return [2 /*return*/, this.rendererService
|
|
90
|
-
.newPlatformBrowserDynamic()
|
|
91
|
-
.bootstrapModule(createElementsModule(ngModule), (_b = parameters.bootstrapModuleOptions) !== null && _b !== void 0 ? _b : undefined)
|
|
92
|
-
.then(function (m) { return m.instance.ngEl; })];
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
};
|
|
96
|
-
return ElementRendererService;
|
|
97
|
-
}());
|
|
98
|
-
exports.ElementRendererService = ElementRendererService;
|
|
99
|
-
var createElementsModule = function (ngModule) {
|
|
100
|
-
var ElementsModule = /** @class */ (function () {
|
|
101
|
-
function ElementsModule(injector) {
|
|
102
|
-
this.injector = injector;
|
|
103
|
-
this.ngEl = elements_1.createCustomElement(ngModule.bootstrap[0], {
|
|
104
|
-
injector: this.injector,
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
ElementsModule.prototype.ngDoBootstrap = function () { };
|
|
108
|
-
ElementsModule = __decorate([
|
|
109
|
-
core_1.NgModule(__assign({}, ngModule)),
|
|
110
|
-
__metadata("design:paramtypes", [core_1.Injector])
|
|
111
|
-
], ElementsModule);
|
|
112
|
-
return ElementsModule;
|
|
113
|
-
}());
|
|
114
|
-
return ElementsModule;
|
|
115
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { PlatformRef } from '@angular/core';
|
|
2
|
-
import { StoryFnAngularReturnType } from '../types';
|
|
3
|
-
import { Parameters } from '../types-6-0';
|
|
4
|
-
/**
|
|
5
|
-
* Bootstrap angular application and allows to change the rendering dynamically
|
|
6
|
-
* To be used as a singleton so has to set global properties of render function
|
|
7
|
-
*/
|
|
8
|
-
export declare class RendererService {
|
|
9
|
-
private static instance;
|
|
10
|
-
static SELECTOR_STORYBOOK_WRAPPER: string;
|
|
11
|
-
static getInstance(): RendererService;
|
|
12
|
-
platform: PlatformRef;
|
|
13
|
-
private staticRoot;
|
|
14
|
-
private storyProps$;
|
|
15
|
-
private currentStoryRender;
|
|
16
|
-
constructor();
|
|
17
|
-
/**
|
|
18
|
-
* Bootstrap main angular module with main component or send only new `props` with storyProps$
|
|
19
|
-
*
|
|
20
|
-
* @param storyFnAngular {StoryFnAngularReturnType}
|
|
21
|
-
* @param forced {boolean} If :
|
|
22
|
-
* - true render will only use the StoryFn `props' in storyProps observable that will update sotry's component/template properties. Improves performance without reloading the whole module&component if props changes
|
|
23
|
-
* - false fully recharges or initializes angular module & component
|
|
24
|
-
* @param parameters {Parameters}
|
|
25
|
-
*/
|
|
26
|
-
render({ storyFnAngular, forced, parameters, }: {
|
|
27
|
-
storyFnAngular: StoryFnAngularReturnType;
|
|
28
|
-
forced: boolean;
|
|
29
|
-
parameters: Parameters;
|
|
30
|
-
}): Promise<void>;
|
|
31
|
-
newPlatformBrowserDynamic(): PlatformRef;
|
|
32
|
-
destroyPlatformBrowserDynamic(): void;
|
|
33
|
-
private initAngularRootElement;
|
|
34
|
-
private fullRendererRequired;
|
|
35
|
-
}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.RendererService = void 0;
|
|
40
|
-
/* eslint-disable no-undef */
|
|
41
|
-
var core_1 = require("@angular/core");
|
|
42
|
-
var platform_browser_dynamic_1 = require("@angular/platform-browser-dynamic");
|
|
43
|
-
var rxjs_1 = require("rxjs");
|
|
44
|
-
var StorybookModule_1 = require("./StorybookModule");
|
|
45
|
-
/**
|
|
46
|
-
* Bootstrap angular application and allows to change the rendering dynamically
|
|
47
|
-
* To be used as a singleton so has to set global properties of render function
|
|
48
|
-
*/
|
|
49
|
-
var RendererService = /** @class */ (function () {
|
|
50
|
-
function RendererService() {
|
|
51
|
-
this.staticRoot = document.getElementById('root');
|
|
52
|
-
if (typeof NODE_ENV === 'string' && NODE_ENV !== 'development') {
|
|
53
|
-
try {
|
|
54
|
-
// platform should be set after enableProdMode()
|
|
55
|
-
core_1.enableProdMode();
|
|
56
|
-
}
|
|
57
|
-
catch (e) {
|
|
58
|
-
// eslint-disable-next-line no-console
|
|
59
|
-
console.debug(e);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
RendererService.getInstance = function () {
|
|
64
|
-
if (!RendererService.instance) {
|
|
65
|
-
RendererService.instance = new RendererService();
|
|
66
|
-
}
|
|
67
|
-
return RendererService.instance;
|
|
68
|
-
};
|
|
69
|
-
/**
|
|
70
|
-
* Bootstrap main angular module with main component or send only new `props` with storyProps$
|
|
71
|
-
*
|
|
72
|
-
* @param storyFnAngular {StoryFnAngularReturnType}
|
|
73
|
-
* @param forced {boolean} If :
|
|
74
|
-
* - true render will only use the StoryFn `props' in storyProps observable that will update sotry's component/template properties. Improves performance without reloading the whole module&component if props changes
|
|
75
|
-
* - false fully recharges or initializes angular module & component
|
|
76
|
-
* @param parameters {Parameters}
|
|
77
|
-
*/
|
|
78
|
-
RendererService.prototype.render = function (_a) {
|
|
79
|
-
var _b;
|
|
80
|
-
var storyFnAngular = _a.storyFnAngular, forced = _a.forced, parameters = _a.parameters;
|
|
81
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
82
|
-
var storyProps$, moduleMetadata, resetCompiledComponents;
|
|
83
|
-
return __generator(this, function (_c) {
|
|
84
|
-
switch (_c.label) {
|
|
85
|
-
case 0:
|
|
86
|
-
storyProps$ = new rxjs_1.BehaviorSubject(storyFnAngular.props);
|
|
87
|
-
moduleMetadata = StorybookModule_1.getStorybookModuleMetadata({ storyFnAngular: storyFnAngular, parameters: parameters, targetSelector: RendererService.SELECTOR_STORYBOOK_WRAPPER }, storyProps$);
|
|
88
|
-
if (!this.fullRendererRequired({
|
|
89
|
-
storyFnAngular: storyFnAngular,
|
|
90
|
-
moduleMetadata: moduleMetadata,
|
|
91
|
-
forced: forced,
|
|
92
|
-
})) {
|
|
93
|
-
this.storyProps$.next(storyFnAngular.props);
|
|
94
|
-
return [2 /*return*/];
|
|
95
|
-
}
|
|
96
|
-
try {
|
|
97
|
-
resetCompiledComponents = require('@angular/core').ɵresetCompiledComponents;
|
|
98
|
-
resetCompiledComponents();
|
|
99
|
-
}
|
|
100
|
-
catch (e) {
|
|
101
|
-
/**
|
|
102
|
-
* noop catch
|
|
103
|
-
* This means angular removed or modified ɵresetCompiledComponents
|
|
104
|
-
*
|
|
105
|
-
* Probably, they added a clearCache mechanism to platform.destroy() and
|
|
106
|
-
* we can simply remove this in case no errors are thrown during runtime
|
|
107
|
-
*/
|
|
108
|
-
}
|
|
109
|
-
// Complete last BehaviorSubject and set a new one for the current module
|
|
110
|
-
if (this.storyProps$) {
|
|
111
|
-
this.storyProps$.complete();
|
|
112
|
-
}
|
|
113
|
-
this.storyProps$ = storyProps$;
|
|
114
|
-
return [4 /*yield*/, this.newPlatformBrowserDynamic().bootstrapModule(StorybookModule_1.createStorybookModule(moduleMetadata), (_b = parameters.bootstrapModuleOptions) !== null && _b !== void 0 ? _b : undefined)];
|
|
115
|
-
case 1:
|
|
116
|
-
_c.sent();
|
|
117
|
-
return [2 /*return*/];
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
});
|
|
121
|
-
};
|
|
122
|
-
RendererService.prototype.newPlatformBrowserDynamic = function () {
|
|
123
|
-
// Before creating a new platform, we destroy the previous one cleanly.
|
|
124
|
-
this.destroyPlatformBrowserDynamic();
|
|
125
|
-
this.initAngularRootElement();
|
|
126
|
-
this.platform = platform_browser_dynamic_1.platformBrowserDynamic();
|
|
127
|
-
return this.platform;
|
|
128
|
-
};
|
|
129
|
-
RendererService.prototype.destroyPlatformBrowserDynamic = function () {
|
|
130
|
-
if (this.platform && !this.platform.destroyed) {
|
|
131
|
-
// Destroys the current Angular platform and all Angular applications on the page.
|
|
132
|
-
// So call each angular ngOnDestroy and avoid memory leaks
|
|
133
|
-
this.platform.destroy();
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
RendererService.prototype.initAngularRootElement = function () {
|
|
137
|
-
// Adds DOM element that angular will use as bootstrap component
|
|
138
|
-
var storybookWrapperElement = document.createElement(RendererService.SELECTOR_STORYBOOK_WRAPPER);
|
|
139
|
-
this.staticRoot.innerHTML = '';
|
|
140
|
-
this.staticRoot.appendChild(storybookWrapperElement);
|
|
141
|
-
};
|
|
142
|
-
RendererService.prototype.fullRendererRequired = function (_a) {
|
|
143
|
-
var _b, _c;
|
|
144
|
-
var storyFnAngular = _a.storyFnAngular, moduleMetadata = _a.moduleMetadata, forced = _a.forced;
|
|
145
|
-
var lastStoryRender = this.currentStoryRender;
|
|
146
|
-
this.currentStoryRender = {
|
|
147
|
-
storyFnAngular: storyFnAngular,
|
|
148
|
-
moduleMetadataSnapshot: JSON.stringify(moduleMetadata),
|
|
149
|
-
};
|
|
150
|
-
if (
|
|
151
|
-
// check `forceRender` of story RenderContext
|
|
152
|
-
!forced ||
|
|
153
|
-
// if it's the first rendering and storyProps$ is not init
|
|
154
|
-
!this.storyProps$) {
|
|
155
|
-
return true;
|
|
156
|
-
}
|
|
157
|
-
// force the rendering if the template has changed
|
|
158
|
-
var hasChangedTemplate = !!(storyFnAngular === null || storyFnAngular === void 0 ? void 0 : storyFnAngular.template) &&
|
|
159
|
-
((_b = lastStoryRender === null || lastStoryRender === void 0 ? void 0 : lastStoryRender.storyFnAngular) === null || _b === void 0 ? void 0 : _b.template) !== storyFnAngular.template;
|
|
160
|
-
if (hasChangedTemplate) {
|
|
161
|
-
return true;
|
|
162
|
-
}
|
|
163
|
-
// force the rendering if the metadata structure has changed
|
|
164
|
-
var hasChangedModuleMetadata = ((_c = this.currentStoryRender) === null || _c === void 0 ? void 0 : _c.moduleMetadataSnapshot) !== (lastStoryRender === null || lastStoryRender === void 0 ? void 0 : lastStoryRender.moduleMetadataSnapshot);
|
|
165
|
-
return hasChangedModuleMetadata;
|
|
166
|
-
};
|
|
167
|
-
RendererService.SELECTOR_STORYBOOK_WRAPPER = 'storybook-wrapper';
|
|
168
|
-
return RendererService;
|
|
169
|
-
}());
|
|
170
|
-
exports.RendererService = RendererService;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { ElementRendererService } from './client/preview/angular-beta/ElementRendererService';
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var ElementRendererService_1 = require("./client/preview/angular-beta/ElementRendererService");
|
|
4
|
-
Object.defineProperty(exports, "ElementRendererService", { enumerable: true, get: function () { return ElementRendererService_1.ElementRendererService; } });
|
package/element-renderer.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './dist/ts3.9/element-renderer.d';
|
package/element-renderer.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require('./dist/ts3.9/element-renderer');
|