@storybook/react-native 6.5.4 → 6.5.5-alpha.1

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 (43) hide show
  1. package/dist/hooks.d.ts +6 -5
  2. package/dist/hooks.js +24 -5
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.js +3 -3
  5. package/dist/preview/View.d.ts +2 -3
  6. package/dist/preview/View.js +7 -34
  7. package/dist/preview/components/OnDeviceUI/OnDeviceUI.d.ts +1 -1
  8. package/dist/preview/components/OnDeviceUI/OnDeviceUI.js +9 -24
  9. package/dist/preview/components/OnDeviceUI/Panel.d.ts +1 -1
  10. package/dist/preview/components/OnDeviceUI/Panel.js +2 -1
  11. package/dist/preview/components/OnDeviceUI/absolute-positioned-keyboard-aware-view.d.ts +1 -1
  12. package/dist/preview/components/OnDeviceUI/absolute-positioned-keyboard-aware-view.js +3 -3
  13. package/dist/preview/components/OnDeviceUI/addons/Addons.d.ts +1 -1
  14. package/dist/preview/components/OnDeviceUI/addons/Addons.js +4 -7
  15. package/dist/preview/components/OnDeviceUI/addons/AddonsSkeleton.js +7 -16
  16. package/dist/preview/components/OnDeviceUI/addons/List.d.ts +1 -1
  17. package/dist/preview/components/OnDeviceUI/addons/List.js +6 -5
  18. package/dist/preview/components/OnDeviceUI/addons/Wrapper.d.ts +1 -1
  19. package/dist/preview/components/OnDeviceUI/addons/Wrapper.js +3 -3
  20. package/dist/preview/components/OnDeviceUI/navigation/Navigation.d.ts +1 -1
  21. package/dist/preview/components/OnDeviceUI/navigation/Navigation.js +4 -8
  22. package/dist/preview/components/OnDeviceUI/navigation/NavigationBar.d.ts +1 -1
  23. package/dist/preview/components/OnDeviceUI/navigation/NavigationBar.js +2 -4
  24. package/dist/preview/components/OnDeviceUI/navigation/NavigationButton.d.ts +2 -3
  25. package/dist/preview/components/OnDeviceUI/navigation/NavigationButton.js +4 -10
  26. package/dist/preview/components/Shared/icons.d.ts +22 -4
  27. package/dist/preview/components/Shared/icons.js +12 -5
  28. package/dist/preview/components/Shared/layout.d.ts +15 -1
  29. package/dist/preview/components/Shared/layout.js +4 -24
  30. package/dist/preview/components/Shared/tabs.d.ts +2 -2
  31. package/dist/preview/components/Shared/tabs.js +6 -7
  32. package/dist/preview/components/StoryListView/StoryListView.d.ts +1 -1
  33. package/dist/preview/components/StoryListView/StoryListView.js +54 -59
  34. package/dist/preview/components/StoryListView/getNestedStories.d.ts +10 -0
  35. package/dist/preview/components/StoryListView/getNestedStories.js +95 -0
  36. package/dist/preview/components/StoryListView/getNestedStories.test.d.ts +1 -0
  37. package/dist/preview/components/StoryListView/getNestedStories.test.js +237 -0
  38. package/dist/preview/components/StoryView/StoryView.d.ts +1 -1
  39. package/dist/preview/components/StoryView/StoryView.js +3 -3
  40. package/dist/preview/start.js +2 -2
  41. package/package.json +10 -6
  42. package/dist/preview/components/Shared/theme.d.ts +0 -189
  43. package/dist/preview/components/Shared/theme.js +0 -321
@@ -0,0 +1,237 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var getNestedStories_1 = require("./getNestedStories");
4
+ var storyIndex = {
5
+ stories: {
6
+ 'chat-message--message-first': {
7
+ id: 'chat-message--message-first',
8
+ importPath: './components/NestingExample/ChatMessage.stories.tsx',
9
+ name: 'Message First',
10
+ title: 'Chat/Message',
11
+ },
12
+ 'chat-message--message-second': {
13
+ id: 'chat-message--message-second',
14
+ importPath: './components/NestingExample/ChatMessage.stories.tsx',
15
+ name: 'Message Second',
16
+ title: 'Chat/Message',
17
+ },
18
+ 'chat-message-bubble--first': {
19
+ id: 'chat-message-bubble--first',
20
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
21
+ name: 'First',
22
+ title: 'Chat/Message/bubble',
23
+ },
24
+ 'chat-message-bubble--second': {
25
+ id: 'chat-message-bubble--second',
26
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
27
+ name: 'Second Story',
28
+ title: 'Chat/Message/bubble',
29
+ },
30
+ 'chat-message-reactions--message-one': {
31
+ id: 'chat-message-reactions--message-one',
32
+ importPath: './components/NestingExample/ChatMessageReactions.stories.tsx',
33
+ name: 'Message One',
34
+ title: 'Chat/Message/Reactions',
35
+ },
36
+ 'chat-message-reactions--message-two': {
37
+ id: 'chat-message-reactions--message-two',
38
+ importPath: './components/NestingExample/ChatMessageReactions.stories.tsx',
39
+ name: 'Message Two',
40
+ title: 'Chat/Message/Reactions',
41
+ },
42
+ 'chat-messageinput--basic': {
43
+ id: 'chat-messageinput--basic',
44
+ importPath: './components/NestingExample/ChatMessageMessageInput.stories.tsx',
45
+ name: 'Basic',
46
+ title: 'Chat/MessageInput',
47
+ },
48
+ 'storylistview--basic': {
49
+ id: 'storylistview--basic',
50
+ importPath: './components/NestingExample/StoryList.stories.tsx',
51
+ name: 'Basic',
52
+ title: 'StoryListView',
53
+ },
54
+ 'text-control--basic': {
55
+ id: 'text-control--basic',
56
+ importPath: './components/ControlExamples/Text/Text.stories.tsx',
57
+ name: 'Basic',
58
+ title: 'Text control',
59
+ },
60
+ },
61
+ v: 3,
62
+ };
63
+ var output = [
64
+ {
65
+ name: 'Chat',
66
+ title: 'Chat/Message',
67
+ stories: [],
68
+ children: [
69
+ {
70
+ name: 'Message',
71
+ title: 'Chat/Message',
72
+ stories: [
73
+ {
74
+ name: 'Message First',
75
+ title: 'Chat/Message',
76
+ id: 'chat-message--message-first',
77
+ importPath: './components/NestingExample/ChatMessage.stories.tsx',
78
+ },
79
+ {
80
+ name: 'Message Second',
81
+ title: 'Chat/Message',
82
+ id: 'chat-message--message-second',
83
+ importPath: './components/NestingExample/ChatMessage.stories.tsx',
84
+ },
85
+ ],
86
+ children: [
87
+ {
88
+ name: 'bubble',
89
+ children: [],
90
+ title: 'Chat/Message/bubble',
91
+ stories: [
92
+ {
93
+ name: 'First',
94
+ title: 'Chat/Message/bubble',
95
+ id: 'chat-message-bubble--first',
96
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
97
+ },
98
+ {
99
+ name: 'Second Story',
100
+ title: 'Chat/Message/bubble',
101
+ id: 'chat-message-bubble--second',
102
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
103
+ },
104
+ ],
105
+ },
106
+ {
107
+ name: 'Reactions',
108
+ title: 'Chat/Message/Reactions',
109
+ children: [],
110
+ stories: [
111
+ {
112
+ name: 'Message One',
113
+ title: 'Chat/Message/Reactions',
114
+ id: 'chat-message-reactions--message-one',
115
+ importPath: './components/NestingExample/ChatMessageReactions.stories.tsx',
116
+ },
117
+ {
118
+ name: 'Message Two',
119
+ title: 'Chat/Message/Reactions',
120
+ id: 'chat-message-reactions--message-two',
121
+ importPath: './components/NestingExample/ChatMessageReactions.stories.tsx',
122
+ },
123
+ ],
124
+ },
125
+ ],
126
+ },
127
+ {
128
+ name: 'MessageInput',
129
+ title: 'Chat/MessageInput',
130
+ children: [],
131
+ stories: [
132
+ {
133
+ name: 'Basic',
134
+ title: 'Chat/MessageInput',
135
+ id: 'chat-messageinput--basic',
136
+ importPath: './components/NestingExample/ChatMessageMessageInput.stories.tsx',
137
+ },
138
+ ],
139
+ },
140
+ ],
141
+ },
142
+ {
143
+ name: 'StoryListView',
144
+ title: 'StoryListView',
145
+ stories: [
146
+ {
147
+ name: 'Basic',
148
+ title: 'StoryListView',
149
+ id: 'storylistview--basic',
150
+ importPath: './components/NestingExample/StoryList.stories.tsx',
151
+ },
152
+ ],
153
+ children: [],
154
+ },
155
+ {
156
+ title: 'Text control',
157
+ name: 'Text control',
158
+ stories: [
159
+ {
160
+ name: 'Basic',
161
+ title: 'Text control',
162
+ id: 'text-control--basic',
163
+ importPath: './components/ControlExamples/Text/Text.stories.tsx',
164
+ },
165
+ ],
166
+ children: [],
167
+ },
168
+ ];
169
+ test('story index to grouped list', function () {
170
+ expect((0, getNestedStories_1.getNestedStories)(storyIndex)).toEqual(output);
171
+ });
172
+ test('filter nested stories', function () {
173
+ expect((0, getNestedStories_1.filterNestedStories)(output, 'bubble')).toEqual([
174
+ {
175
+ title: 'Chat/Message',
176
+ name: 'Chat',
177
+ stories: [],
178
+ children: [
179
+ {
180
+ title: 'Chat/Message',
181
+ name: 'Message',
182
+ stories: [],
183
+ children: [
184
+ {
185
+ title: 'Chat/Message/bubble',
186
+ name: 'bubble',
187
+ children: [],
188
+ stories: [
189
+ {
190
+ name: 'First',
191
+ title: 'Chat/Message/bubble',
192
+ id: 'chat-message-bubble--first',
193
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
194
+ },
195
+ {
196
+ name: 'Second Story',
197
+ title: 'Chat/Message/bubble',
198
+ id: 'chat-message-bubble--second',
199
+ importPath: './components/NestingExample/ChatMessageBubble.stories.tsx',
200
+ },
201
+ ],
202
+ },
203
+ ],
204
+ },
205
+ ],
206
+ },
207
+ ]);
208
+ expect((0, getNestedStories_1.filterNestedStories)(output, 'one')).toEqual([
209
+ {
210
+ name: 'Chat',
211
+ title: 'Chat/Message',
212
+ stories: [],
213
+ children: [
214
+ {
215
+ title: 'Chat/Message',
216
+ name: 'Message',
217
+ stories: [],
218
+ children: [
219
+ {
220
+ name: 'Reactions',
221
+ title: 'Chat/Message/Reactions',
222
+ children: [],
223
+ stories: [
224
+ {
225
+ name: 'Message One',
226
+ title: 'Chat/Message/Reactions',
227
+ id: 'chat-message-reactions--message-one',
228
+ importPath: './components/NestingExample/ChatMessageReactions.stories.tsx',
229
+ },
230
+ ],
231
+ },
232
+ ],
233
+ },
234
+ ],
235
+ },
236
+ ]);
237
+ });
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- declare const _default: React.MemoExoticComponent<() => JSX.Element>;
2
+ declare const _default: React.MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
3
3
  export default _default;
@@ -14,6 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ var jsx_runtime_1 = require("react/jsx-runtime");
17
18
  var react_1 = __importDefault(require("react"));
18
19
  var react_native_1 = require("react-native");
19
20
  var hooks_1 = require("../../../hooks");
@@ -39,9 +40,8 @@ var StoryView = function () {
39
40
  var backgroundColor = (0, hooks_1.useTheme)().backgroundColor;
40
41
  if (context && context.unboundStoryFn) {
41
42
  var StoryComponent = context.unboundStoryFn;
42
- return (react_1.default.createElement(layout_1.Box, { flex: true, key: id, testID: id, onStartShouldSetResponder: dismissOnStartResponder, backgroundColor: backgroundColor }, StoryComponent && react_1.default.createElement(StoryComponent, __assign({}, context))));
43
+ return ((0, jsx_runtime_1.jsx)(layout_1.Box, { flex: true, testID: id, onStartShouldSetResponder: dismissOnStartResponder, backgroundColor: backgroundColor, children: StoryComponent && (0, jsx_runtime_1.jsx)(StoryComponent, __assign({}, context)) }, id));
43
44
  }
44
- return (react_1.default.createElement(layout_1.Box, { flex: true, padding: 16, alignItems: "center", justifyContent: "center" },
45
- react_1.default.createElement(react_native_1.Text, null, "Please open the sidebar and select a story to preview.")));
45
+ return ((0, jsx_runtime_1.jsx)(layout_1.Box, { flex: true, padding: 16, alignItems: "center", justifyContent: "center", children: (0, jsx_runtime_1.jsx)(react_native_1.Text, { children: "Please open the sidebar and select a story to preview." }) }));
46
46
  };
47
47
  exports.default = react_1.default.memo(StoryView);
@@ -15,12 +15,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.start = exports.render = void 0;
18
+ var jsx_runtime_1 = require("react/jsx-runtime");
18
19
  var addons_1 = require("@storybook/addons");
19
20
  var channels_1 = __importDefault(require("@storybook/channels"));
20
21
  var client_api_1 = require("@storybook/client-api");
21
22
  var core_events_1 = __importDefault(require("@storybook/core-events"));
22
23
  var preview_web_1 = require("@storybook/preview-web");
23
- var react_1 = __importDefault(require("react"));
24
24
  var executeLoadable_1 = require("./executeLoadable");
25
25
  var View_1 = require("./View");
26
26
  var render = function (args, context) {
@@ -28,7 +28,7 @@ var render = function (args, context) {
28
28
  if (!Component) {
29
29
  throw new Error("Unable to render story ".concat(id, " as the component annotation is missing from the default export"));
30
30
  }
31
- return react_1.default.createElement(Component, __assign({}, args));
31
+ return (0, jsx_runtime_1.jsx)(Component, __assign({}, args));
32
32
  };
33
33
  exports.render = render;
34
34
  function start() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/react-native",
3
- "version": "6.5.4",
3
+ "version": "6.5.5-alpha.1",
4
4
  "description": "A better way to develop React Native Components for your app",
5
5
  "keywords": [
6
6
  "react",
@@ -38,6 +38,9 @@
38
38
  "test": "jest"
39
39
  },
40
40
  "jest": {
41
+ "modulePathIgnorePatterns": [
42
+ "dist/"
43
+ ],
41
44
  "moduleFileExtensions": [
42
45
  "ts",
43
46
  "tsx",
@@ -49,8 +52,8 @@
49
52
  "preset": "react-native"
50
53
  },
51
54
  "dependencies": {
52
- "@emotion/core": "^10.0.20",
53
- "@emotion/native": "^10.0.14",
55
+ "@emotion/native": "^11.11.0",
56
+ "@emotion/react": "^11.11.1",
54
57
  "@storybook/addons": "^6.5.14",
55
58
  "@storybook/channel-websocket": "^6.5.14",
56
59
  "@storybook/channels": "^6.5.14",
@@ -60,10 +63,10 @@
60
63
  "@storybook/core-events": "^6.5.14",
61
64
  "@storybook/csf": "0.0.2--canary.4566f4d.1",
62
65
  "@storybook/preview-web": "^6.5.14",
66
+ "@storybook/react-native-theming": "^6.5.5-alpha.1",
63
67
  "chokidar": "^3.5.1",
64
68
  "commander": "^8.2.0",
65
69
  "deepmerge": "^4.3.0",
66
- "emotion-theming": "^10.0.19",
67
70
  "glob": "^7.1.7",
68
71
  "jotai": "^2.0.2",
69
72
  "prettier": "^2.4.1",
@@ -71,7 +74,8 @@
71
74
  "util": "^0.12.4"
72
75
  },
73
76
  "devDependencies": {
74
- "@types/react": "~18.0.27",
77
+ "@types/jest": "^29.4.3",
78
+ "@types/react": "~18.2.14",
75
79
  "babel-jest": "^29.4.3",
76
80
  "jest": "^29.4.3",
77
81
  "react-test-renderer": "18.2.0"
@@ -88,5 +92,5 @@
88
92
  "publishConfig": {
89
93
  "access": "public"
90
94
  },
91
- "gitHead": "e0c6fd72976b228d0f97aceb69967cd707fad8ff"
95
+ "gitHead": "3a03b09c728691717dee406e91439227d3483a7b"
92
96
  }
@@ -1,189 +0,0 @@
1
- import { ShadowStyleIOS, ViewStyle, TextStyle } from 'react-native';
2
- type ShadowStyle = ShadowStyleIOS | Pick<ViewStyle, 'elevation'>;
3
- type FontWeight = TextStyle['fontWeight'];
4
- /**
5
- * Primitive tokens used to build the theme.
6
- *
7
- * Ideally components should not use these values directly, and should prefer
8
- * to use more semantic values from the theme.
9
- */
10
- interface ThemeTokens {
11
- spacing1: number;
12
- spacing2: number;
13
- spacing3: number;
14
- spacing4: number;
15
- spacing5: number;
16
- spacing6: number;
17
- fontSize: {
18
- small: number;
19
- smaller: number;
20
- normal: number;
21
- };
22
- color: {
23
- navy: string;
24
- offBlack: string;
25
- black: string;
26
- white: string;
27
- grey200: string;
28
- grey700: string;
29
- grey800: string;
30
- red500: string;
31
- blue100: string;
32
- blue200: string;
33
- blue250: string;
34
- blue300: string;
35
- blue400: string;
36
- blue600: string;
37
- green500: string;
38
- };
39
- borderRadius: {
40
- small: number;
41
- medium: number;
42
- large: number;
43
- round: number;
44
- };
45
- borderWidthNormal: number;
46
- /** Elevation shadows */
47
- elevation: {
48
- floating: ShadowStyle;
49
- };
50
- }
51
- interface ThemeButton {
52
- textColor: string;
53
- backgroundColor: string;
54
- borderColor: string;
55
- borderWidth: number;
56
- borderRadius: number;
57
- }
58
- export interface Theme {
59
- tokens: ThemeTokens;
60
- backgroundColor: string;
61
- text: {
62
- primaryColor: string;
63
- secondaryColor: string;
64
- linkColor: string;
65
- };
66
- preview: {
67
- containerBackgroundColor: string;
68
- backgroundColor: string;
69
- };
70
- /** Navigation bar and related area */
71
- navigation: {
72
- backgroundColor: string;
73
- borderColor: string;
74
- borderWidth: number;
75
- visibilityBorderRadius: number;
76
- visibilityInnerBorderColor: string;
77
- visibilityOuterBorderColor: string;
78
- };
79
- /** Side panels (Story list, addons) */
80
- panel: {
81
- backgroundColor: string;
82
- borderWidth: number;
83
- borderColor: string;
84
- paddingVertical: number;
85
- paddingHorizontal: number;
86
- };
87
- /** Story list and list items */
88
- storyList: {
89
- fontSize: number;
90
- headerPaddingHorizontal: number;
91
- headerPaddingVertical: number;
92
- headerTextColor: string;
93
- headerFontWeight: FontWeight;
94
- storyPaddingHorizontal: number;
95
- storyPaddingVertical: number;
96
- storyIndent: number;
97
- storyTextColor: string;
98
- storyFontWeight: FontWeight;
99
- storySelectedBackgroundColor: string;
100
- storySelectedTextColor: string;
101
- storySelectedFontWeight: FontWeight;
102
- sectionSpacing: number;
103
- sectionActiveBackgroundColor: string;
104
- sectionBorderRadius: number;
105
- search: {
106
- fontSize: number;
107
- textColor: string;
108
- placeholderTextColor: string;
109
- borderRadius: number;
110
- borderColor: string;
111
- borderWidth: number;
112
- backgroundColor: string;
113
- paddingVertical: number;
114
- paddingHorizontal: number;
115
- };
116
- };
117
- /** Buttons */
118
- button: {
119
- fontSize: number;
120
- fontWeight: FontWeight;
121
- paddingVertical: number;
122
- paddingHorizontal: number;
123
- primary: ThemeButton;
124
- secondary: ThemeButton;
125
- };
126
- /** Tabs (navigation and addons) */
127
- tabs: {
128
- fontSize: number;
129
- fontWeight: FontWeight;
130
- paddingVertical: number;
131
- paddingHorizontal: number;
132
- borderWidth: number;
133
- borderRadius: number;
134
- activeBorderColor: string;
135
- activeBackgroundColor: string;
136
- activeTextColor: string;
137
- inactiveBorderColor: string;
138
- inactiveBackgroundColor: string;
139
- inactiveTextColor: string;
140
- };
141
- /** Inputs (text, radio, slider, etc.) */
142
- inputs: {
143
- errorTextColor: string;
144
- labelFontSize: number;
145
- labelTextColor: string;
146
- text: {
147
- fontSize: number;
148
- textColor: string;
149
- borderWidth: number;
150
- borderColor: string;
151
- backgroundColor: string;
152
- borderRadius: number;
153
- paddingVertical: number;
154
- paddingHorizontal: number;
155
- };
156
- radio: {
157
- fontSize: number;
158
- height: number;
159
- borderWidth: number;
160
- borderColor: string;
161
- backgroundColor: string;
162
- paddingVertical: number;
163
- paddingHorizontal: number;
164
- activeBackgroundColor: string;
165
- itemSpacing: number;
166
- labelSpacing: number;
167
- };
168
- swatch: {
169
- fontSize: number;
170
- height: number;
171
- borderWidth: number;
172
- borderColor: string;
173
- backgroundColor: string;
174
- outerBorderRadius: number;
175
- innerBorderRadius: number;
176
- paddingVertical: number;
177
- paddingHorizontal: number;
178
- nameTextWeight: FontWeight;
179
- };
180
- slider: {
181
- fontSize: number;
182
- labelTextColor: string;
183
- valueTextColor: string;
184
- };
185
- };
186
- }
187
- export declare const theme: Theme;
188
- export declare const darkTheme: Theme;
189
- export {};