@symbo.ls/preview 2.7.21 → 2.7.24

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 (149) hide show
  1. package/.eslintrc.js +2 -8
  2. package/.vscode/settings.json +4 -1
  3. package/README.md +1 -0
  4. package/config.js +6 -0
  5. package/define.js +10 -0
  6. package/index.html +5 -5
  7. package/index.js +6 -9
  8. package/package.json +9 -28
  9. package/src/app.js +33 -38
  10. package/state.js +14 -0
  11. package/svgSprite.config.js +2 -2
  12. package/.babelrc.js +0 -5
  13. package/.coveralls.yml +0 -1
  14. package/.eslintignore +0 -1
  15. package/.legacy/_tools_old.js +0 -49
  16. package/.legacy/boxModel.js +0 -3
  17. package/.legacy/index copy.js +0 -45
  18. package/.legacy/preview.js +0 -133
  19. package/.legacy/sequence.js +0 -3
  20. package/.legacy/style.js +0 -30
  21. package/.prettierrc +0 -4
  22. package/.vscode/extensions.json +0 -5
  23. package/src/assets/dark.png +0 -0
  24. package/src/assets/fonts/FiraGO/FiraGO-Bold.woff2 +0 -0
  25. package/src/assets/fonts/FiraGO/FiraGO-Light.woff2 +0 -0
  26. package/src/assets/fonts/FiraGO/FiraGO-Medium.woff2 +0 -0
  27. package/src/assets/fonts/FiraGO/FiraGO-Regular.woff2 +0 -0
  28. package/src/assets/fonts/europa-bold-webfont.woff2 +0 -0
  29. package/src/assets/fonts/europa-bolditalic-webfont.woff2 +0 -0
  30. package/src/assets/fonts/europa-light-webfont.woff2 +0 -0
  31. package/src/assets/fonts/europa-lightitalic-webfont.woff2 +0 -0
  32. package/src/assets/fonts/europa-regular-webfont.woff2 +0 -0
  33. package/src/assets/fonts/europa-regularitalic-webfont.woff2 +0 -0
  34. package/src/assets/mask1.png +0 -0
  35. package/src/assets/mask2.png +0 -0
  36. package/src/assets/ovalCircle.svg +0 -9
  37. package/src/assets/shapes.png +0 -0
  38. package/src/assets/space.png +0 -0
  39. package/src/assets/type.png +0 -0
  40. package/src/components/Aside.js +0 -101
  41. package/src/components/Banner.js +0 -58
  42. package/src/components/ColorText.js +0 -29
  43. package/src/components/ColorsPalette.js +0 -69
  44. package/src/components/ColumnParagrphs.js +0 -22
  45. package/src/components/ContinueButton.js +0 -14
  46. package/src/components/DesignComponent.js +0 -81
  47. package/src/components/FontText.js +0 -193
  48. package/src/components/Header.js +0 -53
  49. package/src/components/HeaderHeading.js +0 -23
  50. package/src/components/IconsGroup.js +0 -64
  51. package/src/components/Page.js +0 -135
  52. package/src/components/ResponsivePreview.js +0 -44
  53. package/src/components/Route.js +0 -1
  54. package/src/components/ShapePreview.js +0 -63
  55. package/src/components/ShapeSet.js +0 -85
  56. package/src/components/SlidersWithResponsive.js +0 -23
  57. package/src/components/SpacingButton/actionButtons.js +0 -41
  58. package/src/components/SpacingButton/dropdown.js +0 -114
  59. package/src/components/SpacingButton/index.js +0 -250
  60. package/src/components/SpacingButton/props.js +0 -45
  61. package/src/components/SpacingPreview.js +0 -156
  62. package/src/components/SpacingTable.js +0 -213
  63. package/src/components/ThemeButtons.js +0 -41
  64. package/src/components/UploadImage.js +0 -31
  65. package/src/components/Widget.js +0 -1
  66. package/src/components/index.js +0 -25
  67. package/src/pages/Account/Personal.js +0 -59
  68. package/src/pages/Account/Project.js +0 -40
  69. package/src/pages/Account/fields.js +0 -74
  70. package/src/pages/Account/fieldsGridProps.js +0 -15
  71. package/src/pages/Account/index.js +0 -117
  72. package/src/pages/Color/globalThemes.js +0 -32
  73. package/src/pages/Color/index.js +0 -18
  74. package/src/pages/Color/palette.js +0 -36
  75. package/src/pages/Color/themes.js +0 -37
  76. package/src/pages/Components/grid.js +0 -99
  77. package/src/pages/Components/index.js +0 -37
  78. package/src/pages/Components/sidebar.js +0 -28
  79. package/src/pages/Components/style.js +0 -16
  80. package/src/pages/DesignSystem/Dashboard/banners.js +0 -38
  81. package/src/pages/DesignSystem/Dashboard/designElements.js +0 -124
  82. package/src/pages/DesignSystem/Dashboard/index.js +0 -22
  83. package/src/pages/DesignSystem/Dashboard/quickstart.js +0 -84
  84. package/src/pages/DesignSystem/Dashboard/state.js +0 -142
  85. package/src/pages/DesignSystem/Dashboard/summary.js +0 -52
  86. package/src/pages/DesignSystem/index.js +0 -187
  87. package/src/pages/Editor/index.js +0 -46
  88. package/src/pages/Editor/layers.js +0 -126
  89. package/src/pages/Editor/scene.js +0 -95
  90. package/src/pages/Editor/style.js +0 -13
  91. package/src/pages/Editor/tools.js +0 -360
  92. package/src/pages/Export/const.js +0 -19
  93. package/src/pages/Export/description.js +0 -88
  94. package/src/pages/Export/gist.js +0 -23
  95. package/src/pages/Export/index.js +0 -82
  96. package/src/pages/Export/scene.js +0 -59
  97. package/src/pages/Export/state.js +0 -23
  98. package/src/pages/Export/tools.js +0 -101
  99. package/src/pages/Fonts/fontFaces.js +0 -50
  100. package/src/pages/Fonts/fontFamilies.js +0 -48
  101. package/src/pages/Fonts/index.js +0 -16
  102. package/src/pages/Fonts/state.js +0 -5
  103. package/src/pages/Icons/index.js +0 -92
  104. package/src/pages/Icons/style.js +0 -1
  105. package/src/pages/Init/ChooseEnvironment.js +0 -149
  106. package/src/pages/Init/ChooseProject.js +0 -61
  107. package/src/pages/Init/CreateDocumentTheme.js +0 -176
  108. package/src/pages/Init/CreatePalette.js +0 -94
  109. package/src/pages/Init/FontText.js +0 -33
  110. package/src/pages/Init/Personalize/fields.js +0 -120
  111. package/src/pages/Init/Personalize/icon.js +0 -76
  112. package/src/pages/Init/Personalize/index.js +0 -120
  113. package/src/pages/Init/index.js +0 -39
  114. package/src/pages/Library/disabled.js +0 -38
  115. package/src/pages/Library/index.js +0 -33
  116. package/src/pages/MediaQuery/index.js +0 -46
  117. package/src/pages/MediaQuery/lists.js +0 -299
  118. package/src/pages/MediaQuery/state.js +0 -149
  119. package/src/pages/MediaQuery/typeScale.js +0 -69
  120. package/src/pages/Shapes/index.js +0 -75
  121. package/src/pages/Shapes/shapeSet.js +0 -133
  122. package/src/pages/Shapes/style.js +0 -11
  123. package/src/pages/Spaces/index.js +0 -65
  124. package/src/pages/Spaces/sequence.js +0 -34
  125. package/src/pages/Spaces/templates.js +0 -37
  126. package/src/pages/State/index.js +0 -87
  127. package/src/pages/Theme/buttonTitlesGrid.js +0 -47
  128. package/src/pages/Theme/buttonsHeader.js +0 -33
  129. package/src/pages/Theme/friendTheme.js +0 -30
  130. package/src/pages/Theme/index.js +0 -226
  131. package/src/pages/Theme/interactivity.js +0 -115
  132. package/src/pages/Theme/ntc.js +0 -1689
  133. package/src/pages/Theme/preview.js +0 -152
  134. package/src/pages/Theme/selectsGrid.js +0 -74
  135. package/src/pages/Theme/style.js +0 -38
  136. package/src/pages/Theme/themingTools.js +0 -106
  137. package/src/pages/Typography/collection.js +0 -115
  138. package/src/pages/Typography/documentStyles.js +0 -113
  139. package/src/pages/Typography/index.js +0 -71
  140. package/src/pages/Typography/rangeButtons.js +0 -58
  141. package/src/pages/Typography/shared.js +0 -9
  142. package/src/pages/Typography/stylesHelpers.js +0 -30
  143. package/src/pages/Typography/typeScale.js +0 -83
  144. package/src/pages/__Account/__/index.js +0 -241
  145. package/src/pages/__Account/__/setUpProject.js +0 -142
  146. package/src/pages/__Account/index.js +0 -111
  147. package/src/pages/index.js +0 -17
  148. package/src/state.js +0 -20
  149. package/src/style.js +0 -20
@@ -1,126 +0,0 @@
1
- ' use strict'
2
-
3
- import { Shape, Block, Flex, Text, Icon } from '@symbo.ls/components'
4
-
5
- const objectLayer = {
6
- extend: [Block, Text, Shape],
7
- props: {
8
- round: 'A',
9
- padding: '0 Y Y Y'
10
- },
11
-
12
- h4: {
13
- extend: [Block, Text],
14
- props: {
15
- text: 'Button',
16
- padding: 'A 0 A1 A1'
17
- },
18
- style: { margin: 0, fontWeight: 'normal' }
19
- },
20
-
21
- caption: {
22
- extend: [Block, Text],
23
- props: {
24
- text: 'IconText',
25
- padding: '0 0 A B1'
26
- }
27
- },
28
-
29
- objectComponent: {
30
- extend: [Block, Flex],
31
- style: { flexDirection: 'column' },
32
- childExtend: {
33
- extend: [Block, Flex, Text, Shape],
34
- props: {
35
- padding: 'Z2 0 Z2 B1',
36
- round: 'A'
37
- },
38
- style: {
39
- alignItems: 'center'
40
- },
41
- icon: { extend: Icon },
42
- caption: {
43
- extend: [Block, Text],
44
- props: { padding: '0 X2 0 Y' }
45
- },
46
- span: {
47
- extend: Text,
48
- style: { opacity: '.35' }
49
- }
50
- },
51
- ...[
52
- {
53
- icon: {
54
- name: 'shapes',
55
- style: { color: '#7345AF' }
56
- },
57
- caption: { props: { text: 'Icon' } },
58
- span: { props: { text: 'moon' } }
59
- },
60
-
61
- {
62
- icon: {
63
- name: 'typography',
64
- style: { color: '#35C6E4' }
65
- },
66
- caption: { props: { text: 'Text' } },
67
- span: { props: { text: 'Go Dark' } }
68
- }
69
- ]
70
- }
71
- }
72
-
73
- export default {
74
- tag: 'aside',
75
- extend: [Block, Text],
76
- props: { size: 'Y' },
77
-
78
- caption: {
79
- extend: [Block, Text],
80
- props: {
81
- text: 'Layer'
82
- },
83
- style: {
84
- opacity: '.35',
85
- display: 'flex',
86
- alignItems: 'center',
87
- height: '32.5px',
88
- marginTop: '12px',
89
- marginBottom: '4px',
90
- marginLeft: '6px'
91
- }
92
- },
93
-
94
- layer: {
95
- extend: objectLayer,
96
- props: {
97
- theme: 'buttonPrimary'
98
- },
99
- style: { background: 'rgba(255, 255, 255, .05)' },
100
- h4: {},
101
- caption: {},
102
- objectComponent: {},
103
-
104
- layer2: {
105
- extend: objectLayer,
106
- style: {
107
- margin: '0 auto',
108
- background: 'rgba(255, 255, 255, .04)',
109
- cursor: 'pointer',
110
- '&:hover': {
111
- border: '1px solid #3477F4',
112
- color: 'white'
113
- }
114
- },
115
-
116
- h4: {},
117
- caption: { },
118
-
119
- objectComponent: {
120
- style: {
121
- '> div:hover': { border: '1px solid #3477F4' }
122
- }
123
- }
124
- }
125
- }
126
- }
@@ -1,95 +0,0 @@
1
- 'use strict'
2
-
3
- import { Block, Flex, Text, KangorooButton, Breadcrumb, SceneToolBar, Scene } from '@symbo.ls/components'
4
-
5
- const header = {
6
- extend: [Flex, Block],
7
- style: {
8
- justifyContent: 'space-between',
9
- marginTop: '12px',
10
- marginBottom: '4px'
11
- },
12
- nav: {
13
- extend: [Breadcrumb, Text],
14
- props: { size: 'A' },
15
- all: {
16
- props: {
17
- href: '/components'
18
- },
19
- text: 'Buttons'
20
- },
21
-
22
- title: {
23
- text: 'kangoroo'
24
- }
25
- },
26
- tool: {
27
- SceneToolBar
28
- }
29
- }
30
-
31
- const buttonThemeSwitcher = {
32
- extend: KangorooButton,
33
-
34
- props: {
35
- round: 'C',
36
- size: 'A',
37
- padding: 'X1 Y X1 A1',
38
- gap: 'Z1',
39
- depth: 16,
40
-
41
- light: {
42
- icon: 'sun',
43
- text: 'Light Mode'
44
- },
45
-
46
- dark: {
47
- round: 'C',
48
- icon: 'moon',
49
- padding: 'Z Z1',
50
- text: 'Dark Mode'
51
- }
52
- },
53
-
54
- iconText: {
55
- props: el => el.parent.props.light
56
- },
57
-
58
- child: {
59
- props: el => el.parent.props.dark
60
- },
61
-
62
- style: {
63
- fontWeight: 'bold',
64
-
65
- svg: {
66
- color: '#EDCB38',
67
- marginRight: `${4 / 16}em`
68
- },
69
-
70
- span: {
71
- maxHeight: '32px',
72
- padding: `${9 / 14}em ${16 / 14}em`,
73
- marginLeft: `${16 / 14}em`
74
- }
75
- }
76
-
77
- }
78
- export default {
79
- extend: Flex,
80
- style: {
81
- flex: 1,
82
- flexDirection: 'column'
83
- },
84
- header: { extend: header },
85
- scene: {
86
- extend: Scene,
87
- style: {
88
- flex: 1,
89
- '> div': { height: '100%' }
90
- },
91
- scene: {
92
- buttonThemeSwitcher
93
- }
94
- }
95
- }
@@ -1,13 +0,0 @@
1
- 'use strict'
2
-
3
- export default {
4
- // border: '1px solid red',
5
- flexDirection: 'column',
6
- '> div': {
7
- // border: '5px solid green',
8
- flex: 1
9
- },
10
- aside: {
11
- width: '223px'
12
- }
13
- }
@@ -1,360 +0,0 @@
1
- 'use strict'
2
-
3
- import { Shape, Block, Flex, Text, SquareButton, ButtonSet, ClickableItem, ThemeSwitcher, ToolItem } from '@symbo.ls/components'
4
-
5
- const commonComponent = {
6
- extend: Block,
7
- caption: {
8
- extend: [Block, Text],
9
- props: {
10
- padding: 'A X'
11
- },
12
- style: {
13
- opacity: '.35',
14
- textTransform: 'capitalize'
15
- }
16
- },
17
- toolsContainer: {
18
- extend: [Block, Shape, Flex],
19
- props: {
20
- gap: 'A',
21
- padding: 'A 0',
22
- round: 'A'
23
- },
24
- style: {
25
- flexDirection: 'column',
26
- alignItems: 'center',
27
- background: 'rgba(255, 255, 255, .06)'
28
- },
29
- tools: {
30
- extend: [Block, Flex],
31
- props: { gap: 'A' },
32
- style: {
33
- flexDirection: 'column'
34
- },
35
- childExtend: {
36
- extend: ToolItem,
37
- icon: { },
38
- tool: {
39
- props: { padding: 'X2' },
40
- button0: { props: { size: 'B' } },
41
- value: {
42
- props: { size: 'A' },
43
- style: { color: 'white', opacity: 1 }
44
- },
45
- range: {},
46
- button1: { props: { size: 'B' } },
47
- button2: {
48
- extend: [SquareButton, ClickableItem],
49
- props: {
50
- icon: 'arrowAngleMirroringVertical',
51
- size: 'B',
52
- padding: 'X'
53
- }
54
- }
55
- }
56
- },
57
- ...[{}]
58
- }
59
- }
60
- }
61
-
62
- const themeSwitcher = {
63
- extend: ThemeSwitcher,
64
- props: {
65
- padding: 'Y2 X2 Y2 Z'
66
- },
67
- themePreview: {
68
- props: {
69
- round: 'Y',
70
- text: 'A'
71
- },
72
- style: {
73
- background: 'rgba(53, 31, 89, .35)',
74
- width: '24px',
75
- height: '24px'
76
- },
77
- dot: {
78
- style: {
79
- top: '6px',
80
- right: '6px'
81
- }
82
- }
83
- },
84
-
85
- title: {
86
- extend: [Flex, Block],
87
- props: { gap: 'W' },
88
- style: { flexDirection: 'column' },
89
- text: 'Revolver',
90
- span: {
91
- text: 'Call to action',
92
- style: {
93
- display: 'block',
94
- opacity: '.4'
95
- }
96
- }
97
- },
98
- button0: { props: { size: 'B' } },
99
- button1: {
100
- props: {
101
- icon: 'arrowAngleMirroringVertical',
102
- size: 'B'
103
- }
104
- }
105
- }
106
-
107
- const style = {
108
- extend: commonComponent,
109
- caption: {
110
- props: { text: 'style' }
111
- },
112
- toolsContainer: {
113
- themeSwitcher,
114
- tools: {
115
- ...[
116
- {
117
- icon: { name: 'colorOpacity' },
118
-
119
- tool: {
120
- button0: {},
121
- value: { text: '100%' },
122
- range: {},
123
- button1: {},
124
- button2: 0
125
- }
126
- },
127
-
128
- {
129
- icon: { name: 'textCaseTitle' },
130
-
131
- tool: {
132
- button0: {},
133
- value: { text: '100%' },
134
- range: {},
135
- button1: {},
136
- button2: null
137
- }
138
- }
139
- ]
140
- }
141
- }
142
- }
143
-
144
- const spaces = {
145
- extend: commonComponent,
146
- caption: { props: { text: 'spaces' } },
147
- toolsContainer: {
148
- tools: {
149
- ...[
150
- {
151
- icon: { name: 'fontSize' },
152
- tool: {
153
- button0: {},
154
- value: { text: '16px' },
155
- range: {},
156
- button1: {},
157
- button2: null
158
- }
159
- },
160
-
161
- {
162
- icon: { name: 'spacesOutline' },
163
-
164
- tool: {
165
- button0: {},
166
- value: {
167
- text: '1.618',
168
- style: {
169
- flex: 1,
170
- textAlign: 'center'
171
- }
172
- },
173
- range: null,
174
- button1: {
175
- style: {
176
- marginRight: '6px'
177
- }
178
- },
179
- button2: {}
180
- }
181
- }
182
- ]
183
- }
184
- }
185
- }
186
-
187
- const border = {
188
- extend: commonComponent,
189
- caption: { props: { text: 'border' } },
190
- toolsContainer: {
191
- tools: {
192
- ...[
193
- {
194
- icon: { name: 'borderWeight' },
195
-
196
- tool: {
197
- button0: {},
198
- value: { text: '16px' },
199
- range: {},
200
- button1: {},
201
- button2: 0
202
- }
203
- },
204
-
205
- {
206
- icon: { name: 'borderOpacity' },
207
-
208
- tool: {
209
- button0: {},
210
- value: { text: '1.618' },
211
- range: {},
212
- button1: {},
213
- button2: null
214
- }
215
- }
216
- ]
217
- }
218
- }
219
- }
220
-
221
- const form = {
222
- extend: commonComponent,
223
- caption: { props: { text: 'form' } },
224
- toolsContainer: {
225
- tools: {
226
- ...[
227
- {
228
- icon: { name: 'shapes' },
229
-
230
- tool: {
231
- button0: null,
232
- box: {
233
- extend: [Block, Shape],
234
- props: {
235
- round: 'X2'
236
- },
237
- style: {
238
- width: '13px',
239
- height: '13px',
240
- background: 'rgba(255, 255, 255, .1)',
241
- border: '1px solid rgba(255, 255, 255, .1)',
242
- marginLeft: '2px',
243
- marginRight: '5px'
244
- }
245
- },
246
- value: {
247
- text: 'Rounded',
248
- style: {
249
- flex: '1'
250
- }
251
- },
252
- range: null,
253
- button1: null,
254
- button2: {}
255
- }
256
- },
257
-
258
- {
259
- icon: { name: 'borderRadius' },
260
-
261
- tool: {
262
- button0: {},
263
- value: {
264
- text: '1.618',
265
- style: {
266
- flex: 1,
267
- textAlign: 'center'
268
- }
269
- },
270
- range: null,
271
- button1: { style: { marginRight: '6px' } },
272
- button2: {}
273
- }
274
- }
275
- ]
276
- }
277
- }
278
- }
279
-
280
- export const accessibilityButoons = {
281
- extend: ButtonSet,
282
- props: {
283
- gap: 'A1',
284
- padding: '0 0 Z 0'
285
- },
286
-
287
- childExtend: {
288
- extend: SquareButton,
289
- props: {
290
- theme: 'transparent',
291
- size: 'C'
292
- }
293
- },
294
- ...[
295
- { props: { icon: 'crossmark' } },
296
- { props: { icon: 'url' } },
297
- { props: { icon: 'keyboard' } },
298
- { props: { icon: 'arrayOutline' } },
299
- { props: { icon: 'mouse' } }
300
- ]
301
- }
302
-
303
- const accessibility = {
304
- extend: commonComponent,
305
- caption: { props: { text: 'accessibility' } },
306
- toolsContainer: {
307
- accessibilityButoons,
308
- tools: {
309
- ...[
310
- {
311
- icon: { name: 'eyeOpen' },
312
-
313
- tool: {
314
- button0: null,
315
- box: {
316
- extend: [Block, Shape],
317
- props: {
318
- round: 'X2'
319
- },
320
- style: {
321
- width: '13px',
322
- height: '13px',
323
- background: 'rgba(255, 255, 255, .1)',
324
- border: '1px solid rgba(255, 255, 255, .1)',
325
- marginLeft: '2px',
326
- marginRight: '5px'
327
- }
328
- },
329
- value: {
330
- text: 'Rounded',
331
- style: {
332
- flex: '1'
333
- }
334
- },
335
- range: null,
336
- button1: null,
337
- button2: {}
338
- }
339
- }
340
- ]
341
- }
342
- }
343
- }
344
-
345
- export default {
346
- tag: 'aside',
347
- extend: [Block, Text],
348
- props: { size: 'Y' },
349
- style: {
350
- paddingTop: '10px'
351
- },
352
- childExtend: commonComponent,
353
- ...[
354
- style,
355
- spaces,
356
- border,
357
- form,
358
- accessibility
359
- ]
360
- }
@@ -1,19 +0,0 @@
1
- 'use strict'
2
-
3
- import { SEQUENCE, TYPOGRAPHY } from '@symbo.ls/scratch'
4
- import { LIBRARY, COMPONENTS } from '@symbo.ls/temp-db/symbols' // eslint-disable-line
5
-
6
- const COMPONENT_ROUTES = {}
7
- // LIBRARY.map(v => (COMPONENT_ROUTES[`/${v.key}`] = v))
8
- COMPONENTS.map(v => (COMPONENT_ROUTES[`/${v.key}`] = v))
9
-
10
- // const SEQUENCE = [8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 32, 36, 42, 48, 56, 62, 68, 76, 84, 92, 100, 110]
11
-
12
- const TYPOGRAPHY_SEQUENCE = Object.keys(TYPOGRAPHY.sequence).reverse().map(v => {
13
- const val = TYPOGRAPHY.sequence[v].val
14
- return val
15
- })
16
-
17
- const SPACING_RATIO = Object.values(SEQUENCE).reverse().map(v => v)
18
-
19
- export { COMPONENT_ROUTES, TYPOGRAPHY_SEQUENCE, SPACING_RATIO }
@@ -1,88 +0,0 @@
1
- 'use strict'
2
-
3
- // import showdown from 'showdown'
4
- import { CommonField, Flex, PropertyList } from '@symbo.ls/components'
5
-
6
- const description = {
7
- extend: CommonField,
8
- if: ({ state }) => state.description,
9
- props: {
10
- padding: '0 0 B 0',
11
- caption: {
12
- size: 'Z',
13
- padding: '0 0 Y2 0',
14
- opacity: 0.5
15
- },
16
- p: {
17
- margin: '0'
18
- }
19
- },
20
- caption: {
21
- text: 'Description'
22
- },
23
- p: {
24
- text: ({ state }) => state.description
25
- }
26
- }
27
-
28
- const readme = {
29
- extend: CommonField,
30
- if: ({ state }) => state.readme,
31
- props: ({ state }) => ({
32
- padding: '0 0 B 0',
33
- caption: {
34
- text: 'README.md',
35
- size: 'Z',
36
- opacity: 0.5,
37
- padding: '0 0 Y2 0'
38
- },
39
- p: {
40
- margin: '0'
41
- }
42
- }),
43
- caption: {},
44
- cnt: {
45
- html: ({ state }) => {
46
- // const converter = new showdown.Converter()
47
- // return converter.makeHtml(state.readme)
48
- }
49
- }
50
- }
51
-
52
- export default {
53
- tag: 'article',
54
- props: { padding: 'B2 0' },
55
-
56
- description,
57
-
58
- readme,
59
-
60
- usage: {
61
- extend: [Flex],
62
- props: { gap: 'C1' },
63
-
64
- table: {
65
- props: { flex: 1 },
66
- extend: PropertyList,
67
- if: ({ state }) => state.props,
68
-
69
- title: {},
70
- list: {
71
- // $setStateCollection: ({ state }) => state.props
72
- }
73
- },
74
-
75
- code: {
76
- extend: 'Code',
77
- props: {
78
- flex: '0 0 320px',
79
- margin: '0'
80
- },
81
- if: ({ state }) => state.code,
82
- title: {},
83
- code: {
84
- text: ({ state }) => state.code
85
- }
86
- }
87
- }
88
- }
@@ -1,23 +0,0 @@
1
- 'use strict'
2
-
3
- export const fetchGist = (key, state) => {
4
- window.fetch(`https://api.github.com/gists/${key}`, {
5
- headers: {
6
- Authorization: `token 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`
7
- }
8
- })
9
- .then((response) => response.json())
10
- .then((data) => {
11
- const { description, files } = data
12
- const component = files['component.js'].content
13
- const readme = files['README.md'].content
14
- const props = files['props.js'] // .content
15
-
16
- state.update({
17
- readme,
18
- component,
19
- description,
20
- props
21
- })
22
- })
23
- }