@igne-agency/react-web-ui 0.4.0 → 0.6.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 (257) hide show
  1. package/dist/base.css +3 -0
  2. package/dist/components/accordion/accordion.css +21 -21
  3. package/dist/components/accordion/accordion.d.ts +17 -4
  4. package/dist/components/accordion/accordion.js +83 -36
  5. package/dist/components/accordion/accordion.module.js +6 -6
  6. package/dist/components/attachment-tile/attachment-preview.d.ts +56 -13
  7. package/dist/components/attachment-tile/attachment-preview.js +388 -119
  8. package/dist/components/attachment-tile/attachment-tile.css +31 -25
  9. package/dist/components/attachment-tile/attachment-tile.d.ts +32 -10
  10. package/dist/components/attachment-tile/attachment-tile.js +160 -43
  11. package/dist/components/attachment-tile/attachment-tile.module.js +8 -8
  12. package/dist/components/attachment-tile/index.d.ts +1 -1
  13. package/dist/components/avatar/avatar.css +9 -9
  14. package/dist/components/avatar/avatar.d.ts +50 -5
  15. package/dist/components/avatar/avatar.js +178 -64
  16. package/dist/components/avatar/avatar.module.js +3 -3
  17. package/dist/components/avatar-group/avatar-group-context.d.ts +2 -4
  18. package/dist/components/avatar-group/avatar-group-context.js +2 -2
  19. package/dist/components/avatar-group/avatar-group.css +26 -20
  20. package/dist/components/avatar-group/avatar-group.d.ts +85 -27
  21. package/dist/components/avatar-group/avatar-group.js +400 -246
  22. package/dist/components/avatar-group/avatar-group.module.js +8 -8
  23. package/dist/components/breadcrumbs/breadcrumbs.css +12 -12
  24. package/dist/components/breadcrumbs/breadcrumbs.d.ts +69 -23
  25. package/dist/components/breadcrumbs/breadcrumbs.js +299 -248
  26. package/dist/components/breadcrumbs/breadcrumbs.module.js +8 -8
  27. package/dist/components/button/button.css +29 -31
  28. package/dist/components/button/button.d.ts +20 -16
  29. package/dist/components/button/button.js +140 -145
  30. package/dist/components/button/button.module.js +1 -1
  31. package/dist/components/button/index.js +1 -1
  32. package/dist/components/checkbox-field/checkbox-field.js +63 -49
  33. package/dist/components/checkbox-field/checkbox.css +105 -56
  34. package/dist/components/checkbox-field/checkbox.d.ts +3 -2
  35. package/dist/components/checkbox-field/checkbox.js +12 -9
  36. package/dist/components/checkbox-field/checkbox.module.js +4 -4
  37. package/dist/components/checkbox-group-field/checkbox-group-field.js +78 -72
  38. package/dist/components/checkbox-group-field/checkbox-group.css +14 -10
  39. package/dist/components/checkbox-group-field/checkbox-group.d.ts +2 -2
  40. package/dist/components/checkbox-group-field/checkbox-group.js +2 -2
  41. package/dist/components/checkbox-group-field/checkbox-group.module.js +2 -2
  42. package/dist/components/collapsible/collapsible.css +20 -20
  43. package/dist/components/collapsible/collapsible.d.ts +17 -4
  44. package/dist/components/collapsible/collapsible.js +83 -36
  45. package/dist/components/collapsible/collapsible.module.js +5 -5
  46. package/dist/components/combobox-field/combobox-field.js +206 -158
  47. package/dist/components/combobox-field/combobox.css +492 -277
  48. package/dist/components/combobox-field/combobox.d.ts +148 -39
  49. package/dist/components/combobox-field/combobox.js +506 -206
  50. package/dist/components/combobox-field/combobox.module.js +21 -21
  51. package/dist/components/combobox-field/value-state-view.css +5 -5
  52. package/dist/components/combobox-field/value-state-view.module.js +4 -4
  53. package/dist/components/composer/composer-attachments.d.ts +30 -11
  54. package/dist/components/composer/composer-attachments.js +45 -40
  55. package/dist/components/composer/composer-editor.css +40 -35
  56. package/dist/components/composer/composer-editor.d.ts +14 -4
  57. package/dist/components/composer/composer-editor.js +134 -44
  58. package/dist/components/composer/composer-editor.module.js +5 -5
  59. package/dist/components/composer/composer.css +22 -22
  60. package/dist/components/composer/composer.d.ts +13 -2
  61. package/dist/components/composer/composer.js +78 -63
  62. package/dist/components/composer/composer.module.js +5 -5
  63. package/dist/components/composer/index.d.ts +2 -2
  64. package/dist/components/composer/mention-text.css +5 -5
  65. package/dist/components/composer/mention-text.module.js +1 -1
  66. package/dist/components/confirm-dialog/confirm-dialog.css +29 -29
  67. package/dist/components/confirm-dialog/confirm-dialog.d.ts +57 -3
  68. package/dist/components/confirm-dialog/confirm-dialog.js +266 -108
  69. package/dist/components/confirm-dialog/confirm-dialog.module.js +5 -5
  70. package/dist/components/conversation/conversation.css +52 -52
  71. package/dist/components/conversation/conversation.d.ts +43 -18
  72. package/dist/components/conversation/conversation.js +120 -78
  73. package/dist/components/conversation/conversation.module.js +15 -15
  74. package/dist/components/date-field/date-field.d.ts +1 -1
  75. package/dist/components/date-field/date-field.js +202 -100
  76. package/dist/components/date-field/date-input.d.ts +73 -37
  77. package/dist/components/date-field/date-input.js +72 -45
  78. package/dist/components/date-field/index.d.ts +1 -1
  79. package/dist/components/date-range-field/date-range-field.d.ts +1 -1
  80. package/dist/components/date-range-field/date-range-field.js +219 -107
  81. package/dist/components/date-range-field/date-range-input.d.ts +84 -40
  82. package/dist/components/date-range-field/date-range-input.js +83 -48
  83. package/dist/components/dialog/dialog.css +32 -32
  84. package/dist/components/dialog/dialog.d.ts +8 -7
  85. package/dist/components/dialog/dialog.js +8 -26
  86. package/dist/components/dialog/dialog.module.js +6 -6
  87. package/dist/components/divider/divider.css +6 -6
  88. package/dist/components/divider/divider.d.ts +36 -2
  89. package/dist/components/divider/divider.js +195 -29
  90. package/dist/components/divider/divider.module.js +3 -3
  91. package/dist/components/drawer/drawer.css +55 -56
  92. package/dist/components/drawer/drawer.d.ts +8 -7
  93. package/dist/components/drawer/drawer.js +8 -26
  94. package/dist/components/drawer/drawer.module.js +6 -6
  95. package/dist/components/field/field.css +34 -24
  96. package/dist/components/field/field.d.ts +60 -37
  97. package/dist/components/field/field.js +242 -157
  98. package/dist/components/field/field.module.js +12 -10
  99. package/dist/components/field/input-parts.d.ts +11 -13
  100. package/dist/components/field/input-parts.js +23 -42
  101. package/dist/components/field-placeholder/field-placeholder.css +6 -6
  102. package/dist/components/field-placeholder/field-placeholder.module.js +4 -4
  103. package/dist/components/fieldset/field-group.d.ts +1 -1
  104. package/dist/components/fieldset/field-group.js +48 -42
  105. package/dist/components/fieldset/fieldset-root.d.ts +1 -1
  106. package/dist/components/fieldset/fieldset-root.js +19 -17
  107. package/dist/components/fieldset/fieldset.d.ts +2 -2
  108. package/dist/components/fieldset/fieldset.js +2 -2
  109. package/dist/components/file-field/file-field.css +126 -60
  110. package/dist/components/file-field/file-field.js +201 -109
  111. package/dist/components/file-field/file-field.module.js +4 -4
  112. package/dist/components/file-field/file-input.d.ts +66 -40
  113. package/dist/components/file-field/file-input.js +188 -132
  114. package/dist/components/filter-bar/filter-bar.css +8 -8
  115. package/dist/components/filter-bar/filter-bar.d.ts +12 -3
  116. package/dist/components/filter-bar/filter-bar.js +23 -25
  117. package/dist/components/filter-bar/filter-bar.module.js +5 -5
  118. package/dist/components/form/form.d.ts +19 -7
  119. package/dist/components/form/form.js +80 -29
  120. package/dist/components/icon/icon.css +2 -2
  121. package/dist/components/icon/icon.module.js +1 -1
  122. package/dist/components/link/link.css +6 -5
  123. package/dist/components/link/link.module.js +1 -1
  124. package/dist/components/menu/menu.css +52 -47
  125. package/dist/components/menu/menu.d.ts +32 -25
  126. package/dist/components/menu/menu.js +75 -124
  127. package/dist/components/menu/menu.module.js +8 -8
  128. package/dist/components/nav/nav-context.d.ts +1 -1
  129. package/dist/components/nav/nav-item-view.d.ts +10 -13
  130. package/dist/components/nav/nav-item-view.js +42 -54
  131. package/dist/components/nav/nav.css +150 -119
  132. package/dist/components/nav/nav.d.ts +61 -17
  133. package/dist/components/nav/nav.js +271 -176
  134. package/dist/components/nav/nav.module.js +17 -15
  135. package/dist/components/number-field/number-field.css +153 -64
  136. package/dist/components/number-field/number-field.d.ts +2 -2
  137. package/dist/components/number-field/number-field.js +112 -91
  138. package/dist/components/number-field/number-field.module.js +6 -6
  139. package/dist/components/number-field/number-input.d.ts +43 -23
  140. package/dist/components/number-field/number-input.js +179 -125
  141. package/dist/components/otp-field/otp-field.css +153 -60
  142. package/dist/components/otp-field/otp-field.d.ts +2 -2
  143. package/dist/components/otp-field/otp-field.js +62 -46
  144. package/dist/components/otp-field/otp-field.module.js +4 -4
  145. package/dist/components/otp-field/otp-input.d.ts +8 -6
  146. package/dist/components/otp-field/otp-input.js +92 -92
  147. package/dist/components/pagination/pagination.d.ts +46 -15
  148. package/dist/components/pagination/pagination.js +217 -224
  149. package/dist/components/password-field/password-field.css +23 -23
  150. package/dist/components/password-field/password-field.js +107 -85
  151. package/dist/components/password-field/password-field.module.js +8 -8
  152. package/dist/components/password-field/password-strength.d.ts +107 -3
  153. package/dist/components/password-field/password-strength.js +569 -92
  154. package/dist/components/photo-field/photo-field.js +137 -112
  155. package/dist/components/photo-field/photo-input.css +67 -44
  156. package/dist/components/photo-field/photo-input.d.ts +59 -15
  157. package/dist/components/photo-field/photo-input.js +173 -86
  158. package/dist/components/photo-field/photo-input.module.js +10 -8
  159. package/dist/components/popover/popover.css +41 -41
  160. package/dist/components/popover/popover.d.ts +66 -25
  161. package/dist/components/popover/popover.js +332 -217
  162. package/dist/components/popover/popover.module.js +15 -19
  163. package/dist/components/radio-group-field/radio-group-field.js +80 -71
  164. package/dist/components/radio-group-field/radio-group.css +112 -60
  165. package/dist/components/radio-group-field/radio-group.d.ts +19 -3
  166. package/dist/components/radio-group-field/radio-group.js +66 -23
  167. package/dist/components/radio-group-field/radio-group.module.js +4 -4
  168. package/dist/components/segmented-control-field/segmented-control-field.d.ts +1 -1
  169. package/dist/components/segmented-control-field/segmented-control-field.js +111 -96
  170. package/dist/components/segmented-control-field/segmented-control.css +132 -79
  171. package/dist/components/segmented-control-field/segmented-control.d.ts +39 -15
  172. package/dist/components/segmented-control-field/segmented-control.js +124 -41
  173. package/dist/components/segmented-control-field/segmented-control.module.js +4 -4
  174. package/dist/components/select-field/select.css +214 -101
  175. package/dist/components/select-field/select.d.ts +43 -11
  176. package/dist/components/select-field/select.js +194 -109
  177. package/dist/components/select-field/select.module.js +14 -14
  178. package/dist/components/skeleton/skeleton.css +4 -4
  179. package/dist/components/skeleton/skeleton.module.js +3 -3
  180. package/dist/components/stale/stale.css +15 -15
  181. package/dist/components/stale/stale.d.ts +27 -3
  182. package/dist/components/stale/stale.js +147 -66
  183. package/dist/components/stale/stale.module.js +6 -6
  184. package/dist/components/status-message/status-message.css +22 -22
  185. package/dist/components/status-message/status-message.module.js +6 -6
  186. package/dist/components/switch-field/switch-field.js +77 -57
  187. package/dist/components/switch-field/switch.css +112 -63
  188. package/dist/components/switch-field/switch.d.ts +20 -3
  189. package/dist/components/switch-field/switch.js +70 -27
  190. package/dist/components/switch-field/switch.module.js +4 -4
  191. package/dist/components/tabs/tabs.css +32 -32
  192. package/dist/components/tabs/tabs.d.ts +21 -7
  193. package/dist/components/tabs/tabs.js +73 -14
  194. package/dist/components/tabs/tabs.module.js +7 -7
  195. package/dist/components/tag/tag.css +84 -84
  196. package/dist/components/tag/tag.module.js +3 -3
  197. package/dist/components/tag-group/tag-group.css +94 -94
  198. package/dist/components/tag-group/tag-group.module.js +4 -4
  199. package/dist/components/text-field/text-field.css +159 -82
  200. package/dist/components/text-field/text-field.d.ts +1 -1
  201. package/dist/components/text-field/text-field.js +139 -110
  202. package/dist/components/text-field/text-field.module.js +9 -9
  203. package/dist/components/text-field/text-input.d.ts +81 -45
  204. package/dist/components/text-field/text-input.js +366 -217
  205. package/dist/components/textarea-field/textarea-field.css +7 -2
  206. package/dist/components/textarea-field/textarea-field.js +72 -56
  207. package/dist/components/textarea-field/textarea-field.module.js +2 -2
  208. package/dist/components/time-field/time-field.js +153 -60
  209. package/dist/components/time-field/time-input.d.ts +21 -10
  210. package/dist/components/time-field/time-input.js +22 -11
  211. package/dist/components/toast/toast-provider.css +34 -31
  212. package/dist/components/toast/toast-provider.d.ts +63 -14
  213. package/dist/components/toast/toast-provider.js +174 -111
  214. package/dist/components/toast/toast-provider.module.js +7 -7
  215. package/dist/components/toggle-group-field/toggle-group-field.d.ts +1 -1
  216. package/dist/components/toggle-group-field/toggle-group-field.js +95 -89
  217. package/dist/components/toggle-group-field/toggle-group.css +117 -67
  218. package/dist/components/toggle-group-field/toggle-group.d.ts +2 -2
  219. package/dist/components/toggle-group-field/toggle-group.js +2 -2
  220. package/dist/components/toggle-group-field/toggle-group.module.js +2 -2
  221. package/dist/components/tooltip/tooltip.css +4 -4
  222. package/dist/components/tooltip/tooltip.module.js +1 -1
  223. package/dist/data-table/data-table-content.js +6 -5
  224. package/dist/data-table/data-table-parts.d.ts +41 -13
  225. package/dist/data-table/data-table-parts.js +213 -172
  226. package/dist/data-table/data-table-selection.d.ts +105 -3
  227. package/dist/data-table/data-table-selection.js +654 -145
  228. package/dist/data-table/data-table.css +125 -128
  229. package/dist/data-table/data-table.d.ts +21 -26
  230. package/dist/data-table/data-table.js +20 -23
  231. package/dist/data-table/data-table.module.js +32 -34
  232. package/dist/data-table/index.d.ts +2 -2
  233. package/dist/index.js +3 -3
  234. package/dist/lib/calendar/calendar-navigation.d.ts +39 -5
  235. package/dist/lib/calendar/calendar-navigation.js +185 -118
  236. package/dist/lib/calendar/calendar-parts.d.ts +143 -0
  237. package/dist/lib/calendar/calendar-parts.js +540 -0
  238. package/dist/lib/calendar/calendar-prefab.d.ts +52 -0
  239. package/dist/lib/calendar/calendar-prefab.js +311 -0
  240. package/dist/lib/calendar/calendar-year.d.ts +3 -1
  241. package/dist/lib/calendar/calendar-year.js +139 -131
  242. package/dist/lib/calendar/temporal.css +325 -232
  243. package/dist/lib/calendar/temporal.d.ts +67 -82
  244. package/dist/lib/calendar/temporal.js +258 -569
  245. package/dist/lib/calendar/temporal.module.js +38 -38
  246. package/dist/lib/forms/use-connected-field.d.ts +1 -1
  247. package/dist/lib/forms/use-connected-field.js +1 -1
  248. package/dist/lib/render-as.d.ts +13 -0
  249. package/dist/lib/render-as.js +46 -0
  250. package/dist/terrazzo/index.d.ts +4 -3
  251. package/dist/terrazzo/index.js +17 -6
  252. package/dist/tokens.css +28 -4
  253. package/package.json +2 -2
  254. package/tokens/dark.tokens.json +6 -0
  255. package/tokens/sys.tokens.json +7 -0
  256. package/dist/components/button/close-button.d.ts +0 -16
  257. package/dist/components/button/close-button.js +0 -30
@@ -1,12 +1,12 @@
1
1
  import './breadcrumbs.css';// src/components/breadcrumbs/breadcrumbs.module.scss
2
- var root = "_root_k1utk_3";
3
- var list = "_list_k1utk_7";
4
- var item = "_item_k1utk_14";
5
- var crumb = "_crumb_k1utk_19";
6
- var separator = "_separator_k1utk_34";
7
- var gauge = "_gauge_k1utk_39";
8
- var gaugeList = "_gaugeList_k1utk_46";
9
- var popup = "_popup_k1utk_52";
2
+ var root = "_root_amqs9_3";
3
+ var list = "_list_amqs9_7";
4
+ var item = "_item_amqs9_14";
5
+ var crumb = "_crumb_amqs9_19";
6
+ var separator = "_separator_amqs9_34";
7
+ var gauge = "_gauge_amqs9_39";
8
+ var gaugeList = "_gaugeList_amqs9_46";
9
+ var popup = "_popup_amqs9_52";
10
10
  var breadcrumbs_module_default = {
11
11
  root,
12
12
  list,
@@ -1,38 +1,40 @@
1
1
  @layer kit.reset, kit.base, kit.components;
2
2
  @layer kit.components {
3
- ._button_wivo8_3 {
3
+ ._button_1o4i0_3 {
4
4
  --_btn-bg: transparent;
5
5
  --_btn-fg: var(--sys-color-text);
6
6
  --_btn-pad-y: var(--sys-unit-6);
7
7
  --_btn-pad-x: var(--sys-unit-16);
8
8
  --_btn-font: var(--sys-font-label-medium);
9
+ --_btn-disabled-bg: var(--sys-color-disabled-bg);
9
10
  display: inline-flex;
10
11
  align-items: center;
11
12
  justify-content: center;
12
13
  gap: var(--btn-gap, var(--sys-unit-4));
13
14
  box-sizing: border-box;
14
- border: none;
15
+ border: var(--btn-border-width, 0) var(--btn-border-style, none) var(--btn-border, currentcolor);
15
16
  border-radius: var(--btn-radius, var(--sys-radius-full));
16
17
  background: var(--btn-bg, var(--_btn-bg));
17
- padding: var(--btn-pad-y, var(--_btn-pad-y)) var(--btn-pad-x, var(--_btn-pad-x));
18
+ padding-block: var(--btn-pad-y, var(--_btn-pad-y));
19
+ padding-inline: var(--btn-pad-start, var(--btn-pad-x, var(--_btn-pad-x))) var(--btn-pad-end, var(--btn-pad-x, var(--_btn-pad-x)));
18
20
  color: var(--btn-fg, var(--_btn-fg));
19
21
  font: var(--btn-font, var(--_btn-font));
20
- letter-spacing: 0.0125em;
22
+ letter-spacing: var(--btn-letter-spacing, 0.0125em);
21
23
  text-align: center;
22
24
  white-space: nowrap;
23
25
  }
24
- ._button_wivo8_3 {
26
+ ._button_1o4i0_3 {
25
27
  outline: 0 solid var(--sys-color-focus-ring);
26
28
  outline-offset: var(--sys-focus-ring-offset);
27
29
  }
28
- ._button_wivo8_3:focus-visible {
30
+ ._button_1o4i0_3:focus-visible {
29
31
  outline-width: var(--sys-focus-ring-width);
30
32
  }
31
- ._button_wivo8_3 {
33
+ ._button_1o4i0_3 {
32
34
  position: relative;
33
35
  isolation: isolate;
34
36
  }
35
- ._button_wivo8_3::after {
37
+ ._button_1o4i0_3::after {
36
38
  content: "";
37
39
  position: absolute;
38
40
  z-index: -1;
@@ -43,69 +45,65 @@
43
45
  pointer-events: none;
44
46
  }
45
47
  @media not (prefers-reduced-motion) {
46
- ._button_wivo8_3::after {
48
+ ._button_1o4i0_3::after {
47
49
  transition: opacity var(--sys-motion-instant) var(--sys-motion-standard);
48
50
  }
49
51
  }
50
- ._button_wivo8_3:hover:not(:disabled, [data-disabled])::after {
52
+ ._button_1o4i0_3:hover:not(:disabled, [data-disabled])::after {
51
53
  opacity: var(--sys-state-hover);
52
54
  }
53
- ._button_wivo8_3:active:not(:disabled, [data-disabled])::after {
55
+ ._button_1o4i0_3:active:not(:disabled, [data-disabled])::after {
54
56
  opacity: var(--sys-state-pressed);
55
57
  }
56
- a._button_wivo8_3,
57
- a._button_wivo8_3:hover {
58
+ a._button_1o4i0_3,
59
+ a._button_1o4i0_3:hover {
58
60
  color: var(--btn-fg, var(--_btn-fg));
59
61
  text-decoration: none;
60
62
  }
61
- ._button_wivo8_3[data-variant=primary] {
63
+ ._button_1o4i0_3[data-variant=primary] {
62
64
  --_btn-bg: var(--sys-color-primary);
63
65
  --_btn-fg: var(--sys-color-on-primary);
64
66
  }
65
- ._button_wivo8_3[data-variant=secondary] {
67
+ ._button_1o4i0_3[data-variant=secondary] {
66
68
  --_btn-bg: var(--sys-color-primary-container);
67
69
  --_btn-fg: var(--sys-color-on-primary-container);
68
70
  }
69
- ._button_wivo8_3[data-variant=tertiary] {
71
+ ._button_1o4i0_3[data-variant=tertiary] {
70
72
  --_btn-bg: transparent;
71
73
  --_btn-fg: var(--sys-color-on-primary-container);
72
74
  --_btn-pad-x: var(--sys-unit-6);
75
+ --_btn-disabled-bg: transparent;
73
76
  }
74
- ._button_wivo8_3[data-tone=danger][data-variant=primary] {
77
+ ._button_1o4i0_3[data-tone=danger][data-variant=primary] {
75
78
  --_btn-bg: var(--sys-color-error-fg);
76
79
  --_btn-fg: var(--sys-color-error-bg);
77
80
  }
78
- ._button_wivo8_3[data-tone=danger][data-variant=secondary] {
81
+ ._button_1o4i0_3[data-tone=danger][data-variant=secondary] {
79
82
  --_btn-bg: var(--sys-color-error-bg);
80
83
  --_btn-fg: var(--sys-color-error-fg);
81
84
  }
82
- ._button_wivo8_3[data-tone=danger][data-variant=tertiary] {
85
+ ._button_1o4i0_3[data-tone=danger][data-variant=tertiary] {
83
86
  --_btn-fg: var(--sys-color-error-fg);
84
87
  }
85
- ._button_wivo8_3[data-size=sm] {
88
+ ._button_1o4i0_3[data-size=sm] {
86
89
  --_btn-pad-y: var(--sys-unit-4);
87
90
  --_btn-pad-x: var(--sys-unit-6);
88
91
  --_btn-font: var(--sys-font-label-small);
89
92
  }
90
- ._button_wivo8_3[data-size=lg] {
93
+ ._button_1o4i0_3[data-size=lg] {
91
94
  --_btn-pad-y: var(--sys-unit-8);
92
95
  --_btn-pad-x: var(--sys-unit-20);
93
96
  --_btn-font: var(--sys-font-label-large);
94
97
  }
95
- ._button_wivo8_3[data-icon-only=true] {
98
+ ._button_1o4i0_3[data-icon-only=true] {
96
99
  border-radius: var(--btn-radius, var(--sys-radius-circle));
97
100
  padding: var(--btn-pad-y, var(--_btn-pad-y));
98
101
  aspect-ratio: 1;
99
102
  }
100
- ._button_wivo8_3:disabled,
101
- ._button_wivo8_3[data-disabled],
102
- ._button_wivo8_3[aria-disabled=true] {
103
- background: var(--btn-disabled-bg, var(--sys-color-disabled-bg));
103
+ ._button_1o4i0_3:disabled,
104
+ ._button_1o4i0_3[data-disabled],
105
+ ._button_1o4i0_3[aria-disabled=true] {
106
+ background: var(--btn-disabled-bg, var(--_btn-disabled-bg));
104
107
  color: var(--btn-disabled-fg, var(--sys-color-disabled-fg));
105
108
  }
106
- ._button_wivo8_3:disabled[data-variant=tertiary],
107
- ._button_wivo8_3[data-disabled][data-variant=tertiary],
108
- ._button_wivo8_3[aria-disabled=true][data-variant=tertiary] {
109
- background: transparent;
110
- }
111
109
  }
@@ -5,7 +5,8 @@ export type ButtonVariant = "primary" | "secondary" | "tertiary";
5
5
  export type ButtonSize = "sm" | "md" | "lg";
6
6
  /** A button's colour role. */
7
7
  export type ButtonTone = "brand" | "danger";
8
- type BaseProps = ComponentPropsWithRef<"button"> & Readonly<{
8
+ /** The props every button takes, whatever it shows. */
9
+ export type ButtonBaseProps = ComponentPropsWithRef<"button"> & Readonly<{
9
10
  /** Visual tier. @default "secondary" */
10
11
  variant?: ButtonVariant;
11
12
  /** @default "md" */
@@ -18,29 +19,32 @@ type BaseProps = ComponentPropsWithRef<"button"> & Readonly<{
18
19
  /** A library part this button should render as, e.g. `<Menu.Trigger />`. */
19
20
  render?: ReactElement;
20
21
  }>;
21
- type TextButtonProps = BaseProps & Readonly<{
22
- iconOnly?: false;
22
+ export type ButtonProps = ButtonBaseProps & Readonly<{
23
23
  /** Optional leading icon rendered before the label. */
24
24
  icon?: ReactNode;
25
+ /** The button's text, which is also its accessible name. */
25
26
  children: ReactNode;
26
27
  }>;
27
- type IconOnlyButtonProps = BaseProps & Readonly<{
28
- iconOnly: true;
29
- /** Icon to render; required in icon-only mode. */
30
- icon: ReactNode;
28
+ /**
29
+ * Composite button over Material 3's tiers: `primary` is a filled button,
30
+ * `secondary` a tonal one, and `tertiary` a text button. A button whose only
31
+ * content is an icon is an `IconButton`.
32
+ *
33
+ * @example
34
+ * <Button variant="primary" size="md" onClick={apply}>Apply</Button>
35
+ */
36
+ export declare const Button: ({ variant, size, tone, className, icon, children, render, ...nativeProps }: ButtonProps) => ReactNode;
37
+ export type IconButtonProps = ButtonBaseProps & Readonly<{
31
38
  /** Accessible name, surfaced as the tooltip hint and set as `aria-label`, since the icon alone conveys no text. */
32
39
  label: string;
33
- children?: never;
40
+ /** The icon, drawn in `currentColor` at `1em`. */
41
+ children: ReactNode;
34
42
  }>;
35
- export type ButtonProps = TextButtonProps | IconOnlyButtonProps;
36
43
  /**
37
- * Composite button over Material 3's tiers: `primary` is a filled button,
38
- * `secondary` a tonal one, and `tertiary` a text button. In icon-only mode an
39
- * accessible `label` is required and surfaced as both a tooltip and an
40
- * `aria-label`.
44
+ * A button whose only content is an icon: a circle with its `label` as its
45
+ * accessible name and as a tooltip, since the icon alone says nothing.
41
46
  *
42
47
  * @example
43
- * <Button variant="primary" size="md" onClick={apply}>Apply</Button>
48
+ * <IconButton label="Export" onClick={exportRows}><DownloadIcon /></IconButton>
44
49
  */
45
- export declare const Button: (props: ButtonProps) => ReactNode;
46
- export {};
50
+ export declare const IconButton: ({ variant, size, tone, className, label, children, render, ...nativeProps }: IconButtonProps) => ReactNode;
@@ -32,160 +32,155 @@ var ButtonElement = (t0) => {
32
32
  };
33
33
  /**
34
34
  * Composite button over Material 3's tiers: `primary` is a filled button,
35
- * `secondary` a tonal one, and `tertiary` a text button. In icon-only mode an
36
- * accessible `label` is required and surfaced as both a tooltip and an
37
- * `aria-label`.
35
+ * `secondary` a tonal one, and `tertiary` a text button. A button whose only
36
+ * content is an icon is an `IconButton`.
38
37
  *
39
38
  * @example
40
39
  * <Button variant="primary" size="md" onClick={apply}>Apply</Button>
41
40
  */
42
- var Button = (props) => {
43
- const $ = c(45);
44
- if (props.iconOnly) {
45
- let className;
46
- let icon;
47
- let iconOnly;
48
- let label;
49
- let nativeProps;
50
- let render;
51
- let size;
52
- let tone;
53
- let variant;
54
- if ($[0] !== props) {
55
- ({variant, size, tone, className, iconOnly, icon, label, render, ...nativeProps} = props);
56
- $[0] = props;
57
- $[1] = className;
58
- $[2] = icon;
59
- $[3] = iconOnly;
60
- $[4] = label;
61
- $[5] = nativeProps;
62
- $[6] = render;
63
- $[7] = size;
64
- $[8] = tone;
65
- $[9] = variant;
66
- } else {
67
- className = $[1];
68
- icon = $[2];
69
- iconOnly = $[3];
70
- label = $[4];
71
- nativeProps = $[5];
72
- render = $[6];
73
- size = $[7];
74
- tone = $[8];
75
- variant = $[9];
76
- }
77
- let t0;
78
- if ($[10] !== className || $[11] !== size || $[12] !== tone || $[13] !== variant) {
79
- t0 = buttonAttributes({
80
- variant,
81
- size,
82
- tone,
83
- className
84
- });
85
- $[10] = className;
86
- $[11] = size;
87
- $[12] = tone;
88
- $[13] = variant;
89
- $[14] = t0;
90
- } else t0 = $[14];
91
- let t1;
92
- if ($[15] !== icon || $[16] !== iconOnly || $[17] !== label || $[18] !== nativeProps || $[19] !== render || $[20] !== t0) {
93
- t1 = /* @__PURE__ */ jsx(ButtonElement, {
94
- render,
95
- type: "button",
96
- "aria-label": label,
97
- ...t0,
98
- "data-icon-only": iconOnly,
99
- ...nativeProps,
100
- children: icon
101
- });
102
- $[15] = icon;
103
- $[16] = iconOnly;
104
- $[17] = label;
105
- $[18] = nativeProps;
106
- $[19] = render;
107
- $[20] = t0;
108
- $[21] = t1;
109
- } else t1 = $[21];
110
- let t2;
111
- if ($[22] !== label || $[23] !== t1) {
112
- t2 = /* @__PURE__ */ jsx(Tooltip, {
113
- content: label,
114
- children: t1
115
- });
116
- $[22] = label;
117
- $[23] = t1;
118
- $[24] = t2;
119
- } else t2 = $[24];
120
- return t2;
121
- }
41
+ var Button = (t0) => {
42
+ const $ = c(20);
122
43
  let children;
123
- let className_0;
124
- let icon_0;
125
- let nativeProps_0;
126
- let render_0;
127
- let size_0;
128
- let tone_0;
129
- let variant_0;
130
- if ($[25] !== props) {
131
- const { variant: t0, size: t1, tone: t2, className: t3, iconOnly: _iconOnly, icon: t4, children: t5, render: t6, ...t7 } = props;
132
- variant_0 = t0;
133
- size_0 = t1;
134
- tone_0 = t2;
135
- className_0 = t3;
136
- icon_0 = t4;
137
- children = t5;
138
- render_0 = t6;
139
- nativeProps_0 = t7;
140
- $[25] = props;
141
- $[26] = children;
142
- $[27] = className_0;
143
- $[28] = icon_0;
144
- $[29] = nativeProps_0;
145
- $[30] = render_0;
146
- $[31] = size_0;
147
- $[32] = tone_0;
148
- $[33] = variant_0;
44
+ let className;
45
+ let icon;
46
+ let nativeProps;
47
+ let render;
48
+ let size;
49
+ let tone;
50
+ let variant;
51
+ if ($[0] !== t0) {
52
+ ({variant, size, tone, className, icon, children, render, ...nativeProps} = t0);
53
+ $[0] = t0;
54
+ $[1] = children;
55
+ $[2] = className;
56
+ $[3] = icon;
57
+ $[4] = nativeProps;
58
+ $[5] = render;
59
+ $[6] = size;
60
+ $[7] = tone;
61
+ $[8] = variant;
149
62
  } else {
150
- children = $[26];
151
- className_0 = $[27];
152
- icon_0 = $[28];
153
- nativeProps_0 = $[29];
154
- render_0 = $[30];
155
- size_0 = $[31];
156
- tone_0 = $[32];
157
- variant_0 = $[33];
63
+ children = $[1];
64
+ className = $[2];
65
+ icon = $[3];
66
+ nativeProps = $[4];
67
+ render = $[5];
68
+ size = $[6];
69
+ tone = $[7];
70
+ variant = $[8];
158
71
  }
159
- let t0;
160
- if ($[34] !== className_0 || $[35] !== size_0 || $[36] !== tone_0 || $[37] !== variant_0) {
161
- t0 = buttonAttributes({
162
- variant: variant_0,
163
- size: size_0,
164
- tone: tone_0,
165
- className: className_0
72
+ let t1;
73
+ if ($[9] !== className || $[10] !== size || $[11] !== tone || $[12] !== variant) {
74
+ t1 = buttonAttributes({
75
+ variant,
76
+ size,
77
+ tone,
78
+ className
166
79
  });
167
- $[34] = className_0;
168
- $[35] = size_0;
169
- $[36] = tone_0;
170
- $[37] = variant_0;
171
- $[38] = t0;
172
- } else t0 = $[38];
80
+ $[9] = className;
81
+ $[10] = size;
82
+ $[11] = tone;
83
+ $[12] = variant;
84
+ $[13] = t1;
85
+ } else t1 = $[13];
86
+ let t2;
87
+ if ($[14] !== children || $[15] !== icon || $[16] !== nativeProps || $[17] !== render || $[18] !== t1) {
88
+ t2 = /* @__PURE__ */ jsxs(ButtonElement, {
89
+ render,
90
+ type: "button",
91
+ ...t1,
92
+ ...nativeProps,
93
+ children: [icon, children]
94
+ });
95
+ $[14] = children;
96
+ $[15] = icon;
97
+ $[16] = nativeProps;
98
+ $[17] = render;
99
+ $[18] = t1;
100
+ $[19] = t2;
101
+ } else t2 = $[19];
102
+ return t2;
103
+ };
104
+ /**
105
+ * A button whose only content is an icon: a circle with its `label` as its
106
+ * accessible name and as a tooltip, since the icon alone says nothing.
107
+ *
108
+ * @example
109
+ * <IconButton label="Export" onClick={exportRows}><DownloadIcon /></IconButton>
110
+ */
111
+ var IconButton = (t0) => {
112
+ const $ = c(23);
113
+ let children;
114
+ let className;
115
+ let label;
116
+ let nativeProps;
117
+ let render;
118
+ let size;
119
+ let tone;
120
+ let variant;
121
+ if ($[0] !== t0) {
122
+ ({variant, size, tone, className, label, children, render, ...nativeProps} = t0);
123
+ $[0] = t0;
124
+ $[1] = children;
125
+ $[2] = className;
126
+ $[3] = label;
127
+ $[4] = nativeProps;
128
+ $[5] = render;
129
+ $[6] = size;
130
+ $[7] = tone;
131
+ $[8] = variant;
132
+ } else {
133
+ children = $[1];
134
+ className = $[2];
135
+ label = $[3];
136
+ nativeProps = $[4];
137
+ render = $[5];
138
+ size = $[6];
139
+ tone = $[7];
140
+ variant = $[8];
141
+ }
173
142
  let t1;
174
- if ($[39] !== children || $[40] !== icon_0 || $[41] !== nativeProps_0 || $[42] !== render_0 || $[43] !== t0) {
175
- t1 = /* @__PURE__ */ jsxs(ButtonElement, {
176
- render: render_0,
143
+ if ($[9] !== className || $[10] !== size || $[11] !== tone || $[12] !== variant) {
144
+ t1 = buttonAttributes({
145
+ variant,
146
+ size,
147
+ tone,
148
+ className
149
+ });
150
+ $[9] = className;
151
+ $[10] = size;
152
+ $[11] = tone;
153
+ $[12] = variant;
154
+ $[13] = t1;
155
+ } else t1 = $[13];
156
+ let t2;
157
+ if ($[14] !== children || $[15] !== label || $[16] !== nativeProps || $[17] !== render || $[18] !== t1) {
158
+ t2 = /* @__PURE__ */ jsx(ButtonElement, {
159
+ render,
177
160
  type: "button",
178
- ...t0,
179
- ...nativeProps_0,
180
- children: [icon_0, children]
161
+ "aria-label": label,
162
+ ...t1,
163
+ "data-icon-only": true,
164
+ ...nativeProps,
165
+ children
166
+ });
167
+ $[14] = children;
168
+ $[15] = label;
169
+ $[16] = nativeProps;
170
+ $[17] = render;
171
+ $[18] = t1;
172
+ $[19] = t2;
173
+ } else t2 = $[19];
174
+ let t3;
175
+ if ($[20] !== label || $[21] !== t2) {
176
+ t3 = /* @__PURE__ */ jsx(Tooltip, {
177
+ content: label,
178
+ children: t2
181
179
  });
182
- $[39] = children;
183
- $[40] = icon_0;
184
- $[41] = nativeProps_0;
185
- $[42] = render_0;
186
- $[43] = t0;
187
- $[44] = t1;
188
- } else t1 = $[44];
189
- return t1;
180
+ $[20] = label;
181
+ $[21] = t2;
182
+ $[22] = t3;
183
+ } else t3 = $[22];
184
+ return t3;
190
185
  };
191
- export { Button };
186
+ export { Button, IconButton };
@@ -1,4 +1,4 @@
1
1
  import './button.css';// src/components/button/button.module.scss
2
- var button = "_button_wivo8_3";
2
+ var button = "_button_1o4i0_3";
3
3
  var button_module_default = { button };
4
4
  export { button, button_module_default as default };
@@ -1 +1 @@
1
- export { Button } from "./button.js";
1
+ export { Button, IconButton } from "./button.js";
@@ -18,7 +18,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
18
18
  * />
19
19
  */
20
20
  var CheckboxField = (t0) => {
21
- const $ = c(46);
21
+ const $ = c(48);
22
22
  let checkIcon;
23
23
  let className;
24
24
  let description;
@@ -89,39 +89,53 @@ var CheckboxField = (t0) => {
89
89
  $[20] = t5;
90
90
  } else t5 = $[20];
91
91
  let t6;
92
- if ($[21] !== label || $[22] !== optionalLabel || $[23] !== requiredness) {
93
- t6 = /* @__PURE__ */ jsx(Field.InlineLabelText, {
94
- label,
95
- requiredness,
96
- optionalLabel
97
- });
98
- $[21] = label;
99
- $[22] = optionalLabel;
100
- $[23] = requiredness;
101
- $[24] = t6;
102
- } else t6 = $[24];
92
+ if ($[21] === Symbol.for("react.memo_cache_sentinel")) {
93
+ t6 = /* @__PURE__ */ jsx(Field.RequiredMark, {});
94
+ $[21] = t6;
95
+ } else t6 = $[21];
103
96
  let t7;
104
- if ($[25] !== t5 || $[26] !== t6) {
105
- t7 = /* @__PURE__ */ jsxs(Checkbox.Label, { children: [t5, t6] });
106
- $[25] = t5;
107
- $[26] = t6;
108
- $[27] = t7;
109
- } else t7 = $[27];
97
+ if ($[22] !== label) {
98
+ t7 = /* @__PURE__ */ jsxs(Field.InlineLabelText, { children: [
99
+ label,
100
+ " ",
101
+ t6
102
+ ] });
103
+ $[22] = label;
104
+ $[23] = t7;
105
+ } else t7 = $[23];
110
106
  let t8;
111
- if ($[28] !== description) {
112
- t8 = /* @__PURE__ */ jsx(Checkbox.Description, { children: description });
113
- $[28] = description;
114
- $[29] = t8;
115
- } else t8 = $[29];
107
+ if ($[24] !== optionalLabel) {
108
+ t8 = /* @__PURE__ */ jsx(Field.InlineOptional, { optionalLabel });
109
+ $[24] = optionalLabel;
110
+ $[25] = t8;
111
+ } else t8 = $[25];
116
112
  let t9;
117
- if ($[30] !== errors) {
118
- t9 = /* @__PURE__ */ jsx(Checkbox.Error, { children: errors });
119
- $[30] = errors;
120
- $[31] = t9;
121
- } else t9 = $[31];
113
+ if ($[26] !== t5 || $[27] !== t7 || $[28] !== t8) {
114
+ t9 = /* @__PURE__ */ jsxs(Checkbox.Label, { children: [
115
+ t5,
116
+ t7,
117
+ t8
118
+ ] });
119
+ $[26] = t5;
120
+ $[27] = t7;
121
+ $[28] = t8;
122
+ $[29] = t9;
123
+ } else t9 = $[29];
122
124
  let t10;
123
- if ($[32] !== className || $[33] !== dirty || $[34] !== errors || $[35] !== name || $[36] !== pending || $[37] !== props.disabled || $[38] !== props.readOnly || $[39] !== requiredness || $[40] !== t1 || $[41] !== t7 || $[42] !== t8 || $[43] !== t9 || $[44] !== touched) {
124
- t10 = /* @__PURE__ */ jsxs(Checkbox.Root, {
125
+ if ($[30] !== description) {
126
+ t10 = /* @__PURE__ */ jsx(Checkbox.Description, { children: description });
127
+ $[30] = description;
128
+ $[31] = t10;
129
+ } else t10 = $[31];
130
+ let t11;
131
+ if ($[32] !== errors) {
132
+ t11 = /* @__PURE__ */ jsx(Checkbox.Error, { children: errors });
133
+ $[32] = errors;
134
+ $[33] = t11;
135
+ } else t11 = $[33];
136
+ let t12;
137
+ if ($[34] !== className || $[35] !== dirty || $[36] !== errors || $[37] !== name || $[38] !== pending || $[39] !== props.disabled || $[40] !== props.readOnly || $[41] !== requiredness || $[42] !== t1 || $[43] !== t10 || $[44] !== t11 || $[45] !== t9 || $[46] !== touched) {
138
+ t12 = /* @__PURE__ */ jsxs(Checkbox.Root, {
125
139
  name,
126
140
  className,
127
141
  disabled: props.disabled,
@@ -133,26 +147,26 @@ var CheckboxField = (t0) => {
133
147
  pending,
134
148
  filled: t1,
135
149
  children: [
136
- t7,
137
- t8,
138
- t9
150
+ t9,
151
+ t10,
152
+ t11
139
153
  ]
140
154
  });
141
- $[32] = className;
142
- $[33] = dirty;
143
- $[34] = errors;
144
- $[35] = name;
145
- $[36] = pending;
146
- $[37] = props.disabled;
147
- $[38] = props.readOnly;
148
- $[39] = requiredness;
149
- $[40] = t1;
150
- $[41] = t7;
151
- $[42] = t8;
152
- $[43] = t9;
153
- $[44] = touched;
154
- $[45] = t10;
155
- } else t10 = $[45];
156
- return t10;
155
+ $[34] = className;
156
+ $[35] = dirty;
157
+ $[36] = errors;
158
+ $[37] = name;
159
+ $[38] = pending;
160
+ $[39] = props.disabled;
161
+ $[40] = props.readOnly;
162
+ $[41] = requiredness;
163
+ $[42] = t1;
164
+ $[43] = t10;
165
+ $[44] = t11;
166
+ $[45] = t9;
167
+ $[46] = touched;
168
+ $[47] = t12;
169
+ } else t12 = $[47];
170
+ return t12;
157
171
  };
158
172
  export { CheckboxField };