@scrymore/scry-sbcov 0.3.3 → 0.3.4

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.
@@ -1,5 +1,6 @@
1
1
  /**
2
- * The set of stories Storybook actually built, read from `index.json`.
2
+ * The set of stories Storybook actually built, read from `index.json` or, on
3
+ * Storybook 6, `stories.json`.
3
4
  *
4
5
  * Story discovery globs (`**\/*.stories.tsx` and friends) are not the same set
5
6
  * as Storybook's own `stories` config in `.storybook/main.ts`, and the two
@@ -14,26 +15,52 @@
14
15
  * silently absent from the index, while the run reports success. This is the
15
16
  * dangerous direction, and it is invisible without this check.
16
17
  *
17
- * `index.json` is the authoritative record of what exists: Storybook wrote it
18
- * from the same config it built from. Preferring it removes the guesswork.
18
+ * The index is the authoritative record of what exists: Storybook wrote it from
19
+ * the same config it built from. Preferring it removes the guesswork.
20
+ *
21
+ * Which file holds it depends on the Storybook version, and reading only the
22
+ * modern name is the third way to end up indexing nothing. Storybook 7 and
23
+ * later write `index.json`. Storybook 6 never writes that name; it writes
24
+ * `stories.json`, and only when `features: { buildStoriesJson: true }` is set.
25
+ * A 6.x build without that flag has no manifest at all — which is worth saying
26
+ * out loud rather than treating as "capture against a dev server".
19
27
  */
28
+ /** Manifest filenames, newest name first — both live at the build root. */
29
+ export declare const STORY_INDEX_FILENAMES: readonly ["index.json", "stories.json"];
20
30
  export interface BuiltStoryIndex {
21
31
  /** Story ids present in the build, e.g. `components-button--primary`. */
22
32
  ids: Set<string>;
33
+ /** Filename the index came from, when it was read from a build. */
34
+ source?: (typeof STORY_INDEX_FILENAMES)[number];
23
35
  }
24
36
  /**
25
37
  * Load the built story index, or null when it cannot be read.
26
38
  *
27
39
  * Returning null rather than throwing is deliberate: capture against a running
28
40
  * dev server has no static directory to read, and that is a supported mode
29
- * rather than an error.
41
+ * rather than an error. Callers that do have a static directory report the
42
+ * absence themselves — see `describeMissingStoryIndex`.
30
43
  */
31
44
  export declare function loadBuiltStoryIndex(staticDir: string | undefined): Promise<BuiltStoryIndex | null>;
32
45
  /**
33
- * Parse an `index.json` payload, or null when it is not one.
46
+ * Explain a build that carries no story manifest.
47
+ *
48
+ * The failure this guards against is silent: no manifest means no reconciliation,
49
+ * so a run that captured a fraction of the library — or none of it — looks exactly
50
+ * like a run that captured all of it.
51
+ */
52
+ export declare function describeMissingStoryIndex(staticDir: string): string;
53
+ /**
54
+ * Parse an `index.json` or `stories.json` payload, or null when it is neither.
34
55
  *
35
56
  * Split out from the disk read because the same payload is also fetched over
36
57
  * HTTP to confirm the server being captured is serving this build.
58
+ *
59
+ * The two envelopes differ in more than the key they hang entries off. v4
60
+ * (`index.json`) tags docs entries with `type: 'docs'`; v3 (`stories.json`) has
61
+ * no `type` at all and marks the same entries `parameters.docsOnly`. Both are
62
+ * skipped here, because a docs page has no story to capture and would otherwise
63
+ * be reported as a story that discovery missed.
37
64
  */
38
65
  export declare function parseStoryIndex(raw: string): BuiltStoryIndex | null;
39
66
  export interface ReconcileResult<T> {
@@ -1 +1 @@
1
- {"version":3,"file":"built-story-index.d.ts","sourceRoot":"","sources":["../../src/core/built-story-index.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAQjC;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA0BnE;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,8DAA8D;IAC9D,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,yEAAyE;IACzE,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,yEAAyE;IACzE,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,UAAU,EAAE,CAAC,EAAE,EACf,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC9B,KAAK,EAAE,eAAe,GAAG,IAAI,GAC5B,eAAe,CAAC,CAAC,CAAC,CAmBpB"}
1
+ {"version":3,"file":"built-story-index.d.ts","sourceRoot":"","sources":["../../src/core/built-story-index.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,2EAA2E;AAC3E,eAAO,MAAM,qBAAqB,yCAA0C,CAAC;AAE7E,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjB,mEAAmE;IACnE,MAAM,CAAC,EAAE,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;CACjD;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAgBjC;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAOnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAuBnE;AAcD,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,8DAA8D;IAC9D,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,yEAAyE;IACzE,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,yEAAyE;IACzE,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,UAAU,EAAE,CAAC,EAAE,EACf,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC9B,KAAK,EAAE,eAAe,GAAG,IAAI,GAC5B,eAAe,CAAC,CAAC,CAAC,CAmBpB"}
@@ -1,27 +1,83 @@
1
1
  import { readFile } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
+ /**
4
+ * The set of stories Storybook actually built, read from `index.json` or, on
5
+ * Storybook 6, `stories.json`.
6
+ *
7
+ * Story discovery globs (`**\/*.stories.tsx` and friends) are not the same set
8
+ * as Storybook's own `stories` config in `.storybook/main.ts`, and the two
9
+ * diverge in both directions:
10
+ *
11
+ * - Glob wider than the build — every extra id is navigated to, finds nothing,
12
+ * and burns the full timeout. A repo that still has Storybook's starter
13
+ * `./stories/` examples while building only `../src/**` spends ~150s per run
14
+ * failing to capture components that were never built.
15
+ *
16
+ * - Glob narrower than the build — real components are never captured and are
17
+ * silently absent from the index, while the run reports success. This is the
18
+ * dangerous direction, and it is invisible without this check.
19
+ *
20
+ * The index is the authoritative record of what exists: Storybook wrote it from
21
+ * the same config it built from. Preferring it removes the guesswork.
22
+ *
23
+ * Which file holds it depends on the Storybook version, and reading only the
24
+ * modern name is the third way to end up indexing nothing. Storybook 7 and
25
+ * later write `index.json`. Storybook 6 never writes that name; it writes
26
+ * `stories.json`, and only when `features: { buildStoriesJson: true }` is set.
27
+ * A 6.x build without that flag has no manifest at all — which is worth saying
28
+ * out loud rather than treating as "capture against a dev server".
29
+ */
30
+ /** Manifest filenames, newest name first — both live at the build root. */
31
+ export const STORY_INDEX_FILENAMES = ['index.json', 'stories.json'];
3
32
  /**
4
33
  * Load the built story index, or null when it cannot be read.
5
34
  *
6
35
  * Returning null rather than throwing is deliberate: capture against a running
7
36
  * dev server has no static directory to read, and that is a supported mode
8
- * rather than an error.
37
+ * rather than an error. Callers that do have a static directory report the
38
+ * absence themselves — see `describeMissingStoryIndex`.
9
39
  */
10
40
  export async function loadBuiltStoryIndex(staticDir) {
11
41
  if (!staticDir)
12
42
  return null;
13
- try {
14
- return parseStoryIndex(await readFile(path.join(staticDir, 'index.json'), 'utf8'));
15
- }
16
- catch {
17
- return null;
43
+ for (const filename of STORY_INDEX_FILENAMES) {
44
+ let raw;
45
+ try {
46
+ raw = await readFile(path.join(staticDir, filename), 'utf8');
47
+ }
48
+ catch {
49
+ continue;
50
+ }
51
+ const index = parseStoryIndex(raw);
52
+ if (index)
53
+ return { ...index, source: filename };
18
54
  }
55
+ return null;
56
+ }
57
+ /**
58
+ * Explain a build that carries no story manifest.
59
+ *
60
+ * The failure this guards against is silent: no manifest means no reconciliation,
61
+ * so a run that captured a fraction of the library — or none of it — looks exactly
62
+ * like a run that captured all of it.
63
+ */
64
+ export function describeMissingStoryIndex(staticDir) {
65
+ return (`${staticDir} contains neither ${STORY_INDEX_FILENAMES.join(' nor ')}, so there is no record ` +
66
+ `of what Storybook built to check the capture against. Storybook 6.x only writes stories.json ` +
67
+ `when \`features: { buildStoriesJson: true }\` is set in .storybook/main.js; add it and rebuild ` +
68
+ `to have missing stories reported instead of passing unnoticed.`);
19
69
  }
20
70
  /**
21
- * Parse an `index.json` payload, or null when it is not one.
71
+ * Parse an `index.json` or `stories.json` payload, or null when it is neither.
22
72
  *
23
73
  * Split out from the disk read because the same payload is also fetched over
24
74
  * HTTP to confirm the server being captured is serving this build.
75
+ *
76
+ * The two envelopes differ in more than the key they hang entries off. v4
77
+ * (`index.json`) tags docs entries with `type: 'docs'`; v3 (`stories.json`) has
78
+ * no `type` at all and marks the same entries `parameters.docsOnly`. Both are
79
+ * skipped here, because a docs page has no story to capture and would otherwise
80
+ * be reported as a story that discovery missed.
25
81
  */
26
82
  export function parseStoryIndex(raw) {
27
83
  let parsed;
@@ -32,18 +88,23 @@ export function parseStoryIndex(raw) {
32
88
  return null;
33
89
  }
34
90
  const entries = parsed?.entries ?? parsed?.stories;
35
- if (!entries)
91
+ if (!entries || typeof entries !== 'object')
36
92
  return null;
37
93
  const ids = new Set();
38
94
  for (const [id, entry] of Object.entries(entries)) {
39
- // Docs pages are indexed alongside stories but have nothing to capture.
40
- if (entry && typeof entry === 'object' && entry.type === 'docs') {
95
+ if (isDocsEntry(entry))
41
96
  continue;
42
- }
43
97
  ids.add(id);
44
98
  }
45
99
  return { ids };
46
100
  }
101
+ /** Docs pages are indexed alongside stories but have nothing to capture. */
102
+ function isDocsEntry(entry) {
103
+ if (!entry || typeof entry !== 'object')
104
+ return false;
105
+ const { type, parameters } = entry;
106
+ return type === 'docs' || parameters?.docsOnly === true;
107
+ }
47
108
  /**
48
109
  * Intersect discovered stories with what the build contains.
49
110
  *
@@ -1 +1 @@
1
- {"version":3,"file":"built-story-index.js","sourceRoot":"","sources":["../../src/core/built-story-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AA2B7B;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,SAA6B;IAE7B,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,MAIH,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,MAAM,EAAE,OAAO,CAAC;IACnD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAClD,wEAAwE;QACxE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAA2B,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACvF,SAAS;QACX,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,CAAC;AACjB,CAAC;AAWD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAAe,EACf,SAA8B,EAC9B,KAA6B;IAE7B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YACrC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"built-story-index.js","sourceRoot":"","sources":["../../src/core/built-story-index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"static-server.d.ts","sourceRoot":"","sources":["../../src/core/static-server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAa/E,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,CAC1B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,KACT;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,aAc9B,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAa5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,YAAY,GAAE,aAAiC,GAC9C,OAAO,CAAC,YAAY,CAAC,CAuDvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
1
+ {"version":3,"file":"static-server.d.ts","sourceRoot":"","sources":["../../src/core/static-server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAahC,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,CAC1B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,KACT;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,aAc9B,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAa5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,YAAY,GAAE,aAAiC,GAC9C,OAAO,CAAC,YAAY,CAAC,CAuDvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,IAAI,CAAC,CA+Df"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { spawn } from 'node:child_process';
6
6
  import * as net from 'node:net';
7
- import { parseStoryIndex } from './built-story-index.js';
7
+ import { parseStoryIndex, STORY_INDEX_FILENAMES, } from './built-story-index.js';
8
8
  /**
9
9
  * Loopback only. The build is served for this run, not for the network, and a
10
10
  * capture that reaches the LAN is a capture someone else's proxy can answer.
@@ -123,36 +123,53 @@ export async function startStaticServer(staticDir, verbose, buildCommand = httpS
123
123
  * to describe the same build, not merely a compatible one.
124
124
  */
125
125
  export async function verifyServedBuild(url, staticDir, built, captureIds) {
126
- const indexUrl = `${url}/index.json`;
127
- let body;
128
- try {
129
- const response = await fetch(indexUrl);
130
- if (!response.ok)
131
- throw new Error(`HTTP ${response.status}`);
132
- body = await response.text();
133
- }
134
- catch (error) {
135
- throw new Error(`Refusing to capture: could not read the story index at ${indexUrl} ` +
136
- `(${error instanceof Error ? error.message : String(error)}). ` +
137
- `Something other than the build in ${staticDir} is answering on that port.`);
126
+ // Ask for the manifest the build itself carries first: a Storybook 6 build has
127
+ // no index.json to serve, and demanding one would refuse to capture a build
128
+ // that is perfectly capturable.
129
+ const filenames = built.source
130
+ ? [built.source, ...STORY_INDEX_FILENAMES.filter((name) => name !== built.source)]
131
+ : [...STORY_INDEX_FILENAMES];
132
+ let served = null;
133
+ let indexUrl = `${url}/${filenames[0]}`;
134
+ const failures = [];
135
+ for (const filename of filenames) {
136
+ const candidateUrl = `${url}/${filename}`;
137
+ let body;
138
+ try {
139
+ const response = await fetch(candidateUrl);
140
+ if (!response.ok)
141
+ throw new Error(`HTTP ${response.status}`);
142
+ body = await response.text();
143
+ }
144
+ catch (error) {
145
+ failures.push(`${filename}: ${error instanceof Error ? error.message : String(error)}`);
146
+ continue;
147
+ }
148
+ const parsed = parseStoryIndex(body);
149
+ if (!parsed) {
150
+ failures.push(`${filename} is not a Storybook story index`);
151
+ continue;
152
+ }
153
+ served = parsed;
154
+ indexUrl = candidateUrl;
155
+ break;
138
156
  }
139
- const served = parseStoryIndex(body);
140
157
  if (!served) {
141
- throw new Error(`Refusing to capture: ${indexUrl} is not a Storybook story index, so the server ` +
142
- `is not serving the build in ${staticDir}.`);
158
+ throw new Error(`Refusing to capture: could not read the story index at ${url} — ${failures.join('; ')}. ` +
159
+ `Something other than the build in ${staticDir} is answering on that port.`);
143
160
  }
144
161
  const missing = captureIds.filter((id) => !served.ids.has(id));
145
162
  if (missing.length > 0) {
146
163
  throw new Error(`Refusing to capture: the server at ${url} is not serving the build in ${staticDir}. ` +
147
164
  `${missing.length} of ${captureIds.length} stories to capture are absent from its ` +
148
- `index.json (${sample(missing)}). ` +
165
+ `${indexUrl} (${sample(missing)}). ` +
149
166
  `A proxy, a container port mapping or another Storybook is answering instead.`);
150
167
  }
151
168
  const absent = [...built.ids].filter((id) => !served.ids.has(id));
152
169
  const extra = [...served.ids].filter((id) => !built.ids.has(id));
153
170
  if (absent.length > 0 || extra.length > 0) {
154
171
  throw new Error(`Refusing to capture: the server at ${url} answers with a different build than ${staticDir}. ` +
155
- `Its index.json is missing ${absent.length} story(ies) (${sample(absent)}) and carries ` +
172
+ `Its ${indexUrl} is missing ${absent.length} story(ies) (${sample(absent)}) and carries ` +
156
173
  `${extra.length} it should not (${sample(extra)}). ` +
157
174
  `A proxy, a container port mapping or another Storybook is answering instead.`);
158
175
  }
@@ -1 +1 @@
1
- {"version":3,"file":"static-server.js","sourceRoot":"","sources":["../../src/core/static-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"static-server.js","sourceRoot":"","sources":["../../src/core/static-server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"story-executor.d.ts","sourceRoot":"","sources":["../../src/core/story-executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,eAAe,EAEf,eAAe,EAIf,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAyB3B;;GAEG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,eAAe,EAAE,EAC7B,MAAM,EAAE,eAAe,EACvB,OAAO,UAAQ,GACd,OAAO,CAAC,gBAAgB,CAAC,CA0J3B;AAyPD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,gBAAgB,EAChC,eAAe,EAAE,gBAAgB,GAAG,IAAI,EACxC,WAAW,EAAE,MAAM,GAClB,kBAAkB,CAyCpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAa1E;AAED;;GAEG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAG9D"}
1
+ {"version":3,"file":"story-executor.d.ts","sourceRoot":"","sources":["../../src/core/story-executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,KAAK,EACV,eAAe,EAEf,eAAe,EAIf,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAyB3B;;GAEG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,eAAe,EAAE,EAC7B,MAAM,EAAE,eAAe,EACvB,OAAO,UAAQ,GACd,OAAO,CAAC,gBAAgB,CAAC,CAgK3B;AAyPD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,gBAAgB,EAChC,eAAe,EAAE,gBAAgB,GAAG,IAAI,EACxC,WAAW,EAAE,MAAM,GAClB,kBAAkB,CAyCpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAa1E;AAED;;GAEG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAG9D"}
@@ -2,7 +2,7 @@
2
2
  * Story Executor
3
3
  * Executes stories in a real browser to detect runtime failures using Playwright
4
4
  */
5
- import { loadBuiltStoryIndex, reconcileWithBuild } from './built-story-index.js';
5
+ import { describeMissingStoryIndex, loadBuiltStoryIndex, reconcileWithBuild, } from './built-story-index.js';
6
6
  import { startStaticServer, verifyServedBuild } from './static-server.js';
7
7
  import * as fs from 'node:fs';
8
8
  import * as path from 'node:path';
@@ -93,10 +93,17 @@ export async function executeStories(storyFiles, config, verbose = false) {
93
93
  else {
94
94
  // Without an index there is nothing to compare the served build against,
95
95
  // so say so rather than let an unverified capture look like a verified one.
96
- console.warn(` Could not verify the served build: ${config.staticDir} has no readable index.json.`);
96
+ console.warn(` Could not verify the served build: ${describeMissingStoryIndex(config.staticDir)}`);
97
97
  }
98
98
  }
99
- if (verbose) {
99
+ if (allStories.length === 0) {
100
+ // A capture of nothing is the failure that reports success: the run exits 0,
101
+ // the archive uploads, and the search index it feeds comes back empty.
102
+ console.warn(` No stories to execute. ${discovered.length} were found on disk` +
103
+ (builtIndex ? ` and the build contains ${builtIndex.ids.size}` : '') +
104
+ `, so nothing will be captured or indexed.`);
105
+ }
106
+ else if (verbose) {
100
107
  console.log(`Executing ${allStories.length} stories...`);
101
108
  }
102
109
  // Launch browser
@@ -1 +1 @@
1
- {"version":3,"file":"story-executor.js","sourceRoot":"","sources":["../../src/core/story-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"story-executor.js","sourceRoot":"","sources":["../../src/core/story-executor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"story-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/story-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,eAAe,EAEf,iBAAiB,EACjB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAa3B;;GAEG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,EAClB,OAAO,UAAQ,GACd,OAAO,CAAC,eAAe,EAAE,CAAC,CAwB5B;AA8CD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,eAAe,GAAG,IAAI,CAmBxB;AAwQD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,iBAAiB,EAAE,GAC9B,iBAAiB,GAAG,IAAI,CAuC1B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAIlE"}
1
+ {"version":3,"file":"story-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/story-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,eAAe,EAEf,iBAAiB,EACjB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAoB3B;;GAEG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,EAClB,OAAO,UAAQ,GACd,OAAO,CAAC,eAAe,EAAE,CAAC,CAwB5B;AA8CD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,eAAe,GAAG,IAAI,CAqBxB;AAujBD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,UAAU,EAAE,iBAAiB,EAAE,GAC9B,iBAAiB,GAAG,IAAI,CAuC1B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAIlE"}
@@ -7,8 +7,13 @@ import * as path from 'node:path';
7
7
  import { glob } from 'glob';
8
8
  import { withVendorExcludes } from '../core/vendor-paths.js';
9
9
  // Regular expressions for parsing story files
10
- const META_REGEX = /export\s+default\s+({[\s\S]*?})\s*(?:as\s+\w+)?;?|const\s+meta\s*(?::\s*Meta(?:<[^>]+>)?)?\s*=\s*({[\s\S]*?})\s*(?:satisfies\s+\w+)?;?/;
10
+ const META_START_REGEX = /export\s+default\s*(?={)|(?:const|let|var)\s+meta\s*(?::\s*[^=]+?)?=\s*(?={)/;
11
11
  const STORY_EXPORT_REGEX = /export\s+(?:const|let)\s+(\w+)\s*(?::\s*\w+(?:<[^>]+>)?)?\s*=\s*({[\s\S]*?});?|export\s+(?:const|let)\s+(\w+)\s*(?::\s*\w+(?:<[^>]+>)?)?\s*=\s*(\([^)]*\)\s*=>\s*(?:<[\s\S]*?>|[\s\S]*?));?/g;
12
+ // Every named export of a story file is a story unless the meta says otherwise —
13
+ // including the CSF2 shapes (`export const X = Template.bind({})`,
14
+ // `export function X()`) that carry no object literal for STORY_EXPORT_REGEX to
15
+ // latch onto. See extractStories.
16
+ const NAMED_EXPORT_REGEX = /export\s+(?:async\s+)?(?:const|let|var|function)\s+([A-Za-z_$][\w$]*)/g;
12
17
  const TITLE_REGEX = /title:\s*['"`]([^'"`]+)['"`]/;
13
18
  const COMPONENT_REGEX = /component:\s*(\w+)/;
14
19
  const COMPONENT_PATH_REGEX = /import\s+(?:{[^}]+}|\*\s+as\s+\w+|\w+)?\s*,?\s*(?:{[^}]+})?\s*from\s+['"`]([^'"`]+)['"`]/g;
@@ -16,6 +21,7 @@ const ARGS_REGEX = /args:\s*({[\s\S]*?})/;
16
21
  const PLAY_FUNCTION_REGEX = /play:\s*(?:async\s*)?\(/;
17
22
  const TAGS_REGEX = /tags:\s*\[([^\]]*)\]/;
18
23
  const NAME_REGEX = /name:\s*['"`]([^'"`]+)['"`]/;
24
+ const EXPORT_FILTER_REGEX = /(includeStories|excludeStories):\s*(\[[^\]]*\]|\/(?:[^/\\\n]|\\.)+\/[a-z]*)/g;
19
25
  /**
20
26
  * Parse all story files in the project
21
27
  */
@@ -77,10 +83,11 @@ async function parseStoryFile(filePath, projectPath) {
77
83
  */
78
84
  export function parseStoryCode(code, filePath, projectPath) {
79
85
  const relativePath = path.relative(projectPath, filePath);
86
+ const metaObject = extractMetaObject(code);
80
87
  // Extract meta information
81
- const meta = extractMeta(code, filePath);
88
+ const meta = extractMeta(code, filePath, metaObject);
82
89
  // Extract stories
83
- const stories = extractStories(code, meta.title);
90
+ const stories = extractStories(code, meta.title, metaObject);
84
91
  if (stories.length === 0) {
85
92
  return null;
86
93
  }
@@ -91,17 +98,30 @@ export function parseStoryCode(code, filePath, projectPath) {
91
98
  stories,
92
99
  };
93
100
  }
101
+ /**
102
+ * Extract the component meta object literal, whichever shape declares it.
103
+ *
104
+ * CSF3 names it (`const meta = {...}; export default meta;`), CSF2 inlines it
105
+ * (`export default {...}`). Both are read to the matching brace rather than to
106
+ * the first one: a meta that opens with `parameters: { layout: 'centered' }`
107
+ * would otherwise be truncated before its `title`, and every story id derived
108
+ * from that file would be wrong.
109
+ */
110
+ function extractMetaObject(code) {
111
+ const start = code.match(META_START_REGEX);
112
+ if (!start || start.index === undefined)
113
+ return null;
114
+ const braceIndex = start.index + start[0].length;
115
+ return readBalanced(code, braceIndex);
116
+ }
94
117
  /**
95
118
  * Extract meta information from story file
96
119
  */
97
- function extractMeta(code, filePath) {
120
+ function extractMeta(code, filePath, metaObject) {
98
121
  let title = null;
99
122
  let componentName = null;
100
123
  let componentPath = null;
101
- // Try to find meta object
102
- const metaMatch = code.match(META_REGEX);
103
- if (metaMatch) {
104
- const metaObject = metaMatch[1] || metaMatch[2];
124
+ if (metaObject) {
105
125
  // Extract title
106
126
  const titleMatch = metaObject.match(TITLE_REGEX);
107
127
  if (titleMatch) {
@@ -144,49 +164,156 @@ function extractMeta(code, filePath) {
144
164
  }
145
165
  /**
146
166
  * Extract stories from story file code
167
+ *
168
+ * Two passes, because the two CSF versions declare stories in shapes that have
169
+ * no syntax in common.
170
+ *
171
+ * CSF3 gives every story an object literal or an inline arrow, which is what
172
+ * STORY_EXPORT_REGEX matches. CSF2 — still the majority of story files in the
173
+ * wild — declares them as bound templates with the details hung off the export
174
+ * afterwards:
175
+ *
176
+ * const Template = (args) => <X {...args} />;
177
+ * export const Primary = Template.bind({});
178
+ * Primary.args = { label: 'a' };
179
+ *
180
+ * The initialiser there is a call expression, so the CSF3 pass matches nothing,
181
+ * the file parses as having zero stories, and a file with zero stories is
182
+ * dropped whole. A design system written in CSF2 therefore reports as almost
183
+ * entirely storyless while the run still exits 0. The second pass claims every
184
+ * remaining named export — which is what Storybook itself does — and reads the
185
+ * `Primary.args = {...}` annotations that follow it.
147
186
  */
148
- function extractStories(code, title) {
187
+ function extractStories(code, title, metaObject) {
149
188
  const stories = [];
150
189
  const seenExports = new Set();
190
+ const isStoryExport = buildExportFilter(metaObject);
191
+ const collect = (exportName, storyObject, index) => {
192
+ // Skip non-story exports
193
+ if (!exportName || exportName === 'default' || exportName === 'meta')
194
+ return;
195
+ if (seenExports.has(exportName))
196
+ return;
197
+ if (!isStoryExport(exportName))
198
+ return;
199
+ seenExports.add(exportName);
200
+ stories.push(parseStory(exportName, storyObject, title, index, code));
201
+ };
151
202
  // Reset regex lastIndex
152
203
  STORY_EXPORT_REGEX.lastIndex = 0;
153
204
  let match;
154
205
  while ((match = STORY_EXPORT_REGEX.exec(code)) !== null) {
155
- const exportName = match[1] || match[3];
156
- // Skip non-story exports
157
- if (!exportName || exportName === 'default' || exportName === 'meta')
158
- continue;
159
- if (seenExports.has(exportName))
206
+ collect(match[1] || match[3], match[2] || match[4], match.index);
207
+ }
208
+ NAMED_EXPORT_REGEX.lastIndex = 0;
209
+ while ((match = NAMED_EXPORT_REGEX.exec(code)) !== null) {
210
+ collect(match[1], undefined, match.index);
211
+ }
212
+ // The two passes each scan from the top, so the combined list is only in
213
+ // source order once it is sorted — and story order is how a report reads.
214
+ return stories.sort((a, b) => (a.location?.startLine ?? 0) - (b.location?.startLine ?? 0));
215
+ }
216
+ /**
217
+ * Build the "is this export a story" predicate the meta asks for.
218
+ *
219
+ * Storybook treats every named export as a story except the ones `includeStories`
220
+ * / `excludeStories` filter out, and CSF2 files lean on that to export shared
221
+ * templates and helpers from a story file. Without honouring it, those helpers
222
+ * are reported as stories that the build has never heard of.
223
+ */
224
+ function buildExportFilter(metaObject) {
225
+ // Storybook's own export-order marker, never a story.
226
+ const isInternal = (name) => name.startsWith('__');
227
+ if (!metaObject)
228
+ return (name) => !isInternal(name);
229
+ let include = null;
230
+ let exclude = null;
231
+ EXPORT_FILTER_REGEX.lastIndex = 0;
232
+ let match;
233
+ while ((match = EXPORT_FILTER_REGEX.exec(metaObject)) !== null) {
234
+ const matcher = compileExportMatcher(match[2]);
235
+ if (!matcher)
160
236
  continue;
161
- seenExports.add(exportName);
162
- const storyObject = match[2] || match[4];
163
- const exportStartIndex = match.index;
164
- // Parse story details
165
- const story = parseStory(exportName, storyObject, title, exportStartIndex, code);
166
- stories.push(story);
237
+ if (match[1] === 'includeStories')
238
+ include = matcher;
239
+ else
240
+ exclude = matcher;
241
+ }
242
+ return (name) => {
243
+ if (isInternal(name))
244
+ return false;
245
+ if (include && !include(name))
246
+ return false;
247
+ if (exclude && exclude(name))
248
+ return false;
249
+ return true;
250
+ };
251
+ }
252
+ /**
253
+ * Compile an `includeStories`/`excludeStories` value, or null when it is neither
254
+ * of the two forms Storybook documents (a string array or a regular expression).
255
+ */
256
+ function compileExportMatcher(value) {
257
+ if (value.startsWith('[')) {
258
+ const names = new Set();
259
+ const stringLiteral = /['"`]([^'"`]*)['"`]/g;
260
+ let match;
261
+ while ((match = stringLiteral.exec(value)) !== null)
262
+ names.add(match[1]);
263
+ return names.size > 0 ? (name) => names.has(name) : null;
264
+ }
265
+ const regexLiteral = value.match(/^\/((?:[^/\\\n]|\\.)+)\/([a-z]*)$/);
266
+ if (!regexLiteral)
267
+ return null;
268
+ try {
269
+ const pattern = new RegExp(regexLiteral[1], regexLiteral[2]);
270
+ // Shared RegExp objects carry lastIndex between calls when /g is set.
271
+ return (name) => {
272
+ pattern.lastIndex = 0;
273
+ return pattern.test(name);
274
+ };
275
+ }
276
+ catch {
277
+ return null;
167
278
  }
168
- return stories;
169
279
  }
170
280
  /**
171
281
  * Parse a single story
282
+ *
283
+ * `storyObject` is the inline object literal when the story has one (CSF3). A
284
+ * CSF2 story has none, and everything the story configures lives in assignments
285
+ * that follow the export, so those are read as a fallback for each field.
172
286
  */
173
287
  function parseStory(exportName, storyObject, title, exportStartIndex, code) {
174
- // Extract story name (from name property or export name)
288
+ const inline = storyObject ?? '';
289
+ const annotations = extractCsf2Annotations(code, exportName, exportStartIndex);
290
+ // Extract story name (from name property, CSF2 storyName, or export name)
175
291
  let storyName = exportName;
176
- const nameMatch = storyObject.match(NAME_REGEX);
292
+ const nameMatch = inline.match(NAME_REGEX);
177
293
  if (nameMatch) {
178
294
  storyName = nameMatch[1];
179
295
  }
296
+ else if (annotations.storyName) {
297
+ storyName = annotations.storyName;
298
+ }
180
299
  // Generate story ID
181
300
  const storyId = generateStoryId(title, exportName);
182
301
  // Extract args
183
- const args = extractArgs(storyObject);
302
+ let args = extractArgs(inline);
303
+ if (Object.keys(args).length === 0) {
304
+ args = annotations.args;
305
+ }
184
306
  // Check for play function
185
- const hasPlayFunction = PLAY_FUNCTION_REGEX.test(storyObject);
307
+ const hasPlayFunction = PLAY_FUNCTION_REGEX.test(inline) || annotations.hasPlayFunction;
186
308
  // Extract tags
187
- const tags = extractTags(storyObject);
309
+ let tags = extractTags(inline);
310
+ if (tags.length === 0) {
311
+ tags = annotations.tags;
312
+ }
188
313
  const startLine = code.slice(0, exportStartIndex).split('\n').length;
189
- const endLine = startLine + storyObject.split(/\r?\n/).length - 1;
314
+ const endLine = storyObject
315
+ ? startLine + storyObject.split(/\r?\n/).length - 1
316
+ : lineOf(code, statementEndIndex(code, exportStartIndex));
190
317
  return {
191
318
  exportName,
192
319
  storyName,
@@ -198,6 +325,169 @@ function parseStory(exportName, storyObject, title, exportStartIndex, code) {
198
325
  location: { startLine, endLine },
199
326
  };
200
327
  }
328
+ /**
329
+ * Read the `Primary.args = {...}` style assignments that configure a CSF2 story.
330
+ *
331
+ * Only assignments after the export are considered: an earlier `Primary.args` in
332
+ * the same file would belong to something else, and story files that reuse names
333
+ * across a `Template` and its stories are common enough to care.
334
+ */
335
+ function extractCsf2Annotations(code, exportName, exportStartIndex) {
336
+ const result = {
337
+ storyName: null,
338
+ args: {},
339
+ tags: [],
340
+ hasPlayFunction: false,
341
+ };
342
+ const assignment = new RegExp(`\\b${escapeRegExp(exportName)}\\s*\\.\\s*(args|storyName|story|tags|play)\\s*=\\s*`, 'g');
343
+ assignment.lastIndex = exportStartIndex;
344
+ let match;
345
+ while ((match = assignment.exec(code)) !== null) {
346
+ const property = match[1];
347
+ const valueStart = match.index + match[0].length;
348
+ const value = code.slice(valueStart, statementEndIndex(code, valueStart)).trim();
349
+ switch (property) {
350
+ case 'args':
351
+ if (Object.keys(result.args).length === 0)
352
+ result.args = parseArgsObject(value);
353
+ break;
354
+ case 'storyName': {
355
+ const literal = value.match(/^['"`]([^'"`]*)['"`]/);
356
+ if (literal && !result.storyName)
357
+ result.storyName = literal[1];
358
+ break;
359
+ }
360
+ case 'story': {
361
+ // Pre-6.0 CSF2 nested everything under `Primary.story = { name, ... }`.
362
+ const nameMatch = value.match(NAME_REGEX);
363
+ if (nameMatch && !result.storyName)
364
+ result.storyName = nameMatch[1];
365
+ const nested = extractArgs(value);
366
+ if (Object.keys(result.args).length === 0)
367
+ result.args = nested;
368
+ if (result.tags.length === 0)
369
+ result.tags = extractTags(value);
370
+ if (PLAY_FUNCTION_REGEX.test(value))
371
+ result.hasPlayFunction = true;
372
+ break;
373
+ }
374
+ case 'tags':
375
+ if (result.tags.length === 0) {
376
+ const tagsMatch = value.match(/^\[([^\]]*)\]/);
377
+ if (tagsMatch)
378
+ result.tags = extractTags(`tags: [${tagsMatch[1]}]`);
379
+ }
380
+ break;
381
+ case 'play':
382
+ result.hasPlayFunction = true;
383
+ break;
384
+ }
385
+ }
386
+ return result;
387
+ }
388
+ function parseArgsObject(value) {
389
+ if (!value.startsWith('{'))
390
+ return {};
391
+ try {
392
+ return parseObjectLiteral(readBalanced(value, 0) ?? value);
393
+ }
394
+ catch {
395
+ return {};
396
+ }
397
+ }
398
+ /**
399
+ * Read a bracketed span starting at `openIndex`, including both brackets.
400
+ *
401
+ * Strings and comments are skipped so that a brace inside `'}'` or a `//` line
402
+ * does not close the span early.
403
+ */
404
+ function readBalanced(code, openIndex) {
405
+ const open = code[openIndex];
406
+ const close = open === '{' ? '}' : open === '[' ? ']' : open === '(' ? ')' : null;
407
+ if (!close)
408
+ return null;
409
+ let depth = 0;
410
+ for (let i = openIndex; i < code.length; i++) {
411
+ const skipped = skipStringOrComment(code, i);
412
+ if (skipped !== i) {
413
+ i = skipped - 1;
414
+ continue;
415
+ }
416
+ const char = code[i];
417
+ if (char === open)
418
+ depth++;
419
+ else if (char === close) {
420
+ depth--;
421
+ if (depth === 0)
422
+ return code.slice(openIndex, i + 1);
423
+ }
424
+ }
425
+ return null;
426
+ }
427
+ /**
428
+ * Index just past the statement that starts at `from`.
429
+ *
430
+ * Used for CSF2 exports, which have no object literal to measure: the statement
431
+ * ends at its semicolon, or — for a declaration written without one — at the
432
+ * first newline outside any bracket.
433
+ */
434
+ function statementEndIndex(code, from) {
435
+ let depth = 0;
436
+ for (let i = from; i < code.length; i++) {
437
+ const skipped = skipStringOrComment(code, i);
438
+ if (skipped !== i) {
439
+ i = skipped - 1;
440
+ continue;
441
+ }
442
+ const char = code[i];
443
+ if (char === '{' || char === '[' || char === '(')
444
+ depth++;
445
+ else if (char === '}' || char === ']' || char === ')')
446
+ depth--;
447
+ else if (depth <= 0 && char === ';')
448
+ return i;
449
+ else if (depth <= 0 && char === '\n' && i > from)
450
+ return i;
451
+ }
452
+ return code.length;
453
+ }
454
+ /**
455
+ * Index just past a string, template or comment starting at `index`, or `index`
456
+ * itself when nothing starts there.
457
+ */
458
+ function skipStringOrComment(code, index) {
459
+ const char = code[index];
460
+ if (char === '/' && code[index + 1] === '/') {
461
+ const end = code.indexOf('\n', index);
462
+ return end === -1 ? code.length : end;
463
+ }
464
+ if (char === '/' && code[index + 1] === '*') {
465
+ const end = code.indexOf('*/', index + 2);
466
+ return end === -1 ? code.length : end + 2;
467
+ }
468
+ if (char === '"' || char === "'" || char === '`') {
469
+ for (let i = index + 1; i < code.length; i++) {
470
+ if (code[i] === '\\') {
471
+ i++;
472
+ continue;
473
+ }
474
+ if (code[i] === char)
475
+ return i + 1;
476
+ // An unterminated quote is far more likely to be an apostrophe in JSX text
477
+ // than a real string, so give up at the line end rather than eat the file.
478
+ if (code[i] === '\n' && char !== '`')
479
+ return index;
480
+ }
481
+ return code.length;
482
+ }
483
+ return index;
484
+ }
485
+ function lineOf(code, index) {
486
+ return code.slice(0, index).split('\n').length;
487
+ }
488
+ function escapeRegExp(value) {
489
+ return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
490
+ }
201
491
  /**
202
492
  * Extract args from story object
203
493
  */
@@ -1 +1 @@
1
- {"version":3,"file":"story-parser.js","sourceRoot":"","sources":["../../src/parsers/story-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAQ7D,8CAA8C;AAC9C,MAAM,UAAU,GAAG,wIAAwI,CAAC;AAC5J,MAAM,kBAAkB,GAAG,8LAA8L,CAAC;AAC1N,MAAM,WAAW,GAAG,8BAA8B,CAAC;AACnD,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAC7C,MAAM,oBAAoB,GAAG,2FAA2F,CAAC;AACzH,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;AACtD,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C,MAAM,UAAU,GAAG,6BAA6B,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAmB,EACnB,MAAkB,EAClB,OAAO,GAAG,KAAK;IAEf,MAAM,UAAU,GAAsB,EAAE,CAAC;IAEzC,uBAAuB;IACvB,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAEtF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,MAAM,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC3D,IAAI,MAAM,EAAE,CAAC;gBACX,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,uCAAuC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,WAAmB,EACnB,aAAuB,EACvB,eAAyB;IAEzB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,8EAA8E;IAC9E,qCAAqC;IACrC,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAC7C,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAC1C,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;gBAClC,GAAG,EAAE,WAAW;gBAChB,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,CAAC;aACtD,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qEAAqE;YACrE,OAAO,CAAC,IAAI,CAAC,mCAAmC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,QAAgB,EAChB,WAAmB;IAEnB,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,OAAO,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,QAAgB,EAChB,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE1D,2BAA2B;IAC3B,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEzC,kBAAkB;IAClB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAEjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,QAAQ;QACR,YAAY;QACZ,IAAI;QACJ,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,IAAY,EACZ,QAAgB;IAEhB,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI,aAAa,GAAkB,IAAI,CAAC;IAExC,0BAA0B;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;QAEhD,gBAAgB;QAChB,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,yBAAyB;QACzB,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACzD,IAAI,cAAc,EAAE,CAAC;YACnB,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,0CAA0C;IAC1C,IAAI,CAAC,aAAa,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACpD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,2CAA2C;QACxE,+BAA+B;QAC/B,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,0CAA0C;QAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QACzE,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,SAAS;QAEhD,4CAA4C;QAC5C,IAAI,aAAa,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACtD,aAAa,GAAG,UAAU,CAAC;YAC3B,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,IAAY,EAAE,KAAoB;IACxD,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,wBAAwB;IACxB,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;IAEjC,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QAExC,yBAAyB;QACzB,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM;YAAE,SAAS;QAC/E,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,SAAS;QAE1C,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE5B,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC;QAErC,sBAAsB;QACtB,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACjF,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CACjB,UAAkB,EAClB,WAAmB,EACnB,KAAoB,EACpB,gBAAwB,EACxB,IAAY;IAEZ,yDAAyD;IACzD,IAAI,SAAS,GAAG,UAAU,CAAC;IAC3B,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,oBAAoB;IACpB,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAEnD,eAAe;IACf,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEtC,0BAA0B;IAC1B,MAAM,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE9D,eAAe;IACf,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IACrE,MAAM,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAElE,OAAO;QACL,UAAU;QACV,SAAS;QACT,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE,EAAE;QACZ,eAAe;QACf,IAAI;QACJ,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE;KACjC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,WAAmB;IACtC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAE1B,IAAI,CAAC;QACH,wBAAwB;QACxB,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,GAAW;IACrC,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,qCAAqC;IACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IAE1B,2BAA2B;IAC3B,MAAM,aAAa,GAAG,mHAAmH,CAAC;IAE1I,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;QAC5B,CAAC;aAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,YAAY,KAAK,MAAM;gBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;iBAC3C,IAAI,YAAY,KAAK,OAAO;gBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;iBAClD,IAAI,YAAY,KAAK,MAAM;gBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;;gBAChD,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;QAC/B,CAAC;aAAM,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,iDAAiD;YACjD,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,eAAe,GAAG,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,WAAmB;IACtC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAE1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QAExC,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,KAAoB,EAAE,UAAkB;IAC/D,MAAM,SAAS,GAAG,KAAK;QACrB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;QAC9D,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,yCAAyC;IACzC,iCAAiC;IACjC,MAAM,QAAQ,GAAG,UAAU;SACxB,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAE,0BAA0B;SAC/D,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAE,4BAA4B;SACjE,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAE,4BAA4B;SACjE,WAAW,EAAE,CAAC;IAEjB,OAAO,GAAG,SAAS,KAAK,QAAQ,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACrC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;SAC3C,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC;SAC1B,IAAI,EAAE,CAAC;IAEV,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEzC,IAAI,SAAS,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;QACnE,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAsB,EACtB,UAA+B;IAE/B,0CAA0C;IAC1C,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,KAAK,CAAC,IAAI,CAAC,aAAa,CAClD,CAAC;QACF,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;IAC5B,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;SAChD,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;IAE/C,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAClF,OAAO,iBAAiB,KAAK,aAAa,CAAC;IAC7C,CAAC,CAAC,CAAC;IACH,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAElC,+BAA+B;IAC/B,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE7D,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,kBAAkB,CAC5C,CAAC;QACF,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC9B,CAAC;IAED,kCAAkC;IAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC9C,OAAO,YAAY,KAAK,QAAQ,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,aAAqB;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,GAAG,IAAI,WAAW,GAAG,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"story-parser.js","sourceRoot":"","sources":["../../src/parsers/story-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrymore/scry-sbcov",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Storybook story coverage analyzer for React component libraries",
5
5
  "bin": {
6
6
  "scry-sbcov": "./bin/scry-sbcov.js"