@drivenets/design-system 0.1.0 → 0.3.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 (399) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/components/ds-alert-banner/ds-alert-banner.d.cts +5 -5
  3. package/dist/components/ds-alert-banner/ds-alert-banner.d.cts.map +1 -1
  4. package/dist/components/ds-alert-banner/ds-alert-banner.d.ts +5 -5
  5. package/dist/components/ds-alert-banner/ds-alert-banner.types.d.cts.map +1 -1
  6. package/dist/components/ds-avatar/ds-avatar.cjs +98 -0
  7. package/dist/components/ds-avatar/ds-avatar.d.cts +12 -0
  8. package/dist/components/ds-avatar/ds-avatar.d.cts.map +1 -0
  9. package/dist/components/ds-avatar/ds-avatar.d.ts +12 -0
  10. package/dist/components/ds-avatar/ds-avatar.d.ts.map +1 -0
  11. package/dist/components/ds-avatar/ds-avatar.js +97 -0
  12. package/dist/components/ds-avatar/ds-avatar.js.map +1 -0
  13. package/dist/components/ds-avatar/ds-avatar.module.cjs +17 -0
  14. package/dist/components/ds-avatar/ds-avatar.module.js +17 -0
  15. package/dist/components/ds-avatar/ds-avatar.module.js.map +1 -0
  16. package/dist/components/ds-avatar/ds-avatar.types.d.cts +44 -0
  17. package/dist/components/ds-avatar/ds-avatar.types.d.cts.map +1 -0
  18. package/dist/components/ds-avatar/ds-avatar.types.d.ts +44 -0
  19. package/dist/components/ds-avatar/ds-avatar.types.d.ts.map +1 -0
  20. package/dist/components/ds-avatar/index.cjs +1 -0
  21. package/dist/components/ds-avatar/index.d.ts +2 -0
  22. package/dist/components/ds-avatar/index.js +1 -0
  23. package/dist/components/ds-avatar-group/ds-avatar-group.cjs +93 -0
  24. package/dist/components/ds-avatar-group/ds-avatar-group.d.cts +12 -0
  25. package/dist/components/ds-avatar-group/ds-avatar-group.d.cts.map +1 -0
  26. package/dist/components/ds-avatar-group/ds-avatar-group.d.ts +12 -0
  27. package/dist/components/ds-avatar-group/ds-avatar-group.d.ts.map +1 -0
  28. package/dist/components/ds-avatar-group/ds-avatar-group.js +92 -0
  29. package/dist/components/ds-avatar-group/ds-avatar-group.js.map +1 -0
  30. package/dist/components/ds-avatar-group/ds-avatar-group.module.cjs +19 -0
  31. package/dist/components/ds-avatar-group/ds-avatar-group.module.js +19 -0
  32. package/dist/components/ds-avatar-group/ds-avatar-group.module.js.map +1 -0
  33. package/dist/components/ds-avatar-group/ds-avatar-group.types.d.cts +31 -0
  34. package/dist/components/ds-avatar-group/ds-avatar-group.types.d.cts.map +1 -0
  35. package/dist/components/ds-avatar-group/ds-avatar-group.types.d.ts +32 -0
  36. package/dist/components/ds-avatar-group/ds-avatar-group.types.d.ts.map +1 -0
  37. package/dist/components/ds-avatar-group/index.cjs +1 -0
  38. package/dist/components/ds-avatar-group/index.d.ts +2 -0
  39. package/dist/components/ds-avatar-group/index.js +1 -0
  40. package/dist/components/ds-button/ds-button.d.cts +2 -2
  41. package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.cjs +23 -24
  42. package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.js +23 -24
  43. package/dist/components/ds-button/versions/ds-button-legacy/ds-button-legacy.js.map +1 -1
  44. package/dist/components/ds-button/versions/ds-button-new/ds-button-new.cjs +24 -25
  45. package/dist/components/ds-button/versions/ds-button-new/ds-button-new.js +24 -25
  46. package/dist/components/ds-button/versions/ds-button-new/ds-button-new.js.map +1 -1
  47. package/dist/components/ds-chip/ds-chip.cjs +2 -1
  48. package/dist/components/ds-chip/ds-chip.d.cts +2 -1
  49. package/dist/components/ds-chip/ds-chip.d.cts.map +1 -1
  50. package/dist/components/ds-chip/ds-chip.d.ts +2 -1
  51. package/dist/components/ds-chip/ds-chip.d.ts.map +1 -1
  52. package/dist/components/ds-chip/ds-chip.js +2 -1
  53. package/dist/components/ds-chip/ds-chip.js.map +1 -1
  54. package/dist/components/ds-chip/ds-chip.types.d.cts +13 -0
  55. package/dist/components/ds-chip/ds-chip.types.d.cts.map +1 -1
  56. package/dist/components/ds-chip/ds-chip.types.d.ts +13 -0
  57. package/dist/components/ds-chip/ds-chip.types.d.ts.map +1 -1
  58. package/dist/components/ds-chip-group/ds-chip-group.cjs +2 -2
  59. package/dist/components/ds-chip-group/ds-chip-group.d.cts +2 -2
  60. package/dist/components/ds-chip-group/ds-chip-group.d.ts +2 -2
  61. package/dist/components/ds-chip-group/ds-chip-group.js +2 -2
  62. package/dist/components/ds-chip-group/ds-chip-group.js.map +1 -1
  63. package/dist/components/ds-chip-group/ds-chip-group.types.d.cts +9 -0
  64. package/dist/components/ds-chip-group/ds-chip-group.types.d.cts.map +1 -1
  65. package/dist/components/ds-chip-group/ds-chip-group.types.d.ts +9 -0
  66. package/dist/components/ds-chip-group/ds-chip-group.types.d.ts.map +1 -1
  67. package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.cjs +1 -0
  68. package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.js +1 -0
  69. package/dist/components/ds-chip-group/hooks/use-chip-row-calculation.js.map +1 -1
  70. package/dist/components/ds-confirmation/ds-confirmation.d.cts +8 -8
  71. package/dist/components/ds-confirmation/ds-confirmation.d.ts +8 -8
  72. package/dist/components/ds-date-input/ds-date-input.d.cts +2 -2
  73. package/dist/components/ds-date-input/ds-date-input.d.ts +2 -2
  74. package/dist/components/ds-date-input/ds-date-input.js +2 -2
  75. package/dist/components/ds-date-input/ds-date-input.js.map +1 -1
  76. package/dist/components/ds-date-input/ds-date-input.module.cjs +22 -22
  77. package/dist/components/ds-date-input/ds-date-input.module.js +22 -22
  78. package/dist/components/ds-date-input/ds-date-input.module.js.map +1 -1
  79. package/dist/components/ds-date-input/ds-date-input.utils.cjs +9 -2
  80. package/dist/components/ds-date-input/ds-date-input.utils.js +9 -2
  81. package/dist/components/ds-date-input/ds-date-input.utils.js.map +1 -1
  82. package/dist/components/ds-drawer/ds-drawer.cjs +3 -3
  83. package/dist/components/ds-drawer/ds-drawer.d.cts +9 -9
  84. package/dist/components/ds-drawer/ds-drawer.d.cts.map +1 -1
  85. package/dist/components/ds-drawer/ds-drawer.d.ts +9 -9
  86. package/dist/components/ds-drawer/ds-drawer.d.ts.map +1 -1
  87. package/dist/components/ds-drawer/ds-drawer.js +5 -5
  88. package/dist/components/ds-drawer/ds-drawer.js.map +1 -1
  89. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.js +3 -3
  90. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.js.map +1 -1
  91. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.cts +1 -1
  92. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.cts.map +1 -1
  93. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts +1 -1
  94. package/dist/components/ds-dropdown-menu/ds-dropdown-menu.types.d.ts.map +1 -1
  95. package/dist/components/ds-expandable-text-input/ds-expandable-text-input.d.cts +2 -2
  96. package/dist/components/ds-expandable-text-input/ds-expandable-text-input.d.ts +2 -2
  97. package/dist/components/ds-file-upload/components/file-upload-item/file-upload-item.cjs +2 -2
  98. package/dist/components/ds-file-upload/components/file-upload-item/file-upload-item.js +2 -2
  99. package/dist/components/ds-file-upload/utils/format-file-size.cjs +1 -1
  100. package/dist/components/ds-file-upload/utils/format-file-size.js +1 -1
  101. package/dist/components/ds-file-upload/utils/format-file-size.js.map +1 -1
  102. package/dist/components/ds-form-control/ds-form-control.cjs +2 -5
  103. package/dist/components/ds-form-control/ds-form-control.d.cts +8 -8
  104. package/dist/components/ds-form-control/ds-form-control.js +2 -5
  105. package/dist/components/ds-form-control/ds-form-control.js.map +1 -1
  106. package/dist/components/ds-loader/ds-loader.cjs +60 -0
  107. package/dist/components/ds-loader/ds-loader.d.cts +15 -0
  108. package/dist/components/ds-loader/ds-loader.d.cts.map +1 -0
  109. package/dist/components/ds-loader/ds-loader.d.ts +15 -0
  110. package/dist/components/ds-loader/ds-loader.d.ts.map +1 -0
  111. package/dist/components/ds-loader/ds-loader.js +59 -0
  112. package/dist/components/ds-loader/ds-loader.js.map +1 -0
  113. package/dist/components/ds-loader/ds-loader.module.cjs +15 -0
  114. package/dist/components/ds-loader/ds-loader.module.js +15 -0
  115. package/dist/components/ds-loader/ds-loader.module.js.map +1 -0
  116. package/dist/components/ds-loader/ds-loader.types.cjs +6 -0
  117. package/dist/components/ds-loader/ds-loader.types.d.cts +27 -0
  118. package/dist/components/ds-loader/ds-loader.types.d.cts.map +1 -0
  119. package/dist/components/ds-loader/ds-loader.types.d.ts +27 -0
  120. package/dist/components/ds-loader/ds-loader.types.d.ts.map +1 -0
  121. package/dist/components/ds-loader/ds-loader.types.js +6 -0
  122. package/dist/components/ds-loader/ds-loader.types.js.map +1 -0
  123. package/dist/components/ds-loader/index.cjs +2 -0
  124. package/dist/components/ds-loader/index.d.ts +2 -0
  125. package/dist/components/ds-loader/index.js +2 -0
  126. package/dist/components/ds-loader/pulsing-icon.cjs +37 -0
  127. package/dist/components/ds-loader/pulsing-icon.js +37 -0
  128. package/dist/components/ds-loader/pulsing-icon.js.map +1 -0
  129. package/dist/components/ds-loader/spinner-icon.cjs +74 -0
  130. package/dist/components/ds-loader/spinner-icon.js +74 -0
  131. package/dist/components/ds-loader/spinner-icon.js.map +1 -0
  132. package/dist/components/ds-modal/ds-modal.cjs +2 -2
  133. package/dist/components/ds-modal/ds-modal.d.cts +8 -8
  134. package/dist/components/ds-modal/ds-modal.d.cts.map +1 -1
  135. package/dist/components/ds-modal/ds-modal.d.ts +8 -8
  136. package/dist/components/ds-modal/ds-modal.d.ts.map +1 -1
  137. package/dist/components/ds-modal/ds-modal.js +2 -2
  138. package/dist/components/ds-modal/ds-modal.js.map +1 -1
  139. package/dist/components/ds-panel/ds-panel.d.cts +2 -2
  140. package/dist/components/ds-panel/ds-panel.d.ts +2 -2
  141. package/dist/components/ds-select/ds-select.cjs +1 -1
  142. package/dist/components/ds-select/ds-select.d.cts +2 -2
  143. package/dist/components/ds-select/ds-select.d.ts +2 -2
  144. package/dist/components/ds-select/ds-select.js +1 -1
  145. package/dist/components/ds-select/ds-select.js.map +1 -1
  146. package/dist/components/ds-skeleton/ds-skeleton-circle.cjs +59 -0
  147. package/dist/components/ds-skeleton/ds-skeleton-circle.d.cts +18 -0
  148. package/dist/components/ds-skeleton/ds-skeleton-circle.d.cts.map +1 -0
  149. package/dist/components/ds-skeleton/ds-skeleton-circle.d.ts +18 -0
  150. package/dist/components/ds-skeleton/ds-skeleton-circle.d.ts.map +1 -0
  151. package/dist/components/ds-skeleton/ds-skeleton-circle.js +58 -0
  152. package/dist/components/ds-skeleton/ds-skeleton-circle.js.map +1 -0
  153. package/dist/components/ds-skeleton/ds-skeleton-rect.cjs +61 -0
  154. package/dist/components/ds-skeleton/ds-skeleton-rect.d.cts +18 -0
  155. package/dist/components/ds-skeleton/ds-skeleton-rect.d.cts.map +1 -0
  156. package/dist/components/ds-skeleton/ds-skeleton-rect.d.ts +18 -0
  157. package/dist/components/ds-skeleton/ds-skeleton-rect.d.ts.map +1 -0
  158. package/dist/components/ds-skeleton/ds-skeleton-rect.js +60 -0
  159. package/dist/components/ds-skeleton/ds-skeleton-rect.js.map +1 -0
  160. package/dist/components/ds-skeleton/ds-skeleton-text.cjs +91 -0
  161. package/dist/components/ds-skeleton/ds-skeleton-text.d.cts +21 -0
  162. package/dist/components/ds-skeleton/ds-skeleton-text.d.cts.map +1 -0
  163. package/dist/components/ds-skeleton/ds-skeleton-text.d.ts +21 -0
  164. package/dist/components/ds-skeleton/ds-skeleton-text.d.ts.map +1 -0
  165. package/dist/components/ds-skeleton/ds-skeleton-text.js +90 -0
  166. package/dist/components/ds-skeleton/ds-skeleton-text.js.map +1 -0
  167. package/dist/components/ds-skeleton/ds-skeleton.cjs +13 -0
  168. package/dist/components/ds-skeleton/ds-skeleton.config.cjs +62 -0
  169. package/dist/components/ds-skeleton/ds-skeleton.config.js +59 -0
  170. package/dist/components/ds-skeleton/ds-skeleton.config.js.map +1 -0
  171. package/dist/components/ds-skeleton/ds-skeleton.d.cts +32 -0
  172. package/dist/components/ds-skeleton/ds-skeleton.d.cts.map +1 -0
  173. package/dist/components/ds-skeleton/ds-skeleton.d.ts +32 -0
  174. package/dist/components/ds-skeleton/ds-skeleton.d.ts.map +1 -0
  175. package/dist/components/ds-skeleton/ds-skeleton.js +14 -0
  176. package/dist/components/ds-skeleton/ds-skeleton.js.map +1 -0
  177. package/dist/components/ds-skeleton/ds-skeleton.module.cjs +15 -0
  178. package/dist/components/ds-skeleton/ds-skeleton.module.js +15 -0
  179. package/dist/components/ds-skeleton/ds-skeleton.module.js.map +1 -0
  180. package/dist/components/ds-skeleton/ds-skeleton.types.cjs +8 -0
  181. package/dist/components/ds-skeleton/ds-skeleton.types.d.cts +91 -0
  182. package/dist/components/ds-skeleton/ds-skeleton.types.d.cts.map +1 -0
  183. package/dist/components/ds-skeleton/ds-skeleton.types.d.ts +93 -0
  184. package/dist/components/ds-skeleton/ds-skeleton.types.d.ts.map +1 -0
  185. package/dist/components/ds-skeleton/ds-skeleton.types.js +7 -0
  186. package/dist/components/ds-skeleton/ds-skeleton.types.js.map +1 -0
  187. package/dist/components/ds-skeleton/index.cjs +5 -0
  188. package/dist/components/ds-skeleton/index.d.ts +5 -0
  189. package/dist/components/ds-skeleton/index.js +5 -0
  190. package/dist/components/ds-smart-tabs/ds-smart-tabs.d.cts +2 -2
  191. package/dist/components/ds-smart-tabs/ds-smart-tabs.d.ts +2 -2
  192. package/dist/components/ds-smart-tabs/ds-smart-tabs.d.ts.map +1 -1
  193. package/dist/components/ds-spinner/ds-spinner.cjs +43 -45
  194. package/dist/components/ds-spinner/ds-spinner.js +43 -45
  195. package/dist/components/ds-spinner/ds-spinner.js.map +1 -1
  196. package/dist/components/ds-stepper/components/ds-step-content.d.cts +2 -2
  197. package/dist/components/ds-stepper/components/ds-step-content.d.ts +2 -2
  198. package/dist/components/ds-stepper/components/ds-step-next-button.d.cts +2 -2
  199. package/dist/components/ds-stepper/components/ds-step-next-button.d.ts +2 -2
  200. package/dist/components/ds-stepper/components/ds-step.d.cts +2 -2
  201. package/dist/components/ds-stepper/components/ds-step.d.ts +2 -2
  202. package/dist/components/ds-stepper/ds-stepper.d.cts +2 -2
  203. package/dist/components/ds-stepper/ds-stepper.d.ts +2 -2
  204. package/dist/components/ds-table/components/core-table/core-table.cjs +82 -185
  205. package/dist/components/ds-table/components/core-table/core-table.js +82 -185
  206. package/dist/components/ds-table/components/core-table/core-table.js.map +1 -1
  207. package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.cjs +61 -72
  208. package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.js +61 -72
  209. package/dist/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.js.map +1 -1
  210. package/dist/components/ds-table/components/ds-table-row/ds-table-row.cjs +80 -81
  211. package/dist/components/ds-table/components/ds-table-row/ds-table-row.js +80 -81
  212. package/dist/components/ds-table/components/ds-table-row/ds-table-row.js.map +1 -1
  213. package/dist/components/ds-table/ds-table.cjs +3 -3
  214. package/dist/components/ds-table/ds-table.d.cts +2 -3
  215. package/dist/components/ds-table/ds-table.d.cts.map +1 -1
  216. package/dist/components/ds-table/ds-table.d.ts +2 -3
  217. package/dist/components/ds-table/ds-table.d.ts.map +1 -1
  218. package/dist/components/ds-table/ds-table.js +3 -3
  219. package/dist/components/ds-table/ds-table.js.map +1 -1
  220. package/dist/components/ds-table/ds-table.types.d.cts +0 -4
  221. package/dist/components/ds-table/ds-table.types.d.cts.map +1 -1
  222. package/dist/components/ds-table/ds-table.types.d.ts +0 -4
  223. package/dist/components/ds-table/ds-table.types.d.ts.map +1 -1
  224. package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.cjs +7 -4
  225. package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.js +7 -4
  226. package/dist/components/ds-table/filters/adapters/create-dual-range-filter-adapter.js.map +1 -1
  227. package/dist/components/ds-table/filters/hooks/use-table-filters.cjs +94 -87
  228. package/dist/components/ds-table/filters/hooks/use-table-filters.js +94 -87
  229. package/dist/components/ds-table/filters/hooks/use-table-filters.js.map +1 -1
  230. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.cjs +37 -0
  231. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.js +36 -0
  232. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.js.map +1 -0
  233. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.cjs +9 -0
  234. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.js +9 -0
  235. package/dist/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.js.map +1 -0
  236. package/dist/components/ds-tabs/components/ds-tabs-content/index.cjs +1 -0
  237. package/dist/components/ds-tabs/components/ds-tabs-content/index.js +1 -0
  238. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.cjs +6 -0
  239. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.js +6 -0
  240. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.js.map +1 -0
  241. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.cjs +41 -0
  242. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.js +40 -0
  243. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.js.map +1 -0
  244. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.cjs +6 -0
  245. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.js +6 -0
  246. package/dist/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.js.map +1 -0
  247. package/dist/components/ds-tabs/components/ds-tabs-list/index.cjs +1 -0
  248. package/dist/components/ds-tabs/components/ds-tabs-list/index.js +1 -0
  249. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.cjs +178 -0
  250. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.js +177 -0
  251. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.js.map +1 -0
  252. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.cjs +15 -0
  253. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.js +15 -0
  254. package/dist/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.js.map +1 -0
  255. package/dist/components/ds-tabs/components/ds-tabs-tab/index.cjs +1 -0
  256. package/dist/components/ds-tabs/components/ds-tabs-tab/index.js +1 -0
  257. package/dist/components/ds-tabs/ds-tabs.cjs +71 -0
  258. package/dist/components/ds-tabs/ds-tabs.d.cts +43 -0
  259. package/dist/components/ds-tabs/ds-tabs.d.cts.map +1 -0
  260. package/dist/components/ds-tabs/ds-tabs.d.ts +43 -0
  261. package/dist/components/ds-tabs/ds-tabs.d.ts.map +1 -0
  262. package/dist/components/ds-tabs/ds-tabs.js +70 -0
  263. package/dist/components/ds-tabs/ds-tabs.js.map +1 -0
  264. package/dist/components/ds-tabs/ds-tabs.module.cjs +6 -0
  265. package/dist/components/ds-tabs/ds-tabs.module.js +6 -0
  266. package/dist/components/ds-tabs/ds-tabs.module.js.map +1 -0
  267. package/dist/components/ds-tabs/ds-tabs.types.d.cts +91 -0
  268. package/dist/components/ds-tabs/ds-tabs.types.d.cts.map +1 -0
  269. package/dist/components/ds-tabs/ds-tabs.types.d.ts +92 -0
  270. package/dist/components/ds-tabs/ds-tabs.types.d.ts.map +1 -0
  271. package/dist/components/ds-tabs/index.cjs +1 -0
  272. package/dist/components/ds-tabs/index.d.ts +2 -0
  273. package/dist/components/ds-tabs/index.js +1 -0
  274. package/dist/components/ds-tag/ds-tag.cjs +254 -0
  275. package/dist/components/ds-tag/ds-tag.d.cts +25 -0
  276. package/dist/components/ds-tag/ds-tag.d.cts.map +1 -0
  277. package/dist/components/ds-tag/ds-tag.d.ts +25 -0
  278. package/dist/components/ds-tag/ds-tag.d.ts.map +1 -0
  279. package/dist/components/ds-tag/ds-tag.js +253 -0
  280. package/dist/components/ds-tag/ds-tag.js.map +1 -0
  281. package/dist/components/ds-tag/ds-tag.module.cjs +17 -0
  282. package/dist/components/ds-tag/ds-tag.module.js +17 -0
  283. package/dist/components/ds-tag/ds-tag.module.js.map +1 -0
  284. package/dist/components/ds-tag/ds-tag.types.d.cts +68 -0
  285. package/dist/components/ds-tag/ds-tag.types.d.cts.map +1 -0
  286. package/dist/components/ds-tag/ds-tag.types.d.ts +68 -0
  287. package/dist/components/ds-tag/ds-tag.types.d.ts.map +1 -0
  288. package/dist/components/ds-tag/index.cjs +1 -0
  289. package/dist/components/ds-tag/index.d.ts +2 -0
  290. package/dist/components/ds-tag/index.js +1 -0
  291. package/dist/components/ds-tag-filter/ds-tag-filter.cjs +325 -0
  292. package/dist/components/ds-tag-filter/ds-tag-filter.d.cts +24 -0
  293. package/dist/components/ds-tag-filter/ds-tag-filter.d.cts.map +1 -0
  294. package/dist/components/ds-tag-filter/ds-tag-filter.d.ts +24 -0
  295. package/dist/components/ds-tag-filter/ds-tag-filter.d.ts.map +1 -0
  296. package/dist/components/ds-tag-filter/ds-tag-filter.js +324 -0
  297. package/dist/components/ds-tag-filter/ds-tag-filter.js.map +1 -0
  298. package/dist/components/ds-tag-filter/ds-tag-filter.module.cjs +17 -0
  299. package/dist/components/ds-tag-filter/ds-tag-filter.module.js +17 -0
  300. package/dist/components/ds-tag-filter/ds-tag-filter.module.js.map +1 -0
  301. package/dist/components/ds-tag-filter/ds-tag-filter.types.d.cts +71 -0
  302. package/dist/components/ds-tag-filter/ds-tag-filter.types.d.cts.map +1 -0
  303. package/dist/components/ds-tag-filter/ds-tag-filter.types.d.ts +72 -0
  304. package/dist/components/ds-tag-filter/ds-tag-filter.types.d.ts.map +1 -0
  305. package/dist/components/ds-tag-filter/hooks/use-tag-overflow-calculation.cjs +137 -0
  306. package/dist/components/ds-tag-filter/hooks/use-tag-overflow-calculation.js +137 -0
  307. package/dist/components/ds-tag-filter/hooks/use-tag-overflow-calculation.js.map +1 -0
  308. package/dist/components/ds-tag-filter/index.cjs +1 -0
  309. package/dist/components/ds-tag-filter/index.d.ts +2 -0
  310. package/dist/components/ds-tag-filter/index.js +1 -0
  311. package/dist/components/ds-tag-filter/utils.cjs +54 -0
  312. package/dist/components/ds-tag-filter/utils.js +52 -0
  313. package/dist/components/ds-tag-filter/utils.js.map +1 -0
  314. package/dist/components/ds-text-input/ds-text-input.js +2 -2
  315. package/dist/components/ds-toggle/ds-toggle.d.cts +2 -2
  316. package/dist/components/ds-toggle/ds-toggle.d.ts +2 -2
  317. package/dist/components/ds-vertical-tabs/ds-vertical-tabs.d.cts +5 -5
  318. package/dist/components/ds-vertical-tabs/ds-vertical-tabs.d.ts +5 -5
  319. package/dist/index.cjs +34 -2
  320. package/dist/index.d.cts +20 -3
  321. package/dist/index.d.ts +28 -4
  322. package/dist/index.js +22 -3
  323. package/dist/index.min.css +1 -1
  324. package/package.json +10 -4
  325. package/src/components/ds-avatar/_mixins.scss +45 -0
  326. package/src/components/ds-avatar/ds-avatar.module.scss +52 -0
  327. package/src/components/ds-avatar/ds-avatar.tsx +42 -0
  328. package/src/components/ds-avatar/ds-avatar.types.ts +41 -0
  329. package/src/components/ds-avatar/index.ts +2 -0
  330. package/src/components/ds-avatar-group/ds-avatar-group.module.scss +70 -0
  331. package/src/components/ds-avatar-group/ds-avatar-group.tsx +51 -0
  332. package/src/components/ds-avatar-group/ds-avatar-group.types.ts +27 -0
  333. package/src/components/ds-avatar-group/index.ts +2 -0
  334. package/src/components/ds-button/versions/ds-button-legacy/ds-button-legacy.tsx +1 -7
  335. package/src/components/ds-button/versions/ds-button-new/ds-button-new.tsx +4 -2
  336. package/src/components/ds-chip/ds-chip.tsx +2 -1
  337. package/src/components/ds-chip/ds-chip.types.tsx +13 -0
  338. package/src/components/ds-chip/index.tsx +8 -0
  339. package/src/components/ds-chip-group/ds-chip-group.tsx +2 -2
  340. package/src/components/ds-chip-group/ds-chip-group.types.ts +8 -0
  341. package/src/components/ds-chip-group/hooks/use-chip-row-calculation.ts +5 -0
  342. package/src/components/ds-chip-group/index.ts +1 -0
  343. package/src/components/ds-date-input/ds-date-input.module.scss +1 -0
  344. package/src/components/ds-date-input/ds-date-input.utils.ts +16 -2
  345. package/src/components/ds-drawer/ds-drawer.tsx +4 -1
  346. package/src/components/ds-dropdown-menu/ds-dropdown-menu.types.tsx +4 -1
  347. package/src/components/ds-file-upload/utils/format-file-size.ts +1 -1
  348. package/src/components/ds-form-control/ds-form-control.tsx +9 -2
  349. package/src/components/ds-loader/ds-loader.module.scss +57 -0
  350. package/src/components/ds-loader/ds-loader.tsx +18 -0
  351. package/src/components/ds-loader/ds-loader.types.ts +24 -0
  352. package/src/components/ds-loader/index.ts +2 -0
  353. package/src/components/ds-loader/pulsing-icon.tsx +17 -0
  354. package/src/components/ds-loader/spinner-icon.tsx +37 -0
  355. package/src/components/ds-modal/ds-modal.tsx +7 -1
  356. package/src/components/ds-select/ds-select.tsx +1 -1
  357. package/src/components/ds-skeleton/ds-skeleton-circle.tsx +29 -0
  358. package/src/components/ds-skeleton/ds-skeleton-rect.tsx +36 -0
  359. package/src/components/ds-skeleton/ds-skeleton-text.tsx +49 -0
  360. package/src/components/ds-skeleton/ds-skeleton.config.ts +68 -0
  361. package/src/components/ds-skeleton/ds-skeleton.module.scss +72 -0
  362. package/src/components/ds-skeleton/ds-skeleton.tsx +9 -0
  363. package/src/components/ds-skeleton/ds-skeleton.types.ts +92 -0
  364. package/src/components/ds-skeleton/index.ts +5 -0
  365. package/src/components/ds-spinner/ds-spinner.tsx +1 -1
  366. package/src/components/ds-table/components/core-table/core-table.tsx +16 -16
  367. package/src/components/ds-table/components/ds-table-bulk-actions/ds-table-bulk-actions.tsx +10 -13
  368. package/src/components/ds-table/components/ds-table-row/ds-table-row.tsx +0 -2
  369. package/src/components/ds-table/ds-table.tsx +6 -5
  370. package/src/components/ds-table/ds-table.types.ts +0 -5
  371. package/src/components/ds-table/filters/adapters/create-dual-range-filter-adapter.tsx +2 -4
  372. package/src/components/ds-table/filters/hooks/use-table-filters.ts +10 -5
  373. package/src/components/ds-table/utils/story-data-generator.ts +7 -7
  374. package/src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.module.scss +18 -0
  375. package/src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.tsx +12 -0
  376. package/src/components/ds-tabs/components/ds-tabs-content/index.ts +1 -0
  377. package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-indicator.module.scss +31 -0
  378. package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.scss +27 -0
  379. package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.tsx +14 -0
  380. package/src/components/ds-tabs/components/ds-tabs-list/index.ts +1 -0
  381. package/src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.scss +242 -0
  382. package/src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.tsx +130 -0
  383. package/src/components/ds-tabs/components/ds-tabs-tab/index.ts +1 -0
  384. package/src/components/ds-tabs/ds-tabs.module.scss +14 -0
  385. package/src/components/ds-tabs/ds-tabs.tsx +46 -0
  386. package/src/components/ds-tabs/ds-tabs.types.ts +97 -0
  387. package/src/components/ds-tabs/index.ts +2 -0
  388. package/src/components/ds-tag/ds-tag.module.scss +112 -0
  389. package/src/components/ds-tag/ds-tag.tsx +124 -0
  390. package/src/components/ds-tag/ds-tag.types.tsx +67 -0
  391. package/src/components/ds-tag/index.tsx +2 -0
  392. package/src/components/ds-tag-filter/ds-tag-filter.module.scss +72 -0
  393. package/src/components/ds-tag-filter/ds-tag-filter.tsx +178 -0
  394. package/src/components/ds-tag-filter/ds-tag-filter.types.ts +68 -0
  395. package/src/components/ds-tag-filter/hooks/use-tag-overflow-calculation.ts +135 -0
  396. package/src/components/ds-tag-filter/index.ts +2 -0
  397. package/src/components/ds-tag-filter/utils.test.ts +401 -0
  398. package/src/components/ds-tag-filter/utils.ts +65 -0
  399. package/src/index.ts +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip.d.ts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAGmD;cAO7C,QAAQ,KAAA,CAAM,GAAG"}
1
+ {"version":3,"file":"ds-chip.d.ts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAGmD;;cAQ7C,QAAQ,KAAA,CAAM,GAAG"}
@@ -9,7 +9,8 @@ import { jsx, jsxs } from "react/jsx-runtime";
9
9
 
10
10
  //#region src/components/ds-chip/ds-chip.tsx
11
11
  /**
12
- * Design system Chip component
12
+ * @deprecated This component is deprecated. Use `DsTag` instead.
13
+ * @see {@link ../ds-tag} for the replacement component.
13
14
  */
14
15
  const DsChip = (t0) => {
15
16
  const $ = c(29);
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip.js","names":["React","classNames","styles","DsChipProps","DsIcon","DsTypography","DsChip","FC","t0","$","_c","ref","label","className","style","t1","onClick","onDelete","size","t2","deleteIcon","selected","t3","t4","undefined","t5","t6","t7","chip","clickable","small","chipClass","t8","event","stopPropagation","handleDeleteClick","t9","event_0","key","preventDefault","handleKeyDown","t10","Ref","HTMLDivElement","t11","t12","t13","t14","t15","t16","deleteButton","t17"],"sources":["../../../src/components/ds-chip/ds-chip.tsx"],"sourcesContent":["import type React from 'react';\nimport classNames from 'classnames';\nimport styles from './ds-chip.module.scss';\nimport type { DsChipProps } from './ds-chip.types';\nimport { DsIcon } from '../ds-icon';\nimport { DsTypography } from '../ds-typography';\n\n/**\n * Design system Chip component\n */\nconst DsChip: React.FC<DsChipProps> = ({\n\tref,\n\tlabel,\n\tclassName,\n\tstyle = {},\n\tonClick,\n\tonDelete,\n\tsize = 'medium',\n\tdeleteIcon,\n\tselected = false,\n}) => {\n\tconst chipClass = classNames(\n\t\tstyles.chip,\n\t\t{\n\t\t\t[styles.clickable]: onClick !== undefined,\n\t\t\t[styles.small]: size === 'small',\n\t\t},\n\t\tclassName,\n\t);\n\n\tconst handleDeleteClick = (event: React.MouseEvent<HTMLElement>) => {\n\t\tevent.stopPropagation();\n\t\tonDelete?.(event);\n\t};\n\n\tconst handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n\t\tif (onDelete && (event.key === 'Backspace' || event.key === 'Delete')) {\n\t\t\tevent.preventDefault();\n\t\t\tonDelete(event);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tref={ref as React.Ref<HTMLDivElement>}\n\t\t\tclassName={chipClass}\n\t\t\tstyle={style}\n\t\t\tonClick={onClick}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\trole={onClick || onDelete ? 'button' : undefined}\n\t\t\ttabIndex={onClick || onDelete ? 0 : undefined}\n\t\t\taria-label={label}\n\t\t\taria-pressed={onClick && selected ? 'true' : undefined}\n\t\t>\n\t\t\t<DsTypography variant={size === 'small' ? 'body-xs-reg' : 'body-sm-reg'} className={styles.label}>\n\t\t\t\t{label}\n\t\t\t</DsTypography>\n\t\t\t{onDelete && (\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclassName={styles.deleteButton}\n\t\t\t\t\tonClick={handleDeleteClick}\n\t\t\t\t\taria-label=\"Delete chip\"\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t>\n\t\t\t\t\t<DsIcon icon={deleteIcon || 'cancel'} size=\"tiny\" />\n\t\t\t\t</button>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nexport default DsChip;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ds-chip.js","names":["React","classNames","styles","DsChipProps","DsIcon","DsTypography","DsChip","FC","t0","$","_c","ref","label","className","style","t1","onClick","onDelete","size","t2","deleteIcon","selected","t3","t4","undefined","t5","t6","t7","chip","clickable","small","chipClass","t8","event","stopPropagation","handleDeleteClick","t9","event_0","key","preventDefault","handleKeyDown","t10","Ref","HTMLDivElement","t11","t12","t13","t14","t15","t16","deleteButton","t17"],"sources":["../../../src/components/ds-chip/ds-chip.tsx"],"sourcesContent":["import type React from 'react';\nimport classNames from 'classnames';\nimport styles from './ds-chip.module.scss';\nimport type { DsChipProps } from './ds-chip.types';\nimport { DsIcon } from '../ds-icon';\nimport { DsTypography } from '../ds-typography';\n\n/**\n * @deprecated This component is deprecated. Use `DsTag` instead.\n * @see {@link ../ds-tag} for the replacement component.\n */\nconst DsChip: React.FC<DsChipProps> = ({\n\tref,\n\tlabel,\n\tclassName,\n\tstyle = {},\n\tonClick,\n\tonDelete,\n\tsize = 'medium',\n\tdeleteIcon,\n\tselected = false,\n}) => {\n\tconst chipClass = classNames(\n\t\tstyles.chip,\n\t\t{\n\t\t\t[styles.clickable]: onClick !== undefined,\n\t\t\t[styles.small]: size === 'small',\n\t\t},\n\t\tclassName,\n\t);\n\n\tconst handleDeleteClick = (event: React.MouseEvent<HTMLElement>) => {\n\t\tevent.stopPropagation();\n\t\tonDelete?.(event);\n\t};\n\n\tconst handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n\t\tif (onDelete && (event.key === 'Backspace' || event.key === 'Delete')) {\n\t\t\tevent.preventDefault();\n\t\t\tonDelete(event);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tref={ref as React.Ref<HTMLDivElement>}\n\t\t\tclassName={chipClass}\n\t\t\tstyle={style}\n\t\t\tonClick={onClick}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\trole={onClick || onDelete ? 'button' : undefined}\n\t\t\ttabIndex={onClick || onDelete ? 0 : undefined}\n\t\t\taria-label={label}\n\t\t\taria-pressed={onClick && selected ? 'true' : undefined}\n\t\t>\n\t\t\t<DsTypography variant={size === 'small' ? 'body-xs-reg' : 'body-sm-reg'} className={styles.label}>\n\t\t\t\t{label}\n\t\t\t</DsTypography>\n\t\t\t{onDelete && (\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclassName={styles.deleteButton}\n\t\t\t\t\tonClick={handleDeleteClick}\n\t\t\t\t\taria-label=\"Delete chip\"\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t>\n\t\t\t\t\t<DsIcon icon={deleteIcon || 'cancel'} size=\"tiny\" />\n\t\t\t\t</button>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n\nexport default DsChip;\n"],"mappings":"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"}
@@ -2,8 +2,21 @@ import { IconType } from "../ds-icon/ds-icon.types.cjs";
2
2
  import { CSSProperties, KeyboardEvent, MouseEvent, Ref } from "react";
3
3
 
4
4
  //#region src/components/ds-chip/ds-chip.types.d.ts
5
+
6
+ /**
7
+ * @deprecated This type is deprecated. Use `DsTag` instead.
8
+ * @see {@link ../ds-tag} for the replacement component.
9
+ */
5
10
  declare const chipSizes: readonly ["medium", "small"];
11
+ /**
12
+ * @deprecated This type is deprecated. Use `DsTag` instead.
13
+ * @see {@link ../ds-tag} for the replacement component.
14
+ */
6
15
  type ChipSize = (typeof chipSizes)[number];
16
+ /**
17
+ * @deprecated This interface is deprecated. Use `DsTagProps` from `ds-tag` instead.
18
+ * @see {@link ../ds-tag/ds-tag.types} for the replacement interface.
19
+ */
7
20
  interface DsChipProps {
8
21
  /**
9
22
  * Ref to the chip element
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip.types.d.cts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.types.tsx"],"sourcesContent":[],"mappings":";;;;cAGa;KACD,QAAA,WAAmB;AADlB,UAGI,WAAA,CAHoC;EACzC;AAEZ;;EAIO,GAAA,CAAA,EAAA,GAAA,CAAI,WAAJ,CAAA;EAYE;;;EAQsB,KAAA,EAAA,MAAA;EAAX;;;EAKZ,SAAA,CAAA,EAAA,MAAA;EAIM;;;UAjBL;;;;oBAIU,WAAW;;;;qBAIV,WAAW,eAAe,cAAc;;;;;SAKpD;;;;eAIM"}
1
+ {"version":3,"file":"ds-chip.types.d.cts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.types.tsx"],"sourcesContent":[],"mappings":";;;;;;;AAOA;AAMA;AAMiB,cAZJ,SAYe,EAAA,SAAA,CAAA,QAAA,EAAA,OAAA,CAAA;;;;;AAoBT,KA1BP,QAAA,GA0BO,CAAA,OA1BY,SA0BZ,CAAA,CAAA,MAAA,CAAA;;;;;AASX,UA7BS,WAAA,CA6BT;EAIM;;;QA7BP,IAAI;;;;;;;;;;;;UAYF;;;;oBAIU,WAAW;;;;qBAIV,WAAW,eAAe,cAAc;;;;;SAKpD;;;;eAIM"}
@@ -3,8 +3,21 @@ import "../ds-icon/index.js";
3
3
  import { CSSProperties, KeyboardEvent, MouseEvent, Ref } from "react";
4
4
 
5
5
  //#region src/components/ds-chip/ds-chip.types.d.ts
6
+
7
+ /**
8
+ * @deprecated This type is deprecated. Use `DsTag` instead.
9
+ * @see {@link ../ds-tag} for the replacement component.
10
+ */
6
11
  declare const chipSizes: readonly ["medium", "small"];
12
+ /**
13
+ * @deprecated This type is deprecated. Use `DsTag` instead.
14
+ * @see {@link ../ds-tag} for the replacement component.
15
+ */
7
16
  type ChipSize = (typeof chipSizes)[number];
17
+ /**
18
+ * @deprecated This interface is deprecated. Use `DsTagProps` from `ds-tag` instead.
19
+ * @see {@link ../ds-tag/ds-tag.types} for the replacement interface.
20
+ */
8
21
  interface DsChipProps {
9
22
  /**
10
23
  * Ref to the chip element
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip.types.d.ts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.types.tsx"],"sourcesContent":[],"mappings":";;;;;cAGa;KACD,QAAA,WAAmB;UAEd,WAAA;EAHJ;AACb;AAEA;EAIW,GAAA,CAAA,EAAJ,GAAI,CAAA,WAAA,CAAA;EAAJ;;;EAgBY,KAAA,EAAA,MAAA;EAIY;;;EAAe,SAAA,CAAA,EAAA,MAAA;EAKtC;;;UAbC;;;;oBAIU,WAAW;;;;qBAIV,WAAW,eAAe,cAAc;;;;;SAKpD;;;;eAIM"}
1
+ {"version":3,"file":"ds-chip.types.d.ts","names":[],"sources":["../../../src/components/ds-chip/ds-chip.types.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;AAOA;AAMY,cANC,SAMkB,EAAA,SAAS,CAAA,QAAA,EAAA,OAAA,CAAA;AAMxC;;;;AAoB8B,KA1BlB,QAAA,GA0BkB,CAAA,OA1BC,SA0BD,CAAA,CAAA,MAAA,CAAA;;;;;AAIgB,UAxB7B,WAAA,CAwB6B;EAKtC;;;QAzBD,IAAI;;;;;;;;;;;;UAYF;;;;oBAIU,WAAW;;;;qBAIV,WAAW,eAAe,cAAc;;;;;SAKpD;;;;eAIM"}
@@ -20,8 +20,8 @@ let __radix_ui_react_visually_hidden = require("@radix-ui/react-visually-hidden"
20
20
 
21
21
  //#region src/components/ds-chip-group/ds-chip-group.tsx
22
22
  /**
23
- * Design system chip group component displays a collection of chips with overflow handling
24
- * Used for displaying filters, selected items, tags, etc.
23
+ * @deprecated This component is deprecated. Use `DsTagFilter` instead.
24
+ * @see {@link ../ds-tag-filter} for the replacement component.
25
25
  */
26
26
  const DsChipGroup = ({ items, label = "Filtered by:", onClearAll, onItemDelete, onItemSelect, className, style }) => {
27
27
  const [dialogOpen, setDialogOpen] = (0, react.useState)(false);
@@ -4,8 +4,8 @@ import React from "react";
4
4
  //#region src/components/ds-chip-group/ds-chip-group.d.ts
5
5
 
6
6
  /**
7
- * Design system chip group component displays a collection of chips with overflow handling
8
- * Used for displaying filters, selected items, tags, etc.
7
+ * @deprecated This component is deprecated. Use `DsTagFilter` instead.
8
+ * @see {@link ../ds-tag-filter} for the replacement component.
9
9
  */
10
10
  declare const DsChipGroup: React.FC<DsChipGroupProps>;
11
11
  //#endregion
@@ -4,8 +4,8 @@ import React from "react";
4
4
  //#region src/components/ds-chip-group/ds-chip-group.d.ts
5
5
 
6
6
  /**
7
- * Design system chip group component displays a collection of chips with overflow handling
8
- * Used for displaying filters, selected items, tags, etc.
7
+ * @deprecated This component is deprecated. Use `DsTagFilter` instead.
8
+ * @see {@link ../ds-tag-filter} for the replacement component.
9
9
  */
10
10
  declare const DsChipGroup: React.FC<DsChipGroupProps>;
11
11
  //#endregion
@@ -17,8 +17,8 @@ import { Root } from "@radix-ui/react-visually-hidden";
17
17
 
18
18
  //#region src/components/ds-chip-group/ds-chip-group.tsx
19
19
  /**
20
- * Design system chip group component displays a collection of chips with overflow handling
21
- * Used for displaying filters, selected items, tags, etc.
20
+ * @deprecated This component is deprecated. Use `DsTagFilter` instead.
21
+ * @see {@link ../ds-tag-filter} for the replacement component.
22
22
  */
23
23
  const DsChipGroup = ({ items, label = "Filtered by:", onClearAll, onItemDelete, onItemSelect, className, style }) => {
24
24
  const [dialogOpen, setDialogOpen] = useState(false);
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip-group.js","names":["React","useRef","useState","RadixDialog","Root","VisuallyHidden","classNames","styles","DsChipGroupProps","useChipRowCalculation","DsTypography","DsChip","DsCheckbox","DsButton","DsIcon","DsChipGroup","FC","items","label","onClearAll","onItemDelete","onItemSelect","className","style","dialogOpen","setDialogOpen","showAllChipsRef","HTMLDivElement","chipsWrapperRef","visibleCount","totalFilters","length","hiddenCount","showExpandButton","handleOpenDialog","dialogStyle","CSSProperties","current","rect","getBoundingClientRect","position","top","bottom","left","container","chipsWrapper","map","item","index","id","selected","hidden","String","expandChip","dialog","dialogContent","filter","itemCheckbox"],"sources":["../../../src/components/ds-chip-group/ds-chip-group.tsx"],"sourcesContent":["import type React from 'react';\nimport { useRef, useState } from 'react';\nimport * as RadixDialog from '@radix-ui/react-dialog';\nimport { Root as VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport classNames from 'classnames';\nimport styles from './ds-chip-group.module.scss';\nimport type { DsChipGroupProps } from './ds-chip-group.types';\nimport { useChipRowCalculation } from './hooks/use-chip-row-calculation';\nimport { DsTypography } from '../ds-typography';\nimport DsChip from '../ds-chip/ds-chip';\nimport { DsCheckbox } from '../ds-checkbox';\nimport { DsButton } from '../ds-button';\nimport { DsIcon } from '../ds-icon';\n\n/**\n * Design system chip group component displays a collection of chips with overflow handling\n * Used for displaying filters, selected items, tags, etc.\n */\nconst DsChipGroup: React.FC<DsChipGroupProps> = ({\n\titems,\n\tlabel = 'Filtered by:',\n\tonClearAll,\n\tonItemDelete,\n\tonItemSelect,\n\tclassName,\n\tstyle,\n}) => {\n\tconst [dialogOpen, setDialogOpen] = useState(false);\n\tconst showAllChipsRef = useRef<HTMLDivElement>(null);\n\tconst chipsWrapperRef = useRef<HTMLDivElement>(null);\n\tconst visibleCount = useChipRowCalculation({\n\t\tchipsWrapperRef,\n\t\ttotalFilters: items.length,\n\t});\n\n\tif (items.length === 0) {\n\t\treturn null;\n\t}\n\n\tconst hiddenCount = items.length - visibleCount;\n\tconst showExpandButton = hiddenCount > 0;\n\n\tconst handleOpenDialog = () => {\n\t\tsetDialogOpen(true);\n\t};\n\n\tlet dialogStyle: React.CSSProperties = {};\n\tif (showExpandButton && showAllChipsRef.current) {\n\t\tconst rect = showAllChipsRef.current.getBoundingClientRect();\n\t\tdialogStyle = {\n\t\t\tposition: 'fixed',\n\t\t\ttop: rect.bottom + 4,\n\t\t\tleft: rect.left,\n\t\t};\n\t}\n\n\treturn (\n\t\t<div className={classNames(styles.container, className)} style={style}>\n\t\t\t{label && (\n\t\t\t\t<DsTypography variant=\"body-sm-reg\" className={styles.label}>\n\t\t\t\t\t{label}\n\t\t\t\t</DsTypography>\n\t\t\t)}\n\n\t\t\t<div ref={chipsWrapperRef} className={styles.chipsWrapper}>\n\t\t\t\t{items.map((item, index) => (\n\t\t\t\t\t<DsChip\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\tlabel={item.label}\n\t\t\t\t\t\tselected={item.selected}\n\t\t\t\t\t\tonClick={() => onItemSelect?.(item)}\n\t\t\t\t\t\tonDelete={() => onItemDelete?.(item)}\n\t\t\t\t\t\tclassName={classNames({\n\t\t\t\t\t\t\t[styles.hidden]: index >= visibleCount,\n\t\t\t\t\t\t})}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t\t{showExpandButton && (\n\t\t\t\t\t<DsChip\n\t\t\t\t\t\tref={showAllChipsRef}\n\t\t\t\t\t\tlabel={`+${String(hiddenCount)} ${hiddenCount === 1 ? 'item' : 'items'} show all`}\n\t\t\t\t\t\tonClick={handleOpenDialog}\n\t\t\t\t\t\tclassName={styles.expandChip}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{onClearAll && (\n\t\t\t\t<DsButton design=\"v1.2\" buttonType=\"tertiary\" variant=\"ghost\" size=\"small\" onClick={onClearAll}>\n\t\t\t\t\t<DsIcon icon=\"close\" />\n\t\t\t\t\tClear all\n\t\t\t\t</DsButton>\n\t\t\t)}\n\n\t\t\t<RadixDialog.Root open={dialogOpen} onOpenChange={setDialogOpen}>\n\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t<RadixDialog.Title />\n\t\t\t\t</VisuallyHidden>\n\t\t\t\t<RadixDialog.Portal>\n\t\t\t\t\t<RadixDialog.Content style={dialogStyle} className={styles.dialog}>\n\t\t\t\t\t\t<div className={styles.dialogContent}>\n\t\t\t\t\t\t\t{items\n\t\t\t\t\t\t\t\t.filter((item, index) => index >= visibleCount)\n\t\t\t\t\t\t\t\t.map((item) => (\n\t\t\t\t\t\t\t\t\t<div key={item.id} className={styles.itemCheckbox}>\n\t\t\t\t\t\t\t\t\t\t<DsCheckbox\n\t\t\t\t\t\t\t\t\t\t\tid={`chip-${item.id}`}\n\t\t\t\t\t\t\t\t\t\t\tchecked={item.selected}\n\t\t\t\t\t\t\t\t\t\t\tonCheckedChange={() => onItemSelect?.(item)}\n\t\t\t\t\t\t\t\t\t\t\tlabel={item.label}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</RadixDialog.Content>\n\t\t\t\t</RadixDialog.Portal>\n\t\t\t</RadixDialog.Root>\n\t\t</div>\n\t);\n};\n\nexport default DsChipGroup;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAMe,eAA2C,EAChDE,OACAC,QAAQ,gBACRC,YACAC,cACAC,cACAC,WACAC,YACK;CACL,MAAM,CAACC,YAAYC,iBAAiBvB,SAAS,MAAM;CACnD,MAAMwB,kBAAkBzB,OAAuB,KAAK;CACpD,MAAM2B,kBAAkB3B,OAAuB,KAAK;CACpD,MAAM4B,eAAepB,sBAAsB;EAC1CmB;EACAE,cAAcb,MAAMc;EACpB,CAAC;AAEF,KAAId,MAAMc,WAAW,EACpB,QAAO;CAGR,MAAMC,cAAcf,MAAMc,SAASF;CACnC,MAAMI,mBAAmBD,cAAc;CAEvC,MAAME,yBAAyB;AAC9BT,gBAAc,KAAK;;CAGpB,IAAIU,cAAmC,EAAE;AACzC,KAAIF,oBAAoBP,gBAAgBW,SAAS;EAChD,MAAMC,OAAOZ,gBAAgBW,QAAQE,uBAAuB;AAC5DJ,gBAAc;GACbK,UAAU;GACVC,KAAKH,KAAKI,SAAS;GACnBC,MAAML,KAAKK;GACX;;AAGF,QACC,qBAAC;EAAI,WAAWrC,WAAWC,6BAAOqC,WAAWtB,UAAU;EAASC;;GAC9DL,SACA,oBAAC;IAAa,SAAQ;IAAc,WAAWX,6BAAOW;cACpDA;KAEF;GAED,qBAAC;IAAI,KAAKU;IAAiB,WAAWrB,6BAAOsC;eAC3C5B,MAAM6B,KAAKC,MAAMC,UACjB,oBAAC;KAEA,OAAOD,KAAK7B;KACZ,UAAU6B,KAAKG;KACf,eAAe7B,eAAe0B,KAAK;KACnC,gBAAgB3B,eAAe2B,KAAK;KACpC,WAAWzC,WAAW,GACpBC,6BAAO4C,SAASH,SAASnB,cAC1B,CAAC;OAPGkB,KAAKE,GASX,CAAC,EACDhB,oBACA,oBAAC;KACA,KAAKP;KACL,OAAO,IAAI0B,OAAOpB,YAAY,CAAA,GAAIA,gBAAgB,IAAI,SAAS,QAAO;KACtE,SAASE;KACT,WAAW3B,6BAAO8C;MAEnB;KACG;GAEJlC,cACA,qBAAC;IAAS,QAAO;IAAO,YAAW;IAAW,SAAQ;IAAQ,MAAK;IAAQ,SAASA;eACnF,oBAAC,mBAAO,MAAK,UAAO;KAGrB;GAED,qBAAC,YAAY;IAAK,MAAMK;IAAY,cAAcC;eACjD,oBAAC,kBACA,oBAAC,YAAY,UAAK,GACH,EAChB,oBAAC,YAAY,oBACZ,oBAAC,YAAY;KAAQ,OAAOU;KAAa,WAAW5B,6BAAO+C;eAC1D,oBAAC;MAAI,WAAW/C,6BAAOgD;gBACrBtC,MACCuC,QAAQT,QAAMC,YAAUA,WAASnB,aAAa,CAC9CiB,KAAKC,WACL,oBAAC;OAAkB,WAAWxC,6BAAOkD;iBACpC,oBAAC;QACA,IAAI,QAAQV,OAAKE;QACjB,SAASF,OAAKG;QACd,uBAAuB7B,eAAe0B,OAAK;QAC3C,OAAOA,OAAK7B;SAAM;SALV6B,OAAKE,GAQf,CAAC;OACC;MACe,GACF;KACH;;GACb;;AAIR,4BAAelC"}
1
+ {"version":3,"file":"ds-chip-group.js","names":["React","useRef","useState","RadixDialog","Root","VisuallyHidden","classNames","styles","DsChipGroupProps","useChipRowCalculation","DsTypography","DsChip","DsCheckbox","DsButton","DsIcon","DsChipGroup","FC","items","label","onClearAll","onItemDelete","onItemSelect","className","style","dialogOpen","setDialogOpen","showAllChipsRef","HTMLDivElement","chipsWrapperRef","visibleCount","totalFilters","length","hiddenCount","showExpandButton","handleOpenDialog","dialogStyle","CSSProperties","current","rect","getBoundingClientRect","position","top","bottom","left","container","chipsWrapper","map","item","index","id","selected","hidden","String","expandChip","dialog","dialogContent","filter","itemCheckbox"],"sources":["../../../src/components/ds-chip-group/ds-chip-group.tsx"],"sourcesContent":["import type React from 'react';\nimport { useRef, useState } from 'react';\nimport * as RadixDialog from '@radix-ui/react-dialog';\nimport { Root as VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport classNames from 'classnames';\nimport styles from './ds-chip-group.module.scss';\nimport type { DsChipGroupProps } from './ds-chip-group.types';\nimport { useChipRowCalculation } from './hooks/use-chip-row-calculation';\nimport { DsTypography } from '../ds-typography';\nimport DsChip from '../ds-chip/ds-chip';\nimport { DsCheckbox } from '../ds-checkbox';\nimport { DsButton } from '../ds-button';\nimport { DsIcon } from '../ds-icon';\n\n/**\n * @deprecated This component is deprecated. Use `DsTagFilter` instead.\n * @see {@link ../ds-tag-filter} for the replacement component.\n */\nconst DsChipGroup: React.FC<DsChipGroupProps> = ({\n\titems,\n\tlabel = 'Filtered by:',\n\tonClearAll,\n\tonItemDelete,\n\tonItemSelect,\n\tclassName,\n\tstyle,\n}) => {\n\tconst [dialogOpen, setDialogOpen] = useState(false);\n\tconst showAllChipsRef = useRef<HTMLDivElement>(null);\n\tconst chipsWrapperRef = useRef<HTMLDivElement>(null);\n\tconst visibleCount = useChipRowCalculation({\n\t\tchipsWrapperRef,\n\t\ttotalFilters: items.length,\n\t});\n\n\tif (items.length === 0) {\n\t\treturn null;\n\t}\n\n\tconst hiddenCount = items.length - visibleCount;\n\tconst showExpandButton = hiddenCount > 0;\n\n\tconst handleOpenDialog = () => {\n\t\tsetDialogOpen(true);\n\t};\n\n\tlet dialogStyle: React.CSSProperties = {};\n\tif (showExpandButton && showAllChipsRef.current) {\n\t\tconst rect = showAllChipsRef.current.getBoundingClientRect();\n\t\tdialogStyle = {\n\t\t\tposition: 'fixed',\n\t\t\ttop: rect.bottom + 4,\n\t\t\tleft: rect.left,\n\t\t};\n\t}\n\n\treturn (\n\t\t<div className={classNames(styles.container, className)} style={style}>\n\t\t\t{label && (\n\t\t\t\t<DsTypography variant=\"body-sm-reg\" className={styles.label}>\n\t\t\t\t\t{label}\n\t\t\t\t</DsTypography>\n\t\t\t)}\n\n\t\t\t<div ref={chipsWrapperRef} className={styles.chipsWrapper}>\n\t\t\t\t{items.map((item, index) => (\n\t\t\t\t\t<DsChip\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\tlabel={item.label}\n\t\t\t\t\t\tselected={item.selected}\n\t\t\t\t\t\tonClick={() => onItemSelect?.(item)}\n\t\t\t\t\t\tonDelete={() => onItemDelete?.(item)}\n\t\t\t\t\t\tclassName={classNames({\n\t\t\t\t\t\t\t[styles.hidden]: index >= visibleCount,\n\t\t\t\t\t\t})}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t\t{showExpandButton && (\n\t\t\t\t\t<DsChip\n\t\t\t\t\t\tref={showAllChipsRef}\n\t\t\t\t\t\tlabel={`+${String(hiddenCount)} ${hiddenCount === 1 ? 'item' : 'items'} show all`}\n\t\t\t\t\t\tonClick={handleOpenDialog}\n\t\t\t\t\t\tclassName={styles.expandChip}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{onClearAll && (\n\t\t\t\t<DsButton design=\"v1.2\" buttonType=\"tertiary\" variant=\"ghost\" size=\"small\" onClick={onClearAll}>\n\t\t\t\t\t<DsIcon icon=\"close\" />\n\t\t\t\t\tClear all\n\t\t\t\t</DsButton>\n\t\t\t)}\n\n\t\t\t<RadixDialog.Root open={dialogOpen} onOpenChange={setDialogOpen}>\n\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t<RadixDialog.Title />\n\t\t\t\t</VisuallyHidden>\n\t\t\t\t<RadixDialog.Portal>\n\t\t\t\t\t<RadixDialog.Content style={dialogStyle} className={styles.dialog}>\n\t\t\t\t\t\t<div className={styles.dialogContent}>\n\t\t\t\t\t\t\t{items\n\t\t\t\t\t\t\t\t.filter((item, index) => index >= visibleCount)\n\t\t\t\t\t\t\t\t.map((item) => (\n\t\t\t\t\t\t\t\t\t<div key={item.id} className={styles.itemCheckbox}>\n\t\t\t\t\t\t\t\t\t\t<DsCheckbox\n\t\t\t\t\t\t\t\t\t\t\tid={`chip-${item.id}`}\n\t\t\t\t\t\t\t\t\t\t\tchecked={item.selected}\n\t\t\t\t\t\t\t\t\t\t\tonCheckedChange={() => onItemSelect?.(item)}\n\t\t\t\t\t\t\t\t\t\t\tlabel={item.label}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</RadixDialog.Content>\n\t\t\t\t</RadixDialog.Portal>\n\t\t\t</RadixDialog.Root>\n\t\t</div>\n\t);\n};\n\nexport default DsChipGroup;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAMe,eAA2C,EAChDE,OACAC,QAAQ,gBACRC,YACAC,cACAC,cACAC,WACAC,YACK;CACL,MAAM,CAACC,YAAYC,iBAAiBvB,SAAS,MAAM;CACnD,MAAMwB,kBAAkBzB,OAAuB,KAAK;CACpD,MAAM2B,kBAAkB3B,OAAuB,KAAK;CACpD,MAAM4B,eAAepB,sBAAsB;EAC1CmB;EACAE,cAAcb,MAAMc;EACpB,CAAC;AAEF,KAAId,MAAMc,WAAW,EACpB,QAAO;CAGR,MAAMC,cAAcf,MAAMc,SAASF;CACnC,MAAMI,mBAAmBD,cAAc;CAEvC,MAAME,yBAAyB;AAC9BT,gBAAc,KAAK;;CAGpB,IAAIU,cAAmC,EAAE;AACzC,KAAIF,oBAAoBP,gBAAgBW,SAAS;EAChD,MAAMC,OAAOZ,gBAAgBW,QAAQE,uBAAuB;AAC5DJ,gBAAc;GACbK,UAAU;GACVC,KAAKH,KAAKI,SAAS;GACnBC,MAAML,KAAKK;GACX;;AAGF,QACC,qBAAC;EAAI,WAAWrC,WAAWC,6BAAOqC,WAAWtB,UAAU;EAASC;;GAC9DL,SACA,oBAAC;IAAa,SAAQ;IAAc,WAAWX,6BAAOW;cACpDA;KAEF;GAED,qBAAC;IAAI,KAAKU;IAAiB,WAAWrB,6BAAOsC;eAC3C5B,MAAM6B,KAAKC,MAAMC,UACjB,oBAAC;KAEA,OAAOD,KAAK7B;KACZ,UAAU6B,KAAKG;KACf,eAAe7B,eAAe0B,KAAK;KACnC,gBAAgB3B,eAAe2B,KAAK;KACpC,WAAWzC,WAAW,GACpBC,6BAAO4C,SAASH,SAASnB,cAC1B,CAAC;OAPGkB,KAAKE,GASX,CAAC,EACDhB,oBACA,oBAAC;KACA,KAAKP;KACL,OAAO,IAAI0B,OAAOpB,YAAY,CAAA,GAAIA,gBAAgB,IAAI,SAAS,QAAO;KACtE,SAASE;KACT,WAAW3B,6BAAO8C;MAEnB;KACG;GAEJlC,cACA,qBAAC;IAAS,QAAO;IAAO,YAAW;IAAW,SAAQ;IAAQ,MAAK;IAAQ,SAASA;eACnF,oBAAC,mBAAO,MAAK,UAAO;KAGrB;GAED,qBAAC,YAAY;IAAK,MAAMK;IAAY,cAAcC;eACjD,oBAAC,kBACA,oBAAC,YAAY,UAAK,GACH,EAChB,oBAAC,YAAY,oBACZ,oBAAC,YAAY;KAAQ,OAAOU;KAAa,WAAW5B,6BAAO+C;eAC1D,oBAAC;MAAI,WAAW/C,6BAAOgD;gBACrBtC,MACCuC,QAAQT,QAAMC,YAAUA,WAASnB,aAAa,CAC9CiB,KAAKC,WACL,oBAAC;OAAkB,WAAWxC,6BAAOkD;iBACpC,oBAAC;QACA,IAAI,QAAQV,OAAKE;QACjB,SAASF,OAAKG;QACd,uBAAuB7B,eAAe0B,OAAK;QAC3C,OAAOA,OAAK7B;SAAM;SALV6B,OAAKE,GAQf,CAAC;OACC;MACe,GACF;KACH;;GACb;;AAIR,4BAAelC"}
@@ -1,6 +1,11 @@
1
1
  import { CSSProperties } from "react";
2
2
 
3
3
  //#region src/components/ds-chip-group/ds-chip-group.types.d.ts
4
+
5
+ /**
6
+ * @deprecated This interface is deprecated. Use `DsTagFilter` types instead.
7
+ * @see {@link ../ds-tag-filter} for the replacement types.
8
+ */
4
9
  interface ChipItem {
5
10
  /**
6
11
  * Unique identifier for the chip
@@ -19,6 +24,10 @@ interface ChipItem {
19
24
  */
20
25
  selected?: boolean;
21
26
  }
27
+ /**
28
+ * @deprecated This interface is deprecated. Use `DsTagFilterProps` from `ds-tag-filter` instead.
29
+ * @see {@link ../ds-tag-filter/ds-tag-filter.types} for the replacement interface.
30
+ */
22
31
  interface DsChipGroupProps {
23
32
  /**
24
33
  * Array of chip items to display
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip-group.types.d.cts","names":[],"sources":["../../../src/components/ds-chip-group/ds-chip-group.types.ts"],"sourcesContent":[],"mappings":";;;UAEiB,QAAA;;AAAjB;AAmBA;EAIQ,EAAA,EAAA,MAAA;EAae;;;EAYD,KAAA,EAAA,MAAA;;;;aApCV;;;;;;UAOK,gBAAA;;;;SAIT;;;;;;;;;;;;;wBAae;;;;wBAIA;;;;;;;;UAQd"}
1
+ {"version":3,"file":"ds-chip-group.types.d.cts","names":[],"sources":["../../../src/components/ds-chip-group/ds-chip-group.types.ts"],"sourcesContent":[],"mappings":";;;;;;AAMA;AAuBA;AAIQ,UA3BS,QAAA,CA2BT;EAae;;;EAYD,EAAA,EAAA,MAAA;;;;;;;;aAxCV;;;;;;;;;;UAWK,gBAAA;;;;SAIT;;;;;;;;;;;;;wBAae;;;;wBAIA;;;;;;;;UAQd"}
@@ -1,6 +1,11 @@
1
1
  import { CSSProperties } from "react";
2
2
 
3
3
  //#region src/components/ds-chip-group/ds-chip-group.types.d.ts
4
+
5
+ /**
6
+ * @deprecated This interface is deprecated. Use `DsTagFilter` types instead.
7
+ * @see {@link ../ds-tag-filter} for the replacement types.
8
+ */
4
9
  interface ChipItem {
5
10
  /**
6
11
  * Unique identifier for the chip
@@ -19,6 +24,10 @@ interface ChipItem {
19
24
  */
20
25
  selected?: boolean;
21
26
  }
27
+ /**
28
+ * @deprecated This interface is deprecated. Use `DsTagFilterProps` from `ds-tag-filter` instead.
29
+ * @see {@link ../ds-tag-filter/ds-tag-filter.types} for the replacement interface.
30
+ */
22
31
  interface DsChipGroupProps {
23
32
  /**
24
33
  * Array of chip items to display
@@ -1 +1 @@
1
- {"version":3,"file":"ds-chip-group.types.d.ts","names":[],"sources":["../../../src/components/ds-chip-group/ds-chip-group.types.ts"],"sourcesContent":[],"mappings":";;;UAEiB,QAAA;;AAAjB;AAmBA;EAIQ,EAAA,EAAA,MAAA;EAae;;;EAYD,KAAA,EAAA,MAAA;;;;aApCV;;;;;;UAOK,gBAAA;;;;SAIT;;;;;;;;;;;;;wBAae;;;;wBAIA;;;;;;;;UAQd"}
1
+ {"version":3,"file":"ds-chip-group.types.d.ts","names":[],"sources":["../../../src/components/ds-chip-group/ds-chip-group.types.ts"],"sourcesContent":[],"mappings":";;;;;;AAMA;AAuBA;AAIQ,UA3BS,QAAA,CA2BT;EAae;;;EAYD,EAAA,EAAA,MAAA;;;;;;;;aAxCV;;;;;;;;;;UAWK,gBAAA;;;;SAIT;;;;;;;;;;;;;wBAae;;;;wBAIA;;;;;;;;UAQd"}
@@ -21,6 +21,7 @@ const useChipRowCalculation = ({ chipsWrapperRef, totalFilters }) => {
21
21
  let total = 0;
22
22
  for (index = 0; index < children.length; index++) {
23
23
  const current = children[index];
24
+ if (!current) continue;
24
25
  const next = (current.offsetWidth === wrapper.clientWidth ? 0 : gap) + current.offsetWidth;
25
26
  if (total + next >= wrapper.clientWidth) {
26
27
  line++;
@@ -20,6 +20,7 @@ const useChipRowCalculation = ({ chipsWrapperRef, totalFilters }) => {
20
20
  let total = 0;
21
21
  for (index = 0; index < children.length; index++) {
22
22
  const current = children[index];
23
+ if (!current) continue;
23
24
  const next = (current.offsetWidth === wrapper.clientWidth ? 0 : gap) + current.offsetWidth;
24
25
  if (total + next >= wrapper.clientWidth) {
25
26
  line++;
@@ -1 +1 @@
1
- {"version":3,"file":"use-chip-row-calculation.js","names":["RefObject","useLayoutEffect","useState","UseChipRowCalculationProps","chipsWrapperRef","HTMLDivElement","totalFilters","useChipRowCalculation","visibleCount","setVisibleCount","calculateVisibleChips","current","wrapper","children","Array","from","HTMLElement","length","cs","getComputedStyle","gap","parseFloat","columnGap","index","line","total","offset","offsetWidth","clientWidth","next","result","Math","max","rafId","requestAnimationFrame","resizeObserver","ResizeObserver","observe","cancelAnimationFrame","disconnect"],"sources":["../../../../src/components/ds-chip-group/hooks/use-chip-row-calculation.ts"],"sourcesContent":["import { type RefObject, useLayoutEffect, useState } from 'react';\n\ninterface UseChipRowCalculationProps {\n\tchipsWrapperRef: RefObject<HTMLDivElement | null>;\n\ttotalFilters: number;\n}\n\n/**\n * Custom hook to calculate how many chips can fit in 2 rows\n * Uses a simple approach: render all, measure positions, hide overflow\n */\nexport const useChipRowCalculation = ({ chipsWrapperRef, totalFilters }: UseChipRowCalculationProps) => {\n\tconst [visibleCount, setVisibleCount] = useState(totalFilters);\n\n\tuseLayoutEffect(() => {\n\t\tconst calculateVisibleChips = () => {\n\t\t\tif (!chipsWrapperRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst wrapper = chipsWrapperRef.current;\n\t\t\tconst children = Array.from(wrapper.children) as HTMLElement[];\n\n\t\t\tif (children.length === 0) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst cs = getComputedStyle(wrapper);\n\t\t\tconst gap = parseFloat(cs.columnGap || cs.gap || '0') || 8;\n\t\t\tlet index;\n\t\t\tlet line = 0;\n\t\t\tlet total = 0;\n\n\t\t\tfor (index = 0; index < children.length; index++) {\n\t\t\t\tconst current = children[index];\n\t\t\t\tconst offset = current.offsetWidth === wrapper.clientWidth ? 0 : gap;\n\t\t\t\tconst next = offset + current.offsetWidth;\n\n\t\t\t\tif (total + next >= wrapper.clientWidth) {\n\t\t\t\t\tline++;\n\t\t\t\t\tif (line >= 2) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\ttotal = next;\n\t\t\t\t} else {\n\t\t\t\t\ttotal += next;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst result = Math.max(1, line < 2 ? index : index - 1);\n\t\t\tsetVisibleCount(result);\n\t\t};\n\n\t\t// Use requestAnimationFrame to ensure DOM is fully laid out\n\t\tconst rafId = requestAnimationFrame(() => {\n\t\t\tcalculateVisibleChips();\n\t\t});\n\n\t\tconst resizeObserver = new ResizeObserver(() => {\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tcalculateVisibleChips();\n\t\t\t});\n\t\t});\n\n\t\tif (chipsWrapperRef.current) {\n\t\t\tresizeObserver.observe(chipsWrapperRef.current);\n\t\t}\n\n\t\treturn () => {\n\t\t\tcancelAnimationFrame(rafId);\n\t\t\tresizeObserver.disconnect();\n\t\t};\n\t}, [chipsWrapperRef, totalFilters]);\n\n\treturn visibleCount;\n};\n"],"mappings":";;;;;;;AAWA,MAAaO,yBAAyB,EAAEH,iBAAiBE,mBAA+C;CACvG,MAAM,CAACE,cAAcC,mBAAmBP,SAASI,aAAa;AAE9DL,uBAAsB;EACrB,MAAMS,8BAA8B;AACnC,OAAI,CAACN,gBAAgBO,QACpB;GAGD,MAAMC,UAAUR,gBAAgBO;GAChC,MAAME,WAAWC,MAAMC,KAAKH,QAAQC,SAAS;AAE7C,OAAIA,SAASI,WAAW,EACvB;GAGD,MAAMC,KAAKC,iBAAiBP,QAAQ;GACpC,MAAMQ,MAAMC,WAAWH,GAAGI,aAAaJ,GAAGE,OAAO,IAAI,IAAI;GACzD,IAAIG;GACJ,IAAIC,OAAO;GACX,IAAIC,QAAQ;AAEZ,QAAKF,QAAQ,GAAGA,QAAQV,SAASI,QAAQM,SAAS;IACjD,MAAMZ,UAAUE,SAASU;IAEzB,MAAMM,QADSlB,QAAQgB,gBAAgBf,QAAQgB,cAAc,IAAIR,OAC3CT,QAAQgB;AAE9B,QAAIF,QAAQI,QAAQjB,QAAQgB,aAAa;AACxCJ;AACA,SAAIA,QAAQ,EACX;AAEDC,aAAQI;UAERJ,UAASI;;AAKXpB,mBADesB,KAAKC,IAAI,GAAGR,OAAO,IAAID,QAAQA,QAAQ,EAAE,CACjC;;EAIxB,MAAMU,QAAQC,4BAA4B;AACzCxB,0BAAuB;IACtB;EAEF,MAAMyB,iBAAiB,IAAIC,qBAAqB;AAC/CF,+BAA4B;AAC3BxB,2BAAuB;KACtB;IACD;AAEF,MAAIN,gBAAgBO,QACnBwB,gBAAeE,QAAQjC,gBAAgBO,QAAQ;AAGhD,eAAa;AACZ2B,wBAAqBL,MAAM;AAC3BE,kBAAeI,YAAY;;IAE1B,CAACnC,iBAAiBE,aAAa,CAAC;AAEnC,QAAOE"}
1
+ {"version":3,"file":"use-chip-row-calculation.js","names":["RefObject","useLayoutEffect","useState","UseChipRowCalculationProps","chipsWrapperRef","HTMLDivElement","totalFilters","useChipRowCalculation","visibleCount","setVisibleCount","calculateVisibleChips","current","wrapper","children","Array","from","HTMLElement","length","cs","getComputedStyle","gap","parseFloat","columnGap","index","line","total","offset","offsetWidth","clientWidth","next","result","Math","max","rafId","requestAnimationFrame","resizeObserver","ResizeObserver","observe","cancelAnimationFrame","disconnect"],"sources":["../../../../src/components/ds-chip-group/hooks/use-chip-row-calculation.ts"],"sourcesContent":["import { type RefObject, useLayoutEffect, useState } from 'react';\n\ninterface UseChipRowCalculationProps {\n\tchipsWrapperRef: RefObject<HTMLDivElement | null>;\n\ttotalFilters: number;\n}\n\n/**\n * Custom hook to calculate how many chips can fit in 2 rows\n * Uses a simple approach: render all, measure positions, hide overflow\n */\nexport const useChipRowCalculation = ({ chipsWrapperRef, totalFilters }: UseChipRowCalculationProps) => {\n\tconst [visibleCount, setVisibleCount] = useState(totalFilters);\n\n\tuseLayoutEffect(() => {\n\t\tconst calculateVisibleChips = () => {\n\t\t\tif (!chipsWrapperRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst wrapper = chipsWrapperRef.current;\n\t\t\tconst children = Array.from(wrapper.children) as HTMLElement[];\n\n\t\t\tif (children.length === 0) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst cs = getComputedStyle(wrapper);\n\t\t\tconst gap = parseFloat(cs.columnGap || cs.gap || '0') || 8;\n\t\t\tlet index;\n\t\t\tlet line = 0;\n\t\t\tlet total = 0;\n\n\t\t\tfor (index = 0; index < children.length; index++) {\n\t\t\t\tconst current = children[index];\n\n\t\t\t\tif (!current) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst offset = current.offsetWidth === wrapper.clientWidth ? 0 : gap;\n\t\t\t\tconst next = offset + current.offsetWidth;\n\n\t\t\t\tif (total + next >= wrapper.clientWidth) {\n\t\t\t\t\tline++;\n\t\t\t\t\tif (line >= 2) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\ttotal = next;\n\t\t\t\t} else {\n\t\t\t\t\ttotal += next;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst result = Math.max(1, line < 2 ? index : index - 1);\n\t\t\tsetVisibleCount(result);\n\t\t};\n\n\t\t// Use requestAnimationFrame to ensure DOM is fully laid out\n\t\tconst rafId = requestAnimationFrame(() => {\n\t\t\tcalculateVisibleChips();\n\t\t});\n\n\t\tconst resizeObserver = new ResizeObserver(() => {\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tcalculateVisibleChips();\n\t\t\t});\n\t\t});\n\n\t\tif (chipsWrapperRef.current) {\n\t\t\tresizeObserver.observe(chipsWrapperRef.current);\n\t\t}\n\n\t\treturn () => {\n\t\t\tcancelAnimationFrame(rafId);\n\t\t\tresizeObserver.disconnect();\n\t\t};\n\t}, [chipsWrapperRef, totalFilters]);\n\n\treturn visibleCount;\n};\n"],"mappings":";;;;;;;AAWA,MAAaO,yBAAyB,EAAEH,iBAAiBE,mBAA+C;CACvG,MAAM,CAACE,cAAcC,mBAAmBP,SAASI,aAAa;AAE9DL,uBAAsB;EACrB,MAAMS,8BAA8B;AACnC,OAAI,CAACN,gBAAgBO,QACpB;GAGD,MAAMC,UAAUR,gBAAgBO;GAChC,MAAME,WAAWC,MAAMC,KAAKH,QAAQC,SAAS;AAE7C,OAAIA,SAASI,WAAW,EACvB;GAGD,MAAMC,KAAKC,iBAAiBP,QAAQ;GACpC,MAAMQ,MAAMC,WAAWH,GAAGI,aAAaJ,GAAGE,OAAO,IAAI,IAAI;GACzD,IAAIG;GACJ,IAAIC,OAAO;GACX,IAAIC,QAAQ;AAEZ,QAAKF,QAAQ,GAAGA,QAAQV,SAASI,QAAQM,SAAS;IACjD,MAAMZ,UAAUE,SAASU;AAEzB,QAAI,CAACZ,QACJ;IAID,MAAMkB,QADSlB,QAAQgB,gBAAgBf,QAAQgB,cAAc,IAAIR,OAC3CT,QAAQgB;AAE9B,QAAIF,QAAQI,QAAQjB,QAAQgB,aAAa;AACxCJ;AACA,SAAIA,QAAQ,EACX;AAEDC,aAAQI;UAERJ,UAASI;;AAKXpB,mBADesB,KAAKC,IAAI,GAAGR,OAAO,IAAID,QAAQA,QAAQ,EAAE,CACjC;;EAIxB,MAAMU,QAAQC,4BAA4B;AACzCxB,0BAAuB;IACtB;EAEF,MAAMyB,iBAAiB,IAAIC,qBAAqB;AAC/CF,+BAA4B;AAC3BxB,2BAAuB;KACtB;IACD;AAEF,MAAIN,gBAAgBO,QACnBwB,gBAAeE,QAAQjC,gBAAgBO,QAAQ;AAGhD,eAAa;AACZ2B,wBAAqBL,MAAM;AAC3BE,kBAAeI,YAAY;;IAE1B,CAACnC,iBAAiBE,aAAa,CAAC;AAEnC,QAAOE"}
@@ -1,5 +1,5 @@
1
1
  import { DsConfirmationProps } from "./ds-confirmation.types.cjs";
2
- import * as react_jsx_runtime4 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime8 from "react/jsx-runtime";
3
3
  import { CSSProperties, ReactNode } from "react";
4
4
 
5
5
  //#region src/components/ds-confirmation/ds-confirmation.d.ts
@@ -13,7 +13,7 @@ declare const DsConfirmation: {
13
13
  style,
14
14
  className,
15
15
  children
16
- }: DsConfirmationProps): react_jsx_runtime4.JSX.Element;
16
+ }: DsConfirmationProps): react_jsx_runtime8.JSX.Element;
17
17
  Header: ({
18
18
  style,
19
19
  className,
@@ -22,7 +22,7 @@ declare const DsConfirmation: {
22
22
  style?: CSSProperties;
23
23
  className?: string;
24
24
  children: ReactNode;
25
- }) => react_jsx_runtime4.JSX.Element;
25
+ }) => react_jsx_runtime8.JSX.Element;
26
26
  Title: ({
27
27
  style,
28
28
  className,
@@ -31,14 +31,14 @@ declare const DsConfirmation: {
31
31
  style?: CSSProperties;
32
32
  className?: string;
33
33
  children: ReactNode;
34
- }) => react_jsx_runtime4.JSX.Element;
34
+ }) => react_jsx_runtime8.JSX.Element;
35
35
  CloseTrigger: ({
36
36
  style,
37
37
  className
38
38
  }: {
39
39
  style?: CSSProperties;
40
40
  className?: string;
41
- }) => react_jsx_runtime4.JSX.Element;
41
+ }) => react_jsx_runtime8.JSX.Element;
42
42
  Body: ({
43
43
  style,
44
44
  className,
@@ -47,7 +47,7 @@ declare const DsConfirmation: {
47
47
  style?: CSSProperties;
48
48
  className?: string;
49
49
  children: ReactNode;
50
- }) => react_jsx_runtime4.JSX.Element;
50
+ }) => react_jsx_runtime8.JSX.Element;
51
51
  Footer: ({
52
52
  style,
53
53
  className,
@@ -56,7 +56,7 @@ declare const DsConfirmation: {
56
56
  style?: CSSProperties;
57
57
  className?: string;
58
58
  children: ReactNode;
59
- }) => react_jsx_runtime4.JSX.Element;
59
+ }) => react_jsx_runtime8.JSX.Element;
60
60
  Actions: ({
61
61
  style,
62
62
  className,
@@ -65,7 +65,7 @@ declare const DsConfirmation: {
65
65
  style?: CSSProperties;
66
66
  className?: string;
67
67
  children: ReactNode;
68
- }) => react_jsx_runtime4.JSX.Element;
68
+ }) => react_jsx_runtime8.JSX.Element;
69
69
  };
70
70
  //#endregion
71
71
  export { DsConfirmation };
@@ -1,5 +1,5 @@
1
1
  import { DsConfirmationProps } from "./ds-confirmation.types.js";
2
- import * as react_jsx_runtime19 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime26 from "react/jsx-runtime";
3
3
  import { CSSProperties, ReactNode } from "react";
4
4
 
5
5
  //#region src/components/ds-confirmation/ds-confirmation.d.ts
@@ -13,7 +13,7 @@ declare const DsConfirmation: {
13
13
  style,
14
14
  className,
15
15
  children
16
- }: DsConfirmationProps): react_jsx_runtime19.JSX.Element;
16
+ }: DsConfirmationProps): react_jsx_runtime26.JSX.Element;
17
17
  Header: ({
18
18
  style,
19
19
  className,
@@ -22,7 +22,7 @@ declare const DsConfirmation: {
22
22
  style?: CSSProperties;
23
23
  className?: string;
24
24
  children: ReactNode;
25
- }) => react_jsx_runtime19.JSX.Element;
25
+ }) => react_jsx_runtime26.JSX.Element;
26
26
  Title: ({
27
27
  style,
28
28
  className,
@@ -31,14 +31,14 @@ declare const DsConfirmation: {
31
31
  style?: CSSProperties;
32
32
  className?: string;
33
33
  children: ReactNode;
34
- }) => react_jsx_runtime19.JSX.Element;
34
+ }) => react_jsx_runtime26.JSX.Element;
35
35
  CloseTrigger: ({
36
36
  style,
37
37
  className
38
38
  }: {
39
39
  style?: CSSProperties;
40
40
  className?: string;
41
- }) => react_jsx_runtime19.JSX.Element;
41
+ }) => react_jsx_runtime26.JSX.Element;
42
42
  Body: ({
43
43
  style,
44
44
  className,
@@ -47,7 +47,7 @@ declare const DsConfirmation: {
47
47
  style?: CSSProperties;
48
48
  className?: string;
49
49
  children: ReactNode;
50
- }) => react_jsx_runtime19.JSX.Element;
50
+ }) => react_jsx_runtime26.JSX.Element;
51
51
  Footer: ({
52
52
  style,
53
53
  className,
@@ -56,7 +56,7 @@ declare const DsConfirmation: {
56
56
  style?: CSSProperties;
57
57
  className?: string;
58
58
  children: ReactNode;
59
- }) => react_jsx_runtime19.JSX.Element;
59
+ }) => react_jsx_runtime26.JSX.Element;
60
60
  Actions: ({
61
61
  style,
62
62
  className,
@@ -65,7 +65,7 @@ declare const DsConfirmation: {
65
65
  style?: CSSProperties;
66
66
  className?: string;
67
67
  children: ReactNode;
68
- }) => react_jsx_runtime19.JSX.Element;
68
+ }) => react_jsx_runtime26.JSX.Element;
69
69
  };
70
70
  //#endregion
71
71
  export { DsConfirmation };
@@ -1,5 +1,5 @@
1
1
  import { DsDateInputProps } from "./ds-date-input.types.cjs";
2
- import * as react_jsx_runtime11 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime15 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/ds-date-input/ds-date-input.d.ts
5
5
 
@@ -25,7 +25,7 @@ declare const DsDateInput: ({
25
25
  readOnly,
26
26
  id,
27
27
  ...datePickerProps
28
- }: DsDateInputProps) => react_jsx_runtime11.JSX.Element;
28
+ }: DsDateInputProps) => react_jsx_runtime15.JSX.Element;
29
29
  //#endregion
30
30
  export { DsDateInput };
31
31
  //# sourceMappingURL=ds-date-input.d.cts.map
@@ -1,5 +1,5 @@
1
1
  import { DsDateInputProps } from "./ds-date-input.types.js";
2
- import * as react_jsx_runtime46 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime59 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/ds-date-input/ds-date-input.d.ts
5
5
 
@@ -25,7 +25,7 @@ declare const DsDateInput: ({
25
25
  readOnly,
26
26
  id,
27
27
  ...datePickerProps
28
- }: DsDateInputProps) => react_jsx_runtime46.JSX.Element;
28
+ }: DsDateInputProps) => react_jsx_runtime59.JSX.Element;
29
29
  //#endregion
30
30
  export { DsDateInput };
31
31
  //# sourceMappingURL=ds-date-input.d.ts.map
@@ -7,7 +7,7 @@ import ds_date_input_module_default from "./ds-date-input.module.js";
7
7
  import { c } from "react/compiler-runtime";
8
8
  import classNames from "classnames";
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
10
- import { Fragment, useRef, useState } from "react";
10
+ import { Fragment as Fragment$1, useRef, useState } from "react";
11
11
  import { Portal } from "@ark-ui/react/portal";
12
12
  import { DatePicker } from "@ark-ui/react/date-picker";
13
13
 
@@ -63,7 +63,7 @@ const DsDateInput = ({ range = false, placeholder, style, className, disablePort
63
63
  onValueChange?.(dateValuesToStrings(parsedValue_0, range));
64
64
  };
65
65
  const showClearButton = !disabled && !readOnly && !!(value.length > 0 ? value : defaultValue).length;
66
- const Wrapper = disablePortal ? Fragment : Portal;
66
+ const Wrapper = disablePortal ? Fragment$1 : Portal;
67
67
  return /* @__PURE__ */ jsxs(DatePicker.Root, {
68
68
  value,
69
69
  defaultValue,
@@ -1 +1 @@
1
- {"version":3,"file":"ds-date-input.js","names":["ChangeEvent","Fragment","useRef","useState","DatePicker","Portal","classNames","DsDateInputProps","dateValuesToStrings","formatDateInputValue","isoStringToDateValue","parseInputText","stringToDateValue","validateDateString","DsIcon","DsTypography","styles","DsDateInput","range","placeholder","style","className","disablePortal","onValueChange","onOpenChange","value","_value","defaultValue","_defaultValue","min","_min","max","_max","disabled","readOnly","id","datePickerProps","undefined","isFocused","setIsFocused","isOpen","setIsOpen","prevValue","inputRef","HTMLInputElement","current","JSON","stringify","clear","handleInputChange","e","text","target","validation","isValid","parsedValue","handleBlur","showClearButton","length","Wrapper","details","placement","gutter","open","dateInputControl","dateInputButton","input","positioner","content","calendarView","CalendarViewControl","$","_c","t0","Symbol","for","prevTrigger","t1","viewTrigger","t2","viewControl","nextTrigger","DayView","_temp4","MonthView","_temp7","YearView","_temp0","_temp","weekDay","tableHeader","short","_temp2","day","dayId","tableCellTrigger","tableCellTriggerValue","_temp3","week","weekId","tableRow","map","datePicker","table","tableHead","weekDays","tableBody","weeks","_temp5","month","monthId","label","_temp6","months","rowId","getMonthsGrid","columns","format","_temp8","year","yearId","_temp9","years","getYearsGrid"],"sources":["../../../src/components/ds-date-input/ds-date-input.tsx"],"sourcesContent":["import { type ChangeEvent, Fragment, useRef, useState } from 'react';\nimport { DatePicker } from '@ark-ui/react/date-picker';\nimport { Portal } from '@ark-ui/react/portal';\nimport classNames from 'classnames';\nimport type { DsDateInputProps } from './ds-date-input.types';\nimport {\n\tdateValuesToStrings,\n\tformatDateInputValue,\n\tisoStringToDateValue,\n\tparseInputText,\n\tstringToDateValue,\n\tvalidateDateString,\n} from './ds-date-input.utils';\nimport { DsIcon } from '../ds-icon';\nimport { DsTypography } from '../ds-typography';\nimport styles from './ds-date-input.module.scss';\n\n/**\n * Design system date input component with integrated calendar picker.\n *\n * Supports both single date and date range selection with a single text input field.\n * Features built-in validation, manual text entry, and calendar selection.\n */\nconst DsDateInput = ({\n\trange = false,\n\tplaceholder,\n\tstyle,\n\tclassName,\n\tdisablePortal = false,\n\tonValueChange,\n\tonOpenChange,\n\tvalue: _value,\n\tdefaultValue: _defaultValue,\n\tmin: _min,\n\tmax: _max,\n\tdisabled,\n\treadOnly,\n\tid,\n\t...datePickerProps\n}: DsDateInputProps) => {\n\tconst min = _min ? isoStringToDateValue(_min) : undefined;\n\tconst max = _max ? isoStringToDateValue(_max) : undefined;\n\n\t// Convert public API (string | [string, string]) to internal API (DateValue[])\n\tconst value = _value ? stringToDateValue(_value) : [];\n\tconst defaultValue = _defaultValue ? stringToDateValue(_defaultValue) : [];\n\n\t// Local state for manual text editing\n\tconst [isFocused, setIsFocused] = useState(false);\n\tconst [isOpen, setIsOpen] = useState(false);\n\n\tconst prevValue = useRef<string | null>(null);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\t// Reformat the input value on every value change\n\t// We don't format when the input is focused since the date value might get updated while the user is typing\n\t// but we don't want to reformat the input text for him while he's typing.\n\tif (!isFocused && prevValue.current !== JSON.stringify(value)) {\n\t\tprevValue.current = JSON.stringify(value);\n\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = formatDateInputValue(value, range);\n\t\t}\n\t}\n\n\tconst clear = () => {\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = '';\n\t\t}\n\n\t\tonValueChange?.(undefined);\n\t};\n\n\tconst handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n\t\tconst text = e.target.value;\n\n\t\t// Try to parse and validate as the user types\n\t\tconst validation = validateDateString({ text, range, min, max });\n\n\t\tif (validation.isValid) {\n\t\t\tconst parsedValue = parseInputText(text, range);\n\t\t\tonValueChange?.(dateValuesToStrings(parsedValue, range) as never);\n\t\t}\n\t};\n\n\tconst handleBlur = () => {\n\t\tsetIsFocused(false);\n\n\t\tconst text = inputRef.current?.value || '';\n\t\tconst validation = validateDateString({ text, range, min, max });\n\n\t\t// Clear invalid input on blur\n\t\tif (!validation.isValid) {\n\t\t\tclear();\n\t\t\treturn;\n\t\t}\n\n\t\tconst parsedValue = parseInputText(text, range);\n\n\t\tonValueChange?.(dateValuesToStrings(parsedValue, range) as never);\n\t};\n\n\tconst showClearButton = !disabled && !readOnly && !!(value.length > 0 ? value : defaultValue).length;\n\tconst Wrapper = disablePortal ? Fragment : Portal;\n\n\treturn (\n\t\t<DatePicker.Root\n\t\t\tvalue={value}\n\t\t\tdefaultValue={defaultValue}\n\t\t\tonValueChange={(details) => {\n\t\t\t\tonValueChange?.(dateValuesToStrings(details.value, range) as never);\n\t\t\t}}\n\t\t\tselectionMode={range ? 'range' : 'single'}\n\t\t\tpositioning={{ placement: 'bottom-start', gutter: 4 }}\n\t\t\tcloseOnSelect={!range}\n\t\t\tmin={min}\n\t\t\tmax={max}\n\t\t\tdisabled={disabled}\n\t\t\treadOnly={readOnly}\n\t\t\topen={isOpen}\n\t\t\tonOpenChange={(details) => {\n\t\t\t\t// Don't close the calendar when the user is typing\n\t\t\t\tif (!isFocused) {\n\t\t\t\t\tsetIsOpen(details.open);\n\t\t\t\t\tonOpenChange?.(details.open);\n\t\t\t\t}\n\t\t\t}}\n\t\t\t{...datePickerProps}\n\t\t>\n\t\t\t<DatePicker.Control\n\t\t\t\tstyle={style}\n\t\t\t\tclassName={classNames(\n\t\t\t\t\tstyles.dateInputControl,\n\t\t\t\t\tdisabled && styles.disabled,\n\t\t\t\t\treadOnly && styles.readOnly,\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<DatePicker.Trigger asChild>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.dateInputButton}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\taria-label=\"Open calendar\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsIcon icon=\"calendar_month\" size=\"small\" />\n\t\t\t\t\t</button>\n\t\t\t\t</DatePicker.Trigger>\n\n\t\t\t\t<input\n\t\t\t\t\tref={inputRef}\n\t\t\t\t\tid={id}\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\tplaceholder={placeholder ?? (range ? 'MM/DD/YYYY - MM/DD/YYYY' : 'MM/DD/YYYY')}\n\t\t\t\t\tdefaultValue={formatDateInputValue(value.length > 0 ? value : defaultValue, range)}\n\t\t\t\t\tonChange={handleInputChange}\n\t\t\t\t\tonBlur={handleBlur}\n\t\t\t\t\tonFocus={() => setIsFocused(true)}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t/>\n\n\t\t\t\t{showClearButton && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.dateInputButton}\n\t\t\t\t\t\tonClick={clear}\n\t\t\t\t\t\taria-label={range ? 'Clear date range' : 'Clear date'}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsIcon icon=\"close\" size=\"small\" />\n\t\t\t\t\t</button>\n\t\t\t\t)}\n\t\t\t</DatePicker.Control>\n\n\t\t\t<Wrapper>\n\t\t\t\t<DatePicker.Positioner className={styles.positioner}>\n\t\t\t\t\t<DatePicker.Content className={styles.content}>\n\t\t\t\t\t\t<CalendarViewControl />\n\t\t\t\t\t\t<div className={styles.calendarView}>\n\t\t\t\t\t\t\t<DayView />\n\t\t\t\t\t\t\t<MonthView />\n\t\t\t\t\t\t\t<YearView />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DatePicker.Content>\n\t\t\t\t</DatePicker.Positioner>\n\t\t\t</Wrapper>\n\t\t</DatePicker.Root>\n\t);\n};\n\n/**\n * Calendar view control with navigation buttons\n */\nconst CalendarViewControl = () => (\n\t<DatePicker.ViewControl className={styles.viewControl}>\n\t\t<DatePicker.PrevTrigger className={styles.prevTrigger}>\n\t\t\t<DsIcon icon=\"chevron_left\" size=\"small\" />\n\t\t</DatePicker.PrevTrigger>\n\t\t<DatePicker.ViewTrigger className={styles.viewTrigger} asChild>\n\t\t\t<button type=\"button\">\n\t\t\t\t<DsTypography variant=\"body-md-md\" asChild>\n\t\t\t\t\t<DatePicker.RangeText />\n\t\t\t\t</DsTypography>\n\t\t\t</button>\n\t\t</DatePicker.ViewTrigger>\n\t\t<DatePicker.NextTrigger className={styles.nextTrigger}>\n\t\t\t<DsIcon icon=\"chevron_right\" size=\"small\" />\n\t\t</DatePicker.NextTrigger>\n\t</DatePicker.ViewControl>\n);\n\n/**\n * Day view - displays calendar grid with days of the month\n */\nconst DayView = () => (\n\t<DatePicker.View view=\"day\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableHead className={styles.tableHead}>\n\t\t\t\t\t\t<DatePicker.TableRow className={styles.tableRow}>\n\t\t\t\t\t\t\t{datePicker.weekDays.map((weekDay, id) => (\n\t\t\t\t\t\t\t\t<DatePicker.TableHeader key={id} className={styles.tableHeader}>\n\t\t\t\t\t\t\t\t\t<DsTypography variant=\"body-md-md\">{weekDay.short}</DsTypography>\n\t\t\t\t\t\t\t\t</DatePicker.TableHeader>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t</DatePicker.TableHead>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.weeks.map((week, weekId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={weekId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{week.map((day, dayId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={dayId} value={day}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{day.day}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\n/**\n * Month view - displays grid with months of the year\n */\nconst MonthView = () => (\n\t<DatePicker.View view=\"month\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.getMonthsGrid({ columns: 4, format: 'short' }).map((months, rowId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={rowId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{months.map((month, monthId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={monthId} value={month.value}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{month.label}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\n/**\n * Year view - displays grid with years in a decade\n */\nconst YearView = () => (\n\t<DatePicker.View view=\"year\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.getYearsGrid({ columns: 4 }).map((years, rowId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={rowId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{years.map((year, yearId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={yearId} value={year.value}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{year.label}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\nexport default DsDateInput;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ds-date-input.js","names":["ChangeEvent","Fragment","useRef","useState","DatePicker","Portal","classNames","DsDateInputProps","dateValuesToStrings","formatDateInputValue","isoStringToDateValue","parseInputText","stringToDateValue","validateDateString","DsIcon","DsTypography","styles","DsDateInput","range","placeholder","style","className","disablePortal","onValueChange","onOpenChange","value","_value","defaultValue","_defaultValue","min","_min","max","_max","disabled","readOnly","id","datePickerProps","undefined","isFocused","setIsFocused","isOpen","setIsOpen","prevValue","inputRef","HTMLInputElement","current","JSON","stringify","clear","handleInputChange","e","text","target","validation","isValid","parsedValue","handleBlur","showClearButton","length","Wrapper","details","placement","gutter","open","dateInputControl","dateInputButton","input","positioner","content","calendarView","CalendarViewControl","$","_c","t0","Symbol","for","prevTrigger","t1","viewTrigger","t2","viewControl","nextTrigger","DayView","_temp4","MonthView","_temp7","YearView","_temp0","_temp","weekDay","tableHeader","short","_temp2","day","dayId","tableCellTrigger","tableCellTriggerValue","_temp3","week","weekId","tableRow","map","datePicker","table","tableHead","weekDays","tableBody","weeks","_temp5","month","monthId","label","_temp6","months","rowId","getMonthsGrid","columns","format","_temp8","year","yearId","_temp9","years","getYearsGrid"],"sources":["../../../src/components/ds-date-input/ds-date-input.tsx"],"sourcesContent":["import { type ChangeEvent, Fragment, useRef, useState } from 'react';\nimport { DatePicker } from '@ark-ui/react/date-picker';\nimport { Portal } from '@ark-ui/react/portal';\nimport classNames from 'classnames';\nimport type { DsDateInputProps } from './ds-date-input.types';\nimport {\n\tdateValuesToStrings,\n\tformatDateInputValue,\n\tisoStringToDateValue,\n\tparseInputText,\n\tstringToDateValue,\n\tvalidateDateString,\n} from './ds-date-input.utils';\nimport { DsIcon } from '../ds-icon';\nimport { DsTypography } from '../ds-typography';\nimport styles from './ds-date-input.module.scss';\n\n/**\n * Design system date input component with integrated calendar picker.\n *\n * Supports both single date and date range selection with a single text input field.\n * Features built-in validation, manual text entry, and calendar selection.\n */\nconst DsDateInput = ({\n\trange = false,\n\tplaceholder,\n\tstyle,\n\tclassName,\n\tdisablePortal = false,\n\tonValueChange,\n\tonOpenChange,\n\tvalue: _value,\n\tdefaultValue: _defaultValue,\n\tmin: _min,\n\tmax: _max,\n\tdisabled,\n\treadOnly,\n\tid,\n\t...datePickerProps\n}: DsDateInputProps) => {\n\tconst min = _min ? isoStringToDateValue(_min) : undefined;\n\tconst max = _max ? isoStringToDateValue(_max) : undefined;\n\n\t// Convert public API (string | [string, string]) to internal API (DateValue[])\n\tconst value = _value ? stringToDateValue(_value) : [];\n\tconst defaultValue = _defaultValue ? stringToDateValue(_defaultValue) : [];\n\n\t// Local state for manual text editing\n\tconst [isFocused, setIsFocused] = useState(false);\n\tconst [isOpen, setIsOpen] = useState(false);\n\n\tconst prevValue = useRef<string | null>(null);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\t// Reformat the input value on every value change\n\t// We don't format when the input is focused since the date value might get updated while the user is typing\n\t// but we don't want to reformat the input text for him while he's typing.\n\tif (!isFocused && prevValue.current !== JSON.stringify(value)) {\n\t\tprevValue.current = JSON.stringify(value);\n\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = formatDateInputValue(value, range);\n\t\t}\n\t}\n\n\tconst clear = () => {\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = '';\n\t\t}\n\n\t\tonValueChange?.(undefined);\n\t};\n\n\tconst handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {\n\t\tconst text = e.target.value;\n\n\t\t// Try to parse and validate as the user types\n\t\tconst validation = validateDateString({ text, range, min, max });\n\n\t\tif (validation.isValid) {\n\t\t\tconst parsedValue = parseInputText(text, range);\n\t\t\tonValueChange?.(dateValuesToStrings(parsedValue, range) as never);\n\t\t}\n\t};\n\n\tconst handleBlur = () => {\n\t\tsetIsFocused(false);\n\n\t\tconst text = inputRef.current?.value || '';\n\t\tconst validation = validateDateString({ text, range, min, max });\n\n\t\t// Clear invalid input on blur\n\t\tif (!validation.isValid) {\n\t\t\tclear();\n\t\t\treturn;\n\t\t}\n\n\t\tconst parsedValue = parseInputText(text, range);\n\n\t\tonValueChange?.(dateValuesToStrings(parsedValue, range) as never);\n\t};\n\n\tconst showClearButton = !disabled && !readOnly && !!(value.length > 0 ? value : defaultValue).length;\n\tconst Wrapper = disablePortal ? Fragment : Portal;\n\n\treturn (\n\t\t<DatePicker.Root\n\t\t\tvalue={value}\n\t\t\tdefaultValue={defaultValue}\n\t\t\tonValueChange={(details) => {\n\t\t\t\tonValueChange?.(dateValuesToStrings(details.value, range) as never);\n\t\t\t}}\n\t\t\tselectionMode={range ? 'range' : 'single'}\n\t\t\tpositioning={{ placement: 'bottom-start', gutter: 4 }}\n\t\t\tcloseOnSelect={!range}\n\t\t\tmin={min}\n\t\t\tmax={max}\n\t\t\tdisabled={disabled}\n\t\t\treadOnly={readOnly}\n\t\t\topen={isOpen}\n\t\t\tonOpenChange={(details) => {\n\t\t\t\t// Don't close the calendar when the user is typing\n\t\t\t\tif (!isFocused) {\n\t\t\t\t\tsetIsOpen(details.open);\n\t\t\t\t\tonOpenChange?.(details.open);\n\t\t\t\t}\n\t\t\t}}\n\t\t\t{...datePickerProps}\n\t\t>\n\t\t\t<DatePicker.Control\n\t\t\t\tstyle={style}\n\t\t\t\tclassName={classNames(\n\t\t\t\t\tstyles.dateInputControl,\n\t\t\t\t\tdisabled && styles.disabled,\n\t\t\t\t\treadOnly && styles.readOnly,\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<DatePicker.Trigger asChild>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.dateInputButton}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\taria-label=\"Open calendar\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsIcon icon=\"calendar_month\" size=\"small\" />\n\t\t\t\t\t</button>\n\t\t\t\t</DatePicker.Trigger>\n\n\t\t\t\t<input\n\t\t\t\t\tref={inputRef}\n\t\t\t\t\tid={id}\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\tplaceholder={placeholder ?? (range ? 'MM/DD/YYYY - MM/DD/YYYY' : 'MM/DD/YYYY')}\n\t\t\t\t\tdefaultValue={formatDateInputValue(value.length > 0 ? value : defaultValue, range)}\n\t\t\t\t\tonChange={handleInputChange}\n\t\t\t\t\tonBlur={handleBlur}\n\t\t\t\t\tonFocus={() => setIsFocused(true)}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t/>\n\n\t\t\t\t{showClearButton && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.dateInputButton}\n\t\t\t\t\t\tonClick={clear}\n\t\t\t\t\t\taria-label={range ? 'Clear date range' : 'Clear date'}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DsIcon icon=\"close\" size=\"small\" />\n\t\t\t\t\t</button>\n\t\t\t\t)}\n\t\t\t</DatePicker.Control>\n\n\t\t\t<Wrapper>\n\t\t\t\t<DatePicker.Positioner className={styles.positioner}>\n\t\t\t\t\t<DatePicker.Content className={styles.content}>\n\t\t\t\t\t\t<CalendarViewControl />\n\t\t\t\t\t\t<div className={styles.calendarView}>\n\t\t\t\t\t\t\t<DayView />\n\t\t\t\t\t\t\t<MonthView />\n\t\t\t\t\t\t\t<YearView />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DatePicker.Content>\n\t\t\t\t</DatePicker.Positioner>\n\t\t\t</Wrapper>\n\t\t</DatePicker.Root>\n\t);\n};\n\n/**\n * Calendar view control with navigation buttons\n */\nconst CalendarViewControl = () => (\n\t<DatePicker.ViewControl className={styles.viewControl}>\n\t\t<DatePicker.PrevTrigger className={styles.prevTrigger}>\n\t\t\t<DsIcon icon=\"chevron_left\" size=\"small\" />\n\t\t</DatePicker.PrevTrigger>\n\t\t<DatePicker.ViewTrigger className={styles.viewTrigger} asChild>\n\t\t\t<button type=\"button\">\n\t\t\t\t<DsTypography variant=\"body-md-md\" asChild>\n\t\t\t\t\t<DatePicker.RangeText />\n\t\t\t\t</DsTypography>\n\t\t\t</button>\n\t\t</DatePicker.ViewTrigger>\n\t\t<DatePicker.NextTrigger className={styles.nextTrigger}>\n\t\t\t<DsIcon icon=\"chevron_right\" size=\"small\" />\n\t\t</DatePicker.NextTrigger>\n\t</DatePicker.ViewControl>\n);\n\n/**\n * Day view - displays calendar grid with days of the month\n */\nconst DayView = () => (\n\t<DatePicker.View view=\"day\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableHead className={styles.tableHead}>\n\t\t\t\t\t\t<DatePicker.TableRow className={styles.tableRow}>\n\t\t\t\t\t\t\t{datePicker.weekDays.map((weekDay, id) => (\n\t\t\t\t\t\t\t\t<DatePicker.TableHeader key={id} className={styles.tableHeader}>\n\t\t\t\t\t\t\t\t\t<DsTypography variant=\"body-md-md\">{weekDay.short}</DsTypography>\n\t\t\t\t\t\t\t\t</DatePicker.TableHeader>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t</DatePicker.TableHead>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.weeks.map((week, weekId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={weekId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{week.map((day, dayId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={dayId} value={day}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{day.day}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\n/**\n * Month view - displays grid with months of the year\n */\nconst MonthView = () => (\n\t<DatePicker.View view=\"month\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.getMonthsGrid({ columns: 4, format: 'short' }).map((months, rowId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={rowId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{months.map((month, monthId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={monthId} value={month.value}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{month.label}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\n/**\n * Year view - displays grid with years in a decade\n */\nconst YearView = () => (\n\t<DatePicker.View view=\"year\">\n\t\t<DatePicker.Context>\n\t\t\t{(datePicker) => (\n\t\t\t\t<DatePicker.Table className={styles.table}>\n\t\t\t\t\t<DatePicker.TableBody className={styles.tableBody}>\n\t\t\t\t\t\t{datePicker.getYearsGrid({ columns: 4 }).map((years, rowId) => (\n\t\t\t\t\t\t\t<DatePicker.TableRow key={rowId} className={styles.tableRow}>\n\t\t\t\t\t\t\t\t{years.map((year, yearId) => (\n\t\t\t\t\t\t\t\t\t<DatePicker.TableCell key={yearId} value={year.value}>\n\t\t\t\t\t\t\t\t\t\t<DatePicker.TableCellTrigger className={styles.tableCellTrigger}>\n\t\t\t\t\t\t\t\t\t\t\t<DsTypography className={styles.tableCellTriggerValue} variant=\"body-md-md\">\n\t\t\t\t\t\t\t\t\t\t\t\t{year.label}\n\t\t\t\t\t\t\t\t\t\t\t</DsTypography>\n\t\t\t\t\t\t\t\t\t\t</DatePicker.TableCellTrigger>\n\t\t\t\t\t\t\t\t\t</DatePicker.TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</DatePicker.TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</DatePicker.TableBody>\n\t\t\t\t</DatePicker.Table>\n\t\t\t)}\n\t\t</DatePicker.Context>\n\t</DatePicker.View>\n);\n\nexport default DsDateInput;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAuBA,MAAMiB,eAAe,EACpBC,QAAQ,OACRC,aACAC,OACAC,WACAC,gBAAgB,OAChBC,eACAC,cACAC,OAAOC,QACPC,cAAcC,eACdC,KAAKC,MACLC,KAAKC,MACLC,UACAC,UACAC,IACA,GAAGC,sBACoB;CACvB,MAAMP,MAAMC,OAAOpB,qBAAqBoB,KAAK,GAAGO;CAChD,MAAMN,MAAMC,OAAOtB,qBAAqBsB,KAAK,GAAGK;CAGhD,MAAMZ,QAAQC,SAASd,kBAAkBc,OAAO,GAAG,EAAE;CACrD,MAAMC,eAAeC,gBAAgBhB,kBAAkBgB,cAAc,GAAG,EAAE;CAG1E,MAAM,CAACU,WAAWC,gBAAgBpC,SAAS,MAAM;CACjD,MAAM,CAACqC,QAAQC,aAAatC,SAAS,MAAM;CAE3C,MAAMuC,YAAYxC,OAAsB,KAAK;CAC7C,MAAMyC,WAAWzC,OAAyB,KAAK;AAK/C,KAAI,CAACoC,aAAaI,UAAUG,YAAYC,KAAKC,UAAUtB,MAAM,EAAE;AAC9DiB,YAAUG,UAAUC,KAAKC,UAAUtB,MAAM;AAEzC,MAAIkB,SAASE,QACZF,UAASE,QAAQpB,QAAQhB,qBAAqBgB,OAAOP,MAAM;;CAI7D,MAAM8B,cAAc;AACnB,MAAIL,SAASE,QACZF,UAASE,QAAQpB,QAAQ;AAG1BF,kBAAgBc,OAAU;;CAG3B,MAAMY,qBAAqBC,MAAqC;EAC/D,MAAMC,OAAOD,EAAEE,OAAO3B;AAKtB,MAFmBZ,mBAAmB;GAAEsC;GAAMjC;GAAOW;GAAKE;GAAK,CAAC,CAEjDuB,SAAS;GACvB,MAAMC,cAAc5C,eAAewC,MAAMjC,MAAM;AAC/CK,mBAAgBf,oBAAoB+C,aAAarC,MAAM,CAAU;;;CAInE,MAAMsC,mBAAmB;AACxBjB,eAAa,MAAM;EAEnB,MAAMY,SAAOR,SAASE,SAASpB,SAAS;AAIxC,MAAI,CAHeZ,mBAAmB;GAAEsC,MAAAA;GAAMjC;GAAOW;GAAKE;GAAK,CAAC,CAGhDuB,SAAS;AACxBN,UAAO;AACP;;EAGD,MAAMO,gBAAc5C,eAAewC,QAAMjC,MAAM;AAE/CK,kBAAgBf,oBAAoB+C,eAAarC,MAAM,CAAU;;CAGlE,MAAMuC,kBAAkB,CAACxB,YAAY,CAACC,YAAY,CAAC,EAAET,MAAMiC,SAAS,IAAIjC,QAAQE,cAAc+B;CAC9F,MAAMC,UAAUrC,gBAAgBrB,aAAWI;AAE3C,QACC,qBAAC,WAAW;EACJoB;EACOE;EACd,gBAAgBiC,YAAY;AAC3BrC,mBAAgBf,oBAAoBoD,QAAQnC,OAAOP,MAAM,CAAU;;EAEpE,eAAeA,QAAQ,UAAU;EACjC,aAAa;GAAE2C,WAAW;GAAgBC,QAAQ;GAAG;EACrD,eAAe,CAAC5C;EACXW;EACAE;EACKE;EACAC;EACV,MAAMM;EACN,eAAeoB,cAAY;AAE1B,OAAI,CAACtB,WAAW;AACfG,cAAUmB,UAAQG,KAAK;AACvBvC,mBAAeoC,UAAQG,KAAK;;;EAG9B,GAAI3B;aAEJ,qBAAC,WAAW;GACJhB;GACP,WAAWd,WACVU,6BAAOgD,kBACP/B,YAAYjB,6BAAOiB,UACnBC,YAAYlB,6BAAOkB,UACnBb,UACA;;IAED,oBAAC,WAAW;KAAQ;eACnB,oBAAC;MACA,MAAK;MACL,WAAWL,6BAAOiD;MACRhC;MACV,cAAW;gBAEX,oBAAC;OAAO,MAAK;OAAiB,MAAK;QAAO;OACnC;MACW;IAEpB,oBAAC;KACA,KAAKU;KACDR;KACJ,MAAK;KACL,WAAWnB,6BAAOkD;KAClB,aAAa/C,gBAAgBD,QAAQ,4BAA4B;KACjE,cAAcT,qBAAqBgB,MAAMiC,SAAS,IAAIjC,QAAQE,cAAcT,MAAM;KAClF,UAAU+B;KACV,QAAQO;KACR,eAAejB,aAAa,KAAK;KACvBN;KACAC;MAAS;IAGnBuB,mBACA,oBAAC;KACA,MAAK;KACL,WAAWzC,6BAAOiD;KAClB,SAASjB;KACT,cAAY9B,QAAQ,qBAAqB;eAEzC,oBAAC;MAAO,MAAK;MAAQ,MAAK;OAAO;MAElC;;IACkB,EAEpB,oBAAC,qBACA,oBAAC,WAAW;GAAW,WAAWF,6BAAOmD;aACxC,qBAAC,WAAW;IAAQ,WAAWnD,6BAAOoD;eACrC,oBAAC,wBAAmB,EACpB,qBAAC;KAAI,WAAWpD,6BAAOqD;;MACtB,oBAAC,YAAO;MACR,oBAAC,cAAS;MACV,oBAAC,aAAQ;;MACL;KACc;IACE,GACf;GACQ;;;;;AAOpB,MAAMC,4BAAsB;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AAE1BF,OAAA,oBAAA,WAAA;GAAmC,WAAAzD,6BAAM4D;aACxC,oBAAC;IAAY,MAAA;IAAoB,MAAA;KAClC;IAAyB;AAAAL,IAAA,KAAAE;OAAAA,MAAAF,EAAA;CAAA,IAAAM;AAAA,KAAAN,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AACzBE,OAAA,oBAAA,WAAA;GAAmC,WAAA7D,6BAAM8D;GAAc,SAAA;aACtD,oBAAA;IAAa,MAAA;cACZ,oBAAC;KAAqB,SAAA;KAAa,SAAA;eAClC,oBAAA,WAAA,cACD;MACD;KACD;IAAyB;AAAAP,IAAA,KAAAM;OAAAA,MAAAN,EAAA;CAAA,IAAAQ;AAAA,KAAAR,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AAV1BI,OAAA,qBAAA,WAAA;GAAmC,WAAA/D,6BAAMgE;;IACxCP;IAGAI;IAOA,oBAAA,WAAA;KAAmC,WAAA7D,6BAAMiE;eACxC,oBAAC;MAAY,MAAA;MAAqB,MAAA;OACnC;MACD;;IAAyB;AAAAV,IAAA,KAAAQ;OAAAA,MAAAR,EAAA;AAAA,QAdzBQ;;;;;AAoBD,MAAMG,gBAAU;CAAA,MAAAX,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AACfF,OAAA,oBAAA,WAAA;GAAsB,MAAA;aACrB,oBAAA,WAAA,qBACEU,SA6BH;IAAkB;AAAAZ,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QA/BlBE;;;;;AAqCD,MAAMW,kBAAY;CAAA,MAAAb,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AACjBF,OAAA,oBAAA,WAAA;GAAsB,MAAA;aACrB,oBAAA,WAAA,qBACEY,SAoBH;IAAkB;AAAAd,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAtBlBE;;;;;AA4BD,MAAMa,iBAAW;CAAA,MAAAf,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AAChBF,OAAA,oBAAA,WAAA;GAAsB,MAAA;aACrB,oBAAA,WAAA,qBACEc,SAoBH;IAAkB;AAAAhB,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAtBlBE;;AAyBD,4BAAexD;AA7FC,SAAAuE,MAAAC,SAAAtD,IAAA;AAAA,QAQR,oBAAA,WAAA;EAA4C,WAAAnB,6BAAM0E;YACjD,oBAAC;GAAqB,SAAA;aAAcD,QAAOE;IAC5C;IAF6BxD,GAEJ;;AAVjB,SAAAyD,OAAAC,KAAAC,OAAA;AAAA,QAkBP,oBAAA,WAAA;EAAyCD,OAAAA;YACxC,oBAAA,WAAA;GAAwC,WAAA7E,6BAAM+E;aAC7C,oBAAC;IAAwB,WAAA/E,6BAAMgF;IAAgC,SAAA;cAC7DH,IAAGA;KAEN;IACD;IAN2BC,MAMJ;;AAxBhB,SAAAG,OAAAC,MAAAC,QAAA;AAAA,QAgBT,oBAAA,WAAA;EAA6C,WAAAnF,6BAAMoF;YACjDF,KAAIG,IAAKT,OAQT;IATwBO,OAUJ;;AA1Bb,SAAAhB,OAAAmB,YAAA;AAAA,QAIZ,qBAAA,WAAA;EAA6B,WAAAtF,6BAAMuF;aAClC,oBAAA,WAAA;GAAiC,WAAAvF,6BAAMwF;aACtC,oBAAA,WAAA;IAAgC,WAAAxF,6BAAMoF;cACpCE,WAAUG,SAASJ,IAAKb,MAIxB;KAEH;IACA,sBAAA,WAAA;GAAiC,WAAAxE,6BAAM0F;aACrCJ,WAAUK,MAAMN,IAAKJ,OAYrB;IAEH;GAAmB;;AASL,SAAAW,OAAAC,OAAAC,SAAA;AAAA,QAST,oBAAA,WAAA;EAA2C,OAAAD,MAAKpF;YAC/C,oBAAA,WAAA;GAAwC,WAAAT,6BAAM+E;aAC7C,oBAAC;IAAwB,WAAA/E,6BAAMgF;IAAgC,SAAA;cAC7Da,MAAKE;KAER;IACD;IAN2BD,QAMJ;;AAfd,SAAAE,OAAAC,QAAAC,OAAA;AAAA,QAOX,oBAAA,WAAA;EAA4C,WAAAlG,6BAAMoF;YAChDa,OAAMZ,IAAKO,OAQX;IATwBM,MAUJ;;AAjBX,SAAA7B,OAAAiB,YAAA;AAAA,QAId,oBAAA,WAAA;EAA6B,WAAAtF,6BAAMuF;YAClC,oBAAA,WAAA;GAAiC,WAAAvF,6BAAM0F;aACrCJ,WAAUa,cAAe;IAAAC,SAAW;IAACC,QAAU;IAAS,CAAC,CAAAhB,IAAKW,OAY9D;IAEH;GAAmB;;AASN,SAAAM,OAAAC,MAAAC,QAAA;AAAA,QASR,oBAAA,WAAA;EAA0C,OAAAD,KAAI9F;YAC7C,oBAAA,WAAA;GAAwC,WAAAT,6BAAM+E;aAC7C,oBAAC;IAAwB,WAAA/E,6BAAMgF;IAAgC,SAAA;cAC7DuB,KAAIR;KAEP;IACD;IAN2BS,OAMJ;;AAff,SAAAC,OAAAC,OAAAR,OAAA;AAAA,QAOV,oBAAA,WAAA;EAA4C,WAAAlG,6BAAMoF;YAChDsB,MAAKrB,IAAKiB,OAQV;IATwBJ,MAUJ;;AAjBZ,SAAA3B,OAAAe,YAAA;AAAA,QAIb,oBAAA,WAAA;EAA6B,WAAAtF,6BAAMuF;YAClC,oBAAA,WAAA;GAAiC,WAAAvF,6BAAM0F;aACrCJ,WAAUqB,aAAc,EAAAP,SAAW,GAAG,CAAC,CAAAf,IAAKoB,OAY5C;IAEH;GAAmB"}