@storybook/preview-api 7.0.0-alpha.54 → 7.0.0-alpha.55

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.
Files changed (31) hide show
  1. package/dist/{ClientApi-dce2f8f2.d.ts → ClientApi-e986b10e.d.ts} +13 -13
  2. package/dist/{DocsContext-f03e0d93.d.ts → DocsContext-45b5a5b3.d.ts} +47 -37
  3. package/dist/StoryStore-d61f3707.d.ts +109 -0
  4. package/dist/addons.d.ts +2 -2
  5. package/dist/{chunk-OWLSKH4Q.mjs → chunk-DNPROU3W.mjs} +1 -1
  6. package/dist/{chunk-Q5H6OXOG.mjs → chunk-OJACDH5G.mjs} +1 -1
  7. package/dist/{chunk-SVTQV5PN.mjs → chunk-QM3SOF7U.mjs} +1 -1
  8. package/dist/client-api.d.ts +7 -7
  9. package/dist/client-api.js +13 -13
  10. package/dist/client-api.mjs +1 -1
  11. package/dist/composeConfigs-7f62ebf7.d.ts +9 -0
  12. package/dist/core-client.d.ts +4 -4
  13. package/dist/core-client.js +20 -20
  14. package/dist/core-client.mjs +1 -1
  15. package/dist/{hooks-a99e1305.d.ts → hooks-0a0ec0e3.d.ts} +3 -3
  16. package/dist/{hooks-0d0b05c1.d.ts → hooks-dd6bc7a8.d.ts} +0 -0
  17. package/dist/index.d.ts +9 -9
  18. package/dist/index.js +21 -21
  19. package/dist/index.mjs +1 -1
  20. package/dist/preview-web.d.ts +4 -4
  21. package/dist/preview-web.js +15 -15
  22. package/dist/preview-web.mjs +1 -1
  23. package/dist/{queryparams-2acc7490.d.ts → queryparams-d12445b8.d.ts} +0 -0
  24. package/dist/{sortStories-dc945850.d.ts → sortStories-a93f5af2.d.ts} +11 -10
  25. package/dist/{start-3a1ec032.d.ts → start-6a0f43a9.d.ts} +1 -1
  26. package/dist/store.d.ts +5 -5
  27. package/dist/store.js +10 -10
  28. package/dist/{storybook-channel-mock-e42c60b1.d.ts → storybook-channel-mock-a19cd233.d.ts} +0 -0
  29. package/package.json +8 -8
  30. package/dist/StoryStore-8f9ab1c2.d.ts +0 -103
  31. package/dist/composeConfigs-62cfdf58.d.ts +0 -9
@@ -1 +1 @@
1
- import{DocsContext,Preview,PreviewWeb,PreviewWithSelection,simulateDOMContentLoaded,simulatePageLoad}from"./chunk-Q5H6OXOG.mjs";import{composeConfigs}from"./chunk-CMHHF3W3.mjs";import"./chunk-QSH26RWA.mjs";export{DocsContext,Preview,PreviewWeb,PreviewWithSelection,composeConfigs,simulateDOMContentLoaded,simulatePageLoad};
1
+ import{DocsContext,Preview,PreviewWeb,PreviewWithSelection,simulateDOMContentLoaded,simulatePageLoad}from"./chunk-OJACDH5G.mjs";import{composeConfigs}from"./chunk-CMHHF3W3.mjs";import"./chunk-QSH26RWA.mjs";export{DocsContext,Preview,PreviewWeb,PreviewWithSelection,composeConfigs,simulateDOMContentLoaded,simulatePageLoad};
@@ -1,7 +1,7 @@
1
1
  import * as _storybook_types from '@storybook/types';
2
- import { Renderer, StoryId, LegacyStoryAnnotationsOrFn, Store_NormalizedComponentAnnotations, Store_NormalizedStoryAnnotations, StepRunner, ProjectAnnotations, Args, ComponentAnnotations, Store_ComposedStoryPlayFn, Parameters, Store_CSFExports, Store_ComposeStory, StrictArgTypes, Store_PropDescriptor, ArgTypesEnhancer, LegacyStoryFn, DecoratorFunction, PartialStoryFn, StoryContextUpdate, ArgTypes, StoryContext, Store_NormalizedStoriesSpecifierEntry, Addon_IndexEntry, Addon_StorySortParameterV7, Path, Store_Story, Addon_StorySortParameter } from '@storybook/types';
2
+ import { Renderer, StoryId, LegacyStoryAnnotationsOrFn, NormalizedComponentAnnotations, NormalizedStoryAnnotations, StepRunner, ProjectAnnotations, Args, ComponentAnnotations, ComposedStoryPlayFn, Parameters, Store_CSFExports, ComposeStoryFn, StrictArgTypes, ArgTypesEnhancer, LegacyStoryFn, DecoratorFunction, PartialStoryFn, StoryContextUpdate, ArgTypes, StoryContext, NormalizedStoriesSpecifier, IndexEntry, Addon_StorySortParameterV7, Path, PreparedStory, Addon_StorySortParameter } from '@storybook/types';
3
3
 
4
- declare function normalizeStory<TRenderer extends Renderer>(key: StoryId, storyAnnotations: LegacyStoryAnnotationsOrFn<TRenderer>, meta: Store_NormalizedComponentAnnotations<TRenderer>): Store_NormalizedStoryAnnotations<TRenderer>;
4
+ declare function normalizeStory<TRenderer extends Renderer>(key: StoryId, storyAnnotations: LegacyStoryAnnotationsOrFn<TRenderer>, meta: NormalizedComponentAnnotations<TRenderer>): NormalizedStoryAnnotations<TRenderer>;
5
5
 
6
6
  /**
7
7
  * Compose step runners to create a single step runner that applies each step runner in order.
@@ -28,10 +28,10 @@ declare function composeStory<TRenderer extends Renderer = Renderer, TArgs exten
28
28
  (extraArgs: Partial<TArgs>): TRenderer["storyResult"];
29
29
  storyName: string;
30
30
  args: Args;
31
- play: Store_ComposedStoryPlayFn;
31
+ play: ComposedStoryPlayFn;
32
32
  parameters: Parameters;
33
33
  };
34
- declare function composeStories<TModule extends Store_CSFExports>(storiesImport: TModule, globalConfig: ProjectAnnotations<Renderer>, composeStoryFn: Store_ComposeStory): {};
34
+ declare function composeStories<TModule extends Store_CSFExports>(storiesImport: TModule, globalConfig: ProjectAnnotations<Renderer>, composeStoryFn: ComposeStoryFn): {};
35
35
 
36
36
  /**
37
37
  * Safely combine parameters recursively. Only copy objects when needed.
@@ -41,7 +41,8 @@ declare function composeStories<TModule extends Store_CSFExports>(storiesImport:
41
41
  */
42
42
  declare const combineParameters: (...parameterSets: (Parameters | undefined)[]) => Parameters;
43
43
 
44
- declare const filterArgTypes: (argTypes: StrictArgTypes, include?: Store_PropDescriptor, exclude?: Store_PropDescriptor) => StrictArgTypes<_storybook_types.Args>;
44
+ type PropDescriptor = string[] | RegExp;
45
+ declare const filterArgTypes: (argTypes: StrictArgTypes, include?: PropDescriptor, exclude?: PropDescriptor) => StrictArgTypes<_storybook_types.Args>;
45
46
 
46
47
  declare const inferControls: ArgTypesEnhancer<Renderer>;
47
48
 
@@ -65,10 +66,10 @@ declare const NO_TARGET_NAME = "";
65
66
  declare function groupArgsByTarget<TArgs extends Args = Args>({ args, argTypes, }: StoryContext<Renderer, TArgs>): Record<string, Partial<TArgs>>;
66
67
  declare function noTargetArgs<TArgs extends Args = Args>(context: StoryContext<Renderer, TArgs>): Partial<TArgs>;
67
68
 
68
- declare const userOrAutoTitleFromSpecifier: (fileName: string | number, entry: Store_NormalizedStoriesSpecifierEntry, userTitle?: string) => string | undefined;
69
- declare const userOrAutoTitle: (fileName: string, storiesEntries: Store_NormalizedStoriesSpecifierEntry[], userTitle?: string) => string | undefined;
69
+ declare const userOrAutoTitleFromSpecifier: (fileName: string | number, entry: NormalizedStoriesSpecifier, userTitle?: string) => string | undefined;
70
+ declare const userOrAutoTitle: (fileName: string, storiesEntries: NormalizedStoriesSpecifier[], userTitle?: string) => string | undefined;
70
71
 
71
- declare const sortStoriesV7: (stories: Addon_IndexEntry[], storySortParameter: Addon_StorySortParameterV7, fileNameOrder: Path[]) => Addon_IndexEntry[];
72
- declare const sortStoriesV6: (stories: [string, Store_Story, Parameters, Parameters][], storySortParameter: Addon_StorySortParameter, fileNameOrder: Path[]) => Addon_IndexEntry[];
72
+ declare const sortStoriesV7: (stories: IndexEntry[], storySortParameter: Addon_StorySortParameterV7, fileNameOrder: Path[]) => IndexEntry[];
73
+ declare const sortStoriesV6: (stories: [string, PreparedStory, Parameters, Parameters][], storySortParameter: Addon_StorySortParameter, fileNameOrder: Path[]) => IndexEntry[];
73
74
 
74
- export { DEEPLY_EQUAL as D, NO_TARGET_NAME as N, combineParameters as a, composeStepRunners as b, combineArgs as c, composeStories as d, composeStory as e, decorateStory as f, defaultDecorateStory as g, filterArgTypes as h, setProjectAnnotations as i, inferControls as j, sortStoriesV7 as k, deepDiff as l, mapArgsToTypes as m, normalizeStory as n, groupArgsByTarget as o, noTargetArgs as p, userOrAutoTitle as q, sortStoriesV6 as r, sanitizeStoryContextUpdate as s, userOrAutoTitleFromSpecifier as u, validateOptions as v };
75
+ export { DEEPLY_EQUAL as D, NO_TARGET_NAME as N, PropDescriptor as P, combineParameters as a, composeStepRunners as b, combineArgs as c, composeStories as d, composeStory as e, decorateStory as f, defaultDecorateStory as g, filterArgTypes as h, setProjectAnnotations as i, inferControls as j, sortStoriesV7 as k, deepDiff as l, mapArgsToTypes as m, normalizeStory as n, groupArgsByTarget as o, noTargetArgs as p, userOrAutoTitle as q, sortStoriesV6 as r, sanitizeStoryContextUpdate as s, userOrAutoTitleFromSpecifier as u, validateOptions as v };
@@ -1,5 +1,5 @@
1
1
  import { Renderer, ProjectAnnotations, ArgsStoryFn } from '@storybook/types';
2
- import { C as ClientApi } from './ClientApi-dce2f8f2.js';
2
+ import { C as ClientApi } from './ClientApi-e986b10e.js';
3
3
 
4
4
  interface CoreClient_RendererImplementation<TRenderer extends Renderer> {
5
5
  decorateStory?: ProjectAnnotations<TRenderer>['applyDecorators'];
package/dist/store.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- export { S as StoryStore, p as prepareStory, a as processCSFFile } from './StoryStore-8f9ab1c2.js';
2
- export { D as DEEPLY_EQUAL, N as NO_TARGET_NAME, c as combineArgs, a as combineParameters, b as composeStepRunners, d as composeStories, e as composeStory, f as decorateStory, l as deepDiff, g as defaultDecorateStory, h as filterArgTypes, o as groupArgsByTarget, j as inferControls, m as mapArgsToTypes, p as noTargetArgs, n as normalizeStory, s as sanitizeStoryContextUpdate, i as setProjectAnnotations, r as sortStoriesV6, k as sortStoriesV7, q as userOrAutoTitle, u as userOrAutoTitleFromSpecifier, v as validateOptions } from './sortStories-dc945850.js';
3
- export { g as getValuesFromArgTypes, b as normalizeComponentAnnotations, n as normalizeInputType, a as normalizeInputTypes, c as normalizeProjectAnnotations, d as useAddonState, u as useSharedState } from './hooks-a99e1305.js';
4
- export { c as composeConfigs, a as getArrayField, g as getField, b as getObjectField, d as getSingletonField } from './composeConfigs-62cfdf58.js';
5
- export { H as HooksContext, k as applyHooks, u as useArgs, a as useCallback, b as useChannel, c as useEffect, d as useGlobals, e as useMemo, f as useParameter, g as useReducer, h as useRef, i as useState, j as useStoryContext } from './hooks-0d0b05c1.js';
1
+ export { S as StoryStore, p as prepareStory, b as processCSFFile } from './StoryStore-d61f3707.js';
2
+ export { D as DEEPLY_EQUAL, N as NO_TARGET_NAME, P as PropDescriptor, c as combineArgs, a as combineParameters, b as composeStepRunners, d as composeStories, e as composeStory, f as decorateStory, l as deepDiff, g as defaultDecorateStory, h as filterArgTypes, o as groupArgsByTarget, j as inferControls, m as mapArgsToTypes, p as noTargetArgs, n as normalizeStory, s as sanitizeStoryContextUpdate, i as setProjectAnnotations, r as sortStoriesV6, k as sortStoriesV7, q as userOrAutoTitle, u as userOrAutoTitleFromSpecifier, v as validateOptions } from './sortStories-a93f5af2.js';
3
+ export { g as getValuesFromArgTypes, b as normalizeComponentAnnotations, n as normalizeInputType, a as normalizeInputTypes, c as normalizeProjectAnnotations, d as useAddonState, u as useSharedState } from './hooks-0a0ec0e3.js';
4
+ export { c as composeConfigs, a as getArrayField, g as getField, b as getObjectField, d as getSingletonField } from './composeConfigs-7f62ebf7.js';
5
+ export { H as HooksContext, k as applyHooks, u as useArgs, a as useCallback, b as useChannel, c as useEffect, d as useGlobals, e as useMemo, f as useParameter, g as useReducer, h as useRef, i as useState, j as useStoryContext } from './hooks-dd6bc7a8.js';
6
6
  import '@storybook/types';
7
7
  import 'synchronous-promise';
package/dist/store.js CHANGED
@@ -1,36 +1,36 @@
1
- "use strict";var Vr=Object.create;var Q=Object.defineProperty;var Ur=Object.getOwnPropertyDescriptor;var Wr=Object.getOwnPropertyNames;var Yr=Object.getPrototypeOf,Kr=Object.prototype.hasOwnProperty;var Jr=(r,e)=>{for(var t in e)Q(r,t,{get:e[t],enumerable:!0})},Ve=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Wr(e))!Kr.call(r,n)&&n!==t&&Q(r,n,{get:()=>e[n],enumerable:!(o=Ur(e,n))||o.enumerable});return r};var u=(r,e,t)=>(t=r!=null?Vr(Yr(r)):{},Ve(e||!r||!r.__esModule?Q(t,"default",{value:r,enumerable:!0}):t,r)),qr=r=>Ve(Q({},"__esModule",{value:!0}),r);var Ct={};Jr(Ct,{DEEPLY_EQUAL:()=>F,HooksContext:()=>R,NO_TARGET_NAME:()=>$,StoryStore:()=>ue,applyHooks:()=>ee,combineArgs:()=>G,combineParameters:()=>S,composeConfigs:()=>je,composeStepRunners:()=>Ne,composeStories:()=>ft,composeStory:()=>mt,decorateStory:()=>mr,deepDiff:()=>P,defaultDecorateStory:()=>we,filterArgTypes:()=>pe,getArrayField:()=>J,getField:()=>N,getObjectField:()=>q,getSingletonField:()=>X,getValuesFromArgTypes:()=>I,groupArgsByTarget:()=>se,inferControls:()=>Y,mapArgsToTypes:()=>Ee,noTargetArgs:()=>ot,normalizeComponentAnnotations:()=>U,normalizeInputType:()=>ar,normalizeInputTypes:()=>C,normalizeProjectAnnotations:()=>K,normalizeStory:()=>V,prepareStory:()=>W,processCSFFile:()=>Ie,sanitizeStoryContextUpdate:()=>fr,setProjectAnnotations:()=>ut,sortStoriesV6:()=>Ft,sortStoriesV7:()=>Rt,useAddonState:()=>ht,useArgs:()=>er,useCallback:()=>k,useChannel:()=>Re,useEffect:()=>te,useGlobals:()=>rr,useMemo:()=>be,useParameter:()=>Ze,useReducer:()=>Qe,useRef:()=>qe,useSharedState:()=>Pr,useState:()=>xe,useStoryContext:()=>B,userOrAutoTitle:()=>xt,userOrAutoTitleFromSpecifier:()=>kr,validateOptions:()=>_e});module.exports=qr(Ct);var De=u(require("memoizerific")),_r=u(require("lodash/mapValues")),ze=u(require("lodash/pick")),ye=require("synchronous-promise");var Z=u(require("global"));var Ue=require("@storybook/channels");function We(){let r={setHandler:()=>{},send:()=>{}};return new Ue.Channel({transport:r})}var ge=class{constructor(){this.getChannel=()=>{if(!this.channel){let e=We();return this.setChannel(e),e}return this.channel};this.getServerChannel=()=>{if(!this.serverChannel)throw new Error("Accessing non-existent serverChannel");return this.serverChannel};this.ready=()=>this.promise;this.hasChannel=()=>!!this.channel;this.hasServerChannel=()=>!!this.serverChannel;this.setChannel=e=>{this.channel=e,this.resolve()};this.setServerChannel=e=>{this.serverChannel=e};this.promise=new Promise(e=>{this.resolve=()=>e(this.getChannel())})}},Se="__STORYBOOK_ADDONS_PREVIEW";function Xr(){return Z.default[Se]||(Z.default[Se]=new ge),Z.default[Se]}var b=Xr();var L=u(require("global")),O=require("@storybook/client-logger"),T=require("@storybook/core-events");var R=class{constructor(){this.hookListsMap=void 0;this.mountedDecorators=void 0;this.prevMountedDecorators=void 0;this.currentHooks=void 0;this.nextHookIndex=void 0;this.currentPhase=void 0;this.currentEffects=void 0;this.prevEffects=void 0;this.currentDecoratorName=void 0;this.hasUpdates=void 0;this.currentContext=void 0;this.renderListener=e=>{var t;e===((t=this.currentContext)==null?void 0:t.id)&&(this.triggerEffects(),this.currentContext=null,this.removeRenderListeners())};this.init()}init(){this.hookListsMap=new WeakMap,this.mountedDecorators=new Set,this.prevMountedDecorators=this.mountedDecorators,this.currentHooks=[],this.nextHookIndex=0,this.currentPhase="NONE",this.currentEffects=[],this.prevEffects=[],this.currentDecoratorName=null,this.hasUpdates=!1,this.currentContext=null}clean(){this.prevEffects.forEach(e=>{e.destroy&&e.destroy()}),this.init(),this.removeRenderListeners()}getNextHook(){let e=this.currentHooks[this.nextHookIndex];return this.nextHookIndex+=1,e}triggerEffects(){this.prevEffects.forEach(e=>{!this.currentEffects.includes(e)&&e.destroy&&e.destroy()}),this.currentEffects.forEach(e=>{this.prevEffects.includes(e)||(e.destroy=e.create())}),this.prevEffects=this.currentEffects,this.currentEffects=[]}addRenderListeners(){this.removeRenderListeners(),b.getChannel().on(T.STORY_RENDERED,this.renderListener)}removeRenderListeners(){b.getChannel().removeListener(T.STORY_RENDERED,this.renderListener)}};function Ye(r){return(...e)=>{let{hooks:t}=typeof e[0]=="function"?e[1]:e[0],o=t.currentPhase,n=t.currentHooks,s=t.nextHookIndex,i=t.currentDecoratorName;t.currentDecoratorName=r.name,t.prevMountedDecorators.has(r)?(t.currentPhase="UPDATE",t.currentHooks=t.hookListsMap.get(r)||[]):(t.currentPhase="MOUNT",t.currentHooks=[],t.hookListsMap.set(r,t.currentHooks),t.prevMountedDecorators.add(r)),t.nextHookIndex=0;let d=L.default.STORYBOOK_HOOKS_CONTEXT;L.default.STORYBOOK_HOOKS_CONTEXT=t;let a=r(...e);if(L.default.STORYBOOK_HOOKS_CONTEXT=d,t.currentPhase==="UPDATE"&&t.getNextHook()!=null)throw new Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");return t.currentPhase=o,t.currentHooks=n,t.nextHookIndex=s,t.currentDecoratorName=i,a}}var he=0,Qr=25,ee=r=>(e,t)=>{let o=r(Ye(e),t.map(n=>Ye(n)));return n=>{let{hooks:s}=n;s.prevMountedDecorators=s.mountedDecorators,s.mountedDecorators=new Set([e,...t]),s.currentContext=n,s.hasUpdates=!1;let i=o(n);for(he=1;s.hasUpdates;)if(s.hasUpdates=!1,s.currentEffects=[],i=o(n),he+=1,he>Qr)throw new Error("Too many re-renders. Storybook limits the number of renders to prevent an infinite loop.");return s.addRenderListeners(),i}},Zr=(r,e)=>r.length===e.length&&r.every((t,o)=>t===e[o]),Te=()=>new Error("Storybook preview hooks can only be called inside decorators and story functions.");function Ke(){return L.default.STORYBOOK_HOOKS_CONTEXT||null}function Ae(){let r=Ke();if(r==null)throw Te();return r}function et(r,e,t){let o=Ae();if(o.currentPhase==="MOUNT"){t!=null&&!Array.isArray(t)&&O.logger.warn(`${r} received a final argument that is not an array (instead, received ${t}). When specified, the final argument must be an array.`);let n={name:r,deps:t};return o.currentHooks.push(n),e(n),n}if(o.currentPhase==="UPDATE"){let n=o.getNextHook();if(n==null)throw new Error("Rendered more hooks than during the previous render.");return n.name!==r&&O.logger.warn(`Storybook has detected a change in the order of Hooks${o.currentDecoratorName?` called by ${o.currentDecoratorName}`:""}. This will lead to bugs and errors if not fixed.`),t!=null&&n.deps==null&&O.logger.warn(`${r} received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.`),t!=null&&n.deps!=null&&t.length!==n.deps.length&&O.logger.warn(`The final argument passed to ${r} changed size between renders. The order and size of this array must remain constant.
1
+ "use strict";var Vr=Object.create;var Q=Object.defineProperty;var Ur=Object.getOwnPropertyDescriptor;var Wr=Object.getOwnPropertyNames;var Yr=Object.getPrototypeOf,Kr=Object.prototype.hasOwnProperty;var Jr=(r,e)=>{for(var t in e)Q(r,t,{get:e[t],enumerable:!0})},Ve=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Wr(e))!Kr.call(r,n)&&n!==t&&Q(r,n,{get:()=>e[n],enumerable:!(o=Ur(e,n))||o.enumerable});return r};var u=(r,e,t)=>(t=r!=null?Vr(Yr(r)):{},Ve(e||!r||!r.__esModule?Q(t,"default",{value:r,enumerable:!0}):t,r)),qr=r=>Ve(Q({},"__esModule",{value:!0}),r);var Ct={};Jr(Ct,{DEEPLY_EQUAL:()=>F,HooksContext:()=>R,NO_TARGET_NAME:()=>$,StoryStore:()=>ue,applyHooks:()=>ee,combineArgs:()=>G,combineParameters:()=>g,composeConfigs:()=>De,composeStepRunners:()=>je,composeStories:()=>ft,composeStory:()=>mt,decorateStory:()=>mr,deepDiff:()=>I,defaultDecorateStory:()=>Oe,filterArgTypes:()=>pe,getArrayField:()=>J,getField:()=>j,getObjectField:()=>q,getSingletonField:()=>X,getValuesFromArgTypes:()=>w,groupArgsByTarget:()=>se,inferControls:()=>Y,mapArgsToTypes:()=>Ee,noTargetArgs:()=>ot,normalizeComponentAnnotations:()=>U,normalizeInputType:()=>ar,normalizeInputTypes:()=>C,normalizeProjectAnnotations:()=>K,normalizeStory:()=>V,prepareStory:()=>W,processCSFFile:()=>we,sanitizeStoryContextUpdate:()=>fr,setProjectAnnotations:()=>ut,sortStoriesV6:()=>Ft,sortStoriesV7:()=>Rt,useAddonState:()=>St,useArgs:()=>er,useCallback:()=>v,useChannel:()=>Re,useEffect:()=>te,useGlobals:()=>rr,useMemo:()=>be,useParameter:()=>Ze,useReducer:()=>Qe,useRef:()=>qe,useSharedState:()=>Ir,useState:()=>xe,useStoryContext:()=>H,userOrAutoTitle:()=>xt,userOrAutoTitleFromSpecifier:()=>vr,validateOptions:()=>Pe});module.exports=qr(Ct);var _e=u(require("memoizerific")),Pr=u(require("lodash/mapValues")),ze=u(require("lodash/pick")),ye=require("synchronous-promise");var Z=u(require("global"));var Ue=require("@storybook/channels");function We(){let r={setHandler:()=>{},send:()=>{}};return new Ue.Channel({transport:r})}var he=class{constructor(){this.getChannel=()=>{if(!this.channel){let e=We();return this.setChannel(e),e}return this.channel};this.getServerChannel=()=>{if(!this.serverChannel)throw new Error("Accessing non-existent serverChannel");return this.serverChannel};this.ready=()=>this.promise;this.hasChannel=()=>!!this.channel;this.hasServerChannel=()=>!!this.serverChannel;this.setChannel=e=>{this.channel=e,this.resolve()};this.setServerChannel=e=>{this.serverChannel=e};this.promise=new Promise(e=>{this.resolve=()=>e(this.getChannel())})}},ge="__STORYBOOK_ADDONS_PREVIEW";function Xr(){return Z.default[ge]||(Z.default[ge]=new he),Z.default[ge]}var b=Xr();var B=u(require("global")),k=require("@storybook/client-logger"),T=require("@storybook/core-events");var R=class{constructor(){this.hookListsMap=void 0;this.mountedDecorators=void 0;this.prevMountedDecorators=void 0;this.currentHooks=void 0;this.nextHookIndex=void 0;this.currentPhase=void 0;this.currentEffects=void 0;this.prevEffects=void 0;this.currentDecoratorName=void 0;this.hasUpdates=void 0;this.currentContext=void 0;this.renderListener=e=>{var t;e===((t=this.currentContext)==null?void 0:t.id)&&(this.triggerEffects(),this.currentContext=null,this.removeRenderListeners())};this.init()}init(){this.hookListsMap=new WeakMap,this.mountedDecorators=new Set,this.prevMountedDecorators=this.mountedDecorators,this.currentHooks=[],this.nextHookIndex=0,this.currentPhase="NONE",this.currentEffects=[],this.prevEffects=[],this.currentDecoratorName=null,this.hasUpdates=!1,this.currentContext=null}clean(){this.prevEffects.forEach(e=>{e.destroy&&e.destroy()}),this.init(),this.removeRenderListeners()}getNextHook(){let e=this.currentHooks[this.nextHookIndex];return this.nextHookIndex+=1,e}triggerEffects(){this.prevEffects.forEach(e=>{!this.currentEffects.includes(e)&&e.destroy&&e.destroy()}),this.currentEffects.forEach(e=>{this.prevEffects.includes(e)||(e.destroy=e.create())}),this.prevEffects=this.currentEffects,this.currentEffects=[]}addRenderListeners(){this.removeRenderListeners(),b.getChannel().on(T.STORY_RENDERED,this.renderListener)}removeRenderListeners(){b.getChannel().removeListener(T.STORY_RENDERED,this.renderListener)}};function Ye(r){return(...e)=>{let{hooks:t}=typeof e[0]=="function"?e[1]:e[0],o=t.currentPhase,n=t.currentHooks,s=t.nextHookIndex,i=t.currentDecoratorName;t.currentDecoratorName=r.name,t.prevMountedDecorators.has(r)?(t.currentPhase="UPDATE",t.currentHooks=t.hookListsMap.get(r)||[]):(t.currentPhase="MOUNT",t.currentHooks=[],t.hookListsMap.set(r,t.currentHooks),t.prevMountedDecorators.add(r)),t.nextHookIndex=0;let d=B.default.STORYBOOK_HOOKS_CONTEXT;B.default.STORYBOOK_HOOKS_CONTEXT=t;let a=r(...e);if(B.default.STORYBOOK_HOOKS_CONTEXT=d,t.currentPhase==="UPDATE"&&t.getNextHook()!=null)throw new Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");return t.currentPhase=o,t.currentHooks=n,t.nextHookIndex=s,t.currentDecoratorName=i,a}}var Se=0,Qr=25,ee=r=>(e,t)=>{let o=r(Ye(e),t.map(n=>Ye(n)));return n=>{let{hooks:s}=n;s.prevMountedDecorators=s.mountedDecorators,s.mountedDecorators=new Set([e,...t]),s.currentContext=n,s.hasUpdates=!1;let i=o(n);for(Se=1;s.hasUpdates;)if(s.hasUpdates=!1,s.currentEffects=[],i=o(n),Se+=1,Se>Qr)throw new Error("Too many re-renders. Storybook limits the number of renders to prevent an infinite loop.");return s.addRenderListeners(),i}},Zr=(r,e)=>r.length===e.length&&r.every((t,o)=>t===e[o]),Te=()=>new Error("Storybook preview hooks can only be called inside decorators and story functions.");function Ke(){return B.default.STORYBOOK_HOOKS_CONTEXT||null}function Ae(){let r=Ke();if(r==null)throw Te();return r}function et(r,e,t){let o=Ae();if(o.currentPhase==="MOUNT"){t!=null&&!Array.isArray(t)&&k.logger.warn(`${r} received a final argument that is not an array (instead, received ${t}). When specified, the final argument must be an array.`);let n={name:r,deps:t};return o.currentHooks.push(n),e(n),n}if(o.currentPhase==="UPDATE"){let n=o.getNextHook();if(n==null)throw new Error("Rendered more hooks than during the previous render.");return n.name!==r&&k.logger.warn(`Storybook has detected a change in the order of Hooks${o.currentDecoratorName?` called by ${o.currentDecoratorName}`:""}. This will lead to bugs and errors if not fixed.`),t!=null&&n.deps==null&&k.logger.warn(`${r} received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.`),t!=null&&n.deps!=null&&t.length!==n.deps.length&&k.logger.warn(`The final argument passed to ${r} changed size between renders. The order and size of this array must remain constant.
2
2
  Previous: ${n.deps}
3
- Incoming: ${t}`),(t==null||n.deps==null||!Zr(t,n.deps))&&(e(n),n.deps=t),n}throw Te()}function re(r,e,t){let{memoizedState:o}=et(r,n=>{n.memoizedState=e()},t);return o}function be(r,e){return re("useMemo",r,e)}function k(r,e){return re("useCallback",()=>r,e)}function Je(r,e){return re(r,()=>({current:e}),[])}function qe(r){return Je("useRef",r)}function rt(){let r=Ke();if(r!=null&&r.currentPhase!=="NONE")r.hasUpdates=!0;else try{b.getChannel().emit(T.FORCE_RE_RENDER)}catch{O.logger.warn("State updates of Storybook preview hooks work only in browser")}}function Xe(r,e){let t=Je(r,typeof e=="function"?e():e),o=n=>{t.current=typeof n=="function"?n(t.current):n,rt()};return[t.current,o]}function xe(r){return Xe("useState",r)}function Qe(r,e,t){let o=t!=null?()=>t(e):e,[n,s]=Xe("useReducer",o);return[n,d=>s(a=>r(a,d))]}function te(r,e){let t=Ae(),o=re("useEffect",()=>({create:r}),e);t.currentEffects.includes(o)||t.currentEffects.push(o)}function Re(r,e=[]){let t=b.getChannel();return te(()=>(Object.entries(r).forEach(([o,n])=>t.on(o,n)),()=>{Object.entries(r).forEach(([o,n])=>t.removeListener(o,n))}),[...Object.keys(r),...e]),k(t.emit.bind(t),[t])}function B(){let{currentContext:r}=Ae();if(r==null)throw Te();return r}function Ze(r,e){let{parameters:t}=B();if(r)return t[r]??e}function er(){let r=b.getChannel(),{id:e,args:t}=B(),o=k(s=>r.emit(T.UPDATE_STORY_ARGS,{storyId:e,updatedArgs:s}),[r,e]),n=k(s=>r.emit(T.RESET_STORY_ARGS,{storyId:e,argNames:s}),[r,e]);return[t,o,n]}function rr(){let r=b.getChannel(),{globals:e}=B(),t=k(o=>r.emit(T.UPDATE_GLOBALS,{globals:o}),[r]);return[e,t]}var tr=require("ts-dedent"),or=u(require("memoizerific")),tt=(0,or.default)(1)(r=>Object.values(r).reduce((e,t)=>(e[t.importPath]=e[t.importPath]||t,e),{})),oe=class{constructor({entries:e}={v:4,entries:{}}){this.entries=e}entryFromSpecifier(e){let t=Object.values(this.entries);if(e==="*")return t[0];if(typeof e=="string")return this.entries[e]?this.entries[e]:t.find(s=>s.id.startsWith(e));let{name:o,title:n}=e;return t.find(s=>s.name===o&&s.title===n)}storyIdToEntry(e){let t=this.entries[e];if(!t)throw new Error(tr.dedent`Couldn't find story matching '${e}' after HMR.
3
+ Incoming: ${t}`),(t==null||n.deps==null||!Zr(t,n.deps))&&(e(n),n.deps=t),n}throw Te()}function re(r,e,t){let{memoizedState:o}=et(r,n=>{n.memoizedState=e()},t);return o}function be(r,e){return re("useMemo",r,e)}function v(r,e){return re("useCallback",()=>r,e)}function Je(r,e){return re(r,()=>({current:e}),[])}function qe(r){return Je("useRef",r)}function rt(){let r=Ke();if(r!=null&&r.currentPhase!=="NONE")r.hasUpdates=!0;else try{b.getChannel().emit(T.FORCE_RE_RENDER)}catch{k.logger.warn("State updates of Storybook preview hooks work only in browser")}}function Xe(r,e){let t=Je(r,typeof e=="function"?e():e),o=n=>{t.current=typeof n=="function"?n(t.current):n,rt()};return[t.current,o]}function xe(r){return Xe("useState",r)}function Qe(r,e,t){let o=t!=null?()=>t(e):e,[n,s]=Xe("useReducer",o);return[n,d=>s(a=>r(a,d))]}function te(r,e){let t=Ae(),o=re("useEffect",()=>({create:r}),e);t.currentEffects.includes(o)||t.currentEffects.push(o)}function Re(r,e=[]){let t=b.getChannel();return te(()=>(Object.entries(r).forEach(([o,n])=>t.on(o,n)),()=>{Object.entries(r).forEach(([o,n])=>t.removeListener(o,n))}),[...Object.keys(r),...e]),v(t.emit.bind(t),[t])}function H(){let{currentContext:r}=Ae();if(r==null)throw Te();return r}function Ze(r,e){let{parameters:t}=H();if(r)return t[r]??e}function er(){let r=b.getChannel(),{id:e,args:t}=H(),o=v(s=>r.emit(T.UPDATE_STORY_ARGS,{storyId:e,updatedArgs:s}),[r,e]),n=v(s=>r.emit(T.RESET_STORY_ARGS,{storyId:e,argNames:s}),[r,e]);return[t,o,n]}function rr(){let r=b.getChannel(),{globals:e}=H(),t=v(o=>r.emit(T.UPDATE_GLOBALS,{globals:o}),[r]);return[e,t]}var tr=require("ts-dedent"),or=u(require("memoizerific")),tt=(0,or.default)(1)(r=>Object.values(r).reduce((e,t)=>(e[t.importPath]=e[t.importPath]||t,e),{})),oe=class{constructor({entries:e}={v:4,entries:{}}){this.entries=e}entryFromSpecifier(e){let t=Object.values(this.entries);if(e==="*")return t[0];if(typeof e=="string")return this.entries[e]?this.entries[e]:t.find(s=>s.id.startsWith(e));let{name:o,title:n}=e;return t.find(s=>s.name===o&&s.title===n)}storyIdToEntry(e){let t=this.entries[e];if(!t)throw new Error(tr.dedent`Couldn't find story matching '${e}' after HMR.
4
4
  - Did you remove it from your CSF file?
5
5
  - Are you sure a story with that id exists?
6
6
  - Please check your entries field of your main.js config.
7
- - Also check the browser console and terminal for error messages.`);return t}importPathToEntry(e){return tt(this.entries)[e]}};var nr=require("dequal"),ne=require("@storybook/client-logger"),H=u(require("lodash/isPlainObject")),Fe=require("ts-dedent"),v=Symbol("incompatible"),Ce=(r,e)=>{let t=e.type;if(r==null||!t||e.mapping)return r;switch(t.name){case"string":return String(r);case"enum":return r;case"number":return Number(r);case"boolean":return r==="true";case"array":return!t.value||!Array.isArray(r)?v:r.reduce((o,n,s)=>{let i=Ce(n,{type:t.value});return i!==v&&(o[s]=i),o},new Array(r.length));case"object":return typeof r=="string"||typeof r=="number"?r:!t.value||typeof r!="object"?v:Object.entries(r).reduce((o,[n,s])=>{let i=Ce(s,{type:t.value[n]});return i===v?o:Object.assign(o,{[n]:i})},{});default:return v}},Ee=(r,e)=>Object.entries(r).reduce((t,[o,n])=>{if(!e[o])return t;let s=Ce(n,e[o]);return s===v?t:Object.assign(t,{[o]:s})},{}),G=(r,e)=>Array.isArray(r)&&Array.isArray(e)?e.reduce((t,o,n)=>(t[n]=G(r[n],e[n]),t),[...r]).filter(t=>t!==void 0):!(0,H.default)(r)||!(0,H.default)(e)?e:Object.keys({...r,...e}).reduce((t,o)=>{if(o in e){let n=G(r[o],e[o]);n!==void 0&&(t[o]=n)}else t[o]=r[o];return t},{}),_e=(r,e)=>Object.entries(e).reduce((t,[o,{options:n}])=>{function s(){return o in r&&(t[o]=r[o]),t}if(!n)return s();if(!Array.isArray(n))return ne.once.error(Fe.dedent`
7
+ - Also check the browser console and terminal for error messages.`);return t}importPathToEntry(e){return tt(this.entries)[e]}};var nr=require("dequal"),ne=require("@storybook/client-logger"),L=u(require("lodash/isPlainObject")),Fe=require("ts-dedent"),N=Symbol("incompatible"),Ce=(r,e)=>{let t=e.type;if(r==null||!t||e.mapping)return r;switch(t.name){case"string":return String(r);case"enum":return r;case"number":return Number(r);case"boolean":return r==="true";case"array":return!t.value||!Array.isArray(r)?N:r.reduce((o,n,s)=>{let i=Ce(n,{type:t.value});return i!==N&&(o[s]=i),o},new Array(r.length));case"object":return typeof r=="string"||typeof r=="number"?r:!t.value||typeof r!="object"?N:Object.entries(r).reduce((o,[n,s])=>{let i=Ce(s,{type:t.value[n]});return i===N?o:Object.assign(o,{[n]:i})},{});default:return N}},Ee=(r,e)=>Object.entries(r).reduce((t,[o,n])=>{if(!e[o])return t;let s=Ce(n,e[o]);return s===N?t:Object.assign(t,{[o]:s})},{}),G=(r,e)=>Array.isArray(r)&&Array.isArray(e)?e.reduce((t,o,n)=>(t[n]=G(r[n],e[n]),t),[...r]).filter(t=>t!==void 0):!(0,L.default)(r)||!(0,L.default)(e)?e:Object.keys({...r,...e}).reduce((t,o)=>{if(o in e){let n=G(r[o],e[o]);n!==void 0&&(t[o]=n)}else t[o]=r[o];return t},{}),Pe=(r,e)=>Object.entries(e).reduce((t,[o,{options:n}])=>{function s(){return o in r&&(t[o]=r[o]),t}if(!n)return s();if(!Array.isArray(n))return ne.once.error(Fe.dedent`
8
8
  Invalid argType: '${o}.options' should be an array.
9
9
 
10
10
  More info: https://storybook.js.org/docs/react/api/argtypes
11
- `),s();if(n.some(l=>l&&["object","function"].includes(typeof l)))return ne.once.error(Fe.dedent`
11
+ `),s();if(n.some(c=>c&&["object","function"].includes(typeof c)))return ne.once.error(Fe.dedent`
12
12
  Invalid argType: '${o}.options' should only contain primitives. Use a 'mapping' for complex values.
13
13
 
14
14
  More info: https://storybook.js.org/docs/react/writing-stories/args#mapping-to-complex-arg-values
15
- `),s();let i=Array.isArray(r[o]),d=i&&r[o].findIndex(l=>!n.includes(l)),a=i&&d===-1;if(r[o]===void 0||n.includes(r[o])||a)return s();let c=i?`${o}[${d}]`:o,y=n.map(l=>typeof l=="string"?`'${l}'`:String(l)).join(", ");return ne.once.warn(`Received illegal value for '${c}'. Supported options: ${y}`),t},{}),F=Symbol("Deeply equal"),P=(r,e)=>{if(typeof r!=typeof e)return e;if((0,nr.dequal)(r,e))return F;if(Array.isArray(r)&&Array.isArray(e)){let t=e.reduce((o,n,s)=>{let i=P(r[s],n);return i!==F&&(o[s]=i),o},new Array(e.length));return e.length>=r.length?t:t.concat(new Array(r.length-e.length).fill(void 0))}return(0,H.default)(r)&&(0,H.default)(e)?Object.keys({...r,...e}).reduce((t,o)=>{let n=P(r==null?void 0:r[o],e==null?void 0:e[o]);return n===F?t:Object.assign(t,{[o]:n})},{}):e},$="";function se({args:r,argTypes:e}){let t={};return Object.entries(r).forEach(([o,n])=>{let{target:s=$}=e[o]||{};t[s]=t[s]||{},t[s][o]=n}),t}function ot(r){return se(r)[$]}function nt(r){return Object.keys(r).forEach(e=>r[e]===void 0&&delete r[e]),r}var ie=class{constructor(){this.initialArgsByStoryId={};this.argsByStoryId={}}get(e){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);return this.argsByStoryId[e]}setInitial(e){if(!this.initialArgsByStoryId[e.id])this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs;else if(this.initialArgsByStoryId[e.id]!==e.initialArgs){let t=P(this.initialArgsByStoryId[e.id],this.argsByStoryId[e.id]);this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs,t!==F&&this.updateFromDelta(e,t)}}updateFromDelta(e,t){let o=_e(t,e.argTypes);this.argsByStoryId[e.id]=G(this.argsByStoryId[e.id],o)}updateFromPersisted(e,t){let o=Ee(t,e.argTypes);return this.updateFromDelta(e,o)}update(e,t){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);this.argsByStoryId[e]=nt({...this.argsByStoryId[e],...t})}};var sr=require("@storybook/client-logger");var I=(r={})=>Object.entries(r).reduce((e,[t,{defaultValue:o}])=>(typeof o<"u"&&(e[t]=o),e),{});var ae=class{constructor({globals:e={},globalTypes:t={}}){this.set({globals:e,globalTypes:t})}set({globals:e={},globalTypes:t={}}){let o=this.initialGlobals&&P(this.initialGlobals,this.globals);this.allowedGlobalNames=new Set([...Object.keys(e),...Object.keys(t)]);let n=I(t);this.initialGlobals={...n,...e},this.globals=this.initialGlobals,o&&o!==F&&this.updateFromPersisted(o)}filterAllowedGlobals(e){return Object.entries(e).reduce((t,[o,n])=>(this.allowedGlobalNames.has(o)?t[o]=n:sr.logger.warn(`Attempted to set a global (${o}) that is not defined in initial globals or globalTypes`),t),{})}updateFromPersisted(e){let t=this.filterAllowedGlobals(e);this.globals={...this.globals,...t}}get(){return this.globals}update(e){this.globals={...this.globals,...this.filterAllowedGlobals(e)}}};var ir=u(require("lodash/mapValues")),st=r=>typeof r=="string"?{name:r}:r,it=r=>typeof r=="string"?{type:r}:r,ar=(r,e)=>{let{type:t,control:o,...n}=r,s={name:e,...n};return t&&(s.type=st(t)),o?s.control=it(o):o===!1&&(s.control={disable:!0}),s},C=r=>(0,ir.default)(r,ar);var de=require("@storybook/csf"),dr=require("ts-dedent"),cr=require("@storybook/client-logger"),lr=u(require("util-deprecate"));var at=dr.dedent`
15
+ `),s();let i=Array.isArray(r[o]),d=i&&r[o].findIndex(c=>!n.includes(c)),a=i&&d===-1;if(r[o]===void 0||n.includes(r[o])||a)return s();let l=i?`${o}[${d}]`:o,y=n.map(c=>typeof c=="string"?`'${c}'`:String(c)).join(", ");return ne.once.warn(`Received illegal value for '${l}'. Supported options: ${y}`),t},{}),F=Symbol("Deeply equal"),I=(r,e)=>{if(typeof r!=typeof e)return e;if((0,nr.dequal)(r,e))return F;if(Array.isArray(r)&&Array.isArray(e)){let t=e.reduce((o,n,s)=>{let i=I(r[s],n);return i!==F&&(o[s]=i),o},new Array(e.length));return e.length>=r.length?t:t.concat(new Array(r.length-e.length).fill(void 0))}return(0,L.default)(r)&&(0,L.default)(e)?Object.keys({...r,...e}).reduce((t,o)=>{let n=I(r==null?void 0:r[o],e==null?void 0:e[o]);return n===F?t:Object.assign(t,{[o]:n})},{}):e},$="";function se({args:r,argTypes:e}){let t={};return Object.entries(r).forEach(([o,n])=>{let{target:s=$}=e[o]||{};t[s]=t[s]||{},t[s][o]=n}),t}function ot(r){return se(r)[$]}function nt(r){return Object.keys(r).forEach(e=>r[e]===void 0&&delete r[e]),r}var ie=class{constructor(){this.initialArgsByStoryId={};this.argsByStoryId={}}get(e){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);return this.argsByStoryId[e]}setInitial(e){if(!this.initialArgsByStoryId[e.id])this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs;else if(this.initialArgsByStoryId[e.id]!==e.initialArgs){let t=I(this.initialArgsByStoryId[e.id],this.argsByStoryId[e.id]);this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs,t!==F&&this.updateFromDelta(e,t)}}updateFromDelta(e,t){let o=Pe(t,e.argTypes);this.argsByStoryId[e.id]=G(this.argsByStoryId[e.id],o)}updateFromPersisted(e,t){let o=Ee(t,e.argTypes);return this.updateFromDelta(e,o)}update(e,t){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);this.argsByStoryId[e]=nt({...this.argsByStoryId[e],...t})}};var sr=require("@storybook/client-logger");var w=(r={})=>Object.entries(r).reduce((e,[t,{defaultValue:o}])=>(typeof o<"u"&&(e[t]=o),e),{});var ae=class{constructor({globals:e={},globalTypes:t={}}){this.set({globals:e,globalTypes:t})}set({globals:e={},globalTypes:t={}}){let o=this.initialGlobals&&I(this.initialGlobals,this.globals);this.allowedGlobalNames=new Set([...Object.keys(e),...Object.keys(t)]);let n=w(t);this.initialGlobals={...n,...e},this.globals=this.initialGlobals,o&&o!==F&&this.updateFromPersisted(o)}filterAllowedGlobals(e){return Object.entries(e).reduce((t,[o,n])=>(this.allowedGlobalNames.has(o)?t[o]=n:sr.logger.warn(`Attempted to set a global (${o}) that is not defined in initial globals or globalTypes`),t),{})}updateFromPersisted(e){let t=this.filterAllowedGlobals(e);this.globals={...this.globals,...t}}get(){return this.globals}update(e){this.globals={...this.globals,...this.filterAllowedGlobals(e)}}};var ir=u(require("lodash/mapValues")),st=r=>typeof r=="string"?{name:r}:r,it=r=>typeof r=="string"?{type:r}:r,ar=(r,e)=>{let{type:t,control:o,...n}=r,s={name:e,...n};return t&&(s.type=st(t)),o?s.control=it(o):o===!1&&(s.control={disable:!0}),s},C=r=>(0,ir.default)(r,ar);var de=require("@storybook/csf"),dr=require("ts-dedent"),lr=require("@storybook/client-logger"),cr=u(require("util-deprecate"));var at=dr.dedent`
16
16
  CSF .story annotations deprecated; annotate story functions directly:
17
17
  - StoryFn.story.name => StoryFn.storyName
18
18
  - StoryFn.story.(parameters|decorators) => StoryFn.(parameters|decorators)
19
19
  See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#hoisted-csf-annotations for details and codemod.
20
- `,dt=(0,lr.default)(()=>{},at);function V(r,e,t){let o=e,n=typeof e=="function"?e:null,{story:s}=o;s&&(cr.logger.debug("deprecated story",s),dt());let i=(0,de.storyNameFromExport)(r),d=typeof o!="function"&&o.name||o.storyName||(s==null?void 0:s.name)||i,a=[...o.decorators||[],...(s==null?void 0:s.decorators)||[]],c={...s==null?void 0:s.parameters,...o.parameters},y={...s==null?void 0:s.args,...o.args},l={...s==null?void 0:s.argTypes,...o.argTypes},f=[...o.loaders||[],...(s==null?void 0:s.loaders)||[]],{render:g,play:w,tags:_=[]}=o,fe=c.__id||(0,de.toId)(t.id,i);return{moduleExport:e,id:fe,name:d,tags:_,decorators:a,parameters:c,args:y,argTypes:C(l),loaders:f,...g&&{render:g},...n&&{userStoryFn:n},...w&&{play:w}}}var ur=require("@storybook/csf"),Pe=require("@storybook/client-logger");var pr=require("@storybook/csf");function U(r,e=r.title,t){let{id:o,argTypes:n}=r;return{id:(0,pr.sanitize)(o||e),...r,title:e,...n&&{argTypes:C(n)},parameters:{fileName:t,...r.parameters}}}var ct=r=>{let{globals:e,globalTypes:t}=r;(e||t)&&Pe.logger.error("Global args/argTypes can only be set globally",JSON.stringify({globals:e,globalTypes:t}))},lt=r=>{let{options:e}=r;e!=null&&e.storySort&&Pe.logger.error("The storySort option parameter can only be set globally")},yr=r=>{!r||(ct(r),lt(r))};function Ie(r,e,t){let{default:o,__namedExportsOrder:n,...s}=r,i=U(o,t,e);yr(i.parameters);let d={meta:i,stories:{}};return Object.keys(s).forEach(a=>{if((0,ur.isExportStory)(a,i)){let c=V(a,s[a],i);yr(c.parameters),d.stories[c.id]=c}}),d}var Sr=require("ts-dedent"),gr=u(require("util-deprecate")),Oe=u(require("global")),hr=require("@storybook/csf");var ce=u(require("lodash/isPlainObject")),S=(...r)=>{let e={},t=r.filter(Boolean),o=t.reduce((n,s)=>(Object.entries(s).forEach(([i,d])=>{let a=n[i];Array.isArray(d)||typeof a>"u"?n[i]=d:(0,ce.default)(d)&&(0,ce.default)(a)?e[i]=!0:typeof d<"u"&&(n[i]=d)}),n),{});return Object.keys(e).forEach(n=>{let s=t.filter(Boolean).map(i=>i[n]).filter(i=>typeof i<"u");s.every(i=>(0,ce.default)(i))?o[n]=S(...s):o[n]=s[s.length-1]}),o};function mr(r,e,t){let o=t(r);return n=>e(o,n)}function fr({componentId:r,title:e,kind:t,id:o,name:n,story:s,parameters:i,initialArgs:d,argTypes:a,...c}={}){return c}function we(r,e){let t={},o=s=>i=>{if(!t.value)throw new Error("Decorated function called without init");return t.value={...t.value,...fr(i)},s(t.value)},n=e.reduce((s,i)=>mr(s,i,o),r);return s=>(t.value=s,n(s))}var pt=(0,gr.default)(()=>{},Sr.dedent`
20
+ `,dt=(0,cr.default)(()=>{},at);function V(r,e,t){let o=e,n=typeof e=="function"?e:null,{story:s}=o;s&&(lr.logger.debug("deprecated story",s),dt());let i=(0,de.storyNameFromExport)(r),d=typeof o!="function"&&o.name||o.storyName||(s==null?void 0:s.name)||i,a=[...o.decorators||[],...(s==null?void 0:s.decorators)||[]],l={...s==null?void 0:s.parameters,...o.parameters},y={...s==null?void 0:s.args,...o.args},c={...s==null?void 0:s.argTypes,...o.argTypes},f=[...o.loaders||[],...(s==null?void 0:s.loaders)||[]],{render:h,play:O,tags:P=[]}=o,fe=l.__id||(0,de.toId)(t.id,i);return{moduleExport:e,id:fe,name:d,tags:P,decorators:a,parameters:l,args:y,argTypes:C(c),loaders:f,...h&&{render:h},...n&&{userStoryFn:n},...O&&{play:O}}}var ur=require("@storybook/csf"),Ie=require("@storybook/client-logger");var pr=require("@storybook/csf");function U(r,e=r.title,t){let{id:o,argTypes:n}=r;return{id:(0,pr.sanitize)(o||e),...r,title:e,...n&&{argTypes:C(n)},parameters:{fileName:t,...r.parameters}}}var lt=r=>{let{globals:e,globalTypes:t}=r;(e||t)&&Ie.logger.error("Global args/argTypes can only be set globally",JSON.stringify({globals:e,globalTypes:t}))},ct=r=>{let{options:e}=r;e!=null&&e.storySort&&Ie.logger.error("The storySort option parameter can only be set globally")},yr=r=>{!r||(lt(r),ct(r))};function we(r,e,t){let{default:o,__namedExportsOrder:n,...s}=r,i=U(o,t,e);yr(i.parameters);let d={meta:i,stories:{}};return Object.keys(s).forEach(a=>{if((0,ur.isExportStory)(a,i)){let l=V(a,s[a],i);yr(l.parameters),d.stories[l.id]=l}}),d}var gr=require("ts-dedent"),hr=u(require("util-deprecate")),ke=u(require("global")),Sr=require("@storybook/csf");var le=u(require("lodash/isPlainObject")),g=(...r)=>{let e={},t=r.filter(Boolean),o=t.reduce((n,s)=>(Object.entries(s).forEach(([i,d])=>{let a=n[i];Array.isArray(d)||typeof a>"u"?n[i]=d:(0,le.default)(d)&&(0,le.default)(a)?e[i]=!0:typeof d<"u"&&(n[i]=d)}),n),{});return Object.keys(e).forEach(n=>{let s=t.filter(Boolean).map(i=>i[n]).filter(i=>typeof i<"u");s.every(i=>(0,le.default)(i))?o[n]=g(...s):o[n]=s[s.length-1]}),o};function mr(r,e,t){let o=t(r);return n=>e(o,n)}function fr({componentId:r,title:e,kind:t,id:o,name:n,story:s,parameters:i,initialArgs:d,argTypes:a,...l}={}){return l}function Oe(r,e){let t={},o=s=>i=>{if(!t.value)throw new Error("Decorated function called without init");return t.value={...t.value,...fr(i)},s(t.value)},n=e.reduce((s,i)=>mr(s,i,o),r);return s=>(t.value=s,n(s))}var pt=(0,hr.default)(()=>{},gr.dedent`
21
21
  \`argType.defaultValue\` is deprecated and will be removed in Storybook 7.0.
22
22
 
23
- https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#no-longer-inferring-default-values-of-args`);function W(r,e,t){var Ge;let{moduleExport:o,id:n,name:s}=r,{title:i}=e,d=[...r.tags||e.tags||[],"story"],a=S(t.parameters,e.parameters,r.parameters),c=[...r.decorators||[],...e.decorators||[],...t.decorators||[]],{applyDecorators:y=we,argTypesEnhancers:l=[],argsEnhancers:f=[],runStep:g}=t,w=[...t.loaders||[],...e.loaders||[],...r.loaders||[]],_=r.userStoryFn||r.render||e.render||t.render;if(!_)throw new Error(`No render function available for storyId '${n}'`);let fe=S(t.argTypes,e.argTypes,r.argTypes),{passArgsFirst:Mr=!0}=a;a.__isArgsStory=Mr&&_.length>0;let Me={...t.args,...e.args,...r.args},h={componentId:e.id,title:i,kind:i,id:n,name:s,story:s,component:e.component,subcomponents:e.subcomponents,tags:d,parameters:a,initialArgs:Me,argTypes:fe};h.argTypes=l.reduce((p,m)=>m({...h,argTypes:p}),h.argTypes);let Le=I(h.argTypes);Object.keys(Le).length>0&&pt();let Lr={...Le,...Me};h.initialArgs=f.reduce((p,m)=>({...p,...m({...h,initialArgs:p})}),Lr),(Ge=Oe.default.FEATURES)!=null&&Ge.breakingChangesV7||(h.parameters={...h.parameters,__id:n,globals:t.globals,globalTypes:t.globalTypes,args:h.initialArgs,argTypes:h.argTypes});let Br=async p=>{let m=await Promise.all(w.map(A=>A(p))),x=Object.assign({},...m);return{...p,loaded:x}},Be=p=>{let m=Object.entries(p.args).reduce((j,[D,z])=>{var $e;let M=($e=p.argTypes[D])==null?void 0:$e.mapping;return j[D]=M&&z in M?M[z]:z,j},{}),x=Object.entries(m).reduce((j,[D,z])=>{let M=p.argTypes[D]||{};return(0,hr.includeConditionalArg)(M,m,p.globals)&&(j[D]=z),j},{}),A={...p,args:x},{passArgsFirst:$r=!0}=p.parameters;return $r?_(A.args,A):_(A)},Hr=ee(y)(Be,c),Gr=p=>{var x;let m=p;if((x=Oe.default.FEATURES)!=null&&x.argTypeTargetsV7){let A=se(p);m={...p,allArgs:p.args,argsByTarget:A,args:A[$]||{}}}return Hr(m)},{play:He}=r;return Object.freeze({...h,moduleExport:o,originalStoryFn:_,undecoratedStoryFn:Be,unboundStoryFn:Gr,applyLoaders:Br,playFunction:He&&(async p=>{let m={...p,step:(x,A)=>g(x,A,m)};return He(m)})})}var le=u(require("lodash/mapValues")),Tr=require("ts-dedent"),Ar=require("@storybook/client-logger");var ke=(r,e,t)=>{let o=typeof r;switch(o){case"boolean":case"string":case"number":case"function":case"symbol":return{name:o};default:break}if(r){if(t.has(r))return Ar.logger.warn(Tr.dedent`
23
+ https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#no-longer-inferring-default-values-of-args`);function W(r,e,t){var Ge;let{moduleExport:o,id:n,name:s}=r,{title:i}=e,d=[...r.tags||e.tags||[],"story"],a=g(t.parameters,e.parameters,r.parameters),l=[...r.decorators||[],...e.decorators||[],...t.decorators||[]],{applyDecorators:y=Oe,argTypesEnhancers:c=[],argsEnhancers:f=[],runStep:h}=t,O=[...t.loaders||[],...e.loaders||[],...r.loaders||[]],P=r.userStoryFn||r.render||e.render||t.render;if(!P)throw new Error(`No render function available for storyId '${n}'`);let fe=g(t.argTypes,e.argTypes,r.argTypes),{passArgsFirst:Mr=!0}=a;a.__isArgsStory=Mr&&P.length>0;let Me={...t.args,...e.args,...r.args},S={componentId:e.id,title:i,kind:i,id:n,name:s,story:s,component:e.component,subcomponents:e.subcomponents,tags:d,parameters:a,initialArgs:Me,argTypes:fe};S.argTypes=c.reduce((p,m)=>m({...S,argTypes:p}),S.argTypes);let Be=w(S.argTypes);Object.keys(Be).length>0&&pt();let Br={...Be,...Me};S.initialArgs=f.reduce((p,m)=>({...p,...m({...S,initialArgs:p})}),Br),(Ge=ke.default.FEATURES)!=null&&Ge.breakingChangesV7||(S.parameters={...S.parameters,__id:n,globals:t.globals,globalTypes:t.globalTypes,args:S.initialArgs,argTypes:S.argTypes});let Hr=async p=>{let m=await Promise.all(O.map(A=>A(p))),x=Object.assign({},...m);return{...p,loaded:x}},He=p=>{let m=Object.entries(p.args).reduce((D,[_,z])=>{var $e;let M=($e=p.argTypes[_])==null?void 0:$e.mapping;return D[_]=M&&z in M?M[z]:z,D},{}),x=Object.entries(m).reduce((D,[_,z])=>{let M=p.argTypes[_]||{};return(0,Sr.includeConditionalArg)(M,m,p.globals)&&(D[_]=z),D},{}),A={...p,args:x},{passArgsFirst:$r=!0}=p.parameters;return $r?P(A.args,A):P(A)},Lr=ee(y)(He,l),Gr=p=>{var x;let m=p;if((x=ke.default.FEATURES)!=null&&x.argTypeTargetsV7){let A=se(p);m={...p,allArgs:p.args,argsByTarget:A,args:A[$]||{}}}return Lr(m)},{play:Le}=r;return Object.freeze({...S,moduleExport:o,originalStoryFn:P,undecoratedStoryFn:He,unboundStoryFn:Gr,applyLoaders:Hr,playFunction:Le&&(async p=>{let m={...p,step:(x,A)=>h(x,A,m)};return Le(m)})})}var ce=u(require("lodash/mapValues")),Tr=require("ts-dedent"),Ar=require("@storybook/client-logger");var ve=(r,e,t)=>{let o=typeof r;switch(o){case"boolean":case"string":case"number":case"function":case"symbol":return{name:o};default:break}if(r){if(t.has(r))return Ar.logger.warn(Tr.dedent`
24
24
  We've detected a cycle in arg '${e}'. Args should be JSON-serializable.
25
25
 
26
26
  Consider using the mapping feature or fully custom args:
27
27
  - Mapping: https://storybook.js.org/docs/react/writing-stories/args#mapping-to-complex-arg-values
28
28
  - Custom args: https://storybook.js.org/docs/react/essentials/controls#fully-custom-args
29
- `),{name:"other",value:"cyclic object"};if(t.add(r),Array.isArray(r)){let s=r.length>0?ke(r[0],e,new Set(t)):{name:"other",value:"unknown"};return{name:"array",value:s}}let n=(0,le.default)(r,s=>ke(s,e,new Set(t)));return{name:"object",value:n}}return{name:"object",value:{}}},ve=r=>{let{id:e,argTypes:t={},initialArgs:o={}}=r,n=(0,le.default)(o,(i,d)=>({name:d,type:ke(i,`${e}.${d}`,new Set)})),s=(0,le.default)(t,(i,d)=>({name:d}));return S(n,s,t)};ve.secondPass=!0;var Rr=u(require("lodash/mapValues")),Fr=require("@storybook/client-logger");var xr=u(require("lodash/pickBy")),br=(r,e)=>Array.isArray(e)?e.includes(r):r.match(e),pe=(r,e,t)=>!e&&!t?r:r&&(0,xr.default)(r,(o,n)=>{let s=o.name||n;return(!e||br(s,e))&&(!t||!br(s,t))});var yt=(r,e,t)=>{let{type:o,options:n}=r;if(!!o){if(t.color&&t.color.test(e)){let s=o.name;if(s==="string")return{control:{type:"color"}};s!=="enum"&&Fr.logger.warn(`Addon controls: Control of type color only supports string, received "${s}" instead`)}if(t.date&&t.date.test(e))return{control:{type:"date"}};switch(o.name){case"array":return{control:{type:"object"}};case"boolean":return{control:{type:"boolean"}};case"string":return{control:{type:"text"}};case"number":return{control:{type:"number"}};case"enum":{let{value:s}=o;return{control:{type:(s==null?void 0:s.length)<=5?"radio":"select"},options:s}}case"function":case"symbol":return null;default:return{control:{type:n?"select":"object"}}}}},Y=r=>{let{argTypes:e,parameters:{__isArgsStory:t,controls:{include:o=null,exclude:n=null,matchers:s={}}={}}}=r;if(!t)return e;let i=pe(e,o,n),d=(0,Rr.default)(i,(a,c)=>(a==null?void 0:a.type)&&yt(a,c,s));return S(d,i)};Y.secondPass=!0;function K({argTypes:r,globalTypes:e,argTypesEnhancers:t,...o}){return{...r&&{argTypes:C(r)},...e&&{globalTypes:C(e)},argTypesEnhancers:[...t||[],ve,Y],...o}}function Ne(r){return async(e,t,o)=>{await r.reduceRight((s,i)=>async()=>i(e,s,o),async()=>t(o))()}}function N(r,e){return r.map(t=>t[e]).filter(Boolean)}function J(r,e){return N(r,e).reduce((t,o)=>[...t,...o],[])}function q(r,e){return Object.assign({},...N(r,e))}function X(r,e){return N(r,e).pop()}function je(r){let e=J(r,"argTypesEnhancers"),t=N(r,"runStep");return{parameters:S(...N(r,"parameters")),decorators:J(r,"decorators"),args:q(r,"args"),argsEnhancers:J(r,"argsEnhancers"),argTypes:q(r,"argTypes"),argTypesEnhancers:[...e.filter(o=>!o.secondPass),...e.filter(o=>o.secondPass)],globals:q(r,"globals"),globalTypes:q(r,"globalTypes"),loaders:J(r,"loaders"),render:X(r,"render"),renderToCanvas:X(r,"renderToCanvas"),renderToDOM:X(r,"renderToDOM"),applyDecorators:X(r,"applyDecorators"),runStep:Ne(t)}}var Cr=require("@storybook/csf");var Er={};function ut(r){let e=Array.isArray(r)?r:[r];Er=je(e)}function mt(r,e,t=Er,o={},n){var f;if(r===void 0)throw new Error("Expected a story but received undefined.");e.title=e.title??"ComposedStory";let s=U(e),i=n||r.storyName||((f=r.story)==null?void 0:f.name)||r.name||"unknown",d=V(i,r,s),a=K({...t,...o}),c=W(d,s,a),y=I(t.globalTypes),l=g=>{let w={...c,hooks:new R,globals:y,args:{...c.initialArgs,...g}};return c.unboundStoryFn(w)};return l.storyName=i,l.args=c.initialArgs,l.play=c.playFunction,l.parameters=c.parameters,l}function ft(r,e,t){let{default:o,__esModule:n,__namedExportsOrder:s,...i}=r;return Object.entries(i).reduce((a,[c,y])=>(0,Cr.isExportStory)(c,o)?Object.assign(a,{[c]:t(y,o,e,c)}):a,{})}var St=1e3,gt=1e4,ue=class{constructor(){this.getStoriesJsonData=()=>{let{storyIndex:e}=this;if(!e)throw new Error("getStoriesJsonData called before initialization");let t=this.getSetStoriesPayload(),o=["fileName","docsOnly","framework","__id","__isArgsStory"],n=(0,_r.default)(t.stories,s=>{let{importPath:i}=e.entries[s.id];return{...(0,ze.default)(s,["id","name","title"]),importPath:i,kind:s.title,story:s.name,parameters:{...(0,ze.default)(s.parameters,o),fileName:i}}});return{v:3,stories:n}};this.args=new ie,this.hooks={},this.processCSFFileWithCache=(0,De.default)(St)(Ie),this.prepareStoryWithCache=(0,De.default)(gt)(W),this.initializationPromise=new ye.SynchronousPromise(e=>{this.resolveInitializationPromise=e})}setProjectAnnotations(e){this.projectAnnotations=K(e);let{globals:t,globalTypes:o}=e;this.globals?this.globals.set({globals:t,globalTypes:o}):this.globals=new ae({globals:t,globalTypes:o})}initialize({storyIndex:e,importFn:t,cache:o=!1}){return this.storyIndex=new oe(e),this.importFn=t,this.resolveInitializationPromise(),o?this.cacheAllCSFFiles():ye.SynchronousPromise.resolve()}async onStoriesChanged({importFn:e,storyIndex:t}){await this.initializationPromise,e&&(this.importFn=e),t&&(this.storyIndex.entries=t.entries),this.cachedCSFFiles&&await this.cacheAllCSFFiles()}async storyIdToEntry(e){return await this.initializationPromise,this.storyIndex.storyIdToEntry(e)}loadCSFFileByStoryId(e){if(!this.storyIndex||!this.importFn)throw new Error("loadCSFFileByStoryId called before initialization");let{importPath:t,title:o}=this.storyIndex.storyIdToEntry(e);return this.importFn(t).then(n=>this.processCSFFileWithCache(n,t,o))}loadAllCSFFiles(){if(!this.storyIndex)throw new Error("loadAllCSFFiles called before initialization");let e={};Object.entries(this.storyIndex.entries).forEach(([o,{importPath:n}])=>{e[n]=o});let t=Object.entries(e).map(([o,n])=>this.loadCSFFileByStoryId(n).then(s=>({importPath:o,csfFile:s})));return ye.SynchronousPromise.all(t).then(o=>o.reduce((n,{importPath:s,csfFile:i})=>(n[s]=i,n),{}))}cacheAllCSFFiles(){return this.initializationPromise.then(()=>this.loadAllCSFFiles().then(e=>{this.cachedCSFFiles=e}))}async loadStory({storyId:e}){await this.initializationPromise;let t=await this.loadCSFFileByStoryId(e);return this.storyFromCSFFile({storyId:e,csfFile:t})}storyFromCSFFile({storyId:e,csfFile:t}){if(!this.projectAnnotations)throw new Error("storyFromCSFFile called before initialization");let o=t.stories[e];if(!o)throw new Error(`Didn't find '${e}' in CSF file, this is unexpected`);let n=t.meta,s=this.prepareStoryWithCache(o,n,this.projectAnnotations);return this.args.setInitial(s),this.hooks[s.id]=this.hooks[s.id]||new R,s}componentStoriesFromCSFFile({csfFile:e}){if(!this.storyIndex)throw new Error("componentStoriesFromCSFFile called before initialization");return Object.keys(this.storyIndex.entries).filter(t=>!!e.stories[t]).map(t=>this.storyFromCSFFile({storyId:t,csfFile:e}))}async loadEntry(e){let t=await this.storyIdToEntry(e),{importFn:o,storyIndex:n}=this;if(!n||!o)throw new Error("loadEntry called before initialization");let s=t.type==="docs"?t.storiesImports:[],[i,...d]=await Promise.all([o(t.importPath),...s.map(a=>{let c=n.importPathToEntry(a);return this.loadCSFFileByStoryId(c.id)})]);return{entryExports:i,csfFiles:d}}getStoryContext(e){if(!this.globals)throw new Error("getStoryContext called before initialization");return{...e,args:this.args.get(e.id),globals:this.globals.get(),hooks:this.hooks[e.id]}}cleanupStory(e){this.hooks[e.id].clean()}extract(e={includeDocsOnly:!1}){if(!this.storyIndex)throw new Error("extract called before initialization");let{cachedCSFFiles:t}=this;if(!t)throw new Error("Cannot call extract() unless you call cacheAllCSFFiles() first.");return Object.entries(this.storyIndex.entries).reduce((o,[n,{type:s,importPath:i}])=>{if(s==="docs")return o;let d=t[i],a=this.storyFromCSFFile({storyId:n,csfFile:d});return!e.includeDocsOnly&&a.parameters.docsOnly||(o[n]=Object.entries(a).reduce((c,[y,l])=>y==="moduleExport"||typeof l=="function"?c:Array.isArray(l)?Object.assign(c,{[y]:l.slice().sort()}):Object.assign(c,{[y]:l}),{args:a.initialArgs})),o},{})}getSetStoriesPayload(){if(!this.globals)throw new Error("getSetStoriesPayload called before initialization");let e=this.extract({includeDocsOnly:!0}),t=Object.values(e).reduce((o,{title:n})=>(o[n]={},o),{});return{v:2,globals:this.globals.get(),globalParameters:{},kindParameters:t,stories:e}}getSetIndexPayload(){if(!this.storyIndex)throw new Error("getSetIndexPayload called before initialization");let e=this.extract({includeDocsOnly:!0});return{v:4,entries:Object.fromEntries(Object.entries(this.storyIndex.entries).map(([t,o])=>[t,e[t]?{...o,args:e[t].initialArgs,initialArgs:e[t].initialArgs,argTypes:e[t].argTypes,parameters:e[t].parameters}:o]))}}raw(){return Object.values(this.extract()).map(({id:e})=>this.fromId(e)).filter(Boolean)}fromId(e){if(!this.storyIndex)throw new Error("fromId called before initialization");if(!this.cachedCSFFiles)throw new Error("Cannot call fromId/raw() unless you call cacheAllCSFFiles() first.");let t;try{({importPath:t}=this.storyIndex.storyIdToEntry(e))}catch{return null}let o=this.cachedCSFFiles[t],n=this.storyFromCSFFile({storyId:e,csfFile:o});return{...n,storyFn:s=>{let i={...this.getStoryContext(n),viewMode:"story"};return n.unboundStoryFn({...i,...s})}}}};var E=require("@storybook/core-events");function Pr(r,e){let t=b.getChannel(),[o]=t.last(`${E.SHARED_STATE_CHANGED}-manager-${r}`)||t.last(`${E.SHARED_STATE_SET}-manager-${r}`)||[],[n,s]=xe(o||e),i=be(()=>({[`${E.SHARED_STATE_CHANGED}-manager-${r}`]:a=>s(a),[`${E.SHARED_STATE_SET}-manager-${r}`]:a=>s(a)}),[r]),d=Re(i,[r]);return te(()=>{e!==void 0&&!o&&d(`${E.SHARED_STATE_SET}-client-${r}`,e)},[r]),[n,a=>{s(a),d(`${E.SHARED_STATE_CHANGED}-client-${r}`,a)}]}function ht(r,e){return Pr(r,e)}var me=u(require("slash")),wr=require("ts-dedent"),Or=require("@storybook/client-logger"),Tt=r=>{let e=[...r],t=e[e.length-1],o=t.indexOf("."),n=o>0?t.substr(0,o):t;e[e.length-1]=n;let[s,...i]=e;return s===""&&(e=i),e},At=/^index$/i,bt=r=>{let e;return r.filter((t,o)=>o===r.length-1&&(t===e||At.test(t))?!1:(e=t,!0))};function Ir(r){let e=new RegExp("/{1,}","g");return r.join("/").replace(e,"/")}var kr=(r,e,t)=>{let{directory:o,importPathMatcher:n,titlePrefix:s=""}=e||{};typeof r=="number"&&Or.once.warn(wr.dedent`
29
+ `),{name:"other",value:"cyclic object"};if(t.add(r),Array.isArray(r)){let s=r.length>0?ve(r[0],e,new Set(t)):{name:"other",value:"unknown"};return{name:"array",value:s}}let n=(0,ce.default)(r,s=>ve(s,e,new Set(t)));return{name:"object",value:n}}return{name:"object",value:{}}},Ne=r=>{let{id:e,argTypes:t={},initialArgs:o={}}=r,n=(0,ce.default)(o,(i,d)=>({name:d,type:ve(i,`${e}.${d}`,new Set)})),s=(0,ce.default)(t,(i,d)=>({name:d}));return g(n,s,t)};Ne.secondPass=!0;var Rr=u(require("lodash/mapValues")),Fr=require("@storybook/client-logger");var xr=u(require("lodash/pickBy")),br=(r,e)=>Array.isArray(e)?e.includes(r):r.match(e),pe=(r,e,t)=>!e&&!t?r:r&&(0,xr.default)(r,(o,n)=>{let s=o.name||n;return(!e||br(s,e))&&(!t||!br(s,t))});var yt=(r,e,t)=>{let{type:o,options:n}=r;if(!!o){if(t.color&&t.color.test(e)){let s=o.name;if(s==="string")return{control:{type:"color"}};s!=="enum"&&Fr.logger.warn(`Addon controls: Control of type color only supports string, received "${s}" instead`)}if(t.date&&t.date.test(e))return{control:{type:"date"}};switch(o.name){case"array":return{control:{type:"object"}};case"boolean":return{control:{type:"boolean"}};case"string":return{control:{type:"text"}};case"number":return{control:{type:"number"}};case"enum":{let{value:s}=o;return{control:{type:(s==null?void 0:s.length)<=5?"radio":"select"},options:s}}case"function":case"symbol":return null;default:return{control:{type:n?"select":"object"}}}}},Y=r=>{let{argTypes:e,parameters:{__isArgsStory:t,controls:{include:o=null,exclude:n=null,matchers:s={}}={}}}=r;if(!t)return e;let i=pe(e,o,n),d=(0,Rr.default)(i,(a,l)=>(a==null?void 0:a.type)&&yt(a,l,s));return g(d,i)};Y.secondPass=!0;function K({argTypes:r,globalTypes:e,argTypesEnhancers:t,...o}){return{...r&&{argTypes:C(r)},...e&&{globalTypes:C(e)},argTypesEnhancers:[...t||[],Ne,Y],...o}}function je(r){return async(e,t,o)=>{await r.reduceRight((s,i)=>async()=>i(e,s,o),async()=>t(o))()}}function j(r,e){return r.map(t=>t[e]).filter(Boolean)}function J(r,e){return j(r,e).reduce((t,o)=>[...t,...o],[])}function q(r,e){return Object.assign({},...j(r,e))}function X(r,e){return j(r,e).pop()}function De(r){let e=J(r,"argTypesEnhancers"),t=j(r,"runStep");return{parameters:g(...j(r,"parameters")),decorators:J(r,"decorators"),args:q(r,"args"),argsEnhancers:J(r,"argsEnhancers"),argTypes:q(r,"argTypes"),argTypesEnhancers:[...e.filter(o=>!o.secondPass),...e.filter(o=>o.secondPass)],globals:q(r,"globals"),globalTypes:q(r,"globalTypes"),loaders:J(r,"loaders"),render:X(r,"render"),renderToCanvas:X(r,"renderToCanvas"),renderToDOM:X(r,"renderToDOM"),applyDecorators:X(r,"applyDecorators"),runStep:je(t)}}var Cr=require("@storybook/csf");var Er={};function ut(r){let e=Array.isArray(r)?r:[r];Er=De(e)}function mt(r,e,t=Er,o={},n){var f;if(r===void 0)throw new Error("Expected a story but received undefined.");e.title=e.title??"ComposedStory";let s=U(e),i=n||r.storyName||((f=r.story)==null?void 0:f.name)||r.name||"unknown",d=V(i,r,s),a=K({...t,...o}),l=W(d,s,a),y=w(t.globalTypes),c=h=>{let O={...l,hooks:new R,globals:y,args:{...l.initialArgs,...h}};return l.unboundStoryFn(O)};return c.storyName=i,c.args=l.initialArgs,c.play=l.playFunction,c.parameters=l.parameters,c}function ft(r,e,t){let{default:o,__esModule:n,__namedExportsOrder:s,...i}=r;return Object.entries(i).reduce((a,[l,y])=>(0,Cr.isExportStory)(l,o)?Object.assign(a,{[l]:t(y,o,e,l)}):a,{})}var gt=1e3,ht=1e4,ue=class{constructor(){this.getStoriesJsonData=()=>{let{storyIndex:e}=this;if(!e)throw new Error("getStoriesJsonData called before initialization");let t=this.getSetStoriesPayload(),o=["fileName","docsOnly","framework","__id","__isArgsStory"],n=(0,Pr.default)(t.stories,s=>{let{importPath:i}=e.entries[s.id];return{...(0,ze.default)(s,["id","name","title"]),importPath:i,kind:s.title,story:s.name,parameters:{...(0,ze.default)(s.parameters,o),fileName:i}}});return{v:3,stories:n}};this.args=new ie,this.hooks={},this.processCSFFileWithCache=(0,_e.default)(gt)(we),this.prepareStoryWithCache=(0,_e.default)(ht)(W),this.initializationPromise=new ye.SynchronousPromise(e=>{this.resolveInitializationPromise=e})}setProjectAnnotations(e){this.projectAnnotations=K(e);let{globals:t,globalTypes:o}=e;this.globals?this.globals.set({globals:t,globalTypes:o}):this.globals=new ae({globals:t,globalTypes:o})}initialize({storyIndex:e,importFn:t,cache:o=!1}){return this.storyIndex=new oe(e),this.importFn=t,this.resolveInitializationPromise(),o?this.cacheAllCSFFiles():ye.SynchronousPromise.resolve()}async onStoriesChanged({importFn:e,storyIndex:t}){await this.initializationPromise,e&&(this.importFn=e),t&&(this.storyIndex.entries=t.entries),this.cachedCSFFiles&&await this.cacheAllCSFFiles()}async storyIdToEntry(e){return await this.initializationPromise,this.storyIndex.storyIdToEntry(e)}loadCSFFileByStoryId(e){if(!this.storyIndex||!this.importFn)throw new Error("loadCSFFileByStoryId called before initialization");let{importPath:t,title:o}=this.storyIndex.storyIdToEntry(e);return this.importFn(t).then(n=>this.processCSFFileWithCache(n,t,o))}loadAllCSFFiles(){if(!this.storyIndex)throw new Error("loadAllCSFFiles called before initialization");let e={};Object.entries(this.storyIndex.entries).forEach(([o,{importPath:n}])=>{e[n]=o});let t=Object.entries(e).map(([o,n])=>this.loadCSFFileByStoryId(n).then(s=>({importPath:o,csfFile:s})));return ye.SynchronousPromise.all(t).then(o=>o.reduce((n,{importPath:s,csfFile:i})=>(n[s]=i,n),{}))}cacheAllCSFFiles(){return this.initializationPromise.then(()=>this.loadAllCSFFiles().then(e=>{this.cachedCSFFiles=e}))}async loadStory({storyId:e}){await this.initializationPromise;let t=await this.loadCSFFileByStoryId(e);return this.storyFromCSFFile({storyId:e,csfFile:t})}storyFromCSFFile({storyId:e,csfFile:t}){if(!this.projectAnnotations)throw new Error("storyFromCSFFile called before initialization");let o=t.stories[e];if(!o)throw new Error(`Didn't find '${e}' in CSF file, this is unexpected`);let n=t.meta,s=this.prepareStoryWithCache(o,n,this.projectAnnotations);return this.args.setInitial(s),this.hooks[s.id]=this.hooks[s.id]||new R,s}componentStoriesFromCSFFile({csfFile:e}){if(!this.storyIndex)throw new Error("componentStoriesFromCSFFile called before initialization");return Object.keys(this.storyIndex.entries).filter(t=>!!e.stories[t]).map(t=>this.storyFromCSFFile({storyId:t,csfFile:e}))}async loadEntry(e){let t=await this.storyIdToEntry(e),{importFn:o,storyIndex:n}=this;if(!n||!o)throw new Error("loadEntry called before initialization");let s=t.type==="docs"?t.storiesImports:[],[i,...d]=await Promise.all([o(t.importPath),...s.map(a=>{let l=n.importPathToEntry(a);return this.loadCSFFileByStoryId(l.id)})]);return{entryExports:i,csfFiles:d}}getStoryContext(e){if(!this.globals)throw new Error("getStoryContext called before initialization");return{...e,args:this.args.get(e.id),globals:this.globals.get(),hooks:this.hooks[e.id]}}cleanupStory(e){this.hooks[e.id].clean()}extract(e={includeDocsOnly:!1}){if(!this.storyIndex)throw new Error("extract called before initialization");let{cachedCSFFiles:t}=this;if(!t)throw new Error("Cannot call extract() unless you call cacheAllCSFFiles() first.");return Object.entries(this.storyIndex.entries).reduce((o,[n,{type:s,importPath:i}])=>{if(s==="docs")return o;let d=t[i],a=this.storyFromCSFFile({storyId:n,csfFile:d});return!e.includeDocsOnly&&a.parameters.docsOnly||(o[n]=Object.entries(a).reduce((l,[y,c])=>y==="moduleExport"||typeof c=="function"?l:Array.isArray(c)?Object.assign(l,{[y]:c.slice().sort()}):Object.assign(l,{[y]:c}),{args:a.initialArgs})),o},{})}getSetStoriesPayload(){if(!this.globals)throw new Error("getSetStoriesPayload called before initialization");let e=this.extract({includeDocsOnly:!0}),t=Object.values(e).reduce((o,{title:n})=>(o[n]={},o),{});return{v:2,globals:this.globals.get(),globalParameters:{},kindParameters:t,stories:e}}getSetIndexPayload(){if(!this.storyIndex)throw new Error("getSetIndexPayload called before initialization");let e=this.extract({includeDocsOnly:!0});return{v:4,entries:Object.fromEntries(Object.entries(this.storyIndex.entries).map(([t,o])=>[t,e[t]?{...o,args:e[t].initialArgs,initialArgs:e[t].initialArgs,argTypes:e[t].argTypes,parameters:e[t].parameters}:o]))}}raw(){return Object.values(this.extract()).map(({id:e})=>this.fromId(e)).filter(Boolean)}fromId(e){if(!this.storyIndex)throw new Error("fromId called before initialization");if(!this.cachedCSFFiles)throw new Error("Cannot call fromId/raw() unless you call cacheAllCSFFiles() first.");let t;try{({importPath:t}=this.storyIndex.storyIdToEntry(e))}catch{return null}let o=this.cachedCSFFiles[t],n=this.storyFromCSFFile({storyId:e,csfFile:o});return{...n,storyFn:s=>{let i={...this.getStoryContext(n),viewMode:"story"};return n.unboundStoryFn({...i,...s})}}}};var E=require("@storybook/core-events");function Ir(r,e){let t=b.getChannel(),[o]=t.last(`${E.SHARED_STATE_CHANGED}-manager-${r}`)||t.last(`${E.SHARED_STATE_SET}-manager-${r}`)||[],[n,s]=xe(o||e),i=be(()=>({[`${E.SHARED_STATE_CHANGED}-manager-${r}`]:a=>s(a),[`${E.SHARED_STATE_SET}-manager-${r}`]:a=>s(a)}),[r]),d=Re(i,[r]);return te(()=>{e!==void 0&&!o&&d(`${E.SHARED_STATE_SET}-client-${r}`,e)},[r]),[n,a=>{s(a),d(`${E.SHARED_STATE_CHANGED}-client-${r}`,a)}]}function St(r,e){return Ir(r,e)}var me=u(require("slash")),Or=require("ts-dedent"),kr=require("@storybook/client-logger"),Tt=r=>{let e=[...r],t=e[e.length-1],o=t.indexOf("."),n=o>0?t.substr(0,o):t;e[e.length-1]=n;let[s,...i]=e;return s===""&&(e=i),e},At=/^index$/i,bt=r=>{let e;return r.filter((t,o)=>o===r.length-1&&(t===e||At.test(t))?!1:(e=t,!0))};function wr(r){let e=new RegExp("/{1,}","g");return r.join("/").replace(e,"/")}var vr=(r,e,t)=>{let{directory:o,importPathMatcher:n,titlePrefix:s=""}=e||{};typeof r=="number"&&kr.once.warn(Or.dedent`
30
30
  CSF Auto-title received a numeric fileName. This typically happens when
31
31
  webpack is mis-configured in production mode. To force webpack to produce
32
32
  filenames, set optimization.moduleIds = "named" in your webpack config.
33
- `);let i=(0,me.default)(String(r));if(n.exec(i)){if(!t){let d=i.replace(o,""),c=(0,me.default)(Ir([s,d])).split("/");return c=Tt(c),c=bt(c),c.join("/")}return s?(0,me.default)(Ir([s,t])):t}},xt=(r,e,t)=>{for(let o=0;o<e.length;o+=1){let n=kr(r,e[o],t);if(n)return n}return t||void 0};var Dr=require("ts-dedent");var vr=/\s*\/\s*/,Nr=(r={})=>(e,t)=>{if(e.title===t.title&&!r.includeNames)return 0;let o=r.method||"configure",n=r.order||[],s=e.title.trim().split(vr),i=t.title.trim().split(vr);r.includeNames&&(s.push(e.name),i.push(t.name));let d=0;for(;s[d]||i[d];){if(!s[d])return-1;if(!i[d])return 1;let a=s[d],c=i[d];if(a!==c){let l=n.indexOf(a),f=n.indexOf(c),g=n.indexOf("*");return l!==-1||f!==-1?(l===-1&&(g!==-1?l=g:l=n.length),f===-1&&(g!==-1?f=g:f=n.length),l-f):o==="configure"?0:a.localeCompare(c,r.locales?r.locales:void 0,{numeric:!0,sensitivity:"accent"})}let y=n.indexOf(a);y===-1&&(y=n.indexOf("*")),n=y!==-1&&Array.isArray(n[y+1])?n[y+1]:[],d+=1}return 0};var zr=(r,e,t)=>{if(e){let o;typeof e=="function"?o=e:o=Nr(e),r.sort(o)}else r.sort((o,n)=>t.indexOf(o.importPath)-t.indexOf(n.importPath));return r},Rt=(r,e,t)=>{try{return zr(r,e,t)}catch(o){throw new Error(Dr.dedent`
33
+ `);let i=(0,me.default)(String(r));if(n.exec(i)){if(!t){let d=i.replace(o,""),l=(0,me.default)(wr([s,d])).split("/");return l=Tt(l),l=bt(l),l.join("/")}return s?(0,me.default)(wr([s,t])):t}},xt=(r,e,t)=>{for(let o=0;o<e.length;o+=1){let n=vr(r,e[o],t);if(n)return n}return t||void 0};var _r=require("ts-dedent");var Nr=/\s*\/\s*/,jr=(r={})=>(e,t)=>{if(e.title===t.title&&!r.includeNames)return 0;let o=r.method||"configure",n=r.order||[],s=e.title.trim().split(Nr),i=t.title.trim().split(Nr);r.includeNames&&(s.push(e.name),i.push(t.name));let d=0;for(;s[d]||i[d];){if(!s[d])return-1;if(!i[d])return 1;let a=s[d],l=i[d];if(a!==l){let c=n.indexOf(a),f=n.indexOf(l),h=n.indexOf("*");return c!==-1||f!==-1?(c===-1&&(h!==-1?c=h:c=n.length),f===-1&&(h!==-1?f=h:f=n.length),c-f):o==="configure"?0:a.localeCompare(l,r.locales?r.locales:void 0,{numeric:!0,sensitivity:"accent"})}let y=n.indexOf(a);y===-1&&(y=n.indexOf("*")),n=y!==-1&&Array.isArray(n[y+1])?n[y+1]:[],d+=1}return 0};var zr=(r,e,t)=>{if(e){let o;typeof e=="function"?o=e:o=jr(e),r.sort(o)}else r.sort((o,n)=>t.indexOf(o.importPath)-t.indexOf(n.importPath));return r},Rt=(r,e,t)=>{try{return zr(r,e,t)}catch(o){throw new Error(_r.dedent`
34
34
  Error sorting stories with sort parameter ${e}:
35
35
 
36
36
  > ${o.message}
@@ -38,4 +38,4 @@ See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#hoisted-csf-
38
38
  Are you using a V6-style sort function in V7 mode?
39
39
 
40
40
  More info: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#v7-style-story-sort
41
- `)}},jr=r=>{let{id:e,title:t,name:o,parameters:n,type:s}=r;return{id:e,title:t,name:o,importPath:n.fileName,type:s}},Ft=(r,e,t)=>{if(e&&typeof e=="function")return r.sort(e),r.map(n=>jr(n[1]));let o=r.map(n=>jr(n[1]));return zr(o,e,t)};0&&(module.exports={DEEPLY_EQUAL,HooksContext,NO_TARGET_NAME,StoryStore,applyHooks,combineArgs,combineParameters,composeConfigs,composeStepRunners,composeStories,composeStory,decorateStory,deepDiff,defaultDecorateStory,filterArgTypes,getArrayField,getField,getObjectField,getSingletonField,getValuesFromArgTypes,groupArgsByTarget,inferControls,mapArgsToTypes,noTargetArgs,normalizeComponentAnnotations,normalizeInputType,normalizeInputTypes,normalizeProjectAnnotations,normalizeStory,prepareStory,processCSFFile,sanitizeStoryContextUpdate,setProjectAnnotations,sortStoriesV6,sortStoriesV7,useAddonState,useArgs,useCallback,useChannel,useEffect,useGlobals,useMemo,useParameter,useReducer,useRef,useSharedState,useState,useStoryContext,userOrAutoTitle,userOrAutoTitleFromSpecifier,validateOptions});
41
+ `)}},Dr=r=>{let{id:e,title:t,name:o,parameters:n,type:s}=r;return{id:e,title:t,name:o,importPath:n.fileName,type:s}},Ft=(r,e,t)=>{if(e&&typeof e=="function")return r.sort(e),r.map(n=>Dr(n[1]));let o=r.map(n=>Dr(n[1]));return zr(o,e,t)};0&&(module.exports={DEEPLY_EQUAL,HooksContext,NO_TARGET_NAME,StoryStore,applyHooks,combineArgs,combineParameters,composeConfigs,composeStepRunners,composeStories,composeStory,decorateStory,deepDiff,defaultDecorateStory,filterArgTypes,getArrayField,getField,getObjectField,getSingletonField,getValuesFromArgTypes,groupArgsByTarget,inferControls,mapArgsToTypes,noTargetArgs,normalizeComponentAnnotations,normalizeInputType,normalizeInputTypes,normalizeProjectAnnotations,normalizeStory,prepareStory,processCSFFile,sanitizeStoryContextUpdate,setProjectAnnotations,sortStoriesV6,sortStoriesV7,useAddonState,useArgs,useCallback,useChannel,useEffect,useGlobals,useMemo,useParameter,useReducer,useRef,useSharedState,useState,useStoryContext,userOrAutoTitle,userOrAutoTitleFromSpecifier,validateOptions});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/preview-api",
3
- "version": "7.0.0-alpha.54",
3
+ "version": "7.0.0-alpha.55",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "storybook"
@@ -67,12 +67,12 @@
67
67
  "prep": "../../../scripts/prepare/bundle.ts"
68
68
  },
69
69
  "dependencies": {
70
- "@storybook/channel-postmessage": "7.0.0-alpha.54",
71
- "@storybook/channels": "7.0.0-alpha.54",
72
- "@storybook/client-logger": "7.0.0-alpha.54",
73
- "@storybook/core-events": "7.0.0-alpha.54",
70
+ "@storybook/channel-postmessage": "7.0.0-alpha.55",
71
+ "@storybook/channels": "7.0.0-alpha.55",
72
+ "@storybook/client-logger": "7.0.0-alpha.55",
73
+ "@storybook/core-events": "7.0.0-alpha.55",
74
74
  "@storybook/csf": "next",
75
- "@storybook/types": "7.0.0-alpha.54",
75
+ "@storybook/types": "7.0.0-alpha.55",
76
76
  "@types/qs": "^6.9.5",
77
77
  "dequal": "^2.0.2",
78
78
  "global": "^4.4.0",
@@ -86,7 +86,7 @@
86
86
  },
87
87
  "devDependencies": {
88
88
  "@jest/globals": "^26.6.2",
89
- "@storybook/core-common": "7.0.0-alpha.54",
89
+ "@storybook/core-common": "7.0.0-alpha.55",
90
90
  "ansi-to-html": "^0.6.11",
91
91
  "react": "^16.14.0"
92
92
  },
@@ -103,5 +103,5 @@
103
103
  "./src/store.ts"
104
104
  ]
105
105
  },
106
- "gitHead": "91177d4e27daec556a24ae6223c3cbe17a998d9b"
106
+ "gitHead": "55cd2ab63d1f897de59e2471d2f916f7d2c13546"
107
107
  }
@@ -1,103 +0,0 @@
1
- import * as _storybook_types from '@storybook/types';
2
- import { Store_StoryIndex, Store_StorySpecifier, Addon_IndexEntry, StoryId, Path, Args, Store_Story, Globals, GlobalTypes, Renderer, Store_ModuleExports, ComponentTitle, Store_CSFFile, Store_NormalizedStoryAnnotations, Store_NormalizedComponentAnnotations, Store_NormalizedProjectAnnotations, Store_ModuleImportFn, ProjectAnnotations, Store_PromiseLike, StoryContextForLoaders, Store_ExtractOptions, StoryContextForEnhancers, Parameters, Store_StoryIndexV3, API_PreparedStoryIndex, Store_BoundStory } from '@storybook/types';
3
- import { SynchronousPromise } from 'synchronous-promise';
4
- import { H as HooksContext } from './hooks-0d0b05c1.js';
5
-
6
- declare class StoryIndexStore {
7
- entries: Store_StoryIndex['entries'];
8
- constructor({ entries }?: Store_StoryIndex);
9
- entryFromSpecifier(specifier: Store_StorySpecifier): Addon_IndexEntry | undefined;
10
- storyIdToEntry(storyId: StoryId): Addon_IndexEntry;
11
- importPathToEntry(importPath: Path): Addon_IndexEntry;
12
- }
13
-
14
- declare class ArgsStore {
15
- initialArgsByStoryId: Record<StoryId, Args>;
16
- argsByStoryId: Record<StoryId, Args>;
17
- get(storyId: StoryId): Args;
18
- setInitial(story: Store_Story<any>): void;
19
- updateFromDelta(story: Store_Story<any>, delta: Args): void;
20
- updateFromPersisted(story: Store_Story<any>, persisted: Args): void;
21
- update(storyId: StoryId, argsUpdate: Partial<Args>): void;
22
- }
23
-
24
- declare class GlobalsStore {
25
- allowedGlobalNames: Set<string>;
26
- initialGlobals: Globals;
27
- globals: Globals;
28
- constructor({ globals, globalTypes, }: {
29
- globals?: Globals;
30
- globalTypes?: GlobalTypes;
31
- });
32
- set({ globals, globalTypes }: {
33
- globals?: Globals;
34
- globalTypes?: GlobalTypes;
35
- }): void;
36
- filterAllowedGlobals(globals: Globals): Globals;
37
- updateFromPersisted(persisted: Globals): void;
38
- get(): Globals;
39
- update(newGlobals: Globals): void;
40
- }
41
-
42
- declare function processCSFFile<TRenderer extends Renderer>(moduleExports: Store_ModuleExports, importPath: Path, title: ComponentTitle): Store_CSFFile<TRenderer>;
43
-
44
- declare function prepareStory<TRenderer extends Renderer>(storyAnnotations: Store_NormalizedStoryAnnotations<TRenderer>, componentAnnotations: Store_NormalizedComponentAnnotations<TRenderer>, projectAnnotations: Store_NormalizedProjectAnnotations<TRenderer>): Store_Story<TRenderer>;
45
-
46
- declare class StoryStore<TRenderer extends Renderer> {
47
- storyIndex?: StoryIndexStore;
48
- importFn?: Store_ModuleImportFn;
49
- projectAnnotations?: Store_NormalizedProjectAnnotations<TRenderer>;
50
- globals?: GlobalsStore;
51
- args: ArgsStore;
52
- hooks: Record<StoryId, HooksContext<TRenderer>>;
53
- cachedCSFFiles?: Record<Path, Store_CSFFile<TRenderer>>;
54
- processCSFFileWithCache: typeof processCSFFile;
55
- prepareStoryWithCache: typeof prepareStory;
56
- initializationPromise: SynchronousPromise<void>;
57
- resolveInitializationPromise: () => void;
58
- constructor();
59
- setProjectAnnotations(projectAnnotations: ProjectAnnotations<TRenderer>): void;
60
- initialize({ storyIndex, importFn, cache, }: {
61
- storyIndex?: Store_StoryIndex;
62
- importFn: Store_ModuleImportFn;
63
- cache?: boolean;
64
- }): Store_PromiseLike<void>;
65
- onStoriesChanged({ importFn, storyIndex, }: {
66
- importFn?: Store_ModuleImportFn;
67
- storyIndex?: Store_StoryIndex;
68
- }): Promise<void>;
69
- storyIdToEntry(storyId: StoryId): Promise<Addon_IndexEntry>;
70
- loadCSFFileByStoryId(storyId: StoryId): Store_PromiseLike<Store_CSFFile<TRenderer>>;
71
- loadAllCSFFiles(): Store_PromiseLike<StoryStore<TRenderer>['cachedCSFFiles']>;
72
- cacheAllCSFFiles(): Store_PromiseLike<void>;
73
- loadStory({ storyId }: {
74
- storyId: StoryId;
75
- }): Promise<Store_Story<TRenderer>>;
76
- storyFromCSFFile({ storyId, csfFile, }: {
77
- storyId: StoryId;
78
- csfFile: Store_CSFFile<TRenderer>;
79
- }): Store_Story<TRenderer>;
80
- componentStoriesFromCSFFile({ csfFile, }: {
81
- csfFile: Store_CSFFile<TRenderer>;
82
- }): Store_Story<TRenderer>[];
83
- loadEntry(id: StoryId): Promise<{
84
- entryExports: Store_ModuleExports;
85
- csfFiles: Store_CSFFile<TRenderer>[];
86
- }>;
87
- getStoryContext(story: Store_Story<TRenderer>): Omit<StoryContextForLoaders<TRenderer>, 'viewMode'>;
88
- cleanupStory(story: Store_Story<TRenderer>): void;
89
- extract(options?: Store_ExtractOptions): Record<StoryId, StoryContextForEnhancers<TRenderer>>;
90
- getSetStoriesPayload(): {
91
- v: number;
92
- globals: _storybook_types.Globals;
93
- globalParameters: {};
94
- kindParameters: Parameters;
95
- stories: Record<string, StoryContextForEnhancers<TRenderer, _storybook_types.Args>>;
96
- };
97
- getStoriesJsonData: () => Store_StoryIndexV3;
98
- getSetIndexPayload(): API_PreparedStoryIndex;
99
- raw(): Store_BoundStory<TRenderer>[];
100
- fromId(storyId: StoryId): Store_BoundStory<TRenderer> | null;
101
- }
102
-
103
- export { StoryStore as S, processCSFFile as a, prepareStory as p };
@@ -1,9 +0,0 @@
1
- import { Store_ModuleExports, Renderer, ProjectAnnotations } from '@storybook/types';
2
-
3
- declare function getField<TFieldType = any>(moduleExportList: Store_ModuleExports[], field: string): TFieldType | TFieldType[];
4
- declare function getArrayField<TFieldType = any>(moduleExportList: Store_ModuleExports[], field: string): TFieldType[];
5
- declare function getObjectField<TFieldType = Record<string, any>>(moduleExportList: Store_ModuleExports[], field: string): TFieldType;
6
- declare function getSingletonField<TFieldType = any>(moduleExportList: Store_ModuleExports[], field: string): TFieldType;
7
- declare function composeConfigs<TRenderer extends Renderer>(moduleExportList: Store_ModuleExports[]): ProjectAnnotations<TRenderer>;
8
-
9
- export { getArrayField as a, getObjectField as b, composeConfigs as c, getSingletonField as d, getField as g };