@storybook/csf 0.0.2--canary.43.a3d8c69.0 → 0.0.2--canary.49.9d84710.0

Sign up to get free protection for your applications and to get access to all the features.
package/dist/story.d.ts CHANGED
@@ -64,10 +64,15 @@ export declare type StrictGlobalTypes = {
64
64
  export declare type AnyFramework = {
65
65
  component: unknown;
66
66
  storyResult: unknown;
67
+ T?: unknown;
67
68
  };
68
69
  export declare type StoryContextForEnhancers<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = StoryIdentifier & {
69
- component?: TFramework['component'];
70
- subcomponents?: Record<string, TFramework['component']>;
70
+ component?: (TFramework & {
71
+ T: any;
72
+ })['component'];
73
+ subcomponents?: (TFramework & {
74
+ T: any;
75
+ })['component'];
71
76
  parameters: Parameters;
72
77
  initialArgs: TArgs;
73
78
  argTypes: StrictArgTypes<TArgs>;
@@ -93,19 +98,25 @@ export declare type StoryContext<TFramework extends AnyFramework = AnyFramework,
93
98
  abortSignal: AbortSignal;
94
99
  canvasElement: HTMLElement;
95
100
  };
96
- export declare type PlayFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: StoryContext<TFramework, TArgs>) => Promise<void> | void;
97
- export declare type PartialStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (update?: StoryContextUpdate<TArgs>) => TFramework['storyResult'];
101
+ export declare type StepLabel = string;
102
+ export declare type StepFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (label: StepLabel, play: PlayFunction<TFramework, TArgs>) => Promise<void> | void;
103
+ export declare type PlayFunctionContext<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = StoryContext<TFramework, TArgs> & {
104
+ step: StepFunction<TFramework, TArgs>;
105
+ };
106
+ export declare type PlayFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: PlayFunctionContext<TFramework, TArgs>) => Promise<void> | void;
107
+ export declare type PartialStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (update?: StoryContextUpdate<Partial<TArgs>>) => TFramework['storyResult'];
98
108
  export declare type LegacyStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (context: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
99
109
  export declare type ArgsStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (args: TArgs, context: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
100
110
  export declare type StoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = LegacyStoryFn<TFramework, TArgs> | ArgsStoryFn<TFramework, TArgs>;
101
111
  export declare type DecoratorFunction<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (fn: PartialStoryFn<TFramework, TArgs>, c: StoryContext<TFramework, TArgs>) => TFramework['storyResult'];
102
112
  export declare type DecoratorApplicator<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (storyFn: LegacyStoryFn<TFramework, TArgs>, decorators: DecoratorFunction<TFramework, TArgs>[]) => LegacyStoryFn<TFramework, TArgs>;
113
+ export declare type StepRunner<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = (label: StepLabel, play: PlayFunction<TFramework, TArgs>, context: PlayFunctionContext<TFramework, TArgs>) => Promise<void>;
103
114
  export declare type BaseAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = {
104
- decorators?: DecoratorFunction<TFramework, Args>[];
115
+ decorators?: DecoratorFunction<TFramework, TArgs>[];
105
116
  parameters?: Parameters;
106
117
  args?: Partial<TArgs>;
107
118
  argTypes?: Partial<ArgTypes<TArgs>>;
108
- loaders?: LoaderFunction<TFramework, Args>[];
119
+ loaders?: LoaderFunction<TFramework, TArgs>[];
109
120
  render?: ArgsStoryFn<TFramework, TArgs>;
110
121
  };
111
122
  export declare type ProjectAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = BaseAnnotations<TFramework, TArgs> & {
@@ -114,22 +125,29 @@ export declare type ProjectAnnotations<TFramework extends AnyFramework = AnyFram
114
125
  globals?: Globals;
115
126
  globalTypes?: GlobalTypes;
116
127
  applyDecorators?: DecoratorApplicator<TFramework, Args>;
128
+ runStep?: StepRunner<TFramework, TArgs>;
117
129
  };
118
130
  declare type StoryDescriptor = string[] | RegExp;
119
- export declare type ComponentAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = BaseAnnotations<TFramework, TArgs> & {
131
+ export interface ComponentAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> extends BaseAnnotations<TFramework, TArgs> {
120
132
  title?: ComponentTitle;
121
133
  id?: ComponentId;
122
134
  includeStories?: StoryDescriptor;
123
135
  excludeStories?: StoryDescriptor;
124
- component?: TFramework['component'];
136
+ component?: (TFramework & {
137
+ T: Args extends TArgs ? any : TArgs;
138
+ })['component'];
125
139
  subcomponents?: Record<string, TFramework['component']>;
126
- };
127
- export declare type StoryAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = BaseAnnotations<TFramework, TArgs> & {
140
+ }
141
+ export declare type StoryAnnotations<TFramework extends AnyFramework = AnyFramework, TArgs = Args, TArgsAnnotations = Partial<TArgs>> = BaseAnnotations<TFramework, TArgs> & {
128
142
  name?: StoryName;
129
143
  storyName?: StoryName;
130
144
  play?: PlayFunction<TFramework, TArgs>;
131
145
  story?: Omit<StoryAnnotations<TFramework, TArgs>, 'story'>;
132
- };
146
+ } & ({} extends TArgsAnnotations ? {
147
+ args?: TArgsAnnotations;
148
+ } : {
149
+ args: TArgsAnnotations;
150
+ });
133
151
  export declare type LegacyAnnotatedStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = StoryFn<TFramework, TArgs> & StoryAnnotations<TFramework, TArgs>;
134
152
  export declare type LegacyStoryAnnotationsOrFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = LegacyAnnotatedStoryFn<TFramework, TArgs> | StoryAnnotations<TFramework, TArgs>;
135
153
  export declare type AnnotatedStoryFn<TFramework extends AnyFramework = AnyFramework, TArgs = Args> = ArgsStoryFn<TFramework, TArgs> & StoryAnnotations<TFramework, TArgs>;
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
4
+
5
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
6
+
3
7
  // NOTE Example of internal type definition for @storybook/<X> (where X is a framework)
4
8
  // NOTE Examples of using types from @storybook/<X> in real project
5
- var Button = function Button() {
9
+ var Button = function Button(props) {
6
10
  return 'Button';
7
- };
11
+ }; // NOTE Various kind usages
12
+
8
13
 
9
- // NOTE Various kind usages
10
14
  var simple = {
11
15
  title: 'simple',
12
16
  component: Button,
@@ -26,10 +30,10 @@ var simple = {
26
30
  });
27
31
  }],
28
32
  args: {
29
- a: 1
33
+ x: '1'
30
34
  },
31
35
  argTypes: {
32
- a: {
36
+ x: {
33
37
  type: {
34
38
  name: 'string'
35
39
  }
@@ -157,6 +161,71 @@ var CSF3StoryStrict = {
157
161
  }],
158
162
  args: {
159
163
  x: '1'
164
+ },
165
+ play: function () {
166
+ var _play = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(_ref) {
167
+ var step;
168
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
169
+ while (1) {
170
+ switch (_context2.prev = _context2.next) {
171
+ case 0:
172
+ step = _ref.step;
173
+ _context2.next = 3;
174
+ return step('a step', /*#__PURE__*/function () {
175
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(_ref2) {
176
+ var substep;
177
+ return regeneratorRuntime.wrap(function _callee$(_context) {
178
+ while (1) {
179
+ switch (_context.prev = _context.next) {
180
+ case 0:
181
+ substep = _ref2.step;
182
+ _context.next = 3;
183
+ return substep('a substep', function () {});
184
+
185
+ case 3:
186
+ case "end":
187
+ return _context.stop();
188
+ }
189
+ }
190
+ }, _callee);
191
+ }));
192
+
193
+ return function (_x2) {
194
+ return _ref3.apply(this, arguments);
195
+ };
196
+ }());
197
+
198
+ case 3:
199
+ case "end":
200
+ return _context2.stop();
201
+ }
202
+ }
203
+ }, _callee2);
204
+ }));
205
+
206
+ function play(_x) {
207
+ return _play.apply(this, arguments);
208
+ }
209
+
210
+ return play;
211
+ }()
212
+ };
213
+ var project = {
214
+ runStep: function runStep(label, play, context) {
215
+ return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
216
+ return regeneratorRuntime.wrap(function _callee3$(_context3) {
217
+ while (1) {
218
+ switch (_context3.prev = _context3.next) {
219
+ case 0:
220
+ return _context3.abrupt("return", play(context));
221
+
222
+ case 1:
223
+ case "end":
224
+ return _context3.stop();
225
+ }
226
+ }
227
+ }, _callee3);
228
+ }))();
160
229
  }
161
230
  }; // NOTE Jest forced to define at least one test in file
162
231
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/csf",
3
- "version": "0.0.2--canary.43.a3d8c69.0",
3
+ "version": "0.0.2--canary.49.9d84710.0",
4
4
  "description": "Component Story Format (CSF) utilities",
5
5
  "keywords": [
6
6
  "storybook",
@@ -61,7 +61,7 @@
61
61
  "common-tags": "^1.8.0",
62
62
  "eslint": "^6.7.1",
63
63
  "jest": "^24.9.0",
64
- "prettier": "^1.19.1",
64
+ "prettier": "^2.7.1",
65
65
  "typescript": "^3.7.2"
66
66
  },
67
67
  "auto": {