@axinom/mosaic-ui 0.26.0-rc.9 → 0.26.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.
- package/dist/components/Buttons/Button/Button.d.ts +1 -1
- package/dist/components/Buttons/Button/Button.d.ts.map +1 -1
- package/dist/components/Buttons/CompositeButton/CompositeButton.d.ts +22 -0
- package/dist/components/Buttons/CompositeButton/CompositeButton.d.ts.map +1 -0
- package/dist/components/Buttons/index.d.ts +1 -0
- package/dist/components/Buttons/index.d.ts.map +1 -1
- package/dist/components/Explorer/Explorer.d.ts.map +1 -1
- package/dist/components/FormStation/SaveOnNavigate/SaveOnNavigate.d.ts.map +1 -1
- package/dist/components/Icons/Icons.d.ts.map +1 -1
- package/dist/components/Icons/Icons.models.d.ts +15 -12
- package/dist/components/Icons/Icons.models.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +4 -4
- package/dist/index.js +4 -4
- package/dist/initialize.d.ts +11 -0
- package/dist/initialize.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/ui-config.d.ts +20 -0
- package/dist/types/ui-config.d.ts.map +1 -0
- package/package.json +3 -3
- package/src/components/Buttons/Button/Button.tsx +54 -49
- package/src/components/Buttons/Buttons.stories.tsx +29 -7
- package/src/components/Buttons/CompositeButton/CompositeButton.scss +116 -0
- package/src/components/Buttons/CompositeButton/CompositeButton.spec.tsx +137 -0
- package/src/components/Buttons/CompositeButton/CompositeButton.tsx +70 -0
- package/src/components/Buttons/index.ts +4 -0
- package/src/components/Explorer/Explorer.tsx +4 -2
- package/src/components/FormElements/CustomTags/CustomTags.scss +1 -2
- package/src/components/FormStation/SaveOnNavigate/SaveOnNavigate.tsx +10 -2
- package/src/components/Icons/Icons.models.ts +3 -0
- package/src/components/Icons/Icons.spec.tsx +38 -29
- package/src/components/Icons/Icons.stories.tsx +30 -14
- package/src/components/Icons/Icons.tsx +129 -90
- package/src/index.ts +2 -0
- package/src/initialize.ts +25 -0
- package/src/styles/variables.scss +4 -0
- package/src/types/index.ts +1 -0
- package/src/types/ui-config.ts +30 -0
|
@@ -11,35 +11,44 @@ describe('Icons', () => {
|
|
|
11
11
|
});
|
|
12
12
|
|
|
13
13
|
it.each`
|
|
14
|
-
key
|
|
15
|
-
${IconName.Archive}
|
|
16
|
-
${IconName.Block}
|
|
17
|
-
${IconName.Bulk}
|
|
18
|
-
${IconName.Calendar}
|
|
19
|
-
${IconName.Checkmark}
|
|
20
|
-
${IconName.ChevronDown}
|
|
21
|
-
${IconName.ChevronLeft}
|
|
22
|
-
${IconName.ChevronRight}
|
|
23
|
-
${IconName.ChevronUp}
|
|
24
|
-
${IconName.
|
|
25
|
-
${IconName.
|
|
26
|
-
${IconName.
|
|
27
|
-
${IconName.
|
|
28
|
-
${IconName.
|
|
29
|
-
${IconName.Error}
|
|
30
|
-
${IconName.
|
|
31
|
-
${IconName.
|
|
32
|
-
${IconName.
|
|
33
|
-
${IconName.
|
|
34
|
-
${IconName.
|
|
35
|
-
${IconName.
|
|
36
|
-
${IconName.
|
|
37
|
-
${IconName.
|
|
38
|
-
${IconName.
|
|
39
|
-
${IconName.
|
|
40
|
-
${IconName.
|
|
41
|
-
${IconName.
|
|
42
|
-
${IconName.
|
|
14
|
+
key | result
|
|
15
|
+
${IconName.Archive} | ${1}
|
|
16
|
+
${IconName.Block} | ${1}
|
|
17
|
+
${IconName.Bulk} | ${1}
|
|
18
|
+
${IconName.Calendar} | ${1}
|
|
19
|
+
${IconName.Checkmark} | ${1}
|
|
20
|
+
${IconName.ChevronDown} | ${1}
|
|
21
|
+
${IconName.ChevronLeft} | ${1}
|
|
22
|
+
${IconName.ChevronRight} | ${1}
|
|
23
|
+
${IconName.ChevronUp} | ${1}
|
|
24
|
+
${IconName.Copy} | ${1}
|
|
25
|
+
${IconName.Delete} | ${1}
|
|
26
|
+
${IconName.Details} | ${1}
|
|
27
|
+
${IconName.Drag} | ${6}
|
|
28
|
+
${IconName.Ellipsis} | ${1}
|
|
29
|
+
${IconName.Error} | ${1}
|
|
30
|
+
${IconName.External} | ${1}
|
|
31
|
+
${IconName.File} | ${1}
|
|
32
|
+
${IconName.Info} | ${1}
|
|
33
|
+
${IconName.MidlineEllipsis} | ${1}
|
|
34
|
+
${IconName.Minus} | ${1}
|
|
35
|
+
${IconName.NavigateRight} | ${1}
|
|
36
|
+
${IconName.Pause} | ${1}
|
|
37
|
+
${IconName.Play} | ${1}
|
|
38
|
+
${IconName.Plus} | ${1}
|
|
39
|
+
${IconName.Publish} | ${1}
|
|
40
|
+
${IconName.RemoveFilter} | ${1}
|
|
41
|
+
${IconName.Replace} | ${1}
|
|
42
|
+
${IconName.Retry} | ${1}
|
|
43
|
+
${IconName.Snapshot} | ${1}
|
|
44
|
+
${IconName.Stop} | ${1}
|
|
45
|
+
${IconName.Success} | ${1}
|
|
46
|
+
${IconName.Unarchive} | ${1}
|
|
47
|
+
${IconName.Undo} | ${1}
|
|
48
|
+
${IconName.Unpublish} | ${1}
|
|
49
|
+
${IconName.Upload} | ${1}
|
|
50
|
+
${IconName.Warning} | ${1}
|
|
51
|
+
${IconName.X} | ${1}
|
|
43
52
|
`('renders an icon for each key in IconName', ({ key, result }) => {
|
|
44
53
|
const wrapper = mount(<Icons icon={key} />);
|
|
45
54
|
|
|
@@ -29,17 +29,13 @@ export const All: Story = () => {
|
|
|
29
29
|
<p>Bulk</p>
|
|
30
30
|
</div>
|
|
31
31
|
<div>
|
|
32
|
-
<Icons icon={IconName.
|
|
33
|
-
<p>
|
|
32
|
+
<Icons icon={IconName.Calendar} />
|
|
33
|
+
<p>Calendar</p>
|
|
34
34
|
</div>
|
|
35
35
|
<div>
|
|
36
36
|
<Icons icon={IconName.Checkmark} />
|
|
37
37
|
<p>Checkmark</p>
|
|
38
38
|
</div>
|
|
39
|
-
<div>
|
|
40
|
-
<Icons icon={IconName.Calendar} />
|
|
41
|
-
<p>Calendar</p>
|
|
42
|
-
</div>
|
|
43
39
|
<div>
|
|
44
40
|
<Icons icon={IconName.ChevronDown} />
|
|
45
41
|
<p>ChevronDown</p>
|
|
@@ -76,14 +72,14 @@ export const All: Story = () => {
|
|
|
76
72
|
<Icons icon={IconName.Ellipsis} />
|
|
77
73
|
<p>Ellipsis</p>
|
|
78
74
|
</div>
|
|
79
|
-
<div>
|
|
80
|
-
<Icons icon={IconName.External} />
|
|
81
|
-
<p>External</p>
|
|
82
|
-
</div>
|
|
83
75
|
<div>
|
|
84
76
|
<Icons icon={IconName.Error} />
|
|
85
77
|
<p>Error</p>
|
|
86
78
|
</div>
|
|
79
|
+
<div>
|
|
80
|
+
<Icons icon={IconName.External} />
|
|
81
|
+
<p>External</p>
|
|
82
|
+
</div>
|
|
87
83
|
<div>
|
|
88
84
|
<Icons icon={IconName.File} />
|
|
89
85
|
<p>File</p>
|
|
@@ -104,6 +100,14 @@ export const All: Story = () => {
|
|
|
104
100
|
<Icons icon={IconName.NavigateRight} />
|
|
105
101
|
<p>NavigateRight</p>
|
|
106
102
|
</div>
|
|
103
|
+
<div>
|
|
104
|
+
<Icons icon={IconName.Pause} />
|
|
105
|
+
<p>Pause</p>
|
|
106
|
+
</div>
|
|
107
|
+
<div>
|
|
108
|
+
<Icons icon={IconName.Play} />
|
|
109
|
+
<p>Play</p>
|
|
110
|
+
</div>
|
|
107
111
|
<div>
|
|
108
112
|
<Icons icon={IconName.Plus} />
|
|
109
113
|
<p>Plus</p>
|
|
@@ -112,6 +116,10 @@ export const All: Story = () => {
|
|
|
112
116
|
<Icons icon={IconName.Publish} />
|
|
113
117
|
<p>Publish</p>
|
|
114
118
|
</div>
|
|
119
|
+
<div>
|
|
120
|
+
<Icons icon={IconName.RemoveFilter} />
|
|
121
|
+
<p>RemoveFilter</p>
|
|
122
|
+
</div>
|
|
115
123
|
<div>
|
|
116
124
|
<Icons icon={IconName.Replace} />
|
|
117
125
|
<p>Replace</p>
|
|
@@ -124,14 +132,26 @@ export const All: Story = () => {
|
|
|
124
132
|
<Icons icon={IconName.Snapshot} />
|
|
125
133
|
<p>Snapshot</p>
|
|
126
134
|
</div>
|
|
135
|
+
<div>
|
|
136
|
+
<Icons icon={IconName.Stop} />
|
|
137
|
+
<p>Stop</p>
|
|
138
|
+
</div>
|
|
127
139
|
<div>
|
|
128
140
|
<Icons icon={IconName.Success} />
|
|
129
141
|
<p>Success</p>
|
|
130
142
|
</div>
|
|
143
|
+
<div>
|
|
144
|
+
<Icons icon={IconName.Unarchive} />
|
|
145
|
+
<p>Unarchive</p>
|
|
146
|
+
</div>
|
|
131
147
|
<div>
|
|
132
148
|
<Icons icon={IconName.Undo} />
|
|
133
149
|
<p>Undo</p>
|
|
134
150
|
</div>
|
|
151
|
+
<div>
|
|
152
|
+
<Icons icon={IconName.Unpublish} />
|
|
153
|
+
<p>Unpublish</p>
|
|
154
|
+
</div>
|
|
135
155
|
<div>
|
|
136
156
|
<Icons icon={IconName.Upload} />
|
|
137
157
|
<p>Upload</p>
|
|
@@ -144,10 +164,6 @@ export const All: Story = () => {
|
|
|
144
164
|
<Icons icon={IconName.X} />
|
|
145
165
|
<p>X</p>
|
|
146
166
|
</div>
|
|
147
|
-
<div>
|
|
148
|
-
<Icons icon={IconName.RemoveFilter} />
|
|
149
|
-
<p>RemoveFilter</p>
|
|
150
|
-
</div>
|
|
151
167
|
</div>
|
|
152
168
|
);
|
|
153
169
|
};
|
|
@@ -27,24 +27,7 @@ const ArchiveIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
27
27
|
</svg>
|
|
28
28
|
);
|
|
29
29
|
|
|
30
|
-
const
|
|
31
|
-
<svg
|
|
32
|
-
className={clsx(classes.icons, className)}
|
|
33
|
-
version="1.1"
|
|
34
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
35
|
-
viewBox="0 0 40 40"
|
|
36
|
-
>
|
|
37
|
-
<path
|
|
38
|
-
vectorEffect="non-scaling-stroke"
|
|
39
|
-
fill="none"
|
|
40
|
-
stroke="#FFFFFF"
|
|
41
|
-
strokeWidth="2"
|
|
42
|
-
d="M27.6,16.2H39V39H1.1V16.1h11.6 M30.6,11.1L20.3,2L10,11.1 M20.3,2v31.2"
|
|
43
|
-
/>
|
|
44
|
-
</svg>
|
|
45
|
-
);
|
|
46
|
-
|
|
47
|
-
const Block: React.FC<{ className?: string }> = ({ className }) => (
|
|
30
|
+
const BlockIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
48
31
|
<svg
|
|
49
32
|
className={clsx(classes.icons, className)}
|
|
50
33
|
version="1.1"
|
|
@@ -76,22 +59,6 @@ const BulkIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
76
59
|
</svg>
|
|
77
60
|
);
|
|
78
61
|
|
|
79
|
-
const BulkUnpublishIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
80
|
-
<svg
|
|
81
|
-
className={clsx(classes.icons, className)}
|
|
82
|
-
version="1.1"
|
|
83
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
84
|
-
viewBox="0 0 40 40"
|
|
85
|
-
>
|
|
86
|
-
<path
|
|
87
|
-
vectorEffect="non-scaling-stroke"
|
|
88
|
-
fill="none"
|
|
89
|
-
strokeWidth="2"
|
|
90
|
-
d="M26.1,7.6l-6.2-5.5l-6.2,5.5 M19.9,2v14.8 M9.1,16.2L30.9,38 M30.9,16.2L9.1,38"
|
|
91
|
-
/>
|
|
92
|
-
</svg>
|
|
93
|
-
);
|
|
94
|
-
|
|
95
62
|
const CalendarIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
96
63
|
<svg
|
|
97
64
|
className={clsx(classes.icons, className)}
|
|
@@ -126,7 +93,7 @@ const CheckmarkIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
126
93
|
</svg>
|
|
127
94
|
);
|
|
128
95
|
|
|
129
|
-
const
|
|
96
|
+
const ChevronDownIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
130
97
|
<svg
|
|
131
98
|
className={clsx(classes.icons, className)}
|
|
132
99
|
version="1.1"
|
|
@@ -137,6 +104,7 @@ const ChevronRightIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
137
104
|
vectorEffect="non-scaling-stroke"
|
|
138
105
|
fill="none"
|
|
139
106
|
strokeWidth="2"
|
|
107
|
+
transform="rotate(90, 20, 20)"
|
|
140
108
|
d="M9.2,39.1L30.8,20L9.2,0.9"
|
|
141
109
|
/>
|
|
142
110
|
</svg>
|
|
@@ -159,7 +127,7 @@ const ChevronLeftIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
159
127
|
</svg>
|
|
160
128
|
);
|
|
161
129
|
|
|
162
|
-
const
|
|
130
|
+
const ChevronRightIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
163
131
|
<svg
|
|
164
132
|
className={clsx(classes.icons, className)}
|
|
165
133
|
version="1.1"
|
|
@@ -170,7 +138,6 @@ const ChevronDownIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
170
138
|
vectorEffect="non-scaling-stroke"
|
|
171
139
|
fill="none"
|
|
172
140
|
strokeWidth="2"
|
|
173
|
-
transform="rotate(90, 20, 20)"
|
|
174
141
|
d="M9.2,39.1L30.8,20L9.2,0.9"
|
|
175
142
|
/>
|
|
176
143
|
</svg>
|
|
@@ -278,7 +245,7 @@ const EllipsisIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
278
245
|
</svg>
|
|
279
246
|
);
|
|
280
247
|
|
|
281
|
-
const
|
|
248
|
+
const ErrorIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
282
249
|
<svg
|
|
283
250
|
className={clsx(classes.icons, className)}
|
|
284
251
|
version="1.1"
|
|
@@ -294,7 +261,7 @@ const Error: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
294
261
|
</svg>
|
|
295
262
|
);
|
|
296
263
|
|
|
297
|
-
const
|
|
264
|
+
const ExternalIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
298
265
|
<svg
|
|
299
266
|
className={clsx(classes.icons, className)}
|
|
300
267
|
version="1.1"
|
|
@@ -305,13 +272,13 @@ const WarningIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
305
272
|
vectorEffect="non-scaling-stroke"
|
|
306
273
|
fill="none"
|
|
307
274
|
strokeWidth="2"
|
|
308
|
-
d="
|
|
309
|
-
|
|
310
|
-
|
|
275
|
+
d="M39.8,14.8 M25.1,0.2 M38.9,15.7V1.3H24.8 M38.9,1.3
|
|
276
|
+
L16.4,23.8 M20.8,8.5H1.2v30.4h29.7V19.4"
|
|
277
|
+
/>
|
|
311
278
|
</svg>
|
|
312
279
|
);
|
|
313
280
|
|
|
314
|
-
const
|
|
281
|
+
const FileIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
315
282
|
<svg
|
|
316
283
|
className={clsx(classes.icons, className)}
|
|
317
284
|
version="1.1"
|
|
@@ -322,13 +289,13 @@ const External: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
322
289
|
vectorEffect="non-scaling-stroke"
|
|
323
290
|
fill="none"
|
|
324
291
|
strokeWidth="2"
|
|
325
|
-
d="
|
|
326
|
-
|
|
292
|
+
d="M1,34.7l4.4-18.8H39l-4.3,18.8L1,34.7L1,5.3h12.1
|
|
293
|
+
l3.5,3.8h18.1v6.9"
|
|
327
294
|
/>
|
|
328
295
|
</svg>
|
|
329
296
|
);
|
|
330
297
|
|
|
331
|
-
const
|
|
298
|
+
const InfoIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
332
299
|
<svg
|
|
333
300
|
className={clsx(classes.icons, className)}
|
|
334
301
|
version="1.1"
|
|
@@ -339,13 +306,15 @@ const File: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
339
306
|
vectorEffect="non-scaling-stroke"
|
|
340
307
|
fill="none"
|
|
341
308
|
strokeWidth="2"
|
|
342
|
-
d="
|
|
343
|
-
|
|
309
|
+
d="M20,2c9.9,0,18,8.1,18,18s-8.1,18-18,18S2,29.9,2,20S10.1,2,20,2z M20,29.9
|
|
310
|
+
V16.2l0,0V29.9z M20,10.1v2.6l0,0V10.1z"
|
|
344
311
|
/>
|
|
345
312
|
</svg>
|
|
346
313
|
);
|
|
347
314
|
|
|
348
|
-
const
|
|
315
|
+
const MidlineEllipsisIcon: React.FC<{ className?: string }> = ({
|
|
316
|
+
className,
|
|
317
|
+
}) => (
|
|
349
318
|
<svg
|
|
350
319
|
className={clsx(classes.icons, className)}
|
|
351
320
|
version="1.1"
|
|
@@ -355,14 +324,15 @@ const InfoIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
355
324
|
<path
|
|
356
325
|
vectorEffect="non-scaling-stroke"
|
|
357
326
|
fill="none"
|
|
327
|
+
stroke="#1478AF"
|
|
358
328
|
strokeWidth="2"
|
|
359
|
-
d="
|
|
360
|
-
|
|
329
|
+
d="M8,20c0,1.1-0.9,2-2,2S4,21.1,4,20s0.9-2,2-2S8,18.9,8,20z M20,18
|
|
330
|
+
c-1.1,0-2,0.9-2,2s0.9,2,2,2s2-0.9,2-2S21.1,18,20,18z M34,18c-1.1,0-2,0.9-2,2s0.9,2,2,2s2-0.9,2-2S35.1,18,34,18z"
|
|
361
331
|
/>
|
|
362
332
|
</svg>
|
|
363
333
|
);
|
|
364
334
|
|
|
365
|
-
const
|
|
335
|
+
const MinusIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
366
336
|
<svg
|
|
367
337
|
className={clsx(classes.icons, className)}
|
|
368
338
|
version="1.1"
|
|
@@ -373,12 +343,12 @@ const PlusIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
373
343
|
vectorEffect="non-scaling-stroke"
|
|
374
344
|
fill="none"
|
|
375
345
|
strokeWidth="2"
|
|
376
|
-
d="M0,20h40
|
|
346
|
+
d="M0,20h40"
|
|
377
347
|
/>
|
|
378
348
|
</svg>
|
|
379
349
|
);
|
|
380
350
|
|
|
381
|
-
const
|
|
351
|
+
const NavigateRightIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
382
352
|
<svg
|
|
383
353
|
className={clsx(classes.icons, className)}
|
|
384
354
|
version="1.1"
|
|
@@ -388,8 +358,47 @@ const MinusIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
388
358
|
<path
|
|
389
359
|
vectorEffect="non-scaling-stroke"
|
|
390
360
|
fill="none"
|
|
361
|
+
stroke="#FFFFFF"
|
|
391
362
|
strokeWidth="2"
|
|
392
|
-
d="
|
|
363
|
+
d="M22.8,1.1l15.4,15.4L24.1,30.6 M38.2,16.5H4.4v23.1"
|
|
364
|
+
/>
|
|
365
|
+
</svg>
|
|
366
|
+
);
|
|
367
|
+
|
|
368
|
+
const PauseIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
369
|
+
<svg
|
|
370
|
+
className={clsx(classes.icons, className)}
|
|
371
|
+
version="1.1"
|
|
372
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
373
|
+
viewBox="0 0 40 40"
|
|
374
|
+
>
|
|
375
|
+
<path fill="#1478AF" d="M4.5,2h10.3v36H4.5V2z M25.2,2h10.3v36H25.2V2z" />
|
|
376
|
+
</svg>
|
|
377
|
+
);
|
|
378
|
+
|
|
379
|
+
const PlayIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
380
|
+
<svg
|
|
381
|
+
className={clsx(classes.icons, className)}
|
|
382
|
+
version="1.1"
|
|
383
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
384
|
+
viewBox="0 0 40 40"
|
|
385
|
+
>
|
|
386
|
+
<path fill="#1478AF" d="M33,20L7,35.4V4.6L33,20z" />
|
|
387
|
+
</svg>
|
|
388
|
+
);
|
|
389
|
+
|
|
390
|
+
const PlusIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
391
|
+
<svg
|
|
392
|
+
className={clsx(classes.icons, className)}
|
|
393
|
+
version="1.1"
|
|
394
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
395
|
+
viewBox="0 0 40 40"
|
|
396
|
+
>
|
|
397
|
+
<path
|
|
398
|
+
vectorEffect="non-scaling-stroke"
|
|
399
|
+
fill="none"
|
|
400
|
+
strokeWidth="2"
|
|
401
|
+
d="M0,20h40 M20,40V0"
|
|
393
402
|
/>
|
|
394
403
|
</svg>
|
|
395
404
|
);
|
|
@@ -410,7 +419,7 @@ const PublishIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
410
419
|
</svg>
|
|
411
420
|
);
|
|
412
421
|
|
|
413
|
-
const
|
|
422
|
+
const RemoveFilterIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
414
423
|
<svg
|
|
415
424
|
className={clsx(classes.icons, className)}
|
|
416
425
|
version="1.1"
|
|
@@ -420,9 +429,10 @@ const RetryIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
420
429
|
<path
|
|
421
430
|
vectorEffect="non-scaling-stroke"
|
|
422
431
|
fill="none"
|
|
432
|
+
stroke="#1478AF"
|
|
423
433
|
strokeWidth="2"
|
|
424
|
-
d="
|
|
425
|
-
|
|
434
|
+
d="M13.7,16.9L3,4.6h28.6l-11.3,12v13.6l-6.5,5.1V16.9z M32.9,22.9l6.1,6.1L32.9,22.9z M32.9,22.9
|
|
435
|
+
l-6.1-6.1L32.9,22.9l-6.1,6.1L32.9,22.9z M32.9,22.9l6.1-6.1L32.9,22.9z"
|
|
426
436
|
/>
|
|
427
437
|
</svg>
|
|
428
438
|
);
|
|
@@ -445,7 +455,7 @@ const ReplaceIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
445
455
|
</svg>
|
|
446
456
|
);
|
|
447
457
|
|
|
448
|
-
const
|
|
458
|
+
const RetryIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
449
459
|
<svg
|
|
450
460
|
className={clsx(classes.icons, className)}
|
|
451
461
|
version="1.1"
|
|
@@ -456,7 +466,8 @@ const RevertIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
456
466
|
vectorEffect="non-scaling-stroke"
|
|
457
467
|
fill="none"
|
|
458
468
|
strokeWidth="2"
|
|
459
|
-
d="
|
|
469
|
+
d="M9.5,27.3c-4.1-5.8-2.6-13.8,3.1-17.8c4.5-3.2,10.6-3.1,15,0.2 M11.9,18.8l-2.4,8.5L1,24.8 M27,21.4l4.2-7.8
|
|
470
|
+
l7.8,4.2 M31.2,13.6c3.6,6.1,1.5,13.9-4.6,17.5c-4.1,2.4-9.2,2.3-13.2-0.2"
|
|
460
471
|
/>
|
|
461
472
|
</svg>
|
|
462
473
|
);
|
|
@@ -479,7 +490,18 @@ const SnapshotIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
479
490
|
</svg>
|
|
480
491
|
);
|
|
481
492
|
|
|
482
|
-
const
|
|
493
|
+
const StopIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
494
|
+
<svg
|
|
495
|
+
className={clsx(classes.icons, className)}
|
|
496
|
+
version="1.1"
|
|
497
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
498
|
+
viewBox="0 0 40 40"
|
|
499
|
+
>
|
|
500
|
+
<path fill="#1478AF" d="M5,5h30v30H5V5z" />
|
|
501
|
+
</svg>
|
|
502
|
+
);
|
|
503
|
+
|
|
504
|
+
const SuccessIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
483
505
|
<svg
|
|
484
506
|
className={clsx(classes.icons, className)}
|
|
485
507
|
version="1.1"
|
|
@@ -490,12 +512,13 @@ const UploadIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
490
512
|
vectorEffect="non-scaling-stroke"
|
|
491
513
|
fill="none"
|
|
492
514
|
strokeWidth="2"
|
|
493
|
-
d="
|
|
515
|
+
d="M20,2c9.9,0,18,8.1,18,18s-8.1,18-18,18S2,29.9,2,20S10.1,2,20,2z M29,13.5
|
|
516
|
+
L17.8,26.3L11,19.1"
|
|
494
517
|
/>
|
|
495
518
|
</svg>
|
|
496
519
|
);
|
|
497
520
|
|
|
498
|
-
const
|
|
521
|
+
const UnarchiveIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
499
522
|
<svg
|
|
500
523
|
className={clsx(classes.icons, className)}
|
|
501
524
|
version="1.1"
|
|
@@ -505,13 +528,14 @@ const XIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
505
528
|
<path
|
|
506
529
|
vectorEffect="non-scaling-stroke"
|
|
507
530
|
fill="none"
|
|
531
|
+
stroke="#FFFFFF"
|
|
508
532
|
strokeWidth="2"
|
|
509
|
-
d="
|
|
533
|
+
d="M27.6,16.2H39V39H1.1V16.1h11.6 M30.6,11.1L20.3,2L10,11.1 M20.3,2v31.2"
|
|
510
534
|
/>
|
|
511
535
|
</svg>
|
|
512
536
|
);
|
|
513
537
|
|
|
514
|
-
const
|
|
538
|
+
const UndoIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
515
539
|
<svg
|
|
516
540
|
className={clsx(classes.icons, className)}
|
|
517
541
|
version="1.1"
|
|
@@ -521,15 +545,13 @@ const RemoveFilterIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
521
545
|
<path
|
|
522
546
|
vectorEffect="non-scaling-stroke"
|
|
523
547
|
fill="none"
|
|
524
|
-
stroke="#1478AF"
|
|
525
548
|
strokeWidth="2"
|
|
526
|
-
d="
|
|
527
|
-
l-6.1-6.1L32.9,22.9l-6.1,6.1L32.9,22.9z M32.9,22.9l6.1-6.1L32.9,22.9z"
|
|
549
|
+
d="M2,11.8h36v25.8H3.2 M11.4,2.4L2,11.8l9.4,9.4"
|
|
528
550
|
/>
|
|
529
551
|
</svg>
|
|
530
552
|
);
|
|
531
553
|
|
|
532
|
-
const
|
|
554
|
+
const UnpublishIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
533
555
|
<svg
|
|
534
556
|
className={clsx(classes.icons, className)}
|
|
535
557
|
version="1.1"
|
|
@@ -540,13 +562,12 @@ const SuccessIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
540
562
|
vectorEffect="non-scaling-stroke"
|
|
541
563
|
fill="none"
|
|
542
564
|
strokeWidth="2"
|
|
543
|
-
d="
|
|
544
|
-
L17.8,26.3L11,19.1"
|
|
565
|
+
d="M26.1,7.6l-6.2-5.5l-6.2,5.5 M19.9,2v14.8 M9.1,16.2L30.9,38 M30.9,16.2L9.1,38"
|
|
545
566
|
/>
|
|
546
567
|
</svg>
|
|
547
568
|
);
|
|
548
569
|
|
|
549
|
-
const
|
|
570
|
+
const UploadIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
550
571
|
<svg
|
|
551
572
|
className={clsx(classes.icons, className)}
|
|
552
573
|
version="1.1"
|
|
@@ -556,14 +577,13 @@ const NavigateRight: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
556
577
|
<path
|
|
557
578
|
vectorEffect="non-scaling-stroke"
|
|
558
579
|
fill="none"
|
|
559
|
-
stroke="#FFFFFF"
|
|
560
580
|
strokeWidth="2"
|
|
561
|
-
d="
|
|
581
|
+
d="M2,1.4h36 M20.1,39.4V8.7 M29.8,17.3l-9.7-8.6l-9.7,8.6"
|
|
562
582
|
/>
|
|
563
583
|
</svg>
|
|
564
584
|
);
|
|
565
585
|
|
|
566
|
-
const
|
|
586
|
+
const WarningIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
567
587
|
<svg
|
|
568
588
|
className={clsx(classes.icons, className)}
|
|
569
589
|
version="1.1"
|
|
@@ -573,13 +593,29 @@ const MidlineEllipsis: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
573
593
|
<path
|
|
574
594
|
vectorEffect="non-scaling-stroke"
|
|
575
595
|
fill="none"
|
|
576
|
-
stroke="#1478AF"
|
|
577
596
|
strokeWidth="2"
|
|
578
|
-
d="
|
|
579
|
-
|
|
597
|
+
d="M20,2c9.9,0,18,8.1,18,18s-8.1,18-18,18S2,29.9,2,20S10.1,2,20,2z M20,10.1v13.7l0,0V10.1z M20,29.9v-2.6l0,0
|
|
598
|
+
V29.9z"
|
|
599
|
+
></path>
|
|
600
|
+
</svg>
|
|
601
|
+
);
|
|
602
|
+
|
|
603
|
+
const XIcon: React.FC<{ className?: string }> = ({ className }) => (
|
|
604
|
+
<svg
|
|
605
|
+
className={clsx(classes.icons, className)}
|
|
606
|
+
version="1.1"
|
|
607
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
608
|
+
viewBox="0 0 40 40"
|
|
609
|
+
>
|
|
610
|
+
<path
|
|
611
|
+
vectorEffect="non-scaling-stroke"
|
|
612
|
+
fill="none"
|
|
613
|
+
strokeWidth="2"
|
|
614
|
+
d="M2.4,2.4l35.3,35.3 M37.6,2.4L2.4,37.6"
|
|
580
615
|
/>
|
|
581
616
|
</svg>
|
|
582
617
|
);
|
|
618
|
+
|
|
583
619
|
/**
|
|
584
620
|
* Default SVG icons. A 'className' prop can also be passed in.
|
|
585
621
|
* @example
|
|
@@ -588,12 +624,10 @@ const MidlineEllipsis: React.FC<{ className?: string }> = ({ className }) => (
|
|
|
588
624
|
export const Icons: React.FC<IconsProps> = ({ icon, className }) => {
|
|
589
625
|
const icons: { [key in IconName]: JSX.Element } = {
|
|
590
626
|
[IconName.Archive]: <ArchiveIcon className={className} />,
|
|
591
|
-
[IconName.
|
|
592
|
-
[IconName.Block]: <Block className={className} />,
|
|
627
|
+
[IconName.Block]: <BlockIcon className={className} />,
|
|
593
628
|
[IconName.Bulk]: <BulkIcon className={className} />,
|
|
594
|
-
[IconName.Unpublish]: <BulkUnpublishIcon className={className} />,
|
|
595
|
-
[IconName.Checkmark]: <CheckmarkIcon className={className} />,
|
|
596
629
|
[IconName.Calendar]: <CalendarIcon className={className} />,
|
|
630
|
+
[IconName.Checkmark]: <CheckmarkIcon className={className} />,
|
|
597
631
|
[IconName.ChevronDown]: <ChevronDownIcon className={className} />,
|
|
598
632
|
[IconName.ChevronLeft]: <ChevronLeftIcon className={className} />,
|
|
599
633
|
[IconName.ChevronRight]: <ChevronRightIcon className={className} />,
|
|
@@ -603,24 +637,29 @@ export const Icons: React.FC<IconsProps> = ({ icon, className }) => {
|
|
|
603
637
|
[IconName.Details]: <DetailsIcon className={className} />,
|
|
604
638
|
[IconName.Drag]: <DragIcon className={className} />,
|
|
605
639
|
[IconName.Ellipsis]: <EllipsisIcon className={className} />,
|
|
606
|
-
[IconName.
|
|
607
|
-
[IconName.
|
|
608
|
-
[IconName.File]: <
|
|
640
|
+
[IconName.Error]: <ErrorIcon className={className} />,
|
|
641
|
+
[IconName.External]: <ExternalIcon className={className} />,
|
|
642
|
+
[IconName.File]: <FileIcon className={className} />,
|
|
609
643
|
[IconName.Info]: <InfoIcon className={className} />,
|
|
610
|
-
[IconName.MidlineEllipsis]: <
|
|
644
|
+
[IconName.MidlineEllipsis]: <MidlineEllipsisIcon className={className} />,
|
|
611
645
|
[IconName.Minus]: <MinusIcon className={className} />,
|
|
612
|
-
[IconName.NavigateRight]: <
|
|
646
|
+
[IconName.NavigateRight]: <NavigateRightIcon className={className} />,
|
|
647
|
+
[IconName.Pause]: <PauseIcon className={className} />,
|
|
648
|
+
[IconName.Play]: <PlayIcon className={className} />,
|
|
613
649
|
[IconName.Plus]: <PlusIcon className={className} />,
|
|
614
650
|
[IconName.Publish]: <PublishIcon className={className} />,
|
|
615
|
-
[IconName.
|
|
651
|
+
[IconName.RemoveFilter]: <RemoveFilterIcon className={className} />,
|
|
616
652
|
[IconName.Replace]: <ReplaceIcon className={className} />,
|
|
653
|
+
[IconName.Retry]: <RetryIcon className={className} />,
|
|
617
654
|
[IconName.Snapshot]: <SnapshotIcon className={className} />,
|
|
655
|
+
[IconName.Stop]: <StopIcon className={className} />,
|
|
618
656
|
[IconName.Success]: <SuccessIcon className={className} />,
|
|
619
|
-
[IconName.
|
|
657
|
+
[IconName.Unarchive]: <UnarchiveIcon className={className} />,
|
|
658
|
+
[IconName.Undo]: <UndoIcon className={className} />,
|
|
659
|
+
[IconName.Unpublish]: <UnpublishIcon className={className} />,
|
|
620
660
|
[IconName.Upload]: <UploadIcon className={className} />,
|
|
621
661
|
[IconName.Warning]: <WarningIcon className={className} />,
|
|
622
662
|
[IconName.X]: <XIcon className={className} />,
|
|
623
|
-
[IconName.RemoveFilter]: <RemoveFilterIcon className={className} />,
|
|
624
663
|
};
|
|
625
664
|
|
|
626
665
|
const actionIcon: JSX.Element =
|
package/src/index.ts
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ShowNotification } from './types/ui-config';
|
|
2
|
+
|
|
3
|
+
export let showNotification: ShowNotification | (() => void) =
|
|
4
|
+
polyfill('showNotification');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Passes the PiralApi methods to the UI library.
|
|
8
|
+
* @param app {UiConfig} object containing PiralApi methods for use in UI library.
|
|
9
|
+
*/
|
|
10
|
+
export function initializeUi(app: UiConfig): void {
|
|
11
|
+
({ showNotification } = app);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface UiConfig {
|
|
15
|
+
showNotification: ShowNotification;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function polyfill(methodName: string): () => void {
|
|
19
|
+
return () => {
|
|
20
|
+
// eslint-disable-next-line no-console
|
|
21
|
+
console.warn(
|
|
22
|
+
`Could not find ${methodName} method. Is the UI initialized in the pilet? To initialize UI library call 'initializeUi(app)' in your pilet.`,
|
|
23
|
+
);
|
|
24
|
+
};
|
|
25
|
+
}
|