@raystack/apsara 0.32.0 → 0.33.1-alpha

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 (229) hide show
  1. package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
  2. package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
  3. package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
  4. package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
  5. package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs +1 -0
  6. package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs.map +1 -1
  7. package/dist/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js +1 -1
  8. package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +20 -0
  9. package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -1
  10. package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +20 -1
  11. package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -1
  12. package/dist/sidebar/sidebar.cjs +6 -6
  13. package/dist/sidebar/sidebar.cjs.map +1 -1
  14. package/dist/sidebar/sidebar.d.ts +4 -4
  15. package/dist/sidebar/sidebar.js +6 -6
  16. package/dist/sidebar/sidebar.js.map +1 -1
  17. package/dist/style.css +1 -1
  18. package/dist/v1/_virtual/isSameOrAfter.cjs +6 -0
  19. package/dist/v1/_virtual/isSameOrAfter.cjs.map +1 -0
  20. package/dist/v1/_virtual/isSameOrAfter.js +4 -0
  21. package/dist/v1/_virtual/isSameOrAfter.js.map +1 -0
  22. package/dist/v1/_virtual/isSameOrBefore.cjs +6 -0
  23. package/dist/v1/_virtual/isSameOrBefore.cjs.map +1 -0
  24. package/dist/v1/_virtual/isSameOrBefore.js +4 -0
  25. package/dist/v1/_virtual/isSameOrBefore.js.map +1 -0
  26. package/dist/v1/components/calendar/calendar.cjs +1 -1
  27. package/dist/v1/components/calendar/calendar.cjs.map +1 -1
  28. package/dist/v1/components/calendar/calendar.js +1 -1
  29. package/dist/v1/components/calendar/calendar.js.map +1 -1
  30. package/dist/v1/components/calendar/date-picker.cjs +26 -17
  31. package/dist/v1/components/calendar/date-picker.cjs.map +1 -1
  32. package/dist/v1/components/calendar/date-picker.d.ts.map +1 -1
  33. package/dist/v1/components/calendar/date-picker.js +26 -17
  34. package/dist/v1/components/calendar/date-picker.js.map +1 -1
  35. package/dist/v1/components/chip/chip.cjs +3 -3
  36. package/dist/v1/components/chip/chip.cjs.map +1 -1
  37. package/dist/v1/components/chip/chip.d.ts +2 -1
  38. package/dist/v1/components/chip/chip.d.ts.map +1 -1
  39. package/dist/v1/components/chip/chip.js +3 -3
  40. package/dist/v1/components/chip/chip.js.map +1 -1
  41. package/dist/v1/components/data-table/components/content.cjs +81 -0
  42. package/dist/v1/components/data-table/components/content.cjs.map +1 -0
  43. package/dist/v1/components/data-table/components/content.d.ts +3 -0
  44. package/dist/v1/components/data-table/components/content.d.ts.map +1 -0
  45. package/dist/v1/components/data-table/components/content.js +79 -0
  46. package/dist/v1/components/data-table/components/content.js.map +1 -0
  47. package/dist/v1/components/data-table/components/display-properties.cjs +14 -0
  48. package/dist/v1/components/data-table/components/display-properties.cjs.map +1 -0
  49. package/dist/v1/components/data-table/components/display-properties.d.ts +5 -0
  50. package/dist/v1/components/data-table/components/display-properties.d.ts.map +1 -0
  51. package/dist/v1/components/data-table/components/display-properties.js +12 -0
  52. package/dist/v1/components/data-table/components/display-properties.js.map +1 -0
  53. package/dist/v1/components/data-table/components/display-settings.cjs +51 -0
  54. package/dist/v1/components/data-table/components/display-settings.cjs.map +1 -0
  55. package/dist/v1/components/data-table/components/display-settings.d.ts +2 -0
  56. package/dist/v1/components/data-table/components/display-settings.d.ts.map +1 -0
  57. package/dist/v1/components/data-table/components/display-settings.js +49 -0
  58. package/dist/v1/components/data-table/components/display-settings.js.map +1 -0
  59. package/dist/v1/components/data-table/components/filters.cjs +44 -0
  60. package/dist/v1/components/data-table/components/filters.cjs.map +1 -0
  61. package/dist/v1/components/data-table/components/filters.d.ts +2 -0
  62. package/dist/v1/components/data-table/components/filters.d.ts.map +1 -0
  63. package/dist/v1/components/data-table/components/filters.js +42 -0
  64. package/dist/v1/components/data-table/components/filters.js.map +1 -0
  65. package/dist/v1/components/data-table/components/grouping.cjs +31 -0
  66. package/dist/v1/components/data-table/components/grouping.cjs.map +1 -0
  67. package/dist/v1/components/data-table/components/grouping.d.ts +9 -0
  68. package/dist/v1/components/data-table/components/grouping.d.ts.map +1 -0
  69. package/dist/v1/components/data-table/components/grouping.js +29 -0
  70. package/dist/v1/components/data-table/components/grouping.js.map +1 -0
  71. package/dist/v1/components/data-table/components/ordering.cjs +24 -0
  72. package/dist/v1/components/data-table/components/ordering.cjs.map +1 -0
  73. package/dist/v1/components/data-table/components/ordering.d.ts +8 -0
  74. package/dist/v1/components/data-table/components/ordering.d.ts.map +1 -0
  75. package/dist/v1/components/data-table/components/ordering.js +22 -0
  76. package/dist/v1/components/data-table/components/ordering.js.map +1 -0
  77. package/dist/v1/components/data-table/components/search.cjs +30 -0
  78. package/dist/v1/components/data-table/components/search.cjs.map +1 -0
  79. package/dist/v1/components/data-table/components/search.d.ts +3 -0
  80. package/dist/v1/components/data-table/components/search.d.ts.map +1 -0
  81. package/dist/v1/components/data-table/components/search.js +28 -0
  82. package/dist/v1/components/data-table/components/search.js.map +1 -0
  83. package/dist/v1/components/data-table/components/toolbar.cjs +15 -0
  84. package/dist/v1/components/data-table/components/toolbar.cjs.map +1 -0
  85. package/dist/v1/components/data-table/components/toolbar.d.ts +4 -0
  86. package/dist/v1/components/data-table/components/toolbar.d.ts.map +1 -0
  87. package/dist/v1/components/data-table/components/toolbar.js +13 -0
  88. package/dist/v1/components/data-table/components/toolbar.js.map +1 -0
  89. package/dist/v1/components/data-table/context.cjs +8 -0
  90. package/dist/v1/components/data-table/context.cjs.map +1 -0
  91. package/dist/v1/components/data-table/context.d.ts +3 -0
  92. package/dist/v1/components/data-table/context.d.ts.map +1 -0
  93. package/dist/v1/components/data-table/context.js +6 -0
  94. package/dist/v1/components/data-table/context.js.map +1 -0
  95. package/dist/v1/components/data-table/data-table.cjs +87 -0
  96. package/dist/v1/components/data-table/data-table.cjs.map +1 -0
  97. package/dist/v1/components/data-table/data-table.d.ts +12 -0
  98. package/dist/v1/components/data-table/data-table.d.ts.map +1 -0
  99. package/dist/v1/components/data-table/data-table.js +85 -0
  100. package/dist/v1/components/data-table/data-table.js.map +1 -0
  101. package/dist/v1/components/data-table/data-table.module.css.cjs +8 -0
  102. package/dist/v1/components/data-table/data-table.module.css.cjs.map +1 -0
  103. package/dist/v1/components/data-table/data-table.module.css.js +4 -0
  104. package/dist/v1/components/data-table/data-table.module.css.js.map +1 -0
  105. package/dist/v1/components/data-table/data-table.types.cjs +9 -0
  106. package/dist/v1/components/data-table/data-table.types.cjs.map +1 -0
  107. package/dist/v1/components/data-table/data-table.types.d.ts +102 -0
  108. package/dist/v1/components/data-table/data-table.types.d.ts.map +1 -0
  109. package/dist/v1/components/data-table/data-table.types.js +7 -0
  110. package/dist/v1/components/data-table/data-table.types.js.map +1 -0
  111. package/dist/v1/components/data-table/hooks/useDataTable.cjs +15 -0
  112. package/dist/v1/components/data-table/hooks/useDataTable.cjs.map +1 -0
  113. package/dist/v1/components/data-table/hooks/useDataTable.d.ts +2 -0
  114. package/dist/v1/components/data-table/hooks/useDataTable.d.ts.map +1 -0
  115. package/dist/v1/components/data-table/hooks/useDataTable.js +13 -0
  116. package/dist/v1/components/data-table/hooks/useDataTable.js.map +1 -0
  117. package/dist/v1/components/data-table/hooks/useFilters.cjs +78 -0
  118. package/dist/v1/components/data-table/hooks/useFilters.cjs.map +1 -0
  119. package/dist/v1/components/data-table/hooks/useFilters.d.ts +9 -0
  120. package/dist/v1/components/data-table/hooks/useFilters.d.ts.map +1 -0
  121. package/dist/v1/components/data-table/hooks/useFilters.js +76 -0
  122. package/dist/v1/components/data-table/hooks/useFilters.js.map +1 -0
  123. package/dist/v1/components/data-table/index.d.ts +4 -0
  124. package/dist/v1/components/data-table/index.d.ts.map +1 -0
  125. package/dist/v1/components/data-table/utils/filter-operations.cjs +83 -0
  126. package/dist/v1/components/data-table/utils/filter-operations.cjs.map +1 -0
  127. package/dist/v1/components/data-table/utils/filter-operations.d.ts +11 -0
  128. package/dist/v1/components/data-table/utils/filter-operations.d.ts.map +1 -0
  129. package/dist/v1/components/data-table/utils/filter-operations.js +80 -0
  130. package/dist/v1/components/data-table/utils/filter-operations.js.map +1 -0
  131. package/dist/v1/components/data-table/utils/index.cjs +156 -0
  132. package/dist/v1/components/data-table/utils/index.cjs.map +1 -0
  133. package/dist/v1/components/data-table/utils/index.d.ts +14 -0
  134. package/dist/v1/components/data-table/utils/index.d.ts.map +1 -0
  135. package/dist/v1/components/data-table/utils/index.js +147 -0
  136. package/dist/v1/components/data-table/utils/index.js.map +1 -0
  137. package/dist/v1/components/dialog/dialog.cjs +4 -3
  138. package/dist/v1/components/dialog/dialog.cjs.map +1 -1
  139. package/dist/v1/components/dialog/dialog.d.ts +9 -2
  140. package/dist/v1/components/dialog/dialog.d.ts.map +1 -1
  141. package/dist/v1/components/dialog/dialog.js +5 -4
  142. package/dist/v1/components/dialog/dialog.js.map +1 -1
  143. package/dist/v1/components/dialog/dialog.module.css.cjs +1 -1
  144. package/dist/v1/components/dialog/dialog.module.css.js +1 -1
  145. package/dist/v1/components/filter-chip/filter-chip.cjs +28 -19
  146. package/dist/v1/components/filter-chip/filter-chip.cjs.map +1 -1
  147. package/dist/v1/components/filter-chip/filter-chip.d.ts +3 -7
  148. package/dist/v1/components/filter-chip/filter-chip.d.ts.map +1 -1
  149. package/dist/v1/components/filter-chip/filter-chip.js +28 -19
  150. package/dist/v1/components/filter-chip/filter-chip.js.map +1 -1
  151. package/dist/v1/components/icons/assets/filter.svg.cjs +41 -0
  152. package/dist/v1/components/icons/assets/filter.svg.cjs.map +1 -0
  153. package/dist/v1/components/icons/assets/filter.svg.js +20 -0
  154. package/dist/v1/components/icons/assets/filter.svg.js.map +1 -0
  155. package/dist/v1/components/icons/icons.d.ts +3 -0
  156. package/dist/v1/components/icons/icons.d.ts.map +1 -0
  157. package/dist/v1/components/icons/index.d.ts +2 -0
  158. package/dist/v1/components/icons/index.d.ts.map +1 -0
  159. package/dist/v1/components/input-field/input-field.cjs +1 -1
  160. package/dist/v1/components/input-field/input-field.cjs.map +1 -1
  161. package/dist/v1/components/input-field/input-field.js +1 -1
  162. package/dist/v1/components/input-field/input-field.js.map +1 -1
  163. package/dist/v1/components/sidebar/index.d.ts +2 -0
  164. package/dist/v1/components/sidebar/index.d.ts.map +1 -0
  165. package/dist/v1/components/sidebar/sidebar.cjs +46 -0
  166. package/dist/v1/components/sidebar/sidebar.cjs.map +1 -0
  167. package/dist/v1/components/sidebar/sidebar.d.ts +61 -0
  168. package/dist/v1/components/sidebar/sidebar.d.ts.map +1 -0
  169. package/dist/v1/components/sidebar/sidebar.js +44 -0
  170. package/dist/v1/components/sidebar/sidebar.js.map +1 -0
  171. package/dist/v1/components/sidebar/sidebar.module.css.cjs +8 -0
  172. package/dist/v1/components/sidebar/sidebar.module.css.cjs.map +1 -0
  173. package/dist/v1/components/sidebar/sidebar.module.css.js +4 -0
  174. package/dist/v1/components/sidebar/sidebar.module.css.js.map +1 -0
  175. package/dist/v1/components/table/table.cjs.map +1 -1
  176. package/dist/v1/components/table/table.d.ts +2 -2
  177. package/dist/v1/components/table/table.js.map +1 -1
  178. package/dist/v1/components/tooltip/tooltip.cjs +2 -2
  179. package/dist/v1/components/tooltip/tooltip.cjs.map +1 -1
  180. package/dist/v1/components/tooltip/tooltip.d.ts +1 -1
  181. package/dist/v1/components/tooltip/tooltip.d.ts.map +1 -1
  182. package/dist/v1/components/tooltip/tooltip.js +2 -2
  183. package/dist/v1/components/tooltip/tooltip.js.map +1 -1
  184. package/dist/v1/index.cjs +6 -2
  185. package/dist/v1/index.cjs.map +1 -1
  186. package/dist/v1/index.d.ts +2 -1
  187. package/dist/v1/index.d.ts.map +1 -1
  188. package/dist/v1/index.js +4 -1
  189. package/dist/v1/index.js.map +1 -1
  190. package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
  191. package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
  192. package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
  193. package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
  194. package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs +131 -0
  195. package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs.map +1 -0
  196. package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js +72 -0
  197. package/dist/v1/node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js.map +1 -0
  198. package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +3338 -0
  199. package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -0
  200. package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +3299 -0
  201. package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -0
  202. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs +16 -0
  203. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs.map +1 -0
  204. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js +12 -0
  205. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js.map +1 -0
  206. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs +16 -0
  207. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs.map +1 -0
  208. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js +12 -0
  209. package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js.map +1 -0
  210. package/dist/v1/style.css +1 -1
  211. package/dist/v1/types/filters.cjs +39 -0
  212. package/dist/v1/types/filters.cjs.map +1 -0
  213. package/dist/v1/types/filters.d.ts +42 -0
  214. package/dist/v1/types/filters.d.ts.map +1 -0
  215. package/dist/v1/types/filters.js +36 -0
  216. package/dist/v1/types/filters.js.map +1 -0
  217. package/package.json +2 -1
  218. package/dist/v1/components/sidepanel/index.d.ts +0 -2
  219. package/dist/v1/components/sidepanel/index.d.ts.map +0 -1
  220. package/dist/v1/components/sidepanel/sidepanel.cjs +0 -44
  221. package/dist/v1/components/sidepanel/sidepanel.cjs.map +0 -1
  222. package/dist/v1/components/sidepanel/sidepanel.d.ts +0 -51
  223. package/dist/v1/components/sidepanel/sidepanel.d.ts.map +0 -1
  224. package/dist/v1/components/sidepanel/sidepanel.js +0 -42
  225. package/dist/v1/components/sidepanel/sidepanel.js.map +0 -1
  226. package/dist/v1/components/sidepanel/sidepanel.module.css.cjs +0 -8
  227. package/dist/v1/components/sidepanel/sidepanel.module.css.cjs.map +0 -1
  228. package/dist/v1/components/sidepanel/sidepanel.module.css.js +0 -4
  229. package/dist/v1/components/sidepanel/sidepanel.module.css.js.map +0 -1
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var isSameOrAfter = {exports: {}};
4
+
5
+ exports.__module = isSameOrAfter;
6
+ //# sourceMappingURL=isSameOrAfter.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSameOrAfter.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,4 @@
1
+ var isSameOrAfter = {exports: {}};
2
+
3
+ export { isSameOrAfter as __module };
4
+ //# sourceMappingURL=isSameOrAfter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSameOrAfter.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var isSameOrBefore = {exports: {}};
4
+
5
+ exports.__module = isSameOrBefore;
6
+ //# sourceMappingURL=isSameOrBefore.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSameOrBefore.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,4 @@
1
+ var isSameOrBefore = {exports: {}};
2
+
3
+ export { isSameOrBefore as __module };
4
+ //# sourceMappingURL=isSameOrBefore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSameOrBefore.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -46,7 +46,7 @@ const Calendar = function ({ className, classNames, showOutsideDays = true, onDr
46
46
  const message = tooltipMessages[dateLib.dateLib.format(day.date, 'dd-MM-yyyy')];
47
47
  return (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { side: "top", disabled: loadingData || !showTooltip || !message, message: message, children: jsxRuntime.jsxRuntimeExports.jsx("button", { ...buttonProps }) }));
48
48
  },
49
- MonthGrid: (props) => loadingData ? (jsxRuntime.jsxRuntimeExports.jsx(index.default, { count: 6, height: '12px', width: '252px', style: { marginBottom: 'var(--space-5)' }, highlightColor: "var(--background-base)", baseColor: "var(--background-base-hover)" })) : (jsxRuntime.jsxRuntimeExports.jsx("table", { ...props })),
49
+ MonthGrid: (props) => loadingData ? (jsxRuntime.jsxRuntimeExports.jsx(index.default, { count: 6, height: '12px', width: '252px', style: { marginBottom: 'var(--rs-space-5)' }, highlightColor: "var(--rs-color-background-base-primary)", baseColor: "var(--rs-color-background-base-primary-hover)" })) : (jsxRuntime.jsxRuntimeExports.jsx("table", { ...props })),
50
50
  }, classNames: {
51
51
  caption_label: calendar_module.default.caption_label,
52
52
  button_previous: `${calendar_module.default.nav_button} ${calendar_module.default.nav_button_previous}`,
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.cjs","sources":["../../../../v1/components/calendar/calendar.tsx"],"sourcesContent":["import {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n ChevronUpIcon,\n} from '@radix-ui/react-icons';\nimport { cva } from 'class-variance-authority';\nimport { ChangeEvent, useEffect, useState } from 'react';\nimport {\n dateLib,\n DayPicker,\n DayPickerProps,\n DropdownProps,\n} from 'react-day-picker';\nimport Skeleton from 'react-loading-skeleton';\n\nimport { Flex } from '../flex/flex';\nimport { Select } from '../select';\nimport { Tooltip } from '../tooltip';\nimport styles from './calendar.module.css';\n\ninterface OnDropdownOpen {\n onDropdownOpen?: VoidFunction;\n}\n\ninterface CalendarPropsExtended {\n showTooltip?: boolean;\n tooltipMessages?: { [key: string]: any };\n loadingData?: boolean;\n}\n\nexport type CalendarProps = DayPickerProps &\n OnDropdownOpen &\n CalendarPropsExtended;\n\nconst root = cva(styles.calendarRoot);\n\nfunction DropDown({\n options = [],\n value,\n onChange,\n onDropdownOpen,\n}: DropdownProps & OnDropdownOpen) {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n if (open && onDropdownOpen) onDropdownOpen();\n }, [open]);\n\n function handleChange(value: string) {\n if (onChange) {\n onChange({ target: { value } } as ChangeEvent<HTMLSelectElement>);\n }\n }\n\n return (\n <Select\n value={value?.toString()}\n onValueChange={handleChange}\n open={open}\n onOpenChange={setOpen}\n >\n <Select.Trigger\n className={styles.dropdown_trigger}\n iconProps={{\n className: styles.dropdown_icon,\n }}\n >\n <Select.Value />\n </Select.Trigger>\n <Select.Content className={styles.dropdown_content}>\n <Select.ScrollUpButton asChild>\n <Flex justify={'center'}>\n <ChevronUpIcon />\n </Flex>\n </Select.ScrollUpButton>\n <Select.Viewport>\n {options.map((opt) => (\n <Select.Item\n value={opt.value.toString()}\n key={opt.value}\n disabled={opt.disabled}\n textProps={{\n className: styles.dropdown_item_text,\n }}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Viewport>\n <Select.ScrollDownButton asChild>\n <Flex justify={'center'}>\n <ChevronDownIcon />\n </Flex>\n </Select.ScrollDownButton>\n </Select.Content>\n </Select>\n );\n}\n\nexport const Calendar = function ({\n className,\n classNames,\n showOutsideDays = true,\n onDropdownOpen,\n showTooltip = false,\n tooltipMessages = {},\n loadingData = false,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n components={{\n Chevron: (props) => {\n if (props.orientation === 'left') {\n return <ChevronLeftIcon {...props} />;\n }\n return <ChevronRightIcon {...props} />;\n },\n Dropdown: (props: DropdownProps) => (\n <DropDown {...props} onDropdownOpen={onDropdownOpen} />\n ),\n DayButton: (props) => {\n const { day, ...buttonProps } = props;\n const message =\n tooltipMessages[dateLib.format(day.date, 'dd-MM-yyyy')];\n return (\n <Tooltip\n side=\"top\"\n disabled={loadingData || !showTooltip || !message}\n message={message}\n >\n <button {...buttonProps} />\n </Tooltip>\n );\n },\n MonthGrid: (props) =>\n loadingData ? (\n <Skeleton\n count={6}\n height={'12px'}\n width={'252px'}\n style={{ marginBottom: 'var(--space-5)' }}\n highlightColor=\"var(--background-base)\"\n baseColor=\"var(--background-base-hover)\"\n />\n ) : (\n <table {...props} />\n ),\n }}\n classNames={{\n caption_label: styles.caption_label,\n button_previous: `${styles.nav_button} ${styles.nav_button_previous}`,\n button_next: `${styles.nav_button} ${styles.nav_button_next}`,\n month_caption: styles.month_caption,\n months: styles.months,\n nav: styles.nav,\n day: styles.day,\n today: styles.today,\n outside: styles.outside,\n week: styles.week,\n weekdays: styles.week,\n weekday: styles.weekday,\n disabled: styles.disabled,\n selected: styles.selected,\n day_button: styles.day_button,\n range_middle: styles.range_middle,\n range_end: styles.range_end,\n range_start: styles.range_start,\n hidden: styles.hidden,\n dropdowns: styles.dropdowns,\n ...classNames,\n }}\n className={root({ className })}\n mode=\"single\"\n {...props}\n />\n );\n};\n"],"names":["cva","styles","useState","useEffect","_jsxs","Select","_jsx","Flex","ChevronUpIcon","ChevronDownIcon","DayPicker","ChevronLeftIcon","ChevronRightIcon","dateLib","Tooltip","Skeleton"],"mappings":"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"}
1
+ {"version":3,"file":"calendar.cjs","sources":["../../../../v1/components/calendar/calendar.tsx"],"sourcesContent":["import {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n ChevronUpIcon,\n} from '@radix-ui/react-icons';\nimport { cva } from 'class-variance-authority';\nimport { ChangeEvent, useEffect, useState } from 'react';\nimport {\n dateLib,\n DayPicker,\n DayPickerProps,\n DropdownProps,\n} from 'react-day-picker';\nimport Skeleton from 'react-loading-skeleton';\n\nimport { Flex } from '../flex/flex';\nimport { Select } from '../select';\nimport { Tooltip } from '../tooltip';\nimport styles from './calendar.module.css';\n\ninterface OnDropdownOpen {\n onDropdownOpen?: VoidFunction;\n}\n\ninterface CalendarPropsExtended {\n showTooltip?: boolean;\n tooltipMessages?: { [key: string]: any };\n loadingData?: boolean;\n}\n\nexport type CalendarProps = DayPickerProps &\n OnDropdownOpen &\n CalendarPropsExtended;\n\nconst root = cva(styles.calendarRoot);\n\nfunction DropDown({\n options = [],\n value,\n onChange,\n onDropdownOpen,\n}: DropdownProps & OnDropdownOpen) {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n if (open && onDropdownOpen) onDropdownOpen();\n }, [open]);\n\n function handleChange(value: string) {\n if (onChange) {\n onChange({ target: { value } } as ChangeEvent<HTMLSelectElement>);\n }\n }\n\n return (\n <Select\n value={value?.toString()}\n onValueChange={handleChange}\n open={open}\n onOpenChange={setOpen}\n >\n <Select.Trigger\n className={styles.dropdown_trigger}\n iconProps={{\n className: styles.dropdown_icon,\n }}\n >\n <Select.Value />\n </Select.Trigger>\n <Select.Content className={styles.dropdown_content}>\n <Select.ScrollUpButton asChild>\n <Flex justify={'center'}>\n <ChevronUpIcon />\n </Flex>\n </Select.ScrollUpButton>\n <Select.Viewport>\n {options.map((opt) => (\n <Select.Item\n value={opt.value.toString()}\n key={opt.value}\n disabled={opt.disabled}\n textProps={{\n className: styles.dropdown_item_text,\n }}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Viewport>\n <Select.ScrollDownButton asChild>\n <Flex justify={'center'}>\n <ChevronDownIcon />\n </Flex>\n </Select.ScrollDownButton>\n </Select.Content>\n </Select>\n );\n}\n\nexport const Calendar = function ({\n className,\n classNames,\n showOutsideDays = true,\n onDropdownOpen,\n showTooltip = false,\n tooltipMessages = {},\n loadingData = false,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n components={{\n Chevron: (props) => {\n if (props.orientation === 'left') {\n return <ChevronLeftIcon {...props} />;\n }\n return <ChevronRightIcon {...props} />;\n },\n Dropdown: (props: DropdownProps) => (\n <DropDown {...props} onDropdownOpen={onDropdownOpen} />\n ),\n DayButton: (props) => {\n const { day, ...buttonProps } = props;\n const message =\n tooltipMessages[dateLib.format(day.date, 'dd-MM-yyyy')];\n return (\n <Tooltip\n side=\"top\"\n disabled={loadingData || !showTooltip || !message}\n message={message}\n >\n <button {...buttonProps} />\n </Tooltip>\n );\n },\n MonthGrid: (props) =>\n loadingData ? (\n <Skeleton\n count={6}\n height={'12px'}\n width={'252px'}\n style={{ marginBottom: 'var(--rs-space-5)' }}\n highlightColor=\"var(--rs-color-background-base-primary)\"\n baseColor=\"var(--rs-color-background-base-primary-hover)\"\n />\n ) : (\n <table {...props} />\n ),\n }}\n classNames={{\n caption_label: styles.caption_label,\n button_previous: `${styles.nav_button} ${styles.nav_button_previous}`,\n button_next: `${styles.nav_button} ${styles.nav_button_next}`,\n month_caption: styles.month_caption,\n months: styles.months,\n nav: styles.nav,\n day: styles.day,\n today: styles.today,\n outside: styles.outside,\n week: styles.week,\n weekdays: styles.week,\n weekday: styles.weekday,\n disabled: styles.disabled,\n selected: styles.selected,\n day_button: styles.day_button,\n range_middle: styles.range_middle,\n range_end: styles.range_end,\n range_start: styles.range_start,\n hidden: styles.hidden,\n dropdowns: styles.dropdowns,\n ...classNames,\n }}\n className={root({ className })}\n mode=\"single\"\n {...props}\n />\n );\n};\n"],"names":["cva","styles","useState","useEffect","_jsxs","Select","_jsx","Flex","ChevronUpIcon","ChevronDownIcon","DayPicker","ChevronLeftIcon","ChevronRightIcon","dateLib","Tooltip","Skeleton"],"mappings":"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"}
@@ -44,7 +44,7 @@ const Calendar = function ({ className, classNames, showOutsideDays = true, onDr
44
44
  const message = tooltipMessages[dateLib.format(day.date, 'dd-MM-yyyy')];
45
45
  return (jsxRuntimeExports.jsx(Tooltip, { side: "top", disabled: loadingData || !showTooltip || !message, message: message, children: jsxRuntimeExports.jsx("button", { ...buttonProps }) }));
46
46
  },
47
- MonthGrid: (props) => loadingData ? (jsxRuntimeExports.jsx(Skeleton, { count: 6, height: '12px', width: '252px', style: { marginBottom: 'var(--space-5)' }, highlightColor: "var(--background-base)", baseColor: "var(--background-base-hover)" })) : (jsxRuntimeExports.jsx("table", { ...props })),
47
+ MonthGrid: (props) => loadingData ? (jsxRuntimeExports.jsx(Skeleton, { count: 6, height: '12px', width: '252px', style: { marginBottom: 'var(--rs-space-5)' }, highlightColor: "var(--rs-color-background-base-primary)", baseColor: "var(--rs-color-background-base-primary-hover)" })) : (jsxRuntimeExports.jsx("table", { ...props })),
48
48
  }, classNames: {
49
49
  caption_label: styles.caption_label,
50
50
  button_previous: `${styles.nav_button} ${styles.nav_button_previous}`,
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","sources":["../../../../v1/components/calendar/calendar.tsx"],"sourcesContent":["import {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n ChevronUpIcon,\n} from '@radix-ui/react-icons';\nimport { cva } from 'class-variance-authority';\nimport { ChangeEvent, useEffect, useState } from 'react';\nimport {\n dateLib,\n DayPicker,\n DayPickerProps,\n DropdownProps,\n} from 'react-day-picker';\nimport Skeleton from 'react-loading-skeleton';\n\nimport { Flex } from '../flex/flex';\nimport { Select } from '../select';\nimport { Tooltip } from '../tooltip';\nimport styles from './calendar.module.css';\n\ninterface OnDropdownOpen {\n onDropdownOpen?: VoidFunction;\n}\n\ninterface CalendarPropsExtended {\n showTooltip?: boolean;\n tooltipMessages?: { [key: string]: any };\n loadingData?: boolean;\n}\n\nexport type CalendarProps = DayPickerProps &\n OnDropdownOpen &\n CalendarPropsExtended;\n\nconst root = cva(styles.calendarRoot);\n\nfunction DropDown({\n options = [],\n value,\n onChange,\n onDropdownOpen,\n}: DropdownProps & OnDropdownOpen) {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n if (open && onDropdownOpen) onDropdownOpen();\n }, [open]);\n\n function handleChange(value: string) {\n if (onChange) {\n onChange({ target: { value } } as ChangeEvent<HTMLSelectElement>);\n }\n }\n\n return (\n <Select\n value={value?.toString()}\n onValueChange={handleChange}\n open={open}\n onOpenChange={setOpen}\n >\n <Select.Trigger\n className={styles.dropdown_trigger}\n iconProps={{\n className: styles.dropdown_icon,\n }}\n >\n <Select.Value />\n </Select.Trigger>\n <Select.Content className={styles.dropdown_content}>\n <Select.ScrollUpButton asChild>\n <Flex justify={'center'}>\n <ChevronUpIcon />\n </Flex>\n </Select.ScrollUpButton>\n <Select.Viewport>\n {options.map((opt) => (\n <Select.Item\n value={opt.value.toString()}\n key={opt.value}\n disabled={opt.disabled}\n textProps={{\n className: styles.dropdown_item_text,\n }}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Viewport>\n <Select.ScrollDownButton asChild>\n <Flex justify={'center'}>\n <ChevronDownIcon />\n </Flex>\n </Select.ScrollDownButton>\n </Select.Content>\n </Select>\n );\n}\n\nexport const Calendar = function ({\n className,\n classNames,\n showOutsideDays = true,\n onDropdownOpen,\n showTooltip = false,\n tooltipMessages = {},\n loadingData = false,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n components={{\n Chevron: (props) => {\n if (props.orientation === 'left') {\n return <ChevronLeftIcon {...props} />;\n }\n return <ChevronRightIcon {...props} />;\n },\n Dropdown: (props: DropdownProps) => (\n <DropDown {...props} onDropdownOpen={onDropdownOpen} />\n ),\n DayButton: (props) => {\n const { day, ...buttonProps } = props;\n const message =\n tooltipMessages[dateLib.format(day.date, 'dd-MM-yyyy')];\n return (\n <Tooltip\n side=\"top\"\n disabled={loadingData || !showTooltip || !message}\n message={message}\n >\n <button {...buttonProps} />\n </Tooltip>\n );\n },\n MonthGrid: (props) =>\n loadingData ? (\n <Skeleton\n count={6}\n height={'12px'}\n width={'252px'}\n style={{ marginBottom: 'var(--space-5)' }}\n highlightColor=\"var(--background-base)\"\n baseColor=\"var(--background-base-hover)\"\n />\n ) : (\n <table {...props} />\n ),\n }}\n classNames={{\n caption_label: styles.caption_label,\n button_previous: `${styles.nav_button} ${styles.nav_button_previous}`,\n button_next: `${styles.nav_button} ${styles.nav_button_next}`,\n month_caption: styles.month_caption,\n months: styles.months,\n nav: styles.nav,\n day: styles.day,\n today: styles.today,\n outside: styles.outside,\n week: styles.week,\n weekdays: styles.week,\n weekday: styles.weekday,\n disabled: styles.disabled,\n selected: styles.selected,\n day_button: styles.day_button,\n range_middle: styles.range_middle,\n range_end: styles.range_end,\n range_start: styles.range_start,\n hidden: styles.hidden,\n dropdowns: styles.dropdowns,\n ...classNames,\n }}\n className={root({ className })}\n mode=\"single\"\n {...props}\n />\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;;;;;AAmCA,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAEtC,SAAS,QAAQ,CAAC,EAChB,OAAO,GAAG,EAAE,EACZ,KAAK,EACL,QAAQ,EACR,cAAc,GACiB,EAAA;IAC/B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExC,SAAS,CAAC,MAAK;QACb,IAAI,IAAI,IAAI,cAAc;AAAE,YAAA,cAAc,EAAE,CAAC;AAC/C,KAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,SAAS,YAAY,CAAC,KAAa,EAAA;QACjC,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAoC,CAAC,CAAC;SACnE;KACF;AAED,IAAA,QACEA,sBAAA,CAAC,MAAM,EAAA,EACL,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EACxB,aAAa,EAAE,YAAY,EAC3B,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,OAAO,EAErB,QAAA,EAAA,CAAAC,qBAAA,CAAC,MAAM,CAAC,OAAO,EACb,EAAA,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAClC,SAAS,EAAE;oBACT,SAAS,EAAE,MAAM,CAAC,aAAa;AAChC,iBAAA,EAAA,QAAA,EAEDA,qBAAC,CAAA,MAAM,CAAC,KAAK,KAAG,EACD,CAAA,EACjBD,sBAAC,CAAA,MAAM,CAAC,OAAO,EAAA,EAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAChD,QAAA,EAAA,CAAAC,qBAAA,CAAC,MAAM,CAAC,cAAc,EAAC,EAAA,OAAO,kBAC5BA,qBAAC,CAAA,IAAI,EAAC,EAAA,OAAO,EAAE,QAAQ,EAAA,QAAA,EACrBA,qBAAC,CAAA,aAAa,KAAG,EACZ,CAAA,EAAA,CACe,EACxBA,qBAAA,CAAC,MAAM,CAAC,QAAQ,EAAA,EAAA,QAAA,EACb,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,MACfA,sBAAC,MAAM,CAAC,IAAI,EAAA,EACV,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,EAE3B,QAAQ,EAAE,GAAG,CAAC,QAAQ,EACtB,SAAS,EAAE;gCACT,SAAS,EAAE,MAAM,CAAC,kBAAkB;AACrC,6BAAA,EAAA,QAAA,EAEA,GAAG,CAAC,KAAK,EAAA,EANL,GAAG,CAAC,KAAK,CAOF,CACf,CAAC,EACc,CAAA,EAClBA,qBAAC,CAAA,MAAM,CAAC,gBAAgB,EAAA,EAAC,OAAO,EAAA,IAAA,EAAA,QAAA,EAC9BA,qBAAC,CAAA,IAAI,EAAC,EAAA,OAAO,EAAE,QAAQ,EAAA,QAAA,EACrBA,qBAAC,CAAA,eAAe,KAAG,EACd,CAAA,EAAA,CACiB,CACX,EAAA,CAAA,CAAA,EAAA,CACV,EACT;AACJ,CAAC;AAEM,MAAM,QAAQ,GAAG,UAAU,EAChC,SAAS,EACT,UAAU,EACV,eAAe,GAAG,IAAI,EACtB,cAAc,EACd,WAAW,GAAG,KAAK,EACnB,eAAe,GAAG,EAAE,EACpB,WAAW,GAAG,KAAK,EACnB,GAAG,KAAK,EACM,EAAA;IACd,QACEA,sBAAC,SAAS,EAAA,EACR,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE;AACV,YAAA,OAAO,EAAE,CAAC,KAAK,KAAI;AACjB,gBAAA,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,EAAE;AAChC,oBAAA,OAAOA,qBAAC,CAAA,eAAe,EAAK,EAAA,GAAA,KAAK,GAAI,CAAC;iBACvC;AACD,gBAAA,OAAOA,qBAAC,CAAA,gBAAgB,EAAK,EAAA,GAAA,KAAK,GAAI,CAAC;aACxC;AACD,YAAA,QAAQ,EAAE,CAAC,KAAoB,MAC7BA,qBAAA,CAAC,QAAQ,EAAA,EAAA,GAAK,KAAK,EAAE,cAAc,EAAE,cAAc,GAAI,CACxD;AACD,YAAA,SAAS,EAAE,CAAC,KAAK,KAAI;gBACnB,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;AACtC,gBAAA,MAAM,OAAO,GACX,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;gBAC1D,QACEA,qBAAC,CAAA,OAAO,EACN,EAAA,IAAI,EAAC,KAAK,EACV,QAAQ,EAAE,WAAW,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,EACjD,OAAO,EAAE,OAAO,EAEhB,QAAA,EAAAA,qBAAA,CAAA,QAAA,EAAA,EAAA,GAAY,WAAW,EAAA,CAAI,EACnB,CAAA,EACV;aACH;YACD,SAAS,EAAE,CAAC,KAAK,KACf,WAAW,IACTA,sBAAC,QAAQ,EAAA,EACP,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,EACzC,cAAc,EAAC,wBAAwB,EACvC,SAAS,EAAC,8BAA8B,EACxC,CAAA,KAEFA,qBAAA,CAAA,OAAA,EAAA,EAAA,GAAW,KAAK,EAAA,CAAI,CACrB;AACJ,SAAA,EACD,UAAU,EAAE;YACV,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,eAAe,EAAE,GAAG,MAAM,CAAC,UAAU,CAAI,CAAA,EAAA,MAAM,CAAC,mBAAmB,CAAE,CAAA;YACrE,WAAW,EAAE,GAAG,MAAM,CAAC,UAAU,CAAI,CAAA,EAAA,MAAM,CAAC,eAAe,CAAE,CAAA;YAC7D,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;AAC3B,YAAA,GAAG,UAAU;AACd,SAAA,EACD,SAAS,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAC9B,IAAI,EAAC,QAAQ,EAAA,GACT,KAAK,EAAA,CACT,EACF;AACJ;;;;"}
1
+ {"version":3,"file":"calendar.js","sources":["../../../../v1/components/calendar/calendar.tsx"],"sourcesContent":["import {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n ChevronUpIcon,\n} from '@radix-ui/react-icons';\nimport { cva } from 'class-variance-authority';\nimport { ChangeEvent, useEffect, useState } from 'react';\nimport {\n dateLib,\n DayPicker,\n DayPickerProps,\n DropdownProps,\n} from 'react-day-picker';\nimport Skeleton from 'react-loading-skeleton';\n\nimport { Flex } from '../flex/flex';\nimport { Select } from '../select';\nimport { Tooltip } from '../tooltip';\nimport styles from './calendar.module.css';\n\ninterface OnDropdownOpen {\n onDropdownOpen?: VoidFunction;\n}\n\ninterface CalendarPropsExtended {\n showTooltip?: boolean;\n tooltipMessages?: { [key: string]: any };\n loadingData?: boolean;\n}\n\nexport type CalendarProps = DayPickerProps &\n OnDropdownOpen &\n CalendarPropsExtended;\n\nconst root = cva(styles.calendarRoot);\n\nfunction DropDown({\n options = [],\n value,\n onChange,\n onDropdownOpen,\n}: DropdownProps & OnDropdownOpen) {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n if (open && onDropdownOpen) onDropdownOpen();\n }, [open]);\n\n function handleChange(value: string) {\n if (onChange) {\n onChange({ target: { value } } as ChangeEvent<HTMLSelectElement>);\n }\n }\n\n return (\n <Select\n value={value?.toString()}\n onValueChange={handleChange}\n open={open}\n onOpenChange={setOpen}\n >\n <Select.Trigger\n className={styles.dropdown_trigger}\n iconProps={{\n className: styles.dropdown_icon,\n }}\n >\n <Select.Value />\n </Select.Trigger>\n <Select.Content className={styles.dropdown_content}>\n <Select.ScrollUpButton asChild>\n <Flex justify={'center'}>\n <ChevronUpIcon />\n </Flex>\n </Select.ScrollUpButton>\n <Select.Viewport>\n {options.map((opt) => (\n <Select.Item\n value={opt.value.toString()}\n key={opt.value}\n disabled={opt.disabled}\n textProps={{\n className: styles.dropdown_item_text,\n }}\n >\n {opt.label}\n </Select.Item>\n ))}\n </Select.Viewport>\n <Select.ScrollDownButton asChild>\n <Flex justify={'center'}>\n <ChevronDownIcon />\n </Flex>\n </Select.ScrollDownButton>\n </Select.Content>\n </Select>\n );\n}\n\nexport const Calendar = function ({\n className,\n classNames,\n showOutsideDays = true,\n onDropdownOpen,\n showTooltip = false,\n tooltipMessages = {},\n loadingData = false,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n components={{\n Chevron: (props) => {\n if (props.orientation === 'left') {\n return <ChevronLeftIcon {...props} />;\n }\n return <ChevronRightIcon {...props} />;\n },\n Dropdown: (props: DropdownProps) => (\n <DropDown {...props} onDropdownOpen={onDropdownOpen} />\n ),\n DayButton: (props) => {\n const { day, ...buttonProps } = props;\n const message =\n tooltipMessages[dateLib.format(day.date, 'dd-MM-yyyy')];\n return (\n <Tooltip\n side=\"top\"\n disabled={loadingData || !showTooltip || !message}\n message={message}\n >\n <button {...buttonProps} />\n </Tooltip>\n );\n },\n MonthGrid: (props) =>\n loadingData ? (\n <Skeleton\n count={6}\n height={'12px'}\n width={'252px'}\n style={{ marginBottom: 'var(--rs-space-5)' }}\n highlightColor=\"var(--rs-color-background-base-primary)\"\n baseColor=\"var(--rs-color-background-base-primary-hover)\"\n />\n ) : (\n <table {...props} />\n ),\n }}\n classNames={{\n caption_label: styles.caption_label,\n button_previous: `${styles.nav_button} ${styles.nav_button_previous}`,\n button_next: `${styles.nav_button} ${styles.nav_button_next}`,\n month_caption: styles.month_caption,\n months: styles.months,\n nav: styles.nav,\n day: styles.day,\n today: styles.today,\n outside: styles.outside,\n week: styles.week,\n weekdays: styles.week,\n weekday: styles.weekday,\n disabled: styles.disabled,\n selected: styles.selected,\n day_button: styles.day_button,\n range_middle: styles.range_middle,\n range_end: styles.range_end,\n range_start: styles.range_start,\n hidden: styles.hidden,\n dropdowns: styles.dropdowns,\n ...classNames,\n }}\n className={root({ className })}\n mode=\"single\"\n {...props}\n />\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -25,40 +25,41 @@ function DatePicker({ side = "top", dateFormat = "DD/MM/YYYY", placeholder = "DD
25
25
  selectedDateRef.current = selectedDate;
26
26
  }, [selectedDate]);
27
27
  function isElementOutside(el) {
28
- return !isDropdownOpenRef.current && // Month and Year dropdown from Date picker
28
+ return (!isDropdownOpenRef.current && // Month and Year dropdown from Date picker
29
29
  !textFieldRef.current?.contains(el) && // TextField
30
- !contentRef.current?.contains(el);
30
+ !contentRef.current?.contains(el));
31
31
  }
32
32
  const handleMouseDown = React.useCallback((event) => {
33
- const el = (event.target);
33
+ const el = event.target;
34
34
  if (el && isElementOutside(el))
35
35
  removeEventListeners();
36
36
  }, []);
37
37
  function registerEventListeners() {
38
38
  isInputFieldFocused.current = true;
39
- document.addEventListener('mouseup', handleMouseDown);
39
+ document.addEventListener("mouseup", handleMouseDown);
40
40
  }
41
- function removeEventListeners() {
41
+ function removeEventListeners(skipUpdate = false) {
42
42
  isInputFieldFocused.current = false;
43
43
  setShowCalendar(false);
44
44
  const updatedVal = dayjs_min.default(selectedDateRef.current).format(dateFormat);
45
45
  if (textFieldRef.current)
46
46
  textFieldRef.current.value = updatedVal;
47
- if (inputState === undefined)
47
+ if (inputState === undefined && !skipUpdate)
48
48
  onSelect(dayjs_min.default(updatedVal).toDate());
49
- document.removeEventListener('mouseup', handleMouseDown);
49
+ document.removeEventListener("mouseup", handleMouseDown);
50
50
  }
51
51
  const handleSelect = (day) => {
52
52
  setSelectedDate(day);
53
53
  onSelect(day);
54
54
  setInputState(undefined);
55
- removeEventListeners();
55
+ removeEventListeners(true);
56
56
  };
57
57
  function onDropdownOpen() {
58
58
  isDropdownOpenRef.current = true;
59
59
  }
60
60
  function onOpenChange(open) {
61
- if (!isDropdownOpenRef.current && !(isInputFieldFocused.current && showCalendar)) {
61
+ if (!isDropdownOpenRef.current &&
62
+ !(isInputFieldFocused.current && showCalendar)) {
62
63
  setShowCalendar(Boolean(open));
63
64
  }
64
65
  isDropdownOpenRef.current = false;
@@ -81,32 +82,40 @@ function DatePicker({ side = "top", dateFormat = "DD/MM/YYYY", placeholder = "DD
81
82
  }
82
83
  }
83
84
  function handleKeyUp(event) {
84
- if (event.code === 'Enter' && textFieldRef.current) {
85
+ if (event.code === "Enter" && textFieldRef.current) {
85
86
  textFieldRef.current.blur();
86
87
  removeEventListeners();
87
88
  }
88
89
  }
89
90
  function handleInputChange(event) {
90
91
  const { value } = event.target;
91
- const format = value.includes("/") ? "DD/MM/YYYY" : value.includes("-") ? "DD-MM-YYYY" : undefined;
92
+ const format = value.includes("/")
93
+ ? "DD/MM/YYYY"
94
+ : value.includes("-")
95
+ ? "DD-MM-YYYY"
96
+ : undefined;
92
97
  const date = dayjs_min.default(value.replace(/(\d{1,2})\/(\d{1,2})\/(\d{4})/, (_, day, month, year) => {
93
- return `${day.padStart(2, '0')}/${month.padStart(2, '0')}/${year}`; // Replaces [8/8/2024] to [08/08/2024]
98
+ return `${day.padStart(2, "0")}/${month.padStart(2, "0")}/${year}`; // Replaces [8/8/2024] to [08/08/2024]
94
99
  }), format);
95
100
  const isValidDate = date.isValid();
96
- const isAfter = calendarProps?.startMonth !== undefined ? dayjs_min.default(date).isSameOrAfter(calendarProps.startMonth) : true;
97
- const isBefore = calendarProps?.endMonth !== undefined ? dayjs_min.default(date).isSameOrBefore(calendarProps.endMonth) : true;
101
+ const isAfter = calendarProps?.startMonth !== undefined
102
+ ? dayjs_min.default(date).isSameOrAfter(calendarProps.startMonth)
103
+ : true;
104
+ const isBefore = calendarProps?.endMonth !== undefined
105
+ ? dayjs_min.default(date).isSameOrBefore(calendarProps.endMonth)
106
+ : true;
98
107
  const isValid = isValidDate && isAfter && isBefore && dayjs_min.default(date).isSameOrBefore(dayjs_min.default());
99
108
  if (isValid) {
100
109
  setSelectedDate(date.toDate());
101
- if (inputState === 'invalid')
110
+ if (inputState === "invalid")
102
111
  setInputState(undefined);
103
112
  }
104
113
  else {
105
- setInputState('invalid');
114
+ setInputState("invalid");
106
115
  }
107
116
  }
108
117
  const defaultTrigger = (jsxRuntime.jsxRuntimeExports.jsx(textfield.TextField, { ref: textFieldRef, defaultValue: formattedDate, trailing: showCalendarIcon ? jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.CalendarIcon, {}) : undefined, onChange: handleInputChange, onFocus: handleInputFocus, onBlur: handleInputBlur, state: inputState, placeholder: placeholder, onKeyUp: handleKeyUp, className: calendar_module.default.datePickerInput, ...textFieldProps }));
109
- const trigger = typeof children === 'function'
118
+ const trigger = typeof children === "function"
110
119
  ? children({ selectedDate: formattedDate })
111
120
  : children || defaultTrigger;
112
121
  return (jsxRuntime.jsxRuntimeExports.jsxs(popover.Popover, { open: showCalendar, onOpenChange: onOpenChange, children: [jsxRuntime.jsxRuntimeExports.jsx(popover.Popover.Trigger, { asChild: true, children: trigger }), jsxRuntime.jsxRuntimeExports.jsx(popover.Popover.Content, { side: side, className: calendar_module.default.calendarPopover, ref: contentRef, children: jsxRuntime.jsxRuntimeExports.jsx(calendar.Calendar, { required: true, ...calendarProps, onDropdownOpen: onDropdownOpen, mode: "single", selected: selectedDate, month: selectedDate, onSelect: handleSelect, onMonthChange: setSelectedDate }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.cjs","sources":["../../../../v1/components/calendar/date-picker.tsx"],"sourcesContent":["import { CalendarIcon } from \"@radix-ui/react-icons\";\nimport dayjs from \"dayjs\";\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { PropsBase, PropsSingleRequired } from \"react-day-picker\";\n\nimport { Popover } from \"../popover\";\nimport { TextField } from \"../textfield\";\nimport { TextfieldProps } from \"../textfield/textfield\";\nimport { Calendar } from \"./calendar\";\nimport styles from \"./calendar.module.css\";\n\ndayjs.extend(customParseFormat);\n\ninterface DatePickerProps {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n dateFormat?: string;\n textFieldProps?: TextfieldProps;\n calendarProps?: PropsSingleRequired & PropsBase;\n onSelect?: (date: Date) => void;\n placeholder?: string;\n value?: Date;\n children?: React.ReactNode | ((props: { selectedDate: string }) => React.ReactNode);\n showCalendarIcon?: boolean;\n}\n\nexport function DatePicker({\n side = \"top\",\n dateFormat = \"DD/MM/YYYY\",\n placeholder = \"DD/MM/YYYY\",\n textFieldProps,\n calendarProps,\n value = new Date(),\n onSelect = () => {},\n children,\n showCalendarIcon = true,\n}: DatePickerProps) {\n const [showCalendar, setShowCalendar] = useState(false);\n const [selectedDate, setSelectedDate] = useState(value);\n const [inputState, setInputState] = useState<Partial<React.ComponentProps<typeof TextField>['state']>>();\n\n const formattedDate = dayjs(selectedDate).format(dateFormat);\n\n const isDropdownOpenRef = useRef(false);\n const textFieldRef = useRef<HTMLInputElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n const isInputFieldFocused = useRef(false);\n const selectedDateRef = useRef(selectedDate);\n\n useEffect(() => {\n selectedDateRef.current = selectedDate;\n }, [selectedDate]);\n\n function isElementOutside(el: HTMLElement) {\n return !isDropdownOpenRef.current && // Month and Year dropdown from Date picker\n !textFieldRef.current?.contains(el) && // TextField\n !contentRef.current?.contains(el);\n }\n\n const handleMouseDown = useCallback((event: MouseEvent) => {\n const el = (event.target) as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n }, [])\n\n function registerEventListeners() {\n isInputFieldFocused.current = true;\n document.addEventListener('mouseup', handleMouseDown);\n }\n\n function removeEventListeners() {\n isInputFieldFocused.current = false;\n setShowCalendar(false);\n\n const updatedVal = dayjs(selectedDateRef.current).format(dateFormat);\n\n if (textFieldRef.current) textFieldRef.current.value = updatedVal;\n if (inputState === undefined) onSelect(dayjs(updatedVal).toDate());\n\n document.removeEventListener('mouseup', handleMouseDown);\n }\n\n const handleSelect = (day: Date) => {\n setSelectedDate(day);\n onSelect(day);\n setInputState(undefined);\n removeEventListeners();\n };\n\n function onDropdownOpen() {\n isDropdownOpenRef.current = true;\n }\n\n function onOpenChange(open?: boolean) {\n if (!isDropdownOpenRef.current && !(isInputFieldFocused.current && showCalendar)) {\n setShowCalendar(Boolean(open));\n }\n\n isDropdownOpenRef.current = false;\n }\n\n function handleInputFocus() {\n if (isInputFieldFocused.current) return;\n if (!showCalendar) setShowCalendar(true);\n }\n\n function handleInputBlur(event: React.FocusEvent) {\n if (isInputFieldFocused.current) {\n const el = event.relatedTarget as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n } else {\n registerEventListeners();\n setTimeout(() => textFieldRef.current?.select());\n }\n }\n\n function handleKeyUp(event: React.KeyboardEvent) {\n if (event.code === 'Enter' && textFieldRef.current) {\n textFieldRef.current.blur();\n removeEventListeners();\n }\n }\n\n function handleInputChange(event: React.ChangeEvent<HTMLInputElement>) {\n const { value } = event.target;\n\n const format = value.includes(\"/\") ? \"DD/MM/YYYY\" : value.includes(\"-\") ? \"DD-MM-YYYY\" : undefined;\n const date = dayjs(value.replace(/(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})/, (_, day, month, year) => {\n\t\t\t\treturn `${day.padStart(2, '0')}/${month.padStart(2, '0')}/${year}`; // Replaces [8/8/2024] to [08/08/2024]\n\t\t}), format);\n\n const isValidDate = date.isValid();\n\n const isAfter = calendarProps?.startMonth !== undefined ? dayjs(date).isSameOrAfter(calendarProps.startMonth) : true;\n const isBefore = calendarProps?.endMonth !== undefined ? dayjs(date).isSameOrBefore(calendarProps.endMonth) : true;\n\n const isValid = isValidDate && isAfter && isBefore && dayjs(date).isSameOrBefore(dayjs());\n\n if (isValid) {\n setSelectedDate(date.toDate());\n if (inputState === 'invalid') setInputState(undefined);\n } else {\n setInputState('invalid');\n }\n }\n\n const defaultTrigger = (\n <TextField\n ref={textFieldRef}\n defaultValue={formattedDate}\n trailing={showCalendarIcon ? <CalendarIcon /> : undefined}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n state={inputState}\n placeholder={placeholder}\n onKeyUp={handleKeyUp}\n className={styles.datePickerInput}\n {...textFieldProps}\n />\n );\n\n const trigger = typeof children === 'function'\n ? children({ selectedDate: formattedDate })\n : children || defaultTrigger;\n\n return (\n <Popover open={showCalendar} onOpenChange={onOpenChange}>\n <Popover.Trigger asChild>\n {trigger}\n </Popover.Trigger>\n\n <Popover.Content side={side} className={styles.calendarPopover} ref={contentRef}>\n <Calendar\n required={true}\n {...calendarProps}\n onDropdownOpen={onDropdownOpen}\n mode=\"single\"\n selected={selectedDate}\n month={selectedDate}\n onSelect={handleSelect}\n onMonthChange={setSelectedDate}\n />\n </Popover.Content>\n </Popover>\n );\n}\n"],"names":["dayjs","customParseFormat","useState","useRef","useEffect","useCallback","_jsx","TextField","CalendarIcon","styles","_jsxs","Popover","Calendar"],"mappings":"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"}
1
+ {"version":3,"file":"date-picker.cjs","sources":["../../../../v1/components/calendar/date-picker.tsx"],"sourcesContent":["import { CalendarIcon } from \"@radix-ui/react-icons\";\nimport dayjs from \"dayjs\";\nimport customParseFormat from \"dayjs/plugin/customParseFormat\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { PropsBase, PropsSingleRequired } from \"react-day-picker\";\n\nimport { Popover } from \"../popover\";\nimport { TextField } from \"../textfield\";\nimport { TextfieldProps } from \"../textfield/textfield\";\nimport { Calendar } from \"./calendar\";\nimport styles from \"./calendar.module.css\";\n\ndayjs.extend(customParseFormat);\n\ninterface DatePickerProps {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n dateFormat?: string;\n textFieldProps?: TextfieldProps;\n calendarProps?: PropsSingleRequired & PropsBase;\n onSelect?: (date: Date) => void;\n placeholder?: string;\n value?: Date;\n children?:\n | React.ReactNode\n | ((props: { selectedDate: string }) => React.ReactNode);\n showCalendarIcon?: boolean;\n}\n\nexport function DatePicker({\n side = \"top\",\n dateFormat = \"DD/MM/YYYY\",\n placeholder = \"DD/MM/YYYY\",\n textFieldProps,\n calendarProps,\n value = new Date(),\n onSelect = () => {},\n children,\n showCalendarIcon = true,\n}: DatePickerProps) {\n const [showCalendar, setShowCalendar] = useState(false);\n const [selectedDate, setSelectedDate] = useState(value);\n const [inputState, setInputState] =\n useState<Partial<React.ComponentProps<typeof TextField>[\"state\"]>>();\n\n const formattedDate = dayjs(selectedDate).format(dateFormat);\n\n const isDropdownOpenRef = useRef(false);\n const textFieldRef = useRef<HTMLInputElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n const isInputFieldFocused = useRef(false);\n const selectedDateRef = useRef(selectedDate);\n\n useEffect(() => {\n selectedDateRef.current = selectedDate;\n }, [selectedDate]);\n\n function isElementOutside(el: HTMLElement) {\n return (\n !isDropdownOpenRef.current && // Month and Year dropdown from Date picker\n !textFieldRef.current?.contains(el) && // TextField\n !contentRef.current?.contains(el)\n );\n }\n\n const handleMouseDown = useCallback((event: MouseEvent) => {\n const el = event.target as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n }, []);\n\n function registerEventListeners() {\n isInputFieldFocused.current = true;\n document.addEventListener(\"mouseup\", handleMouseDown);\n }\n\n function removeEventListeners(skipUpdate = false) {\n isInputFieldFocused.current = false;\n setShowCalendar(false);\n\n const updatedVal = dayjs(selectedDateRef.current).format(dateFormat);\n\n if (textFieldRef.current) textFieldRef.current.value = updatedVal;\n if (inputState === undefined && !skipUpdate)\n onSelect(dayjs(updatedVal).toDate());\n\n document.removeEventListener(\"mouseup\", handleMouseDown);\n }\n\n const handleSelect = (day: Date) => {\n setSelectedDate(day);\n onSelect(day);\n setInputState(undefined);\n removeEventListeners(true);\n };\n\n function onDropdownOpen() {\n isDropdownOpenRef.current = true;\n }\n\n function onOpenChange(open?: boolean) {\n if (\n !isDropdownOpenRef.current &&\n !(isInputFieldFocused.current && showCalendar)\n ) {\n setShowCalendar(Boolean(open));\n }\n\n isDropdownOpenRef.current = false;\n }\n\n function handleInputFocus() {\n if (isInputFieldFocused.current) return;\n if (!showCalendar) setShowCalendar(true);\n }\n\n function handleInputBlur(event: React.FocusEvent) {\n if (isInputFieldFocused.current) {\n const el = event.relatedTarget as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n } else {\n registerEventListeners();\n setTimeout(() => textFieldRef.current?.select());\n }\n }\n\n function handleKeyUp(event: React.KeyboardEvent) {\n if (event.code === \"Enter\" && textFieldRef.current) {\n textFieldRef.current.blur();\n removeEventListeners();\n }\n }\n\n function handleInputChange(event: React.ChangeEvent<HTMLInputElement>) {\n const { value } = event.target;\n\n const format = value.includes(\"/\")\n ? \"DD/MM/YYYY\"\n : value.includes(\"-\")\n ? \"DD-MM-YYYY\"\n : undefined;\n const date = dayjs(\n value.replace(/(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})/, (_, day, month, year) => {\n return `${day.padStart(2, \"0\")}/${month.padStart(2, \"0\")}/${year}`; // Replaces [8/8/2024] to [08/08/2024]\n }),\n format\n );\n\n const isValidDate = date.isValid();\n\n const isAfter =\n calendarProps?.startMonth !== undefined\n ? dayjs(date).isSameOrAfter(calendarProps.startMonth)\n : true;\n const isBefore =\n calendarProps?.endMonth !== undefined\n ? dayjs(date).isSameOrBefore(calendarProps.endMonth)\n : true;\n\n const isValid =\n isValidDate && isAfter && isBefore && dayjs(date).isSameOrBefore(dayjs());\n\n if (isValid) {\n setSelectedDate(date.toDate());\n if (inputState === \"invalid\") setInputState(undefined);\n } else {\n setInputState(\"invalid\");\n }\n }\n\n const defaultTrigger = (\n <TextField\n ref={textFieldRef}\n defaultValue={formattedDate}\n trailing={showCalendarIcon ? <CalendarIcon /> : undefined}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n state={inputState}\n placeholder={placeholder}\n onKeyUp={handleKeyUp}\n className={styles.datePickerInput}\n {...textFieldProps}\n />\n );\n\n const trigger =\n typeof children === \"function\"\n ? children({ selectedDate: formattedDate })\n : children || defaultTrigger;\n\n return (\n <Popover open={showCalendar} onOpenChange={onOpenChange}>\n <Popover.Trigger asChild>{trigger}</Popover.Trigger>\n\n <Popover.Content\n side={side}\n className={styles.calendarPopover}\n ref={contentRef}\n >\n <Calendar\n required={true}\n {...calendarProps}\n onDropdownOpen={onDropdownOpen}\n mode=\"single\"\n selected={selectedDate}\n month={selectedDate}\n onSelect={handleSelect}\n onMonthChange={setSelectedDate}\n />\n </Popover.Content>\n </Popover>\n );\n}\n"],"names":["dayjs","customParseFormat","useState","useRef","useEffect","useCallback","_jsx","TextField","CalendarIcon","styles","_jsxs","Popover","Calendar"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../../v1/components/calendar/date-picker.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIlE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IACpF,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,UAAU,CAAC,EACzB,IAAY,EACZ,UAAyB,EACzB,WAA0B,EAC1B,cAAc,EACd,aAAa,EACb,KAAkB,EAClB,QAAmB,EACnB,QAAQ,EACR,gBAAuB,GACxB,EAAE,eAAe,2CAqJjB"}
1
+ {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../../v1/components/calendar/date-picker.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIlE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,QAAQ,CAAC,EACL,KAAK,CAAC,SAAS,GACf,CAAC,CAAC,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,UAAU,CAAC,EACzB,IAAY,EACZ,UAAyB,EACzB,WAA0B,EAC1B,cAAc,EACd,aAAa,EACb,KAAkB,EAClB,QAAmB,EACnB,QAAQ,EACR,gBAAuB,GACxB,EAAE,eAAe,2CA6KjB"}
@@ -23,40 +23,41 @@ function DatePicker({ side = "top", dateFormat = "DD/MM/YYYY", placeholder = "DD
23
23
  selectedDateRef.current = selectedDate;
24
24
  }, [selectedDate]);
25
25
  function isElementOutside(el) {
26
- return !isDropdownOpenRef.current && // Month and Year dropdown from Date picker
26
+ return (!isDropdownOpenRef.current && // Month and Year dropdown from Date picker
27
27
  !textFieldRef.current?.contains(el) && // TextField
28
- !contentRef.current?.contains(el);
28
+ !contentRef.current?.contains(el));
29
29
  }
30
30
  const handleMouseDown = useCallback((event) => {
31
- const el = (event.target);
31
+ const el = event.target;
32
32
  if (el && isElementOutside(el))
33
33
  removeEventListeners();
34
34
  }, []);
35
35
  function registerEventListeners() {
36
36
  isInputFieldFocused.current = true;
37
- document.addEventListener('mouseup', handleMouseDown);
37
+ document.addEventListener("mouseup", handleMouseDown);
38
38
  }
39
- function removeEventListeners() {
39
+ function removeEventListeners(skipUpdate = false) {
40
40
  isInputFieldFocused.current = false;
41
41
  setShowCalendar(false);
42
42
  const updatedVal = dayjs(selectedDateRef.current).format(dateFormat);
43
43
  if (textFieldRef.current)
44
44
  textFieldRef.current.value = updatedVal;
45
- if (inputState === undefined)
45
+ if (inputState === undefined && !skipUpdate)
46
46
  onSelect(dayjs(updatedVal).toDate());
47
- document.removeEventListener('mouseup', handleMouseDown);
47
+ document.removeEventListener("mouseup", handleMouseDown);
48
48
  }
49
49
  const handleSelect = (day) => {
50
50
  setSelectedDate(day);
51
51
  onSelect(day);
52
52
  setInputState(undefined);
53
- removeEventListeners();
53
+ removeEventListeners(true);
54
54
  };
55
55
  function onDropdownOpen() {
56
56
  isDropdownOpenRef.current = true;
57
57
  }
58
58
  function onOpenChange(open) {
59
- if (!isDropdownOpenRef.current && !(isInputFieldFocused.current && showCalendar)) {
59
+ if (!isDropdownOpenRef.current &&
60
+ !(isInputFieldFocused.current && showCalendar)) {
60
61
  setShowCalendar(Boolean(open));
61
62
  }
62
63
  isDropdownOpenRef.current = false;
@@ -79,32 +80,40 @@ function DatePicker({ side = "top", dateFormat = "DD/MM/YYYY", placeholder = "DD
79
80
  }
80
81
  }
81
82
  function handleKeyUp(event) {
82
- if (event.code === 'Enter' && textFieldRef.current) {
83
+ if (event.code === "Enter" && textFieldRef.current) {
83
84
  textFieldRef.current.blur();
84
85
  removeEventListeners();
85
86
  }
86
87
  }
87
88
  function handleInputChange(event) {
88
89
  const { value } = event.target;
89
- const format = value.includes("/") ? "DD/MM/YYYY" : value.includes("-") ? "DD-MM-YYYY" : undefined;
90
+ const format = value.includes("/")
91
+ ? "DD/MM/YYYY"
92
+ : value.includes("-")
93
+ ? "DD-MM-YYYY"
94
+ : undefined;
90
95
  const date = dayjs(value.replace(/(\d{1,2})\/(\d{1,2})\/(\d{4})/, (_, day, month, year) => {
91
- return `${day.padStart(2, '0')}/${month.padStart(2, '0')}/${year}`; // Replaces [8/8/2024] to [08/08/2024]
96
+ return `${day.padStart(2, "0")}/${month.padStart(2, "0")}/${year}`; // Replaces [8/8/2024] to [08/08/2024]
92
97
  }), format);
93
98
  const isValidDate = date.isValid();
94
- const isAfter = calendarProps?.startMonth !== undefined ? dayjs(date).isSameOrAfter(calendarProps.startMonth) : true;
95
- const isBefore = calendarProps?.endMonth !== undefined ? dayjs(date).isSameOrBefore(calendarProps.endMonth) : true;
99
+ const isAfter = calendarProps?.startMonth !== undefined
100
+ ? dayjs(date).isSameOrAfter(calendarProps.startMonth)
101
+ : true;
102
+ const isBefore = calendarProps?.endMonth !== undefined
103
+ ? dayjs(date).isSameOrBefore(calendarProps.endMonth)
104
+ : true;
96
105
  const isValid = isValidDate && isAfter && isBefore && dayjs(date).isSameOrBefore(dayjs());
97
106
  if (isValid) {
98
107
  setSelectedDate(date.toDate());
99
- if (inputState === 'invalid')
108
+ if (inputState === "invalid")
100
109
  setInputState(undefined);
101
110
  }
102
111
  else {
103
- setInputState('invalid');
112
+ setInputState("invalid");
104
113
  }
105
114
  }
106
115
  const defaultTrigger = (jsxRuntimeExports.jsx(TextField, { ref: textFieldRef, defaultValue: formattedDate, trailing: showCalendarIcon ? jsxRuntimeExports.jsx(CalendarIcon, {}) : undefined, onChange: handleInputChange, onFocus: handleInputFocus, onBlur: handleInputBlur, state: inputState, placeholder: placeholder, onKeyUp: handleKeyUp, className: styles.datePickerInput, ...textFieldProps }));
107
- const trigger = typeof children === 'function'
116
+ const trigger = typeof children === "function"
108
117
  ? children({ selectedDate: formattedDate })
109
118
  : children || defaultTrigger;
110
119
  return (jsxRuntimeExports.jsxs(Popover, { open: showCalendar, onOpenChange: onOpenChange, children: [jsxRuntimeExports.jsx(Popover.Trigger, { asChild: true, children: trigger }), jsxRuntimeExports.jsx(Popover.Content, { side: side, className: styles.calendarPopover, ref: contentRef, children: jsxRuntimeExports.jsx(Calendar, { required: true, ...calendarProps, onDropdownOpen: onDropdownOpen, mode: "single", selected: selectedDate, month: selectedDate, onSelect: handleSelect, onMonthChange: setSelectedDate }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.js","sources":["../../../../v1/components/calendar/date-picker.tsx"],"sourcesContent":["import { CalendarIcon } from \"@radix-ui/react-icons\";\nimport dayjs from \"dayjs\";\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { PropsBase, PropsSingleRequired } from \"react-day-picker\";\n\nimport { Popover } from \"../popover\";\nimport { TextField } from \"../textfield\";\nimport { TextfieldProps } from \"../textfield/textfield\";\nimport { Calendar } from \"./calendar\";\nimport styles from \"./calendar.module.css\";\n\ndayjs.extend(customParseFormat);\n\ninterface DatePickerProps {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n dateFormat?: string;\n textFieldProps?: TextfieldProps;\n calendarProps?: PropsSingleRequired & PropsBase;\n onSelect?: (date: Date) => void;\n placeholder?: string;\n value?: Date;\n children?: React.ReactNode | ((props: { selectedDate: string }) => React.ReactNode);\n showCalendarIcon?: boolean;\n}\n\nexport function DatePicker({\n side = \"top\",\n dateFormat = \"DD/MM/YYYY\",\n placeholder = \"DD/MM/YYYY\",\n textFieldProps,\n calendarProps,\n value = new Date(),\n onSelect = () => {},\n children,\n showCalendarIcon = true,\n}: DatePickerProps) {\n const [showCalendar, setShowCalendar] = useState(false);\n const [selectedDate, setSelectedDate] = useState(value);\n const [inputState, setInputState] = useState<Partial<React.ComponentProps<typeof TextField>['state']>>();\n\n const formattedDate = dayjs(selectedDate).format(dateFormat);\n\n const isDropdownOpenRef = useRef(false);\n const textFieldRef = useRef<HTMLInputElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n const isInputFieldFocused = useRef(false);\n const selectedDateRef = useRef(selectedDate);\n\n useEffect(() => {\n selectedDateRef.current = selectedDate;\n }, [selectedDate]);\n\n function isElementOutside(el: HTMLElement) {\n return !isDropdownOpenRef.current && // Month and Year dropdown from Date picker\n !textFieldRef.current?.contains(el) && // TextField\n !contentRef.current?.contains(el);\n }\n\n const handleMouseDown = useCallback((event: MouseEvent) => {\n const el = (event.target) as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n }, [])\n\n function registerEventListeners() {\n isInputFieldFocused.current = true;\n document.addEventListener('mouseup', handleMouseDown);\n }\n\n function removeEventListeners() {\n isInputFieldFocused.current = false;\n setShowCalendar(false);\n\n const updatedVal = dayjs(selectedDateRef.current).format(dateFormat);\n\n if (textFieldRef.current) textFieldRef.current.value = updatedVal;\n if (inputState === undefined) onSelect(dayjs(updatedVal).toDate());\n\n document.removeEventListener('mouseup', handleMouseDown);\n }\n\n const handleSelect = (day: Date) => {\n setSelectedDate(day);\n onSelect(day);\n setInputState(undefined);\n removeEventListeners();\n };\n\n function onDropdownOpen() {\n isDropdownOpenRef.current = true;\n }\n\n function onOpenChange(open?: boolean) {\n if (!isDropdownOpenRef.current && !(isInputFieldFocused.current && showCalendar)) {\n setShowCalendar(Boolean(open));\n }\n\n isDropdownOpenRef.current = false;\n }\n\n function handleInputFocus() {\n if (isInputFieldFocused.current) return;\n if (!showCalendar) setShowCalendar(true);\n }\n\n function handleInputBlur(event: React.FocusEvent) {\n if (isInputFieldFocused.current) {\n const el = event.relatedTarget as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n } else {\n registerEventListeners();\n setTimeout(() => textFieldRef.current?.select());\n }\n }\n\n function handleKeyUp(event: React.KeyboardEvent) {\n if (event.code === 'Enter' && textFieldRef.current) {\n textFieldRef.current.blur();\n removeEventListeners();\n }\n }\n\n function handleInputChange(event: React.ChangeEvent<HTMLInputElement>) {\n const { value } = event.target;\n\n const format = value.includes(\"/\") ? \"DD/MM/YYYY\" : value.includes(\"-\") ? \"DD-MM-YYYY\" : undefined;\n const date = dayjs(value.replace(/(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})/, (_, day, month, year) => {\n\t\t\t\treturn `${day.padStart(2, '0')}/${month.padStart(2, '0')}/${year}`; // Replaces [8/8/2024] to [08/08/2024]\n\t\t}), format);\n\n const isValidDate = date.isValid();\n\n const isAfter = calendarProps?.startMonth !== undefined ? dayjs(date).isSameOrAfter(calendarProps.startMonth) : true;\n const isBefore = calendarProps?.endMonth !== undefined ? dayjs(date).isSameOrBefore(calendarProps.endMonth) : true;\n\n const isValid = isValidDate && isAfter && isBefore && dayjs(date).isSameOrBefore(dayjs());\n\n if (isValid) {\n setSelectedDate(date.toDate());\n if (inputState === 'invalid') setInputState(undefined);\n } else {\n setInputState('invalid');\n }\n }\n\n const defaultTrigger = (\n <TextField\n ref={textFieldRef}\n defaultValue={formattedDate}\n trailing={showCalendarIcon ? <CalendarIcon /> : undefined}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n state={inputState}\n placeholder={placeholder}\n onKeyUp={handleKeyUp}\n className={styles.datePickerInput}\n {...textFieldProps}\n />\n );\n\n const trigger = typeof children === 'function'\n ? children({ selectedDate: formattedDate })\n : children || defaultTrigger;\n\n return (\n <Popover open={showCalendar} onOpenChange={onOpenChange}>\n <Popover.Trigger asChild>\n {trigger}\n </Popover.Trigger>\n\n <Popover.Content side={side} className={styles.calendarPopover} ref={contentRef}>\n <Calendar\n required={true}\n {...calendarProps}\n onDropdownOpen={onDropdownOpen}\n mode=\"single\"\n selected={selectedDate}\n month={selectedDate}\n onSelect={handleSelect}\n onMonthChange={setSelectedDate}\n />\n </Popover.Content>\n </Popover>\n );\n}\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"date-picker.js","sources":["../../../../v1/components/calendar/date-picker.tsx"],"sourcesContent":["import { CalendarIcon } from \"@radix-ui/react-icons\";\nimport dayjs from \"dayjs\";\nimport customParseFormat from \"dayjs/plugin/customParseFormat\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { PropsBase, PropsSingleRequired } from \"react-day-picker\";\n\nimport { Popover } from \"../popover\";\nimport { TextField } from \"../textfield\";\nimport { TextfieldProps } from \"../textfield/textfield\";\nimport { Calendar } from \"./calendar\";\nimport styles from \"./calendar.module.css\";\n\ndayjs.extend(customParseFormat);\n\ninterface DatePickerProps {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n dateFormat?: string;\n textFieldProps?: TextfieldProps;\n calendarProps?: PropsSingleRequired & PropsBase;\n onSelect?: (date: Date) => void;\n placeholder?: string;\n value?: Date;\n children?:\n | React.ReactNode\n | ((props: { selectedDate: string }) => React.ReactNode);\n showCalendarIcon?: boolean;\n}\n\nexport function DatePicker({\n side = \"top\",\n dateFormat = \"DD/MM/YYYY\",\n placeholder = \"DD/MM/YYYY\",\n textFieldProps,\n calendarProps,\n value = new Date(),\n onSelect = () => {},\n children,\n showCalendarIcon = true,\n}: DatePickerProps) {\n const [showCalendar, setShowCalendar] = useState(false);\n const [selectedDate, setSelectedDate] = useState(value);\n const [inputState, setInputState] =\n useState<Partial<React.ComponentProps<typeof TextField>[\"state\"]>>();\n\n const formattedDate = dayjs(selectedDate).format(dateFormat);\n\n const isDropdownOpenRef = useRef(false);\n const textFieldRef = useRef<HTMLInputElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n const isInputFieldFocused = useRef(false);\n const selectedDateRef = useRef(selectedDate);\n\n useEffect(() => {\n selectedDateRef.current = selectedDate;\n }, [selectedDate]);\n\n function isElementOutside(el: HTMLElement) {\n return (\n !isDropdownOpenRef.current && // Month and Year dropdown from Date picker\n !textFieldRef.current?.contains(el) && // TextField\n !contentRef.current?.contains(el)\n );\n }\n\n const handleMouseDown = useCallback((event: MouseEvent) => {\n const el = event.target as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n }, []);\n\n function registerEventListeners() {\n isInputFieldFocused.current = true;\n document.addEventListener(\"mouseup\", handleMouseDown);\n }\n\n function removeEventListeners(skipUpdate = false) {\n isInputFieldFocused.current = false;\n setShowCalendar(false);\n\n const updatedVal = dayjs(selectedDateRef.current).format(dateFormat);\n\n if (textFieldRef.current) textFieldRef.current.value = updatedVal;\n if (inputState === undefined && !skipUpdate)\n onSelect(dayjs(updatedVal).toDate());\n\n document.removeEventListener(\"mouseup\", handleMouseDown);\n }\n\n const handleSelect = (day: Date) => {\n setSelectedDate(day);\n onSelect(day);\n setInputState(undefined);\n removeEventListeners(true);\n };\n\n function onDropdownOpen() {\n isDropdownOpenRef.current = true;\n }\n\n function onOpenChange(open?: boolean) {\n if (\n !isDropdownOpenRef.current &&\n !(isInputFieldFocused.current && showCalendar)\n ) {\n setShowCalendar(Boolean(open));\n }\n\n isDropdownOpenRef.current = false;\n }\n\n function handleInputFocus() {\n if (isInputFieldFocused.current) return;\n if (!showCalendar) setShowCalendar(true);\n }\n\n function handleInputBlur(event: React.FocusEvent) {\n if (isInputFieldFocused.current) {\n const el = event.relatedTarget as HTMLElement | null;\n if (el && isElementOutside(el)) removeEventListeners();\n } else {\n registerEventListeners();\n setTimeout(() => textFieldRef.current?.select());\n }\n }\n\n function handleKeyUp(event: React.KeyboardEvent) {\n if (event.code === \"Enter\" && textFieldRef.current) {\n textFieldRef.current.blur();\n removeEventListeners();\n }\n }\n\n function handleInputChange(event: React.ChangeEvent<HTMLInputElement>) {\n const { value } = event.target;\n\n const format = value.includes(\"/\")\n ? \"DD/MM/YYYY\"\n : value.includes(\"-\")\n ? \"DD-MM-YYYY\"\n : undefined;\n const date = dayjs(\n value.replace(/(\\d{1,2})\\/(\\d{1,2})\\/(\\d{4})/, (_, day, month, year) => {\n return `${day.padStart(2, \"0\")}/${month.padStart(2, \"0\")}/${year}`; // Replaces [8/8/2024] to [08/08/2024]\n }),\n format\n );\n\n const isValidDate = date.isValid();\n\n const isAfter =\n calendarProps?.startMonth !== undefined\n ? dayjs(date).isSameOrAfter(calendarProps.startMonth)\n : true;\n const isBefore =\n calendarProps?.endMonth !== undefined\n ? dayjs(date).isSameOrBefore(calendarProps.endMonth)\n : true;\n\n const isValid =\n isValidDate && isAfter && isBefore && dayjs(date).isSameOrBefore(dayjs());\n\n if (isValid) {\n setSelectedDate(date.toDate());\n if (inputState === \"invalid\") setInputState(undefined);\n } else {\n setInputState(\"invalid\");\n }\n }\n\n const defaultTrigger = (\n <TextField\n ref={textFieldRef}\n defaultValue={formattedDate}\n trailing={showCalendarIcon ? <CalendarIcon /> : undefined}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n state={inputState}\n placeholder={placeholder}\n onKeyUp={handleKeyUp}\n className={styles.datePickerInput}\n {...textFieldProps}\n />\n );\n\n const trigger =\n typeof children === \"function\"\n ? children({ selectedDate: formattedDate })\n : children || defaultTrigger;\n\n return (\n <Popover open={showCalendar} onOpenChange={onOpenChange}>\n <Popover.Trigger asChild>{trigger}</Popover.Trigger>\n\n <Popover.Content\n side={side}\n className={styles.calendarPopover}\n ref={contentRef}\n >\n <Calendar\n required={true}\n {...calendarProps}\n onDropdownOpen={onDropdownOpen}\n mode=\"single\"\n selected={selectedDate}\n month={selectedDate}\n onSelect={handleSelect}\n onMonthChange={setSelectedDate}\n />\n </Popover.Content>\n </Popover>\n );\n}\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -22,15 +22,15 @@ const chip = index.cva(chip_module.default.chip, {
22
22
  defaultVariants: {
23
23
  variant: "outline",
24
24
  size: "small",
25
- color: "neutral"
25
+ color: "neutral",
26
26
  },
27
27
  });
28
- const Chip = ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, role = "status", ariaLabel, }) => {
28
+ const Chip = ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, onClick, role = "status", ariaLabel, }) => {
29
29
  const handleDismiss = (e) => {
30
30
  e.stopPropagation();
31
31
  onDismiss?.();
32
32
  };
33
- return (jsxRuntime.jsxRuntimeExports.jsxs("span", { className: chip({ variant, size, color, className }), role: role, "aria-label": ariaLabel || (typeof children === 'string' ? children : undefined), children: [leadingIcon && (jsxRuntime.jsxRuntimeExports.jsx("span", { className: chip_module.default['leading-icon'], "aria-hidden": "true", role: "presentation", children: leadingIcon })), children, isDismissible ? (jsxRuntime.jsxRuntimeExports.jsx("button", { onClick: handleDismiss, className: chip_module.default['dismiss-button'], "aria-label": `Remove ${typeof children === 'string' ? children : 'item'}`, type: "button", children: jsxRuntime.jsxRuntimeExports.jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "presentation", children: jsxRuntime.jsxRuntimeExports.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z", fill: "currentColor" }) }) })) : trailingIcon ? (jsxRuntime.jsxRuntimeExports.jsx("span", { className: chip_module.default['trailing-icon'], "aria-hidden": "true", role: "presentation", children: trailingIcon })) : null] }));
33
+ return (jsxRuntime.jsxRuntimeExports.jsxs("span", { className: chip({ variant, size, color, className }), role: role, "aria-label": ariaLabel || (typeof children === "string" ? children : undefined), onClick: onClick, children: [leadingIcon && (jsxRuntime.jsxRuntimeExports.jsx("span", { className: chip_module.default["leading-icon"], "aria-hidden": "true", role: "presentation", children: leadingIcon })), children, isDismissible ? (jsxRuntime.jsxRuntimeExports.jsx("button", { onClick: handleDismiss, className: chip_module.default["dismiss-button"], "aria-label": `Remove ${typeof children === "string" ? children : "item"}`, type: "button", children: jsxRuntime.jsxRuntimeExports.jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "presentation", children: jsxRuntime.jsxRuntimeExports.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z", fill: "currentColor" }) }) })) : trailingIcon ? (jsxRuntime.jsxRuntimeExports.jsx("span", { className: chip_module.default["trailing-icon"], "aria-hidden": "true", role: "presentation", children: trailingIcon })) : null] }));
34
34
  };
35
35
  Chip.displayName = "Chip";
36
36
 
@@ -1 +1 @@
1
- {"version":3,"file":"chip.cjs","sources":["../../../../v1/components/chip/chip.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport styles from \"./chip.module.css\";\n\nconst chip = cva(styles.chip, {\n variants: {\n variant: {\n outline: styles[\"chip-variant-outline\"],\n filled: styles[\"chip-variant-filled\"],\n },\n size: {\n large: styles[\"chip-size-large\"],\n small: styles[\"chip-size-small\"],\n },\n color: {\n neutral: styles[\"chip-color-neutral\"],\n accent: styles[\"chip-color-accent\"],\n },\n },\n defaultVariants: {\n variant: \"outline\",\n size: \"small\",\n color: \"neutral\"\n },\n});\n\ntype ChipProps = VariantProps<typeof chip> & {\n trailingIcon?: ReactNode;\n leadingIcon?: ReactNode;\n isDismissible?: boolean;\n children: ReactNode;\n className?: string;\n onDismiss?: () => void;\n role?: string;\n ariaLabel?: string;\n}\n\nexport const Chip = ({ \n variant,\n size,\n color,\n trailingIcon,\n leadingIcon,\n isDismissible,\n children,\n className,\n onDismiss,\n role = \"status\",\n ariaLabel,\n}: ChipProps) => {\n const handleDismiss = (e: React.MouseEvent) => {\n e.stopPropagation();\n onDismiss?.();\n };\n\n return (\n <span \n className={chip({ variant, size, color, className })}\n role={role}\n aria-label={ariaLabel || (typeof children === 'string' ? children : undefined)}\n >\n {leadingIcon && (\n <span \n className={styles['leading-icon']} \n aria-hidden=\"true\"\n role=\"presentation\"\n >\n {leadingIcon}\n </span>\n )}\n {children}\n {isDismissible ? (\n <button \n onClick={handleDismiss} \n className={styles['dismiss-button']}\n aria-label={`Remove ${typeof children === 'string' ? children : 'item'}`}\n type=\"button\"\n >\n <svg \n width=\"12\" \n height=\"12\" \n viewBox=\"0 0 12 12\" \n fill=\"none\" \n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path \n fillRule=\"evenodd\" \n clipRule=\"evenodd\" \n d=\"M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z\" \n fill=\"currentColor\"\n />\n </svg>\n </button>\n ) : trailingIcon ? (\n <span \n className={styles['trailing-icon']}\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n {trailingIcon}\n </span>\n ) : null}\n </span>\n );\n};\n\nChip.displayName = \"Chip\";"],"names":["cva","styles","_jsxs","_jsx"],"mappings":";;;;;;AAKA,MAAM,IAAI,GAAGA,SAAG,CAACC,mBAAM,CAAC,IAAI,EAAE;AAC5B,IAAA,QAAQ,EAAE;AACR,QAAA,OAAO,EAAE;AACP,YAAA,OAAO,EAAEA,mBAAM,CAAC,sBAAsB,CAAC;AACvC,YAAA,MAAM,EAAEA,mBAAM,CAAC,qBAAqB,CAAC;AACtC,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,KAAK,EAAEA,mBAAM,CAAC,iBAAiB,CAAC;AAChC,YAAA,KAAK,EAAEA,mBAAM,CAAC,iBAAiB,CAAC;AACjC,SAAA;AACD,QAAA,KAAK,EAAE;AACL,YAAA,OAAO,EAAEA,mBAAM,CAAC,oBAAoB,CAAC;AACrC,YAAA,MAAM,EAAEA,mBAAM,CAAC,mBAAmB,CAAC;AACpC,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACF,CAAA,CAAC,CAAC;AAaI,MAAM,IAAI,GAAG,CAAC,EACnB,OAAO,EACP,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,IAAI,GAAG,QAAQ,EACf,SAAS,GACC,KAAI;AACd,IAAA,MAAM,aAAa,GAAG,CAAC,CAAmB,KAAI;QAC5C,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,SAAS,IAAI,CAAC;AAChB,KAAC,CAAC;AAEF,IAAA,QACEC,iCACE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EACpD,IAAI,EAAE,IAAI,EACE,YAAA,EAAA,SAAS,KAAK,OAAO,QAAQ,KAAK,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC,EAE7E,QAAA,EAAA,CAAA,WAAW,KACVC,gCAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAEF,mBAAM,CAAC,cAAc,CAAC,EACrB,aAAA,EAAA,MAAM,EAClB,IAAI,EAAC,cAAc,EAAA,QAAA,EAElB,WAAW,EACP,CAAA,CACR,EACA,QAAQ,EACR,aAAa,IACZE,6CACE,OAAO,EAAE,aAAa,EACtB,SAAS,EAAEF,mBAAM,CAAC,gBAAgB,CAAC,EAAA,YAAA,EACvB,UAAU,OAAO,QAAQ,KAAK,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAA,CAAE,EACxE,IAAI,EAAC,QAAQ,EAEb,QAAA,EAAAE,gCAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,iBACtB,MAAM,EAClB,IAAI,EAAC,cAAc,YAEnBA,gCACE,CAAA,MAAA,EAAA,EAAA,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,qgBAAqgB,EACvgB,IAAI,EAAC,cAAc,GACnB,EACE,CAAA,EAAA,CACC,IACP,YAAY,IACdA,gCACE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAEF,mBAAM,CAAC,eAAe,CAAC,iBACtB,MAAM,EAClB,IAAI,EAAC,cAAc,YAElB,YAAY,EAAA,CACR,IACL,IAAI,CAAA,EAAA,CACH,EACP;AACJ,EAAE;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
1
+ {"version":3,"file":"chip.cjs","sources":["../../../../v1/components/chip/chip.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport styles from \"./chip.module.css\";\n\nconst chip = cva(styles.chip, {\n variants: {\n variant: {\n outline: styles[\"chip-variant-outline\"],\n filled: styles[\"chip-variant-filled\"],\n },\n size: {\n large: styles[\"chip-size-large\"],\n small: styles[\"chip-size-small\"],\n },\n color: {\n neutral: styles[\"chip-color-neutral\"],\n accent: styles[\"chip-color-accent\"],\n },\n },\n defaultVariants: {\n variant: \"outline\",\n size: \"small\",\n color: \"neutral\",\n },\n});\n\ntype ChipProps = VariantProps<typeof chip> & {\n trailingIcon?: ReactNode;\n leadingIcon?: ReactNode;\n isDismissible?: boolean;\n children: ReactNode;\n className?: string;\n onDismiss?: () => void;\n onClick?: () => void;\n role?: string;\n ariaLabel?: string;\n};\n\nexport const Chip = ({\n variant,\n size,\n color,\n trailingIcon,\n leadingIcon,\n isDismissible,\n children,\n className,\n onDismiss,\n onClick,\n role = \"status\",\n ariaLabel,\n}: ChipProps) => {\n const handleDismiss = (e: React.MouseEvent) => {\n e.stopPropagation();\n onDismiss?.();\n };\n\n return (\n <span\n className={chip({ variant, size, color, className })}\n role={role}\n aria-label={\n ariaLabel || (typeof children === \"string\" ? children : undefined)\n }\n onClick={onClick}\n >\n {leadingIcon && (\n <span\n className={styles[\"leading-icon\"]}\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n {leadingIcon}\n </span>\n )}\n {children}\n {isDismissible ? (\n <button\n onClick={handleDismiss}\n className={styles[\"dismiss-button\"]}\n aria-label={`Remove ${\n typeof children === \"string\" ? children : \"item\"\n }`}\n type=\"button\"\n >\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z\"\n fill=\"currentColor\"\n />\n </svg>\n </button>\n ) : trailingIcon ? (\n <span\n className={styles[\"trailing-icon\"]}\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n {trailingIcon}\n </span>\n ) : null}\n </span>\n );\n};\n\nChip.displayName = \"Chip\";\n"],"names":["cva","styles","_jsxs","_jsx"],"mappings":";;;;;;AAKA,MAAM,IAAI,GAAGA,SAAG,CAACC,mBAAM,CAAC,IAAI,EAAE;AAC5B,IAAA,QAAQ,EAAE;AACR,QAAA,OAAO,EAAE;AACP,YAAA,OAAO,EAAEA,mBAAM,CAAC,sBAAsB,CAAC;AACvC,YAAA,MAAM,EAAEA,mBAAM,CAAC,qBAAqB,CAAC;AACtC,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,KAAK,EAAEA,mBAAM,CAAC,iBAAiB,CAAC;AAChC,YAAA,KAAK,EAAEA,mBAAM,CAAC,iBAAiB,CAAC;AACjC,SAAA;AACD,QAAA,KAAK,EAAE;AACL,YAAA,OAAO,EAAEA,mBAAM,CAAC,oBAAoB,CAAC;AACrC,YAAA,MAAM,EAAEA,mBAAM,CAAC,mBAAmB,CAAC;AACpC,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACF,CAAA,CAAC,CAAC;AAcI,MAAM,IAAI,GAAG,CAAC,EACnB,OAAO,EACP,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,GAAG,QAAQ,EACf,SAAS,GACC,KAAI;AACd,IAAA,MAAM,aAAa,GAAG,CAAC,CAAmB,KAAI;QAC5C,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,SAAS,IAAI,CAAC;AAChB,KAAC,CAAC;AAEF,IAAA,QACEC,iCACE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EACpD,IAAI,EAAE,IAAI,EAER,YAAA,EAAA,SAAS,KAAK,OAAO,QAAQ,KAAK,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC,EAEpE,OAAO,EAAE,OAAO,EAEf,QAAA,EAAA,CAAA,WAAW,KACVC,2CACE,SAAS,EAAEF,mBAAM,CAAC,cAAc,CAAC,EACrB,aAAA,EAAA,MAAM,EAClB,IAAI,EAAC,cAAc,EAElB,QAAA,EAAA,WAAW,GACP,CACR,EACA,QAAQ,EACR,aAAa,IACZE,gCAAA,CAAA,QAAA,EAAA,EACE,OAAO,EAAE,aAAa,EACtB,SAAS,EAAEF,mBAAM,CAAC,gBAAgB,CAAC,EACvB,YAAA,EAAA,CAAA,OAAA,EACV,OAAO,QAAQ,KAAK,QAAQ,GAAG,QAAQ,GAAG,MAC5C,CAAE,CAAA,EACF,IAAI,EAAC,QAAQ,YAEbE,gCACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,EACtB,aAAA,EAAA,MAAM,EAClB,IAAI,EAAC,cAAc,EAEnB,QAAA,EAAAA,gCAAA,CAAA,MAAA,EAAA,EACE,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,qgBAAqgB,EACvgB,IAAI,EAAC,cAAc,EACnB,CAAA,EAAA,CACE,GACC,IACP,YAAY,IACdA,gCACE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAEF,mBAAM,CAAC,eAAe,CAAC,iBACtB,MAAM,EAClB,IAAI,EAAC,cAAc,YAElB,YAAY,EAAA,CACR,IACL,IAAI,CAAA,EAAA,CACH,EACP;AACJ,EAAE;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
@@ -12,11 +12,12 @@ type ChipProps = VariantProps<typeof chip> & {
12
12
  children: ReactNode;
13
13
  className?: string;
14
14
  onDismiss?: () => void;
15
+ onClick?: () => void;
15
16
  role?: string;
16
17
  ariaLabel?: string;
17
18
  };
18
19
  export declare const Chip: {
19
- ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, role, ariaLabel, }: ChipProps): import("react/jsx-runtime").JSX.Element;
20
+ ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, onClick, role, ariaLabel, }: ChipProps): import("react/jsx-runtime").JSX.Element;
20
21
  displayName: string;
21
22
  };
22
23
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../../v1/components/chip/chip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,IAAI;;;;mFAoBR,CAAC;AAEH,KAAK,SAAS,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAC3C,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,eAAO,MAAM,IAAI;2HAYd,SAAS;;CAyDX,CAAC"}
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../../v1/components/chip/chip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,IAAI;;;;mFAoBR,CAAC;AAEH,KAAK,SAAS,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,GAAG;IAC3C,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,IAAI;oIAad,SAAS;;CA8DX,CAAC"}
@@ -20,15 +20,15 @@ const chip = cva(styles.chip, {
20
20
  defaultVariants: {
21
21
  variant: "outline",
22
22
  size: "small",
23
- color: "neutral"
23
+ color: "neutral",
24
24
  },
25
25
  });
26
- const Chip = ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, role = "status", ariaLabel, }) => {
26
+ const Chip = ({ variant, size, color, trailingIcon, leadingIcon, isDismissible, children, className, onDismiss, onClick, role = "status", ariaLabel, }) => {
27
27
  const handleDismiss = (e) => {
28
28
  e.stopPropagation();
29
29
  onDismiss?.();
30
30
  };
31
- return (jsxRuntimeExports.jsxs("span", { className: chip({ variant, size, color, className }), role: role, "aria-label": ariaLabel || (typeof children === 'string' ? children : undefined), children: [leadingIcon && (jsxRuntimeExports.jsx("span", { className: styles['leading-icon'], "aria-hidden": "true", role: "presentation", children: leadingIcon })), children, isDismissible ? (jsxRuntimeExports.jsx("button", { onClick: handleDismiss, className: styles['dismiss-button'], "aria-label": `Remove ${typeof children === 'string' ? children : 'item'}`, type: "button", children: jsxRuntimeExports.jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "presentation", children: jsxRuntimeExports.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z", fill: "currentColor" }) }) })) : trailingIcon ? (jsxRuntimeExports.jsx("span", { className: styles['trailing-icon'], "aria-hidden": "true", role: "presentation", children: trailingIcon })) : null] }));
31
+ return (jsxRuntimeExports.jsxs("span", { className: chip({ variant, size, color, className }), role: role, "aria-label": ariaLabel || (typeof children === "string" ? children : undefined), onClick: onClick, children: [leadingIcon && (jsxRuntimeExports.jsx("span", { className: styles["leading-icon"], "aria-hidden": "true", role: "presentation", children: leadingIcon })), children, isDismissible ? (jsxRuntimeExports.jsx("button", { onClick: handleDismiss, className: styles["dismiss-button"], "aria-label": `Remove ${typeof children === "string" ? children : "item"}`, type: "button", children: jsxRuntimeExports.jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", role: "presentation", children: jsxRuntimeExports.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.5066 3.3066C9.73115 3.08205 9.73115 2.71798 9.5066 2.49343C9.28205 2.26887 8.91798 2.26887 8.69343 2.49343L6.00001 5.18684L3.3066 2.49343C3.08205 2.26887 2.71798 2.26887 2.49343 2.49343C2.26887 2.71798 2.26887 3.08205 2.49343 3.3066L5.18684 6.00001L2.49343 8.69343C2.26887 8.91798 2.26887 9.28205 2.49343 9.5066C2.71798 9.73115 3.08205 9.73115 3.3066 9.5066L6.00001 6.81318L8.69343 9.5066C8.91798 9.73115 9.28205 9.73115 9.5066 9.5066C9.73115 9.28205 9.73115 8.91798 9.5066 8.69343L6.81318 6.00001L9.5066 3.3066Z", fill: "currentColor" }) }) })) : trailingIcon ? (jsxRuntimeExports.jsx("span", { className: styles["trailing-icon"], "aria-hidden": "true", role: "presentation", children: trailingIcon })) : null] }));
32
32
  };
33
33
  Chip.displayName = "Chip";
34
34