@raystack/apsara 0.48.1 → 0.48.2

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 (61) hide show
  1. package/dist/components/avatar/avatar.cjs +2 -3
  2. package/dist/components/avatar/avatar.cjs.map +1 -1
  3. package/dist/components/avatar/avatar.d.ts.map +1 -1
  4. package/dist/components/avatar/avatar.js +3 -4
  5. package/dist/components/avatar/avatar.js.map +1 -1
  6. package/dist/components/calendar/calendar.cjs +12 -13
  7. package/dist/components/calendar/calendar.cjs.map +1 -1
  8. package/dist/components/calendar/calendar.d.ts.map +1 -1
  9. package/dist/components/calendar/calendar.js +13 -14
  10. package/dist/components/calendar/calendar.js.map +1 -1
  11. package/dist/components/checkbox/checkbox.cjs +1 -2
  12. package/dist/components/checkbox/checkbox.cjs.map +1 -1
  13. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  14. package/dist/components/checkbox/checkbox.js +2 -3
  15. package/dist/components/checkbox/checkbox.js.map +1 -1
  16. package/dist/components/data-table/components/content.cjs +8 -8
  17. package/dist/components/data-table/components/content.cjs.map +1 -1
  18. package/dist/components/data-table/components/content.js +3 -3
  19. package/dist/components/data-table/components/content.js.map +1 -1
  20. package/dist/components/data-table/components/toolbar.cjs +2 -2
  21. package/dist/components/data-table/components/toolbar.cjs.map +1 -1
  22. package/dist/components/data-table/components/toolbar.d.ts.map +1 -1
  23. package/dist/components/data-table/components/toolbar.js +2 -2
  24. package/dist/components/data-table/components/toolbar.js.map +1 -1
  25. package/dist/components/dialog/dialog.cjs +7 -8
  26. package/dist/components/dialog/dialog.cjs.map +1 -1
  27. package/dist/components/dialog/dialog.d.ts.map +1 -1
  28. package/dist/components/dialog/dialog.js +8 -9
  29. package/dist/components/dialog/dialog.js.map +1 -1
  30. package/dist/components/empty-state/empty-state.cjs +5 -5
  31. package/dist/components/empty-state/empty-state.cjs.map +1 -1
  32. package/dist/components/empty-state/empty-state.d.ts +3 -3
  33. package/dist/components/empty-state/empty-state.d.ts.map +1 -1
  34. package/dist/components/empty-state/empty-state.js +5 -5
  35. package/dist/components/empty-state/empty-state.js.map +1 -1
  36. package/dist/components/filter-chip/filter-chip.cjs +2 -2
  37. package/dist/components/filter-chip/filter-chip.js +2 -2
  38. package/dist/components/input-field/input-field.cjs +12 -13
  39. package/dist/components/input-field/input-field.cjs.map +1 -1
  40. package/dist/components/input-field/input-field.d.ts +4 -4
  41. package/dist/components/input-field/input-field.d.ts.map +1 -1
  42. package/dist/components/input-field/input-field.js +13 -14
  43. package/dist/components/input-field/input-field.js.map +1 -1
  44. package/dist/components/sidebar/sidebar.cjs +2 -3
  45. package/dist/components/sidebar/sidebar.cjs.map +1 -1
  46. package/dist/components/sidebar/sidebar.d.ts.map +1 -1
  47. package/dist/components/sidebar/sidebar.js +3 -4
  48. package/dist/components/sidebar/sidebar.js.map +1 -1
  49. package/dist/components/skeleton/skeleton.cjs +3 -3
  50. package/dist/components/skeleton/skeleton.cjs.map +1 -1
  51. package/dist/components/skeleton/skeleton.d.ts.map +1 -1
  52. package/dist/components/skeleton/skeleton.js +3 -3
  53. package/dist/components/skeleton/skeleton.js.map +1 -1
  54. package/dist/components/text-area/text-area.cjs +4 -5
  55. package/dist/components/text-area/text-area.cjs.map +1 -1
  56. package/dist/components/text-area/text-area.d.ts +2 -2
  57. package/dist/components/text-area/text-area.d.ts.map +1 -1
  58. package/dist/components/text-area/text-area.js +4 -5
  59. package/dist/components/text-area/text-area.js.map +1 -1
  60. package/dist/style.css +1 -1
  61. package/package.json +1 -2
@@ -1 +1 @@
1
- {"version":3,"file":"empty-state.js","sources":["../../../components/empty-state/empty-state.tsx"],"sourcesContent":["import clsx from \"clsx\";\n\nimport { Flex } from \"../flex\";\nimport { Text } from \"../text\";\nimport styles from \"./empty-state.module.css\";\n\ntype classNameKeys =\n | \"container\"\n | \"iconContainer\"\n | \"icon\"\n | \"heading\"\n | \"subHeading\";\n\ninterface EmptyStateProps {\n icon: React.ReactNode;\n heading?: React.ReactNode;\n subHeading?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n classNames?: Partial<Record<classNameKeys, string>>;\n variant?: \"empty1\" | \"empty2\";\n}\n\nexport const EmptyState = ({\n icon,\n heading,\n subHeading,\n primaryAction,\n secondaryAction,\n classNames,\n variant = \"empty1\",\n}: EmptyStateProps) => {\n if (variant === \"empty2\") {\n return (\n <Flex\n align=\"center\"\n justify=\"center\"\n className={styles.emptyStatePage}\n >\n <Flex\n direction=\"column\"\n align=\"start\"\n gap=\"medium\"\n className={clsx(styles.emptyStateContent, classNames?.container)}\n >\n <div className={clsx(styles.iconContainer, classNames?.iconContainer)}>\n <div className={clsx(styles.icon, styles.iconLarge, classNames?.icon)}>{icon}</div>\n </div>\n \n {heading && (\n <Text\n size={5}\n weight={500}\n className={clsx(styles.headerText, classNames?.heading)}\n >\n {heading}\n </Text>\n )}\n\n {subHeading && (\n <Text\n size={4}\n weight={400}\n className={clsx(styles.subHeaderText, classNames?.subHeading)}\n >\n {subHeading}\n </Text>\n )}\n\n <Flex gap=\"medium\">\n {primaryAction}\n {secondaryAction}\n </Flex>\n </Flex>\n </Flex>\n );\n }\n\n\n\n return (\n <Flex\n direction=\"column\"\n align=\"center\"\n gap=\"medium\"\n className={clsx(styles.emptyState, classNames?.container)}\n >\n <div className={clsx(styles.iconContainer, classNames?.iconContainer)}>\n <div className={clsx(styles.icon, classNames?.icon)}>{icon}</div>\n </div>\n\n <Flex direction=\"column\" gap=\"small\" align=\"center\">\n {heading && (\n <Text\n size={5}\n weight={500}\n className={clsx(styles.headerText, classNames?.heading)}\n >\n {heading}\n </Text>\n )}\n\n {subHeading && (\n <Text\n size={4}\n weight={400}\n className={clsx(styles.subHeaderText, classNames?.subHeading)}\n >\n {subHeading}\n </Text>\n )}\n </Flex>\n\n {primaryAction}\n\n {secondaryAction}\n </Flex>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;MAuBa,UAAU,GAAG,CAAC,EACzB,IAAI,EACJ,OAAO,EACP,UAAU,EACV,aAAa,EACb,eAAe,EACf,UAAU,EACV,OAAO,GAAG,QAAQ,GACF,KAAI;AACpB,IAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;AACxB,QAAA,QACEA,qBAAC,CAAA,IAAI,EACH,EAAA,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,QAAQ,EAChB,SAAS,EAAE,MAAM,CAAC,cAAc,EAAA,QAAA,EAEhCC,sBAAC,CAAA,IAAI,IACH,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,OAAO,EACb,GAAG,EAAC,QAAQ,EACZ,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,aAEhED,qBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,aAAa,CAAC,EAAA,QAAA,EACnEA,+BAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,EAAG,QAAA,EAAA,IAAI,EAAO,CAAA,EAAA,CAC/E,EAEL,OAAO,KACNA,qBAAA,CAAC,IAAI,EACH,EAAA,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAA,QAAA,EAEtD,OAAO,EAAA,CACH,CACR,EAEA,UAAU,KACTA,sBAAC,IAAI,EAAA,EACH,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,EAE5D,QAAA,EAAA,UAAU,GACN,CACR,EAEDC,sBAAC,CAAA,IAAI,IAAC,GAAG,EAAC,QAAQ,EAAA,QAAA,EAAA,CACf,aAAa,EACb,eAAe,IACX,CACF,EAAA,CAAA,EAAA,CACF,EACP;KACH;AAID,IAAA,QACEA,sBAAA,CAAC,IAAI,EAAA,EACH,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,QAAQ,EACd,GAAG,EAAC,QAAQ,EACZ,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAEzD,QAAA,EAAA,CAAAD,qBAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,aAAa,CAAC,EACnE,QAAA,EAAAA,qBAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,EAAA,QAAA,EAAG,IAAI,EAAA,CAAO,GAC7D,EAENC,sBAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAA,QAAA,EAAA,CAChD,OAAO,KACND,qBAAC,CAAA,IAAI,EACH,EAAA,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAEtD,QAAA,EAAA,OAAO,EACH,CAAA,CACR,EAEA,UAAU,KACTA,qBAAA,CAAC,IAAI,EAAA,EACH,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,YAE5D,UAAU,EAAA,CACN,CACR,CAAA,EAAA,CACI,EAEN,aAAa,EAEb,eAAe,CAAA,EAAA,CACX,EACP;AACJ;;;;"}
1
+ {"version":3,"file":"empty-state.js","sources":["../../../components/empty-state/empty-state.tsx"],"sourcesContent":["import { cx } from 'class-variance-authority';\nimport { Flex } from '../flex';\nimport { Text } from '../text';\nimport styles from './empty-state.module.css';\n\ntype classNameKeys =\n | 'container'\n | 'iconContainer'\n | 'icon'\n | 'heading'\n | 'subHeading';\n\ninterface EmptyStateProps {\n icon: React.ReactNode;\n heading?: React.ReactNode;\n subHeading?: React.ReactNode;\n primaryAction?: React.ReactNode;\n secondaryAction?: React.ReactNode;\n classNames?: Partial<Record<classNameKeys, string>>;\n variant?: 'empty1' | 'empty2';\n}\n\nexport const EmptyState = ({\n icon,\n heading,\n subHeading,\n primaryAction,\n secondaryAction,\n classNames,\n variant = 'empty1'\n}: EmptyStateProps) => {\n if (variant === 'empty2') {\n return (\n <Flex align='center' justify='center' className={styles.emptyStatePage}>\n <Flex\n direction='column'\n align='start'\n gap='medium'\n className={cx(styles.emptyStateContent, classNames?.container)}\n >\n <div className={cx(styles.iconContainer, classNames?.iconContainer)}>\n <div\n className={cx(styles.icon, styles.iconLarge, classNames?.icon)}\n >\n {icon}\n </div>\n </div>\n\n {heading && (\n <Text\n size={5}\n weight={500}\n className={cx(styles.headerText, classNames?.heading)}\n >\n {heading}\n </Text>\n )}\n\n {subHeading && (\n <Text\n size={4}\n weight={400}\n className={cx(styles.subHeaderText, classNames?.subHeading)}\n >\n {subHeading}\n </Text>\n )}\n\n <Flex gap='medium'>\n {primaryAction}\n {secondaryAction}\n </Flex>\n </Flex>\n </Flex>\n );\n }\n\n return (\n <Flex\n direction='column'\n align='center'\n gap='medium'\n className={cx(styles.emptyState, classNames?.container)}\n >\n <div className={cx(styles.iconContainer, classNames?.iconContainer)}>\n <div className={cx(styles.icon, classNames?.icon)}>{icon}</div>\n </div>\n\n <Flex direction='column' gap='small' align='center'>\n {heading && (\n <Text\n size={5}\n weight={500}\n className={cx(styles.headerText, classNames?.heading)}\n >\n {heading}\n </Text>\n )}\n\n {subHeading && (\n <Text\n size={4}\n weight={400}\n className={cx(styles.subHeaderText, classNames?.subHeading)}\n >\n {subHeading}\n </Text>\n )}\n </Flex>\n\n {primaryAction}\n\n {secondaryAction}\n </Flex>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;MAsBa,UAAU,GAAG,CAAC,EACzB,IAAI,EACJ,OAAO,EACP,UAAU,EACV,aAAa,EACb,eAAe,EACf,UAAU,EACV,OAAO,GAAG,QAAQ,EACF,KAAI;AACpB,IAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;AACxB,QAAA,QACEA,qBAAC,CAAA,IAAI,EAAC,EAAA,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAE,MAAM,CAAC,cAAc,EAAA,QAAA,EACpEC,sBAAC,CAAA,IAAI,IACH,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,OAAO,EACb,GAAG,EAAC,QAAQ,EACZ,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,aAE9DD,qBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,aAAa,CAAC,EAAA,QAAA,EACjEA,+BACE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,EAE7D,QAAA,EAAA,IAAI,EACD,CAAA,EAAA,CACF,EAEL,OAAO,KACNA,qBAAA,CAAC,IAAI,EACH,EAAA,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAA,QAAA,EAEpD,OAAO,EAAA,CACH,CACR,EAEA,UAAU,KACTA,sBAAC,IAAI,EAAA,EACH,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,EAE1D,QAAA,EAAA,UAAU,GACN,CACR,EAEDC,sBAAC,CAAA,IAAI,IAAC,GAAG,EAAC,QAAQ,EAAA,QAAA,EAAA,CACf,aAAa,EACb,eAAe,IACX,CACF,EAAA,CAAA,EAAA,CACF,EACP;KACH;AAED,IAAA,QACEA,sBAAA,CAAC,IAAI,EAAA,EACH,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,QAAQ,EACd,GAAG,EAAC,QAAQ,EACZ,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAEvD,QAAA,EAAA,CAAAD,qBAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,aAAa,CAAC,EACjE,QAAA,EAAAA,qBAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,EAAA,QAAA,EAAG,IAAI,EAAA,CAAO,GAC3D,EAENC,sBAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAC,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAA,QAAA,EAAA,CAChD,OAAO,KACND,qBAAC,CAAA,IAAI,EACH,EAAA,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAEpD,QAAA,EAAA,OAAO,EACH,CAAA,CACR,EAEA,UAAU,KACTA,qBAAA,CAAC,IAAI,EAAA,EACH,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,YAE1D,UAAU,EAAA,CACN,CACR,CAAA,EAAA,CACI,EAEN,aAAa,EAEb,eAAe,CAAA,EAAA,CACX,EACP;AACJ;;;;"}
@@ -6,10 +6,10 @@ var React = require('react');
6
6
  var box = require('../box/box.cjs');
7
7
  var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
8
8
  var flex = require('../flex/flex.cjs');
9
+ require('../icon-button/icon-button.cjs');
9
10
  var select = require('../select/select.cjs');
10
- require('../tooltip/tooltip.cjs');
11
11
  require('../skeleton/skeleton.cjs');
12
- require('../icon-button/icon-button.cjs');
12
+ require('../tooltip/tooltip.cjs');
13
13
  var datePicker = require('../calendar/date-picker.cjs');
14
14
  require('../../node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/dayjs.min.cjs');
15
15
  require('../popover/popover.cjs');
@@ -4,10 +4,10 @@ import { useState, useEffect } from 'react';
4
4
  import { Box } from '../box/box.js';
5
5
  import { cva, cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
6
6
  import { Flex } from '../flex/flex.js';
7
+ import '../icon-button/icon-button.js';
7
8
  import { Select } from '../select/select.js';
8
- import '../tooltip/tooltip.js';
9
9
  import '../skeleton/skeleton.js';
10
- import '../icon-button/icon-button.js';
10
+ import '../tooltip/tooltip.js';
11
11
  import { DatePicker } from '../calendar/date-picker.js';
12
12
  import '../../node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/dayjs.min.js';
13
13
  import '../popover/popover.js';
@@ -1,10 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
4
+ var reactIcons_esm = require('../../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');
4
5
  var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
5
- var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
6
6
  var React = require('react');
7
- var reactIcons_esm = require('../../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');
8
7
  var tooltip = require('../tooltip/tooltip.cjs');
9
8
  var chip = require('../chip/chip.cjs');
10
9
  var inputField_module = require('./input-field.module.css.cjs');
@@ -13,23 +12,23 @@ var inputField_module = require('./input-field.module.css.cjs');
13
12
  const inputWrapper = index.cva(inputField_module.default.inputWrapper, {
14
13
  variants: {
15
14
  size: {
16
- small: inputField_module.default["size-small"],
17
- large: inputField_module.default["size-large"],
15
+ small: inputField_module.default['size-small'],
16
+ large: inputField_module.default['size-large']
18
17
  },
19
18
  variant: {
20
- default: inputField_module.default["variant-default"],
21
- borderless: inputField_module.default["variant-borderless"],
22
- },
19
+ default: inputField_module.default['variant-default'],
20
+ borderless: inputField_module.default['variant-borderless']
21
+ }
23
22
  },
24
23
  defaultVariants: {
25
- size: "large",
26
- variant: "default",
27
- },
24
+ size: 'large',
25
+ variant: 'default'
26
+ }
28
27
  });
29
- const InputField = React.forwardRef(({ className, disabled, label, helperText, placeholder, error, leadingIcon, trailingIcon, optional, prefix, suffix, width, chips, maxChipsVisible = 2, size, infoTooltip, variant = "default", ...props }, ref) => {
30
- return (jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default.container, style: { width: width || "100%" }, children: [label && (jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default.labelContainer, children: [jsxRuntime.jsxRuntimeExports.jsxs("label", { className: clsx.clsx(inputField_module.default.label, disabled && inputField_module.default["label-disabled"]), children: [label, optional && jsxRuntime.jsxRuntimeExports.jsx("span", { className: inputField_module.default.optional, children: "(optional)" })] }), infoTooltip && (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: infoTooltip, side: "right", children: jsxRuntime.jsxRuntimeExports.jsx("span", { className: inputField_module.default.helpIcon, children: jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.InfoCircledIcon, {}) }) }))] })), jsxRuntime.jsxRuntimeExports.jsxs("div", { className: clsx.clsx(inputWrapper({ size, variant, className }), error && inputField_module.default["input-error-wrapper"], disabled && inputField_module.default["input-disabled-wrapper"], chips?.length && inputField_module.default["has-chips"]), children: [leadingIcon && (jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default["leading-icon"], children: leadingIcon })), prefix && jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default.prefix, children: prefix }), jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default["chip-input-container"], children: [chips?.slice(0, maxChipsVisible).map((chip$1, index) => (jsxRuntime.jsxRuntimeExports.jsx(chip.Chip, { variant: "outline", isDismissible: !!chip$1.onRemove, onDismiss: chip$1.onRemove, className: inputField_module.default.chip, children: chip$1.label }, index))), chips && chips.length > maxChipsVisible && (jsxRuntime.jsxRuntimeExports.jsxs("span", { className: inputField_module.default["chip-overflow"], children: ["+", chips.length - maxChipsVisible] })), jsxRuntime.jsxRuntimeExports.jsx("input", { ref: ref, className: clsx.clsx(inputField_module.default["input-field"], leadingIcon && inputField_module.default["has-leading-icon"], trailingIcon && inputField_module.default["has-trailing-icon"], prefix && inputField_module.default["has-prefix"], suffix && inputField_module.default["has-suffix"], error && inputField_module.default["input-error"], disabled && inputField_module.default["input-disabled"], className), "aria-invalid": !!error, placeholder: placeholder, disabled: disabled, ...props })] }), suffix && jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default.suffix, children: suffix }), trailingIcon && (jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default["trailing-icon"], children: trailingIcon }))] }), (error || helperText) && (jsxRuntime.jsxRuntimeExports.jsx("span", { className: clsx.clsx(inputField_module.default["helper-text"], error && inputField_module.default["helper-text-error"], disabled && inputField_module.default["helper-text-disabled"]), children: error || helperText }))] }));
28
+ const InputField = React.forwardRef(({ className, disabled, label, helperText, placeholder, error, leadingIcon, trailingIcon, optional, prefix, suffix, width, chips, maxChipsVisible = 2, size, infoTooltip, variant = 'default', ...props }, ref) => {
29
+ return (jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default.container, style: { width: width || '100%' }, children: [label && (jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default.labelContainer, children: [jsxRuntime.jsxRuntimeExports.jsxs("label", { className: index.cx(inputField_module.default.label, disabled && inputField_module.default['label-disabled']), children: [label, optional && jsxRuntime.jsxRuntimeExports.jsx("span", { className: inputField_module.default.optional, children: "(optional)" })] }), infoTooltip && (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: infoTooltip, side: 'right', children: jsxRuntime.jsxRuntimeExports.jsx("span", { className: inputField_module.default.helpIcon, children: jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.InfoCircledIcon, {}) }) }))] })), jsxRuntime.jsxRuntimeExports.jsxs("div", { className: index.cx(inputWrapper({ size, variant, className }), error && inputField_module.default['input-error-wrapper'], disabled && inputField_module.default['input-disabled-wrapper'], chips?.length && inputField_module.default['has-chips']), children: [leadingIcon && (jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default['leading-icon'], children: leadingIcon })), prefix && jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default.prefix, children: prefix }), jsxRuntime.jsxRuntimeExports.jsxs("div", { className: inputField_module.default['chip-input-container'], children: [chips?.slice(0, maxChipsVisible).map((chip$1, index) => (jsxRuntime.jsxRuntimeExports.jsx(chip.Chip, { variant: 'outline', isDismissible: !!chip$1.onRemove, onDismiss: chip$1.onRemove, className: inputField_module.default.chip, children: chip$1.label }, index))), chips && chips.length > maxChipsVisible && (jsxRuntime.jsxRuntimeExports.jsxs("span", { className: inputField_module.default['chip-overflow'], children: ["+", chips.length - maxChipsVisible] })), jsxRuntime.jsxRuntimeExports.jsx("input", { ref: ref, className: index.cx(inputField_module.default['input-field'], leadingIcon && inputField_module.default['has-leading-icon'], trailingIcon && inputField_module.default['has-trailing-icon'], prefix && inputField_module.default['has-prefix'], suffix && inputField_module.default['has-suffix'], error && inputField_module.default['input-error'], disabled && inputField_module.default['input-disabled'], className), "aria-invalid": !!error, placeholder: placeholder, disabled: disabled, ...props })] }), suffix && jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default.suffix, children: suffix }), trailingIcon && (jsxRuntime.jsxRuntimeExports.jsx("div", { className: inputField_module.default['trailing-icon'], children: trailingIcon }))] }), (error || helperText) && (jsxRuntime.jsxRuntimeExports.jsx("span", { className: index.cx(inputField_module.default['helper-text'], error && inputField_module.default['helper-text-error'], disabled && inputField_module.default['helper-text-disabled']), children: error || helperText }))] }));
31
30
  });
32
- InputField.displayName = "InputField";
31
+ InputField.displayName = 'InputField';
33
32
 
34
33
  exports.InputField = InputField;
35
34
  //# sourceMappingURL=input-field.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-field.cjs","sources":["../../../components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode, forwardRef } from \"react\";\nimport { InfoCircledIcon } from \"@radix-ui/react-icons\";\nimport { Tooltip } from \"../tooltip\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles[\"size-small\"],\n large: styles[\"size-large\"],\n },\n variant: {\n default: styles[\"variant-default\"],\n borderless: styles[\"variant-borderless\"],\n },\n },\n defaultVariants: {\n size: \"large\",\n variant: \"default\",\n },\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<\"input\">, \"error\" | \"size\">,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n infoTooltip?: string;\n variant?: \"default\" | \"borderless\";\n}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>(\n (\n {\n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n size,\n infoTooltip,\n variant = \"default\",\n ...props\n },\n ref\n ) => {\n return (\n <div className={styles.container} style={{ width: width || \"100%\" }}>\n {label && (\n <div className={styles.labelContainer}>\n <label\n className={clsx(\n styles.label,\n disabled && styles[\"label-disabled\"]\n )}\n >\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n {infoTooltip && (\n <Tooltip message={infoTooltip} side=\"right\">\n <span className={styles.helpIcon}>\n <InfoCircledIcon />\n </span>\n </Tooltip>\n )}\n </div>\n )}\n <div\n className={clsx(\n inputWrapper({ size, variant, className }),\n error && styles[\"input-error-wrapper\"],\n disabled && styles[\"input-disabled-wrapper\"],\n chips?.length && styles[\"has-chips\"]\n )}\n >\n {leadingIcon && (\n <div className={styles[\"leading-icon\"]}>{leadingIcon}</div>\n )}\n {prefix && <div className={styles.prefix}>{prefix}</div>}\n\n <div className={styles[\"chip-input-container\"]}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant=\"outline\"\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles[\"chip-overflow\"]}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={clsx(\n styles[\"input-field\"],\n leadingIcon && styles[\"has-leading-icon\"],\n trailingIcon && styles[\"has-trailing-icon\"],\n prefix && styles[\"has-prefix\"],\n suffix && styles[\"has-suffix\"],\n error && styles[\"input-error\"],\n disabled && styles[\"input-disabled\"],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n\n {suffix && <div className={styles.suffix}>{suffix}</div>}\n {trailingIcon && (\n <div className={styles[\"trailing-icon\"]}>{trailingIcon}</div>\n )}\n </div>\n {(error || helperText) && (\n <span\n className={clsx(\n styles[\"helper-text\"],\n error && styles[\"helper-text-error\"],\n disabled && styles[\"helper-text-disabled\"]\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInputField.displayName = \"InputField\";\n"],"names":["cva","styles","forwardRef","_jsxs","clsx","_jsx","Tooltip","InfoCircledIcon","chip","Chip"],"mappings":"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"}
1
+ {"version":3,"file":"input-field.cjs","sources":["../../../components/input-field/input-field.tsx"],"sourcesContent":["import { InfoCircledIcon } from '@radix-ui/react-icons';\nimport { type VariantProps, cva, cx } from 'class-variance-authority';\nimport { ComponentPropsWithoutRef, ReactNode, forwardRef } from 'react';\nimport { Tooltip } from '../tooltip';\n\nimport { Chip } from '../chip';\nimport styles from './input-field.module.css';\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles['size-small'],\n large: styles['size-large']\n },\n variant: {\n default: styles['variant-default'],\n borderless: styles['variant-borderless']\n }\n },\n defaultVariants: {\n size: 'large',\n variant: 'default'\n }\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<'input'>, 'error' | 'size'>,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n infoTooltip?: string;\n variant?: 'default' | 'borderless';\n}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>(\n (\n {\n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n size,\n infoTooltip,\n variant = 'default',\n ...props\n },\n ref\n ) => {\n return (\n <div className={styles.container} style={{ width: width || '100%' }}>\n {label && (\n <div className={styles.labelContainer}>\n <label\n className={cx(styles.label, disabled && styles['label-disabled'])}\n >\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n {infoTooltip && (\n <Tooltip message={infoTooltip} side='right'>\n <span className={styles.helpIcon}>\n <InfoCircledIcon />\n </span>\n </Tooltip>\n )}\n </div>\n )}\n <div\n className={cx(\n inputWrapper({ size, variant, className }),\n error && styles['input-error-wrapper'],\n disabled && styles['input-disabled-wrapper'],\n chips?.length && styles['has-chips']\n )}\n >\n {leadingIcon && (\n <div className={styles['leading-icon']}>{leadingIcon}</div>\n )}\n {prefix && <div className={styles.prefix}>{prefix}</div>}\n\n <div className={styles['chip-input-container']}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant='outline'\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles['chip-overflow']}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={cx(\n styles['input-field'],\n leadingIcon && styles['has-leading-icon'],\n trailingIcon && styles['has-trailing-icon'],\n prefix && styles['has-prefix'],\n suffix && styles['has-suffix'],\n error && styles['input-error'],\n disabled && styles['input-disabled'],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n\n {suffix && <div className={styles.suffix}>{suffix}</div>}\n {trailingIcon && (\n <div className={styles['trailing-icon']}>{trailingIcon}</div>\n )}\n </div>\n {(error || helperText) && (\n <span\n className={cx(\n styles['helper-text'],\n error && styles['helper-text-error'],\n disabled && styles['helper-text-disabled']\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInputField.displayName = 'InputField';\n"],"names":["cva","styles","forwardRef","_jsxs","cx","_jsx","Tooltip","InfoCircledIcon","chip","Chip"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { type VariantProps } from "class-variance-authority";
2
- import { ComponentPropsWithoutRef, ReactNode } from "react";
1
+ import { type VariantProps } from 'class-variance-authority';
2
+ import { ComponentPropsWithoutRef, ReactNode } from 'react';
3
3
  declare const inputWrapper: (props?: ({
4
4
  size?: "small" | "large" | null | undefined;
5
5
  variant?: "default" | "borderless" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
- export interface InputFieldProps extends Omit<ComponentPropsWithoutRef<"input">, "error" | "size">, VariantProps<typeof inputWrapper> {
7
+ export interface InputFieldProps extends Omit<ComponentPropsWithoutRef<'input'>, 'error' | 'size'>, VariantProps<typeof inputWrapper> {
8
8
  label?: string;
9
9
  helperText?: string;
10
10
  error?: string;
@@ -21,7 +21,7 @@ export interface InputFieldProps extends Omit<ComponentPropsWithoutRef<"input">,
21
21
  }>;
22
22
  maxChipsVisible?: number;
23
23
  infoTooltip?: string;
24
- variant?: "default" | "borderless";
24
+ variant?: 'default' | 'borderless';
25
25
  }
26
26
  export declare const InputField: import("react").ForwardRefExoticComponent<InputFieldProps & import("react").RefAttributes<HTMLInputElement>>;
27
27
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"input-field.d.ts","sourceRoot":"","sources":["../../../components/input-field/input-field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AASxE,QAAA,MAAM,YAAY;;;8EAehB,CAAC;AAEH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,EAC/D,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;CACpC;AAED,eAAO,MAAM,UAAU,8GAkHtB,CAAC"}
1
+ {"version":3,"file":"input-field.d.ts","sourceRoot":"","sources":["../../../components/input-field/input-field.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAAW,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAQxE,QAAA,MAAM,YAAY;;;8EAehB,CAAC;AAEH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,EAC/D,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;CACpC;AAED,eAAO,MAAM,UAAU,8GA+GtB,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
2
- import { cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
3
- import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
4
- import { forwardRef } from 'react';
5
2
  import { InfoCircledIcon } from '../../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';
3
+ import { cx, cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
4
+ import { forwardRef } from 'react';
6
5
  import { Tooltip } from '../tooltip/tooltip.js';
7
6
  import { Chip } from '../chip/chip.js';
8
7
  import styles from './input-field.module.css.js';
@@ -11,23 +10,23 @@ import styles from './input-field.module.css.js';
11
10
  const inputWrapper = cva(styles.inputWrapper, {
12
11
  variants: {
13
12
  size: {
14
- small: styles["size-small"],
15
- large: styles["size-large"],
13
+ small: styles['size-small'],
14
+ large: styles['size-large']
16
15
  },
17
16
  variant: {
18
- default: styles["variant-default"],
19
- borderless: styles["variant-borderless"],
20
- },
17
+ default: styles['variant-default'],
18
+ borderless: styles['variant-borderless']
19
+ }
21
20
  },
22
21
  defaultVariants: {
23
- size: "large",
24
- variant: "default",
25
- },
22
+ size: 'large',
23
+ variant: 'default'
24
+ }
26
25
  });
27
- const InputField = forwardRef(({ className, disabled, label, helperText, placeholder, error, leadingIcon, trailingIcon, optional, prefix, suffix, width, chips, maxChipsVisible = 2, size, infoTooltip, variant = "default", ...props }, ref) => {
28
- return (jsxRuntimeExports.jsxs("div", { className: styles.container, style: { width: width || "100%" }, children: [label && (jsxRuntimeExports.jsxs("div", { className: styles.labelContainer, children: [jsxRuntimeExports.jsxs("label", { className: clsx(styles.label, disabled && styles["label-disabled"]), children: [label, optional && jsxRuntimeExports.jsx("span", { className: styles.optional, children: "(optional)" })] }), infoTooltip && (jsxRuntimeExports.jsx(Tooltip, { message: infoTooltip, side: "right", children: jsxRuntimeExports.jsx("span", { className: styles.helpIcon, children: jsxRuntimeExports.jsx(InfoCircledIcon, {}) }) }))] })), jsxRuntimeExports.jsxs("div", { className: clsx(inputWrapper({ size, variant, className }), error && styles["input-error-wrapper"], disabled && styles["input-disabled-wrapper"], chips?.length && styles["has-chips"]), children: [leadingIcon && (jsxRuntimeExports.jsx("div", { className: styles["leading-icon"], children: leadingIcon })), prefix && jsxRuntimeExports.jsx("div", { className: styles.prefix, children: prefix }), jsxRuntimeExports.jsxs("div", { className: styles["chip-input-container"], children: [chips?.slice(0, maxChipsVisible).map((chip, index) => (jsxRuntimeExports.jsx(Chip, { variant: "outline", isDismissible: !!chip.onRemove, onDismiss: chip.onRemove, className: styles.chip, children: chip.label }, index))), chips && chips.length > maxChipsVisible && (jsxRuntimeExports.jsxs("span", { className: styles["chip-overflow"], children: ["+", chips.length - maxChipsVisible] })), jsxRuntimeExports.jsx("input", { ref: ref, className: clsx(styles["input-field"], leadingIcon && styles["has-leading-icon"], trailingIcon && styles["has-trailing-icon"], prefix && styles["has-prefix"], suffix && styles["has-suffix"], error && styles["input-error"], disabled && styles["input-disabled"], className), "aria-invalid": !!error, placeholder: placeholder, disabled: disabled, ...props })] }), suffix && jsxRuntimeExports.jsx("div", { className: styles.suffix, children: suffix }), trailingIcon && (jsxRuntimeExports.jsx("div", { className: styles["trailing-icon"], children: trailingIcon }))] }), (error || helperText) && (jsxRuntimeExports.jsx("span", { className: clsx(styles["helper-text"], error && styles["helper-text-error"], disabled && styles["helper-text-disabled"]), children: error || helperText }))] }));
26
+ const InputField = forwardRef(({ className, disabled, label, helperText, placeholder, error, leadingIcon, trailingIcon, optional, prefix, suffix, width, chips, maxChipsVisible = 2, size, infoTooltip, variant = 'default', ...props }, ref) => {
27
+ return (jsxRuntimeExports.jsxs("div", { className: styles.container, style: { width: width || '100%' }, children: [label && (jsxRuntimeExports.jsxs("div", { className: styles.labelContainer, children: [jsxRuntimeExports.jsxs("label", { className: cx(styles.label, disabled && styles['label-disabled']), children: [label, optional && jsxRuntimeExports.jsx("span", { className: styles.optional, children: "(optional)" })] }), infoTooltip && (jsxRuntimeExports.jsx(Tooltip, { message: infoTooltip, side: 'right', children: jsxRuntimeExports.jsx("span", { className: styles.helpIcon, children: jsxRuntimeExports.jsx(InfoCircledIcon, {}) }) }))] })), jsxRuntimeExports.jsxs("div", { className: cx(inputWrapper({ size, variant, className }), error && styles['input-error-wrapper'], disabled && styles['input-disabled-wrapper'], chips?.length && styles['has-chips']), children: [leadingIcon && (jsxRuntimeExports.jsx("div", { className: styles['leading-icon'], children: leadingIcon })), prefix && jsxRuntimeExports.jsx("div", { className: styles.prefix, children: prefix }), jsxRuntimeExports.jsxs("div", { className: styles['chip-input-container'], children: [chips?.slice(0, maxChipsVisible).map((chip, index) => (jsxRuntimeExports.jsx(Chip, { variant: 'outline', isDismissible: !!chip.onRemove, onDismiss: chip.onRemove, className: styles.chip, children: chip.label }, index))), chips && chips.length > maxChipsVisible && (jsxRuntimeExports.jsxs("span", { className: styles['chip-overflow'], children: ["+", chips.length - maxChipsVisible] })), jsxRuntimeExports.jsx("input", { ref: ref, className: cx(styles['input-field'], leadingIcon && styles['has-leading-icon'], trailingIcon && styles['has-trailing-icon'], prefix && styles['has-prefix'], suffix && styles['has-suffix'], error && styles['input-error'], disabled && styles['input-disabled'], className), "aria-invalid": !!error, placeholder: placeholder, disabled: disabled, ...props })] }), suffix && jsxRuntimeExports.jsx("div", { className: styles.suffix, children: suffix }), trailingIcon && (jsxRuntimeExports.jsx("div", { className: styles['trailing-icon'], children: trailingIcon }))] }), (error || helperText) && (jsxRuntimeExports.jsx("span", { className: cx(styles['helper-text'], error && styles['helper-text-error'], disabled && styles['helper-text-disabled']), children: error || helperText }))] }));
29
28
  });
30
- InputField.displayName = "InputField";
29
+ InputField.displayName = 'InputField';
31
30
 
32
31
  export { InputField };
33
32
  //# sourceMappingURL=input-field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-field.js","sources":["../../../components/input-field/input-field.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport { ComponentPropsWithoutRef, ReactNode, forwardRef } from \"react\";\nimport { InfoCircledIcon } from \"@radix-ui/react-icons\";\nimport { Tooltip } from \"../tooltip\";\n\nimport { Chip } from \"../chip\";\nimport styles from \"./input-field.module.css\";\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles[\"size-small\"],\n large: styles[\"size-large\"],\n },\n variant: {\n default: styles[\"variant-default\"],\n borderless: styles[\"variant-borderless\"],\n },\n },\n defaultVariants: {\n size: \"large\",\n variant: \"default\",\n },\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<\"input\">, \"error\" | \"size\">,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n infoTooltip?: string;\n variant?: \"default\" | \"borderless\";\n}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>(\n (\n {\n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n size,\n infoTooltip,\n variant = \"default\",\n ...props\n },\n ref\n ) => {\n return (\n <div className={styles.container} style={{ width: width || \"100%\" }}>\n {label && (\n <div className={styles.labelContainer}>\n <label\n className={clsx(\n styles.label,\n disabled && styles[\"label-disabled\"]\n )}\n >\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n {infoTooltip && (\n <Tooltip message={infoTooltip} side=\"right\">\n <span className={styles.helpIcon}>\n <InfoCircledIcon />\n </span>\n </Tooltip>\n )}\n </div>\n )}\n <div\n className={clsx(\n inputWrapper({ size, variant, className }),\n error && styles[\"input-error-wrapper\"],\n disabled && styles[\"input-disabled-wrapper\"],\n chips?.length && styles[\"has-chips\"]\n )}\n >\n {leadingIcon && (\n <div className={styles[\"leading-icon\"]}>{leadingIcon}</div>\n )}\n {prefix && <div className={styles.prefix}>{prefix}</div>}\n\n <div className={styles[\"chip-input-container\"]}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant=\"outline\"\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles[\"chip-overflow\"]}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={clsx(\n styles[\"input-field\"],\n leadingIcon && styles[\"has-leading-icon\"],\n trailingIcon && styles[\"has-trailing-icon\"],\n prefix && styles[\"has-prefix\"],\n suffix && styles[\"has-suffix\"],\n error && styles[\"input-error\"],\n disabled && styles[\"input-disabled\"],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n\n {suffix && <div className={styles.suffix}>{suffix}</div>}\n {trailingIcon && (\n <div className={styles[\"trailing-icon\"]}>{trailingIcon}</div>\n )}\n </div>\n {(error || helperText) && (\n <span\n className={clsx(\n styles[\"helper-text\"],\n error && styles[\"helper-text-error\"],\n disabled && styles[\"helper-text-disabled\"]\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInputField.displayName = \"InputField\";\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"input-field.js","sources":["../../../components/input-field/input-field.tsx"],"sourcesContent":["import { InfoCircledIcon } from '@radix-ui/react-icons';\nimport { type VariantProps, cva, cx } from 'class-variance-authority';\nimport { ComponentPropsWithoutRef, ReactNode, forwardRef } from 'react';\nimport { Tooltip } from '../tooltip';\n\nimport { Chip } from '../chip';\nimport styles from './input-field.module.css';\n\n// Todo: Add a dropdown support\n\nconst inputWrapper = cva(styles.inputWrapper, {\n variants: {\n size: {\n small: styles['size-small'],\n large: styles['size-large']\n },\n variant: {\n default: styles['variant-default'],\n borderless: styles['variant-borderless']\n }\n },\n defaultVariants: {\n size: 'large',\n variant: 'default'\n }\n});\n\nexport interface InputFieldProps\n extends Omit<ComponentPropsWithoutRef<'input'>, 'error' | 'size'>,\n VariantProps<typeof inputWrapper> {\n label?: string;\n helperText?: string;\n error?: string;\n disabled?: boolean;\n leadingIcon?: ReactNode;\n trailingIcon?: ReactNode;\n optional?: boolean;\n prefix?: string;\n suffix?: string;\n width?: string | number;\n chips?: Array<{ label: string; onRemove?: () => void }>;\n maxChipsVisible?: number;\n infoTooltip?: string;\n variant?: 'default' | 'borderless';\n}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>(\n (\n {\n className,\n disabled,\n label,\n helperText,\n placeholder,\n error,\n leadingIcon,\n trailingIcon,\n optional,\n prefix,\n suffix,\n width,\n chips,\n maxChipsVisible = 2,\n size,\n infoTooltip,\n variant = 'default',\n ...props\n },\n ref\n ) => {\n return (\n <div className={styles.container} style={{ width: width || '100%' }}>\n {label && (\n <div className={styles.labelContainer}>\n <label\n className={cx(styles.label, disabled && styles['label-disabled'])}\n >\n {label}\n {optional && <span className={styles.optional}>(optional)</span>}\n </label>\n {infoTooltip && (\n <Tooltip message={infoTooltip} side='right'>\n <span className={styles.helpIcon}>\n <InfoCircledIcon />\n </span>\n </Tooltip>\n )}\n </div>\n )}\n <div\n className={cx(\n inputWrapper({ size, variant, className }),\n error && styles['input-error-wrapper'],\n disabled && styles['input-disabled-wrapper'],\n chips?.length && styles['has-chips']\n )}\n >\n {leadingIcon && (\n <div className={styles['leading-icon']}>{leadingIcon}</div>\n )}\n {prefix && <div className={styles.prefix}>{prefix}</div>}\n\n <div className={styles['chip-input-container']}>\n {chips?.slice(0, maxChipsVisible).map((chip, index) => (\n <Chip\n key={index}\n variant='outline'\n isDismissible={!!chip.onRemove}\n onDismiss={chip.onRemove}\n className={styles.chip}\n >\n {chip.label}\n </Chip>\n ))}\n {chips && chips.length > maxChipsVisible && (\n <span className={styles['chip-overflow']}>\n +{chips.length - maxChipsVisible}\n </span>\n )}\n <input\n ref={ref}\n className={cx(\n styles['input-field'],\n leadingIcon && styles['has-leading-icon'],\n trailingIcon && styles['has-trailing-icon'],\n prefix && styles['has-prefix'],\n suffix && styles['has-suffix'],\n error && styles['input-error'],\n disabled && styles['input-disabled'],\n className\n )}\n aria-invalid={!!error}\n placeholder={placeholder}\n disabled={disabled}\n {...props}\n />\n </div>\n\n {suffix && <div className={styles.suffix}>{suffix}</div>}\n {trailingIcon && (\n <div className={styles['trailing-icon']}>{trailingIcon}</div>\n )}\n </div>\n {(error || helperText) && (\n <span\n className={cx(\n styles['helper-text'],\n error && styles['helper-text-error'],\n disabled && styles['helper-text-disabled']\n )}\n >\n {error || helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInputField.displayName = 'InputField';\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -3,7 +3,6 @@
3
3
  var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
4
4
  var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
5
5
  var React = require('react');
6
- var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
7
6
  var tooltip = require('../tooltip/tooltip.cjs');
8
7
  var sidebar_module = require('./sidebar.module.css.cjs');
9
8
  var index = require('../../node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18_qdnr5tshbuses2czt45n43so7q/node_modules/@radix-ui/react-collapsible/dist/index.cjs');
@@ -30,14 +29,14 @@ const SidebarItem = React.forwardRef(({ classNames, icon, children, active, disa
30
29
  const { isCollapsed, hideCollapsedItemTooltip } = React.useContext(SidebarContext); // To prevent prop drillng
31
30
  const content = React.cloneElement(as, {
32
31
  ref,
33
- className: clsx.clsx(sidebar_module.default['nav-item'], classNames?.root),
32
+ className: index$1.cx(sidebar_module.default['nav-item'], classNames?.root),
34
33
  'data-active': active,
35
34
  'data-disabled': disabled,
36
35
  role: 'menuitem',
37
36
  'aria-current': active ? 'page' : undefined,
38
37
  'aria-disabled': disabled,
39
38
  ...props
40
- }, jsxRuntime.jsxRuntimeExports.jsxs(jsxRuntime.jsxRuntimeExports.Fragment, { children: [jsxRuntime.jsxRuntimeExports.jsx("span", { className: clsx.clsx(sidebar_module.default['nav-icon'], classNames?.icon), "aria-hidden": 'true', children: icon }), !isCollapsed && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: children })] }));
39
+ }, jsxRuntime.jsxRuntimeExports.jsxs(jsxRuntime.jsxRuntimeExports.Fragment, { children: [jsxRuntime.jsxRuntimeExports.jsx("span", { className: index$1.cx(sidebar_module.default['nav-icon'], classNames?.icon), "aria-hidden": 'true', children: icon }), !isCollapsed && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: children })] }));
41
40
  if (isCollapsed && !hideCollapsedItemTooltip) {
42
41
  return (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: children, side: 'right', children: content }));
43
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.cjs","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\n\nimport clsx from 'clsx';\nimport { Tooltip, TooltipProvider } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarHeaderProps extends ComponentPropsWithoutRef<'div'> {\n logo: ReactNode;\n title: string;\n onLogoClick?: () => void;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n icon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n icon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n name: string;\n icon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<HTMLDivElement, SidebarHeaderProps>(\n ({ className, logo, title, onLogoClick, ...props }, ref) => (\n <div ref={ref} className={styles.header} role='banner' {...props}>\n <div\n className={styles.logo}\n onClick={onLogoClick}\n role={onLogoClick ? 'button' : undefined}\n tabIndex={onLogoClick ? 0 : undefined}\n onKeyDown={e => {\n if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n onLogoClick();\n }\n }}\n style={{ cursor: onLogoClick ? 'pointer' : undefined }}\n >\n {logo}\n </div>\n <div className={styles.title} role='heading' aria-level={1}>\n {title}\n </div>\n </div>\n )\n);\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.main}\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.footer}\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n { classNames, icon, children, active, disabled, as = <a />, ...props },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: clsx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <span\n className={clsx(styles['nav-icon'], classNames?.icon)}\n aria-hidden='true'\n >\n {icon}\n </span>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, name, icon, children, ...props }, ref) => (\n <section ref={ref} className={className} aria-label={name} {...props}>\n <div className={styles['nav-group-header']}>\n {icon && <span className={styles['nav-icon']}>{icon}</span>}\n <span className={styles['nav-group-name']}>{name}</span>\n </div>\n <div className={styles['nav-group-items']} role='list'>\n {children}\n </div>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["createContext","cva","styles","forwardRef","_jsx","TooltipProvider","Collapsible.Root","_jsxs","Tooltip","useContext","cloneElement","clsx"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.cjs","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Tooltip, TooltipProvider } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarHeaderProps extends ComponentPropsWithoutRef<'div'> {\n logo: ReactNode;\n title: string;\n onLogoClick?: () => void;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n icon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n icon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n name: string;\n icon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<HTMLDivElement, SidebarHeaderProps>(\n ({ className, logo, title, onLogoClick, ...props }, ref) => (\n <div ref={ref} className={styles.header} role='banner' {...props}>\n <div\n className={styles.logo}\n onClick={onLogoClick}\n role={onLogoClick ? 'button' : undefined}\n tabIndex={onLogoClick ? 0 : undefined}\n onKeyDown={e => {\n if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n onLogoClick();\n }\n }}\n style={{ cursor: onLogoClick ? 'pointer' : undefined }}\n >\n {logo}\n </div>\n <div className={styles.title} role='heading' aria-level={1}>\n {title}\n </div>\n </div>\n )\n);\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.main}\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.footer}\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n { classNames, icon, children, active, disabled, as = <a />, ...props },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <span\n className={cx(styles['nav-icon'], classNames?.icon)}\n aria-hidden='true'\n >\n {icon}\n </span>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, name, icon, children, ...props }, ref) => (\n <section ref={ref} className={className} aria-label={name} {...props}>\n <div className={styles['nav-group-header']}>\n {icon && <span className={styles['nav-icon']}>{icon}</span>}\n <span className={styles['nav-group-name']}>{name}</span>\n </div>\n <div className={styles['nav-group-items']} role='list'>\n {children}\n </div>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["createContext","cva","styles","forwardRef","_jsx","TooltipProvider","Collapsible.Root","_jsxs","Tooltip","useContext","cloneElement","cx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../components/sidebar/sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,wBAAwB,EAExB,YAAY,EACZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAiBf,UAAU,YACR,SAAQ,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAClE,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,UAAU,gBAAiB,SAAQ,wBAAwB,CAAC,GAAG,CAAC;IAC9D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;CAAG;AAEvE,UAAU,2BAA4B,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AA2LD,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../components/sidebar/sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,wBAAwB,EAExB,YAAY,EACZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAef,UAAU,YACR,SAAQ,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAClE,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,UAAU,gBAAiB,SAAQ,wBAAwB,CAAC,GAAG,CAAC;IAC9D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;CAAG;AAEvE,UAAU,2BAA4B,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AA2LD,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
2
- import { cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
2
+ import { cx, cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
3
3
  import { createContext, forwardRef, useContext, cloneElement } from 'react';
4
- import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
5
4
  import { TooltipProvider, Tooltip } from '../tooltip/tooltip.js';
6
5
  import styles from './sidebar.module.css.js';
7
6
  import { Root } from '../../node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18_qdnr5tshbuses2czt45n43so7q/node_modules/@radix-ui/react-collapsible/dist/index.js';
@@ -28,14 +27,14 @@ const SidebarItem = forwardRef(({ classNames, icon, children, active, disabled,
28
27
  const { isCollapsed, hideCollapsedItemTooltip } = useContext(SidebarContext); // To prevent prop drillng
29
28
  const content = cloneElement(as, {
30
29
  ref,
31
- className: clsx(styles['nav-item'], classNames?.root),
30
+ className: cx(styles['nav-item'], classNames?.root),
32
31
  'data-active': active,
33
32
  'data-disabled': disabled,
34
33
  role: 'menuitem',
35
34
  'aria-current': active ? 'page' : undefined,
36
35
  'aria-disabled': disabled,
37
36
  ...props
38
- }, jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("span", { className: clsx(styles['nav-icon'], classNames?.icon), "aria-hidden": 'true', children: icon }), !isCollapsed && jsxRuntimeExports.jsx("span", { className: styles['nav-text'], children: children })] }));
37
+ }, jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("span", { className: cx(styles['nav-icon'], classNames?.icon), "aria-hidden": 'true', children: icon }), !isCollapsed && jsxRuntimeExports.jsx("span", { className: styles['nav-text'], children: children })] }));
39
38
  if (isCollapsed && !hideCollapsedItemTooltip) {
40
39
  return (jsxRuntimeExports.jsx(Tooltip, { message: children, side: 'right', children: content }));
41
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\n\nimport clsx from 'clsx';\nimport { Tooltip, TooltipProvider } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarHeaderProps extends ComponentPropsWithoutRef<'div'> {\n logo: ReactNode;\n title: string;\n onLogoClick?: () => void;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n icon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n icon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n name: string;\n icon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<HTMLDivElement, SidebarHeaderProps>(\n ({ className, logo, title, onLogoClick, ...props }, ref) => (\n <div ref={ref} className={styles.header} role='banner' {...props}>\n <div\n className={styles.logo}\n onClick={onLogoClick}\n role={onLogoClick ? 'button' : undefined}\n tabIndex={onLogoClick ? 0 : undefined}\n onKeyDown={e => {\n if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n onLogoClick();\n }\n }}\n style={{ cursor: onLogoClick ? 'pointer' : undefined }}\n >\n {logo}\n </div>\n <div className={styles.title} role='heading' aria-level={1}>\n {title}\n </div>\n </div>\n )\n);\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.main}\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.footer}\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n { classNames, icon, children, active, disabled, as = <a />, ...props },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: clsx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <span\n className={clsx(styles['nav-icon'], classNames?.icon)}\n aria-hidden='true'\n >\n {icon}\n </span>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, name, icon, children, ...props }, ref) => (\n <section ref={ref} className={className} aria-label={name} {...props}>\n <div className={styles['nav-group-header']}>\n {icon && <span className={styles['nav-icon']}>{icon}</span>}\n <span className={styles['nav-group-name']}>{name}</span>\n </div>\n <div className={styles['nav-group-items']} role='list'>\n {children}\n </div>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["_jsx","Collapsible.Root","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Tooltip, TooltipProvider } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarHeaderProps extends ComponentPropsWithoutRef<'div'> {\n logo: ReactNode;\n title: string;\n onLogoClick?: () => void;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n icon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n icon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n name: string;\n icon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<HTMLDivElement, SidebarHeaderProps>(\n ({ className, logo, title, onLogoClick, ...props }, ref) => (\n <div ref={ref} className={styles.header} role='banner' {...props}>\n <div\n className={styles.logo}\n onClick={onLogoClick}\n role={onLogoClick ? 'button' : undefined}\n tabIndex={onLogoClick ? 0 : undefined}\n onKeyDown={e => {\n if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n onLogoClick();\n }\n }}\n style={{ cursor: onLogoClick ? 'pointer' : undefined }}\n >\n {logo}\n </div>\n <div className={styles.title} role='heading' aria-level={1}>\n {title}\n </div>\n </div>\n )\n);\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.main}\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={styles.footer}\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </div>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n { classNames, icon, children, active, disabled, as = <a />, ...props },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <span\n className={cx(styles['nav-icon'], classNames?.icon)}\n aria-hidden='true'\n >\n {icon}\n </span>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, name, icon, children, ...props }, ref) => (\n <section ref={ref} className={className} aria-label={name} {...props}>\n <div className={styles['nav-group-header']}>\n {icon && <span className={styles['nav-icon']}>{icon}</span>}\n <span className={styles['nav-group-name']}>{name}</span>\n </div>\n <div className={styles['nav-group-items']} role='list'>\n {children}\n </div>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["_jsx","Collapsible.Root","_jsxs"],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
4
+ var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
4
5
  var React = require('react');
5
- var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
6
6
  var skeleton_module = require('./skeleton.module.css.cjs');
7
7
 
8
8
  const SkeletonContext = React.createContext(null);
9
9
  const SkeletonBase = (props) => {
10
10
  const contextProps = React.useContext(SkeletonContext);
11
- const { baseColor, highlightColor, width, height = 'var(--rs-space-4)', borderRadius = 'var(--rs-radius-2)', inline = false, duration = 1.5, count = 1, enableAnimation = true, style, className, containerStyle, containerClassName, } = { ...contextProps, ...props };
12
- const skeletonClassName = clsx.clsx(skeleton_module.default.skeleton, inline && skeleton_module.default.inline, enableAnimation && skeleton_module.default.animate, className);
11
+ const { baseColor, highlightColor, width, height = 'var(--rs-space-4)', borderRadius = 'var(--rs-radius-2)', inline = false, duration = 1.5, count = 1, enableAnimation = true, style, className, containerStyle, containerClassName } = { ...contextProps, ...props };
12
+ const skeletonClassName = index.cx(skeleton_module.default.skeleton, inline && skeleton_module.default.inline, enableAnimation && skeleton_module.default.animate, className);
13
13
  const Container = inline ? 'span' : 'div';
14
14
  const defaultWidth = inline ? '50px' : '100%';
15
15
  return (jsxRuntime.jsxRuntimeExports.jsx(Container, { className: containerClassName, style: {
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.cjs","sources":["../../../components/skeleton/skeleton.tsx"],"sourcesContent":["import { CSSProperties, createContext, useContext } from 'react';\nimport { clsx } from 'clsx';\nimport styles from './skeleton.module.css';\n\nexport interface SkeletonProps {\n baseColor?: string;\n highlightColor?: string;\n width?: string | number;\n height?: string | number;\n borderRadius?: string | number;\n inline?: boolean;\n duration?: number;\n enableAnimation?: boolean;\n count?: number;\n style?: CSSProperties;\n className?: string;\n containerStyle?: CSSProperties;\n containerClassName?: string;\n}\n\nconst SkeletonContext = createContext<SkeletonProps | null>(null);\n\ninterface SkeletonProviderProps extends SkeletonProps {\n children: React.ReactNode;\n}\n\nconst SkeletonBase = (props: SkeletonProps) => {\n const contextProps = useContext(SkeletonContext);\n \n const {\n baseColor,\n highlightColor,\n width,\n height = 'var(--rs-space-4)',\n borderRadius = 'var(--rs-radius-2)',\n inline = false,\n duration = 1.5,\n count = 1,\n enableAnimation = true,\n style,\n className,\n containerStyle,\n containerClassName,\n } = { ...contextProps, ...props };\n\n const skeletonClassName = clsx(\n styles.skeleton,\n inline && styles.inline,\n enableAnimation && styles.animate,\n className\n );\n\n const Container = inline ? 'span' : 'div';\n const defaultWidth = inline ? '50px' : '100%';\n\n return (\n <Container\n className={containerClassName}\n style={{\n display: inline ? 'inline-block' : 'flex',\n flexDirection: !inline ? 'column' : undefined,\n gap: !inline && count > 1 ? 'var(--rs-space-3)' : undefined,\n ...containerStyle\n }}\n >\n {Array.from({ length: count }).map((_, i) => (\n <span\n key={i}\n className={skeletonClassName}\n style={{\n width: width ?? defaultWidth,\n height,\n borderRadius,\n '--skeleton-base-color': baseColor,\n '--skeleton-highlight-color': highlightColor,\n '--skeleton-duration': `${duration}s`,\n ...style\n } as CSSProperties}\n />\n ))}\n </Container>\n );\n};\n\nconst Provider = ({ \n children,\n ...props\n}: SkeletonProviderProps) => {\n return (\n <SkeletonContext.Provider value={props}>\n {children}\n </SkeletonContext.Provider>\n );\n};\n\nexport const Skeleton = Object.assign(SkeletonBase, { Provider }); "],"names":["createContext","useContext","clsx","styles","_jsx"],"mappings":";;;;;;;AAoBA,MAAM,eAAe,GAAGA,mBAAa,CAAuB,IAAI,CAAC,CAAC;AAMlE,MAAM,YAAY,GAAG,CAAC,KAAoB,KAAI;AAC5C,IAAA,MAAM,YAAY,GAAGC,gBAAU,CAAC,eAAe,CAAC,CAAC;IAEjD,MAAM,EACJ,SAAS,EACT,cAAc,EACd,KAAK,EACL,MAAM,GAAG,mBAAmB,EAC5B,YAAY,GAAG,oBAAoB,EACnC,MAAM,GAAG,KAAK,EACd,QAAQ,GAAG,GAAG,EACd,KAAK,GAAG,CAAC,EACT,eAAe,GAAG,IAAI,EACtB,KAAK,EACL,SAAS,EACT,cAAc,EACd,kBAAkB,GACnB,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC;IAElC,MAAM,iBAAiB,GAAGC,SAAI,CAC5BC,uBAAM,CAAC,QAAQ,EACf,MAAM,IAAIA,uBAAM,CAAC,MAAM,EACvB,eAAe,IAAIA,uBAAM,CAAC,OAAO,EACjC,SAAS,CACV,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC1C,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAE9C,QACEC,iCAAC,SAAS,EAAA,EACR,SAAS,EAAE,kBAAkB,EAC7B,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,MAAM;YACzC,aAAa,EAAE,CAAC,MAAM,GAAG,QAAQ,GAAG,SAAS;AAC7C,YAAA,GAAG,EAAE,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,GAAG,mBAAmB,GAAG,SAAS;AAC3D,YAAA,GAAG,cAAc;SAClB,EAEA,QAAA,EAAA,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MACtCA,gCAEE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAC5B,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK,IAAI,YAAY;gBAC5B,MAAM;gBACN,YAAY;AACZ,gBAAA,uBAAuB,EAAE,SAAS;AAClC,gBAAA,4BAA4B,EAAE,cAAc;gBAC5C,qBAAqB,EAAE,CAAG,EAAA,QAAQ,CAAG,CAAA,CAAA;AACrC,gBAAA,GAAG,KAAK;AACQ,aAAA,EAAA,EAVb,CAAC,CAWN,CACH,CAAC,EAAA,CACQ,EACZ;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,EAChB,QAAQ,EACR,GAAG,KAAK,EACc,KAAI;AAC1B,IAAA,QACEA,gCAAA,CAAC,eAAe,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,QAAA,EACnC,QAAQ,EAAA,CACgB,EAC3B;AACJ,CAAC,CAAC;AAEK,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE;;;;"}
1
+ {"version":3,"file":"skeleton.cjs","sources":["../../../components/skeleton/skeleton.tsx"],"sourcesContent":["import { cx } from 'class-variance-authority';\nimport { CSSProperties, createContext, useContext } from 'react';\nimport styles from './skeleton.module.css';\n\nexport interface SkeletonProps {\n baseColor?: string;\n highlightColor?: string;\n width?: string | number;\n height?: string | number;\n borderRadius?: string | number;\n inline?: boolean;\n duration?: number;\n enableAnimation?: boolean;\n count?: number;\n style?: CSSProperties;\n className?: string;\n containerStyle?: CSSProperties;\n containerClassName?: string;\n}\n\nconst SkeletonContext = createContext<SkeletonProps | null>(null);\n\ninterface SkeletonProviderProps extends SkeletonProps {\n children: React.ReactNode;\n}\n\nconst SkeletonBase = (props: SkeletonProps) => {\n const contextProps = useContext(SkeletonContext);\n\n const {\n baseColor,\n highlightColor,\n width,\n height = 'var(--rs-space-4)',\n borderRadius = 'var(--rs-radius-2)',\n inline = false,\n duration = 1.5,\n count = 1,\n enableAnimation = true,\n style,\n className,\n containerStyle,\n containerClassName\n } = { ...contextProps, ...props };\n\n const skeletonClassName = cx(\n styles.skeleton,\n inline && styles.inline,\n enableAnimation && styles.animate,\n className\n );\n\n const Container = inline ? 'span' : 'div';\n const defaultWidth = inline ? '50px' : '100%';\n\n return (\n <Container\n className={containerClassName}\n style={{\n display: inline ? 'inline-block' : 'flex',\n flexDirection: !inline ? 'column' : undefined,\n gap: !inline && count > 1 ? 'var(--rs-space-3)' : undefined,\n ...containerStyle\n }}\n >\n {Array.from({ length: count }).map((_, i) => (\n <span\n key={i}\n className={skeletonClassName}\n style={\n {\n width: width ?? defaultWidth,\n height,\n borderRadius,\n '--skeleton-base-color': baseColor,\n '--skeleton-highlight-color': highlightColor,\n '--skeleton-duration': `${duration}s`,\n ...style\n } as CSSProperties\n }\n />\n ))}\n </Container>\n );\n};\n\nconst Provider = ({ children, ...props }: SkeletonProviderProps) => {\n return (\n <SkeletonContext.Provider value={props}>\n {children}\n </SkeletonContext.Provider>\n );\n};\n\nexport const Skeleton = Object.assign(SkeletonBase, { Provider });\n"],"names":["createContext","useContext","cx","styles","_jsx"],"mappings":";;;;;;;AAoBA,MAAM,eAAe,GAAGA,mBAAa,CAAuB,IAAI,CAAC,CAAC;AAMlE,MAAM,YAAY,GAAG,CAAC,KAAoB,KAAI;AAC5C,IAAA,MAAM,YAAY,GAAGC,gBAAU,CAAC,eAAe,CAAC,CAAC;IAEjD,MAAM,EACJ,SAAS,EACT,cAAc,EACd,KAAK,EACL,MAAM,GAAG,mBAAmB,EAC5B,YAAY,GAAG,oBAAoB,EACnC,MAAM,GAAG,KAAK,EACd,QAAQ,GAAG,GAAG,EACd,KAAK,GAAG,CAAC,EACT,eAAe,GAAG,IAAI,EACtB,KAAK,EACL,SAAS,EACT,cAAc,EACd,kBAAkB,EACnB,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC;IAElC,MAAM,iBAAiB,GAAGC,QAAE,CAC1BC,uBAAM,CAAC,QAAQ,EACf,MAAM,IAAIA,uBAAM,CAAC,MAAM,EACvB,eAAe,IAAIA,uBAAM,CAAC,OAAO,EACjC,SAAS,CACV,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC1C,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAE9C,QACEC,iCAAC,SAAS,EAAA,EACR,SAAS,EAAE,kBAAkB,EAC7B,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,MAAM;YACzC,aAAa,EAAE,CAAC,MAAM,GAAG,QAAQ,GAAG,SAAS;AAC7C,YAAA,GAAG,EAAE,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,GAAG,mBAAmB,GAAG,SAAS;AAC3D,YAAA,GAAG,cAAc;SAClB,EAEA,QAAA,EAAA,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MACtCA,gCAEE,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAC5B,KAAK,EACH;gBACE,KAAK,EAAE,KAAK,IAAI,YAAY;gBAC5B,MAAM;gBACN,YAAY;AACZ,gBAAA,uBAAuB,EAAE,SAAS;AAClC,gBAAA,4BAA4B,EAAE,cAAc;gBAC5C,qBAAqB,EAAE,CAAG,EAAA,QAAQ,CAAG,CAAA,CAAA;AACrC,gBAAA,GAAG,KAAK;AACQ,aAAA,EAAA,EAXf,CAAC,CAaN,CACH,CAAC,EAAA,CACQ,EACZ;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAyB,KAAI;AACjE,IAAA,QACEA,gCAAA,CAAC,eAAe,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,QAAA,EACnC,QAAQ,EAAA,CACgB,EAC3B;AACJ,CAAC,CAAC;AAEK,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../components/skeleton/skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6B,MAAM,OAAO,CAAC;AAIjE,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,UAAU,qBAAsB,SAAQ,aAAa;IACnD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAuED,eAAO,MAAM,QAAQ,WArEQ,aAAa;uCA6DvC,qBAAqB;CAQyC,CAAC"}
1
+ {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../components/skeleton/skeleton.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAA6B,MAAM,OAAO,CAAC;AAGjE,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,UAAU,qBAAsB,SAAQ,aAAa;IACnD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAsED,eAAO,MAAM,QAAQ,WApEQ,aAAa;uCA4DA,qBAAqB;CAQE,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
2
+ import { cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
2
3
  import { createContext, useContext } from 'react';
3
- import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
4
4
  import styles from './skeleton.module.css.js';
5
5
 
6
6
  const SkeletonContext = createContext(null);
7
7
  const SkeletonBase = (props) => {
8
8
  const contextProps = useContext(SkeletonContext);
9
- const { baseColor, highlightColor, width, height = 'var(--rs-space-4)', borderRadius = 'var(--rs-radius-2)', inline = false, duration = 1.5, count = 1, enableAnimation = true, style, className, containerStyle, containerClassName, } = { ...contextProps, ...props };
10
- const skeletonClassName = clsx(styles.skeleton, inline && styles.inline, enableAnimation && styles.animate, className);
9
+ const { baseColor, highlightColor, width, height = 'var(--rs-space-4)', borderRadius = 'var(--rs-radius-2)', inline = false, duration = 1.5, count = 1, enableAnimation = true, style, className, containerStyle, containerClassName } = { ...contextProps, ...props };
10
+ const skeletonClassName = cx(styles.skeleton, inline && styles.inline, enableAnimation && styles.animate, className);
11
11
  const Container = inline ? 'span' : 'div';
12
12
  const defaultWidth = inline ? '50px' : '100%';
13
13
  return (jsxRuntimeExports.jsx(Container, { className: containerClassName, style: {