creevey 0.9.0-beta.2 → 0.9.0-beta.20
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/.yarn/install-state.gz +0 -0
- package/.yarnrc.yml +1 -0
- package/CHANGELOG.md +51 -0
- package/README.md +9 -1
- package/addon/README.md +3 -0
- package/addon/package.json +5 -0
- package/docs/config.md +29 -26
- package/jest.config.js +6 -0
- package/lib/cjs/cli.js +1 -0
- package/lib/cjs/client/addon/Manager.js +170 -390
- package/lib/cjs/client/addon/components/Addon.js +17 -45
- package/lib/cjs/client/addon/components/Icons.js +12 -14
- package/lib/cjs/client/addon/components/Panel.js +21 -30
- package/lib/cjs/client/addon/components/TestSelect.js +20 -31
- package/lib/cjs/client/addon/components/Tools.js +35 -65
- package/lib/cjs/client/addon/decorator.js +1 -4
- package/lib/cjs/client/addon/index.js +27 -0
- package/lib/cjs/client/addon/preset.js +3 -76
- package/lib/cjs/client/addon/preview.js +11 -0
- package/lib/cjs/client/addon/readyForCapture.js +1 -4
- package/lib/cjs/client/addon/register.js +43 -82
- package/lib/cjs/client/addon/utils.js +4 -8
- package/lib/cjs/client/addon/withCreevey.js +145 -404
- package/lib/cjs/client/shared/components/ImagesView/BlendView.js +25 -35
- package/lib/cjs/client/shared/components/ImagesView/ImagesView.js +29 -41
- package/lib/cjs/client/shared/components/ImagesView/SideBySideView.js +46 -83
- package/lib/cjs/client/shared/components/ImagesView/SlideView.js +39 -67
- package/lib/cjs/client/shared/components/ImagesView/SwapView.js +26 -57
- package/lib/cjs/client/shared/components/ImagesView/index.js +9 -14
- package/lib/cjs/client/shared/components/PageFooter/PageFooter.js +13 -16
- package/lib/cjs/client/shared/components/PageFooter/Paging.js +16 -37
- package/lib/cjs/client/shared/components/PageHeader/ImagePreview.js +42 -34
- package/lib/cjs/client/shared/components/PageHeader/PageHeader.js +40 -84
- package/lib/cjs/client/shared/components/ResultsPage.js +42 -99
- package/lib/cjs/client/shared/creeveyClientApi.js +56 -93
- package/lib/cjs/client/shared/helpers.js +149 -274
- package/lib/cjs/client/shared/viewMode.js +5 -9
- package/lib/cjs/client/web/192.js +1 -0
- package/lib/cjs/client/web/632.js +43 -0
- package/lib/cjs/client/web/794.js +1 -0
- package/lib/cjs/client/web/main.js +79 -38
- package/lib/cjs/client/web/main.js.LICENSE.txt +34 -0
- package/lib/cjs/creevey.js +15 -30
- package/lib/cjs/index.js +0 -15
- package/lib/cjs/server/config.js +16 -36
- package/lib/cjs/server/docker.js +8 -34
- package/lib/cjs/server/index.js +9 -34
- package/lib/cjs/server/logger.js +7 -20
- package/lib/cjs/server/master/api.js +1 -14
- package/lib/cjs/server/master/index.js +25 -49
- package/lib/cjs/server/master/master.js +6 -21
- package/lib/cjs/server/master/pool.js +10 -53
- package/lib/cjs/server/master/runner.js +65 -105
- package/lib/cjs/server/master/server.js +10 -29
- package/lib/cjs/server/messages.js +14 -62
- package/lib/cjs/server/selenium/browser.js +149 -185
- package/lib/cjs/server/selenium/index.js +0 -4
- package/lib/cjs/server/selenium/selenoid.js +18 -44
- package/lib/cjs/server/stories.js +35 -57
- package/lib/cjs/server/storybook/providers/browser.js +15 -29
- package/lib/cjs/server/storybook/providers/hybrid.js +16 -37
- package/lib/cjs/server/telemetry.js +167 -0
- package/lib/cjs/server/testsFiles/parser.js +3 -19
- package/lib/cjs/server/testsFiles/register.js +8 -14
- package/lib/cjs/server/update.js +4 -25
- package/lib/cjs/server/utils.js +35 -76
- package/lib/cjs/server/worker/chai-image.js +1 -27
- package/lib/cjs/server/worker/helpers.js +2 -12
- package/lib/cjs/server/worker/index.js +1 -3
- package/lib/cjs/server/worker/reporter.js +16 -43
- package/lib/cjs/server/worker/worker.js +32 -72
- package/lib/cjs/shared/index.js +87 -0
- package/lib/cjs/shared/serializeRegExp.js +34 -0
- package/lib/cjs/types.js +11 -20
- package/lib/esm/cli.js +1 -1
- package/lib/esm/client/addon/Manager.js +170 -381
- package/lib/esm/client/addon/components/Addon.js +15 -34
- package/lib/esm/client/addon/components/Icons.js +10 -6
- package/lib/esm/client/addon/components/Panel.js +20 -18
- package/lib/esm/client/addon/components/TestSelect.js +19 -23
- package/lib/esm/client/addon/components/Tools.js +33 -49
- package/lib/esm/client/addon/decorator.js +1 -1
- package/lib/esm/client/addon/index.js +2 -0
- package/lib/esm/client/addon/preset.js +2 -56
- package/lib/esm/client/addon/preview.js +5 -0
- package/lib/esm/client/addon/readyForCapture.js +1 -3
- package/lib/esm/client/addon/register.js +41 -67
- package/lib/esm/client/addon/utils.js +3 -7
- package/lib/esm/client/addon/withCreevey.js +142 -388
- package/lib/esm/client/shared/components/ImagesView/BlendView.js +22 -18
- package/lib/esm/client/shared/components/ImagesView/ImagesView.js +27 -25
- package/lib/esm/client/shared/components/ImagesView/SideBySideView.js +43 -63
- package/lib/esm/client/shared/components/ImagesView/SlideView.js +36 -47
- package/lib/esm/client/shared/components/ImagesView/SwapView.js +23 -40
- package/lib/esm/client/shared/components/PageFooter/PageFooter.js +12 -8
- package/lib/esm/client/shared/components/PageFooter/Paging.js +15 -29
- package/lib/esm/client/shared/components/PageHeader/ImagePreview.js +40 -25
- package/lib/esm/client/shared/components/PageHeader/PageHeader.js +38 -66
- package/lib/esm/client/shared/components/ResultsPage.js +39 -75
- package/lib/esm/client/shared/creeveyClientApi.js +56 -90
- package/lib/esm/client/shared/helpers.js +133 -230
- package/lib/esm/client/shared/viewMode.js +4 -4
- package/lib/esm/client/web/192.js +1 -0
- package/lib/esm/client/web/632.js +43 -0
- package/lib/esm/client/web/794.js +1 -0
- package/lib/esm/client/web/index.html +19 -0
- package/lib/esm/client/web/main.js +79 -0
- package/lib/esm/client/web/main.js.LICENSE.txt +34 -0
- package/lib/esm/creevey.js +13 -16
- package/lib/esm/index.js +1 -4
- package/lib/esm/server/config.js +9 -16
- package/lib/esm/server/docker.js +6 -14
- package/lib/esm/server/index.js +8 -22
- package/lib/esm/server/logger.js +0 -1
- package/lib/esm/server/master/api.js +0 -9
- package/lib/esm/server/master/index.js +25 -35
- package/lib/esm/server/master/master.js +2 -7
- package/lib/esm/server/master/pool.js +8 -41
- package/lib/esm/server/master/runner.js +64 -90
- package/lib/esm/server/master/server.js +9 -11
- package/lib/esm/server/messages.js +8 -42
- package/lib/esm/server/selenium/browser.js +147 -163
- package/lib/esm/server/selenium/selenoid.js +16 -27
- package/lib/esm/server/stories.js +34 -46
- package/lib/esm/server/storybook/providers/browser.js +12 -17
- package/lib/esm/server/storybook/providers/hybrid.js +11 -22
- package/lib/esm/server/telemetry.js +160 -0
- package/lib/esm/server/testsFiles/parser.js +0 -6
- package/lib/esm/server/testsFiles/register.js +6 -7
- package/lib/esm/server/update.js +1 -13
- package/lib/esm/server/utils.js +20 -41
- package/lib/esm/server/worker/chai-image.js +0 -21
- package/lib/esm/server/worker/helpers.js +2 -9
- package/lib/esm/server/worker/reporter.js +15 -29
- package/lib/esm/server/worker/worker.js +31 -48
- package/lib/esm/shared/index.js +77 -0
- package/lib/esm/shared/serializeRegExp.js +24 -0
- package/lib/esm/types.js +5 -1
- package/lib/types/client/addon/Manager.d.ts +3 -3
- package/lib/types/client/addon/components/Addon.d.ts +1 -0
- package/lib/types/client/addon/components/Icons.d.ts +1 -0
- package/lib/types/client/addon/components/Panel.d.ts +1 -0
- package/lib/types/client/addon/components/Tools.d.ts +1 -0
- package/lib/types/client/addon/decorator.d.ts +1 -1
- package/lib/types/client/addon/index.d.ts +2 -0
- package/lib/types/client/addon/preset.d.ts +2 -24
- package/lib/types/client/addon/preview.d.ts +4 -0
- package/lib/types/client/addon/utils.d.ts +1 -0
- package/lib/types/client/addon/withCreevey.d.ts +4 -3
- package/lib/types/client/shared/components/ImagesView/BlendView.d.ts +3 -1
- package/lib/types/client/shared/components/ImagesView/SideBySideView.d.ts +3 -1
- package/lib/types/client/shared/components/ImagesView/SlideView.d.ts +3 -1
- package/lib/types/client/shared/components/ImagesView/SwapView.d.ts +3 -1
- package/lib/types/client/shared/components/PageHeader/ImagePreview.d.ts +3 -1
- package/lib/types/client/shared/components/ResultsPage.d.ts +3 -1
- package/lib/types/client/web/CreeveyLoader.d.ts +1 -1
- package/lib/types/client/web/CreeveyView/SideBar/Checkbox.d.ts +6 -3
- package/lib/types/client/web/CreeveyView/SideBar/Search.d.ts +1 -0
- package/lib/types/client/web/CreeveyView/SideBar/SuiteLink.d.ts +19 -14
- package/lib/types/client/web/CreeveyView/SideBar/TestStatusIcon.d.ts +3 -1
- package/lib/types/client/web/CreeveyView/SideBar/TestsStatus.d.ts +3 -1
- package/lib/types/client/web/CreeveyView/SideBar/Toggle.d.ts +1 -0
- package/lib/types/client/web/KeyboardEventsContext.d.ts +4 -2
- package/lib/types/index.d.ts +4 -1
- package/lib/types/server/logger.d.ts +6 -2
- package/lib/types/server/messages.d.ts +14 -12
- package/lib/types/server/selenium/browser.d.ts +5 -3
- package/lib/types/server/storybook/providers/browser.d.ts +2 -4
- package/lib/types/server/storybook/providers/hybrid.d.ts +2 -4
- package/lib/types/server/telemetry.d.ts +2 -0
- package/lib/types/server/utils.d.ts +5 -1
- package/lib/types/shared/index.d.ts +7 -0
- package/lib/types/shared/serializeRegExp.d.ts +9 -0
- package/lib/types/types.d.ts +29 -36
- package/package.json +132 -133
- package/types/global.d.ts +5 -0
- package/lib/cjs/client/web/1.js +0 -13
- package/lib/cjs/client/web/2.js +0 -1
- package/lib/cjs/server/extract.js +0 -50
- package/lib/cjs/server/loaders/babel/creevey-plugin.js +0 -88
- package/lib/cjs/server/loaders/babel/helpers.js +0 -479
- package/lib/cjs/server/loaders/babel/register.js +0 -126
- package/lib/cjs/server/loaders/hooks/mdx.js +0 -30
- package/lib/cjs/server/loaders/hooks/svelte.js +0 -65
- package/lib/cjs/server/loaders/webpack/compile.js +0 -286
- package/lib/cjs/server/loaders/webpack/creevey-loader.js +0 -174
- package/lib/cjs/server/loaders/webpack/dummy-hmr.js +0 -44
- package/lib/cjs/server/loaders/webpack/mdx-loader.js +0 -72
- package/lib/cjs/server/loaders/webpack/start.js +0 -41
- package/lib/cjs/server/storybook/entry.js +0 -68
- package/lib/cjs/server/storybook/helpers.js +0 -165
- package/lib/cjs/server/storybook/providers/nodejs.js +0 -239
- package/lib/cjs/shared.js +0 -124
- package/lib/esm/server/extract.js +0 -34
- package/lib/esm/server/loaders/babel/creevey-plugin.js +0 -74
- package/lib/esm/server/loaders/babel/helpers.js +0 -462
- package/lib/esm/server/loaders/babel/register.js +0 -105
- package/lib/esm/server/loaders/hooks/mdx.js +0 -15
- package/lib/esm/server/loaders/hooks/svelte.js +0 -49
- package/lib/esm/server/loaders/webpack/compile.js +0 -263
- package/lib/esm/server/loaders/webpack/creevey-loader.js +0 -153
- package/lib/esm/server/loaders/webpack/dummy-hmr.js +0 -36
- package/lib/esm/server/loaders/webpack/mdx-loader.js +0 -58
- package/lib/esm/server/loaders/webpack/start.js +0 -27
- package/lib/esm/server/storybook/entry.js +0 -44
- package/lib/esm/server/storybook/helpers.js +0 -106
- package/lib/esm/server/storybook/providers/nodejs.js +0 -217
- package/lib/esm/shared.js +0 -93
- package/lib/types/server/extract.d.ts +0 -2
- package/lib/types/server/loaders/babel/creevey-plugin.d.ts +0 -1
- package/lib/types/server/loaders/babel/helpers.d.ts +0 -19
- package/lib/types/server/loaders/babel/register.d.ts +0 -5
- package/lib/types/server/loaders/hooks/mdx.d.ts +0 -1
- package/lib/types/server/loaders/hooks/svelte.d.ts +0 -1
- package/lib/types/server/loaders/webpack/compile.d.ts +0 -2
- package/lib/types/server/loaders/webpack/creevey-loader.d.ts +0 -2
- package/lib/types/server/loaders/webpack/dummy-hmr.d.ts +0 -10
- package/lib/types/server/loaders/webpack/mdx-loader.d.ts +0 -6
- package/lib/types/server/loaders/webpack/start.d.ts +0 -1
- package/lib/types/server/storybook/entry.d.ts +0 -18
- package/lib/types/server/storybook/helpers.d.ts +0 -24
- package/lib/types/server/storybook/providers/nodejs.d.ts +0 -9
- package/lib/types/shared.d.ts +0 -16
- package/preset.js +0 -9
- package/storybook-static/stories.json +0 -21
- package/types/mdx.d.ts +0 -6
@@ -1,68 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.raw = exports.getStorybook = exports.setAddon = exports.clearDecorators = exports.addParameters = exports.addDecorator = exports.configure = exports.storiesOf = exports.forceReRender = exports.clientApi = exports.channel = void 0;
|
7
|
-
|
8
|
-
var _addons = require("@storybook/addons");
|
9
|
-
|
10
|
-
var _helpers = require("./helpers");
|
11
|
-
|
12
|
-
var _api$channel, _api$context;
|
13
|
-
|
14
|
-
const framework = (0, _helpers.getStorybookFramework)(); // eslint-disable-next-line @typescript-eslint/no-var-requires
|
15
|
-
|
16
|
-
const core = require((0, _helpers.resolveFromStorybook)('@storybook/core')); //@ts-expect-error: 6.2 use named exports
|
17
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
18
|
-
|
19
|
-
|
20
|
-
const start = (0, _helpers.isStorybookVersionLessThan)(6, 2) ? core.default.start : core.start;
|
21
|
-
const api = start(() => void 0);
|
22
|
-
const channel = (0, _helpers.isStorybookVersionLessThan)(6, 4) ? (_api$channel = api.channel) !== null && _api$channel !== void 0 ? _api$channel : (_api$context = api.context) === null || _api$context === void 0 ? void 0 : _api$context.channel : _addons.addons.getChannel();
|
23
|
-
exports.channel = channel;
|
24
|
-
const clientApi = api.clientApi;
|
25
|
-
exports.clientApi = clientApi;
|
26
|
-
const forceReRender = api.forceReRender;
|
27
|
-
exports.forceReRender = forceReRender;
|
28
|
-
|
29
|
-
const storiesOf = (kind, m) => {
|
30
|
-
return clientApi.storiesOf(kind, m).addParameters({
|
31
|
-
framework
|
32
|
-
});
|
33
|
-
};
|
34
|
-
|
35
|
-
exports.storiesOf = storiesOf;
|
36
|
-
|
37
|
-
const configure = (...args) => {
|
38
|
-
if ((0, _helpers.isStorybookVersionLessThan)(5, 2)) {
|
39
|
-
//NOTE: Storybook <= 5.1 pass args as is
|
40
|
-
//@ts-expect-error: ignore it
|
41
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
|
42
|
-
return api.configApi.configure(...args);
|
43
|
-
}
|
44
|
-
|
45
|
-
if ((0, _helpers.isStorybookVersionLessThan)(6)) {
|
46
|
-
//NOTE: Storybook <= 5.3 pass `framework` as last argument
|
47
|
-
//@ts-expect-error: ignore it
|
48
|
-
return api.configure(...args, framework);
|
49
|
-
} //NOTE Storybook 6.x pass `framework` as first argument
|
50
|
-
//@ts-expect-error: ignore it
|
51
|
-
|
52
|
-
|
53
|
-
return api.configure(framework, ...args);
|
54
|
-
};
|
55
|
-
|
56
|
-
exports.configure = configure;
|
57
|
-
const addDecorator = clientApi.addDecorator;
|
58
|
-
exports.addDecorator = addDecorator;
|
59
|
-
const addParameters = clientApi.addParameters;
|
60
|
-
exports.addParameters = addParameters;
|
61
|
-
const clearDecorators = clientApi.clearDecorators;
|
62
|
-
exports.clearDecorators = clearDecorators;
|
63
|
-
const setAddon = clientApi.setAddon;
|
64
|
-
exports.setAddon = setAddon;
|
65
|
-
const getStorybook = clientApi.getStorybook;
|
66
|
-
exports.getStorybook = getStorybook;
|
67
|
-
const raw = clientApi.raw;
|
68
|
-
exports.raw = raw;
|
@@ -1,165 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.hasDocsAddon = hasDocsAddon;
|
7
|
-
exports.hasSvelteCSFAddon = hasSvelteCSFAddon;
|
8
|
-
exports.getStorybookVersion = getStorybookVersion;
|
9
|
-
exports.isStorybookVersionLessThan = isStorybookVersionLessThan;
|
10
|
-
exports.isStorybookVersionGreaterThan = isStorybookVersionGreaterThan;
|
11
|
-
exports.isStorybookVersion = isStorybookVersion;
|
12
|
-
exports.getStorybookFramework = getStorybookFramework;
|
13
|
-
exports.importStorybookConfig = importStorybookConfig;
|
14
|
-
exports.isCSFv3Enabled = isCSFv3Enabled;
|
15
|
-
exports.storybookConfigRef = exports.importStorybookCoreEvents = exports.importStorybookCoreCommon = exports.importStorybookClientLogger = exports.resolveFromStorybookCoreServer = exports.resolveFromStorybookCore = exports.resolveFromStorybookBuilderWebpack4 = exports.resolveFromStorybookAddonDocs = exports.resolveFromStorybook = exports.storybookDirRef = void 0;
|
16
|
-
|
17
|
-
var _path = _interopRequireDefault(require("path"));
|
18
|
-
|
19
|
-
var _resolveFrom = _interopRequireDefault(require("resolve-from"));
|
20
|
-
|
21
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
22
|
-
|
23
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
24
|
-
|
25
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
26
|
-
|
27
|
-
const supportedFrameworks = ['react', 'vue', 'vue3', 'angular', 'marionette', 'mithril', 'marko', 'html', 'svelte', 'riot', 'ember', 'preact', 'rax', 'aurelia', 'server', 'web-components'];
|
28
|
-
const storybookDirRef = {
|
29
|
-
current: _path.default.resolve('.storybook')
|
30
|
-
};
|
31
|
-
exports.storybookDirRef = storybookDirRef;
|
32
|
-
|
33
|
-
const resolveFromStorybook = modulePath => (0, _resolveFrom.default)(storybookDirRef.current, modulePath);
|
34
|
-
|
35
|
-
exports.resolveFromStorybook = resolveFromStorybook;
|
36
|
-
|
37
|
-
const resolveFromStorybookAddonDocs = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/addon-docs'), modulePath);
|
38
|
-
|
39
|
-
exports.resolveFromStorybookAddonDocs = resolveFromStorybookAddonDocs;
|
40
|
-
|
41
|
-
const resolveFromStorybookBuilderWebpack4 = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/builder-webpack4'), modulePath);
|
42
|
-
|
43
|
-
exports.resolveFromStorybookBuilderWebpack4 = resolveFromStorybookBuilderWebpack4;
|
44
|
-
|
45
|
-
const resolveFromStorybookCore = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/core'), modulePath);
|
46
|
-
|
47
|
-
exports.resolveFromStorybookCore = resolveFromStorybookCore;
|
48
|
-
|
49
|
-
const resolveFromStorybookCoreServer = modulePath => (0, _resolveFrom.default)(resolveFromStorybook('@storybook/core-server'), modulePath);
|
50
|
-
|
51
|
-
exports.resolveFromStorybookCoreServer = resolveFromStorybookCoreServer;
|
52
|
-
|
53
|
-
const importFromStorybook = modulePath => Promise.resolve(`${resolveFromStorybook(modulePath)}`).then(s => _interopRequireWildcard(require(s)));
|
54
|
-
|
55
|
-
const importStorybookClientLogger = () => importFromStorybook('@storybook/client-logger');
|
56
|
-
|
57
|
-
exports.importStorybookClientLogger = importStorybookClientLogger;
|
58
|
-
|
59
|
-
const importStorybookCoreCommon = () => importFromStorybook('@storybook/core-common');
|
60
|
-
|
61
|
-
exports.importStorybookCoreCommon = importStorybookCoreCommon;
|
62
|
-
|
63
|
-
const importStorybookCoreEvents = () => importFromStorybook('@storybook/core-events');
|
64
|
-
|
65
|
-
exports.importStorybookCoreEvents = importStorybookCoreEvents;
|
66
|
-
|
67
|
-
function hasDocsAddon() {
|
68
|
-
try {
|
69
|
-
resolveFromStorybook('@storybook/addon-docs');
|
70
|
-
return true;
|
71
|
-
} catch (_) {
|
72
|
-
return false;
|
73
|
-
}
|
74
|
-
}
|
75
|
-
|
76
|
-
function hasSvelteCSFAddon() {
|
77
|
-
try {
|
78
|
-
resolveFromStorybook('@storybook/addon-svelte-csf');
|
79
|
-
return true;
|
80
|
-
} catch (_) {
|
81
|
-
return false;
|
82
|
-
}
|
83
|
-
}
|
84
|
-
|
85
|
-
function getStorybookVersion() {
|
86
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
87
|
-
const {
|
88
|
-
version
|
89
|
-
} = require(resolveFromStorybook('@storybook/core/package.json'));
|
90
|
-
|
91
|
-
return version;
|
92
|
-
}
|
93
|
-
|
94
|
-
function isStorybookVersionLessThan(major, minor) {
|
95
|
-
var _process$env$__CREEVE;
|
96
|
-
|
97
|
-
const [sbMajor, sbMinor] = ((_process$env$__CREEVE = process.env.__CREEVEY_STORYBOOK_VERSION__) !== null && _process$env$__CREEVE !== void 0 ? _process$env$__CREEVE : getStorybookVersion()).split('.');
|
98
|
-
return Number(sbMajor) < major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) < minor;
|
99
|
-
}
|
100
|
-
|
101
|
-
function isStorybookVersionGreaterThan(major, minor) {
|
102
|
-
var _process$env$__CREEVE2;
|
103
|
-
|
104
|
-
const [sbMajor, sbMinor] = ((_process$env$__CREEVE2 = process.env.__CREEVEY_STORYBOOK_VERSION__) !== null && _process$env$__CREEVE2 !== void 0 ? _process$env$__CREEVE2 : getStorybookVersion()).split('.');
|
105
|
-
return Number(sbMajor) > major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) > minor;
|
106
|
-
}
|
107
|
-
|
108
|
-
function isStorybookVersion(major, minor) {
|
109
|
-
var _process$env$__CREEVE3;
|
110
|
-
|
111
|
-
const [sbMajor, sbMinor] = ((_process$env$__CREEVE3 = process.env.__CREEVEY_STORYBOOK_VERSION__) !== null && _process$env$__CREEVE3 !== void 0 ? _process$env$__CREEVE3 : getStorybookVersion()).split('.');
|
112
|
-
return Number(sbMajor) == major || minor != undefined && Number(sbMajor) == major && Number(sbMinor) == minor;
|
113
|
-
}
|
114
|
-
|
115
|
-
function getStorybookFramework() {
|
116
|
-
var _process$env$__CREEVE4;
|
117
|
-
|
118
|
-
const framework = (_process$env$__CREEVE4 = process.env.__CREEVEY_STORYBOOK_FRAMEWORK__) !== null && _process$env$__CREEVE4 !== void 0 ? _process$env$__CREEVE4 : supportedFrameworks.find(framework => {
|
119
|
-
try {
|
120
|
-
return require.resolve(resolveFromStorybook(`@storybook/${framework}`));
|
121
|
-
} catch (_) {
|
122
|
-
return false;
|
123
|
-
}
|
124
|
-
});
|
125
|
-
if (!framework) throw new Error("Couldn't detect used Storybook framework. Please ensure that you install `@storybook/<framework>` package");
|
126
|
-
return framework;
|
127
|
-
}
|
128
|
-
|
129
|
-
const storybookConfigRef = {
|
130
|
-
current: {
|
131
|
-
stories: []
|
132
|
-
}
|
133
|
-
};
|
134
|
-
exports.storybookConfigRef = storybookConfigRef;
|
135
|
-
|
136
|
-
async function importStorybookConfig() {
|
137
|
-
const configPath = `${storybookDirRef.current}/main`;
|
138
|
-
|
139
|
-
try {
|
140
|
-
return storybookConfigRef.current = (await Promise.resolve(`${require.resolve(configPath)}`).then(s => _interopRequireWildcard(require(s)))).default;
|
141
|
-
} catch (_) {
|
142
|
-
const storybookUtilsPath = isStorybookVersionLessThan(6, 2) ? '@storybook/core/dist/server/utils' : '@storybook/core-common/dist/cjs/utils';
|
143
|
-
const serverRequireModule = isStorybookVersionLessThan(6, 2) ? 'server-require' : 'interpret-require'; // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
144
|
-
|
145
|
-
const {
|
146
|
-
getInterpretedFile
|
147
|
-
} = await Promise.resolve(`${resolveFromStorybook(`${storybookUtilsPath}/interpret-files`)}`).then(s => _interopRequireWildcard(require(s))); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
148
|
-
|
149
|
-
const {
|
150
|
-
default: serverRequireFallback,
|
151
|
-
serverRequire = serverRequireFallback
|
152
|
-
} = await Promise.resolve(`${resolveFromStorybook(`${storybookUtilsPath}/${serverRequireModule}`)}`).then(s => _interopRequireWildcard(require(s))); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
153
|
-
|
154
|
-
const mainConfigFile = isStorybookVersionLessThan(6, 1) ? configPath : // eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
155
|
-
getInterpretedFile(configPath); // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call
|
156
|
-
|
157
|
-
return storybookConfigRef.current = serverRequire(mainConfigFile);
|
158
|
-
}
|
159
|
-
}
|
160
|
-
|
161
|
-
async function isCSFv3Enabled() {
|
162
|
-
var _await$importStoryboo, _await$importStoryboo2, _await$importStoryboo3;
|
163
|
-
|
164
|
-
return (_await$importStoryboo = (_await$importStoryboo2 = await importStorybookConfig()) === null || _await$importStoryboo2 === void 0 ? void 0 : (_await$importStoryboo3 = _await$importStoryboo2.features) === null || _await$importStoryboo3 === void 0 ? void 0 : _await$importStoryboo3.previewCsfV3) !== null && _await$importStoryboo !== void 0 ? _await$importStoryboo : false;
|
165
|
-
}
|
@@ -1,239 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.loadStories = loadStories;
|
7
|
-
exports.extractStoriesData = extractStoriesData;
|
8
|
-
|
9
|
-
var _path = _interopRequireDefault(require("path"));
|
10
|
-
|
11
|
-
var _cluster = require("cluster");
|
12
|
-
|
13
|
-
var _chokidar = _interopRequireDefault(require("chokidar"));
|
14
|
-
|
15
|
-
var _types = require("../../../types");
|
16
|
-
|
17
|
-
var _utils = require("../../utils");
|
18
|
-
|
19
|
-
var _messages = require("../../messages");
|
20
|
-
|
21
|
-
var _helpers = require("../helpers");
|
22
|
-
|
23
|
-
var _logger = require("../../logger");
|
24
|
-
|
25
|
-
var _shared = require("../../../shared");
|
26
|
-
|
27
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
28
|
-
|
29
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
30
|
-
|
31
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
32
|
-
|
33
|
-
async function initStorybookEnvironment() {
|
34
|
-
// @ts-expect-error There is no @types/global-jsdom package
|
35
|
-
(await Promise.resolve().then(() => _interopRequireWildcard(require('global-jsdom')))).default(undefined, {
|
36
|
-
url: 'http://localhost'
|
37
|
-
}); // NOTE Cutoff `jsdom` part from userAgent, because storybook check enviroment and create events channel if runs in browser
|
38
|
-
// https://github.com/storybookjs/storybook/blob/v5.2.8/lib/core/src/client/preview/start.js#L98
|
39
|
-
// Example: "Mozilla/5.0 (linux) AppleWebKit/537.36 (KHTML, like Gecko) jsdom/15.2.1"
|
40
|
-
|
41
|
-
Object.defineProperty(window.navigator, 'userAgent', {
|
42
|
-
value: window.navigator.userAgent.split(' ').filter(token => !token.startsWith('jsdom')).join(' ')
|
43
|
-
}); // TODO Look at creevey debug flag
|
44
|
-
|
45
|
-
const {
|
46
|
-
logger
|
47
|
-
} = await (0, _helpers.importStorybookClientLogger)(); // NOTE: Disable duplication warnings for >=6.2 storybook
|
48
|
-
|
49
|
-
if (_cluster.isWorker) logger.warn = _types.noop; // NOTE: disable logger for 5.x storybook
|
50
|
-
|
51
|
-
logger.debug = _types.noop;
|
52
|
-
return Promise.resolve().then(() => _interopRequireWildcard(require('../entry')));
|
53
|
-
}
|
54
|
-
|
55
|
-
function watchStories(channel, watcher, initialFiles) {
|
56
|
-
const watchingFiles = initialFiles;
|
57
|
-
let storiesByFiles = new Map();
|
58
|
-
(0, _messages.subscribeOn)('shutdown', () => void watcher.close());
|
59
|
-
watcher.add(Array.from(watchingFiles));
|
60
|
-
watcher.on('change', filePath => storiesByFiles.set(_path.default.isAbsolute(filePath) ? filePath : `./${filePath.replace(/\\/g, '/')}`, []));
|
61
|
-
watcher.on('unlink', filePath => storiesByFiles.set(_path.default.isAbsolute(filePath) ? filePath : `./${filePath.replace(/\\/g, '/')}`, []));
|
62
|
-
return data => {
|
63
|
-
const stories = (0, _helpers.isStorybookVersionLessThan)(6) || (0, _helpers.isStorybookVersionGreaterThan)(6, 3) ? data.stories : (0, _shared.denormalizeStoryParameters)(data);
|
64
|
-
const files = new Set(Object.values(stories).map(story => story.parameters.fileName));
|
65
|
-
const addedFiles = Array.from(files).filter(filePath => !watchingFiles.has(filePath));
|
66
|
-
const removedFiles = Array.from(watchingFiles).filter(filePath => !files.has(filePath));
|
67
|
-
watcher.add(addedFiles);
|
68
|
-
addedFiles.forEach(filePath => {
|
69
|
-
watchingFiles.add(filePath);
|
70
|
-
storiesByFiles.set(filePath, []);
|
71
|
-
});
|
72
|
-
removedFiles.forEach(filePath => watchingFiles.delete(filePath));
|
73
|
-
Object.values(stories).forEach(story => {
|
74
|
-
var _storiesByFiles$get;
|
75
|
-
|
76
|
-
return (_storiesByFiles$get = storiesByFiles.get(story.parameters.fileName)) === null || _storiesByFiles$get === void 0 ? void 0 : _storiesByFiles$get.push(story);
|
77
|
-
});
|
78
|
-
channel.emit('storiesUpdated', storiesByFiles);
|
79
|
-
storiesByFiles = new Map();
|
80
|
-
};
|
81
|
-
}
|
82
|
-
|
83
|
-
function loadStoriesFromBundle(watch) {
|
84
|
-
const bundlePath = _path.default.join((0, _utils.getCreeveyCache)(), 'storybook/main.js');
|
85
|
-
|
86
|
-
if (watch) {
|
87
|
-
(0, _messages.subscribeOn)('webpack', message => {
|
88
|
-
if (message.type != 'rebuild succeeded') return;
|
89
|
-
Object.values(global.__CREEVEY_HMR_DATA__).filter(({
|
90
|
-
callback
|
91
|
-
}) => callback).forEach(({
|
92
|
-
data,
|
93
|
-
callback
|
94
|
-
}) => callback(data));
|
95
|
-
delete require.cache[bundlePath];
|
96
|
-
Promise.resolve(`${bundlePath}`).then(s => _interopRequireWildcard(require(s)));
|
97
|
-
});
|
98
|
-
}
|
99
|
-
|
100
|
-
Promise.resolve(`${bundlePath}`).then(s => _interopRequireWildcard(require(s)));
|
101
|
-
}
|
102
|
-
|
103
|
-
async function loadStoriesDirectly(config, {
|
104
|
-
watcher,
|
105
|
-
debug
|
106
|
-
}) {
|
107
|
-
const {
|
108
|
-
toRequireContext,
|
109
|
-
normalizeStoriesEntry
|
110
|
-
} = await (0, _helpers.importStorybookCoreCommon)();
|
111
|
-
const {
|
112
|
-
addParameters,
|
113
|
-
configure
|
114
|
-
} = await Promise.resolve().then(() => _interopRequireWildcard(require('../entry')));
|
115
|
-
const requireContext = await (await Promise.resolve().then(() => _interopRequireWildcard(require('../../loaders/babel/register')))).default(config, debug);
|
116
|
-
|
117
|
-
const preview = (() => {
|
118
|
-
try {
|
119
|
-
return require.resolve(`${config.storybookDir}/preview`);
|
120
|
-
} catch (_) {
|
121
|
-
/* noop */
|
122
|
-
}
|
123
|
-
})();
|
124
|
-
|
125
|
-
const {
|
126
|
-
stories
|
127
|
-
} = await (0, _helpers.importStorybookConfig)();
|
128
|
-
const contexts = stories.map(entry => {
|
129
|
-
const normalizedEntry = (0, _helpers.isStorybookVersionLessThan)(6, 4) ? entry : normalizeStoriesEntry(entry, {
|
130
|
-
configDir: config.storybookDir,
|
131
|
-
workingDir: process.cwd()
|
132
|
-
});
|
133
|
-
const {
|
134
|
-
path: storiesPath,
|
135
|
-
recursive,
|
136
|
-
match
|
137
|
-
} = toRequireContext(normalizedEntry);
|
138
|
-
watcher === null || watcher === void 0 ? void 0 : watcher.add(_path.default.resolve(config.storybookDir, storiesPath));
|
139
|
-
return () => requireContext(storiesPath, recursive, new RegExp(match));
|
140
|
-
});
|
141
|
-
|
142
|
-
let disposeCallback = data => void data;
|
143
|
-
|
144
|
-
Object.assign(module, {
|
145
|
-
hot: {
|
146
|
-
data: {},
|
147
|
-
|
148
|
-
accept() {
|
149
|
-
/* noop */
|
150
|
-
},
|
151
|
-
|
152
|
-
dispose(callback) {
|
153
|
-
disposeCallback = callback;
|
154
|
-
}
|
155
|
-
|
156
|
-
}
|
157
|
-
});
|
158
|
-
|
159
|
-
async function startStorybook() {
|
160
|
-
if (preview) {
|
161
|
-
const {
|
162
|
-
parameters,
|
163
|
-
globals,
|
164
|
-
globalTypes
|
165
|
-
} = await Promise.resolve(`${preview}`).then(s => _interopRequireWildcard(require(s)));
|
166
|
-
if (parameters) addParameters(parameters);
|
167
|
-
if (globals) addParameters({
|
168
|
-
globals
|
169
|
-
});
|
170
|
-
if (globalTypes) addParameters({
|
171
|
-
globalTypes
|
172
|
-
});
|
173
|
-
}
|
174
|
-
|
175
|
-
try {
|
176
|
-
configure(contexts.map(ctx => ctx()), module, false);
|
177
|
-
} catch (error) {
|
178
|
-
if (_cluster.isMaster) _logger.logger.error(error);
|
179
|
-
}
|
180
|
-
}
|
181
|
-
|
182
|
-
watcher === null || watcher === void 0 ? void 0 : watcher.add(config.storybookDir);
|
183
|
-
watcher === null || watcher === void 0 ? void 0 : watcher.on('all', (_event, filename) => {
|
184
|
-
var _module$hot;
|
185
|
-
|
186
|
-
disposeCallback((_module$hot = module.hot) === null || _module$hot === void 0 ? void 0 : _module$hot.data);
|
187
|
-
delete require.cache[filename];
|
188
|
-
void startStorybook();
|
189
|
-
});
|
190
|
-
void startStorybook();
|
191
|
-
} // TODO Do we need to support multiple storybooks here?
|
192
|
-
|
193
|
-
|
194
|
-
async function loadStories(config, {
|
195
|
-
watch,
|
196
|
-
debug
|
197
|
-
}, storiesListener) {
|
198
|
-
const storybookApi = await initStorybookEnvironment();
|
199
|
-
const Events = await (0, _helpers.importStorybookCoreEvents)();
|
200
|
-
const {
|
201
|
-
channel
|
202
|
-
} = storybookApi;
|
203
|
-
channel.removeAllListeners(Events.CURRENT_STORY_WAS_SET);
|
204
|
-
channel.on('storiesUpdated', storiesListener);
|
205
|
-
let watcher;
|
206
|
-
if (watch) watcher = _chokidar.default.watch([], {
|
207
|
-
ignoreInitial: true
|
208
|
-
});
|
209
|
-
const loadPromise = new Promise(resolve => {
|
210
|
-
channel.once(Events.SET_STORIES, data => {
|
211
|
-
const stories = (0, _helpers.isStorybookVersionLessThan)(6) || (0, _helpers.isStorybookVersionGreaterThan)(6, 3) ? data.stories : (0, _shared.denormalizeStoryParameters)(data);
|
212
|
-
const files = new Set(Object.values(stories).map(story => story.parameters.fileName));
|
213
|
-
if (watcher) channel.on(Events.SET_STORIES, watchStories(channel, watcher, files));
|
214
|
-
resolve(stories);
|
215
|
-
});
|
216
|
-
});
|
217
|
-
if (config.useWebpackToExtractTests) loadStoriesFromBundle(watch);else void loadStoriesDirectly(config, {
|
218
|
-
watcher,
|
219
|
-
debug
|
220
|
-
});
|
221
|
-
return loadPromise;
|
222
|
-
}
|
223
|
-
|
224
|
-
async function extractStoriesData(config, {
|
225
|
-
watch,
|
226
|
-
debug
|
227
|
-
}) {
|
228
|
-
const storybookApi = await initStorybookEnvironment();
|
229
|
-
const Events = await (0, _helpers.importStorybookCoreEvents)();
|
230
|
-
const {
|
231
|
-
channel
|
232
|
-
} = storybookApi;
|
233
|
-
channel.removeAllListeners(Events.CURRENT_STORY_WAS_SET);
|
234
|
-
const loadPromise = new Promise(resolve => channel.once(Events.SET_STORIES, resolve));
|
235
|
-
if (config.useWebpackToExtractTests) loadStoriesFromBundle(watch);else void loadStoriesDirectly(config, {
|
236
|
-
debug
|
237
|
-
});
|
238
|
-
return loadPromise;
|
239
|
-
}
|
package/lib/cjs/shared.js
DELETED
@@ -1,124 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.deserializeStory = exports.deserializeRawStories = exports.serializeRawStories = exports.deserializeRegExp = exports.serializeRegExp = exports.isSerializedRegExp = exports.denormalizeStoryParameters = exports.combineParameters = void 0;
|
7
|
-
|
8
|
-
var _lodash = require("lodash");
|
9
|
-
|
10
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
11
|
-
|
12
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
13
|
-
|
14
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
15
|
-
|
16
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
17
|
-
|
18
|
-
// NOTE: Copy-paste from storybook/api
|
19
|
-
var combineParameters = function combineParameters() {
|
20
|
-
for (var _len = arguments.length, parameterSets = new Array(_len), _key = 0; _key < _len; _key++) {
|
21
|
-
parameterSets[_key] = arguments[_key];
|
22
|
-
}
|
23
|
-
|
24
|
-
return (// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
25
|
-
_lodash.mergeWith.apply(void 0, [{}].concat(parameterSets, [function (_, srcValue) {
|
26
|
-
// Treat arrays as scalars:
|
27
|
-
if (Array.isArray(srcValue)) return srcValue;
|
28
|
-
return undefined;
|
29
|
-
}]))
|
30
|
-
);
|
31
|
-
}; // NOTE: Copy-paste from storybook/api
|
32
|
-
|
33
|
-
|
34
|
-
exports.combineParameters = combineParameters;
|
35
|
-
|
36
|
-
var denormalizeStoryParameters = function denormalizeStoryParameters(_ref) {
|
37
|
-
var globalParameters = _ref.globalParameters,
|
38
|
-
kindParameters = _ref.kindParameters,
|
39
|
-
stories = _ref.stories;
|
40
|
-
return (0, _lodash.mapValues)(stories, function (storyData) {
|
41
|
-
var _globalParameters$cre, _kindParameters$story, _kindParameters$story2;
|
42
|
-
|
43
|
-
storyData.parameters.creevey = combineParameters((_globalParameters$cre = globalParameters.creevey) !== null && _globalParameters$cre !== void 0 ? _globalParameters$cre : {}, (_kindParameters$story = (_kindParameters$story2 = kindParameters[storyData.kind]) === null || _kindParameters$story2 === void 0 ? void 0 : _kindParameters$story2.creevey) !== null && _kindParameters$story !== void 0 ? _kindParameters$story : {}, storyData.parameters.creevey);
|
44
|
-
return storyData;
|
45
|
-
});
|
46
|
-
};
|
47
|
-
|
48
|
-
exports.denormalizeStoryParameters = denormalizeStoryParameters;
|
49
|
-
|
50
|
-
var isSerializedRegExp = function isSerializedRegExp(exp) {
|
51
|
-
return _typeof(exp) === 'object' && exp !== null && Reflect.get(exp, '__regexp') === true;
|
52
|
-
};
|
53
|
-
|
54
|
-
exports.isSerializedRegExp = isSerializedRegExp;
|
55
|
-
|
56
|
-
var serializeRegExp = function serializeRegExp(exp) {
|
57
|
-
var source = exp.source,
|
58
|
-
flags = exp.flags;
|
59
|
-
return {
|
60
|
-
__regexp: true,
|
61
|
-
source: source,
|
62
|
-
flags: flags
|
63
|
-
};
|
64
|
-
};
|
65
|
-
|
66
|
-
exports.serializeRegExp = serializeRegExp;
|
67
|
-
|
68
|
-
var deserializeRegExp = function deserializeRegExp(_ref2) {
|
69
|
-
var source = _ref2.source,
|
70
|
-
flags = _ref2.flags;
|
71
|
-
return new RegExp(source, flags);
|
72
|
-
};
|
73
|
-
|
74
|
-
exports.deserializeRegExp = deserializeRegExp;
|
75
|
-
|
76
|
-
var serializeRawStories = function serializeRawStories(stories) {
|
77
|
-
return (0, _lodash.mapValues)(stories, function (storyData) {
|
78
|
-
var creevey = storyData.parameters.creevey;
|
79
|
-
|
80
|
-
if (creevey !== null && creevey !== void 0 && creevey.skip) {
|
81
|
-
creevey.skip = (0, _lodash.cloneDeepWith)(creevey.skip, function (value) {
|
82
|
-
if (value instanceof RegExp) {
|
83
|
-
return serializeRegExp(value);
|
84
|
-
}
|
85
|
-
|
86
|
-
return undefined;
|
87
|
-
});
|
88
|
-
}
|
89
|
-
|
90
|
-
return storyData;
|
91
|
-
});
|
92
|
-
};
|
93
|
-
|
94
|
-
exports.serializeRawStories = serializeRawStories;
|
95
|
-
|
96
|
-
var deserializeRawStories = function deserializeRawStories(stories) {
|
97
|
-
return (0, _lodash.mapValues)(stories, deserializeStory);
|
98
|
-
};
|
99
|
-
|
100
|
-
exports.deserializeRawStories = deserializeRawStories;
|
101
|
-
|
102
|
-
var deserializeStory = function deserializeStory(story) {
|
103
|
-
var creevey = story.parameters.creevey;
|
104
|
-
|
105
|
-
if (creevey !== null && creevey !== void 0 && creevey.skip) {
|
106
|
-
return _objectSpread(_objectSpread({}, story), {}, {
|
107
|
-
parameters: _objectSpread(_objectSpread({}, story.parameters), {}, {
|
108
|
-
creevey: _objectSpread(_objectSpread({}, creevey), {}, {
|
109
|
-
skip: (0, _lodash.cloneDeepWith)(creevey.skip, function (value) {
|
110
|
-
if (isSerializedRegExp(value)) {
|
111
|
-
return deserializeRegExp(value);
|
112
|
-
}
|
113
|
-
|
114
|
-
return undefined;
|
115
|
-
})
|
116
|
-
})
|
117
|
-
})
|
118
|
-
});
|
119
|
-
}
|
120
|
-
|
121
|
-
return story;
|
122
|
-
};
|
123
|
-
|
124
|
-
exports.deserializeStory = deserializeStory;
|
@@ -1,34 +0,0 @@
|
|
1
|
-
import { denormalizeStoryParameters } from '../shared';
|
2
|
-
import { subscribeOn } from './messages';
|
3
|
-
import { loadTestsFromStories, saveStoriesJson, saveTestsJson } from './stories';
|
4
|
-
import { isStorybookVersionGreaterThan, isStorybookVersionLessThan } from './storybook/helpers';
|
5
|
-
import { extractStoriesData } from './storybook/providers/nodejs';
|
6
|
-
export default async function extract(config, options) {
|
7
|
-
if (config.useWebpackToExtractTests && process.env.__CREEVEY_ENV__ != 'test') {
|
8
|
-
await new Promise((resolve, reject) => {
|
9
|
-
subscribeOn('webpack', message => {
|
10
|
-
switch (message.type) {
|
11
|
-
case 'success':
|
12
|
-
return resolve();
|
13
|
-
|
14
|
-
case 'fail':
|
15
|
-
return reject();
|
16
|
-
}
|
17
|
-
});
|
18
|
-
void (async () => (await import('./loaders/webpack/compile')).default(config, options))();
|
19
|
-
});
|
20
|
-
}
|
21
|
-
|
22
|
-
const tests = await loadTestsFromStories(Object.keys(config.browsers), async () => {
|
23
|
-
const data = await extractStoriesData(config, {
|
24
|
-
watch: false,
|
25
|
-
debug: options.debug
|
26
|
-
});
|
27
|
-
const stories = isStorybookVersionLessThan(6) || isStorybookVersionGreaterThan(6, 3) ? data.stories : denormalizeStoryParameters(data);
|
28
|
-
if (options.extract) saveStoriesJson(data, options.extract);
|
29
|
-
return stories;
|
30
|
-
});
|
31
|
-
if (options.tests) saveTestsJson(tests); // eslint-disable-next-line no-process-exit
|
32
|
-
|
33
|
-
process.exit(0);
|
34
|
-
}
|