@altinn/altinn-components 0.26.1 → 0.27.0

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 (133) hide show
  1. package/dist/FieldsetLegend-Dwb3U0vQ.js +10 -0
  2. package/dist/Input-B_w6SBmg.js +12 -0
  3. package/dist/Label-DjSEhgyW.js +11 -0
  4. package/dist/Paragraph-CFjOkbXa.js +11 -0
  5. package/dist/Textarea-BBstVlPT.js +10 -0
  6. package/dist/altinn-ds-overrides.css +2 -2
  7. package/dist/altinn-ds.css +47 -101
  8. package/dist/assets/Button.css +1 -1
  9. package/dist/assets/ButtonBase.css +1 -1
  10. package/dist/assets/ButtonIcon.css +1 -1
  11. package/dist/assets/ButtonLabel.css +1 -1
  12. package/dist/assets/ComboButton.css +1 -1
  13. package/dist/assets/IconButton.css +1 -1
  14. package/dist/assets/ListItemHeader.css +1 -1
  15. package/dist/assets/MenuItemLabel.css +1 -1
  16. package/dist/components/Bookmarks/EditableBookmark.js +31 -30
  17. package/dist/components/Button/Button.js +41 -43
  18. package/dist/components/Button/ButtonBase.js +28 -26
  19. package/dist/components/Button/ButtonIcon.js +3 -3
  20. package/dist/components/Button/ButtonLabel.js +3 -3
  21. package/dist/components/Button/ComboButton.js +30 -28
  22. package/dist/components/Button/IconButton.js +24 -25
  23. package/dist/components/ContextMenu/ContextMenu.js +5 -6
  24. package/dist/components/Dialog/DialogActions.js +22 -21
  25. package/dist/components/DsComponents/index.js +23 -21
  26. package/dist/components/Forms/Checkbox.js +16 -0
  27. package/dist/components/Forms/CheckboxOptions.js +12 -0
  28. package/dist/components/Forms/Field.js +6 -0
  29. package/dist/components/Forms/FieldBase.js +17 -0
  30. package/dist/components/Forms/Fieldset.js +28 -0
  31. package/dist/components/Forms/FieldsetBase.js +15 -0
  32. package/dist/components/Forms/Input.js +14 -0
  33. package/dist/components/Forms/Label.js +6 -0
  34. package/dist/components/Forms/Legend.js +14 -0
  35. package/dist/components/Forms/OptionsBase.js +18 -0
  36. package/dist/components/Forms/Radio.js +16 -0
  37. package/dist/components/Forms/RadioOptions.js +12 -0
  38. package/dist/components/Forms/Select.js +25 -0
  39. package/dist/components/Forms/SelectField.js +12 -0
  40. package/dist/components/Forms/Switch.js +16 -0
  41. package/dist/components/Forms/SwitchOptions.js +12 -0
  42. package/dist/components/Forms/TextField.js +12 -0
  43. package/dist/components/Forms/Textarea.js +6 -0
  44. package/dist/components/Forms/TextareaField.js +12 -0
  45. package/dist/components/Forms/index.js +40 -0
  46. package/dist/components/GlobalMenu/AccountMenu.js +2 -2
  47. package/dist/components/GlobalMenu/GlobalMenu.js +72 -65
  48. package/dist/components/List/ListItemHeader.js +30 -30
  49. package/dist/components/Menu/Menu.js +42 -38
  50. package/dist/components/Menu/MenuItemLabel.js +10 -10
  51. package/dist/components/Menu/MenuItemsVirtual.js +28 -27
  52. package/dist/components/Page/DashboardCard.js +10 -9
  53. package/dist/components/Page/PageDetails.js +1 -1
  54. package/dist/components/Page/PageNav.js +6 -6
  55. package/dist/components/Toolbar/ToolbarButton.js +23 -21
  56. package/dist/components/Toolbar/ToolbarFilter.js +27 -26
  57. package/dist/components/index.js +147 -113
  58. package/dist/{floating-ui.react-BQwG1HOM.js → floating-ui.react-DpzNAs2N.js} +26 -31
  59. package/dist/{index-DcykCrjD.js → index-B7UjMwQm.js} +13 -12
  60. package/dist/index-Bq6w9CqA.js +81 -0
  61. package/dist/index.js +177 -143
  62. package/dist/lite-1fxw3LjI.js +7 -0
  63. package/dist/tokens/README.md +1 -1
  64. package/dist/tokens/altinn-ds.css +48 -102
  65. package/dist/tokens/design-tokens-build/altinn-ds.css +48 -102
  66. package/dist/types/fields.js +1 -0
  67. package/dist/types/lib/components/Bookmarks/BookmarksSection.stories.d.ts +0 -1
  68. package/dist/types/lib/components/Button/Button.d.ts +1 -2
  69. package/dist/types/lib/components/Button/Button.stories.d.ts +5 -1
  70. package/dist/types/lib/components/Button/ButtonBase.d.ts +3 -2
  71. package/dist/types/lib/components/Button/ComboButton.d.ts +1 -1
  72. package/dist/types/lib/components/Dialog/DialogActions.d.ts +2 -1
  73. package/dist/types/lib/components/Dialog/DialogActions.stories.d.ts +1 -1
  74. package/dist/types/lib/components/Forms/Checkbox.d.ts +7 -0
  75. package/dist/types/lib/components/Forms/Checkbox.stories.d.ts +15 -0
  76. package/dist/types/lib/components/Forms/CheckboxOptions.d.ts +5 -0
  77. package/dist/types/lib/components/Forms/CheckboxOptions.stories.d.ts +18 -0
  78. package/dist/types/lib/components/Forms/Field.d.ts +7 -0
  79. package/dist/types/lib/components/Forms/FieldBase.d.ts +8 -0
  80. package/dist/types/lib/components/Forms/Fieldset.d.ts +7 -0
  81. package/dist/types/lib/components/Forms/FieldsetBase.d.ts +8 -0
  82. package/dist/types/lib/components/Forms/Forms.stories.d.ts +7 -0
  83. package/dist/types/lib/components/Forms/Input.d.ts +10 -0
  84. package/dist/types/lib/components/Forms/Label.d.ts +7 -0
  85. package/dist/types/lib/components/Forms/Legend.d.ts +7 -0
  86. package/dist/types/lib/components/Forms/OptionsBase.d.ts +9 -0
  87. package/dist/types/lib/components/Forms/Radio.d.ts +7 -0
  88. package/dist/types/lib/components/Forms/Radio.stories.d.ts +15 -0
  89. package/dist/types/lib/components/Forms/RadioOptions.d.ts +6 -0
  90. package/dist/types/lib/components/Forms/RadioOptions.stories.d.ts +18 -0
  91. package/dist/types/lib/components/Forms/Select.d.ts +9 -0
  92. package/dist/types/lib/components/Forms/SelectField.d.ts +8 -0
  93. package/dist/types/lib/components/Forms/SelectField.stories.d.ts +14 -0
  94. package/dist/types/lib/components/Forms/Switch.d.ts +7 -0
  95. package/dist/types/lib/components/Forms/Switch.stories.d.ts +15 -0
  96. package/dist/types/lib/components/Forms/SwitchOptions.d.ts +6 -0
  97. package/dist/types/lib/components/Forms/SwitchOptions.stories.d.ts +18 -0
  98. package/dist/types/lib/components/Forms/TextField.d.ts +6 -0
  99. package/dist/types/lib/components/Forms/TextField.stories.d.ts +15 -0
  100. package/dist/types/lib/components/Forms/Textarea.d.ts +7 -0
  101. package/dist/types/lib/components/Forms/TextareaField.d.ts +6 -0
  102. package/dist/types/lib/components/Forms/TextareaField.stories.d.ts +15 -0
  103. package/dist/types/lib/components/Forms/index.d.ts +19 -0
  104. package/dist/types/lib/components/GlobalMenu/AccountMenu.d.ts +4 -2
  105. package/dist/types/lib/components/GlobalMenu/AccountMenu.stories.d.ts +3 -2
  106. package/dist/types/lib/components/GlobalMenu/GlobalMenu.d.ts +1 -1
  107. package/dist/types/lib/components/GlobalMenu/GlobalMenu.stories.d.ts +3 -2
  108. package/dist/types/lib/components/Header/Header.stories.d.ts +1 -0
  109. package/dist/types/lib/components/Menu/Examples.stories.d.ts +6 -6
  110. package/dist/types/lib/components/Menu/Menu.d.ts +3 -3
  111. package/dist/types/lib/components/Menu/Menu.stories.d.ts +1 -1
  112. package/dist/types/lib/components/Menu/MenuItems.d.ts +4 -0
  113. package/dist/types/lib/components/Menu/MenuItemsVirtual.d.ts +5 -1
  114. package/dist/types/lib/components/Page/DashboardHeader.stories.d.ts +12 -0
  115. package/dist/types/lib/components/Page/{Patterns.stories.d.ts → Examples.stories.d.ts} +2 -0
  116. package/dist/types/lib/components/Toolbar/ToolbarButton.d.ts +2 -1
  117. package/dist/types/lib/components/Toolbar/ToolbarButton.stories.d.ts +1 -1
  118. package/dist/types/lib/components/index.d.ts +1 -1
  119. package/dist/types/lib/types/fields.d.ts +2 -0
  120. package/dist/usePagination-B4GfH2GQ.js +1026 -0
  121. package/package.json +1 -1
  122. package/dist/assets/FieldBase.css +0 -1
  123. package/dist/assets/InputBase.css +0 -1
  124. package/dist/components/TextField/FieldBase.js +0 -16
  125. package/dist/components/TextField/InputBase.js +0 -33
  126. package/dist/components/TextField/TextField.js +0 -7
  127. package/dist/components/TextField/index.js +0 -8
  128. package/dist/types/lib/components/Button/Buttons.stories.d.ts +0 -18
  129. package/dist/types/lib/components/TextField/FieldBase.d.ts +0 -11
  130. package/dist/types/lib/components/TextField/InputBase.d.ts +0 -14
  131. package/dist/types/lib/components/TextField/TextField.d.ts +0 -7
  132. package/dist/types/lib/components/TextField/index.d.ts +0 -3
  133. package/dist/usePagination-BJD-uxk9.js +0 -1098
@@ -0,0 +1,10 @@
1
+ "use client";
2
+ import { jsx as e } from "react/jsx-runtime";
3
+ import { forwardRef as o } from "react";
4
+ import { L as i } from "./Label-DjSEhgyW.js";
5
+ const l = o(function(r, t) {
6
+ return e(i, { asChild: !0, children: e("legend", { ref: t, ...r }) });
7
+ });
8
+ export {
9
+ l as F
10
+ };
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import { jsx as s } from "react/jsx-runtime";
3
+ import { c as a } from "./lite-1fxw3LjI.js";
4
+ import { forwardRef as i } from "react";
5
+ const l = i(function({ type: u = "text", className: e, onChange: r, onClick: p, ...f }, m) {
6
+ return s("input", { className: a("ds-input", e), ref: m, type: u, onChange: (t) => f.readOnly || (r == null ? void 0 : r(t)), onClick: (t) => {
7
+ f.readOnly && t.preventDefault(), p == null || p(t);
8
+ }, ...f });
9
+ });
10
+ export {
11
+ l as I
12
+ };
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ import { jsx as a } from "react/jsx-runtime";
3
+ import { S as s } from "./index-C8BS_2GY.js";
4
+ import { c as l } from "./lite-1fxw3LjI.js";
5
+ import { forwardRef as n } from "react";
6
+ const u = n(function({ className: o, weight: e = "medium", asChild: t, ...r }, m) {
7
+ return a(t ? s : "label", { ref: m, className: l("ds-label", o), "data-weight": e, ...r });
8
+ });
9
+ export {
10
+ u as L
11
+ };
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ import { jsx as m } from "react/jsx-runtime";
3
+ import { S as n } from "./index-C8BS_2GY.js";
4
+ import { c as s } from "./lite-1fxw3LjI.js";
5
+ import { forwardRef as e } from "react";
6
+ const g = e(function({ className: r, asChild: a, variant: o = "default", ...t }, p) {
7
+ return m(a ? n : "p", { ref: p, className: s("ds-paragraph", r), "data-variant": o, ...t });
8
+ });
9
+ export {
10
+ g as P
11
+ };
@@ -0,0 +1,10 @@
1
+ "use client";
2
+ import { jsx as a } from "react/jsx-runtime";
3
+ import { c as o } from "./lite-1fxw3LjI.js";
4
+ import { forwardRef as s } from "react";
5
+ const n = s(function({ className: r, ...e }, t) {
6
+ return a("textarea", { className: o("ds-input", r), ref: t, ...e });
7
+ });
8
+ export {
9
+ n as T
10
+ };
@@ -34,6 +34,6 @@
34
34
  --ds-color-accent-base-contrast-subtle: var(--ds-color-company-base-contrast-subtle);
35
35
 
36
36
  /* Override tokens from designSystem & altinn-components */
37
- --ds-body-md-font-size: 1rem;
38
- --ds-color-text-subtle: #10204a;
37
+ /* --ds-body-md-font-size: 1rem;
38
+ --ds-color-text-subtle: #10204a; */
39
39
  }
@@ -1,10 +1,8 @@
1
1
  @charset "UTF-8";
2
2
 
3
- @layer ds.reset, ds.theme, ds.base, ds.utilities, ds.components;
3
+ @layer ds.theme, ds.base, ds.utilities, ds.components;
4
4
 
5
- /**
6
- * These files are generated from design tokens defind using Token Studio
7
- */
5
+ /* This file is generated by @digdir/designsystemet@1.0.4 */
8
6
 
9
7
  @layer ds.theme.color-scheme.light {
10
8
  :root,
@@ -315,12 +313,30 @@
315
313
  }
316
314
  }
317
315
 
318
- /**
319
- * These files are generated from design tokens defind using Token Studio
320
- */
321
-
322
316
  @layer ds.theme.typography.secondary {
323
317
  [data-typography="secondary"] {
318
+ --ds-line-height-sm: 1.3;
319
+ --ds-line-height-md: 1.5;
320
+ --ds-line-height-lg: 1.7;
321
+ --ds-font-size-1: 0.75rem;
322
+ --ds-font-size-2: 0.875rem;
323
+ --ds-font-size-3: 1rem;
324
+ --ds-font-size-4: 1.125rem;
325
+ --ds-font-size-5: 1.3125rem;
326
+ --ds-font-size-6: 1.5rem;
327
+ --ds-font-size-7: 1.875rem;
328
+ --ds-font-size-8: 2.25rem;
329
+ --ds-font-size-9: 3rem;
330
+ --ds-font-size-10: 3.75rem;
331
+ --ds-letter-spacing-1: -1%;
332
+ --ds-letter-spacing-2: -0.5%;
333
+ --ds-letter-spacing-3: -0.25%;
334
+ --ds-letter-spacing-4: -0.15%;
335
+ --ds-letter-spacing-5: 0%;
336
+ --ds-letter-spacing-6: 0.15%;
337
+ --ds-letter-spacing-7: 0.25%;
338
+ --ds-letter-spacing-8: 0.5%;
339
+ --ds-letter-spacing-9: 1.5%;
324
340
  --ds-font-family: Inter;
325
341
  --ds-font-weight-medium: 500;
326
342
  --ds-font-weight-semibold: 600;
@@ -413,34 +429,8 @@
413
429
  --ds-body-long-xs-line-height: 1.7;
414
430
  --ds-body-long-xs-font-size: 0.875rem;
415
431
  --ds-body-long-xs-letter-spacing: 0.15%;
416
- --ds-line-height-sm: 1.3;
417
- --ds-line-height-md: 1.5;
418
- --ds-line-height-lg: 1.7;
419
- --ds-font-size-1: 0.75rem;
420
- --ds-font-size-2: 0.875rem;
421
- --ds-font-size-3: 1rem;
422
- --ds-font-size-4: 1.125rem;
423
- --ds-font-size-5: 1.3125rem;
424
- --ds-font-size-6: 1.5rem;
425
- --ds-font-size-7: 1.875rem;
426
- --ds-font-size-8: 2.25rem;
427
- --ds-font-size-9: 3rem;
428
- --ds-font-size-10: 3.75rem;
429
- --ds-letter-spacing-1: -1%;
430
- --ds-letter-spacing-2: -0.5%;
431
- --ds-letter-spacing-3: -0.25%;
432
- --ds-letter-spacing-4: -0.15%;
433
- --ds-letter-spacing-5: 0%;
434
- --ds-letter-spacing-6: 0.15%;
435
- --ds-letter-spacing-7: 0.25%;
436
- --ds-letter-spacing-8: 0.5%;
437
- --ds-letter-spacing-9: 1.5%;
438
432
  }
439
433
  }
440
- /**
441
- * These files are generated from design tokens defind using Token Studio
442
- */
443
-
444
434
  @layer ds.theme.semantic {
445
435
  :root {
446
436
  --ds-size-base: 18;
@@ -453,7 +443,6 @@
453
443
  --ds-border-radius-xl: min(var(--ds-border-radius-base) * 3, var(--ds-border-radius-scale) * 7);
454
444
  --ds-border-radius-default: var(--ds-border-radius-base);
455
445
  --ds-border-radius-full: 624.9375rem;
456
- --ds-opacity-disabled: 30%;
457
446
  --ds-border-width-default: 1px;
458
447
  --ds-border-width-focus: 3px;
459
448
  --ds-shadow-xs: 0 0 1px 0 rgba(0, 0, 0, 0.16), 0 1px 2px 0 rgba(0, 0, 0, 0.12);
@@ -461,6 +450,7 @@
461
450
  --ds-shadow-md: 0 0 1px 0 rgba(0, 0, 0, 0.14), 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 4px 8px 0 rgba(0, 0, 0, 0.12);
462
451
  --ds-shadow-lg: 0 0 1px 0 rgba(0, 0, 0, 0.13), 0 3px 5px 0 rgba(0, 0, 0, 0.13), 0 6px 12px 0 rgba(0, 0, 0, 0.14);
463
452
  --ds-shadow-xl: 0 0 1px 0 rgba(0, 0, 0, 0.12), 0 4px 8px 0 rgba(0, 0, 0, 0.16), 0 12px 24px 0 rgba(0, 0, 0, 0.16);
453
+ --ds-opacity-disabled: 30%;
464
454
 
465
455
  --ds-size-0: calc(var(--ds-size-step) / var(--ds-size-base) * 1em * 0);
466
456
  --ds-size-1: calc(var(--ds-size-step) / var(--ds-size-base) * 1em * 1);
@@ -508,10 +498,6 @@
508
498
  }
509
499
  }
510
500
 
511
- /**
512
- * These files are generated from design tokens defind using Token Studio
513
- */
514
-
515
501
  @layer ds.theme.color-scheme.dark {
516
502
  [data-color-scheme="dark"] {
517
503
  --ds-color-company-background-default: #10172c;
@@ -820,13 +806,31 @@
820
806
  }
821
807
  }
822
808
 
823
- /**
824
- * These files are generated from design tokens defind using Token Studio
825
- */
826
-
827
809
  @layer ds.theme.typography.primary {
828
810
  :root,
829
811
  [data-typography="primary"] {
812
+ --ds-line-height-sm: 1.3;
813
+ --ds-line-height-md: 1.5;
814
+ --ds-line-height-lg: 1.7;
815
+ --ds-font-size-1: 0.75rem;
816
+ --ds-font-size-2: 0.875rem;
817
+ --ds-font-size-3: 1rem;
818
+ --ds-font-size-4: 1.125rem;
819
+ --ds-font-size-5: 1.3125rem;
820
+ --ds-font-size-6: 1.5rem;
821
+ --ds-font-size-7: 1.875rem;
822
+ --ds-font-size-8: 2.25rem;
823
+ --ds-font-size-9: 3rem;
824
+ --ds-font-size-10: 3.75rem;
825
+ --ds-letter-spacing-1: -1%;
826
+ --ds-letter-spacing-2: -0.5%;
827
+ --ds-letter-spacing-3: -0.25%;
828
+ --ds-letter-spacing-4: -0.15%;
829
+ --ds-letter-spacing-5: 0%;
830
+ --ds-letter-spacing-6: 0.15%;
831
+ --ds-letter-spacing-7: 0.25%;
832
+ --ds-letter-spacing-8: 0.5%;
833
+ --ds-letter-spacing-9: 1.5%;
830
834
  --ds-font-family: Inter;
831
835
  --ds-font-weight-medium: 500;
832
836
  --ds-font-weight-semibold: 600;
@@ -919,34 +923,8 @@
919
923
  --ds-body-long-xs-line-height: 1.7;
920
924
  --ds-body-long-xs-font-size: 0.875rem;
921
925
  --ds-body-long-xs-letter-spacing: 0.15%;
922
- --ds-line-height-sm: 1.3;
923
- --ds-line-height-md: 1.5;
924
- --ds-line-height-lg: 1.7;
925
- --ds-font-size-1: 0.75rem;
926
- --ds-font-size-2: 0.875rem;
927
- --ds-font-size-3: 1rem;
928
- --ds-font-size-4: 1.125rem;
929
- --ds-font-size-5: 1.3125rem;
930
- --ds-font-size-6: 1.5rem;
931
- --ds-font-size-7: 1.875rem;
932
- --ds-font-size-8: 2.25rem;
933
- --ds-font-size-9: 3rem;
934
- --ds-font-size-10: 3.75rem;
935
- --ds-letter-spacing-1: -1%;
936
- --ds-letter-spacing-2: -0.5%;
937
- --ds-letter-spacing-3: -0.25%;
938
- --ds-letter-spacing-4: -0.15%;
939
- --ds-letter-spacing-5: 0%;
940
- --ds-letter-spacing-6: 0.15%;
941
- --ds-letter-spacing-7: 0.25%;
942
- --ds-letter-spacing-8: 0.5%;
943
- --ds-letter-spacing-9: 1.5%;
944
926
  }
945
927
  }
946
- /**
947
- * These files are generated from design tokens defind using Token Studio
948
- */
949
-
950
928
  @layer ds.theme.color {
951
929
  [data-color="alert"],
952
930
  [data-color-scheme][data-color="alert"] {
@@ -969,10 +947,6 @@
969
947
  }
970
948
  }
971
949
 
972
- /**
973
- * These files are generated from design tokens defind using Token Studio
974
- */
975
-
976
950
  @layer ds.theme.color {
977
951
  [data-color="article"],
978
952
  [data-color-scheme][data-color="article"] {
@@ -995,10 +969,6 @@
995
969
  }
996
970
  }
997
971
 
998
- /**
999
- * These files are generated from design tokens defind using Token Studio
1000
- */
1001
-
1002
972
  @layer ds.theme.color {
1003
973
  :root,
1004
974
  [data-color-scheme],
@@ -1022,10 +992,6 @@
1022
992
  }
1023
993
  }
1024
994
 
1025
- /**
1026
- * These files are generated from design tokens defind using Token Studio
1027
- */
1028
-
1029
995
  @layer ds.theme.color {
1030
996
  [data-color="danger"],
1031
997
  [data-color-scheme][data-color="danger"] {
@@ -1048,10 +1014,6 @@
1048
1014
  }
1049
1015
  }
1050
1016
 
1051
- /**
1052
- * These files are generated from design tokens defind using Token Studio
1053
- */
1054
-
1055
1017
  @layer ds.theme.color {
1056
1018
  [data-color="info"],
1057
1019
  [data-color-scheme][data-color="info"] {
@@ -1074,10 +1036,6 @@
1074
1036
  }
1075
1037
  }
1076
1038
 
1077
- /**
1078
- * These files are generated from design tokens defind using Token Studio
1079
- */
1080
-
1081
1039
  @layer ds.theme.color {
1082
1040
  [data-color="neutral"],
1083
1041
  [data-color-scheme][data-color="neutral"] {
@@ -1100,10 +1058,6 @@
1100
1058
  }
1101
1059
  }
1102
1060
 
1103
- /**
1104
- * These files are generated from design tokens defind using Token Studio
1105
- */
1106
-
1107
1061
  @layer ds.theme.color {
1108
1062
  [data-color="person"],
1109
1063
  [data-color-scheme][data-color="person"] {
@@ -1126,10 +1080,6 @@
1126
1080
  }
1127
1081
  }
1128
1082
 
1129
- /**
1130
- * These files are generated from design tokens defind using Token Studio
1131
- */
1132
-
1133
1083
  @layer ds.theme.color {
1134
1084
  [data-color="success"],
1135
1085
  [data-color-scheme][data-color="success"] {
@@ -1152,10 +1102,6 @@
1152
1102
  }
1153
1103
  }
1154
1104
 
1155
- /**
1156
- * These files are generated from design tokens defind using Token Studio
1157
- */
1158
-
1159
1105
  @layer ds.theme.color {
1160
1106
  [data-color="warning"],
1161
1107
  [data-color-scheme][data-color="warning"] {
@@ -1 +1 @@
1
- ._button_1ysmx_1{display:inline-flex;align-items:center;column-gap:.125em;border-radius:2px}._reverse_1ysmx_8{flex-direction:row-reverse}._button_1ysmx_1[data-size=sm]{padding:0 .375rem}._button_1ysmx_1[data-size=md]{padding:0 .5rem}._button_1ysmx_1[data-size=lg]{padding:0 .625rem}
1
+ ._button_qyaf4_2{column-gap:.125em}._button_qyaf4_2[data-size=xs]{padding:0 .375rem}._button_qyaf4_2[data-size=sm]{padding:0 .5rem}._button_qyaf4_2[data-size=md]{padding:0 .625rem}._button_qyaf4_2[data-size=lg]{padding:0 .75rem}
@@ -1 +1 @@
1
- ._button_1tsrv_1{border:1px solid;border-color:transparent;margin:0;padding:0;width:auto;overflow:visible;background:transparent;text-decoration:none;color:inherit;font:inherit;text-align:inherit;line-height:normal;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:none;user-select:none;cursor:pointer}._button_1tsrv_1:disabled{opacity:.5;pointer-events:none}._button_1tsrv_1[data-size=xs]{height:1.875rem}._button_1tsrv_1[data-size=sm]{height:2.25rem}._button_1tsrv_1[data-size=md]{height:2.75rem}._button_1tsrv_1[data-size=lg]{height:3.5rem}._button_1tsrv_1[data-variant=solid]{background-color:var(--ds-color-base-default);border-color:var(--ds-color-base-default);color:var(--ds-color-base-contrast-default)}._button_1tsrv_1[data-variant=solid]:hover{background-color:var(--ds-color-base-hover)}._button_1tsrv_1[data-variant=solid]:active{background-color:var(--ds-color-base-active)}._button_1tsrv_1[data-variant=outline],._button_1tsrv_1[data-variant=dotted]{border-color:var(--ds-color-base-default)}._button_1tsrv_1[data-variant=outline]{border-style:solid}._button_1tsrv_1[data-variant=dotted]{border-style:dotted}._button_1tsrv_1[data-variant=text]{border-color:transparent;color:var(--ds-color-text-subtle)}._button_1tsrv_1[data-variant=outline]:hover,._button_1tsrv_1[data-variant=dotted]:hover,._button_1tsrv_1[data-variant=text]:hover{background-color:var(--ds-color-surface-tinted);color:var(--ds-color-text-default)}._button_1tsrv_1[data-variant=outline]:active,._button_1tsrv_1[data-variant=dotted]:active,._button_1tsrv_1[data-variant=text]:active{background-color:var(--ds-color-surface-active)}._button_1tsrv_1[data-variant=link]{border:none;color:var(--ds-color-text-subtle)}._button_1tsrv_1[data-variant=link]:hover{color:var(--ds-color-base-hover)}
1
+ ._button_1c0tl_1{border:1px solid;border-color:transparent;margin:0;padding:0;width:auto;overflow:visible;background:transparent;text-decoration:none;color:inherit;font:inherit;text-align:inherit;line-height:normal;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;border-radius:2px}._button_1c0tl_1[data-reverse=true]{flex-direction:row-reverse}._button_1c0tl_1:disabled{opacity:.5;pointer-events:none}._button_1c0tl_1[data-size=xs]{height:2.25rem}._button_1c0tl_1[data-size=sm]{height:2.625rem}._button_1c0tl_1[data-size=md]{height:3rem}._button_1c0tl_1[data-size=lg]{height:3.5rem}._button_1c0tl_1[data-variant=solid]{background-color:var(--ds-color-base-default);border-color:var(--ds-color-base-default);color:var(--ds-color-base-contrast-default)}._button_1c0tl_1[data-variant=solid]:hover{background-color:var(--ds-color-base-hover);border-color:var(--ds-color-base-hover)}._button_1c0tl_1[data-variant=solid]:active{background-color:var(--ds-color-base-active);border-color:var(--ds-color-base-active)}._button_1c0tl_1[data-variant=tinted]{background-color:var(--ds-color-surface-tinted);border-color:var(--ds-color-surface-tinted);border-color:var(--ds-color-base-default);color:var(--ds-color-base-surface-tinted)}._button_1c0tl_1[data-variant=tinted]:hover{background-color:var(--ds-color-surface-hover)}._button_1c0tl_1[data-variant=tinted]:active{background-color:var(--ds-color-surface-active)}._button_1c0tl_1[data-variant=outline],._button_1c0tl_1[data-variant=dotted]{border-color:var(--ds-color-base-default)}._button_1c0tl_1[data-variant=outline]{border-style:solid}._button_1c0tl_1[data-variant=dotted]{border-style:dotted}._button_1c0tl_1[data-variant=text]{border-color:transparent;color:var(--ds-color-text-subtle)}._button_1c0tl_1[data-variant=outline]:hover,._button_1c0tl_1[data-variant=dotted]:hover,._button_1c0tl_1[data-variant=text]:hover{background-color:var(--ds-color-surface-hover);color:var(--ds-color-text-default)}._button_1c0tl_1[data-variant=outline]:active,._button_1c0tl_1[data-variant=dotted]:active,._button_1c0tl_1[data-variant=text]:active{background-color:var(--ds-color-surface-active)}._button_1c0tl_1[data-variant=link]{border:none;color:var(--ds-color-text-subtle)}._button_1c0tl_1[data-variant=link]:hover{color:var(--ds-color-base-hover)}._button_1c0tl_1:focus-visible{box-shadow:var(--_ds--focus, var(--dsc-focus-boxShadow));outline:var(--_ds--focus, var(--dsc-focus-outline));outline-offset:var(--_ds--focus, var(--ds-border-width-focus))}._button_1c0tl_1:focus-visible *{--_ds--focus: }
@@ -1 +1 @@
1
- ._icon_ablit_1{display:flex;align-items:center;justify-content:center}._icon_ablit_1[data-size=xs]{font-size:1rem}._icon_ablit_1[data-size=sm]{font-size:1.25rem}._icon_ablit_1[data-size=md]{font-size:1.5rem}._icon_ablit_1[data-size=lg]{font-size:1.625rem}
1
+ ._icon_n7bze_1{display:flex;align-items:center;justify-content:center}._icon_n7bze_1[data-size=xs]{font-size:1.25rem}._icon_n7bze_1[data-size=sm]{font-size:1.375rem}._icon_n7bze_1[data-size=md]{font-size:1.5rem}._icon_n7bze_1[data-size=lg]{font-size:1.625rem}
@@ -1 +1 @@
1
- ._label_1ahnm_1{line-height:1;font-weight:500;padding:0 .25em;white-space:nowrap}._label_1ahnm_1[data-size=xs]{font-size:.75rem;padding:0 .5em}._label_1ahnm_1[data-size=sm]{font-size:.875rem}._label_1ahnm_1[data-size=md]{font-size:1rem}._label_1ahnm_1[data-size=lg]{font-size:1.125rem}
1
+ ._label_1v8cl_1{line-height:1;font-weight:500;padding:0 .25em;white-space:nowrap}._label_1v8cl_1[data-size=xs]{font-size:.875rem}._label_1v8cl_1[data-size=sm]{font-size:1rem}._label_1v8cl_1[data-size=md]{font-size:1.125rem}._label_1v8cl_1[data-size=lg]{font-size:1.25rem}
@@ -1 +1 @@
1
- ._button_tbm58_1{display:inline-flex;flex-direction:row-reverse;align-items:center;border-radius:2px}._divider_tbm58_8{align-self:stretch;border-left:1px solid currentColor;width:1px;margin:.375rem 0}._primary_tbm58_15,._secondary_tbm58_16{display:inline-flex;align-items:center;border:none}._primary_tbm58_15[data-size=sm],._secondary_tbm58_16[data-size=sm]{padding:0 .375rem}._primary_tbm58_15[data-size=md],._secondary_tbm58_16[data-size=md]{padding:0 .5rem}._primary_tbm58_15[data-size=lg],._secondary_tbm58_16[data-size=lg]{padding:0 .625rem}
1
+ ._button_d26a8_1{display:inline-flex;flex-direction:row;align-items:center}._divider_d26a8_7{align-self:stretch;border-left:1px solid currentColor;width:1px;margin:.375rem 0}._primary_d26a8_14,._secondary_d26a8_15{display:inline-flex;align-items:center;border:none}._primary_d26a8_14[data-size=xs],._secondary_d26a8_15[data-size=xs]{padding:0 .375rem}._primary_d26a8_14[data-size=sm],._secondary_d26a8_15[data-size=sm]{padding:0 .5rem}._primary_d26a8_14[data-size=md],._secondary_d26a8_15[data-size=md]{padding:0 .625rem}._primary_d26a8_14[data-size=lg],._secondary_d26a8_15[data-size=lg]{padding:0 .75rem}
@@ -1 +1 @@
1
- ._button_118jo_1{display:flex;align-items:center;justify-content:center;border-radius:2px}._icon_118jo_8{font-size:1.5rem}._button_118jo_1[data-size=sm]{width:1.875rem;height:1.875rem}._button_118jo_1[data-size=sm]{width:2.25rem;height:2.25rem}._button_118jo_1[data-size=md]{width:2.75rem;height:2.75rem}._button_118jo_1[data-size=lg]{width:3.5rem;height:3.5rem}
1
+ ._button_hmev5_1{display:flex;align-items:center;justify-content:center;border-radius:2px}._button_hmev5_1[data-size=xs]{width:2.25rem;height:2.25rem}._button_hmev5_1[data-size=sm]{width:2.625rem;height:2.625rem}._button_hmev5_1[data-size=md]{width:3rem;height:3rem}._button_hmev5_1[data-size=lg]{width:3.5rem;height:3.5rem}
@@ -1 +1 @@
1
- ._wrapper_1c93s_1{position:relative}._link_1c93s_5{position:absolute;top:0;right:0;bottom:0;left:0}._linkTitle_1c93s_10{opacity:0;-webkit-user-select:none;user-select:none;pointer-events:none}._header_1c93s_16{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between}._header_1c93s_16[data-size=xs]{min-height:44px;padding:.5rem .625rem;column-gap:.5rem}._header_1c93s_16[data-size=sm]{min-height:52px;padding:.5rem .625rem;column-gap:.5rem}._header_1c93s_16[data-size=md]{min-height:64px;padding:.875rem;column-gap:.625rem}._header_1c93s_16[data-size=lg]{min-height:72px;padding:1rem;column-gap:.75rem}._header_1c93s_16[data-size=xl]{min-height:72px;padding:1.5rem;column-gap:1rem}._content_1c93s_54{display:flex;align-items:center;column-gap:inherit}._header_1c93s_16[data-interactive=true]:hover{cursor:pointer}._header_1c93s_16[data-interactive=true]:hover ._content_1c93s_54 h2{text-decoration:underline}._header_1c93s_16[data-has-active-child=true]{background-color:var(--ds-color-background-tinted)}._header_1c93s_16[data-interactive=true][data-theme=subtle]:hover{background-color:var(--ds-color-surface-hover)}._header_1c93s_16[data-interactive=true][data-theme=surface]:hover{background-color:var(--ds-color-surface-active)}._header_1c93s_16[data-interactive=true][data-theme=base]:hover{background-color:var(--ds-color-base-hover);color:var(--ds-color-base-contrast-default)}
1
+ ._wrapper_e1z23_1{position:relative}._link_e1z23_5{position:absolute;top:0;right:0;bottom:0;left:0}._linkTitle_e1z23_10{opacity:0;-webkit-user-select:none;user-select:none;pointer-events:none}._header_e1z23_16{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between}._header_e1z23_16[data-size=xs]{min-height:44px;padding:.5rem .625rem;column-gap:.5rem}._header_e1z23_16[data-size=sm]{min-height:52px;padding:.3125rem .625rem;column-gap:.5rem}._header_e1z23_16[data-size=md]{min-height:64px;padding:.875rem;column-gap:.625rem}._header_e1z23_16[data-size=lg]{min-height:72px;padding:1rem;column-gap:.75rem}._header_e1z23_16[data-size=xl]{min-height:72px;padding:1.5rem;column-gap:1rem}._content_e1z23_54{display:flex;align-items:center;column-gap:inherit}._header_e1z23_16[data-interactive=true]:hover{cursor:pointer}._header_e1z23_16[data-interactive=true]:hover ._content_e1z23_54 h2{text-decoration:underline}._header_e1z23_16[data-has-active-child=true]{background-color:var(--ds-color-background-tinted)}._header_e1z23_16[data-interactive=true][data-theme=subtle]:hover{background-color:var(--ds-color-surface-hover)}._header_e1z23_16[data-interactive=true][data-theme=surface]:hover{background-color:var(--ds-color-surface-active)}._header_e1z23_16[data-interactive=true][data-theme=base]:hover{background-color:var(--ds-color-base-hover);color:var(--ds-color-base-contrast-default)}
@@ -1 +1 @@
1
- ._label_1ehsf_1{display:flex;flex-direction:column;padding:0 .25rem}._title_1ehsf_7{font-weight:400}._title_1ehsf_7[data-weight=medium]{font-weight:500}._title_1ehsf_7[data-size=lg]{font-size:1.125rem;line-height:1.25}._title_1ehsf_7[data-size=md],._title_1ehsf_7[data-size=sm]{font-size:1rem;line-height:1.25}._description_1ehsf_30{font-size:.875rem;color:var(--ds-color-text-subtle)}
1
+ ._label_10xs5_1{display:flex;flex-direction:column;padding:0 .25rem}._label_10xs5_1[data-size=lg]{font-size:1.125rem}._label_10xs5_1[data-size=md],._label_10xs5_1[data-size=sm]{font-size:1rem}._title_10xs5_19{font-weight:400}._title_10xs5_19[data-weight=medium]{font-weight:500}._title_10xs5_19[data-size=lg]{font-size:1.125rem;line-height:1.25}._title_10xs5_19[data-size=md],._title_10xs5_19[data-size=sm]{font-size:1rem;line-height:1.25}._description_10xs5_42{font-size:.875rem;color:var(--ds-color-text-subtle)}
@@ -3,86 +3,87 @@ import { jsx as n, jsxs as u } from "react/jsx-runtime";
3
3
  import * as f from "react";
4
4
  import { forwardRef as h, useState as O } from "react";
5
5
  import "../../index-L8X2o7IH.js";
6
- import { BookmarksListItem as I } from "./BookmarksListItem.js";
6
+ import { BookmarksListItem as x } from "./BookmarksListItem.js";
7
7
  import { Button as g } from "../Button/Button.js";
8
- import { IconButton as x } from "../Button/IconButton.js";
8
+ import { IconButton as I } from "../Button/IconButton.js";
9
9
  import "../RootProvider/RootProvider.js";
10
10
  import "../Search/AutocompleteBase.js";
11
11
  import { QueryLabel as j } from "../Search/QueryLabel.js";
12
12
  import "../Snackbar/useSnackbar.js";
13
13
  import { Flex as S } from "../Page/Flex.js";
14
14
  import { Section as k } from "../Page/Section.js";
15
- import { TextField as E } from "../TextField/TextField.js";
16
- import { S as M } from "../../XMark-Bv1I87Ev.js";
17
- import { u as P } from "../../useId-CsCRkvK3.js";
18
- var R = function(t, l) {
15
+ import { TextField as z } from "../Forms/TextField.js";
16
+ import { S as E } from "../../XMark-Bv1I87Ev.js";
17
+ import { u as M } from "../../useId-CsCRkvK3.js";
18
+ var P = function(t, i) {
19
19
  var o = {};
20
- for (var e in t) Object.prototype.hasOwnProperty.call(t, e) && l.indexOf(e) < 0 && (o[e] = t[e]);
20
+ for (var e in t) Object.prototype.hasOwnProperty.call(t, e) && i.indexOf(e) < 0 && (o[e] = t[e]);
21
21
  if (t != null && typeof Object.getOwnPropertySymbols == "function")
22
22
  for (var r = 0, e = Object.getOwnPropertySymbols(t); r < e.length; r++)
23
- l.indexOf(e[r]) < 0 && Object.prototype.propertyIsEnumerable.call(t, e[r]) && (o[e[r]] = t[e[r]]);
23
+ i.indexOf(e[r]) < 0 && Object.prototype.propertyIsEnumerable.call(t, e[r]) && (o[e[r]] = t[e[r]]);
24
24
  return o;
25
25
  };
26
- const _ = h((t, l) => {
27
- var { title: o, titleId: e } = t, r = R(t, ["title", "titleId"]);
28
- let i = P();
29
- return i = o ? e || "title-" + i : void 0, f.createElement(
26
+ const R = h((t, i) => {
27
+ var { title: o, titleId: e } = t, r = P(t, ["title", "titleId"]);
28
+ let l = M();
29
+ return l = o ? e || "title-" + l : void 0, f.createElement(
30
30
  "svg",
31
- Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "none", viewBox: "0 0 24 24", focusable: !1, role: "img", ref: l, "aria-labelledby": i }, r),
32
- o ? f.createElement("title", { id: i }, o) : null,
31
+ Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "none", viewBox: "0 0 24 24", focusable: !1, role: "img", ref: i, "aria-labelledby": l }, r),
32
+ o ? f.createElement("title", { id: l }, o) : null,
33
33
  f.createElement("path", { fill: "currentColor", fillRule: "evenodd", d: "M19.638 4.417a3.25 3.25 0 0 0-4.608-.008l-9.378 9.379a.75.75 0 0 0-.191.324l-1.414 4.95a.75.75 0 0 0 .925.927l4.94-1.398a.75.75 0 0 0 .327-.191l9.39-9.391a3.25 3.25 0 0 0 .01-4.592M16.091 5.47a1.752 1.752 0 1 1 2.478 2.478l-.23.23-2.477-2.479zM14.8 6.76 6.85 14.71l-.991 3.47 3.457-.979 7.963-7.963z", clipRule: "evenodd" })
34
34
  );
35
35
  }), K = ({
36
36
  id: t,
37
- title: l,
37
+ title: i,
38
38
  untitled: o,
39
39
  params: e,
40
40
  expanded: r,
41
- onToggle: i,
41
+ onToggle: l,
42
42
  titleField: c,
43
43
  saveButton: a,
44
44
  removeButton: m,
45
- inputValue: p,
46
- onChange: s,
45
+ inputValue: s,
46
+ onChange: p,
47
47
  expandIconAltText: b,
48
48
  ...y
49
49
  }) => {
50
50
  const [v, w] = O("");
51
51
  return /* @__PURE__ */ n(
52
- I,
52
+ x,
53
53
  {
54
54
  ...y,
55
55
  expanded: r,
56
56
  id: t,
57
- title: r ? l || o : l,
58
- ariaLabel: l || o,
57
+ title: r ? i || o : i,
58
+ ariaLabel: i || o,
59
59
  params: e,
60
60
  controls: /* @__PURE__ */ n(
61
- x,
61
+ I,
62
62
  {
63
63
  variant: "outline",
64
- size: "sm",
65
- icon: r ? M : _,
66
- onClick: i,
64
+ size: "xs",
65
+ icon: r ? E : R,
66
+ onClick: l,
67
67
  iconAltText: b
68
68
  }
69
69
  ),
70
70
  children: /* @__PURE__ */ u(k, { padding: 4, spacing: 4, children: [
71
71
  /* @__PURE__ */ n(j, { params: e }),
72
72
  c && /* @__PURE__ */ n(
73
- E,
73
+ z,
74
74
  {
75
75
  ...c,
76
+ size: "sm",
76
77
  name: "title",
77
- value: typeof p == "string" ? p : v,
78
+ value: typeof s == "string" ? s : v,
78
79
  onChange: (d) => {
79
- typeof s == "function" ? s(d) : w(d.target.value);
80
+ typeof p == "function" ? p(d) : w(d.target.value);
80
81
  }
81
82
  }
82
83
  ),
83
84
  (a || m) && /* @__PURE__ */ u(S, { as: "footer", direction: "row", spacing: 2, children: [
84
- a && /* @__PURE__ */ n(g, { ...a }),
85
- m && /* @__PURE__ */ n(g, { ...m, variant: "outline" })
85
+ a && /* @__PURE__ */ n(g, { ...a, size: "sm" }),
86
+ m && /* @__PURE__ */ n(g, { ...m, variant: "outline", size: "sm" })
86
87
  ] })
87
88
  ] })
88
89
  }
@@ -1,57 +1,55 @@
1
- import { jsx as s, jsxs as B } from "react/jsx-runtime";
2
- import { c } from "../../index-L8X2o7IH.js";
3
- import { ButtonBase as d } from "./ButtonBase.js";
4
- import { ButtonIcon as h } from "./ButtonIcon.js";
1
+ import { jsx as o, jsxs as h } from "react/jsx-runtime";
2
+ import { c as d } from "../../index-L8X2o7IH.js";
3
+ import { ButtonBase as e } from "./ButtonBase.js";
4
+ import { ButtonIcon as x } from "./ButtonIcon.js";
5
5
  import { ButtonLabel as y } from "./ButtonLabel.js";
6
- import '../../assets/Button.css';const N = "_button_1ysmx_1", v = "_reverse_1ysmx_8", t = {
7
- button: N,
8
- reverse: v
9
- }, q = ({
10
- variant: e = "solid",
11
- color: o,
12
- size: r = "md",
13
- reverse: n = !1,
14
- selected: a = !1,
15
- icon: m,
16
- href: l,
6
+ import '../../assets/Button.css';const N = "_button_qyaf4_2", n = {
7
+ button: N
8
+ }, I = ({
9
+ variant: a = "solid",
10
+ color: r,
11
+ size: t = "md",
12
+ selected: s = !1,
13
+ icon: l,
14
+ href: m,
17
15
  label: i,
18
16
  children: b,
19
- className: p,
20
- loading: f,
21
- loadingText: x = "Loading ...",
22
- ariaLabel: _,
23
- ...u
24
- }) => f ? /* @__PURE__ */ s(
25
- d,
17
+ className: u,
18
+ loading: p,
19
+ loadingText: f = "Loading ...",
20
+ ariaLabel: B,
21
+ ...c
22
+ }) => p ? /* @__PURE__ */ o(
23
+ e,
26
24
  {
27
- variant: e,
25
+ variant: a,
28
26
  "aria-busy": !0,
29
- color: o,
30
- size: r,
31
- selected: a,
32
- href: l,
33
- className: c(t.button, { [t.reverse]: n }, p),
34
- ...u,
27
+ color: r,
28
+ size: t,
29
+ selected: s,
30
+ href: m,
31
+ className: d(n.button, u),
32
+ ...c,
35
33
  disabled: !0,
36
- children: /* @__PURE__ */ s("span", { className: t.label, "data-size": r, children: /* @__PURE__ */ s("span", { className: t.loading, children: x }) })
34
+ children: /* @__PURE__ */ o("span", { className: n.label, "data-size": t, children: /* @__PURE__ */ o("span", { className: n.loading, children: f }) })
37
35
  }
38
- ) : /* @__PURE__ */ B(
39
- d,
36
+ ) : /* @__PURE__ */ h(
37
+ e,
40
38
  {
41
- variant: e,
42
- color: o,
43
- size: r,
44
- ariaLabel: _,
45
- selected: a,
46
- href: l,
47
- className: c(t.button, { [t.reverse]: n }),
48
- ...u,
39
+ variant: a,
40
+ color: r,
41
+ size: t,
42
+ ariaLabel: B,
43
+ selected: s,
44
+ href: m,
45
+ className: d(n.button, u),
46
+ ...c,
49
47
  children: [
50
- m && /* @__PURE__ */ s(h, { size: r, icon: m }),
51
- /* @__PURE__ */ s(y, { size: r, children: b || i })
48
+ l && /* @__PURE__ */ o(x, { size: t, icon: l }),
49
+ /* @__PURE__ */ o(y, { size: t, children: b || i })
52
50
  ]
53
51
  }
54
52
  );
55
53
  export {
56
- q as Button
54
+ I as Button
57
55
  };