carbon-react 106.6.6 → 106.6.9

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 (76) hide show
  1. package/esm/__internal__/utils/argTypes/specialCharacters.d.ts +36 -0
  2. package/esm/__internal__/utils/argTypes/specialCharacters.js +36 -0
  3. package/esm/components/accordion/accordion-group/accordion-group.component.d.ts +9 -23
  4. package/esm/components/accordion/accordion-group/accordion-group.component.js +222 -25
  5. package/esm/components/accordion/accordion.component.d.ts +44 -2
  6. package/esm/components/accordion/accordion.component.js +648 -68
  7. package/esm/components/accordion/accordion.style.d.ts +45 -9
  8. package/esm/components/accordion/index.d.ts +4 -2
  9. package/esm/components/decimal/decimal.component.js +12 -10
  10. package/esm/components/menu/menu-item/menu-item.style.js +6 -3
  11. package/esm/components/multi-action-button/index.d.ts +2 -1
  12. package/esm/components/multi-action-button/multi-action-button.component.d.ts +9 -52
  13. package/esm/components/multi-action-button/multi-action-button.component.js +471 -67
  14. package/esm/components/multi-action-button/multi-action-button.config.d.ts +3 -3
  15. package/esm/components/multi-action-button/multi-action-button.style.d.ts +10 -2
  16. package/esm/components/multi-action-button/multi-action-button.style.js +4 -7
  17. package/esm/components/portal/portal.js +0 -5
  18. package/esm/components/portrait/portrait-initials.component.js +1 -2
  19. package/esm/components/tile-select/__internal__/accordion/accordion.style.d.ts +2 -2
  20. package/esm/components/tooltip/tooltip.component.d.ts +3 -0
  21. package/esm/style/utils/filter-out-styled-system-spacing-props.d.ts +1 -1
  22. package/esm/style/utils/filter-out-styled-system-spacing-props.js +1 -1
  23. package/lib/__internal__/utils/argTypes/specialCharacters.d.ts +36 -0
  24. package/lib/__internal__/utils/argTypes/specialCharacters.js +46 -0
  25. package/lib/components/accordion/accordion-group/accordion-group.component.d.ts +9 -23
  26. package/lib/components/accordion/accordion-group/accordion-group.component.js +225 -29
  27. package/lib/components/accordion/accordion.component.d.ts +44 -2
  28. package/lib/components/accordion/accordion.component.js +649 -70
  29. package/lib/components/accordion/accordion.style.d.ts +45 -9
  30. package/lib/components/accordion/index.d.ts +4 -2
  31. package/lib/components/decimal/decimal.component.js +12 -10
  32. package/lib/components/menu/menu-item/menu-item.style.js +6 -3
  33. package/lib/components/multi-action-button/index.d.ts +2 -1
  34. package/lib/components/multi-action-button/multi-action-button.component.d.ts +9 -52
  35. package/lib/components/multi-action-button/multi-action-button.component.js +471 -70
  36. package/lib/components/multi-action-button/multi-action-button.config.d.ts +3 -3
  37. package/lib/components/multi-action-button/multi-action-button.style.d.ts +10 -2
  38. package/lib/components/multi-action-button/multi-action-button.style.js +4 -7
  39. package/lib/components/portal/portal.js +0 -6
  40. package/lib/components/portrait/portrait-initials.component.js +1 -5
  41. package/lib/components/tile-select/__internal__/accordion/accordion.style.d.ts +2 -2
  42. package/lib/components/tooltip/tooltip.component.d.ts +3 -0
  43. package/lib/style/utils/filter-out-styled-system-spacing-props.d.ts +1 -1
  44. package/lib/style/utils/filter-out-styled-system-spacing-props.js +1 -1
  45. package/package.json +2 -1
  46. package/esm/__internal__/utils/helpers/browser/index.d.ts +0 -15
  47. package/esm/__internal__/utils/helpers/browser/index.js +0 -33
  48. package/esm/components/accordion/accordion-group/accordion-group.d.ts +0 -17
  49. package/esm/components/accordion/accordion.d.ts +0 -54
  50. package/esm/components/action-popover/action-popover-test.stories.js +0 -76
  51. package/esm/components/button-bar/button-bar-test.stories.js +0 -122
  52. package/esm/components/draggable/draggable-test.stories.js +0 -48
  53. package/esm/components/duelling-picklist/duelling-picklist-test.stories.js +0 -539
  54. package/esm/components/menu/menu-test.stories.js +0 -109
  55. package/esm/components/multi-action-button/multi-action-button.d.ts +0 -10
  56. package/esm/components/profile/profile-test.stories.js +0 -55
  57. package/esm/components/progress-tracker/progress-tracker-test.stories.js +0 -63
  58. package/esm/components/select/simple-select/simple-select-test.stories.js +0 -193
  59. package/esm/components/show-edit-pod/show-edit-pod-test.stories.js +0 -143
  60. package/esm/components/textarea/textarea-test.stories.js +0 -154
  61. package/lib/__internal__/utils/helpers/browser/index.d.ts +0 -15
  62. package/lib/__internal__/utils/helpers/browser/index.js +0 -40
  63. package/lib/__internal__/utils/helpers/browser/package.json +0 -6
  64. package/lib/components/accordion/accordion-group/accordion-group.d.ts +0 -17
  65. package/lib/components/accordion/accordion.d.ts +0 -54
  66. package/lib/components/action-popover/action-popover-test.stories.js +0 -95
  67. package/lib/components/button-bar/button-bar-test.stories.js +0 -145
  68. package/lib/components/draggable/draggable-test.stories.js +0 -66
  69. package/lib/components/duelling-picklist/duelling-picklist-test.stories.js +0 -573
  70. package/lib/components/menu/menu-test.stories.js +0 -132
  71. package/lib/components/multi-action-button/multi-action-button.d.ts +0 -10
  72. package/lib/components/profile/profile-test.stories.js +0 -75
  73. package/lib/components/progress-tracker/progress-tracker-test.stories.js +0 -79
  74. package/lib/components/select/simple-select/simple-select-test.stories.js +0 -206
  75. package/lib/components/show-edit-pod/show-edit-pod-test.stories.js +0 -165
  76. package/lib/components/textarea/textarea-test.stories.js +0 -173
@@ -1,539 +0,0 @@
1
- import React, { useState, useCallback, useMemo } from "react";
2
- import { DuellingPicklist, Picklist, PicklistItem, PicklistDivider, PicklistPlaceholder, PicklistGroup } from ".";
3
- import Dialog from "../dialog/dialog.component";
4
- import Search from "../search";
5
- import { Checkbox } from "../checkbox";
6
- import Box from "../box";
7
- import Button from "../button";
8
- import Typography from "../typography";
9
- export default {
10
- title: "DuellingPicklist/Test",
11
- parameters: {
12
- info: {
13
- disable: true
14
- },
15
- chromatic: {
16
- disable: true
17
- }
18
- }
19
- };
20
- export const Default = () => {
21
- const mockData = useMemo(() => {
22
- const arr = [];
23
-
24
- for (let i = 0; i < 20; i++) {
25
- const data = {
26
- key: i.toString(),
27
- title: `Content ${i + 1}`,
28
- description: `Description ${i + 1}`
29
- };
30
- arr.push(data);
31
- }
32
-
33
- return arr;
34
- }, []);
35
- const allItems = useMemo(() => {
36
- return mockData.reduce((obj, item) => {
37
- obj[item.key] = item;
38
- return obj;
39
- }, {});
40
- }, [mockData]);
41
- const [isEachItemSelected, setIsEachItemSelected] = useState(false);
42
- const [order] = useState(mockData.map(({
43
- key
44
- }) => key));
45
- const [notSelectedItems, setNotSelectedItems] = useState(allItems);
46
- const [notSelectedSearch, setNotSelectedSearch] = useState({});
47
- const [selectedItems, setSelectedItems] = useState({});
48
- const [searchQuery, setSearchQuery] = useState("");
49
- const isSearchMode = Boolean(searchQuery.length);
50
- const onAdd = useCallback(item => {
51
- const {
52
- [item.key]: removed,
53
- ...rest
54
- } = notSelectedItems;
55
- setNotSelectedItems(rest);
56
- setSelectedItems({ ...selectedItems,
57
- [item.key]: item
58
- });
59
- const {
60
- [item.key]: removed2,
61
- ...rest2
62
- } = notSelectedSearch;
63
- setNotSelectedSearch(rest2);
64
- }, [notSelectedItems, notSelectedSearch, selectedItems]);
65
- const onRemove = useCallback(item => {
66
- const {
67
- [item.key]: removed,
68
- ...rest
69
- } = selectedItems;
70
- setSelectedItems(rest);
71
- setNotSelectedItems({ ...notSelectedItems,
72
- [item.key]: item
73
- });
74
-
75
- if (isSearchMode && item.title.includes(searchQuery)) {
76
- setNotSelectedSearch({ ...notSelectedSearch,
77
- [item.key]: item
78
- });
79
- }
80
- }, [isSearchMode, notSelectedItems, notSelectedSearch, searchQuery, selectedItems]);
81
- const handleSearch = useCallback(ev => {
82
- setSearchQuery(ev.target.value);
83
- const tempNotSelectedItems = Object.keys(notSelectedItems).reduce((items, key) => {
84
- const item = notSelectedItems[key];
85
-
86
- if (item.title.includes(ev.target.value)) {
87
- items[item.key] = item;
88
- }
89
-
90
- return items;
91
- }, {});
92
- setNotSelectedSearch(tempNotSelectedItems);
93
- }, [notSelectedItems]);
94
-
95
- const renderItems = (list, type, handler) => order.reduce((items, key) => {
96
- const item = list[key];
97
-
98
- if (item) {
99
- items.push( /*#__PURE__*/React.createElement(PicklistItem, {
100
- key: key,
101
- type: type,
102
- item: item,
103
- onChange: handler
104
- }, /*#__PURE__*/React.createElement("div", {
105
- style: {
106
- display: "flex",
107
- width: "100%"
108
- }
109
- }, /*#__PURE__*/React.createElement("div", {
110
- style: {
111
- width: "50%"
112
- }
113
- }, /*#__PURE__*/React.createElement("p", {
114
- style: {
115
- fontWeight: 700,
116
- margin: 0,
117
- marginLeft: 24
118
- }
119
- }, item.title)), /*#__PURE__*/React.createElement("div", {
120
- style: {
121
- width: "50%"
122
- }
123
- }, /*#__PURE__*/React.createElement("p", {
124
- style: {
125
- margin: 0
126
- }
127
- }, item.description)))));
128
- }
129
-
130
- return items;
131
- }, []);
132
-
133
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Checkbox, {
134
- onChange: () => setIsEachItemSelected(!isEachItemSelected),
135
- checked: isEachItemSelected,
136
- label: "Example checkbox"
137
- }), /*#__PURE__*/React.createElement(DuellingPicklist, {
138
- leftLabel: `List 1 (${Object.keys(notSelectedItems).length})`,
139
- rightLabel: `List 2 (${Object.keys(selectedItems).length})`,
140
- leftControls: /*#__PURE__*/React.createElement(Search, {
141
- tabIndex: isEachItemSelected ? -1 : 0,
142
- placeholder: "Search",
143
- name: "search_name",
144
- onChange: handleSearch,
145
- value: searchQuery,
146
- id: "search_id"
147
- }),
148
- disabled: isEachItemSelected
149
- }, /*#__PURE__*/React.createElement(Picklist, {
150
- disabled: isEachItemSelected,
151
- placeholder: /*#__PURE__*/React.createElement("div", null, "Your own placeholder")
152
- }, renderItems(isSearchMode ? notSelectedSearch : notSelectedItems, "add", onAdd)), /*#__PURE__*/React.createElement(PicklistDivider, null), /*#__PURE__*/React.createElement(Picklist, {
153
- disabled: isEachItemSelected,
154
- placeholder: /*#__PURE__*/React.createElement(PicklistPlaceholder, {
155
- text: "Nothing to see here"
156
- })
157
- }, renderItems(selectedItems, "remove", onRemove))));
158
- };
159
- export const AlternativeSearch = () => {
160
- const mockData = useMemo(() => {
161
- const arr = [];
162
-
163
- for (let i = 0; i < 20; i++) {
164
- const data = {
165
- key: i.toString(),
166
- title: `Content ${i + 1}`,
167
- description: `Description ${i + 1}`
168
- };
169
- arr.push(data);
170
- }
171
-
172
- return arr;
173
- }, []);
174
- const allItems = useMemo(() => {
175
- return mockData.reduce((obj, item) => {
176
- obj[item.key] = item;
177
- return obj;
178
- }, {});
179
- }, [mockData]);
180
- const [isEachItemSelected, setIsEachItemSelected] = useState(false);
181
- const [order] = useState(mockData.map(({
182
- key
183
- }) => key));
184
- const [notSelectedItems, setNotSelectedItems] = useState(allItems);
185
- const [notSelectedSearch, setNotSelectedSearch] = useState({});
186
- const [selectedItems, setSelectedItems] = useState({});
187
- const [searchQuery, setSearchQuery] = useState("");
188
- const isSearchMode = Boolean(searchQuery.length);
189
- const onAdd = useCallback(item => {
190
- const {
191
- [item.key]: removed,
192
- ...rest
193
- } = notSelectedItems;
194
- setNotSelectedItems(rest);
195
- setSelectedItems({ ...selectedItems,
196
- [item.key]: item
197
- });
198
- const {
199
- [item.key]: removed2,
200
- ...rest2
201
- } = notSelectedSearch;
202
- setNotSelectedSearch(rest2);
203
- }, [notSelectedItems, notSelectedSearch, selectedItems]);
204
- const onRemove = useCallback(item => {
205
- const {
206
- [item.key]: removed,
207
- ...rest
208
- } = selectedItems;
209
- setSelectedItems(rest);
210
- setNotSelectedItems({ ...notSelectedItems,
211
- [item.key]: item
212
- });
213
-
214
- if (isSearchMode && item.title.includes(searchQuery)) {
215
- setNotSelectedSearch({ ...notSelectedSearch,
216
- [item.key]: item
217
- });
218
- }
219
- }, [isSearchMode, notSelectedItems, notSelectedSearch, searchQuery, selectedItems]);
220
- const handleSearch = useCallback(ev => {
221
- setSearchQuery(ev.target.value);
222
- const tempNotSelectedItems = Object.keys(notSelectedItems).reduce((items, key) => {
223
- const item = notSelectedItems[key];
224
-
225
- if (item.title.includes(ev.target.value)) {
226
- items[item.key] = item;
227
- }
228
-
229
- return items;
230
- }, {});
231
- setNotSelectedSearch(tempNotSelectedItems);
232
- }, [notSelectedItems]);
233
-
234
- const renderItems = (list, type, handler) => order.reduce((items, key) => {
235
- const item = list[key];
236
-
237
- if (item) {
238
- items.push( /*#__PURE__*/React.createElement(PicklistItem, {
239
- key: key,
240
- type: type,
241
- item: item,
242
- onChange: handler
243
- }, /*#__PURE__*/React.createElement("div", {
244
- style: {
245
- display: "flex",
246
- width: "100%"
247
- }
248
- }, /*#__PURE__*/React.createElement("div", {
249
- style: {
250
- width: "50%"
251
- }
252
- }, /*#__PURE__*/React.createElement("p", {
253
- style: {
254
- fontWeight: 700,
255
- margin: 0,
256
- marginLeft: 24
257
- }
258
- }, item.title)), /*#__PURE__*/React.createElement("div", {
259
- style: {
260
- width: "50%"
261
- }
262
- }, /*#__PURE__*/React.createElement("p", {
263
- style: {
264
- margin: 0
265
- }
266
- }, item.description)))));
267
- }
268
-
269
- return items;
270
- }, []);
271
-
272
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, {
273
- display: "flex",
274
- alignItems: "center",
275
- justifyContent: "space-between"
276
- }, /*#__PURE__*/React.createElement(Checkbox, {
277
- onChange: () => setIsEachItemSelected(!isEachItemSelected),
278
- checked: isEachItemSelected,
279
- label: "Example checkbox"
280
- }), /*#__PURE__*/React.createElement(Box, {
281
- width: "calc(50% + 80px)"
282
- }, /*#__PURE__*/React.createElement(Search, {
283
- tabIndex: isEachItemSelected ? -1 : 0,
284
- placeholder: "Search",
285
- name: "search_name",
286
- onChange: handleSearch,
287
- value: searchQuery,
288
- id: "search_id"
289
- }))), /*#__PURE__*/React.createElement(DuellingPicklist, {
290
- leftLabel: `List 1 (${Object.keys(notSelectedItems).length})`,
291
- rightLabel: `List 2 (${Object.keys(selectedItems).length})`,
292
- disabled: isEachItemSelected
293
- }, /*#__PURE__*/React.createElement(Picklist, {
294
- disabled: isEachItemSelected,
295
- placeholder: /*#__PURE__*/React.createElement("div", null, "Your own placeholder")
296
- }, renderItems(isSearchMode ? notSelectedSearch : notSelectedItems, "add", onAdd)), /*#__PURE__*/React.createElement(Picklist, {
297
- disabled: isEachItemSelected,
298
- placeholder: /*#__PURE__*/React.createElement(PicklistPlaceholder, {
299
- text: "Nothing to see here"
300
- })
301
- }, renderItems(selectedItems, "remove", onRemove))));
302
- };
303
- export const Grouped = () => {
304
- const mockData = {
305
- groupA: [{
306
- key: 1,
307
- title: "Content 1"
308
- }, {
309
- key: 2,
310
- title: "Content 2"
311
- }, {
312
- key: 3,
313
- title: "Content 3"
314
- }],
315
- groupB: [{
316
- key: 4,
317
- title: "Content 4"
318
- }],
319
- groupC: [{
320
- key: 5,
321
- title: "Content 5"
322
- }, {
323
- key: 6,
324
- title: "Content 6"
325
- }]
326
- };
327
- const [notSelectedItems, setNotSelectedItems] = useState(mockData);
328
- const [selectedItems, setSelectedItems] = useState({});
329
- const getItemGroup = useCallback(item => {
330
- let group;
331
-
332
- for (const [key, value] of Object.entries(mockData)) {
333
- if (value.filter(data => data.key === item.key).length > 0) group = key;
334
- }
335
-
336
- return group;
337
- }, [mockData]);
338
- const onAdd = useCallback(item => {
339
- const itemGroup = getItemGroup(item);
340
- const {
341
- [itemGroup]: group,
342
- ...rest
343
- } = notSelectedItems;
344
- const itemIndex = group.indexOf(item);
345
- group.splice(itemIndex, 1);
346
-
347
- if (group.length > 0) {
348
- setNotSelectedItems({ ...rest,
349
- [itemGroup]: group
350
- });
351
- } else {
352
- setNotSelectedItems({ ...rest
353
- });
354
- }
355
-
356
- if (selectedItems[itemGroup]) {
357
- setSelectedItems({ ...selectedItems,
358
- [itemGroup]: [...selectedItems[itemGroup], item]
359
- });
360
- } else {
361
- setSelectedItems({ ...selectedItems,
362
- [itemGroup]: [item]
363
- });
364
- }
365
- }, [notSelectedItems, selectedItems, getItemGroup]);
366
- const onRemove = useCallback(item => {
367
- const itemGroup = getItemGroup(item);
368
- const {
369
- [itemGroup]: group,
370
- ...rest
371
- } = selectedItems;
372
- const itemIndex = group.indexOf(item);
373
- group.splice(itemIndex, 1);
374
-
375
- if (group.length > 0) {
376
- setSelectedItems({ ...rest,
377
- [itemGroup]: group
378
- });
379
- } else {
380
- setSelectedItems({ ...rest
381
- });
382
- }
383
-
384
- if (notSelectedItems[itemGroup]) {
385
- setNotSelectedItems({ ...notSelectedItems,
386
- [itemGroup]: [...notSelectedItems[itemGroup], item]
387
- });
388
- } else {
389
- setNotSelectedItems({ ...notSelectedItems,
390
- [itemGroup]: [item]
391
- });
392
- }
393
- }, [notSelectedItems, selectedItems, getItemGroup]);
394
- const addGroup = useCallback(group => {
395
- const {
396
- [group]: removed,
397
- ...rest
398
- } = notSelectedItems;
399
- setNotSelectedItems(rest);
400
- setSelectedItems({ ...selectedItems,
401
- [group]: mockData[group]
402
- });
403
- }, [mockData, notSelectedItems, selectedItems]);
404
- const removeGroup = useCallback(group => {
405
- const {
406
- [group]: removed,
407
- ...rest
408
- } = selectedItems;
409
- setSelectedItems(rest);
410
- setNotSelectedItems({ ...notSelectedItems,
411
- [group]: mockData[group]
412
- });
413
- }, [mockData, notSelectedItems, selectedItems]);
414
-
415
- const renderItems = (list, type, handler) => {
416
- if (!list) return null;
417
- list.sort((a, b) => a.key - b.key);
418
- return list.map(item => {
419
- return /*#__PURE__*/React.createElement(PicklistItem, {
420
- key: item.key,
421
- type: type,
422
- item: item,
423
- onChange: handler
424
- }, /*#__PURE__*/React.createElement("div", {
425
- style: {
426
- display: "flex",
427
- width: "100%"
428
- }
429
- }, /*#__PURE__*/React.createElement("p", {
430
- style: {
431
- fontWeight: 700,
432
- margin: 0,
433
- marginLeft: 24
434
- }
435
- }, item.title)));
436
- });
437
- };
438
-
439
- const getTotalItems = items => {
440
- let total = 0;
441
- const groups = Object.values(items);
442
- groups.forEach(item => {
443
- total += item.length;
444
- });
445
- return total;
446
- };
447
-
448
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DuellingPicklist, {
449
- leftLabel: `List 1 (${getTotalItems(notSelectedItems)})`,
450
- rightLabel: `List 2 (${getTotalItems(selectedItems)})`
451
- }, /*#__PURE__*/React.createElement(Picklist, {
452
- placeholder: /*#__PURE__*/React.createElement(PicklistPlaceholder, {
453
- text: "Nothing to see here"
454
- })
455
- }, notSelectedItems.groupA && /*#__PURE__*/React.createElement(PicklistGroup, {
456
- title: /*#__PURE__*/React.createElement(Typography, {
457
- variant: "b"
458
- }, "Group A"),
459
- type: "add",
460
- onChange: () => addGroup("groupA")
461
- }, renderItems(notSelectedItems.groupA, "add", onAdd)), notSelectedItems.groupB && /*#__PURE__*/React.createElement(PicklistGroup, {
462
- title: /*#__PURE__*/React.createElement(Typography, {
463
- variant: "b"
464
- }, "Group B"),
465
- type: "add",
466
- onChange: () => addGroup("groupB")
467
- }, renderItems(notSelectedItems.groupB, "add", onAdd)), notSelectedItems.groupC && /*#__PURE__*/React.createElement(PicklistGroup, {
468
- title: /*#__PURE__*/React.createElement(Typography, {
469
- variant: "b"
470
- }, "Group C"),
471
- type: "add",
472
- onChange: () => addGroup("groupC")
473
- }, renderItems(notSelectedItems.groupC, "add", onAdd))), /*#__PURE__*/React.createElement(PicklistDivider, null), /*#__PURE__*/React.createElement(Picklist, {
474
- placeholder: /*#__PURE__*/React.createElement(PicklistPlaceholder, {
475
- text: "Nothing to see here"
476
- })
477
- }, selectedItems.groupA && /*#__PURE__*/React.createElement(PicklistGroup, {
478
- title: /*#__PURE__*/React.createElement(Typography, {
479
- variant: "b"
480
- }, "Group A"),
481
- type: "remove",
482
- onChange: () => removeGroup("groupA")
483
- }, renderItems(selectedItems.groupA, "remove", onRemove)), selectedItems.groupB && /*#__PURE__*/React.createElement(PicklistGroup, {
484
- title: /*#__PURE__*/React.createElement(Typography, {
485
- variant: "b"
486
- }, "Group B"),
487
- type: "remove",
488
- onChange: () => removeGroup("groupB")
489
- }, renderItems(selectedItems.groupB, "remove", onRemove)), selectedItems.groupC && /*#__PURE__*/React.createElement(PicklistGroup, {
490
- title: /*#__PURE__*/React.createElement(Typography, {
491
- variant: "b"
492
- }, "Group C"),
493
- type: "remove",
494
- onChange: () => removeGroup("groupC")
495
- }, renderItems(selectedItems.groupC, "remove", onRemove)))));
496
- };
497
- export const InDialog = () => {
498
- const [isDialogOpen, setIsDialogOpen] = useState(false);
499
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
500
- onClick: () => setIsDialogOpen(true)
501
- }, "Open Duelling Picklist"), /*#__PURE__*/React.createElement(Dialog, {
502
- open: isDialogOpen,
503
- onCancel: () => setIsDialogOpen(false),
504
- title: "Duelling Picklist",
505
- size: "large"
506
- }, /*#__PURE__*/React.createElement(Default, null)));
507
- };
508
- Default.story = {
509
- name: "default",
510
- parameters: {
511
- chromatic: {
512
- disable: false
513
- }
514
- }
515
- };
516
- AlternativeSearch.story = {
517
- name: "alternative search placement",
518
- parameters: {
519
- chromatic: {
520
- disable: false
521
- }
522
- }
523
- };
524
- Grouped.story = {
525
- name: "grouped",
526
- parameters: {
527
- chromatic: {
528
- disable: false
529
- }
530
- }
531
- };
532
- InDialog.story = {
533
- name: "in dialog",
534
- parameters: {
535
- chromatic: {
536
- disable: true
537
- }
538
- }
539
- };
@@ -1,109 +0,0 @@
1
- /* eslint-disable react/prop-types */
2
- import React, { useState } from "react";
3
- import { action } from "@storybook/addon-actions";
4
- import { Menu } from ".";
5
- import MenuItem from "./menu-item";
6
- import MenuFullscreen from "./menu-full-screen";
7
- import Search from "../search";
8
- export default {
9
- title: "Menu/Test",
10
- parameters: {
11
- info: {
12
- disable: true
13
- },
14
- chromatic: {
15
- disable: false
16
- }
17
- },
18
- argTypes: {
19
- menuType: {
20
- options: ["light", "dark"],
21
- control: {
22
- type: "select"
23
- }
24
- },
25
- startPosition: {
26
- options: ["left", "right"],
27
- control: {
28
- type: "select"
29
- }
30
- },
31
- searchVariant: {
32
- options: ["default", "dark"],
33
- control: {
34
- type: "select"
35
- }
36
- },
37
- searchButton: {
38
- options: [true, false],
39
- control: {
40
- type: "boolean"
41
- }
42
- }
43
- }
44
- };
45
- export const MenuFullScreenStory = ({
46
- menuType,
47
- startPosition,
48
- searchVariant,
49
- searchButton
50
- }) => {
51
- const [isOpen, setIsOpen] = useState(true);
52
-
53
- const onClose = evt => {
54
- setIsOpen(false);
55
- action("close icon clicked")(evt);
56
- };
57
-
58
- const handleOpen = () => {
59
- setIsOpen(true);
60
- action("open")();
61
- };
62
-
63
- return /*#__PURE__*/React.createElement(Menu, {
64
- menuType: menuType
65
- }, /*#__PURE__*/React.createElement(MenuItem, {
66
- onClick: handleOpen
67
- }, "Menu"), /*#__PURE__*/React.createElement(MenuFullscreen, {
68
- startPosition: startPosition,
69
- isOpen: isOpen,
70
- onClose: onClose
71
- }, /*#__PURE__*/React.createElement(MenuItem, {
72
- href: "#"
73
- }, "Menu Item One"), /*#__PURE__*/React.createElement(MenuItem, {
74
- onClick: evt => action("submenu item clicked")(evt),
75
- submenu: "Menu Item Two"
76
- }, /*#__PURE__*/React.createElement(MenuItem, {
77
- href: "#"
78
- }, "Submenu Item One"), /*#__PURE__*/React.createElement(MenuItem, {
79
- href: "#"
80
- }, "Submenu Item Two")), /*#__PURE__*/React.createElement(MenuItem, {
81
- variant: "alternate"
82
- }, /*#__PURE__*/React.createElement(Search, {
83
- placeholder: "Search...",
84
- variant: searchVariant,
85
- defaultValue: "",
86
- searchButton: searchButton
87
- })), /*#__PURE__*/React.createElement(MenuItem, {
88
- href: "#"
89
- }, "Menu Item Three"), /*#__PURE__*/React.createElement(MenuItem, {
90
- href: "#"
91
- }, "Menu Item Four"), /*#__PURE__*/React.createElement(MenuItem, {
92
- submenu: "Menu Item Five"
93
- }, /*#__PURE__*/React.createElement(MenuItem, {
94
- href: "#"
95
- }, "Submenu Item One"), /*#__PURE__*/React.createElement(MenuItem, {
96
- href: "#"
97
- }, "Submenu Item Two")), /*#__PURE__*/React.createElement(MenuItem, {
98
- href: "#"
99
- }, "Menu Item Six")));
100
- };
101
- MenuFullScreenStory.story = {
102
- name: "fullscreen menu",
103
- args: {
104
- menuType: "light",
105
- startPosition: "left",
106
- searchVariant: "default",
107
- searchButton: true
108
- }
109
- };
@@ -1,10 +0,0 @@
1
- import { SplitButtonProps } from "../split-button";
2
-
3
- export interface MultiActionButtonProps extends SplitButtonProps {
4
- /** Button type: "primary" | "secondary" | "tertiary" */
5
- buttonType?: "primary" | "secondary" | "tertiary";
6
- }
7
-
8
- declare function MultiActionButton(props: MultiActionButtonProps): JSX.Element;
9
-
10
- export default MultiActionButton;
@@ -1,55 +0,0 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
- /* eslint-disable react/prop-types */
4
- import React from "react";
5
- import specialCharacters, { email as testEmail } from "../../../.storybook/utils/argTypes/specialCharacters";
6
- import Profile from "./profile.component";
7
- import { PROFILE_SIZES } from "./profile.config";
8
- export default {
9
- title: "Profile/Test",
10
- parameters: {
11
- info: {
12
- disable: true
13
- },
14
- chromatic: {
15
- disable: true
16
- }
17
- },
18
- argTypes: {
19
- size: {
20
- control: {
21
- type: "select",
22
- options: PROFILE_SIZES
23
- }
24
- },
25
- emailSpecialCharacters: {
26
- options: [...specialCharacters.options, ...testEmail.options],
27
- mapping: { ...specialCharacters.mapping,
28
- ...testEmail.mapping
29
- }
30
- },
31
- nameSpecialCharacters: specialCharacters
32
- }
33
- };
34
- export const DefaultStory = ({
35
- email,
36
- emailSpecialCharacters,
37
- name,
38
- nameSpecialCharacters,
39
- ...args
40
- }) => /*#__PURE__*/React.createElement(Profile, _extends({
41
- email: email || emailSpecialCharacters,
42
- name: name || nameSpecialCharacters
43
- }, args));
44
- DefaultStory.story = {
45
- name: "default",
46
- args: {
47
- email: "johnsmith@sage.com",
48
- initials: "JS",
49
- size: PROFILE_SIZES[0],
50
- name: "John Smith",
51
- src: "",
52
- emailSpecialCharacters: undefined,
53
- nameSpecialCharacters: undefined
54
- }
55
- };