@bigbinary/neeto-atoms 1.0.28 → 1.0.30

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 (65) hide show
  1. package/dist/{Alert-D_FV8xxo.js → Alert-CayTuRLW.js} +2 -2
  2. package/dist/{Alert-D_FV8xxo.js.map → Alert-CayTuRLW.js.map} +1 -1
  3. package/dist/{Button-Q7MPG6ph.js → Button-DSvnInaL.js} +3 -2
  4. package/dist/Button-DSvnInaL.js.map +1 -0
  5. package/dist/{DataTable-pZm7R5rm.js → DataTable-C5vfL2Hc.js} +2 -2
  6. package/dist/{DataTable-pZm7R5rm.js.map → DataTable-C5vfL2Hc.js.map} +1 -1
  7. package/dist/{Empty-B2JwFmru.js → Empty-zyL2ZsHX.js} +5 -4
  8. package/dist/Empty-zyL2ZsHX.js.map +1 -0
  9. package/dist/{Label-jZPbTxdX.js → Label-CryFO2yq.js} +2 -2
  10. package/dist/{Label-jZPbTxdX.js.map → Label-CryFO2yq.js.map} +1 -1
  11. package/dist/cjs/{Alert-BVvLyM_d.js → Alert-DnIUdIE3.js} +2 -2
  12. package/dist/cjs/{Alert-BVvLyM_d.js.map → Alert-DnIUdIE3.js.map} +1 -1
  13. package/dist/cjs/{Button-Bt_AElge.js → Button-BniJ4TT_.js} +3 -2
  14. package/dist/cjs/Button-BniJ4TT_.js.map +1 -0
  15. package/dist/cjs/{DataTable-XA82zdPA.js → DataTable-D_rEai97.js} +2 -2
  16. package/dist/cjs/{DataTable-XA82zdPA.js.map → DataTable-D_rEai97.js.map} +1 -1
  17. package/dist/cjs/{Empty-qzle6YvT.js → Empty-CfPLWsLK.js} +5 -4
  18. package/dist/cjs/Empty-CfPLWsLK.js.map +1 -0
  19. package/dist/cjs/{Label-B8SlyX1E.js → Label-BHFmdHwe.js} +2 -2
  20. package/dist/cjs/{Label-B8SlyX1E.js.map → Label-BHFmdHwe.js.map} +1 -1
  21. package/dist/cjs/components/Alert.js +3 -2
  22. package/dist/cjs/components/Alert.js.map +1 -1
  23. package/dist/cjs/components/Button.js +2 -1
  24. package/dist/cjs/components/Button.js.map +1 -1
  25. package/dist/cjs/components/DataTable.js +3 -2
  26. package/dist/cjs/components/DataTable.js.map +1 -1
  27. package/dist/cjs/components/Empty.js +4 -2
  28. package/dist/cjs/components/Empty.js.map +1 -1
  29. package/dist/cjs/components/Label.js +3 -2
  30. package/dist/cjs/components/Label.js.map +1 -1
  31. package/dist/cjs/components/index.js +6 -5
  32. package/dist/cjs/components/index.js.map +1 -1
  33. package/dist/cjs/formik/ActionBlock.js +2 -1
  34. package/dist/cjs/formik/ActionBlock.js.map +1 -1
  35. package/dist/cjs/formik/BlockNavigation.js +1 -1
  36. package/dist/cjs/formik/Button.js +2 -1
  37. package/dist/cjs/formik/Button.js.map +1 -1
  38. package/dist/cjs/formik/index.js +2 -2
  39. package/dist/cjs/index.js +6 -5
  40. package/dist/cjs/index.js.map +1 -1
  41. package/dist/components/Alert.js +3 -2
  42. package/dist/components/Alert.js.map +1 -1
  43. package/dist/components/Button.js +2 -1
  44. package/dist/components/Button.js.map +1 -1
  45. package/dist/components/DataTable.js +3 -2
  46. package/dist/components/DataTable.js.map +1 -1
  47. package/dist/components/Empty.js +4 -2
  48. package/dist/components/Empty.js.map +1 -1
  49. package/dist/components/Label.js +3 -2
  50. package/dist/components/Label.js.map +1 -1
  51. package/dist/components/index.js +6 -5
  52. package/dist/components/index.js.map +1 -1
  53. package/dist/formik/ActionBlock.js +2 -1
  54. package/dist/formik/ActionBlock.js.map +1 -1
  55. package/dist/formik/BlockNavigation.js +1 -1
  56. package/dist/formik/Button.js +2 -1
  57. package/dist/formik/Button.js.map +1 -1
  58. package/dist/formik/index.js +2 -2
  59. package/dist/index.js +6 -5
  60. package/dist/index.js.map +1 -1
  61. package/package.json +1 -1
  62. package/dist/Button-Q7MPG6ph.js.map +0 -1
  63. package/dist/Empty-B2JwFmru.js.map +0 -1
  64. package/dist/cjs/Button-Bt_AElge.js.map +0 -1
  65. package/dist/cjs/Empty-qzle6YvT.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Label.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,19 +1,19 @@
1
1
  export { A as Accordion } from '../Accordion-Ch9S_qd3.js';
2
- export { A as Alert } from '../Alert-D_FV8xxo.js';
2
+ export { A as Alert } from '../Alert-CayTuRLW.js';
3
3
  export { A as Avatar } from '../Avatar-D5YGlXVF.js';
4
4
  export { B as Badge } from '../Badge-Bj3ajrWB.js';
5
- export { B as Button } from '../Button-Q7MPG6ph.js';
5
+ export { B as Button } from '../Button-DSvnInaL.js';
6
6
  export { C as Callout } from '../Callout-CTr3dhBe.js';
7
7
  export { C as Checkbox } from '../Checkbox-zCxgcZiC.js';
8
8
  export { C as ColorPicker } from '../ColorPicker-DtOvy0Gy.js';
9
- export { D as DataTable, u as useColumnOrdering, a as useColumnPinning, b as useColumnVisibility, c as useTablePagination, d as useTableSelection, e as useTableSort } from '../DataTable-pZm7R5rm.js';
9
+ export { D as DataTable, u as useColumnOrdering, a as useColumnPinning, b as useColumnVisibility, c as useTablePagination, d as useTableSelection, e as useTableSort } from '../DataTable-C5vfL2Hc.js';
10
10
  export { D as DatePicker } from '../DatePicker-C5DROLCX.js';
11
11
  export { D as Dialog } from '../Dialog-BURSzxaP.js';
12
12
  export { DropdownMenu } from './DropdownMenu.js';
13
- export { E as Empty } from '../Empty-B2JwFmru.js';
13
+ export { E as Empty } from '../Empty-zyL2ZsHX.js';
14
14
  export { I as Input } from '../Input-C1gcv9o2.js';
15
15
  export { K as Kbd } from '../Kbd-EqbC0bua.js';
16
- export { L as Label } from '../Label-jZPbTxdX.js';
16
+ export { L as Label } from '../Label-CryFO2yq.js';
17
17
  export { M as MultiEmailInput } from '../MultiEmailInput-SCTYovtX.js';
18
18
  export { P as Pagination } from '../Pagination-DSc9yXPy.js';
19
19
  export { P as Popover } from '../Popover-dib6elwS.js';
@@ -78,6 +78,7 @@ import '../index-BYZaLNq1.js';
78
78
  import '../index-CSggBaQF.js';
79
79
  import '../renderIcon-tlvMyboj.js';
80
80
  import '../primitives/Badge.js';
81
+ import 'react-router-dom';
81
82
  import '../primitives/Button.js';
82
83
  import '../primitives/Spinner.js';
83
84
  import '../loader-circle-DycHUAWN.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,9 +1,10 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { forwardRef } from 'react';
3
3
  import { useFormikContext } from 'formik';
4
- import { B as Button } from '../Button-Q7MPG6ph.js';
4
+ import { B as Button } from '../Button-DSvnInaL.js';
5
5
  import { c as cn } from '../utils-DdHUxIdC.js';
6
6
  import { FormikButton } from './Button.js';
7
+ import 'react-router-dom';
7
8
  import '../renderIcon-tlvMyboj.js';
8
9
  import '../primitives/Button.js';
9
10
  import '../button-Dn5ffsMK.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBlock.js","sources":["../../src/formik/ActionBlock.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\n\nimport { Button, type ButtonProps } from \"src/components/Button\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nimport { FormikButton } from \"./Button\";\n\nexport interface FormikActionBlockProps {\n /** Additional CSS class names for the wrapper. */\n className?: string;\n /** Props forwarded to the submit button. */\n submitButtonProps?: ButtonProps;\n /** Props forwarded to the cancel button. */\n cancelButtonProps?: ButtonProps;\n /**\n * Override the auto-computed submitting state (e.g. from React Query mutation).\n * Falls back to Formik's `isSubmitting` when not provided.\n */\n isSubmitting?: boolean;\n /** Alignment of the buttons. */\n position?: \"left\" | \"right\";\n}\n\nconst FormikActionBlock = forwardRef<HTMLDivElement, FormikActionBlockProps>(\n (\n {\n className,\n submitButtonProps,\n cancelButtonProps,\n isSubmitting: isSubmittingProp,\n position = \"left\",\n },\n ref\n ) => {\n const { handleReset, isSubmitting: isFormikSubmitting } =\n useFormikContext();\n\n const isSubmitting = isSubmittingProp ?? isFormikSubmitting;\n\n const cancelButton = (\n <Button\n data-testid=\"cancel-button\"\n disabled={isSubmitting}\n label=\"Cancel\"\n variant=\"ghost\"\n onClick={handleReset}\n onMouseDown={(e: React.MouseEvent) => e.preventDefault()}\n {...cancelButtonProps}\n />\n );\n\n const submitButton = (\n <FormikButton\n data-testid=\"save-changes-button\"\n label=\"Save changes\"\n type=\"submit\"\n {...submitButtonProps}\n />\n );\n\n return (\n <div\n ref={ref}\n className={cn(\n \"flex items-center gap-2\",\n position === \"right\" && \"justify-end\",\n className\n )}\n >\n {position === \"right\" ? (\n <>\n {cancelButton}\n {submitButton}\n </>\n ) : (\n <>\n {submitButton}\n {cancelButton}\n </>\n )}\n </div>\n );\n }\n);\n\nFormikActionBlock.displayName = \"FormikActionBlock\";\n\nexport { FormikActionBlock };\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAM,iBAAiB,GAAG,UAAU,CAClC,CACE,EACE,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EAAE,gBAAgB,EAC9B,QAAQ,GAAG,MAAM,GAClB,EACD,GAAG,KACD;IACF,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,GACrD,gBAAgB,EAAE;AAEpB,IAAA,MAAM,YAAY,GAAG,gBAAgB,IAAI,kBAAkB;AAE3D,IAAA,MAAM,YAAY,IAChBA,GAAA,CAAC,MAAM,mBACO,eAAe,EAC3B,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,CAAC,CAAmB,KAAK,CAAC,CAAC,cAAc,EAAE,KACpD,iBAAiB,EAAA,CACrB,CACH;AAED,IAAA,MAAM,YAAY,IAChBA,IAAC,YAAY,EAAA,EAAA,aAAA,EACC,qBAAqB,EACjC,KAAK,EAAC,cAAc,EACpB,IAAI,EAAC,QAAQ,KACT,iBAAiB,EAAA,CACrB,CACH;IAED,QACEA,aACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,yBAAyB,EACzB,QAAQ,KAAK,OAAO,IAAI,aAAa,EACrC,SAAS,CACV,EAAA,QAAA,EAEA,QAAQ,KAAK,OAAO,IACnBC,IAAA,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CACG,YAAY,EACZ,YAAY,IACZ,KAEHD,4BACG,YAAY,EACZ,YAAY,CAAA,EAAA,CACZ,CACJ,EAAA,CACG;AAEV,CAAC;AAGH,iBAAiB,CAAC,WAAW,GAAG,mBAAmB;;;;"}
1
+ {"version":3,"file":"ActionBlock.js","sources":["../../src/formik/ActionBlock.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\n\nimport { Button, type ButtonProps } from \"src/components/Button\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nimport { FormikButton } from \"./Button\";\n\nexport interface FormikActionBlockProps {\n /** Additional CSS class names for the wrapper. */\n className?: string;\n /** Props forwarded to the submit button. */\n submitButtonProps?: ButtonProps;\n /** Props forwarded to the cancel button. */\n cancelButtonProps?: ButtonProps;\n /**\n * Override the auto-computed submitting state (e.g. from React Query mutation).\n * Falls back to Formik's `isSubmitting` when not provided.\n */\n isSubmitting?: boolean;\n /** Alignment of the buttons. */\n position?: \"left\" | \"right\";\n}\n\nconst FormikActionBlock = forwardRef<HTMLDivElement, FormikActionBlockProps>(\n (\n {\n className,\n submitButtonProps,\n cancelButtonProps,\n isSubmitting: isSubmittingProp,\n position = \"left\",\n },\n ref\n ) => {\n const { handleReset, isSubmitting: isFormikSubmitting } =\n useFormikContext();\n\n const isSubmitting = isSubmittingProp ?? isFormikSubmitting;\n\n const cancelButton = (\n <Button\n data-testid=\"cancel-button\"\n disabled={isSubmitting}\n label=\"Cancel\"\n variant=\"ghost\"\n onClick={handleReset}\n onMouseDown={(e: React.MouseEvent) => e.preventDefault()}\n {...cancelButtonProps}\n />\n );\n\n const submitButton = (\n <FormikButton\n data-testid=\"save-changes-button\"\n label=\"Save changes\"\n type=\"submit\"\n {...submitButtonProps}\n />\n );\n\n return (\n <div\n ref={ref}\n className={cn(\n \"flex items-center gap-2\",\n position === \"right\" && \"justify-end\",\n className\n )}\n >\n {position === \"right\" ? (\n <>\n {cancelButton}\n {submitButton}\n </>\n ) : (\n <>\n {submitButton}\n {cancelButton}\n </>\n )}\n </div>\n );\n }\n);\n\nFormikActionBlock.displayName = \"FormikActionBlock\";\n\nexport { FormikActionBlock };\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAM,iBAAiB,GAAG,UAAU,CAClC,CACE,EACE,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EAAE,gBAAgB,EAC9B,QAAQ,GAAG,MAAM,GAClB,EACD,GAAG,KACD;IACF,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,GACrD,gBAAgB,EAAE;AAEpB,IAAA,MAAM,YAAY,GAAG,gBAAgB,IAAI,kBAAkB;AAE3D,IAAA,MAAM,YAAY,IAChBA,GAAA,CAAC,MAAM,mBACO,eAAe,EAC3B,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,CAAC,CAAmB,KAAK,CAAC,CAAC,cAAc,EAAE,KACpD,iBAAiB,EAAA,CACrB,CACH;AAED,IAAA,MAAM,YAAY,IAChBA,IAAC,YAAY,EAAA,EAAA,aAAA,EACC,qBAAqB,EACjC,KAAK,EAAC,cAAc,EACpB,IAAI,EAAC,QAAQ,KACT,iBAAiB,EAAA,CACrB,CACH;IAED,QACEA,aACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,yBAAyB,EACzB,QAAQ,KAAK,OAAO,IAAI,aAAa,EACrC,SAAS,CACV,EAAA,QAAA,EAEA,QAAQ,KAAK,OAAO,IACnBC,IAAA,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CACG,YAAY,EACZ,YAAY,IACZ,KAEHD,4BACG,YAAY,EACZ,YAAY,CAAA,EAAA,CACZ,CACJ,EAAA,CACG;AAEV,CAAC;AAGH,iBAAiB,CAAC,WAAW,GAAG,mBAAmB;;;;"}
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { useFormikContext } from 'formik';
3
3
  import { useState, useRef, useCallback, useEffect } from 'react';
4
4
  import { useHistory } from 'react-router-dom';
5
- import { B as Button } from '../Button-Q7MPG6ph.js';
5
+ import { B as Button } from '../Button-DSvnInaL.js';
6
6
  import { D as Dialog } from '../Dialog-BURSzxaP.js';
7
7
  import '../utils-DdHUxIdC.js';
8
8
  import '../renderIcon-tlvMyboj.js';
@@ -2,7 +2,8 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import { forwardRef } from 'react';
3
3
  import { useFormikContext } from 'formik';
4
4
  import { equals } from 'ramda';
5
- import { B as Button } from '../Button-Q7MPG6ph.js';
5
+ import { B as Button } from '../Button-DSvnInaL.js';
6
+ import 'react-router-dom';
6
7
  import '../utils-DdHUxIdC.js';
7
8
  import '../renderIcon-tlvMyboj.js';
8
9
  import '../primitives/Button.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../src/formik/Button.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { equals } from \"ramda\";\n\nimport { Button, ButtonProps } from \"src/components/Button\";\n\nexport interface FormikButtonProps extends ButtonProps {\n /** Override the auto-computed disabled state. */\n disabled?: boolean;\n}\n\nconst FormikButton = forwardRef<HTMLButtonElement, FormikButtonProps>(\n ({ disabled, ...otherProps }, ref) => {\n const { handleSubmit, isSubmitting, values, initialValues, isValid } =\n useFormikContext();\n\n const isDisabled =\n disabled ?? (isSubmitting || equals(values, initialValues));\n\n return (\n <Button\n ref={ref}\n disabled={isDisabled}\n loading={isSubmitting && isValid}\n onClick={() => handleSubmit()}\n {...otherProps}\n />\n );\n }\n);\n\nFormikButton.displayName = \"FormikButton\";\n\nexport { FormikButton };\n"],"names":["_jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,YAAY,GAAG,UAAU,CAC7B,CAAC,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAI;AACnC,IAAA,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAClE,gBAAgB,EAAE;AAEpB,IAAA,MAAM,UAAU,GACd,QAAQ,KAAK,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAE7D,IAAA,QACEA,GAAA,CAAC,MAAM,EAAA,EACL,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,YAAY,IAAI,OAAO,EAChC,OAAO,EAAE,MAAM,YAAY,EAAE,EAAA,GACzB,UAAU,EAAA,CACd;AAEN,CAAC;AAGH,YAAY,CAAC,WAAW,GAAG,cAAc;;;;"}
1
+ {"version":3,"file":"Button.js","sources":["../../src/formik/Button.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { equals } from \"ramda\";\n\nimport { Button, ButtonProps } from \"src/components/Button\";\n\nexport interface FormikButtonProps extends ButtonProps {\n /** Override the auto-computed disabled state. */\n disabled?: boolean;\n}\n\nconst FormikButton = forwardRef<HTMLButtonElement, FormikButtonProps>(\n ({ disabled, ...otherProps }, ref) => {\n const { handleSubmit, isSubmitting, values, initialValues, isValid } =\n useFormikContext();\n\n const isDisabled =\n disabled ?? (isSubmitting || equals(values, initialValues));\n\n return (\n <Button\n ref={ref}\n disabled={isDisabled}\n loading={isSubmitting && isValid}\n onClick={() => handleSubmit()}\n {...otherProps}\n />\n );\n }\n);\n\nFormikButton.displayName = \"FormikButton\";\n\nexport { FormikButton };\n"],"names":["_jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAM,YAAY,GAAG,UAAU,CAC7B,CAAC,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAI;AACnC,IAAA,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAClE,gBAAgB,EAAE;AAEpB,IAAA,MAAM,UAAU,GACd,QAAQ,KAAK,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAE7D,IAAA,QACEA,GAAA,CAAC,MAAM,EAAA,EACL,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,YAAY,IAAI,OAAO,EAChC,OAAO,EAAE,MAAM,YAAY,EAAE,EAAA,GACzB,UAAU,EAAA,CACd;AAEN,CAAC;AAGH,YAAY,CAAC,WAAW,GAAG,cAAc;;;;"}
@@ -78,13 +78,13 @@ import '../Tree-C7r10UY5.js';
78
78
  import '../chevron-right-DQnrO-ek.js';
79
79
  import '../redux-BKH6DnBB.js';
80
80
  import '../MultiEmailInput-SCTYovtX.js';
81
- import '../Button-Q7MPG6ph.js';
81
+ import '../Button-DSvnInaL.js';
82
+ import 'react-router-dom';
82
83
  import '../renderIcon-tlvMyboj.js';
83
84
  import '../primitives/Button.js';
84
85
  import '../primitives/Tooltip.js';
85
86
  import '../tooltip-XkHLgxlU.js';
86
87
  import '../index-CSggBaQF.js';
87
- import 'react-router-dom';
88
88
  import '../Dialog-BURSzxaP.js';
89
89
  import '../primitives/Dialog.js';
90
90
  import '../dialog-C6LY-ud7.js';
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  export { A as Accordion } from './Accordion-Ch9S_qd3.js';
2
- export { A as Alert } from './Alert-D_FV8xxo.js';
2
+ export { A as Alert } from './Alert-CayTuRLW.js';
3
3
  export { A as Avatar } from './Avatar-D5YGlXVF.js';
4
4
  export { B as Badge } from './Badge-Bj3ajrWB.js';
5
- export { B as Button } from './Button-Q7MPG6ph.js';
5
+ export { B as Button } from './Button-DSvnInaL.js';
6
6
  export { C as Callout } from './Callout-CTr3dhBe.js';
7
7
  export { C as Checkbox } from './Checkbox-zCxgcZiC.js';
8
8
  export { C as ColorPicker } from './ColorPicker-DtOvy0Gy.js';
@@ -18,10 +18,10 @@ export { T as TranslationProvider, r as translations } from './TranslationProvid
18
18
  export { D as DirectionProvider } from './DirectionProvider-DGYDg_He.js';
19
19
  export { D as Dialog } from './Dialog-BURSzxaP.js';
20
20
  export { DropdownMenu } from './components/DropdownMenu.js';
21
- export { E as Empty } from './Empty-B2JwFmru.js';
21
+ export { E as Empty } from './Empty-zyL2ZsHX.js';
22
22
  export { I as Input } from './Input-C1gcv9o2.js';
23
23
  export { K as Kbd } from './Kbd-EqbC0bua.js';
24
- export { L as Label } from './Label-jZPbTxdX.js';
24
+ export { L as Label } from './Label-CryFO2yq.js';
25
25
  export { P as Pagination } from './Pagination-DSc9yXPy.js';
26
26
  export { R as RadioGroup } from './RadioGroup-BNeYQAoT.js';
27
27
  export { S as Select } from './Select-TlFBcxcY.js';
@@ -38,7 +38,7 @@ export { T as Tabs } from './Tabs-DWfKnl3S.js';
38
38
  export { T as Textarea } from './Textarea-C0z50h0N.js';
39
39
  export { T as Tooltip } from './Tooltip-3ZzQyaDV.js';
40
40
  export { T as Typography, t as typographyVariants } from './Typography-ClPJbLjP.js';
41
- export { D as DataTable, u as useColumnOrdering, a as useColumnPinning, b as useColumnVisibility, c as useTablePagination, d as useTableSelection, e as useTableSort } from './DataTable-pZm7R5rm.js';
41
+ export { D as DataTable, u as useColumnOrdering, a as useColumnPinning, b as useColumnVisibility, c as useTablePagination, d as useTableSelection, e as useTableSort } from './DataTable-C5vfL2Hc.js';
42
42
  export { T as Tree } from './Tree-C7r10UY5.js';
43
43
  export { T as TreeSelect } from './TreeSelect-BxsQrdjf.js';
44
44
  export { u as useIsMobile } from './use-mobile-IRjN_mlT.js';
@@ -84,6 +84,7 @@ import './index-BYZaLNq1.js';
84
84
  import './index-CSggBaQF.js';
85
85
  import './renderIcon-tlvMyboj.js';
86
86
  import './primitives/Badge.js';
87
+ import 'react-router-dom';
87
88
  import './primitives/Button.js';
88
89
  import './primitives/Spinner.js';
89
90
  import './loader-circle-DycHUAWN.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/utils/dayjs/timezonePlugin.ts","../src/utils/dayjs/index.ts"],"sourcesContent":["import type { Dayjs, PluginFunc } from \"dayjs\";\n\ntype TypeToPos = Record<string, number>;\n\nconst typeToPos: TypeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n};\n\nconst dateTimeFormatDefaults: Intl.DateTimeFormatOptions = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n};\n\nconst dtfCache = new Map<string, Intl.DateTimeFormat>();\nconst getDateTimeFormat = (\n timezone: string,\n options: { timeZoneName?: \"short\" | \"long\" } = {}\n): Intl.DateTimeFormat => {\n const timeZoneName = options.timeZoneName || \"short\";\n const key = `${timezone}|${timeZoneName}`;\n let dtf = dtfCache.get(key);\n if (!dtf) {\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n hour12: false,\n timeZone: timezone,\n timeZoneName,\n });\n dtfCache.set(key, dtf);\n }\n\n return dtf;\n};\n\nconst localeStringifierCache = new Map<string, Intl.DateTimeFormat>();\nconst getLocaleStringifier = (timezone: string): Intl.DateTimeFormat => {\n let localeStringifier = localeStringifierCache.get(timezone);\n if (!localeStringifier) {\n localeStringifier = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n timeZone: timezone,\n });\n localeStringifierCache.set(timezone, localeStringifier);\n }\n\n return localeStringifier;\n};\n\ninterface DayjsInternal extends Dayjs {\n $ms: number;\n $x: { $timezone?: string };\n $set(unit: string, value: number): DayjsInternal;\n tz(timezone: string, keepLocalTime?: boolean): DayjsInternal;\n offsetName(type?: \"short\" | \"long\"): string | undefined;\n startOf(units: string, startOf?: boolean): DayjsInternal;\n}\n\ntype DayjsFactory = {\n (input?: string | number | Date | Dayjs, format?: string): DayjsInternal;\n utc(input?: string | number | Date, format?: string): DayjsInternal;\n tz: {\n (\n input: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ): DayjsInternal;\n guess: () => string;\n setDefault: (timezone?: string) => void;\n };\n};\n\ntype DayjsClass = {\n prototype: DayjsInternal;\n};\n\nconst timezonePlugin: PluginFunc = (_o, c, d) => {\n let defaultTimezone: string | undefined;\n\n const dayjsFactory = d as unknown as DayjsFactory;\n const dayjsClass = c as unknown as DayjsClass;\n\n const makeFormatParts = (\n timestamp: number,\n timezone: string,\n options: { timeZoneName?: \"short\" | \"long\" } = {}\n ): Intl.DateTimeFormatPart[] => {\n const date = new Date(timestamp);\n const dtf = getDateTimeFormat(timezone, options);\n\n return dtf.formatToParts(date);\n };\n\n const tzOffset = (timestamp: number, timezone: string): number => {\n const formatResult = makeFormatParts(timestamp, timezone);\n const filled: number[] = [];\n for (let i = 0; i < formatResult.length; i += 1) {\n const { type, value } = formatResult[i];\n const pos = typeToPos[type];\n\n if (pos >= 0) {\n filled[pos] = parseInt(value, 10);\n }\n }\n const hour = filled[3];\n const fixedHour = hour === 24 ? 0 : hour;\n const utcString = `${filled[0]}-${filled[1]}-${filled[2]} ${fixedHour}:${filled[4]}:${filled[5]}:000`;\n const utcTs = dayjsFactory.utc(utcString).valueOf();\n let asTS = Number(timestamp);\n const over = asTS % 1000;\n asTS -= over;\n\n return (utcTs - asTS) / (60 * 1000);\n };\n\n const fixOffset = (\n localTS: number,\n o0: number,\n tz: string\n ): [number, number] => {\n let utcGuess = localTS - o0 * 60 * 1000;\n const o2 = tzOffset(utcGuess, tz);\n if (o0 === o2) {\n return [utcGuess, o0];\n }\n utcGuess -= (o2 - o0) * 60 * 1000;\n const o3 = tzOffset(utcGuess, tz);\n if (o2 === o3) {\n return [utcGuess, o2];\n }\n\n return [localTS - Math.min(o2, o3) * 60 * 1000, Math.max(o2, o3)];\n };\n\n const proto = dayjsClass.prototype;\n\n proto.tz = function (\n timezone: string = defaultTimezone!,\n keepLocalTime?: boolean\n ) {\n const oldOffset = this.utcOffset();\n const date = this.toDate();\n const target = getLocaleStringifier(timezone).format(date);\n const diff = Math.round(\n (date.getTime() - new Date(target).getTime()) / 1000 / 60\n );\n let ins = dayjsFactory(target)\n .$set(\"millisecond\", this.$ms)\n .utcOffset(\n -Math.round(date.getTimezoneOffset() / 15) * 15 - diff,\n true\n ) as DayjsInternal;\n if (keepLocalTime) {\n const newOffset = ins.utcOffset();\n ins = ins.add(oldOffset - newOffset, \"minute\") as DayjsInternal;\n }\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n proto.offsetName = function (type?: \"short\" | \"long\") {\n const zone = this.$x.$timezone || dayjsFactory.tz.guess();\n const result = makeFormatParts(this.valueOf(), zone, {\n timeZoneName: type,\n }).find(\n (m: Intl.DateTimeFormatPart) => m.type.toLowerCase() === \"timezonename\"\n );\n\n return result && result.value;\n };\n\n const oldStartOf = proto.startOf;\n proto.startOf = function (units: string, startOf?: boolean) {\n if (!this.$x || !this.$x.$timezone) {\n return oldStartOf.call(this, units, startOf);\n }\n\n const withoutTz = dayjsFactory(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));\n const startOfWithoutTz = oldStartOf.call(withoutTz, units, startOf);\n\n return (startOfWithoutTz as DayjsInternal).tz(this.$x.$timezone, true);\n };\n\n const tzFunction = function (\n input: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ) {\n const parseFormat = arg2 && arg1;\n const timezone = arg2 || arg1 || defaultTimezone;\n const previousOffset = tzOffset(Number(dayjsFactory()), timezone!);\n if (typeof input !== \"string\") {\n return dayjsFactory(input as string | number | Date).tz(timezone!);\n }\n const localTs = dayjsFactory.utc(input, parseFormat).valueOf();\n const [targetTs, targetOffset] = fixOffset(\n localTs,\n previousOffset,\n timezone!\n );\n const ins = dayjsFactory(targetTs).utcOffset(targetOffset) as DayjsInternal;\n ins.$x.$timezone = timezone;\n\n return ins;\n } as DayjsFactory[\"tz\"];\n\n tzFunction.guess = function () {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n };\n\n tzFunction.setDefault = function (timezone?: string) {\n defaultTimezone = timezone;\n };\n\n dayjsFactory.tz = tzFunction;\n};\n\nexport default timezonePlugin;\n","import pureDayjs from \"dayjs\";\nimport type { Dayjs } from \"dayjs\";\nimport localeData from \"dayjs/plugin/localeData\";\nimport utc from \"dayjs/plugin/utc\";\nimport weekday from \"dayjs/plugin/weekday\";\nimport weekOfYear from \"dayjs/plugin/weekOfYear\";\n\nimport timezonePlugin from \"./timezonePlugin\";\n\npureDayjs.extend(weekOfYear);\npureDayjs.extend(weekday);\npureDayjs.extend(localeData);\npureDayjs.extend(utc);\npureDayjs.extend(timezonePlugin);\n\ninterface DayjsInternal extends Dayjs {\n $x: { $timezone?: string };\n}\n\ninterface DayjsWithTz {\n (\n ...args: [string | number | Date | Dayjs | null | undefined, string?]\n ): Dayjs;\n utc(input?: string | number | Date, format?: string): Dayjs;\n tz: {\n (\n input?: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ): DayjsInternal;\n guess: () => string;\n setDefault: (timezone?: string) => void;\n };\n}\n\nclass LRUCache<K, V> {\n private limit: number;\n private cache: Map<K, V>;\n\n constructor(limit: number) {\n this.limit = limit;\n this.cache = new Map();\n }\n\n get(key: K): V | undefined {\n const value = this.cache.get(key);\n this.cache.delete(key);\n if (value !== undefined) {\n this.cache.set(key, value);\n }\n\n return value;\n }\n\n set(key: K, value: V): void {\n if (this.cache.size >= this.limit) {\n const oldestKey = this.cache.keys().next().value;\n if (oldestKey !== undefined) {\n this.cache.delete(oldestKey);\n }\n }\n this.cache.set(key, value);\n }\n\n has(key: K): boolean {\n return this.cache.has(key);\n }\n}\n\nconst hasTimezone = (dateString: string): boolean => {\n const timezoneRegex = /Z|[+-]\\d{2}:\\d{2}$|[+-]\\d{4}$|GMT([+-]\\d{4})?$/;\n\n return timezoneRegex.test(dateString);\n};\n\nconst cache = new LRUCache<string, Dayjs>(1000);\nconst pureDayjsWithTz = pureDayjs as unknown as DayjsWithTz;\n\nconst dayjs = (\n ...args: [string | number | Date | Dayjs | null | undefined, string?]\n): Dayjs => {\n const cacheKey = JSON.stringify(args);\n\n if (cache.has(cacheKey) && args[0] !== undefined) return cache.get(cacheKey)!;\n\n const userTimezone = pureDayjsWithTz.tz()?.$x?.$timezone;\n const browserTimezone = pureDayjsWithTz.tz.guess();\n const timezone = userTimezone || browserTimezone;\n\n if (userTimezone === browserTimezone || userTimezone === undefined) {\n const result = pureDayjsWithTz(...args);\n\n if (args[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n const mutableArgs: [\n string | number | Date | Dayjs | null | undefined,\n string?,\n ] = [...args];\n\n if (\n mutableArgs.length > 0 &&\n (typeof mutableArgs[0] === \"string\" || mutableArgs[0] === null)\n ) {\n const pureDayjsArgs: [\n string | number | Date | Dayjs | null | undefined,\n string?,\n ] = [mutableArgs[0], mutableArgs[1]];\n\n if (typeof mutableArgs[0] === \"string\" && hasTimezone(mutableArgs[0])) {\n mutableArgs[0] = pureDayjsWithTz(...pureDayjsArgs);\n } else {\n mutableArgs[0] = pureDayjsWithTz(...pureDayjsArgs).format(\n \"YYYY-MM-DD HH:mm:ss\"\n );\n mutableArgs[1] = \"YYYY-MM-DD HH:mm:ss\";\n }\n }\n\n if (mutableArgs[0]?.toString() === \"Invalid Date\") {\n const result = pureDayjsWithTz(...mutableArgs);\n\n if (mutableArgs[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n const result =\n mutableArgs.length === 2\n ? pureDayjsWithTz.tz(\n mutableArgs[0] as string | number | Date | Dayjs,\n mutableArgs[1],\n timezone\n )\n : pureDayjsWithTz.tz(\n mutableArgs[0] as string | number | Date | Dayjs,\n timezone\n );\n\n if (mutableArgs[0] !== undefined) cache.set(cacheKey, result as Dayjs);\n\n return result as Dayjs;\n};\n\nObject.assign(dayjs, { ...pureDayjs });\n\nexport const getTimezoneAppliedDateTime = (\n inputDateTime: Dayjs | Dayjs[] | null\n): Dayjs | (Dayjs | null)[] | null => {\n const timezoneAppliedDateTime = (date: Dayjs | null): Dayjs | null =>\n date && typeof date.format === \"function\"\n ? dayjs(date.format(\"YYYY-MM-DD HH:mm:ss\"))\n : null;\n\n return Array.isArray(inputDateTime)\n ? inputDateTime.map(timezoneAppliedDateTime)\n : timezoneAppliedDateTime(inputDateTime);\n};\n\nexport { dayjs };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/utils/dayjs/timezonePlugin.ts","../src/utils/dayjs/index.ts"],"sourcesContent":["import type { Dayjs, PluginFunc } from \"dayjs\";\n\ntype TypeToPos = Record<string, number>;\n\nconst typeToPos: TypeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n};\n\nconst dateTimeFormatDefaults: Intl.DateTimeFormatOptions = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n};\n\nconst dtfCache = new Map<string, Intl.DateTimeFormat>();\nconst getDateTimeFormat = (\n timezone: string,\n options: { timeZoneName?: \"short\" | \"long\" } = {}\n): Intl.DateTimeFormat => {\n const timeZoneName = options.timeZoneName || \"short\";\n const key = `${timezone}|${timeZoneName}`;\n let dtf = dtfCache.get(key);\n if (!dtf) {\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n hour12: false,\n timeZone: timezone,\n timeZoneName,\n });\n dtfCache.set(key, dtf);\n }\n\n return dtf;\n};\n\nconst localeStringifierCache = new Map<string, Intl.DateTimeFormat>();\nconst getLocaleStringifier = (timezone: string): Intl.DateTimeFormat => {\n let localeStringifier = localeStringifierCache.get(timezone);\n if (!localeStringifier) {\n localeStringifier = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n timeZone: timezone,\n });\n localeStringifierCache.set(timezone, localeStringifier);\n }\n\n return localeStringifier;\n};\n\ninterface DayjsInternal extends Dayjs {\n $ms: number;\n $x: { $timezone?: string };\n $set(unit: string, value: number): DayjsInternal;\n tz(timezone: string, keepLocalTime?: boolean): DayjsInternal;\n offsetName(type?: \"short\" | \"long\"): string | undefined;\n startOf(units: string, startOf?: boolean): DayjsInternal;\n}\n\ntype DayjsFactory = {\n (input?: string | number | Date | Dayjs, format?: string): DayjsInternal;\n utc(input?: string | number | Date, format?: string): DayjsInternal;\n tz: {\n (\n input: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ): DayjsInternal;\n guess: () => string;\n setDefault: (timezone?: string) => void;\n };\n};\n\ntype DayjsClass = {\n prototype: DayjsInternal;\n};\n\nconst timezonePlugin: PluginFunc = (_o, c, d) => {\n let defaultTimezone: string | undefined;\n\n const dayjsFactory = d as unknown as DayjsFactory;\n const dayjsClass = c as unknown as DayjsClass;\n\n const makeFormatParts = (\n timestamp: number,\n timezone: string,\n options: { timeZoneName?: \"short\" | \"long\" } = {}\n ): Intl.DateTimeFormatPart[] => {\n const date = new Date(timestamp);\n const dtf = getDateTimeFormat(timezone, options);\n\n return dtf.formatToParts(date);\n };\n\n const tzOffset = (timestamp: number, timezone: string): number => {\n const formatResult = makeFormatParts(timestamp, timezone);\n const filled: number[] = [];\n for (let i = 0; i < formatResult.length; i += 1) {\n const { type, value } = formatResult[i];\n const pos = typeToPos[type];\n\n if (pos >= 0) {\n filled[pos] = parseInt(value, 10);\n }\n }\n const hour = filled[3];\n const fixedHour = hour === 24 ? 0 : hour;\n const utcString = `${filled[0]}-${filled[1]}-${filled[2]} ${fixedHour}:${filled[4]}:${filled[5]}:000`;\n const utcTs = dayjsFactory.utc(utcString).valueOf();\n let asTS = Number(timestamp);\n const over = asTS % 1000;\n asTS -= over;\n\n return (utcTs - asTS) / (60 * 1000);\n };\n\n const fixOffset = (\n localTS: number,\n o0: number,\n tz: string\n ): [number, number] => {\n let utcGuess = localTS - o0 * 60 * 1000;\n const o2 = tzOffset(utcGuess, tz);\n if (o0 === o2) {\n return [utcGuess, o0];\n }\n utcGuess -= (o2 - o0) * 60 * 1000;\n const o3 = tzOffset(utcGuess, tz);\n if (o2 === o3) {\n return [utcGuess, o2];\n }\n\n return [localTS - Math.min(o2, o3) * 60 * 1000, Math.max(o2, o3)];\n };\n\n const proto = dayjsClass.prototype;\n\n proto.tz = function (\n timezone: string = defaultTimezone!,\n keepLocalTime?: boolean\n ) {\n const oldOffset = this.utcOffset();\n const date = this.toDate();\n const target = getLocaleStringifier(timezone).format(date);\n const diff = Math.round(\n (date.getTime() - new Date(target).getTime()) / 1000 / 60\n );\n let ins = dayjsFactory(target)\n .$set(\"millisecond\", this.$ms)\n .utcOffset(\n -Math.round(date.getTimezoneOffset() / 15) * 15 - diff,\n true\n ) as DayjsInternal;\n if (keepLocalTime) {\n const newOffset = ins.utcOffset();\n ins = ins.add(oldOffset - newOffset, \"minute\") as DayjsInternal;\n }\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n proto.offsetName = function (type?: \"short\" | \"long\") {\n const zone = this.$x.$timezone || dayjsFactory.tz.guess();\n const result = makeFormatParts(this.valueOf(), zone, {\n timeZoneName: type,\n }).find(\n (m: Intl.DateTimeFormatPart) => m.type.toLowerCase() === \"timezonename\"\n );\n\n return result && result.value;\n };\n\n const oldStartOf = proto.startOf;\n proto.startOf = function (units: string, startOf?: boolean) {\n if (!this.$x || !this.$x.$timezone) {\n return oldStartOf.call(this, units, startOf);\n }\n\n const withoutTz = dayjsFactory(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));\n const startOfWithoutTz = oldStartOf.call(withoutTz, units, startOf);\n\n return (startOfWithoutTz as DayjsInternal).tz(this.$x.$timezone, true);\n };\n\n const tzFunction = function (\n input: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ) {\n const parseFormat = arg2 && arg1;\n const timezone = arg2 || arg1 || defaultTimezone;\n const previousOffset = tzOffset(Number(dayjsFactory()), timezone!);\n if (typeof input !== \"string\") {\n return dayjsFactory(input as string | number | Date).tz(timezone!);\n }\n const localTs = dayjsFactory.utc(input, parseFormat).valueOf();\n const [targetTs, targetOffset] = fixOffset(\n localTs,\n previousOffset,\n timezone!\n );\n const ins = dayjsFactory(targetTs).utcOffset(targetOffset) as DayjsInternal;\n ins.$x.$timezone = timezone;\n\n return ins;\n } as DayjsFactory[\"tz\"];\n\n tzFunction.guess = function () {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n };\n\n tzFunction.setDefault = function (timezone?: string) {\n defaultTimezone = timezone;\n };\n\n dayjsFactory.tz = tzFunction;\n};\n\nexport default timezonePlugin;\n","import pureDayjs from \"dayjs\";\nimport type { Dayjs } from \"dayjs\";\nimport localeData from \"dayjs/plugin/localeData\";\nimport utc from \"dayjs/plugin/utc\";\nimport weekday from \"dayjs/plugin/weekday\";\nimport weekOfYear from \"dayjs/plugin/weekOfYear\";\n\nimport timezonePlugin from \"./timezonePlugin\";\n\npureDayjs.extend(weekOfYear);\npureDayjs.extend(weekday);\npureDayjs.extend(localeData);\npureDayjs.extend(utc);\npureDayjs.extend(timezonePlugin);\n\ninterface DayjsInternal extends Dayjs {\n $x: { $timezone?: string };\n}\n\ninterface DayjsWithTz {\n (\n ...args: [string | number | Date | Dayjs | null | undefined, string?]\n ): Dayjs;\n utc(input?: string | number | Date, format?: string): Dayjs;\n tz: {\n (\n input?: string | number | Date | Dayjs,\n arg1?: string,\n arg2?: string\n ): DayjsInternal;\n guess: () => string;\n setDefault: (timezone?: string) => void;\n };\n}\n\nclass LRUCache<K, V> {\n private limit: number;\n private cache: Map<K, V>;\n\n constructor(limit: number) {\n this.limit = limit;\n this.cache = new Map();\n }\n\n get(key: K): V | undefined {\n const value = this.cache.get(key);\n this.cache.delete(key);\n if (value !== undefined) {\n this.cache.set(key, value);\n }\n\n return value;\n }\n\n set(key: K, value: V): void {\n if (this.cache.size >= this.limit) {\n const oldestKey = this.cache.keys().next().value;\n if (oldestKey !== undefined) {\n this.cache.delete(oldestKey);\n }\n }\n this.cache.set(key, value);\n }\n\n has(key: K): boolean {\n return this.cache.has(key);\n }\n}\n\nconst hasTimezone = (dateString: string): boolean => {\n const timezoneRegex = /Z|[+-]\\d{2}:\\d{2}$|[+-]\\d{4}$|GMT([+-]\\d{4})?$/;\n\n return timezoneRegex.test(dateString);\n};\n\nconst cache = new LRUCache<string, Dayjs>(1000);\nconst pureDayjsWithTz = pureDayjs as unknown as DayjsWithTz;\n\nconst dayjs = (\n ...args: [string | number | Date | Dayjs | null | undefined, string?]\n): Dayjs => {\n const cacheKey = JSON.stringify(args);\n\n if (cache.has(cacheKey) && args[0] !== undefined) return cache.get(cacheKey)!;\n\n const userTimezone = pureDayjsWithTz.tz()?.$x?.$timezone;\n const browserTimezone = pureDayjsWithTz.tz.guess();\n const timezone = userTimezone || browserTimezone;\n\n if (userTimezone === browserTimezone || userTimezone === undefined) {\n const result = pureDayjsWithTz(...args);\n\n if (args[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n const mutableArgs: [\n string | number | Date | Dayjs | null | undefined,\n string?,\n ] = [...args];\n\n if (\n mutableArgs.length > 0 &&\n (typeof mutableArgs[0] === \"string\" || mutableArgs[0] === null)\n ) {\n const pureDayjsArgs: [\n string | number | Date | Dayjs | null | undefined,\n string?,\n ] = [mutableArgs[0], mutableArgs[1]];\n\n if (typeof mutableArgs[0] === \"string\" && hasTimezone(mutableArgs[0])) {\n mutableArgs[0] = pureDayjsWithTz(...pureDayjsArgs);\n } else {\n mutableArgs[0] = pureDayjsWithTz(...pureDayjsArgs).format(\n \"YYYY-MM-DD HH:mm:ss\"\n );\n mutableArgs[1] = \"YYYY-MM-DD HH:mm:ss\";\n }\n }\n\n if (mutableArgs[0]?.toString() === \"Invalid Date\") {\n const result = pureDayjsWithTz(...mutableArgs);\n\n if (mutableArgs[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n const result =\n mutableArgs.length === 2\n ? pureDayjsWithTz.tz(\n mutableArgs[0] as string | number | Date | Dayjs,\n mutableArgs[1],\n timezone\n )\n : pureDayjsWithTz.tz(\n mutableArgs[0] as string | number | Date | Dayjs,\n timezone\n );\n\n if (mutableArgs[0] !== undefined) cache.set(cacheKey, result as Dayjs);\n\n return result as Dayjs;\n};\n\nObject.assign(dayjs, { ...pureDayjs });\n\nexport const getTimezoneAppliedDateTime = (\n inputDateTime: Dayjs | Dayjs[] | null\n): Dayjs | (Dayjs | null)[] | null => {\n const timezoneAppliedDateTime = (date: Dayjs | null): Dayjs | null =>\n date && typeof date.format === \"function\"\n ? dayjs(date.format(\"YYYY-MM-DD HH:mm:ss\"))\n : null;\n\n return Array.isArray(inputDateTime)\n ? inputDateTime.map(timezoneAppliedDateTime)\n : timezoneAppliedDateTime(inputDateTime);\n};\n\nexport { dayjs };\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-atoms",
3
- "version": "1.0.28",
3
+ "version": "1.0.30",
4
4
  "author": "BigBinary",
5
5
  "license": "MIT",
6
6
  "engines": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"Button-Q7MPG6ph.js","sources":["../src/components/Button/constants.ts","../src/components/Button/Button.tsx"],"sourcesContent":["type ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\nexport const ICON_ONLY_SIZE_MAP: Partial<Record<ButtonSize, ButtonSize>> = {\n xs: \"icon-xs\",\n sm: \"icon-sm\",\n default: \"icon\",\n lg: \"icon-lg\",\n};\n\nexport const SPINNER_SIZE_MAP: Record<ButtonSize, string> = {\n xs: \"size-3\",\n sm: \"size-3.5\",\n default: \"size-3.5\",\n lg: \"size-4\",\n icon: \"size-3.5\",\n \"icon-xs\": \"size-3\",\n \"icon-sm\": \"size-3.5\",\n \"icon-lg\": \"size-4\",\n};\n\n// Map NeetoUI tooltip `position` values to Radix side values\nexport const TOOLTIP_SIDE_MAP: Record<\n string,\n \"top\" | \"right\" | \"bottom\" | \"left\"\n> = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"left\",\n right: \"right\",\n \"top-start\": \"top\",\n \"top-end\": \"top\",\n \"bottom-start\": \"bottom\",\n \"bottom-end\": \"bottom\",\n \"left-start\": \"left\",\n \"left-end\": \"left\",\n \"right-start\": \"right\",\n \"right-end\": \"right\",\n};\n","import React, { forwardRef, type ReactNode, type MouseEvent } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { renderIcon, type IconProp } from \"src/lib/renderIcon\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { Spinner } from \"src/primitives/Spinner\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\n\nimport {\n ICON_ONLY_SIZE_MAP,\n SPINNER_SIZE_MAP,\n TOOLTIP_SIDE_MAP,\n} from \"./constants\";\n\ntype ButtonVariant =\n | \"default\"\n | \"secondary\"\n | \"destructive\"\n | \"outline\"\n | \"ghost\"\n | \"link\";\n\ntype ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\ntype IconPosition = \"left\" | \"right\";\n\ntype ButtonType = \"button\" | \"reset\" | \"submit\";\n\ninterface ButtonTooltipProps {\n content?: ReactNode;\n position?: string;\n disabled?: boolean;\n}\n\nexport interface ButtonProps {\n /** Visual variant of the button. */\n variant?: ButtonVariant;\n /** Size of the button. */\n size?: ButtonSize;\n /** Text label rendered inside the button. */\n label?: string;\n /** Icon component, element, or class-name string. */\n icon?: IconProp;\n /** Placement of the icon relative to the label. */\n iconPosition?: IconPosition;\n /** Show a loading spinner and prevent clicks. */\n loading?: boolean;\n /** Disable the button. */\n disabled?: boolean;\n /** Click handler. */\n onClick?: (e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /** Internal route (react-router `Link`). */\n to?: string;\n /** External URL (renders an anchor tag). */\n href?: string;\n /** HTML button type attribute. */\n type?: ButtonType;\n /** Stretch the button to fill its container. */\n fullWidth?: boolean;\n /** Additional CSS class names. */\n className?: string;\n /** Props forwarded to a wrapping Tooltip. */\n tooltipProps?: ButtonTooltipProps | null;\n /** Render as a custom element (polymorphic). */\n asChild?: boolean;\n /** Children rendered inside the button (fallback for `label`). */\n children?: ReactNode;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"default\",\n size = \"default\",\n label,\n icon = null,\n iconPosition = \"right\",\n loading = false,\n disabled = false,\n onClick,\n to,\n href,\n type = \"button\",\n fullWidth = false,\n className,\n tooltipProps = null,\n asChild = false,\n children,\n ...otherProps\n },\n ref\n ) => {\n const isIconSize = size.startsWith(\"icon\");\n const renderLabel = isIconSize ? null : label || children;\n const isIconOnly = !renderLabel && !!icon;\n const resolvedSize = isIconOnly ? (ICON_ONLY_SIZE_MAP[size] ?? size) : size;\n\n // --- Loading / disabled state ---\n const isDisabled = disabled || loading;\n\n // --- Click handler ---\n const handleClick = (\n e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n ) => {\n if (loading || disabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n // --- Icon elements ---\n const iconElement = icon ? renderIcon(icon) : null;\n\n // --- Build the inner content ---\n const buttonContent = (\n <>\n {loading && (\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner\n aria-hidden=\"true\"\n className={SPINNER_SIZE_MAP[resolvedSize]}\n />\n </span>\n )}\n <span\n className={cn(\n \"inline-flex items-center gap-1.5\",\n loading && \"invisible\"\n )}\n >\n {iconPosition === \"left\" && iconElement && (\n <span data-icon=\"inline-start\">{iconElement}</span>\n )}\n {renderLabel && <span>{renderLabel}</span>}\n {iconPosition === \"right\" && iconElement && (\n <span data-icon=\"inline-end\">{iconElement}</span>\n )}\n </span>\n </>\n );\n\n // --- Merged className ---\n const mergedClassName = cn(\n fullWidth && \"w-full\",\n loading && \"relative pointer-events-none\",\n className\n );\n\n // --- Determine render element ---\n let buttonElement: ReactNode;\n\n if (asChild) {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n {children}\n </PrimitiveButton>\n );\n } else if (!disabled && to) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={to}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else if (!disabled && href) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={href}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n type={type}\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n onClick={handleClick}\n {...otherProps}\n >\n {buttonContent}\n </PrimitiveButton>\n );\n }\n\n // --- Tooltip wrapper ---\n if (tooltipProps) {\n const { content, position, disabled: tooltipDisabled } = tooltipProps;\n\n if (tooltipDisabled || !content) {\n return <>{buttonElement}</>;\n }\n\n const side = position ? TOOLTIP_SIDE_MAP[position] : undefined;\n\n // Wrap disabled buttons in a span so tooltip still triggers\n const triggerContent = isDisabled ? (\n <span className=\"inline-flex\">{buttonElement}</span>\n ) : (\n buttonElement\n );\n\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>{triggerContent}</TooltipTrigger>\n <TooltipContent side={side}>{content}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return <>{buttonElement}</>;\n }\n);\n\nButton.displayName = \"Button\";\n\nexport { Button };\n"],"names":["_jsxs","_Fragment","_jsx","PrimitiveButton"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Empty-B2JwFmru.js","sources":["../src/components/Empty/Empty.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport {\n Empty as PrimitiveEmpty,\n EmptyHeader,\n EmptyTitle,\n EmptyDescription,\n EmptyContent,\n EmptyMedia,\n} from \"src/primitives/Empty\";\nimport { Button } from \"src/components/Button\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\nimport { renderIcon, type IconProp } from \"src/lib/renderIcon\";\n\nexport interface EmptyProps extends React.ComponentProps<\"div\"> {\n /** Image URL or JSX for the media area. */\n image?: string | React.ReactNode;\n /** Icon for the media area (rendered inside EmptyMedia with variant=\"icon\"). */\n icon?: IconProp;\n /** Empty state title. */\n title?: string;\n /** Description text or JSX. */\n description?: React.ReactNode;\n /** Additional help text below the description. */\n helpText?: React.ReactNode;\n /** Props forwarded to the primary action Button. */\n primaryButtonProps?: React.ComponentProps<typeof Button>;\n /** Props forwarded to the secondary action Button. */\n secondaryButtonProps?: React.ComponentProps<typeof Button>;\n /** Text displayed between the primary and secondary buttons (e.g., \"or\"). */\n buttonSeparatorText?: string;\n /** Show tooltip on disabled buttons using their label as content. */\n showTooltipWhenButtonDisabled?: boolean;\n /** Additional CSS class names. */\n className?: string;\n}\n\nfunction MaybeTooltipButton({\n buttonProps,\n showTooltipWhenDisabled,\n defaultVariant,\n}: {\n buttonProps: React.ComponentProps<typeof Button>;\n showTooltipWhenDisabled: boolean;\n defaultVariant: \"default\" | \"outline\";\n}) {\n const button = <Button variant={defaultVariant} {...buttonProps} />;\n\n if (showTooltipWhenDisabled && buttonProps.disabled && buttonProps.label) {\n return (\n <TooltipProvider delayDuration={0}>\n <Tooltip>\n <TooltipTrigger asChild>\n <span className=\"inline-flex\">{button}</span>\n </TooltipTrigger>\n <TooltipContent>{buttonProps.label}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return button;\n}\n\nconst Empty = forwardRef<HTMLDivElement, EmptyProps>(\n (\n {\n image,\n icon,\n title,\n description,\n helpText,\n primaryButtonProps,\n secondaryButtonProps,\n buttonSeparatorText,\n showTooltipWhenButtonDisabled = false,\n className,\n ...otherProps\n },\n ref\n ) => {\n const hasMedia = image || icon;\n const hasButtons = primaryButtonProps || secondaryButtonProps;\n\n return (\n <PrimitiveEmpty ref={ref} className={cn(className)} {...otherProps}>\n <EmptyHeader>\n {hasMedia && (\n <>\n {image && (\n <EmptyMedia>\n {typeof image === \"string\" ? (\n <img src={image} alt={title ?? \"\"} />\n ) : (\n image\n )}\n </EmptyMedia>\n )}\n {!image && icon && (\n <EmptyMedia variant=\"icon\">{renderIcon(icon)}</EmptyMedia>\n )}\n </>\n )}\n {title && <EmptyTitle>{title}</EmptyTitle>}\n {description && <EmptyDescription>{description}</EmptyDescription>}\n {helpText && (\n <p className=\"text-sm text-muted-foreground\">{helpText}</p>\n )}\n </EmptyHeader>\n\n {hasButtons && (\n <EmptyContent>\n <div className=\"flex flex-wrap items-center justify-center gap-2\">\n {primaryButtonProps && (\n <MaybeTooltipButton\n buttonProps={primaryButtonProps}\n showTooltipWhenDisabled={showTooltipWhenButtonDisabled}\n defaultVariant=\"default\"\n />\n )}\n {buttonSeparatorText &&\n primaryButtonProps &&\n secondaryButtonProps && (\n <span className=\"text-sm text-muted-foreground\">\n {buttonSeparatorText}\n </span>\n )}\n {secondaryButtonProps && (\n <MaybeTooltipButton\n buttonProps={secondaryButtonProps}\n showTooltipWhenDisabled={showTooltipWhenButtonDisabled}\n defaultVariant=\"outline\"\n />\n )}\n </div>\n </EmptyContent>\n )}\n </PrimitiveEmpty>\n );\n }\n);\n\nEmpty.displayName = \"Empty\";\n\nexport { Empty };\n"],"names":["_jsx","_jsxs","PrimitiveEmpty","_Fragment"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Button-Bt_AElge.js","sources":["../../../src/components/Button/constants.ts","../../../src/components/Button/Button.tsx"],"sourcesContent":["type ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\nexport const ICON_ONLY_SIZE_MAP: Partial<Record<ButtonSize, ButtonSize>> = {\n xs: \"icon-xs\",\n sm: \"icon-sm\",\n default: \"icon\",\n lg: \"icon-lg\",\n};\n\nexport const SPINNER_SIZE_MAP: Record<ButtonSize, string> = {\n xs: \"size-3\",\n sm: \"size-3.5\",\n default: \"size-3.5\",\n lg: \"size-4\",\n icon: \"size-3.5\",\n \"icon-xs\": \"size-3\",\n \"icon-sm\": \"size-3.5\",\n \"icon-lg\": \"size-4\",\n};\n\n// Map NeetoUI tooltip `position` values to Radix side values\nexport const TOOLTIP_SIDE_MAP: Record<\n string,\n \"top\" | \"right\" | \"bottom\" | \"left\"\n> = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"left\",\n right: \"right\",\n \"top-start\": \"top\",\n \"top-end\": \"top\",\n \"bottom-start\": \"bottom\",\n \"bottom-end\": \"bottom\",\n \"left-start\": \"left\",\n \"left-end\": \"left\",\n \"right-start\": \"right\",\n \"right-end\": \"right\",\n};\n","import React, { forwardRef, type ReactNode, type MouseEvent } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { renderIcon, type IconProp } from \"src/lib/renderIcon\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { Spinner } from \"src/primitives/Spinner\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\n\nimport {\n ICON_ONLY_SIZE_MAP,\n SPINNER_SIZE_MAP,\n TOOLTIP_SIDE_MAP,\n} from \"./constants\";\n\ntype ButtonVariant =\n | \"default\"\n | \"secondary\"\n | \"destructive\"\n | \"outline\"\n | \"ghost\"\n | \"link\";\n\ntype ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\ntype IconPosition = \"left\" | \"right\";\n\ntype ButtonType = \"button\" | \"reset\" | \"submit\";\n\ninterface ButtonTooltipProps {\n content?: ReactNode;\n position?: string;\n disabled?: boolean;\n}\n\nexport interface ButtonProps {\n /** Visual variant of the button. */\n variant?: ButtonVariant;\n /** Size of the button. */\n size?: ButtonSize;\n /** Text label rendered inside the button. */\n label?: string;\n /** Icon component, element, or class-name string. */\n icon?: IconProp;\n /** Placement of the icon relative to the label. */\n iconPosition?: IconPosition;\n /** Show a loading spinner and prevent clicks. */\n loading?: boolean;\n /** Disable the button. */\n disabled?: boolean;\n /** Click handler. */\n onClick?: (e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /** Internal route (react-router `Link`). */\n to?: string;\n /** External URL (renders an anchor tag). */\n href?: string;\n /** HTML button type attribute. */\n type?: ButtonType;\n /** Stretch the button to fill its container. */\n fullWidth?: boolean;\n /** Additional CSS class names. */\n className?: string;\n /** Props forwarded to a wrapping Tooltip. */\n tooltipProps?: ButtonTooltipProps | null;\n /** Render as a custom element (polymorphic). */\n asChild?: boolean;\n /** Children rendered inside the button (fallback for `label`). */\n children?: ReactNode;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"default\",\n size = \"default\",\n label,\n icon = null,\n iconPosition = \"right\",\n loading = false,\n disabled = false,\n onClick,\n to,\n href,\n type = \"button\",\n fullWidth = false,\n className,\n tooltipProps = null,\n asChild = false,\n children,\n ...otherProps\n },\n ref\n ) => {\n const isIconSize = size.startsWith(\"icon\");\n const renderLabel = isIconSize ? null : label || children;\n const isIconOnly = !renderLabel && !!icon;\n const resolvedSize = isIconOnly ? (ICON_ONLY_SIZE_MAP[size] ?? size) : size;\n\n // --- Loading / disabled state ---\n const isDisabled = disabled || loading;\n\n // --- Click handler ---\n const handleClick = (\n e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n ) => {\n if (loading || disabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n // --- Icon elements ---\n const iconElement = icon ? renderIcon(icon) : null;\n\n // --- Build the inner content ---\n const buttonContent = (\n <>\n {loading && (\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner\n aria-hidden=\"true\"\n className={SPINNER_SIZE_MAP[resolvedSize]}\n />\n </span>\n )}\n <span\n className={cn(\n \"inline-flex items-center gap-1.5\",\n loading && \"invisible\"\n )}\n >\n {iconPosition === \"left\" && iconElement && (\n <span data-icon=\"inline-start\">{iconElement}</span>\n )}\n {renderLabel && <span>{renderLabel}</span>}\n {iconPosition === \"right\" && iconElement && (\n <span data-icon=\"inline-end\">{iconElement}</span>\n )}\n </span>\n </>\n );\n\n // --- Merged className ---\n const mergedClassName = cn(\n fullWidth && \"w-full\",\n loading && \"relative pointer-events-none\",\n className\n );\n\n // --- Determine render element ---\n let buttonElement: ReactNode;\n\n if (asChild) {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n {children}\n </PrimitiveButton>\n );\n } else if (!disabled && to) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={to}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else if (!disabled && href) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={href}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n type={type}\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n onClick={handleClick}\n {...otherProps}\n >\n {buttonContent}\n </PrimitiveButton>\n );\n }\n\n // --- Tooltip wrapper ---\n if (tooltipProps) {\n const { content, position, disabled: tooltipDisabled } = tooltipProps;\n\n if (tooltipDisabled || !content) {\n return <>{buttonElement}</>;\n }\n\n const side = position ? TOOLTIP_SIDE_MAP[position] : undefined;\n\n // Wrap disabled buttons in a span so tooltip still triggers\n const triggerContent = isDisabled ? (\n <span className=\"inline-flex\">{buttonElement}</span>\n ) : (\n buttonElement\n );\n\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>{triggerContent}</TooltipTrigger>\n <TooltipContent side={side}>{content}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return <>{buttonElement}</>;\n }\n);\n\nButton.displayName = \"Button\";\n\nexport { Button };\n"],"names":["forwardRef","renderIcon","_jsxs","_Fragment","_jsx","Spinner","cn","PrimitiveButton","TooltipProvider","Tooltip","TooltipTrigger","TooltipContent"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Empty-qzle6YvT.js","sources":["../../../src/components/Empty/Empty.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport {\n Empty as PrimitiveEmpty,\n EmptyHeader,\n EmptyTitle,\n EmptyDescription,\n EmptyContent,\n EmptyMedia,\n} from \"src/primitives/Empty\";\nimport { Button } from \"src/components/Button\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\nimport { renderIcon, type IconProp } from \"src/lib/renderIcon\";\n\nexport interface EmptyProps extends React.ComponentProps<\"div\"> {\n /** Image URL or JSX for the media area. */\n image?: string | React.ReactNode;\n /** Icon for the media area (rendered inside EmptyMedia with variant=\"icon\"). */\n icon?: IconProp;\n /** Empty state title. */\n title?: string;\n /** Description text or JSX. */\n description?: React.ReactNode;\n /** Additional help text below the description. */\n helpText?: React.ReactNode;\n /** Props forwarded to the primary action Button. */\n primaryButtonProps?: React.ComponentProps<typeof Button>;\n /** Props forwarded to the secondary action Button. */\n secondaryButtonProps?: React.ComponentProps<typeof Button>;\n /** Text displayed between the primary and secondary buttons (e.g., \"or\"). */\n buttonSeparatorText?: string;\n /** Show tooltip on disabled buttons using their label as content. */\n showTooltipWhenButtonDisabled?: boolean;\n /** Additional CSS class names. */\n className?: string;\n}\n\nfunction MaybeTooltipButton({\n buttonProps,\n showTooltipWhenDisabled,\n defaultVariant,\n}: {\n buttonProps: React.ComponentProps<typeof Button>;\n showTooltipWhenDisabled: boolean;\n defaultVariant: \"default\" | \"outline\";\n}) {\n const button = <Button variant={defaultVariant} {...buttonProps} />;\n\n if (showTooltipWhenDisabled && buttonProps.disabled && buttonProps.label) {\n return (\n <TooltipProvider delayDuration={0}>\n <Tooltip>\n <TooltipTrigger asChild>\n <span className=\"inline-flex\">{button}</span>\n </TooltipTrigger>\n <TooltipContent>{buttonProps.label}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return button;\n}\n\nconst Empty = forwardRef<HTMLDivElement, EmptyProps>(\n (\n {\n image,\n icon,\n title,\n description,\n helpText,\n primaryButtonProps,\n secondaryButtonProps,\n buttonSeparatorText,\n showTooltipWhenButtonDisabled = false,\n className,\n ...otherProps\n },\n ref\n ) => {\n const hasMedia = image || icon;\n const hasButtons = primaryButtonProps || secondaryButtonProps;\n\n return (\n <PrimitiveEmpty ref={ref} className={cn(className)} {...otherProps}>\n <EmptyHeader>\n {hasMedia && (\n <>\n {image && (\n <EmptyMedia>\n {typeof image === \"string\" ? (\n <img src={image} alt={title ?? \"\"} />\n ) : (\n image\n )}\n </EmptyMedia>\n )}\n {!image && icon && (\n <EmptyMedia variant=\"icon\">{renderIcon(icon)}</EmptyMedia>\n )}\n </>\n )}\n {title && <EmptyTitle>{title}</EmptyTitle>}\n {description && <EmptyDescription>{description}</EmptyDescription>}\n {helpText && (\n <p className=\"text-sm text-muted-foreground\">{helpText}</p>\n )}\n </EmptyHeader>\n\n {hasButtons && (\n <EmptyContent>\n <div className=\"flex flex-wrap items-center justify-center gap-2\">\n {primaryButtonProps && (\n <MaybeTooltipButton\n buttonProps={primaryButtonProps}\n showTooltipWhenDisabled={showTooltipWhenButtonDisabled}\n defaultVariant=\"default\"\n />\n )}\n {buttonSeparatorText &&\n primaryButtonProps &&\n secondaryButtonProps && (\n <span className=\"text-sm text-muted-foreground\">\n {buttonSeparatorText}\n </span>\n )}\n {secondaryButtonProps && (\n <MaybeTooltipButton\n buttonProps={secondaryButtonProps}\n showTooltipWhenDisabled={showTooltipWhenButtonDisabled}\n defaultVariant=\"outline\"\n />\n )}\n </div>\n </EmptyContent>\n )}\n </PrimitiveEmpty>\n );\n }\n);\n\nEmpty.displayName = \"Empty\";\n\nexport { Empty };\n"],"names":["_jsx","Button","TooltipProvider","_jsxs","Tooltip","TooltipTrigger","TooltipContent","forwardRef","PrimitiveEmpty","cn","EmptyHeader","_Fragment","EmptyMedia","renderIcon","EmptyTitle","EmptyDescription","EmptyContent"],"mappings":"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"}