@storybook/addon-svelte-csf 2.0.9 → 2.0.10
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/.babelrc.js +0 -3
- package/CHANGELOG.md +12 -0
- package/dist/cjs/components/context.js +3 -5
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/parser/collect-stories.js +21 -8
- package/dist/cjs/parser/collect-stories.test.js +2 -2
- package/dist/cjs/parser/extract-id.js +0 -4
- package/dist/cjs/parser/extract-stories.js +29 -43
- package/dist/cjs/parser/extract-stories.test.js +8 -8
- package/dist/cjs/parser/svelte-stories-loader.js +19 -9
- package/dist/cjs/preset/index.js +14 -39
- package/dist/esm/components/context.js +2 -2
- package/dist/esm/parser/collect-stories.js +16 -2
- package/dist/esm/parser/extract-id.js +0 -4
- package/dist/esm/parser/extract-stories.js +26 -39
- package/dist/esm/parser/extract-stories.test.js +8 -8
- package/dist/esm/parser/svelte-stories-loader.js +14 -3
- package/dist/esm/preset/index.js +15 -30
- package/package.json +10 -17
- package/dist/cjs/preset/indexer.js +0 -68
- package/dist/esm/preset/indexer.js +0 -54
package/.babelrc.js
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
# v2.0.10 (Thu Oct 27 2022)
|
|
2
|
+
|
|
3
|
+
#### 🐛 Bug Fix
|
|
4
|
+
|
|
5
|
+
- Revert "Implement a Svelte StoryIndexer" #76 [#76](https://github.com/storybookjs/addon-svelte-csf/pull/76) ([@JReinhold](https://github.com/JReinhold))
|
|
6
|
+
|
|
7
|
+
#### Authors: 1
|
|
8
|
+
|
|
9
|
+
- Jeppe Reinhold ([@JReinhold](https://github.com/JReinhold))
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
1
13
|
# v2.0.9 (Thu Oct 27 2022)
|
|
2
14
|
|
|
3
15
|
#### 🐛 Bug Fix
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
@@ -9,13 +7,13 @@ exports.createRegistrationContext = createRegistrationContext;
|
|
|
9
7
|
exports.createRenderContext = createRenderContext;
|
|
10
8
|
exports.useContext = useContext;
|
|
11
9
|
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _svelte = require("svelte");
|
|
15
11
|
|
|
16
12
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
17
13
|
|
|
18
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
|
+
|
|
16
|
+
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; }
|
|
19
17
|
|
|
20
18
|
var CONTEXT_KEY = "storybook-registration-context";
|
|
21
19
|
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
@@ -31,6 +29,8 @@ var _Story = _interopRequireDefault(require("./components/Story.svelte"));
|
|
|
31
29
|
|
|
32
30
|
var _Template = _interopRequireDefault(require("./components/Template.svelte"));
|
|
33
31
|
|
|
32
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
33
|
+
|
|
34
34
|
if (module && module.hot && module.hot.decline) {
|
|
35
35
|
module.hot.decline();
|
|
36
36
|
} // make it work with --isolatedModules
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports["default"] = void 0;
|
|
9
7
|
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
-
|
|
12
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
|
-
|
|
14
8
|
var _clientLogger = require("@storybook/client-logger");
|
|
15
9
|
|
|
16
10
|
var _clientApi = require("@storybook/client-api");
|
|
@@ -23,6 +17,24 @@ var _RenderContext = _interopRequireDefault(require("../components/RenderContext
|
|
|
23
17
|
|
|
24
18
|
var _excluded = ["id", "name", "template", "component", "source"];
|
|
25
19
|
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
|
+
|
|
22
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
23
|
+
|
|
24
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
25
|
+
|
|
26
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
27
|
+
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
|
|
30
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
31
|
+
|
|
32
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
|
+
|
|
34
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
35
|
+
|
|
36
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
37
|
+
|
|
26
38
|
/* Called from a webpack loader and a jest transformation.
|
|
27
39
|
*
|
|
28
40
|
* It mounts a Stories component in a context which disables
|
|
@@ -96,7 +108,8 @@ var _default = function _default(StoriesComponent, _ref) {
|
|
|
96
108
|
component = story.component,
|
|
97
109
|
_story$source = story.source,
|
|
98
110
|
source = _story$source === void 0 ? false : _story$source,
|
|
99
|
-
props = (
|
|
111
|
+
props = _objectWithoutProperties(story, _excluded);
|
|
112
|
+
|
|
100
113
|
var storyId = (0, _extractId.extractId)(story, allocatedIds);
|
|
101
114
|
|
|
102
115
|
if (!storyId) {
|
|
@@ -125,7 +138,7 @@ var _default = function _default(StoriesComponent, _ref) {
|
|
|
125
138
|
|
|
126
139
|
storyFn.storyName = name;
|
|
127
140
|
Object.entries(props).forEach(function (_ref2) {
|
|
128
|
-
var _ref3 = (
|
|
141
|
+
var _ref3 = _slicedToArray(_ref2, 2),
|
|
129
142
|
k = _ref3[0],
|
|
130
143
|
v = _ref3[1];
|
|
131
144
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
var _collectStories = _interopRequireDefault(require("./collect-stories"));
|
|
6
4
|
|
|
7
5
|
var _TestStories = _interopRequireDefault(require("../components/__tests__/TestStories.svelte"));
|
|
8
6
|
|
|
7
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
8
|
+
|
|
9
9
|
describe('parse-stories', function () {
|
|
10
10
|
test('Extract Stories', function () {
|
|
11
11
|
var data = (0, _collectStories["default"])(_TestStories["default"], {
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
6
4
|
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
@@ -15,12 +13,12 @@ var svelte = _interopRequireWildcard(require("svelte/compiler"));
|
|
|
15
13
|
|
|
16
14
|
var _extractId = require("./extract-id");
|
|
17
15
|
|
|
18
|
-
var _csf = require("@storybook/csf");
|
|
19
|
-
|
|
20
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
17
|
|
|
22
18
|
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; }
|
|
23
19
|
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
|
+
|
|
24
22
|
function getStaticAttribute(name, node) {
|
|
25
23
|
// extract the attribute
|
|
26
24
|
var attribute = node.attributes.find(function (att) {
|
|
@@ -28,7 +26,7 @@ function getStaticAttribute(name, node) {
|
|
|
28
26
|
});
|
|
29
27
|
|
|
30
28
|
if (!attribute) {
|
|
31
|
-
return
|
|
29
|
+
return null;
|
|
32
30
|
}
|
|
33
31
|
|
|
34
32
|
var value = attribute.value; // expect the attribute to be static, ie only one Text node
|
|
@@ -54,43 +52,37 @@ function extractStories(component) {
|
|
|
54
52
|
var allocatedIds = ['default'];
|
|
55
53
|
var localNames = {
|
|
56
54
|
Story: 'Story',
|
|
57
|
-
Template: 'Template'
|
|
58
|
-
Meta: 'Meta'
|
|
55
|
+
Template: 'Template'
|
|
59
56
|
};
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}).forEach(function (n) {
|
|
69
|
-
localNames[n.imported.name] = n.local.name;
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
this.skip();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}); // extracts allocated Ids
|
|
77
|
-
|
|
78
|
-
svelte.walk(ast.instance, {
|
|
79
|
-
enter: function enter(node) {
|
|
80
|
-
if (node.type === 'ImportDeclaration') {
|
|
81
|
-
node.specifiers.map(function (n) {
|
|
82
|
-
return n.local.name;
|
|
83
|
-
}).forEach(function (name) {
|
|
84
|
-
return allocatedIds.push(name);
|
|
57
|
+
svelte.walk(ast.instance, {
|
|
58
|
+
enter: function enter(node) {
|
|
59
|
+
if (node.type === 'ImportDeclaration') {
|
|
60
|
+
if (node.source.value === '@storybook/addon-svelte-csf') {
|
|
61
|
+
node.specifiers.filter(function (n) {
|
|
62
|
+
return n.type === 'ImportSpecifier';
|
|
63
|
+
}).forEach(function (n) {
|
|
64
|
+
localNames[n.imported.name] = n.local.name;
|
|
85
65
|
});
|
|
86
|
-
this.skip();
|
|
87
66
|
}
|
|
67
|
+
|
|
68
|
+
this.skip();
|
|
88
69
|
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
70
|
+
}
|
|
71
|
+
}); // extracts allocated Ids
|
|
91
72
|
|
|
73
|
+
svelte.walk(ast.instance, {
|
|
74
|
+
enter: function enter(node) {
|
|
75
|
+
if (node.type === 'ImportDeclaration') {
|
|
76
|
+
node.specifiers.map(function (n) {
|
|
77
|
+
return n.local.name;
|
|
78
|
+
}).forEach(function (name) {
|
|
79
|
+
return allocatedIds.push(name);
|
|
80
|
+
});
|
|
81
|
+
this.skip();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
});
|
|
92
85
|
var stories = {};
|
|
93
|
-
var meta = {};
|
|
94
86
|
svelte.walk(ast.html, {
|
|
95
87
|
enter: function enter(node) {
|
|
96
88
|
if (node.type === 'InlineComponent' && (node.name === localNames.Story || node.name === localNames.Template)) {
|
|
@@ -119,7 +111,6 @@ function extractStories(component) {
|
|
|
119
111
|
}
|
|
120
112
|
|
|
121
113
|
stories[isTemplate ? "tpl:".concat(id) : id] = {
|
|
122
|
-
storyId: (0, _csf.toId)(meta.id || meta.title || id, (0, _csf.storyNameFromExport)(id)),
|
|
123
114
|
name: name,
|
|
124
115
|
template: isTemplate,
|
|
125
116
|
source: source,
|
|
@@ -128,15 +119,10 @@ function extractStories(component) {
|
|
|
128
119
|
}) != null
|
|
129
120
|
};
|
|
130
121
|
}
|
|
131
|
-
} else if (node.type === 'InlineComponent' && node.name === localNames.Meta) {
|
|
132
|
-
this.skip();
|
|
133
|
-
meta.title = getStaticAttribute("title", node);
|
|
134
|
-
meta.id = getStaticAttribute("id", node);
|
|
135
122
|
}
|
|
136
123
|
}
|
|
137
124
|
});
|
|
138
125
|
return {
|
|
139
|
-
meta: meta,
|
|
140
126
|
stories: stories,
|
|
141
127
|
allocatedIds: allocatedIds
|
|
142
128
|
};
|
|
@@ -4,27 +4,27 @@ var _extractStories = require("./extract-stories");
|
|
|
4
4
|
|
|
5
5
|
describe('extractSource', function () {
|
|
6
6
|
test('Simple Story', function () {
|
|
7
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
7
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"MyStory\": Object {\n \"hasArgs\": false,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
8
8
|
});
|
|
9
9
|
test('Explicit Id Story', function () {
|
|
10
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story id=\"myId\" name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
10
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story id=\"myId\" name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"myId\": Object {\n \"hasArgs\": false,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
11
11
|
});
|
|
12
12
|
test('Args Story', function () {
|
|
13
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\" let:args>\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
13
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\" let:args>\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"MyStory\": Object {\n \"hasArgs\": true,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
14
14
|
});
|
|
15
15
|
test('Simple Template', function () {
|
|
16
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template name=\"MyTemplate\">\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
16
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template name=\"MyTemplate\">\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"tpl:MyTemplate\": Object {\n \"hasArgs\": false,\n \"name\": \"MyTemplate\",\n \"source\": \"<div>a template</div>\",\n \"template\": true,\n },\n },\n }\n ");
|
|
17
17
|
});
|
|
18
18
|
test('Unnamed Template', function () {
|
|
19
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template>\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
19
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template>\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"tpl:default\": Object {\n \"hasArgs\": false,\n \"name\": \"default\",\n \"source\": \"<div>a template</div>\",\n \"template\": true,\n },\n },\n }\n ");
|
|
20
20
|
});
|
|
21
21
|
test('Multiple Stories', function () {
|
|
22
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Story name=\"Story1\">\n <div>story 1</div>\n </Story>\n <Story name=\"Story2\">\n <div>story 2</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
22
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Story name=\"Story1\">\n <div>story 1</div>\n </Story>\n <Story name=\"Story2\">\n <div>story 2</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"Story1\": Object {\n \"hasArgs\": false,\n \"name\": \"Story1\",\n \"source\": \"<div>story 1</div>\",\n \"template\": false,\n },\n \"Story2\": Object {\n \"hasArgs\": false,\n \"name\": \"Story2\",\n \"source\": \"<div>story 2</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
23
23
|
});
|
|
24
24
|
test('Renamed Import', function () {
|
|
25
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Story as SBStory, Meta as SBMeta } from '@storybook/addon-svelte-csf';\n </script>\n\n <SBMeta title='test'/>\n\n <SBStory name=\"Story1\">\n <div>story 1</div>\n </SBStory>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"SBStory\",\n \"SBMeta\",\n ],\n \"
|
|
25
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Story as SBStory, Meta as SBMeta } from '@storybook/addon-svelte-csf';\n </script>\n\n <SBMeta title='test'/>\n\n <SBStory name=\"Story1\">\n <div>story 1</div>\n </SBStory>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"SBStory\",\n \"SBMeta\",\n ],\n \"stories\": Object {\n \"Story1\": Object {\n \"hasArgs\": false,\n \"name\": \"Story1\",\n \"source\": \"<div>story 1</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
26
26
|
});
|
|
27
27
|
test('Duplicate Id', function () {
|
|
28
|
-
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n import Button from './Button.svelte';\n </script>\n\n <Story name=\"Button\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n \"Button\",\n ],\n \"
|
|
28
|
+
expect((0, _extractStories.extractStories)("\n <script>\n import { Story } from '@storybook/svelte';\n import Button from './Button.svelte';\n </script>\n\n <Story name=\"Button\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n \"Button\",\n ],\n \"stories\": Object {\n \"Button77471352\": Object {\n \"hasArgs\": false,\n \"name\": \"Button\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
29
29
|
});
|
|
30
30
|
});
|
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports["default"] = void 0;
|
|
9
7
|
exports.getNameFromFilename = getNameFromFilename;
|
|
10
8
|
|
|
11
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
12
|
-
|
|
13
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
14
|
-
|
|
15
9
|
var _tsDedent = _interopRequireDefault(require("ts-dedent"));
|
|
16
10
|
|
|
17
11
|
var _fs = require("fs");
|
|
@@ -20,6 +14,22 @@ var _extractStories = require("./extract-stories");
|
|
|
20
14
|
|
|
21
15
|
var _templateObject;
|
|
22
16
|
|
|
17
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
18
|
+
|
|
19
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
20
|
+
|
|
21
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
22
|
+
|
|
23
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
24
|
+
|
|
25
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
26
|
+
|
|
27
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
28
|
+
|
|
29
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
30
|
+
|
|
31
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
32
|
+
|
|
23
33
|
var parser = require.resolve('./collect-stories').replace(/[/\\]/g, '/'); // From https://github.com/sveltejs/svelte/blob/8db3e8d0297e052556f0b6dde310ef6e197b8d18/src/compiler/compile/utils/get_name_from_filename.ts
|
|
24
34
|
// Copied because it is not exported from the compiler
|
|
25
35
|
|
|
@@ -54,18 +64,18 @@ function transformSvelteStories(code) {
|
|
|
54
64
|
var storiesDef = (0, _extractStories.extractStories)(source);
|
|
55
65
|
var stories = storiesDef.stories;
|
|
56
66
|
var storyDef = Object.entries(stories).filter(function (_ref) {
|
|
57
|
-
var _ref2 = (
|
|
67
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
58
68
|
def = _ref2[1];
|
|
59
69
|
|
|
60
70
|
return !def.template;
|
|
61
71
|
}).map(function (_ref3) {
|
|
62
|
-
var _ref4 = (
|
|
72
|
+
var _ref4 = _slicedToArray(_ref3, 1),
|
|
63
73
|
id = _ref4[0];
|
|
64
74
|
|
|
65
75
|
return "export const ".concat(id, " = __storiesMetaData.stories[").concat(JSON.stringify(id), "]");
|
|
66
76
|
}).join('\n');
|
|
67
77
|
var codeWithoutDefaultExport = code.replace('export default ', '//export default');
|
|
68
|
-
return (0, _tsDedent["default"])(_templateObject || (_templateObject = (
|
|
78
|
+
return (0, _tsDedent["default"])(_templateObject || (_templateObject = _taggedTemplateLiteral(["", "\n const { default: parser } = require('", "');\n const __storiesMetaData = parser(", ", ", ");\n export default __storiesMetaData.meta;\n ", ";\n "])), codeWithoutDefaultExport, parser, componentName, JSON.stringify(storiesDef), storyDef);
|
|
69
79
|
}
|
|
70
80
|
|
|
71
81
|
var _default = transformSvelteStories;
|
package/dist/cjs/preset/index.js
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports.managerEntries = managerEntries;
|
|
9
|
-
exports.storyIndexers = void 0;
|
|
10
7
|
exports.webpack = webpack;
|
|
11
8
|
|
|
12
|
-
var
|
|
9
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
10
|
|
|
14
|
-
var
|
|
11
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
12
|
|
|
16
|
-
|
|
13
|
+
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; }
|
|
17
14
|
|
|
18
|
-
|
|
15
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
19
16
|
|
|
20
|
-
|
|
17
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
21
18
|
|
|
22
|
-
function
|
|
19
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
20
|
+
|
|
21
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
22
|
+
|
|
23
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
23
24
|
|
|
24
|
-
function
|
|
25
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
25
26
|
|
|
26
27
|
function managerEntries() {
|
|
27
28
|
var entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
28
|
-
return [].concat((
|
|
29
|
+
return [].concat(_toConsumableArray(entry), [require.resolve('./manager')]);
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
function webpack(config) {
|
|
32
33
|
return _objectSpread(_objectSpread({}, config), {}, {
|
|
33
34
|
module: _objectSpread(_objectSpread({}, config.module), {}, {
|
|
34
|
-
rules: [].concat((
|
|
35
|
+
rules: [].concat(_toConsumableArray(config.module.rules), [{
|
|
35
36
|
test: /\.stories\.svelte$/,
|
|
36
37
|
enforce: 'post',
|
|
37
38
|
use: [{
|
|
@@ -40,30 +41,4 @@ function webpack(config) {
|
|
|
40
41
|
}])
|
|
41
42
|
})
|
|
42
43
|
});
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
var storyIndexers = /*#__PURE__*/function () {
|
|
46
|
-
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(indexers) {
|
|
47
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
48
|
-
while (1) {
|
|
49
|
-
switch (_context.prev = _context.next) {
|
|
50
|
-
case 0:
|
|
51
|
-
return _context.abrupt("return", [{
|
|
52
|
-
test: /\.stories\.svelte$/,
|
|
53
|
-
indexer: _indexer.svelteIndexer
|
|
54
|
-
}].concat((0, _toConsumableArray2["default"])(indexers || [])));
|
|
55
|
-
|
|
56
|
-
case 1:
|
|
57
|
-
case "end":
|
|
58
|
-
return _context.stop();
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}, _callee);
|
|
62
|
-
}));
|
|
63
|
-
|
|
64
|
-
return function storyIndexers(_x) {
|
|
65
|
-
return _ref.apply(this, arguments);
|
|
66
|
-
};
|
|
67
|
-
}();
|
|
68
|
-
|
|
69
|
-
exports.storyIndexers = storyIndexers;
|
|
44
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
2
|
|
|
5
3
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
4
|
|
|
5
|
+
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; }
|
|
6
|
+
|
|
7
7
|
import { getContext, hasContext, setContext } from "svelte";
|
|
8
8
|
var CONTEXT_KEY = "storybook-registration-context";
|
|
9
9
|
export function createRenderContext() {
|
|
@@ -1,7 +1,21 @@
|
|
|
1
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
1
|
var _excluded = ["id", "name", "template", "component", "source"];
|
|
4
2
|
|
|
3
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
4
|
+
|
|
5
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
6
|
+
|
|
7
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
8
|
+
|
|
9
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
10
|
+
|
|
11
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
12
|
+
|
|
13
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
|
+
|
|
15
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
|
+
|
|
17
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
18
|
+
|
|
5
19
|
/* eslint-env browser */
|
|
6
20
|
import { logger } from '@storybook/client-logger';
|
|
7
21
|
import { combineParameters } from '@storybook/client-api';
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import dedent from 'ts-dedent';
|
|
2
2
|
import * as svelte from 'svelte/compiler';
|
|
3
3
|
import { extractId } from './extract-id';
|
|
4
|
-
import { toId, storyNameFromExport } from "@storybook/csf";
|
|
5
4
|
|
|
6
5
|
function getStaticAttribute(name, node) {
|
|
7
6
|
// extract the attribute
|
|
@@ -10,7 +9,7 @@ function getStaticAttribute(name, node) {
|
|
|
10
9
|
});
|
|
11
10
|
|
|
12
11
|
if (!attribute) {
|
|
13
|
-
return
|
|
12
|
+
return null;
|
|
14
13
|
}
|
|
15
14
|
|
|
16
15
|
var value = attribute.value; // expect the attribute to be static, ie only one Text node
|
|
@@ -36,43 +35,37 @@ export function extractStories(component) {
|
|
|
36
35
|
var allocatedIds = ['default'];
|
|
37
36
|
var localNames = {
|
|
38
37
|
Story: 'Story',
|
|
39
|
-
Template: 'Template'
|
|
40
|
-
Meta: 'Meta'
|
|
38
|
+
Template: 'Template'
|
|
41
39
|
};
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}).forEach(function (n) {
|
|
51
|
-
localNames[n.imported.name] = n.local.name;
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
this.skip();
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}); // extracts allocated Ids
|
|
59
|
-
|
|
60
|
-
svelte.walk(ast.instance, {
|
|
61
|
-
enter: function enter(node) {
|
|
62
|
-
if (node.type === 'ImportDeclaration') {
|
|
63
|
-
node.specifiers.map(function (n) {
|
|
64
|
-
return n.local.name;
|
|
65
|
-
}).forEach(function (name) {
|
|
66
|
-
return allocatedIds.push(name);
|
|
40
|
+
svelte.walk(ast.instance, {
|
|
41
|
+
enter: function enter(node) {
|
|
42
|
+
if (node.type === 'ImportDeclaration') {
|
|
43
|
+
if (node.source.value === '@storybook/addon-svelte-csf') {
|
|
44
|
+
node.specifiers.filter(function (n) {
|
|
45
|
+
return n.type === 'ImportSpecifier';
|
|
46
|
+
}).forEach(function (n) {
|
|
47
|
+
localNames[n.imported.name] = n.local.name;
|
|
67
48
|
});
|
|
68
|
-
this.skip();
|
|
69
49
|
}
|
|
50
|
+
|
|
51
|
+
this.skip();
|
|
70
52
|
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
53
|
+
}
|
|
54
|
+
}); // extracts allocated Ids
|
|
73
55
|
|
|
56
|
+
svelte.walk(ast.instance, {
|
|
57
|
+
enter: function enter(node) {
|
|
58
|
+
if (node.type === 'ImportDeclaration') {
|
|
59
|
+
node.specifiers.map(function (n) {
|
|
60
|
+
return n.local.name;
|
|
61
|
+
}).forEach(function (name) {
|
|
62
|
+
return allocatedIds.push(name);
|
|
63
|
+
});
|
|
64
|
+
this.skip();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
});
|
|
74
68
|
var stories = {};
|
|
75
|
-
var meta = {};
|
|
76
69
|
svelte.walk(ast.html, {
|
|
77
70
|
enter: function enter(node) {
|
|
78
71
|
if (node.type === 'InlineComponent' && (node.name === localNames.Story || node.name === localNames.Template)) {
|
|
@@ -101,7 +94,6 @@ export function extractStories(component) {
|
|
|
101
94
|
}
|
|
102
95
|
|
|
103
96
|
stories[isTemplate ? "tpl:".concat(id) : id] = {
|
|
104
|
-
storyId: toId(meta.id || meta.title || id, storyNameFromExport(id)),
|
|
105
97
|
name: name,
|
|
106
98
|
template: isTemplate,
|
|
107
99
|
source: source,
|
|
@@ -110,15 +102,10 @@ export function extractStories(component) {
|
|
|
110
102
|
}) != null
|
|
111
103
|
};
|
|
112
104
|
}
|
|
113
|
-
} else if (node.type === 'InlineComponent' && node.name === localNames.Meta) {
|
|
114
|
-
this.skip();
|
|
115
|
-
meta.title = getStaticAttribute("title", node);
|
|
116
|
-
meta.id = getStaticAttribute("id", node);
|
|
117
105
|
}
|
|
118
106
|
}
|
|
119
107
|
});
|
|
120
108
|
return {
|
|
121
|
-
meta: meta,
|
|
122
109
|
stories: stories,
|
|
123
110
|
allocatedIds: allocatedIds
|
|
124
111
|
};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { extractStories } from './extract-stories';
|
|
2
2
|
describe('extractSource', function () {
|
|
3
3
|
test('Simple Story', function () {
|
|
4
|
-
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
4
|
+
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"MyStory\": Object {\n \"hasArgs\": false,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
5
5
|
});
|
|
6
6
|
test('Explicit Id Story', function () {
|
|
7
|
-
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story id=\"myId\" name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
7
|
+
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story id=\"myId\" name=\"MyStory\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"myId\": Object {\n \"hasArgs\": false,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
8
8
|
});
|
|
9
9
|
test('Args Story', function () {
|
|
10
|
-
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\" let:args>\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"
|
|
10
|
+
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n </script>\n\n <Story name=\"MyStory\" let:args>\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n ],\n \"stories\": Object {\n \"MyStory\": Object {\n \"hasArgs\": true,\n \"name\": \"MyStory\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
11
11
|
});
|
|
12
12
|
test('Simple Template', function () {
|
|
13
|
-
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template name=\"MyTemplate\">\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
13
|
+
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template name=\"MyTemplate\">\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"tpl:MyTemplate\": Object {\n \"hasArgs\": false,\n \"name\": \"MyTemplate\",\n \"source\": \"<div>a template</div>\",\n \"template\": true,\n },\n },\n }\n ");
|
|
14
14
|
});
|
|
15
15
|
test('Unnamed Template', function () {
|
|
16
|
-
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template>\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
16
|
+
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Template>\n <div>a template</div>\n </Template>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"tpl:default\": Object {\n \"hasArgs\": false,\n \"name\": \"default\",\n \"source\": \"<div>a template</div>\",\n \"template\": true,\n },\n },\n }\n ");
|
|
17
17
|
});
|
|
18
18
|
test('Multiple Stories', function () {
|
|
19
|
-
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Story name=\"Story1\">\n <div>story 1</div>\n </Story>\n <Story name=\"Story2\">\n <div>story 2</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"
|
|
19
|
+
expect(extractStories("\n <script>\n import { Template } from '@storybook/svelte';\n </script>\n\n <Story name=\"Story1\">\n <div>story 1</div>\n </Story>\n <Story name=\"Story2\">\n <div>story 2</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Template\",\n ],\n \"stories\": Object {\n \"Story1\": Object {\n \"hasArgs\": false,\n \"name\": \"Story1\",\n \"source\": \"<div>story 1</div>\",\n \"template\": false,\n },\n \"Story2\": Object {\n \"hasArgs\": false,\n \"name\": \"Story2\",\n \"source\": \"<div>story 2</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
20
20
|
});
|
|
21
21
|
test('Renamed Import', function () {
|
|
22
|
-
expect(extractStories("\n <script>\n import { Story as SBStory, Meta as SBMeta } from '@storybook/addon-svelte-csf';\n </script>\n\n <SBMeta title='test'/>\n\n <SBStory name=\"Story1\">\n <div>story 1</div>\n </SBStory>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"SBStory\",\n \"SBMeta\",\n ],\n \"
|
|
22
|
+
expect(extractStories("\n <script>\n import { Story as SBStory, Meta as SBMeta } from '@storybook/addon-svelte-csf';\n </script>\n\n <SBMeta title='test'/>\n\n <SBStory name=\"Story1\">\n <div>story 1</div>\n </SBStory>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"SBStory\",\n \"SBMeta\",\n ],\n \"stories\": Object {\n \"Story1\": Object {\n \"hasArgs\": false,\n \"name\": \"Story1\",\n \"source\": \"<div>story 1</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
23
23
|
});
|
|
24
24
|
test('Duplicate Id', function () {
|
|
25
|
-
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n import Button from './Button.svelte';\n </script>\n\n <Story name=\"Button\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n \"Button\",\n ],\n \"
|
|
25
|
+
expect(extractStories("\n <script>\n import { Story } from '@storybook/svelte';\n import Button from './Button.svelte';\n </script>\n\n <Story name=\"Button\">\n <div>a story</div>\n </Story>\n ")).toMatchInlineSnapshot("\n Object {\n \"allocatedIds\": Array [\n \"default\",\n \"Story\",\n \"Button\",\n ],\n \"stories\": Object {\n \"Button77471352\": Object {\n \"hasArgs\": false,\n \"name\": \"Button\",\n \"source\": \"<div>a story</div>\",\n \"template\": false,\n },\n },\n }\n ");
|
|
26
26
|
});
|
|
27
27
|
});
|
|
@@ -1,8 +1,19 @@
|
|
|
1
|
-
import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
-
|
|
4
1
|
var _templateObject;
|
|
5
2
|
|
|
3
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
4
|
+
|
|
5
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
6
|
+
|
|
7
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
8
|
+
|
|
9
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
|
+
|
|
11
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
12
|
+
|
|
13
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
14
|
+
|
|
15
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
+
|
|
6
17
|
import dedent from 'ts-dedent';
|
|
7
18
|
import { readFileSync } from 'fs';
|
|
8
19
|
import { extractStories } from './extract-stories';
|
package/dist/esm/preset/index.js
CHANGED
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
4
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
5
|
-
|
|
6
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7
2
|
|
|
8
3
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
9
4
|
|
|
10
|
-
|
|
5
|
+
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; }
|
|
6
|
+
|
|
7
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
8
|
+
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
|
|
11
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
12
|
+
|
|
13
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
14
|
+
|
|
15
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
16
|
+
|
|
17
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
18
|
+
|
|
11
19
|
export function managerEntries() {
|
|
12
20
|
var entry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
13
21
|
return [].concat(_toConsumableArray(entry), [require.resolve('./manager')]);
|
|
@@ -24,27 +32,4 @@ export function webpack(config) {
|
|
|
24
32
|
}])
|
|
25
33
|
})
|
|
26
34
|
});
|
|
27
|
-
}
|
|
28
|
-
export var storyIndexers = /*#__PURE__*/function () {
|
|
29
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(indexers) {
|
|
30
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
31
|
-
while (1) {
|
|
32
|
-
switch (_context.prev = _context.next) {
|
|
33
|
-
case 0:
|
|
34
|
-
return _context.abrupt("return", [{
|
|
35
|
-
test: /\.stories\.svelte$/,
|
|
36
|
-
indexer: svelteIndexer
|
|
37
|
-
}].concat(_toConsumableArray(indexers || [])));
|
|
38
|
-
|
|
39
|
-
case 1:
|
|
40
|
-
case "end":
|
|
41
|
-
return _context.stop();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}, _callee);
|
|
45
|
-
}));
|
|
46
|
-
|
|
47
|
-
return function storyIndexers(_x) {
|
|
48
|
-
return _ref.apply(this, arguments);
|
|
49
|
-
};
|
|
50
|
-
}();
|
|
35
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/addon-svelte-csf",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.10",
|
|
4
4
|
"description": "Allows to write stories in Svelte syntax",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook-addons",
|
|
@@ -28,14 +28,13 @@
|
|
|
28
28
|
"prepublish": "yarn clean && yarn build",
|
|
29
29
|
"test": "jest",
|
|
30
30
|
"lint": "eslint --cache --cache-location=.cache/eslint --ext .js,.jsx,.json,.html,.ts,.tsx,.mjs --report-unused-disable-directives",
|
|
31
|
-
"storybook": "
|
|
31
|
+
"storybook": "start-storybook -p 6006",
|
|
32
32
|
"start": "concurrently \"yarn storybook -- --no-manager-cache --quiet\" \"yarn build -- --watch\"",
|
|
33
|
-
"build-storybook": "
|
|
33
|
+
"build-storybook": "build-storybook",
|
|
34
34
|
"release": "yarn build && auto shipit"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"ts-dedent": "^2.0.0"
|
|
38
|
-
"@babel/runtime": "^7.17.5"
|
|
37
|
+
"ts-dedent": "^2.0.0"
|
|
39
38
|
},
|
|
40
39
|
"devDependencies": {
|
|
41
40
|
"@auto-it/released": "^10.32.6",
|
|
@@ -44,18 +43,13 @@
|
|
|
44
43
|
"@babel/preset-env": "^7.16.11",
|
|
45
44
|
"@babel/preset-react": "^7.16.7",
|
|
46
45
|
"@babel/preset-typescript": "^7.16.7",
|
|
47
|
-
"@
|
|
48
|
-
"@storybook/addon-
|
|
49
|
-
"@storybook/addon-interactions": "^7.0.0-alpha.29",
|
|
46
|
+
"@storybook/addon-essentials": "^6.4.20",
|
|
47
|
+
"@storybook/addon-interactions": "^6.4.20",
|
|
50
48
|
"@storybook/jest": "^0.0.10",
|
|
51
49
|
"@storybook/testing-library": "^0.0.9",
|
|
52
|
-
"@storybook/addon-storyshots": "^
|
|
50
|
+
"@storybook/addon-storyshots": "^6.4.20",
|
|
53
51
|
"@storybook/eslint-config-storybook": "^3.1.2",
|
|
54
|
-
"@storybook/svelte": "^
|
|
55
|
-
"@storybook/core-server": "^7.0.0-alpha.29",
|
|
56
|
-
"@storybook/core-client": "^7.0.0-alpha.29",
|
|
57
|
-
"@storybook/svelte-webpack5": "7.0.0-alpha.29",
|
|
58
|
-
"sb": "7.0.0-alpha.29",
|
|
52
|
+
"@storybook/svelte": "^6.4.20",
|
|
59
53
|
"auto": "^10.3.0",
|
|
60
54
|
"babel-jest": "^29.1.0",
|
|
61
55
|
"babel-loader": "^8.1.0",
|
|
@@ -68,15 +62,14 @@
|
|
|
68
62
|
"react": "^17.0.1",
|
|
69
63
|
"react-dom": "^17.0.1",
|
|
70
64
|
"rimraf": "^3.0.2",
|
|
71
|
-
"svelte": "^3.
|
|
65
|
+
"svelte": "^3.46.6",
|
|
72
66
|
"svelte-jester": "^2.3.2",
|
|
73
67
|
"svelte-loader": "^3.1.2",
|
|
74
68
|
"typescript": "^3.9.7"
|
|
75
69
|
},
|
|
76
70
|
"peerDependencies": {
|
|
77
71
|
"@storybook/svelte": ">=6.4.20",
|
|
78
|
-
"
|
|
79
|
-
"svelte": "^3.50.0",
|
|
72
|
+
"svelte": "^3.46.6",
|
|
80
73
|
"svelte-loader": "^3.1.2"
|
|
81
74
|
},
|
|
82
75
|
"peerDependenciesMeta": {
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.svelteIndexer = svelteIndexer;
|
|
9
|
-
|
|
10
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
-
|
|
14
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
15
|
-
|
|
16
|
-
var _extractStories = require("../parser/extract-stories");
|
|
17
|
-
|
|
18
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
19
|
-
|
|
20
|
-
function svelteIndexer(_x, _x2) {
|
|
21
|
-
return _svelteIndexer.apply(this, arguments);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
function _svelteIndexer() {
|
|
25
|
-
_svelteIndexer = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(fileName, _ref) {
|
|
26
|
-
var makeTitle, code, defs;
|
|
27
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
28
|
-
while (1) {
|
|
29
|
-
switch (_context.prev = _context.next) {
|
|
30
|
-
case 0:
|
|
31
|
-
makeTitle = _ref.makeTitle;
|
|
32
|
-
_context.next = 3;
|
|
33
|
-
return _fsExtra["default"].readFile(fileName, 'utf-8');
|
|
34
|
-
|
|
35
|
-
case 3:
|
|
36
|
-
code = _context.sent.toString();
|
|
37
|
-
defs = (0, _extractStories.extractStories)(code);
|
|
38
|
-
return _context.abrupt("return", {
|
|
39
|
-
meta: {
|
|
40
|
-
title: makeTitle(defs.meta.title)
|
|
41
|
-
},
|
|
42
|
-
stories: Object.entries(defs.stories).filter(function (_ref2) {
|
|
43
|
-
var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
|
|
44
|
-
id = _ref3[0],
|
|
45
|
-
story = _ref3[1];
|
|
46
|
-
|
|
47
|
-
return !story.template;
|
|
48
|
-
}).map(function (_ref4) {
|
|
49
|
-
var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2),
|
|
50
|
-
id = _ref5[0],
|
|
51
|
-
story = _ref5[1];
|
|
52
|
-
|
|
53
|
-
return {
|
|
54
|
-
id: story.storyId,
|
|
55
|
-
name: story.name
|
|
56
|
-
};
|
|
57
|
-
})
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
case 6:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context.stop();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}, _callee);
|
|
66
|
-
}));
|
|
67
|
-
return _svelteIndexer.apply(this, arguments);
|
|
68
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
3
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
-
import { extractStories } from '../parser/extract-stories';
|
|
5
|
-
import fs from 'fs-extra';
|
|
6
|
-
export function svelteIndexer(_x, _x2) {
|
|
7
|
-
return _svelteIndexer.apply(this, arguments);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
function _svelteIndexer() {
|
|
11
|
-
_svelteIndexer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(fileName, _ref) {
|
|
12
|
-
var makeTitle, code, defs;
|
|
13
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
14
|
-
while (1) {
|
|
15
|
-
switch (_context.prev = _context.next) {
|
|
16
|
-
case 0:
|
|
17
|
-
makeTitle = _ref.makeTitle;
|
|
18
|
-
_context.next = 3;
|
|
19
|
-
return fs.readFile(fileName, 'utf-8');
|
|
20
|
-
|
|
21
|
-
case 3:
|
|
22
|
-
code = _context.sent.toString();
|
|
23
|
-
defs = extractStories(code);
|
|
24
|
-
return _context.abrupt("return", {
|
|
25
|
-
meta: {
|
|
26
|
-
title: makeTitle(defs.meta.title)
|
|
27
|
-
},
|
|
28
|
-
stories: Object.entries(defs.stories).filter(function (_ref2) {
|
|
29
|
-
var _ref3 = _slicedToArray(_ref2, 2),
|
|
30
|
-
id = _ref3[0],
|
|
31
|
-
story = _ref3[1];
|
|
32
|
-
|
|
33
|
-
return !story.template;
|
|
34
|
-
}).map(function (_ref4) {
|
|
35
|
-
var _ref5 = _slicedToArray(_ref4, 2),
|
|
36
|
-
id = _ref5[0],
|
|
37
|
-
story = _ref5[1];
|
|
38
|
-
|
|
39
|
-
return {
|
|
40
|
-
id: story.storyId,
|
|
41
|
-
name: story.name
|
|
42
|
-
};
|
|
43
|
-
})
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
case 6:
|
|
47
|
-
case "end":
|
|
48
|
-
return _context.stop();
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}, _callee);
|
|
52
|
-
}));
|
|
53
|
-
return _svelteIndexer.apply(this, arguments);
|
|
54
|
-
}
|