@storybook/preview-api 8.1.0-alpha.6 → 8.1.0-alpha.8

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { Channel } from '@storybook/channels';
2
2
  import * as _storybook_types from '@storybook/types';
3
3
  import { Renderer, Args, StoryContext, StoryId, DecoratorApplicator, Addon_StoryWrapper, StoryName, ComponentTitle, StoryIndex, IndexEntry, Path, PreparedStory, Globals, GlobalTypes, LegacyStoryAnnotationsOrFn, NormalizedComponentAnnotations, NormalizedStoryAnnotations, ModuleExports, CSFFile, NormalizedProjectAnnotations, ModuleExport, PreparedMeta, ProjectAnnotations, StepRunner, NamedOrDefaultProjectAnnotations, ComponentAnnotations, ComposedStoryFn, Store_CSFExports, ComposeStoryFn, ModuleImportFn, StoryContextForLoaders, StoryContextForEnhancers, Parameters, StoryIndexV3, BoundStory, StrictArgTypes, ArgTypesEnhancer, LegacyStoryFn, DecoratorFunction, PartialStoryFn, StoryContextUpdate, NormalizedStoriesSpecifier, Addon_StorySortParameterV7, StoryRenderOptions, ViewMode, RenderToCanvas, RenderContextCallbacks, DocsContextProps, ResolvedModuleExportType, ResolvedModuleExportFromType } from '@storybook/types';
4
+ import { CleanupCallback } from '@storybook/csf';
5
+ import { RequestData, ArgTypesRequestPayload } from '@storybook/core-events';
4
6
  import qs$1 from 'qs';
5
7
 
6
8
  declare class AddonStore {
@@ -315,7 +317,7 @@ declare function composeConfigs<TRenderer extends Renderer>(moduleExportList: Mo
315
317
  /**
316
318
  * Compose step runners to create a single step runner that applies each step runner in order.
317
319
  *
318
- * A step runner is a a function that takes a defined step: `step('label', () => { ... })`
320
+ * A step runner is a function that takes a defined step: `step('label', () => { ... })`
319
321
  * and runs it. The prototypical example is from `@storybook/addon-interactions` where the
320
322
  * step runner will decorate all instrumented code inside the step with information about the
321
323
  * label.
@@ -357,6 +359,7 @@ declare class StoryStore<TRenderer extends Renderer> {
357
359
  globals: GlobalsStore;
358
360
  args: ArgsStore;
359
361
  hooks: Record<StoryId, HooksContext<TRenderer>>;
362
+ cleanupCallbacks: Record<StoryId, CleanupCallback[] | undefined>;
360
363
  cachedCSFFiles?: Record<Path, CSFFile<TRenderer>>;
361
364
  processCSFFileWithCache: typeof processCSFFile;
362
365
  prepareMetaWithCache: typeof prepareMeta;
@@ -391,7 +394,8 @@ declare class StoryStore<TRenderer extends Renderer> {
391
394
  getStoryContext(story: PreparedStory<TRenderer>, { forceInitialArgs }?: {
392
395
  forceInitialArgs?: boolean | undefined;
393
396
  }): Omit<StoryContextForLoaders, 'viewMode'>;
394
- cleanupStory(story: PreparedStory<TRenderer>): void;
397
+ addCleanupCallbacks(story: PreparedStory<TRenderer>, callbacks: CleanupCallback[]): void;
398
+ cleanupStory(story: PreparedStory<TRenderer>): Promise<void>;
395
399
  extract(options?: {
396
400
  includeDocsOnly?: boolean;
397
401
  }): Record<StoryId, StoryContextForEnhancers<TRenderer>>;
@@ -459,7 +463,7 @@ interface Render<TRenderer extends Renderer> {
459
463
  renderToElement: (canvasElement: TRenderer['canvasElement'], renderStoryToElement?: any, options?: StoryRenderOptions) => Promise<void>;
460
464
  }
461
465
 
462
- type RenderPhase = 'preparing' | 'loading' | 'rendering' | 'playing' | 'played' | 'completed' | 'aborted' | 'errored';
466
+ type RenderPhase = 'preparing' | 'loading' | 'beforeEach' | 'rendering' | 'playing' | 'played' | 'completed' | 'aborted' | 'errored';
463
467
  declare class StoryRender<TRenderer extends Renderer> implements Render<TRenderer> {
464
468
  channel: Channel;
465
469
  store: StoryStore<TRenderer>;
@@ -474,6 +478,7 @@ declare class StoryRender<TRenderer extends Renderer> implements Render<TRendere
474
478
  private abortController?;
475
479
  private canvasElement?;
476
480
  private notYetRendered;
481
+ private rerenderEnqueued;
477
482
  disableKeyListeners: boolean;
478
483
  private teardownRender;
479
484
  torndown: boolean;
@@ -489,6 +494,13 @@ declare class StoryRender<TRenderer extends Renderer> implements Render<TRendere
489
494
  initial?: boolean;
490
495
  forceRemount?: boolean;
491
496
  }): Promise<void>;
497
+ /**
498
+ * Rerender the story.
499
+ * If the story is currently pending (loading/rendering), the rerender will be enqueued,
500
+ * and will be executed after the current render is completed.
501
+ * Rerendering while playing will not be enqueued, and will be executed immediately, to support
502
+ * rendering args changes while playing.
503
+ */
492
504
  rerender(): Promise<void>;
493
505
  remount(): Promise<void>;
494
506
  cancelRender(): void;
@@ -644,6 +656,7 @@ declare class Preview<TRenderer extends Renderer> {
644
656
  storyId: StoryId;
645
657
  updatedArgs: Args;
646
658
  }): Promise<void>;
659
+ onRequestArgTypesInfo({ id, payload }: RequestData<ArgTypesRequestPayload>): Promise<void>;
647
660
  onResetArgs({ storyId, argNames }: {
648
661
  storyId: string;
649
662
  argNames?: string[];