@1doc/1ds-react 2.8.0 → 2.9.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 (213) hide show
  1. package/CHANGELOG.md +1106 -0
  2. package/dist/components/AILabel/AILabel.js +1 -1
  3. package/dist/components/Accordion/Accordion.d.ts +6 -2
  4. package/dist/components/AttachmentCard/AttachmentCard.css +16 -0
  5. package/dist/components/AttachmentCard/AttachmentCard.d.ts +19 -2
  6. package/dist/components/AttachmentCard/AttachmentCard.js +40 -3
  7. package/dist/components/Avatar/Avatar.css +7 -2
  8. package/dist/components/Avatar/AvatarGroup.d.ts +17 -0
  9. package/dist/components/Avatar/AvatarGroup.js +22 -8
  10. package/dist/components/Badge/Badge.css +54 -2
  11. package/dist/components/Badge/Badge.d.ts +14 -4
  12. package/dist/components/Badge/Badge.js +1 -0
  13. package/dist/components/Box/Box.css +83 -0
  14. package/dist/components/Box/Box.d.ts +82 -2
  15. package/dist/components/Box/Box.js +42 -2
  16. package/dist/components/Button/Button.css +29 -0
  17. package/dist/components/Button/Button.d.ts +4 -4
  18. package/dist/components/Button/Button.js +4 -1
  19. package/dist/components/Calendar/Calendar.css +245 -0
  20. package/dist/components/Calendar/Calendar.d.ts +125 -0
  21. package/dist/components/Calendar/Calendar.js +320 -0
  22. package/dist/components/Chips/Chips.css +38 -0
  23. package/dist/components/Chips/Chips.d.ts +5 -2
  24. package/dist/components/Chips/Chips.js +2 -1
  25. package/dist/components/Coachmark/Coachmark.css +118 -0
  26. package/dist/components/Coachmark/Coachmark.d.ts +75 -0
  27. package/dist/components/Coachmark/Coachmark.js +321 -0
  28. package/dist/components/CodeBlock/CodeBlock.css +96 -0
  29. package/dist/components/CodeBlock/CodeBlock.d.ts +47 -0
  30. package/dist/components/CodeBlock/CodeBlock.js +103 -0
  31. package/dist/components/ColorPicker/ColorPicker.css +133 -0
  32. package/dist/components/ColorPicker/ColorPicker.d.ts +73 -0
  33. package/dist/components/ColorPicker/ColorPicker.js +219 -0
  34. package/dist/components/Combobox/Combobox.css +8 -0
  35. package/dist/components/DataTable/DataTable.css +80 -0
  36. package/dist/components/DataTable/DataTable.d.ts +19 -4
  37. package/dist/components/DataTable/DataTable.js +59 -15
  38. package/dist/components/DatePicker/DatePicker.css +8 -0
  39. package/dist/components/DatePicker/DatePicker.js +10 -1
  40. package/dist/components/DescriptionList/DescriptionList.css +113 -0
  41. package/dist/components/DescriptionList/DescriptionList.d.ts +59 -0
  42. package/dist/components/DescriptionList/DescriptionList.js +51 -0
  43. package/dist/components/FileInput/FileInput.css +16 -0
  44. package/dist/components/FileInput/FileInput.d.ts +4 -2
  45. package/dist/components/FileInput/FileInput.js +8 -2
  46. package/dist/components/Grid/Grid.js +5 -5
  47. package/dist/components/IconPicker/IconPicker.css +107 -0
  48. package/dist/components/IconPicker/IconPicker.d.ts +74 -0
  49. package/dist/components/IconPicker/IconPicker.js +194 -0
  50. package/dist/components/Input/Input.css +38 -0
  51. package/dist/components/Input/Input.d.ts +10 -1
  52. package/dist/components/Input/Input.js +66 -5
  53. package/dist/components/Kanban/Kanban.css +4 -0
  54. package/dist/components/Kbd/Kbd.css +66 -0
  55. package/dist/components/Kbd/Kbd.d.ts +32 -0
  56. package/dist/components/Kbd/Kbd.js +40 -0
  57. package/dist/components/List/List.css +136 -0
  58. package/dist/components/List/List.d.ts +82 -0
  59. package/dist/components/List/List.js +53 -0
  60. package/dist/components/List/ListItem.d.ts +85 -0
  61. package/dist/components/List/ListItem.js +81 -0
  62. package/dist/components/Modal/Modal.css +80 -0
  63. package/dist/components/Modal/Modal.d.ts +33 -6
  64. package/dist/components/Modal/Modal.js +101 -6
  65. package/dist/components/MultiSelect/MultiSelect.css +8 -0
  66. package/dist/components/MultiSelect/MultiSelect.js +10 -1
  67. package/dist/components/OrgChart/OrgChart.css +149 -0
  68. package/dist/components/OrgChart/OrgChart.d.ts +83 -0
  69. package/dist/components/OrgChart/OrgChart.js +297 -0
  70. package/dist/components/OtpInput/OtpInput.css +93 -0
  71. package/dist/components/OtpInput/OtpInput.d.ts +60 -0
  72. package/dist/components/OtpInput/OtpInput.js +215 -0
  73. package/dist/components/PhoneInput/PhoneInput.css +8 -0
  74. package/dist/components/Popover/Popover.d.ts +7 -0
  75. package/dist/components/Popover/Popover.js +11 -1
  76. package/dist/components/RichTextEditor/RichTextEditor.css +203 -0
  77. package/dist/components/RichTextEditor/RichTextEditor.d.ts +83 -0
  78. package/dist/components/RichTextEditor/RichTextEditor.js +494 -0
  79. package/dist/components/SegmentedControl/SegmentedControl.js +7 -2
  80. package/dist/components/Select/Select.css +70 -0
  81. package/dist/components/Select/Select.d.ts +12 -0
  82. package/dist/components/Select/Select.js +59 -4
  83. package/dist/components/Stack/Stack.css +49 -0
  84. package/dist/components/Stack/Stack.d.ts +65 -7
  85. package/dist/components/Stack/Stack.js +30 -2
  86. package/dist/components/StatCard/StatCard.css +73 -0
  87. package/dist/components/StatCard/StatCard.d.ts +17 -0
  88. package/dist/components/StatCard/StatCard.js +4 -1
  89. package/dist/components/Tabs/Tab.d.ts +15 -0
  90. package/dist/components/Tabs/Tab.js +30 -1
  91. package/dist/components/Tabs/Tabs.css +132 -0
  92. package/dist/components/Tabs/Tabs.d.ts +7 -0
  93. package/dist/components/Tabs/Tabs.js +13 -2
  94. package/dist/components/Tag/Tag.css +85 -2
  95. package/dist/components/Tag/Tag.d.ts +13 -6
  96. package/dist/components/Tag/Tag.js +1 -0
  97. package/dist/components/Text/Text.js +2 -2
  98. package/dist/components/Textarea/Textarea.css +8 -0
  99. package/dist/components/TimePicker/TimePicker.css +8 -0
  100. package/dist/components/Tooltip/Tooltip.css +25 -0
  101. package/dist/components/Tooltip/Tooltip.d.ts +11 -0
  102. package/dist/components/Tooltip/Tooltip.js +18 -3
  103. package/dist/index.d.ts +25 -0
  104. package/dist/index.js +14 -0
  105. package/dist/teste/AILabel.test.d.ts +1 -0
  106. package/dist/teste/AILabel.test.js +33 -0
  107. package/dist/teste/AccordionConteudoLivre.test.d.ts +1 -0
  108. package/dist/teste/AccordionConteudoLivre.test.js +29 -0
  109. package/dist/teste/AtributosRepassados.test.d.ts +1 -0
  110. package/dist/teste/AtributosRepassados.test.js +52 -0
  111. package/dist/teste/AttachmentCardIA.test.d.ts +1 -0
  112. package/dist/teste/AttachmentCardIA.test.js +89 -0
  113. package/dist/teste/AvatarGroupOverlap.test.d.ts +1 -0
  114. package/dist/teste/AvatarGroupOverlap.test.js +56 -0
  115. package/dist/teste/BadgeTag.test.d.ts +1 -0
  116. package/dist/teste/BadgeTag.test.js +42 -0
  117. package/dist/teste/BoxItemFlex.test.d.ts +1 -0
  118. package/dist/teste/BoxItemFlex.test.js +54 -0
  119. package/dist/teste/BoxLayout.test.d.ts +1 -0
  120. package/dist/teste/BoxLayout.test.js +35 -0
  121. package/dist/teste/Button.test.d.ts +1 -0
  122. package/dist/teste/Button.test.js +27 -0
  123. package/dist/teste/Calendar.test.d.ts +1 -0
  124. package/dist/teste/Calendar.test.js +221 -0
  125. package/dist/teste/ChipsXs.test.d.ts +1 -0
  126. package/dist/teste/ChipsXs.test.js +31 -0
  127. package/dist/teste/Coachmark.test.d.ts +1 -0
  128. package/dist/teste/Coachmark.test.js +149 -0
  129. package/dist/teste/ColorPicker.test.d.ts +1 -0
  130. package/dist/teste/ColorPicker.test.js +132 -0
  131. package/dist/teste/DataTableCelulaLivre.test.d.ts +1 -0
  132. package/dist/teste/DataTableCelulaLivre.test.js +76 -0
  133. package/dist/teste/DataTableDocumento.test.d.ts +1 -0
  134. package/dist/teste/DataTableDocumento.test.js +92 -0
  135. package/dist/teste/DatePicker.test.js +23 -0
  136. package/dist/teste/FileInputTrigger.test.d.ts +1 -0
  137. package/dist/teste/FileInputTrigger.test.js +53 -0
  138. package/dist/teste/IconPicker.test.d.ts +1 -0
  139. package/dist/teste/IconPicker.test.js +130 -0
  140. package/dist/teste/InputMascaraEAfins.test.d.ts +1 -0
  141. package/dist/teste/InputMascaraEAfins.test.js +99 -0
  142. package/dist/teste/KbdCodeBlock.test.d.ts +1 -0
  143. package/dist/teste/KbdCodeBlock.test.js +95 -0
  144. package/dist/teste/List.test.d.ts +1 -0
  145. package/dist/teste/List.test.js +153 -0
  146. package/dist/teste/ModalVariantes.test.d.ts +1 -0
  147. package/dist/teste/ModalVariantes.test.js +151 -0
  148. package/dist/teste/NomeAcessivelSsr.test.d.ts +1 -0
  149. package/dist/teste/NomeAcessivelSsr.test.js +88 -0
  150. package/dist/teste/OrgChart.test.d.ts +1 -0
  151. package/dist/teste/OrgChart.test.js +162 -0
  152. package/dist/teste/OtpInput.test.d.ts +1 -0
  153. package/dist/teste/OtpInput.test.js +143 -0
  154. package/dist/teste/PopoverMaxHeight.test.d.ts +1 -0
  155. package/dist/teste/PopoverMaxHeight.test.js +38 -0
  156. package/dist/teste/RichTextEditor.test.d.ts +1 -0
  157. package/dist/teste/RichTextEditor.test.js +287 -0
  158. package/dist/teste/SelectPlacementFiltro.test.d.ts +1 -0
  159. package/dist/teste/SelectPlacementFiltro.test.js +88 -0
  160. package/dist/teste/Stack.test.d.ts +1 -0
  161. package/dist/teste/Stack.test.js +57 -0
  162. package/dist/teste/StatCardRotuloTopo.test.d.ts +1 -0
  163. package/dist/teste/StatCardRotuloTopo.test.js +34 -0
  164. package/dist/teste/TabsContadorFechavel.test.d.ts +1 -0
  165. package/dist/teste/TabsContadorFechavel.test.js +79 -0
  166. package/dist/teste/TooltipDark.test.d.ts +1 -0
  167. package/dist/teste/TooltipDark.test.js +31 -0
  168. package/dist/utils/calendario.d.ts +28 -0
  169. package/dist/utils/calendario.js +73 -0
  170. package/dist/utils/html-seguro.d.ts +27 -0
  171. package/dist/utils/html-seguro.js +97 -0
  172. package/dist/utils/paleta-de-cores.d.ts +26 -0
  173. package/dist/utils/paleta-de-cores.js +10 -0
  174. package/dist/utils/texto.d.ts +5 -0
  175. package/dist/utils/texto.js +5 -0
  176. package/package.json +3 -3
  177. package/src/index.ts +26 -0
  178. package/src/teste/AILabel.test.tsx +41 -0
  179. package/src/teste/AccordionConteudoLivre.test.tsx +39 -0
  180. package/src/teste/AtributosRepassados.test.tsx +73 -0
  181. package/src/teste/AttachmentCardIA.test.tsx +126 -0
  182. package/src/teste/AvatarGroupOverlap.test.tsx +74 -0
  183. package/src/teste/BadgeTag.test.tsx +64 -0
  184. package/src/teste/BoxItemFlex.test.tsx +81 -0
  185. package/src/teste/BoxLayout.test.tsx +50 -0
  186. package/src/teste/Button.test.tsx +39 -0
  187. package/src/teste/Calendar.test.tsx +282 -0
  188. package/src/teste/ChipsXs.test.tsx +41 -0
  189. package/src/teste/Coachmark.test.tsx +198 -0
  190. package/src/teste/ColorPicker.test.tsx +153 -0
  191. package/src/teste/DataTableCelulaLivre.test.tsx +103 -0
  192. package/src/teste/DataTableDocumento.test.tsx +102 -0
  193. package/src/teste/DatePicker.test.tsx +38 -0
  194. package/src/teste/FileInputTrigger.test.tsx +89 -0
  195. package/src/teste/IconPicker.test.tsx +145 -0
  196. package/src/teste/InputMascaraEAfins.test.tsx +124 -0
  197. package/src/teste/KbdCodeBlock.test.tsx +106 -0
  198. package/src/teste/List.test.tsx +269 -0
  199. package/src/teste/ModalVariantes.test.tsx +173 -0
  200. package/src/teste/NomeAcessivelSsr.test.tsx +110 -0
  201. package/src/teste/OrgChart.test.tsx +183 -0
  202. package/src/teste/OtpInput.test.tsx +163 -0
  203. package/src/teste/PopoverMaxHeight.test.tsx +47 -0
  204. package/src/teste/RichTextEditor.test.tsx +329 -0
  205. package/src/teste/SelectPlacementFiltro.test.tsx +110 -0
  206. package/src/teste/Stack.test.tsx +80 -0
  207. package/src/teste/StatCardRotuloTopo.test.tsx +44 -0
  208. package/src/teste/TabsContadorFechavel.test.tsx +144 -0
  209. package/src/teste/TooltipDark.test.tsx +51 -0
  210. package/src/utils/calendario.ts +78 -0
  211. package/src/utils/html-seguro.ts +94 -0
  212. package/src/utils/paleta-de-cores.ts +34 -0
  213. package/src/utils/texto.ts +5 -0
@@ -8,6 +8,36 @@
8
8
  font-family: var(--umds-semantic-font-family-base);
9
9
  }
10
10
 
11
+ /* ============================
12
+ Barra: o tablist e, com onAdd, o botão "+" (fora do tablist)
13
+ ============================ */
14
+ .umds-tabs__bar {
15
+ display: flex;
16
+ align-items: stretch;
17
+ min-width: 0;
18
+ }
19
+
20
+ .umds-tabs__bar .umds-tabs__list {
21
+ flex: 1 1 auto;
22
+ min-width: 0;
23
+ }
24
+
25
+ /* Com "+", a lista não estica: o botão fica logo depois da última aba. */
26
+ .umds-tabs__bar--com-add .umds-tabs__list {
27
+ flex: 0 1 auto;
28
+ }
29
+
30
+ /* Envoltório de cada aba (presentation). Sem × é transparente para o layout;
31
+ com × vira a âncora do botão de fechar. */
32
+ .umds-tabs__item {
33
+ display: contents;
34
+ }
35
+
36
+ .umds-tabs__item--closable {
37
+ display: flex;
38
+ position: relative;
39
+ }
40
+
11
41
  /* ============================
12
42
  Tab List (tablist)
13
43
  ============================ */
@@ -150,3 +180,105 @@
150
180
  .umds-tabs-content {
151
181
  width: 100%;
152
182
  }
183
+
184
+ /* ============================
185
+ Contador em pílula (count)
186
+ Cinza nas abas inativas, azul na ativa. 18px de altura (16 + 2, dois degraus
187
+ do DS somados; sem token próprio).
188
+ ============================ */
189
+ .umds-tabs__count {
190
+ display: inline-flex;
191
+ align-items: center;
192
+ justify-content: center;
193
+ box-sizing: border-box;
194
+ height: calc(var(--umds-primitive-spacing-xxxs) + var(--umds-primitive-spacing-micro)); /* 18px */
195
+ min-width: calc(var(--umds-primitive-spacing-xxxs) + var(--umds-primitive-spacing-micro)); /* 18px */
196
+ padding: 0 var(--umds-primitive-spacing-quarck);
197
+ border-radius: var(--umds-primitive-border-radius-pill);
198
+ background-color: var(--umds-semantic-color-neutral-light-medium);
199
+ color: var(--umds-semantic-color-neutral-dark-down);
200
+ font-size: var(--umds-primitive-font-size-xxxs); /* 12px */
201
+ font-weight: var(--umds-primitive-font-weight-semibold);
202
+ line-height: 1;
203
+ }
204
+
205
+ .umds-tabs__tab--selected .umds-tabs__count {
206
+ background-color: var(--umds-semantic-color-primary-pure);
207
+ color: var(--umds-semantic-color-neutral-light-pure);
208
+ }
209
+
210
+ .umds-tabs__tab--disabled .umds-tabs__count {
211
+ background-color: var(--umds-semantic-color-neutral-light-up);
212
+ color: var(--umds-semantic-color-neutral-dark-up);
213
+ }
214
+
215
+ /* ============================
216
+ Aba fechável (closable): × em botão próprio, sobre a folga direita da aba
217
+ ============================ */
218
+ .umds-tabs__tab--closable {
219
+ /* folga para o ×: 8 de margem + 20 do botão + 4 de respiro */
220
+ padding-right: var(--umds-primitive-spacing-xs); /* 32px */
221
+ }
222
+
223
+ .umds-tabs__close {
224
+ position: absolute;
225
+ top: 50%;
226
+ right: var(--umds-primitive-spacing-nano);
227
+ transform: translateY(-50%);
228
+ display: inline-flex;
229
+ align-items: center;
230
+ justify-content: center;
231
+ width: 20px; /* círculo de 20px: o glifo é de 10px */
232
+ height: 20px;
233
+ padding: 0;
234
+ border: none;
235
+ border-radius: var(--umds-primitive-border-radius-circular);
236
+ background: transparent;
237
+ color: var(--umds-semantic-color-neutral-dark-down);
238
+ cursor: pointer;
239
+ }
240
+
241
+ .umds-tabs__close:hover:not(:disabled) {
242
+ background-color: var(--umds-semantic-color-neutral-light-medium);
243
+ color: var(--umds-semantic-color-neutral-dark-pure);
244
+ }
245
+
246
+ .umds-tabs__close:focus-visible {
247
+ outline: 2px solid var(--umds-semantic-color-primary-pure);
248
+ outline-offset: 1px;
249
+ }
250
+
251
+ .umds-tabs__close:disabled {
252
+ cursor: not-allowed;
253
+ color: var(--umds-semantic-color-neutral-dark-up);
254
+ }
255
+
256
+ /* ============================
257
+ Botão "+" (onAdd)
258
+ ============================ */
259
+ .umds-tabs__add {
260
+ display: inline-flex;
261
+ align-items: center;
262
+ justify-content: center;
263
+ align-self: center;
264
+ flex-shrink: 0;
265
+ width: var(--umds-primitive-spacing-xs); /* 32px */
266
+ height: var(--umds-primitive-spacing-xs);
267
+ margin-left: var(--umds-primitive-spacing-quarck);
268
+ padding: 0;
269
+ border: none;
270
+ border-radius: var(--umds-primitive-border-radius-sm);
271
+ background: transparent;
272
+ color: var(--umds-semantic-color-neutral-dark-down);
273
+ cursor: pointer;
274
+ }
275
+
276
+ .umds-tabs__add:hover {
277
+ background-color: var(--umds-semantic-color-neutral-light-medium);
278
+ color: var(--umds-semantic-color-neutral-dark-pure);
279
+ }
280
+
281
+ .umds-tabs__add:focus-visible {
282
+ outline: 2px solid var(--umds-semantic-color-primary-pure);
283
+ outline-offset: 2px;
284
+ }
@@ -23,6 +23,13 @@ export interface TabsProps {
23
23
  * como gerar um id compartilhado automaticamente).
24
24
  */
25
25
  id?: string;
26
+ /**
27
+ * Mostra o botão "+" depois da última aba (abrir nova aba, como no navegador)
28
+ * e o chama com `onAdd`. O botão fica fora do `tablist`.
29
+ */
30
+ onAdd?: (event?: any) => void;
31
+ /** Nome acessível do botão "+". Troque para traduzir. @default 'Adicionar aba' */
32
+ addLabel?: string;
26
33
  /** Classes CSS adicionais */
27
34
  className?: string;
28
35
  /** Subcomponentes Tab */
@@ -1,15 +1,26 @@
1
1
  "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import './Tabs.css';
4
+ import { faPlus } from "@fortawesome/free-solid-svg-icons";
5
+ import Icon from "../Icon/Icon";
4
6
  import TabsContext from "./tabs.context";
5
7
  function Tabs(props) {
6
8
  function classes() {
7
9
  return ["umds-tabs", props.className].filter(Boolean).join(" ");
8
10
  }
11
+ function barClasses() {
12
+ return ["umds-tabs__bar", props.onAdd ? "umds-tabs__bar--com-add" : ""]
13
+ .filter(Boolean)
14
+ .join(" ");
15
+ }
16
+ function handleAdd(event) {
17
+ if (typeof props.onAdd === "function")
18
+ props.onAdd(event);
19
+ }
9
20
  return (_jsx(TabsContext.Provider, { value: {
10
21
  value: props.value,
11
22
  onChange: props.onChange,
12
23
  tabsId: props.id,
13
- }, children: _jsx("div", { className: classes(), children: _jsx("div", { role: "tablist", className: "umds-tabs__list", "aria-label": props.ariaLabel, children: props.children }) }) }));
24
+ }, children: _jsx("div", { className: classes(), children: _jsxs("div", { className: barClasses(), children: [_jsx("div", { role: "tablist", className: "umds-tabs__list", "aria-label": props.ariaLabel, children: props.children }), props.onAdd ? (_jsx("button", { type: "button", className: "umds-tabs__add", "aria-label": props.addLabel || "Adicionar aba", onClick: (event) => handleAdd(event), children: _jsx(Icon, { variant: "inherit", customSize: "12px", icon: faPlus }) })) : null] }) }) }));
14
25
  }
15
26
  export default Tabs;
@@ -1,7 +1,8 @@
1
1
  /* ============================================
2
2
  Tag Component
3
- Aparências (appearance): outlined, solid
4
- Tamanhos: sm, md, lg
3
+ Aparências (appearance): outlined, solid, soft
4
+ Tamanhos: xs, sm, md, lg
5
+ Modificador: pill
5
6
  ============================================ */
6
7
 
7
8
  .umds-tag {
@@ -84,6 +85,26 @@
84
85
 
85
86
  /* ── Tamanhos ── */
86
87
 
88
+ /* xs: 18px de altura (12 de fonte com line-height 1 + 2 + 2 de padding + 2 de
89
+ borda). O alvo de toque do × e dos ícones clicáveis continua em 24px, mas a
90
+ margem negativa devolve o excesso, então a tag não cresce. */
91
+ .umds-tag--xs {
92
+ gap: var(--umds-primitive-spacing-quarck);
93
+ padding: var(--umds-primitive-spacing-micro) var(--umds-primitive-spacing-nano);
94
+ border-radius: var(--umds-primitive-border-radius-sm);
95
+ font-size: var(--umds-primitive-font-size-xxxs); /* 12px */
96
+ line-height: 1;
97
+ }
98
+
99
+ .umds-tag--xs .umds-icon {
100
+ font-size: var(--umds-primitive-font-size-xxxs); /* 12px */
101
+ }
102
+
103
+ .umds-tag--xs .umds-tag__close,
104
+ .umds-tag--xs .umds-tag__icon--clickable {
105
+ margin: calc(-1 * var(--umds-primitive-spacing-nano)) 0;
106
+ }
107
+
87
108
  .umds-tag--sm {
88
109
  gap: var(--umds-primitive-spacing-quarck);
89
110
  padding: var(--umds-primitive-spacing-quarck) var(--umds-primitive-spacing-nano); /* 3px: candidato a novo token */
@@ -132,6 +153,38 @@
132
153
  border-color: var(--umds-semantic-color-primary-dark);
133
154
  }
134
155
 
156
+ /* ── Aparência: Soft (fundo claro da cor, sem contorno) ── */
157
+ .umds-tag--soft {
158
+ background-color: var(--umds-semantic-color-neutral-light-medium);
159
+ border-color: transparent;
160
+ color: var(--umds-semantic-color-neutral-dark-down);
161
+ }
162
+
163
+ .umds-tag--soft.umds-tag--primary {
164
+ background-color: var(--umds-semantic-color-primary-light);
165
+ color: var(--umds-semantic-color-primary-pure);
166
+ }
167
+
168
+ .umds-tag--soft.umds-tag--positive {
169
+ background-color: var(--umds-semantic-color-feedback-positive-light);
170
+ color: var(--umds-semantic-color-feedback-positive-dark);
171
+ }
172
+
173
+ .umds-tag--soft.umds-tag--negative {
174
+ background-color: var(--umds-semantic-color-feedback-negative-light);
175
+ color: var(--umds-semantic-color-feedback-negative-dark);
176
+ }
177
+
178
+ .umds-tag--soft.umds-tag--info {
179
+ background-color: var(--umds-semantic-color-feedback-info-light);
180
+ color: var(--umds-semantic-color-feedback-info-dark);
181
+ }
182
+
183
+ /* ── Formato pílula (depois dos tamanhos, para vencer o raio deles) ── */
184
+ .umds-tag--pill {
185
+ border-radius: var(--umds-primitive-border-radius-pill);
186
+ }
187
+
135
188
  /* ── Variantes semânticas (paridade com o Badge) ──
136
189
  neutral (default) não gera classe — visual histórico intacto. */
137
190
  .umds-tag--outlined.umds-tag--primary {
@@ -174,6 +227,36 @@
174
227
 
175
228
  /* solid+primary = visual default do solid (primary-pure) — sem regra extra. */
176
229
 
230
+ /* ── Variante new (novidade, amarelo) ──
231
+ O DS não tem token semântico de amarelo: usa os primitivos de amarelo e o
232
+ cinza escuro, fixos nos temas (candidato a token semântico de destaque). */
233
+ .umds-tag--new {
234
+ font-weight: var(--umds-primitive-font-weight-bold);
235
+ }
236
+
237
+ .umds-tag--outlined.umds-tag--new {
238
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
239
+ border-color: var(--umds-primitive-yellow-pure);
240
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
241
+ color: var(--umds-primitive-yellow-dark);
242
+ }
243
+
244
+ .umds-tag--solid.umds-tag--new {
245
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
246
+ background-color: var(--umds-primitive-yellow-medium);
247
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
248
+ border-color: var(--umds-primitive-yellow-medium);
249
+ /* stylelint-disable-next-line 1ds/cor-por-token -- par fixo do amarelo: o semântico inverte no tema escuro e perderia o contraste */
250
+ color: var(--umds-primitive-gray-darkest);
251
+ }
252
+
253
+ .umds-tag--soft.umds-tag--new {
254
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
255
+ background-color: var(--umds-primitive-yellow-light);
256
+ /* stylelint-disable-next-line 1ds/cor-por-token -- o DS não tem token semântico de amarelo (candidato a novo token) */
257
+ color: var(--umds-primitive-yellow-dark);
258
+ }
259
+
177
260
  /* ── Disabled ── */
178
261
  .umds-tag--disabled {
179
262
  opacity: 0.5;
@@ -1,7 +1,7 @@
1
1
  import './Tag.css';
2
2
  /**
3
3
  * Componente Tag para exibir rótulos, categorias e seleções.
4
- * Suporta aparências outlined/solid, 3 tamanhos e ícones opcionais.
4
+ * Suporta aparências outlined/solid/soft, 4 tamanhos, formato pílula e ícones opcionais.
5
5
  * Ideal para uso em multi-select, filtros e categorização.
6
6
  * @quandoUsar Rótulo ESTÁTICO que classifica ou dá status a um item: categoria de um processo, estado ("Em andamento"), prioridade. É leitura, não controle.
7
7
  * @quandoNaoUsar Quando o usuário pode remover o item ou alternar a seleção — use `Chips`. Para contagem numérica sobreposta a um ícone, use `Badge`.
@@ -16,22 +16,29 @@ export interface TagProps {
16
16
  */
17
17
  label?: string;
18
18
  /**
19
- * Estilo visual da tag.
19
+ * Estilo visual da tag. `soft` é o fundo claro da cor da variante, sem
20
+ * contorno (setores, perfil, "Publicado", "Dado simulado").
20
21
  * @default 'outlined'
21
22
  */
22
- appearance?: "outlined" | "solid";
23
+ appearance?: "outlined" | "solid" | "soft";
24
+ /**
25
+ * Formato de pílula (cantos totalmente arredondados).
26
+ * @default false
27
+ */
28
+ pill?: boolean;
23
29
  /**
24
30
  * Variante semântica de cor (paridade com o Badge) — para tag de STATUS
25
31
  * (achado mobile/prefeitura: sem isso, status exigia trocar para Badge).
26
32
  * 'neutral' mantém o visual atual.
27
33
  * @default 'neutral'
28
34
  */
29
- variant?: "neutral" | "primary" | "positive" | "negative" | "info";
35
+ variant?: "neutral" | "primary" | "positive" | "negative" | "info" | "new";
30
36
  /**
31
- * Tamanho da tag.
37
+ * Tamanho da tag. `xs` é a compacta de 18px (`line-height: 1`), para linha
38
+ * de lista e card; `sm` continua com 27px.
32
39
  * @default 'md'
33
40
  */
34
- size?: "sm" | "md" | "lg";
41
+ size?: "xs" | "sm" | "md" | "lg";
35
42
  /**
36
43
  * Ícone Font Awesome exibido à esquerda do label.
37
44
  */
@@ -13,6 +13,7 @@ function Tag(props) {
13
13
  props.variant && props.variant !== "neutral"
14
14
  ? `umds-tag--${props.variant}`
15
15
  : "",
16
+ props.pill ? "umds-tag--pill" : "",
16
17
  props.disabled ? "umds-tag--disabled" : "",
17
18
  props.className,
18
19
  ]
@@ -77,7 +77,7 @@ function Text(props) {
77
77
  .filter(Boolean)
78
78
  .join(" ");
79
79
  }
80
- function style() {
80
+ function estiloInline() {
81
81
  const styles = {};
82
82
  if (props.maxLines) {
83
83
  styles["--umds-text-max-lines"] = String(props.maxLines);
@@ -98,6 +98,6 @@ function Text(props) {
98
98
  }
99
99
  return out;
100
100
  }
101
- return (_jsxs(_Fragment, { children: [elementTag() === "h1" ? (_jsx("h1", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h2" ? (_jsx("h2", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h3" ? (_jsx("h3", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h4" ? (_jsx("h4", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h5" ? (_jsx("h5", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h6" ? (_jsx("h6", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "p" ? (_jsx("p", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "span" ? (_jsx("span", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "label" ? (_jsx("label", { htmlFor: props.forId, id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "div" ? (_jsx("div", { id: props.id, style: style(), ...htmlAttrs(), className: classes(), children: props.children })) : null] }));
101
+ return (_jsxs(_Fragment, { children: [elementTag() === "h1" ? (_jsx("h1", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h2" ? (_jsx("h2", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h3" ? (_jsx("h3", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h4" ? (_jsx("h4", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h5" ? (_jsx("h5", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "h6" ? (_jsx("h6", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "p" ? (_jsx("p", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "span" ? (_jsx("span", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "label" ? (_jsx("label", { htmlFor: props.forId, id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null, elementTag() === "div" ? (_jsx("div", { id: props.id, style: estiloInline(), ...htmlAttrs(), className: classes(), children: props.children })) : null] }));
102
102
  }
103
103
  export default Text;
@@ -128,6 +128,14 @@
128
128
  resize: none;
129
129
  }
130
130
 
131
+ /* Somente leitura não é desabilitado: o texto segue lido e a WCAG 1.4.3 vale
132
+ sem isenção. O placeholder padrão foi calibrado para fundo branco e cai para
133
+ ~4,2:1 sobre o fundo de somente leitura; neutral-dark-down passa 4,5:1 em
134
+ todos os temas (1doc 6,78:1 · 1doc-dark 10,83:1 · alto contraste 16,48:1). */
135
+ .umds-textarea--readonly .umds-textarea__control::placeholder {
136
+ color: var(--umds-semantic-color-neutral-dark-down);
137
+ }
138
+
131
139
  /* Footer (Helper/Error + Counter) */
132
140
  .umds-textarea__footer {
133
141
  display: flex;
@@ -297,6 +297,14 @@
297
297
  border-color: var(--umds-semantic-field-border-default);
298
298
  }
299
299
 
300
+ /* Somente leitura não é desabilitado: o texto segue lido e a WCAG 1.4.3 vale
301
+ sem isenção. O placeholder padrão foi calibrado para fundo branco e cai para
302
+ ~4,2:1 sobre o fundo de somente leitura; neutral-dark-down passa 4,5:1 em
303
+ todos os temas (1doc 6,78:1 · 1doc-dark 10,83:1 · alto contraste 16,48:1). */
304
+ .umds-timepicker--readonly .umds-timepicker__placeholder {
305
+ color: var(--umds-semantic-color-neutral-dark-down);
306
+ }
307
+
300
308
  /* ── Alto contraste ──
301
309
  O traço do painel é neutral-light-medium — #5A5A5A neste tema, 3:1 sobre o
302
310
  preto. As superfícies flutuantes do tema usam a borda branca
@@ -153,6 +153,31 @@
153
153
  bottom: 12px;
154
154
  }
155
155
 
156
+ /* ── variant="dark": balão compacto escuro ──
157
+ background-dark é a superfície invertida do tema (azul-marinho no claro, claro
158
+ no escuro, branco no alto contraste) e neutral-light-pure o texto sobre ela.
159
+ Fonte de 12px (a escala do DS não tem o 11px do CrisDoc). */
160
+ .umds-tooltip__floating--dark {
161
+ max-width: 220px; /* quebra do CrisDoc; maxWidth sobrescreve */
162
+ }
163
+
164
+ .umds-tooltip__bubble--dark {
165
+ padding: var(--umds-primitive-spacing-quarck) var(--umds-primitive-spacing-nano);
166
+ border-radius: var(--umds-primitive-border-radius-xs); /* 4px */
167
+ background-color: var(--umds-semantic-color-background-dark);
168
+ color: var(--umds-semantic-color-neutral-light-pure);
169
+ }
170
+
171
+ .umds-tooltip__bubble--dark .umds-tooltip__title,
172
+ .umds-tooltip__bubble--dark .umds-tooltip__content {
173
+ color: var(--umds-semantic-color-neutral-light-pure);
174
+ }
175
+
176
+ .umds-tooltip__bubble--dark .umds-tooltip__arrow {
177
+ background-color: var(--umds-semantic-color-background-dark);
178
+ border-color: var(--umds-semantic-color-background-dark);
179
+ }
180
+
156
181
  /* ── Alto contraste ──
157
182
  O balão usa neutral-light-pure, que neste tema é preto como a página, e a
158
183
  sombra não aparece: sem traço o balão some. Outline para dentro (não
@@ -13,6 +13,17 @@ export interface TooltipProps {
13
13
  side?: "top" | "bottom" | "left" | "right";
14
14
  /** Alinhamento no eixo cruzado: "center" usa só o `side`; "start"/"end" viram placements compostos (`top-start`, `right-end`…). */
15
15
  align?: "start" | "center" | "end";
16
+ /**
17
+ * Aparência do balão. `dark` é o compacto escuro (fundo `background-dark`,
18
+ * texto `neutral-light-pure`, padding 4/8, raio 4, no máximo 220px de
19
+ * largura): o balão de ícone, sigla e botão de barra de ferramentas. Os dois
20
+ * tokens são o par invertido do tema, então o contraste vale nos claros,
21
+ * escuro e alto contraste.
22
+ * @default 'default'
23
+ */
24
+ variant?: "default" | "dark";
25
+ /** Largura máxima do balão, qualquer valor CSS (`"220px"`, `"20rem"`). Vence o teto de cada variante (280px no padrão, 220px no dark). */
26
+ maxWidth?: string;
16
27
  sideOffset?: number;
17
28
  delayDuration?: number;
18
29
  disabled?: boolean;
@@ -241,13 +241,28 @@ function Tooltip(props) {
241
241
  closeNow();
242
242
  }
243
243
  function floatingStyle() {
244
- return {
244
+ const estilo = {
245
245
  transform: "translate(" + posX + "px, " + posY + "px)",
246
246
  visibility: positioned ? "visible" : "hidden",
247
247
  };
248
+ if (props.maxWidth)
249
+ estilo.maxWidth = props.maxWidth;
250
+ return estilo;
251
+ }
252
+ function floatingClasses() {
253
+ return [
254
+ "umds-tooltip__floating",
255
+ props.variant === "dark" ? "umds-tooltip__floating--dark" : "",
256
+ ]
257
+ .filter(Boolean)
258
+ .join(" ");
248
259
  }
249
260
  function bubbleClasses() {
250
- return ["umds-tooltip__bubble", open ? "umds-tooltip__bubble--open" : ""]
261
+ return [
262
+ "umds-tooltip__bubble",
263
+ props.variant === "dark" ? "umds-tooltip__bubble--dark" : "",
264
+ open ? "umds-tooltip__bubble--open" : "",
265
+ ]
251
266
  .filter(Boolean)
252
267
  .join(" ");
253
268
  }
@@ -300,6 +315,6 @@ function Tooltip(props) {
300
315
  stopKeydownWatch();
301
316
  };
302
317
  }, []);
303
- return (_jsxs("span", { ref: triggerRef, className: ["umds-tooltip", props.className].filter(Boolean).join(" "), onMouseEnter: (event) => handleOpen(), onMouseLeave: (event) => handleClose(event), children: [_jsx(_Fragment, { children: props.children }), _jsxs("span", { className: "umds-tooltip__descricao", "aria-hidden": "true", id: descIdText(), children: [props.title ? _jsx(_Fragment, { children: tituloDescrito() }) : null, props.content ? _jsx(_Fragment, { children: props.content }) : null] }), _jsx(Portal, { children: mounted ? (_jsx("span", { className: "umds-tooltip__floating", ref: floatingRef, style: floatingStyle(), children: _jsxs("span", { role: "tooltip", className: bubbleClasses(), id: bubbleIdText(), "aria-hidden": !open, children: [_jsxs("span", { className: "umds-tooltip__row", children: [props.icon ? (_jsx(Icon, { size: "sm", variant: "inherit", icon: props.icon })) : null, _jsxs("span", { className: "umds-tooltip__text", children: [props.title ? (_jsx("span", { className: "umds-tooltip__title", children: props.title })) : null, props.content ? (_jsx("span", { className: "umds-tooltip__content", children: _jsx(_Fragment, { children: props.content }) })) : null] })] }), _jsx("span", { ref: arrowRef, className: arrowClasses() })] }) })) : null })] }));
318
+ return (_jsxs("span", { ref: triggerRef, className: ["umds-tooltip", props.className].filter(Boolean).join(" "), onMouseEnter: (event) => handleOpen(), onMouseLeave: (event) => handleClose(event), children: [_jsx(_Fragment, { children: props.children }), _jsxs("span", { className: "umds-tooltip__descricao", "aria-hidden": "true", id: descIdText(), children: [props.title ? _jsx(_Fragment, { children: tituloDescrito() }) : null, props.content ? _jsx(_Fragment, { children: props.content }) : null] }), _jsx(Portal, { children: mounted ? (_jsx("span", { ref: floatingRef, className: floatingClasses(), style: floatingStyle(), children: _jsxs("span", { role: "tooltip", className: bubbleClasses(), id: bubbleIdText(), "aria-hidden": !open, children: [_jsxs("span", { className: "umds-tooltip__row", children: [props.icon ? (_jsx(Icon, { size: "sm", variant: "inherit", icon: props.icon })) : null, _jsxs("span", { className: "umds-tooltip__text", children: [props.title ? (_jsx("span", { className: "umds-tooltip__title", children: props.title })) : null, props.content ? (_jsx("span", { className: "umds-tooltip__content", children: _jsx(_Fragment, { children: props.content }) })) : null] })] }), _jsx("span", { ref: arrowRef, className: arrowClasses() })] }) })) : null })] }));
304
319
  }
305
320
  export default Tooltip;
package/dist/index.d.ts CHANGED
@@ -1,10 +1,14 @@
1
1
  export * from "./utils/theme";
2
2
  export * from "./utils/toast";
3
3
  export * from "./utils/density";
4
+ export * from "./utils/paleta-de-cores";
4
5
  export { library } from "@fortawesome/fontawesome-svg-core";
5
6
  export { default as Accordion } from "./components/Accordion/Accordion";
6
7
  export { default as AILabel } from "./components/AILabel/AILabel";
7
8
  export { default as AIContent } from "./components/AIContent/AIContent";
9
+ export { default as Calendar } from "./components/Calendar/Calendar";
10
+ export { default as Coachmark } from "./components/Coachmark/Coachmark";
11
+ export { default as CodeBlock } from "./components/CodeBlock/CodeBlock";
8
12
  export { default as ConfirmAIAction } from "./components/ConfirmAIAction/ConfirmAIAction";
9
13
  export { default as Alert } from "./components/Alert/Alert";
10
14
  export { default as AppHeader } from "./components/AppHeader/AppHeader";
@@ -26,11 +30,13 @@ export { default as Button } from "./components/Button/Button";
26
30
  export { default as Card } from "./components/Card/Card";
27
31
  export { default as Checkbox } from "./components/Checkbox/Checkbox";
28
32
  export { default as Chips } from "./components/Chips/Chips";
33
+ export { default as ColorPicker } from "./components/ColorPicker/ColorPicker";
29
34
  export { default as Combobox } from "./components/Combobox/Combobox";
30
35
  export { default as ConfirmDialog } from "./components/ConfirmDialog/ConfirmDialog";
31
36
  export { default as Container } from "./components/Container/Container";
32
37
  export { default as DataTable } from "./components/DataTable/DataTable";
33
38
  export { default as DatePicker } from "./components/DatePicker/DatePicker";
39
+ export { default as DescriptionList } from "./components/DescriptionList/DescriptionList";
34
40
  export { default as Divider } from "./components/Divider/Divider";
35
41
  export { default as DonutChart } from "./components/Chart/DonutChart";
36
42
  export { default as Drawer } from "./components/Drawer/Drawer";
@@ -39,15 +45,21 @@ export { default as EmptyState } from "./components/EmptyState/EmptyState";
39
45
  export { default as FileInput } from "./components/FileInput/FileInput";
40
46
  export { default as Grid } from "./components/Grid/Grid";
41
47
  export { default as Icon } from "./components/Icon/Icon";
48
+ export { default as IconPicker } from "./components/IconPicker/IconPicker";
42
49
  export { default as Input } from "./components/Input/Input";
43
50
  export { default as Kanban } from "./components/Kanban/Kanban";
44
51
  export { default as KanbanCard } from "./components/Kanban/KanbanCard";
45
52
  export { default as KanbanColumn } from "./components/Kanban/KanbanColumn";
53
+ export { default as Kbd } from "./components/Kbd/Kbd";
46
54
  export { default as Link } from "./components/Link/Link";
47
55
  export { default as LineChart } from "./components/Chart/LineChart";
56
+ export { default as List } from "./components/List/List";
57
+ export { default as ListItem } from "./components/List/ListItem";
48
58
  export { default as Logo } from "./components/Logo/Logo";
49
59
  export { default as Modal } from "./components/Modal/Modal";
50
60
  export { default as MultiSelect } from "./components/MultiSelect/MultiSelect";
61
+ export { default as OrgChart } from "./components/OrgChart/OrgChart";
62
+ export { default as OtpInput } from "./components/OtpInput/OtpInput";
51
63
  export { default as PageHeader } from "./components/PageHeader/PageHeader";
52
64
  export { default as Pagination } from "./components/Pagination/Pagination";
53
65
  export { default as PhoneInput } from "./components/PhoneInput/PhoneInput";
@@ -55,6 +67,7 @@ export { default as Podium } from "./components/Podium/Podium";
55
67
  export { default as ProgressBar } from "./components/ProgressBar/ProgressBar";
56
68
  export { default as Radio } from "./components/Radio/Radio";
57
69
  export { default as RadioGroup } from "./components/Radio/RadioGroup";
70
+ export { default as RichTextEditor } from "./components/RichTextEditor/RichTextEditor";
58
71
  export { default as SegmentedControl } from "./components/SegmentedControl/SegmentedControl";
59
72
  export { default as Select } from "./components/Select/Select";
60
73
  export { default as SidePanel } from "./components/SidePanel/SidePanel";
@@ -85,6 +98,9 @@ export { default as Tree } from "./components/Tree/Tree";
85
98
  export type * from "./components/Accordion/Accordion";
86
99
  export type * from "./components/AILabel/AILabel";
87
100
  export type * from "./components/AIContent/AIContent";
101
+ export type * from "./components/Calendar/Calendar";
102
+ export type * from "./components/Coachmark/Coachmark";
103
+ export type * from "./components/CodeBlock/CodeBlock";
88
104
  export type * from "./components/ConfirmAIAction/ConfirmAIAction";
89
105
  export type * from "./components/Alert/Alert";
90
106
  export type * from "./components/AppHeader/AppHeader";
@@ -106,11 +122,13 @@ export type * from "./components/Button/Button";
106
122
  export type * from "./components/Card/Card";
107
123
  export type * from "./components/Checkbox/Checkbox";
108
124
  export type * from "./components/Chips/Chips";
125
+ export type * from "./components/ColorPicker/ColorPicker";
109
126
  export type * from "./components/Combobox/Combobox";
110
127
  export type * from "./components/ConfirmDialog/ConfirmDialog";
111
128
  export type * from "./components/Container/Container";
112
129
  export type * from "./components/DataTable/DataTable";
113
130
  export type * from "./components/DatePicker/DatePicker";
131
+ export type * from "./components/DescriptionList/DescriptionList";
114
132
  export type * from "./components/Divider/Divider";
115
133
  export type * from "./components/Chart/DonutChart";
116
134
  export type * from "./components/Drawer/Drawer";
@@ -119,15 +137,21 @@ export type * from "./components/EmptyState/EmptyState";
119
137
  export type * from "./components/FileInput/FileInput";
120
138
  export type * from "./components/Grid/Grid";
121
139
  export type * from "./components/Icon/Icon";
140
+ export type * from "./components/IconPicker/IconPicker";
122
141
  export type * from "./components/Input/Input";
123
142
  export type * from "./components/Kanban/Kanban";
124
143
  export type * from "./components/Kanban/KanbanCard";
125
144
  export type * from "./components/Kanban/KanbanColumn";
145
+ export type * from "./components/Kbd/Kbd";
126
146
  export type * from "./components/Link/Link";
127
147
  export type * from "./components/Chart/LineChart";
148
+ export type * from "./components/List/List";
149
+ export type * from "./components/List/ListItem";
128
150
  export type * from "./components/Logo/Logo";
129
151
  export type * from "./components/Modal/Modal";
130
152
  export type * from "./components/MultiSelect/MultiSelect";
153
+ export type * from "./components/OrgChart/OrgChart";
154
+ export type * from "./components/OtpInput/OtpInput";
131
155
  export type * from "./components/PageHeader/PageHeader";
132
156
  export type * from "./components/Pagination/Pagination";
133
157
  export type * from "./components/PhoneInput/PhoneInput";
@@ -135,6 +159,7 @@ export type * from "./components/Podium/Podium";
135
159
  export type * from "./components/ProgressBar/ProgressBar";
136
160
  export type * from "./components/Radio/Radio";
137
161
  export type * from "./components/Radio/RadioGroup";
162
+ export type * from "./components/RichTextEditor/RichTextEditor";
138
163
  export type * from "./components/SegmentedControl/SegmentedControl";
139
164
  export type * from "./components/Select/Select";
140
165
  export type * from "./components/SidePanel/SidePanel";