@uh-design-system/component-library 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/dist/cjs/component-library.cjs.js +2 -2
  2. package/dist/cjs/controlUtils-041de0fd.js +7 -0
  3. package/dist/cjs/ds-accordion_3.cjs.entry.js +27 -20
  4. package/dist/cjs/ds-checkbox-group.cjs.entry.js +156 -0
  5. package/dist/cjs/ds-checkbox.cjs.entry.js +153 -0
  6. package/dist/cjs/ds-input-validity.cjs.entry.js +38 -0
  7. package/dist/cjs/ds-link-with-arrow.cjs.entry.js +8 -7
  8. package/dist/cjs/ds-link.cjs.entry.js +11 -8
  9. package/dist/cjs/ds-text-input.cjs.entry.js +30 -6
  10. package/dist/cjs/ds-visually-hidden.cjs.entry.js +2 -2
  11. package/dist/cjs/{index-bfa0f441.js → index-b1d61146.js} +116 -2
  12. package/dist/cjs/{linkUtils-695da37c.js → linkUtils-e911e899.js} +10 -0
  13. package/dist/cjs/loader.cjs.js +2 -2
  14. package/dist/cjs/utils-c9113835.js +18 -0
  15. package/dist/collection/accessibility/accessibility.stories.js +10 -0
  16. package/dist/collection/accessibility/stories/ariaLabel.stories.js +19 -0
  17. package/dist/collection/accessibility/stories/ariaLabelledBy.stories.js +49 -0
  18. package/dist/collection/accessibility/stories/naming.stories.js +39 -0
  19. package/dist/collection/collection-manifest.json +3 -0
  20. package/dist/collection/components/00-foundations/icons/categories/information.js +4 -0
  21. package/dist/collection/components/00-foundations/typography/stories/typography.stories.js +133 -48
  22. package/dist/collection/components/01-base-components/ds-accordion/ds-accordion.css +1 -1
  23. package/dist/collection/components/01-base-components/ds-accordion/ds-accordion.js +6 -6
  24. package/dist/collection/components/01-base-components/ds-button/ds-button.css +9 -9
  25. package/dist/collection/components/01-base-components/ds-button/ds-button.js +2 -2
  26. package/dist/collection/components/01-base-components/ds-button/stories/ds-button.examples.stories.js +53 -12
  27. package/dist/collection/components/01-base-components/ds-button/stories/ds-button.features.stories.js +88 -55
  28. package/dist/collection/components/01-base-components/ds-button/stories/ds-button.stories.js +1 -1
  29. package/dist/collection/components/01-base-components/ds-checkbox/ds-checkbox.css +315 -0
  30. package/dist/collection/components/01-base-components/ds-checkbox/ds-checkbox.js +429 -0
  31. package/dist/collection/components/01-base-components/ds-checkbox/stories/ds-checkbox.features.stories.js +115 -0
  32. package/dist/collection/components/01-base-components/ds-checkbox/stories/ds-checkbox.stories.js +37 -0
  33. package/dist/collection/components/01-base-components/ds-checkbox-group/ds-checkbox-group.css +38 -0
  34. package/dist/collection/components/01-base-components/ds-checkbox-group/ds-checkbox-group.js +445 -0
  35. package/dist/collection/components/01-base-components/ds-checkbox-group/stories/ds-checkbox-group.features.stories.js +89 -0
  36. package/dist/collection/components/01-base-components/ds-checkbox-group/stories/ds-checkbox-group.stories.js +47 -0
  37. package/dist/collection/components/01-base-components/ds-icon/ds-icon.js +1 -1
  38. package/dist/collection/components/01-base-components/ds-icon/{ds-icon.stories.js → stories/ds-icon.stories.js} +12 -2
  39. package/dist/collection/components/01-base-components/ds-input-validity/ds-input-validity.css +31 -0
  40. package/dist/collection/components/01-base-components/ds-input-validity/ds-input-validity.js +114 -0
  41. package/dist/collection/components/01-base-components/ds-input-validity/stories/ds-input-validity.features.stories.js +17 -0
  42. package/dist/collection/components/01-base-components/ds-input-validity/stories/ds-input-validity.stories.js +21 -0
  43. package/dist/collection/components/01-base-components/ds-link/ds-link.css +19 -1
  44. package/dist/collection/components/01-base-components/ds-link/ds-link.js +68 -8
  45. package/dist/collection/components/01-base-components/ds-link/stories/ds-link.examples.stories.js +6 -2
  46. package/dist/collection/components/01-base-components/ds-link/stories/ds-link.features.stories.js +2 -2
  47. package/dist/collection/components/01-base-components/ds-link/stories/ds-link.stories.js +11 -3
  48. package/dist/collection/components/01-base-components/ds-link-with-arrow/ds-link-with-arrow.css +1 -1
  49. package/dist/collection/components/01-base-components/ds-link-with-arrow/ds-link-with-arrow.js +25 -5
  50. package/dist/collection/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.examples.stories.js → ds-link-with-arrow.examples.stories.js} +26 -3
  51. package/dist/collection/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.stories.js → ds-link-with-arrow.stories.js} +1 -3
  52. package/dist/collection/components/01-base-components/ds-text-input/ds-text-input.css +8 -11
  53. package/dist/collection/components/01-base-components/ds-text-input/ds-text-input.js +30 -5
  54. package/dist/collection/components/01-base-components/ds-text-input/stories/ds-text-input.examples.stories.js +29 -7
  55. package/dist/collection/components/01-base-components/ds-text-input/utils.js +0 -6
  56. package/dist/collection/components/01-base-components/ds-visually-hidden/ds-visually-hidden.js +1 -1
  57. package/dist/collection/utils/controls/controlUtils.js +2 -0
  58. package/dist/collection/utils/link/linkUtils.js +9 -0
  59. package/dist/collection/utils/typography/typographyUtils.js +39 -0
  60. package/dist/collection/utils/utils.js +24 -6
  61. package/dist/component-library/component-library.css +1 -1
  62. package/dist/component-library/component-library.esm.js +1 -1
  63. package/dist/component-library/controlUtils-9ca4087b.js +1 -0
  64. package/dist/component-library/ds-accordion_3.entry.js +1 -1
  65. package/dist/component-library/ds-checkbox-group.entry.js +1 -0
  66. package/dist/component-library/ds-checkbox.entry.js +1 -0
  67. package/dist/component-library/ds-input-validity.entry.js +1 -0
  68. package/dist/component-library/ds-link-with-arrow.entry.js +1 -1
  69. package/dist/component-library/ds-link.entry.js +1 -1
  70. package/dist/component-library/ds-text-input.entry.js +1 -1
  71. package/dist/component-library/ds-visually-hidden.entry.js +1 -1
  72. package/dist/component-library/index-aaccd233.js +2 -0
  73. package/dist/component-library/{linkUtils-3d1b28cf.js → linkUtils-fe63ff72.js} +1 -1
  74. package/dist/component-library/utils-b5843ae1.js +1 -0
  75. package/dist/components/attributes.js +1 -80
  76. package/dist/components/controlUtils.js +4 -0
  77. package/dist/components/ds-accordion.js +8 -8
  78. package/dist/components/ds-button2.js +4 -3
  79. package/dist/components/ds-checkbox-group.d.ts +11 -0
  80. package/dist/components/ds-checkbox-group.js +206 -0
  81. package/dist/components/ds-checkbox.d.ts +11 -0
  82. package/dist/components/ds-checkbox.js +6 -0
  83. package/dist/components/ds-checkbox2.js +185 -0
  84. package/dist/components/ds-icon2.js +24 -4
  85. package/dist/components/ds-input-validity.d.ts +11 -0
  86. package/dist/components/ds-input-validity.js +6 -0
  87. package/dist/components/ds-input-validity2.js +59 -0
  88. package/dist/components/ds-link-with-arrow.js +10 -8
  89. package/dist/components/ds-link.js +15 -9
  90. package/dist/components/ds-text-input.js +30 -7
  91. package/dist/components/ds-visually-hidden2.js +1 -1
  92. package/dist/components/index2.js +104 -4
  93. package/dist/components/index3.js +80 -0
  94. package/dist/components/linkUtils.js +10 -1
  95. package/dist/esm/component-library.js +3 -3
  96. package/dist/esm/controlUtils-9ca4087b.js +4 -0
  97. package/dist/esm/ds-accordion_3.entry.js +25 -18
  98. package/dist/esm/ds-checkbox-group.entry.js +152 -0
  99. package/dist/esm/ds-checkbox.entry.js +149 -0
  100. package/dist/esm/ds-input-validity.entry.js +34 -0
  101. package/dist/esm/ds-link-with-arrow.entry.js +8 -7
  102. package/dist/esm/ds-link.entry.js +11 -8
  103. package/dist/esm/ds-text-input.entry.js +30 -6
  104. package/dist/esm/ds-visually-hidden.entry.js +2 -2
  105. package/dist/esm/{index-42701395.js → index-aaccd233.js} +116 -3
  106. package/dist/esm/{linkUtils-3d1b28cf.js → linkUtils-fe63ff72.js} +10 -1
  107. package/dist/esm/loader.js +3 -3
  108. package/dist/esm/utils-b5843ae1.js +15 -0
  109. package/dist/types/accessibility/accessibility.stories.d.ts +3 -0
  110. package/dist/types/accessibility/stories/ariaLabel.stories.d.ts +5 -0
  111. package/dist/types/accessibility/stories/ariaLabelledBy.stories.d.ts +4 -0
  112. package/dist/types/accessibility/stories/naming.stories.d.ts +4 -0
  113. package/dist/types/components/00-foundations/typography/stories/typography.stories.d.ts +1 -0
  114. package/dist/types/components/01-base-components/ds-button/stories/ds-button.examples.stories.d.ts +2 -0
  115. package/dist/types/components/01-base-components/ds-button/stories/ds-button.features.stories.d.ts +4 -1
  116. package/dist/types/components/01-base-components/ds-checkbox/ds-checkbox.d.ts +49 -0
  117. package/dist/types/components/01-base-components/ds-checkbox/stories/ds-checkbox.features.stories.d.ts +13 -0
  118. package/dist/types/components/01-base-components/ds-checkbox/stories/ds-checkbox.stories.d.ts +7 -0
  119. package/dist/types/components/01-base-components/ds-checkbox-group/ds-checkbox-group.d.ts +56 -0
  120. package/dist/types/components/01-base-components/ds-checkbox-group/stories/ds-checkbox-group.features.stories.d.ts +11 -0
  121. package/dist/types/components/01-base-components/ds-checkbox-group/stories/ds-checkbox-group.stories.d.ts +7 -0
  122. package/dist/types/components/01-base-components/ds-icon/{ds-icon.stories.d.ts → stories/ds-icon.stories.d.ts} +2 -1
  123. package/dist/types/components/01-base-components/ds-input-validity/ds-input-validity.d.ts +12 -0
  124. package/dist/types/components/01-base-components/ds-input-validity/stories/ds-input-validity.features.stories.d.ts +7 -0
  125. package/dist/types/components/01-base-components/ds-input-validity/stories/ds-input-validity.stories.d.ts +7 -0
  126. package/dist/types/components/01-base-components/ds-link/ds-link.d.ts +4 -1
  127. package/dist/types/components/01-base-components/ds-link-with-arrow/ds-link-with-arrow.d.ts +1 -0
  128. package/dist/types/components/01-base-components/ds-text-input/ds-text-input.d.ts +5 -0
  129. package/dist/types/components/01-base-components/ds-text-input/utils.d.ts +0 -1
  130. package/dist/types/components.d.ts +142 -2
  131. package/dist/types/utils/controls/controlUtils.d.ts +2 -0
  132. package/dist/types/utils/link/linkUtils.d.ts +1 -0
  133. package/dist/types/utils/typography/typographyUtils.d.ts +5 -0
  134. package/dist/types/utils/utils.d.ts +10 -3
  135. package/package.json +3 -2
  136. package/dist/cjs/utils-8b73aa91.js +0 -10
  137. package/dist/collection/components/00-foundations/typography/typography.stories.js +0 -68
  138. package/dist/component-library/index-42701395.js +0 -2
  139. package/dist/component-library/utils-cca2a41a.js +0 -1
  140. package/dist/components/utils.js +0 -8
  141. package/dist/esm/utils-cca2a41a.js +0 -8
  142. package/dist/types/components/00-foundations/typography/typography.stories.d.ts +0 -7
  143. /package/dist/cjs/{attributes-f7831329.js → attributes-5f5b58be.js} +0 -0
  144. /package/dist/collection/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.features.stories.js → ds-link-with-arrow.features.stories.js} +0 -0
  145. /package/dist/collection/utils/{attributes.js → attributes/attributes.js} +0 -0
  146. /package/dist/component-library/{attributes-9419ac39.js → attributes-7d09be1b.js} +0 -0
  147. /package/dist/esm/{attributes-9419ac39.js → attributes-7d09be1b.js} +0 -0
  148. /package/dist/types/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.examples.stories.d.ts → ds-link-with-arrow.examples.stories.d.ts} +0 -0
  149. /package/dist/types/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.features.stories.d.ts → ds-link-with-arrow.features.stories.d.ts} +0 -0
  150. /package/dist/types/components/01-base-components/ds-link-with-arrow/stories/{ds-arrow-link.stories.d.ts → ds-link-with-arrow.stories.d.ts} +0 -0
  151. /package/dist/types/utils/{attributes.d.ts → attributes/attributes.d.ts} +0 -0
@@ -16,61 +16,94 @@ const meta = {
16
16
  },
17
17
  };
18
18
  export default meta;
19
- export const Primary = {};
20
- Primary.args = {
21
- value: 'Primary',
22
- variant: 'primary',
23
- };
24
- export const Secondary = {};
25
- Secondary.args = {
26
- value: 'Secondary',
27
- variant: 'secondary',
28
- };
29
- export const Supplementary = {};
30
- Supplementary.args = {
31
- value: 'Supplementary',
32
- variant: 'supplementary',
33
- };
34
- export const Blue = {};
35
- Blue.args = {
36
- value: 'Blue',
37
- colour: 'blue',
38
- };
39
- export const Black = {};
40
- Black.args = {
41
- value: 'Black',
42
- colour: 'black',
43
- };
44
- export const White = {};
45
- White.args = {
46
- value: 'White',
47
- colour: 'white',
48
- };
49
- export const Medium = {};
50
- Medium.args = {
51
- value: 'Medium',
52
- size: 'medium',
53
- };
54
- export const Small = {};
55
- Small.args = {
56
- value: 'Small',
57
- size: 'small',
58
- };
59
- export const Disabled = {};
60
- Disabled.args = {
61
- value: 'Disabled',
62
- disabled: true,
63
- };
64
- export const IconStart = {};
65
- IconStart.args = {
66
- value: 'Icon start',
67
- icon: 'arrow_forward',
68
- };
69
- export const IconEnd = {};
70
- IconEnd.args = {
71
- value: 'Icon end',
72
- icon: 'arrow_forward',
73
- iconPosition: 'end',
19
+ export const Primary = {
20
+ args: {
21
+ value: 'Primary',
22
+ variant: 'primary',
23
+ }
24
+ };
25
+ export const Secondary = {
26
+ args: {
27
+ value: 'Secondary',
28
+ variant: 'secondary',
29
+ }
30
+ };
31
+ export const Supplementary = {
32
+ args: {
33
+ value: 'Supplementary',
34
+ variant: 'supplementary',
35
+ }
36
+ };
37
+ export const Blue = {
38
+ args: {
39
+ value: 'Blue',
40
+ colour: 'blue',
41
+ }
42
+ };
43
+ export const Black = {
44
+ args: {
45
+ value: 'Black',
46
+ colour: 'black',
47
+ }
48
+ };
49
+ export const White = {
50
+ args: {
51
+ value: 'White',
52
+ colour: 'white',
53
+ },
54
+ parameters: {
55
+ backgrounds: { default: 'Black 90%' },
56
+ }
57
+ };
58
+ export const Medium = {
59
+ args: {
60
+ value: 'Medium',
61
+ size: 'medium',
62
+ }
63
+ };
64
+ export const SmallPrimary = {
65
+ args: {
66
+ size: 'small',
67
+ variant: 'primary',
68
+ },
69
+ };
70
+ export const SmallSecondary = {
71
+ args: {
72
+ size: 'small',
73
+ variant: 'secondary',
74
+ },
75
+ };
76
+ export const SmallSupplementary = {
77
+ args: {
78
+ size: 'small',
79
+ variant: 'supplementary',
80
+ },
81
+ };
82
+ export const Disabled = {
83
+ args: {
84
+ value: 'Disabled',
85
+ disabled: true,
86
+ }
87
+ };
88
+ export const IconStart = {
89
+ args: {
90
+ value: 'Icon start',
91
+ icon: 'arrow_forward',
92
+ }
93
+ };
94
+ export const IconEnd = {
95
+ args: {
96
+ value: 'Icon end',
97
+ icon: 'arrow_forward',
98
+ iconPosition: 'end',
99
+ }
100
+ };
101
+ export const IconOnly = {
102
+ args: {
103
+ value: '',
104
+ icon: 'download',
105
+ ariaLabel: 'Download',
106
+ }
74
107
  };
75
108
  export const FullWidth = {
76
109
  render: () => html `<ds-button full-width value="Full width"></ds-button>`
@@ -1,5 +1,5 @@
1
1
  import { icons } from "../../../00-foundations/icons/iconList";
2
- import { getAriaAttributeArgTypes } from "../../../../utils/attributes";
2
+ import { getAriaAttributeArgTypes } from "../../../../utils/attributes/attributes";
3
3
  const buttonAriaAttributes = [
4
4
  'aria-busy',
5
5
  'aria-live',
@@ -0,0 +1,315 @@
1
+ :root {
2
+ --ds-borderWidth-none: 0px;
3
+ --ds-borderWidth-hairline: 1px;
4
+ --ds-borderWidth-thin: 2px;
5
+ --ds-borderWidth-thick: 4px;
6
+ --ds-borderWidth-xThick: 8px;
7
+ --ds-borderRadius-none: 0px;
8
+ }
9
+
10
+ :root {
11
+ --ds-overlay-black-00: rgb(0 0 0 / 0);
12
+ --ds-overlay-black-05: rgb(0 0 0 / 0.05);
13
+ --ds-overlay-black-10: rgb(0 0 0 / 0.1);
14
+ --ds-overlay-black-15: rgb(0 0 0 / 0.15);
15
+ --ds-overlay-black-30: rgb(0 0 0 / 0.3);
16
+ --ds-overlay-black-40: rgb(0 0 0 / 0.4);
17
+ --ds-overlay-black-50: rgb(0 0 0 / 0.5);
18
+ --ds-overlay-black-70: rgb(0 0 0 / 0.7);
19
+ --ds-overlay-black-80: rgb(0 0 0 / 0.8);
20
+ --ds-overlay-white-00: rgb(255 255 255 / 0);
21
+ --ds-overlay-white-05: rgb(255 255 255 / 0.05);
22
+ --ds-overlay-white-10: rgb(255 255 255 / 0.1);
23
+ --ds-overlay-white-15: rgb(255 255 255 / 0.15);
24
+ --ds-overlay-white-30: rgb(255 255 255 / 0.3);
25
+ --ds-overlay-white-40: rgb(255 255 255 / 0.4);
26
+ --ds-overlay-white-50: rgb(255 255 255 / 0.5);
27
+ --ds-overlay-white-70: rgb(255 255 255 / 0.7);
28
+ --ds-overlay-white-80: rgb(255 255 255 / 0.8);
29
+ --ds-palette-black: #000000;
30
+ --ds-palette-white: #ffffff;
31
+ --ds-palette-black-03: #f7f7f7;
32
+ --ds-palette-black-05: #f2f2f2;
33
+ --ds-palette-black-10: #e6e6e6;
34
+ --ds-palette-black-20: #cccccc;
35
+ --ds-palette-black-30: #b3b3b3;
36
+ --ds-palette-black-40: #999999;
37
+ --ds-palette-black-50: #808080;
38
+ --ds-palette-black-60: #666666;
39
+ --ds-palette-black-70: #4d4d4d;
40
+ --ds-palette-black-80: #333333;
41
+ --ds-palette-black-90: #1a1a1a;
42
+ --ds-palette-black-95: #0c0c0c;
43
+ --ds-palette-blue-05: #e5f8ff;
44
+ --ds-palette-blue-10: #c2eeff;
45
+ --ds-palette-blue-20: #8adeff;
46
+ --ds-palette-blue-30: #5cd1ff;
47
+ --ds-palette-blue-40: #1abeff;
48
+ --ds-palette-blue-50: #009ad6;
49
+ --ds-palette-blue-60: #0084b8;
50
+ --ds-palette-blue-70: #005b80;
51
+ --ds-palette-blue-80: #053c52;
52
+ --ds-palette-blue-90: #032330;
53
+ --ds-palette-green-05: #dffbe1;
54
+ --ds-palette-green-10: #bef4c1;
55
+ --ds-palette-green-20: #85e08a;
56
+ --ds-palette-green-30: #66cc6b;
57
+ --ds-palette-green-40: #43b149;
58
+ --ds-palette-green-50: #279b2d;
59
+ --ds-palette-green-60: #257e29;
60
+ --ds-palette-green-70: #216325;
61
+ --ds-palette-green-80: #183f19;
62
+ --ds-palette-green-90: #0f2410;
63
+ --ds-palette-mainBlue-05: #e5f5ff;
64
+ --ds-palette-mainBlue-10: #cdebff;
65
+ --ds-palette-mainBlue-20: #99d7ff;
66
+ --ds-palette-mainBlue-30: #70c7ff;
67
+ --ds-palette-mainBlue-40: #3db3ff;
68
+ --ds-palette-mainBlue-50: #009bff;
69
+ --ds-palette-mainBlue-60: #007fd1;
70
+ --ds-palette-mainBlue-70: #005a94;
71
+ --ds-palette-mainBlue-80: #003152;
72
+ --ds-palette-mainBlue-90: #001929;
73
+ --ds-palette-red-05: #ffeceb;
74
+ --ds-palette-red-10: #ffd8d6;
75
+ --ds-palette-red-20: #fdb7b4;
76
+ --ds-palette-red-30: #f87c77;
77
+ --ds-palette-red-40: #f0514c;
78
+ --ds-palette-red-50: #d71f19;
79
+ --ds-palette-red-60: #bd2828;
80
+ --ds-palette-red-70: #8b2623;
81
+ --ds-palette-red-80: #602220;
82
+ --ds-palette-red-90: #321c1b;
83
+ --ds-palette-yellow-05: #fff1db;
84
+ --ds-palette-yellow-10: #ffe7c2;
85
+ --ds-palette-yellow-20: #ffd799;
86
+ --ds-palette-yellow-30: #fbc05f;
87
+ --ds-palette-yellow-40: #eea22b;
88
+ --ds-palette-yellow-50: #ce8103;
89
+ --ds-palette-yellow-60: #b26d00;
90
+ --ds-palette-yellow-70: #7a4b00;
91
+ --ds-palette-yellow-80: #4e3104;
92
+ --ds-palette-yellow-90: #282115;
93
+ }
94
+
95
+ :root {
96
+ --ds-textColor-default: var(--ds-palette-black-95);
97
+ --ds-textColor-primary: var(--ds-palette-mainBlue-70);
98
+ --ds-textColor-secondary: var(--ds-palette-black-70);
99
+ --ds-textColor-white: var(--ds-palette-white);
100
+ --ds-textColor-danger: var(--ds-palette-red-80);
101
+ --ds-textColor-success: var(--ds-palette-green-80);
102
+ --ds-textColor-disabled-onLight: var(--ds-palette-black-40);
103
+ --ds-textColor-disabled-onDark: var(--ds-overlay-white-40);
104
+ --ds-textColor-link: var(--ds-palette-mainBlue-70);
105
+ --ds-textColor-link-hover: var(--ds-palette-mainBlue-80);
106
+ --ds-textColor-link-active: var(--ds-palette-mainBlue-90);
107
+ --ds-textColor-link-visited: #551a8b;
108
+ --ds-textColor-link--standalone: var(--ds-palette-black-70);
109
+ --ds-textColor-link--standalone-hover: var(--ds-palette-black-80);
110
+ --ds-textColor-link--standalone-active: var(--ds-palette-black-95);
111
+ --ds-textColor-link--standalone-focus: var(--ds-palette-black-70);
112
+ --ds-bgColor-primary: var(--ds-palette-mainBlue-70);
113
+ --ds-bgColor-primary-hover: var(--ds-palette-mainBlue-80);
114
+ --ds-bgColor-primary-active: var(--ds-palette-mainBlue-90);
115
+ --ds-bgColor-secondary: var(--ds-palette-white);
116
+ --ds-bgColor-secondary-hover: var(--ds-palette-mainBlue-05);
117
+ --ds-bgColor-secondary-active: var(--ds-palette-mainBlue-10);
118
+ --ds-bgColor-white: var(--ds-palette-white);
119
+ --ds-bgColor-white-hover: var(--ds-palette-black-10);
120
+ --ds-bgColor-white-active: var(--ds-palette-black-20);
121
+ --ds-bgColor-black: var(--ds-palette-black-95);
122
+ --ds-bgColor-black-hover: var(--ds-palette-black-80);
123
+ --ds-bgColor-black-active: var(--ds-palette-white-70);
124
+ --ds-bgColor-danger: var(--ds-palette-red-05);
125
+ --ds-bgColor-danger-hover: var(--ds-palette-red-10);
126
+ --ds-bgColor-danger-active: var(--ds-palette-red-20);
127
+ --ds-bgColor-success: var(--ds-palette-green-05);
128
+ --ds-bgColor-success-hover: var(--ds-palette-green-10);
129
+ --ds-bgColor-success-active: var(--ds-palette-green-20);
130
+ --ds-bgColor-transparent-onLight: var(--ds-overlay-black-00);
131
+ --ds-bgColor-transparent-onLight-hover: var(--ds-overlay-black-10);
132
+ --ds-bgColor-transparent-onLight-active: var(--ds-overlay-black-15);
133
+ --ds-bgColor-transparent-onDark: var(--ds-overlay-white-00);
134
+ --ds-bgColor-transparent-onDark-hover: var(--ds-overlay-white-30);
135
+ --ds-bgColor-transparent-onDark-active: var(--ds-overlay-white-40);
136
+ --ds-bgColor-disabled-onLight: var(--ds-overlay-black-10);
137
+ --ds-bgColor-disabled-onDark: var(--ds-overlay-white-10);
138
+ --ds-borderColor-default: var(--ds-palette-black-50);
139
+ --ds-borderColor-primary: var(--ds-palette-mainBlue-70);
140
+ --ds-borderColor-black: var(--ds-palette-black-95);
141
+ --ds-borderColor-white: var(--ds-palette-white);
142
+ --ds-borderColor-danger: var(--ds-palette-red-50);
143
+ --ds-borderColor-success: var(--ds-palette-green-50);
144
+ --ds-borderColor-transparent: var(--ds-overlay-black-00);
145
+ --ds-borderColor-disabled-onLight: var(--ds-overlay-black-15);
146
+ --ds-borderColor-disabled-onDark: var(--ds-overlay-white-15);
147
+ --ds-borderColor-light: var(--ds-palette-black-20);
148
+ }
149
+
150
+ :root {
151
+ --ds-spacing-4xSmall: 0.125rem;
152
+ --ds-spacing-3xSmall: 0.25rem;
153
+ --ds-spacing-2xSmall: 0.5rem;
154
+ --ds-spacing-xSmall: 0.75rem;
155
+ --ds-spacing-small: 1rem;
156
+ --ds-spacing-medium: 1.5rem;
157
+ --ds-spacing-large: 2rem;
158
+ --ds-spacing-xLarge: 2.5rem;
159
+ --ds-spacing-2xLarge: 3rem;
160
+ --ds-spacing-3xLarge: 3.5rem;
161
+ --ds-spacing-4xLarge: 4rem;
162
+ --ds-spacing-5xLarge: 4.5rem;
163
+ --ds-spacing-layout-2xSmall: 1rem;
164
+ --ds-spacing-layout-xSmall: 1.5rem;
165
+ --ds-spacing-layout-small: 2rem;
166
+ --ds-spacing-layout-medium: 3rem;
167
+ --ds-spacing-layout-large: 4rem;
168
+ --ds-spacing-layout-xLarge: 6rem;
169
+ --ds-spacing-layout-2xLarge: 8rem;
170
+ }
171
+
172
+ .ds-checkbox-fieldset {
173
+ display: inline-flex;
174
+ flex-direction: column;
175
+ border: none;
176
+ padding: 0;
177
+ margin: 0;
178
+ gap: var(--ds-spacing-3xSmall);
179
+ }
180
+ .ds-checkbox-fieldset__legend {
181
+ padding-inline: 0;
182
+ font-size: var(--ds-fontSize-16);
183
+ font-weight: var(--ds-fontWeight-semibold);
184
+ letter-spacing: var(--ds-letterSpacing-wide);
185
+ line-height: var(--ds-lineHeight-large);
186
+ }
187
+ .ds-checkbox-fieldset__assistive-text {
188
+ display: inline;
189
+ font-size: var(--ds-fontSize-14);
190
+ color: var(--ds-textColor-secondary);
191
+ line-height: var(--ds-lineHeight-large);
192
+ }
193
+
194
+ .ds-checkbox {
195
+ display: inline-flex;
196
+ align-self: flex-start;
197
+ align-items: center;
198
+ flex-direction: row;
199
+ flex-wrap: nowrap;
200
+ text-wrap: nowrap;
201
+ position: relative;
202
+ cursor: pointer;
203
+ user-select: none;
204
+ width: auto;
205
+ padding: var(--ds-spacing-xSmall);
206
+ }
207
+ .ds-checkbox--no-margin .ds-checkbox__input {
208
+ margin-right: 0;
209
+ }
210
+ .ds-checkbox--disabled {
211
+ color: var(--ds-textColor-disabled-onLight);
212
+ }
213
+ .ds-checkbox__span--optional {
214
+ color: var(--ds-textColor-secondary);
215
+ font-size: var(--ds-fontSize-14);
216
+ }
217
+ .ds-checkbox:has(.ds-checkbox__input:disabled) {
218
+ cursor: not-allowed;
219
+ }
220
+ .ds-checkbox__input {
221
+ cursor: pointer;
222
+ /* hide the default checkbox */
223
+ -webkit-appearance: none;
224
+ appearance: none;
225
+ /* For iOS < 15 to remove gradient background */
226
+ background-color: var(--ds-bgColor-white);
227
+ /* Not removed via appearance */
228
+ margin: 0;
229
+ display: grid;
230
+ place-content: center;
231
+ height: 24px;
232
+ width: 24px;
233
+ margin-right: var(--ds-spacing-xSmall);
234
+ border-width: var(--ds-borderWidth-thin);
235
+ border-style: solid;
236
+ border-color: var(--ds-palette-black-50);
237
+ /** unchecked **/
238
+ /** checked and indeterminate **/
239
+ /** Error state should override other styles */
240
+ /** checkmark **/
241
+ }
242
+ .ds-checkbox__input:focus-visible {
243
+ box-shadow: 0 0 0 var(--ds-borderWidth-thin) var(--ds-borderColor-white);
244
+ outline-color: var(--ds-borderColor-black);
245
+ outline-offset: var(--ds-borderWidth-thin);
246
+ outline-style: solid;
247
+ outline-width: var(--ds-borderWidth-thin);
248
+ }
249
+ .ds-checkbox__input:hover, .ds-checkbox__input:active {
250
+ border-color: var(--ds-borderColor-default);
251
+ }
252
+ .ds-checkbox__input:hover {
253
+ background-color: var(--ds-bgColor-white-hover);
254
+ }
255
+ .ds-checkbox__input:active {
256
+ background-color: var(--ds-bgColor-white-active);
257
+ }
258
+ .ds-checkbox__input:disabled {
259
+ background-color: var(--ds-bgColor-disabled-onLight);
260
+ border-color: var(--ds-borderColor-disabled-onLight);
261
+ }
262
+ @media (forced-colors: active) {
263
+ .ds-checkbox__input:disabled {
264
+ border-color: GrayText;
265
+ }
266
+ }
267
+ .ds-checkbox__input:checked, .ds-checkbox__input:indeterminate {
268
+ background-color: var(--ds-bgColor-primary);
269
+ border-color: var(--ds-borderColor-transparent);
270
+ }
271
+ .ds-checkbox__input:checked:hover, .ds-checkbox__input:indeterminate:hover {
272
+ background-color: var(--ds-bgColor-primary-hover);
273
+ }
274
+ .ds-checkbox__input:checked:active, .ds-checkbox__input:indeterminate:active {
275
+ background-color: var(--ds-bgColor-primary-active);
276
+ }
277
+ .ds-checkbox__input:checked:disabled, .ds-checkbox__input:indeterminate:disabled {
278
+ background-color: var(--ds-bgColor-disabled-onLight);
279
+ }
280
+ .ds-checkbox__input:user-invalid, .ds-checkbox__input--invalid, .ds-checkbox__input--invalid:checked, .ds-checkbox__input--invalid:indeterminate {
281
+ border-color: var(--ds-borderColor-danger);
282
+ }
283
+ .ds-checkbox__input:disabled {
284
+ cursor: not-allowed;
285
+ color: var(--ds-textColor-disabled-onLight);
286
+ }
287
+ .ds-checkbox__input::before {
288
+ content: "";
289
+ display: block;
290
+ height: 1em;
291
+ width: 1em;
292
+ background-size: contain;
293
+ background-repeat: no-repeat;
294
+ background-position: center;
295
+ }
296
+ .ds-checkbox__input:checked::before {
297
+ background-image: url("data:image/svg+xml;charset=utf-8,<svg width='16' height='13' viewBox='0 0 16 13' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M5.99997 7.87871L13.606 0.272705L15.7273 2.39403L5.99997 12.1214L0.272644 6.39402L2.39396 4.27271L5.99997 7.87871Z' fill='%23ffffff' /></svg>");
298
+ }
299
+ .ds-checkbox__input:checked:disabled::before {
300
+ background-image: url("data:image/svg+xml;charset=utf-8,<svg width='16' height='13' viewBox='0 0 16 13' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M5.99997 7.87871L13.606 0.272705L15.7273 2.39403L5.99997 12.1214L0.272644 6.39402L2.39396 4.27271L5.99997 7.87871Z' fill='%23999999' /></svg>");
301
+ }
302
+ .ds-checkbox__input:indeterminate::before {
303
+ background-image: url("data:image/svg+xml;charset=utf-8,<svg width='14' height='4' viewBox='0 0 14 4' xmlns='http://www.w3.org/2000/svg'><rect width='13.3333' height='3' transform='matrix(1 0 0 -1 0.333313 3.5)' fill='%23ffffff' /></svg>");
304
+ }
305
+ .ds-checkbox__input:indeterminate:disabled::before {
306
+ background-image: url("data:image/svg+xml;charset=utf-8,<svg width='14' height='4' viewBox='0 0 14 4' xmlns='http://www.w3.org/2000/svg'><rect width='13.3333' height='3' transform='matrix(1 0 0 -1 0.333313 3.5)' fill='%23999999' /></svg>");
307
+ }
308
+
309
+ .ds-checkbox-error {
310
+ display: flex;
311
+ }
312
+ .ds-checkbox-error--visible {
313
+ padding-top: var(--ds-spacing-3xSmall);
314
+ padding-left: var(--ds-spacing-xSmall);
315
+ }