@tramvai/storybook-addon 0.0.3 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +303 -0
- package/lib/decorators/actionsDecorator.d.ts +3 -1
- package/lib/decorators/actionsDecorator.js +3 -2
- package/lib/decorators/actionsDecorator.js.map +1 -1
- package/lib/decorators/reactQueryDecorator.d.ts +3 -1
- package/lib/decorators/reactQueryDecorator.js +2 -2
- package/lib/decorators/reactQueryDecorator.js.map +1 -1
- package/lib/decorators/routerDecorator.d.ts +4 -2
- package/lib/decorators/routerDecorator.js +3 -2
- package/lib/decorators/routerDecorator.js.map +1 -1
- package/lib/decorators/tramvaiCoreDecorator.d.ts +6 -4
- package/lib/decorators/tramvaiCoreDecorator.js +6 -6
- package/lib/decorators/tramvaiCoreDecorator.js.map +1 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -1,3 +1,306 @@
|
|
|
1
1
|
# @tramvai/storybook-addon
|
|
2
2
|
|
|
3
3
|
Storybook addon for tramvai apps
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
You need to install `@tramvai/storybook-addon`:
|
|
8
|
+
|
|
9
|
+
```bash npm2yarn
|
|
10
|
+
npm install @tramvai/storybook-addon
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
And connect addon in the storybook configuration file:
|
|
14
|
+
|
|
15
|
+
```js title=".storybook/main.js"
|
|
16
|
+
module.exports = {
|
|
17
|
+
addons: ["@tramvai/storybook-addon"]
|
|
18
|
+
}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Features
|
|
22
|
+
|
|
23
|
+
- Providers for DI container
|
|
24
|
+
- Providers for router
|
|
25
|
+
- Providers for `react-query`
|
|
26
|
+
- Page actions support
|
|
27
|
+
- tramvai `babel` configuration
|
|
28
|
+
- tramvai `postcss` configuration
|
|
29
|
+
|
|
30
|
+
## How to
|
|
31
|
+
|
|
32
|
+
### Access to DI container
|
|
33
|
+
|
|
34
|
+
<Tabs>
|
|
35
|
+
<TabItem value="page" label="page.tsx" default>
|
|
36
|
+
|
|
37
|
+
```tsx
|
|
38
|
+
import { LOGGER_TOKEN } from '@tramvai/tokens-common';
|
|
39
|
+
|
|
40
|
+
export const Page = () => {
|
|
41
|
+
const logger = useDi(LOGGER_TOKEN);
|
|
42
|
+
|
|
43
|
+
logger.info('render');
|
|
44
|
+
|
|
45
|
+
return (
|
|
46
|
+
<h1>Page</h1>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
</TabItem>
|
|
52
|
+
<TabItem value="story" label="page.stories.tsx" default>
|
|
53
|
+
|
|
54
|
+
```tsx
|
|
55
|
+
import type { TramvaiStoriesParameters } from '@tramvai/storybook-addon';
|
|
56
|
+
import { Page } from './page';
|
|
57
|
+
|
|
58
|
+
// You can pass to DI container any reducers, providers and modules
|
|
59
|
+
const parameters: TramvaiStoriesParameters = {
|
|
60
|
+
tramvai: {
|
|
61
|
+
stores: [],
|
|
62
|
+
initialState: {},
|
|
63
|
+
providers: [],
|
|
64
|
+
modules: [],
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
export default {
|
|
69
|
+
title: 'Page',
|
|
70
|
+
component: Page,
|
|
71
|
+
parameters,
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export const PageStory = () => <Page />;
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
</TabItem>
|
|
78
|
+
</Tabs>
|
|
79
|
+
|
|
80
|
+
### Router hooks and components
|
|
81
|
+
|
|
82
|
+
<Tabs>
|
|
83
|
+
<TabItem value="page" label="page.tsx" default>
|
|
84
|
+
|
|
85
|
+
```tsx
|
|
86
|
+
import { Link, useUrl } from '@tramvai/module-router';
|
|
87
|
+
|
|
88
|
+
export const Page = () => {
|
|
89
|
+
const url = useUrl();
|
|
90
|
+
|
|
91
|
+
return (
|
|
92
|
+
<>
|
|
93
|
+
<h1>Page at {url.pathname}</h1>
|
|
94
|
+
<p>
|
|
95
|
+
<Link url="/third/">to third page</Link>
|
|
96
|
+
</p>
|
|
97
|
+
</>
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
</TabItem>
|
|
103
|
+
<TabItem value="story" label="page.stories.tsx" default>
|
|
104
|
+
|
|
105
|
+
```tsx
|
|
106
|
+
import type { TramvaiStoriesParameters } from '@tramvai/storybook-addon';
|
|
107
|
+
import { Page } from './page';
|
|
108
|
+
|
|
109
|
+
// You can pass to router current route and url
|
|
110
|
+
const parameters: TramvaiStoriesParameters = {
|
|
111
|
+
tramvai: {
|
|
112
|
+
currentRoute: { name: 'second', path: '/second/' },
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
export default {
|
|
117
|
+
title: 'Page',
|
|
118
|
+
component: Page,
|
|
119
|
+
parameters,
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
export const PageStory = () => <Page />;
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
</TabItem>
|
|
126
|
+
</Tabs>
|
|
127
|
+
|
|
128
|
+
### React Query
|
|
129
|
+
|
|
130
|
+
<Tabs>
|
|
131
|
+
<TabItem value="page" label="page.tsx" default>
|
|
132
|
+
|
|
133
|
+
```tsx
|
|
134
|
+
import { createQuery, useQuery } from '@tramvai/react-query';
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
const query = createQuery({
|
|
138
|
+
key: 'base',
|
|
139
|
+
fn: async () => {
|
|
140
|
+
return { foo: 'bar' };
|
|
141
|
+
},
|
|
142
|
+
});
|
|
143
|
+
|
|
144
|
+
export const Page = () => {
|
|
145
|
+
const { data, isLoading } = useQuery(query);
|
|
146
|
+
|
|
147
|
+
return (
|
|
148
|
+
<>
|
|
149
|
+
<h1>Page</h1>
|
|
150
|
+
<p>
|
|
151
|
+
{isLoading ? 'Loading...' : data.foo}
|
|
152
|
+
</p>
|
|
153
|
+
</>
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
</TabItem>
|
|
159
|
+
<TabItem value="story" label="page.stories.tsx" default>
|
|
160
|
+
|
|
161
|
+
```tsx
|
|
162
|
+
import type { TramvaiStoriesParameters } from '@tramvai/storybook-addon';
|
|
163
|
+
import { Page } from './page';
|
|
164
|
+
|
|
165
|
+
// You can pass to router QueryClient default options
|
|
166
|
+
const parameters: TramvaiStoriesParameters = {
|
|
167
|
+
tramvai: {
|
|
168
|
+
reactQueryDefaultOptions: {
|
|
169
|
+
queries: {
|
|
170
|
+
refetchOnMount: false,
|
|
171
|
+
refetchOnReconnect: false,
|
|
172
|
+
refetchOnWindowFocus: false,
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
export default {
|
|
179
|
+
title: 'Page',
|
|
180
|
+
component: Page,
|
|
181
|
+
parameters,
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
export const PageStory = () => <Page />;
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
</TabItem>
|
|
188
|
+
</Tabs>
|
|
189
|
+
|
|
190
|
+
### Page actions running
|
|
191
|
+
|
|
192
|
+
<Tabs>
|
|
193
|
+
<TabItem value="page" label="page.tsx" default>
|
|
194
|
+
|
|
195
|
+
```tsx
|
|
196
|
+
import { createAction } from '@tramvai/core';
|
|
197
|
+
|
|
198
|
+
const serverAction = createAction({
|
|
199
|
+
name: 'server-action',
|
|
200
|
+
fn() {
|
|
201
|
+
console.log('server action');
|
|
202
|
+
},
|
|
203
|
+
conditions: {
|
|
204
|
+
onlyServer: true,
|
|
205
|
+
},
|
|
206
|
+
});
|
|
207
|
+
|
|
208
|
+
const browserAction = createAction({
|
|
209
|
+
name: 'browser-action',
|
|
210
|
+
fn() {
|
|
211
|
+
console.log('browser action');
|
|
212
|
+
},
|
|
213
|
+
conditions: {
|
|
214
|
+
onlyBrowser: true,
|
|
215
|
+
},
|
|
216
|
+
});
|
|
217
|
+
|
|
218
|
+
export const Page = () => {
|
|
219
|
+
return (
|
|
220
|
+
<h1>Page</h1>
|
|
221
|
+
);
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
Page.actions = [serverAction, browserAction];
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
</TabItem>
|
|
228
|
+
<TabItem value="story" label="page.stories.tsx" default>
|
|
229
|
+
|
|
230
|
+
```tsx
|
|
231
|
+
import type { TramvaiStoriesParameters } from '@tramvai/storybook-addon';
|
|
232
|
+
import { Page } from './page';
|
|
233
|
+
|
|
234
|
+
// Actions with `onlyBrowser` condition will be executed
|
|
235
|
+
const parameters: TramvaiStoriesParameters = {
|
|
236
|
+
tramvai: {
|
|
237
|
+
actions: Page.actions,
|
|
238
|
+
},
|
|
239
|
+
};
|
|
240
|
+
|
|
241
|
+
export default {
|
|
242
|
+
title: 'Page',
|
|
243
|
+
component: Page,
|
|
244
|
+
parameters,
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
export const PageStory = () => <Page />;
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
</TabItem>
|
|
251
|
+
</Tabs>
|
|
252
|
+
|
|
253
|
+
### Http clients with real requests
|
|
254
|
+
|
|
255
|
+
<Tabs>
|
|
256
|
+
<TabItem value="page" label="page.tsx" default>
|
|
257
|
+
|
|
258
|
+
```tsx
|
|
259
|
+
import { createAction } from '@tramvai/core';
|
|
260
|
+
|
|
261
|
+
const httpRequestAction = createAction({
|
|
262
|
+
name: 'http-request-action',
|
|
263
|
+
fn: async (_, __, { httpClient }) => {
|
|
264
|
+
return httpClient.get('/');
|
|
265
|
+
},
|
|
266
|
+
deps: {
|
|
267
|
+
httpClient: HTTP_CLIENT,
|
|
268
|
+
},
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
export const Page = () => {
|
|
272
|
+
return (
|
|
273
|
+
<h1>Page</h1>
|
|
274
|
+
);
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
Page.actions = [httpRequestAction];
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
</TabItem>
|
|
281
|
+
<TabItem value="story" label="page.stories.tsx" default>
|
|
282
|
+
|
|
283
|
+
```tsx
|
|
284
|
+
import { HttpClientModule } from '@tramvai/module-http-client';
|
|
285
|
+
import type { TramvaiStoriesParameters } from '@tramvai/storybook-addon';
|
|
286
|
+
import { Page } from './page';
|
|
287
|
+
|
|
288
|
+
// HttpClientModule is required for real requests
|
|
289
|
+
const parameters: TramvaiStoriesParameters = {
|
|
290
|
+
tramvai: {
|
|
291
|
+
actions: Page.actions,
|
|
292
|
+
modules: [HttpClientModule],
|
|
293
|
+
},
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
export default {
|
|
297
|
+
title: 'Page',
|
|
298
|
+
component: Page,
|
|
299
|
+
parameters,
|
|
300
|
+
};
|
|
301
|
+
|
|
302
|
+
export const PageStory = () => <Page />;
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
</TabItem>
|
|
306
|
+
</Tabs>
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Action } from '@tramvai/core';
|
|
2
2
|
export interface ActionsDecoratorParameters {
|
|
3
|
-
|
|
3
|
+
tramvai?: {
|
|
4
|
+
actions?: Action[];
|
|
5
|
+
};
|
|
4
6
|
}
|
|
5
7
|
export declare const ActionsDecorator: (Story: any, { parameters }: {
|
|
6
8
|
parameters: ActionsDecoratorParameters;
|
|
@@ -8,8 +8,9 @@ const tokens_common_1 = require("@tramvai/tokens-common");
|
|
|
8
8
|
const ActionsDecorator = (Story, { parameters }) => {
|
|
9
9
|
const actionExecution = react_2.useDi(tokens_common_1.ACTION_EXECUTION_TOKEN);
|
|
10
10
|
react_1.useEffect(() => {
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
var _a;
|
|
12
|
+
if ((_a = parameters.tramvai) === null || _a === void 0 ? void 0 : _a.actions) {
|
|
13
|
+
parameters.tramvai.actions.forEach((action) => {
|
|
13
14
|
// @ts-expect-error
|
|
14
15
|
actionExecution.run(action, undefined, 'global');
|
|
15
16
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionsDecorator.js","sourceRoot":"","sources":["../../src/decorators/actionsDecorator.tsx"],"names":[],"mappings":";;;;AAAA,iCAAkC;AAElC,0CAAuC;AACvC,0DAAgE;
|
|
1
|
+
{"version":3,"file":"actionsDecorator.js","sourceRoot":"","sources":["../../src/decorators/actionsDecorator.tsx"],"names":[],"mappings":";;;;AAAA,iCAAkC;AAElC,0CAAuC;AACvC,0DAAgE;AAQzD,MAAM,gBAAgB,GAAG,CAC9B,KAAK,EACL,EAAE,UAAU,EAA8C,EAC1D,EAAE;IACF,MAAM,eAAe,GAAG,aAAK,CAAC,sCAAsB,CAAC,CAAC;IAEtD,iBAAS,CAAC,GAAG,EAAE;;QACb,IAAI,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,EAAE;YAC/B,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC5C,mBAAmB;gBACnB,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;YACnD,CAAC,CAAC,CAAC;SACJ;QACD,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,kBAAC,KAAK,aAAG,CAAC;AACnB,CAAC,CAAC;AAjBW,QAAA,gBAAgB,oBAiB3B"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { DefaultOptions } from 'react-query';
|
|
2
2
|
export interface ReactQueryDecoratorParameters {
|
|
3
|
-
|
|
3
|
+
tramvai?: {
|
|
4
|
+
reactQueryDefaultOptions?: DefaultOptions;
|
|
5
|
+
};
|
|
4
6
|
}
|
|
5
7
|
export declare const ReactQueryDecorator: (Story: any, { parameters }: {
|
|
6
8
|
parameters: ReactQueryDecoratorParameters;
|
|
@@ -4,9 +4,9 @@ exports.ReactQueryDecorator = void 0;
|
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_query_1 = require("react-query");
|
|
6
6
|
const ReactQueryDecorator = (Story, { parameters }) => {
|
|
7
|
-
var _a;
|
|
7
|
+
var _a, _b;
|
|
8
8
|
const queryClient = new react_query_1.QueryClient({
|
|
9
|
-
defaultOptions: (_a = parameters.reactQueryDefaultOptions) !== null &&
|
|
9
|
+
defaultOptions: (_b = (_a = parameters.tramvai) === null || _a === void 0 ? void 0 : _a.reactQueryDefaultOptions) !== null && _b !== void 0 ? _b : {
|
|
10
10
|
queries: {
|
|
11
11
|
refetchOnMount: false,
|
|
12
12
|
refetchOnReconnect: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactQueryDecorator.js","sourceRoot":"","sources":["../../src/decorators/reactQueryDecorator.tsx"],"names":[],"mappings":";;;;AAAA,6CAA+D;
|
|
1
|
+
{"version":3,"file":"reactQueryDecorator.js","sourceRoot":"","sources":["../../src/decorators/reactQueryDecorator.tsx"],"names":[],"mappings":";;;;AAAA,6CAA+D;AASxD,MAAM,mBAAmB,GAAG,CACjC,KAAK,EACL,EAAE,UAAU,EAAiD,EAC7D,EAAE;;IACF,MAAM,WAAW,GAAG,IAAI,yBAAW,CAAC;QAClC,cAAc,EAAE,MAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,wBAAwB,mCAAI;YAC9D,OAAO,EAAE;gBACP,cAAc,EAAE,KAAK;gBACrB,kBAAkB,EAAE,KAAK;gBACzB,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF,CAAC,CAAC;IAEH,OAAO,CACL,kBAAC,iCAAmB,kBAAC,MAAM,EAAE,WAAW,gBACtC,kBAAC,KAAK,aAAG,YACW,CACvB,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,mBAAmB,uBAmB9B"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { Route } from '@tinkoff/router';
|
|
2
2
|
import type { Url } from '@tinkoff/url';
|
|
3
3
|
export interface RouterDecoratorParameters {
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
tramvai?: {
|
|
5
|
+
currentRoute?: Route;
|
|
6
|
+
currentUrl?: Url;
|
|
7
|
+
};
|
|
6
8
|
}
|
|
7
9
|
export declare const RouterDecorator: (Story: any, { parameters }: {
|
|
8
10
|
parameters: RouterDecoratorParameters;
|
|
@@ -5,9 +5,10 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const router_1 = require("@tinkoff/router");
|
|
6
6
|
const test_mocks_1 = require("@tramvai/test-mocks");
|
|
7
7
|
const RouterDecorator = (Story, { parameters }) => {
|
|
8
|
+
var _a, _b;
|
|
8
9
|
const routerMock = test_mocks_1.createMockRouter({
|
|
9
|
-
currentRoute: parameters.currentRoute,
|
|
10
|
-
currentUrl: parameters.currentUrl,
|
|
10
|
+
currentRoute: (_a = parameters.tramvai) === null || _a === void 0 ? void 0 : _a.currentRoute,
|
|
11
|
+
currentUrl: (_b = parameters.tramvai) === null || _b === void 0 ? void 0 : _b.currentUrl,
|
|
11
12
|
});
|
|
12
13
|
return (jsx_runtime_1.jsx(router_1.Provider, Object.assign({ router: routerMock }, { children: jsx_runtime_1.jsx(Story, {}, void 0) }), void 0));
|
|
13
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerDecorator.js","sourceRoot":"","sources":["../../src/decorators/routerDecorator.tsx"],"names":[],"mappings":";;;;AAAA,4CAA6D;AAG7D,oDAAuD;
|
|
1
|
+
{"version":3,"file":"routerDecorator.js","sourceRoot":"","sources":["../../src/decorators/routerDecorator.tsx"],"names":[],"mappings":";;;;AAAA,4CAA6D;AAG7D,oDAAuD;AAShD,MAAM,eAAe,GAAG,CAC7B,KAAK,EACL,EAAE,UAAU,EAA6C,EACzD,EAAE;;IACF,MAAM,UAAU,GAAG,6BAAgB,CAAC;QAClC,YAAY,EAAE,MAAA,UAAU,CAAC,OAAO,0CAAE,YAAY;QAC9C,UAAU,EAAE,MAAA,UAAU,CAAC,OAAO,0CAAE,UAAU;KAC3C,CAAC,CAAC;IAEH,OAAO,CACL,kBAAC,iBAAc,kBAAC,MAAM,EAAE,UAAU,gBAChC,kBAAC,KAAK,aAAG,YACM,CAClB,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B"}
|
|
@@ -2,10 +2,12 @@ import type { StoreClass } from '@tramvai/state';
|
|
|
2
2
|
import type { ExtendedModule, ModuleType } from '@tramvai/core';
|
|
3
3
|
import type { Provider as DiProvider } from '@tinkoff/dippy';
|
|
4
4
|
export interface TramvaiCoreDecoratorParameters {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
tramvai?: {
|
|
6
|
+
stores?: StoreClass[];
|
|
7
|
+
initialState?: Record<string, any>;
|
|
8
|
+
providers?: DiProvider[];
|
|
9
|
+
modules?: Array<ModuleType | ExtendedModule>;
|
|
10
|
+
};
|
|
9
11
|
}
|
|
10
12
|
export declare const TramvaiCoreDecorator: (Story: any, { parameters }: {
|
|
11
13
|
parameters: TramvaiCoreDecoratorParameters;
|
|
@@ -8,13 +8,13 @@ const tokens_common_1 = require("@tramvai/tokens-common");
|
|
|
8
8
|
const core_1 = require("@tramvai/core");
|
|
9
9
|
const test_mocks_1 = require("@tramvai/test-mocks");
|
|
10
10
|
const TramvaiCoreDecorator = (Story, { parameters }) => {
|
|
11
|
-
var _a, _b;
|
|
11
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
12
12
|
const storeMock = test_mocks_1.createMockStore({
|
|
13
|
-
stores: parameters.stores,
|
|
14
|
-
initialState: parameters.initialState,
|
|
13
|
+
stores: (_a = parameters.tramvai) === null || _a === void 0 ? void 0 : _a.stores,
|
|
14
|
+
initialState: (_b = parameters.tramvai) === null || _b === void 0 ? void 0 : _b.initialState,
|
|
15
15
|
});
|
|
16
16
|
const diMock = test_mocks_1.createMockDi({
|
|
17
|
-
modules: [...((
|
|
17
|
+
modules: [...((_d = (_c = parameters.tramvai) === null || _c === void 0 ? void 0 : _c.modules) !== null && _d !== void 0 ? _d : [])],
|
|
18
18
|
providers: [
|
|
19
19
|
{
|
|
20
20
|
provide: tokens_common_1.LOGGER_TOKEN,
|
|
@@ -36,7 +36,7 @@ const TramvaiCoreDecorator = (Story, { parameters }) => {
|
|
|
36
36
|
provide: tokens_common_1.CREATE_CACHE_TOKEN,
|
|
37
37
|
useValue: () => test_mocks_1.createMockCache(),
|
|
38
38
|
},
|
|
39
|
-
...((
|
|
39
|
+
...((_f = (_e = parameters.tramvai) === null || _e === void 0 ? void 0 : _e.providers) !== null && _f !== void 0 ? _f : []),
|
|
40
40
|
],
|
|
41
41
|
});
|
|
42
42
|
const contextMock = test_mocks_1.createMockContext({
|
|
@@ -44,7 +44,7 @@ const TramvaiCoreDecorator = (Story, { parameters }) => {
|
|
|
44
44
|
store: storeMock,
|
|
45
45
|
useTramvaiActionsConditionals: true,
|
|
46
46
|
});
|
|
47
|
-
return (jsx_runtime_1.jsx(state_1.Provider, Object.assign({ context: contextMock, serverState: parameters.initialState }, { children: jsx_runtime_1.jsx(react_1.DIContext.Provider, Object.assign({ value: diMock }, { children: jsx_runtime_1.jsx(Story, {}, void 0) }), void 0) }), void 0));
|
|
47
|
+
return (jsx_runtime_1.jsx(state_1.Provider, Object.assign({ context: contextMock, serverState: (_g = parameters.tramvai) === null || _g === void 0 ? void 0 : _g.initialState }, { children: jsx_runtime_1.jsx(react_1.DIContext.Provider, Object.assign({ value: diMock }, { children: jsx_runtime_1.jsx(Story, {}, void 0) }), void 0) }), void 0));
|
|
48
48
|
};
|
|
49
49
|
exports.TramvaiCoreDecorator = TramvaiCoreDecorator;
|
|
50
50
|
//# sourceMappingURL=tramvaiCoreDecorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tramvaiCoreDecorator.js","sourceRoot":"","sources":["../../src/decorators/tramvaiCoreDecorator.tsx"],"names":[],"mappings":";;;;AAAA,0CAA0C;AAE1C,0CAA2C;AAC3C,0DAKgC;AAEhC,wCAA+C;AAE/C,oDAS6B;
|
|
1
|
+
{"version":3,"file":"tramvaiCoreDecorator.js","sourceRoot":"","sources":["../../src/decorators/tramvaiCoreDecorator.tsx"],"names":[],"mappings":";;;;AAAA,0CAA0C;AAE1C,0CAA2C;AAC3C,0DAKgC;AAEhC,wCAA+C;AAE/C,oDAS6B;AAWtB,MAAM,oBAAoB,GAAG,CAClC,KAAK,EACL,EAAE,UAAU,EAAkD,EAC9D,EAAE;;IACF,MAAM,SAAS,GAAG,4BAAe,CAAC;QAChC,MAAM,EAAE,MAAA,UAAU,CAAC,OAAO,0CAAE,MAAM;QAClC,YAAY,EAAE,MAAA,UAAU,CAAC,OAAO,0CAAE,YAAY;KAC/C,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,yBAAY,CAAC;QAC1B,OAAO,EAAE,CAAC,GAAG,CAAC,MAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,mCAAI,EAAE,CAAC,CAAC;QACjD,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,4BAAY;gBACrB,QAAQ,EAAE,6BAAgB,EAAE;aAC7B;YACD;gBACE,OAAO,EAAE,iCAAiB;gBAC1B,QAAQ,EAAE,iCAAoB,EAAE;aACjC;YACD;gBACE,OAAO,EAAE,qBAAc;gBACvB,QAAQ,EAAE,8BAAiB,EAAE;aAC9B;YACD;gBACE,OAAO,EAAE,qCAAqB;gBAC9B,QAAQ,EAAE,qCAAwB,EAAE;aACrC;YACD;gBACE,OAAO,EAAE,kCAAkB;gBAC3B,QAAQ,EAAE,GAAG,EAAE,CAAC,4BAAe,EAAE;aAClC;YACD,GAAG,CAAC,MAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,SAAS,mCAAI,EAAE,CAAC;SACzC;KACF,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,8BAAiB,CAAC;QACpC,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,SAAS;QAChB,6BAA6B,EAAE,IAAI;KACpC,CAAC,CAAC;IAEH,OAAO,CACL,kBAAC,gBAAQ,kBAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAA,UAAU,CAAC,OAAO,0CAAE,YAAY,gBAC3E,kBAAC,iBAAS,CAAC,QAAQ,kBAAC,KAAK,EAAE,MAAM,gBAC/B,kBAAC,KAAK,aAAG,YACU,YACZ,CACZ,CAAC;AACJ,CAAC,CAAC;AA/CW,QAAA,oBAAoB,wBA+C/B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tramvai/storybook-addon",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/preset.js",
|
|
6
6
|
"typings": "lib/preset.d.ts",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"registry": "https://registry.npmjs.org/"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@tramvai/test-mocks": "1.
|
|
23
|
+
"@tramvai/test-mocks": "1.98.0",
|
|
24
24
|
"webpack-chain": "^6.5.1",
|
|
25
25
|
"webpack-merge": "^5.8.0",
|
|
26
26
|
"react-query": "^3.35.0"
|
|
@@ -31,11 +31,11 @@
|
|
|
31
31
|
"webpack": "5.64.4"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"@tramvai/cli": "1.
|
|
35
|
-
"@tramvai/core": "1.
|
|
36
|
-
"@tramvai/state": "1.
|
|
37
|
-
"@tramvai/react": "1.
|
|
38
|
-
"@tramvai/tokens-common": "1.
|
|
34
|
+
"@tramvai/cli": "1.98.0",
|
|
35
|
+
"@tramvai/core": "1.98.0",
|
|
36
|
+
"@tramvai/state": "1.98.0",
|
|
37
|
+
"@tramvai/react": "1.98.0",
|
|
38
|
+
"@tramvai/tokens-common": "1.98.0",
|
|
39
39
|
"@tinkoff/dippy": "0.7.39",
|
|
40
40
|
"@tinkoff/router": "0.1.72",
|
|
41
41
|
"@tinkoff/url": "0.7.37",
|