@raystack/apsara 0.46.0-rc.4 → 0.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/_virtual/index.cjs +2 -2
  2. package/dist/_virtual/index.js +2 -2
  3. package/dist/_virtual/index2.cjs +2 -2
  4. package/dist/_virtual/index2.js +2 -2
  5. package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.cjs +1 -1
  6. package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -1
  7. package/dist/node_modules/.pnpm/use-sync-external-store@1.5.0_react@18.2.0/node_modules/use-sync-external-store/shim/index.cjs +1 -1
  8. package/dist/node_modules/.pnpm/use-sync-external-store@1.5.0_react@18.2.0/node_modules/use-sync-external-store/shim/index.js +1 -1
  9. package/dist/style.css +1 -1
  10. package/dist/v1/components/avatar/avatar.cjs +18 -2
  11. package/dist/v1/components/avatar/avatar.cjs.map +1 -1
  12. package/dist/v1/components/avatar/avatar.d.ts +2 -1
  13. package/dist/v1/components/avatar/avatar.d.ts.map +1 -1
  14. package/dist/v1/components/avatar/avatar.js +18 -3
  15. package/dist/v1/components/avatar/avatar.js.map +1 -1
  16. package/dist/v1/components/avatar/utils.cjs +14 -34
  17. package/dist/v1/components/avatar/utils.cjs.map +1 -1
  18. package/dist/v1/components/avatar/utils.d.ts +1 -4
  19. package/dist/v1/components/avatar/utils.d.ts.map +1 -1
  20. package/dist/v1/components/avatar/utils.js +15 -34
  21. package/dist/v1/components/avatar/utils.js.map +1 -1
  22. package/dist/v1/components/breadcrumb/breadcrumb.cjs +35 -19
  23. package/dist/v1/components/breadcrumb/breadcrumb.cjs.map +1 -1
  24. package/dist/v1/components/breadcrumb/breadcrumb.d.ts +15 -12
  25. package/dist/v1/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  26. package/dist/v1/components/breadcrumb/breadcrumb.js +37 -21
  27. package/dist/v1/components/breadcrumb/breadcrumb.js.map +1 -1
  28. package/dist/v1/components/dropdown-menu/dropdown-menu-content.cjs +5 -5
  29. package/dist/v1/components/dropdown-menu/dropdown-menu-content.cjs.map +1 -1
  30. package/dist/v1/components/dropdown-menu/dropdown-menu-content.d.ts +3 -3
  31. package/dist/v1/components/dropdown-menu/dropdown-menu-content.d.ts.map +1 -1
  32. package/dist/v1/components/dropdown-menu/dropdown-menu-content.js +5 -5
  33. package/dist/v1/components/dropdown-menu/dropdown-menu-content.js.map +1 -1
  34. package/dist/v1/components/icon-button/icon-button.cjs +8 -7
  35. package/dist/v1/components/icon-button/icon-button.cjs.map +1 -1
  36. package/dist/v1/components/icon-button/icon-button.d.ts +1 -1
  37. package/dist/v1/components/icon-button/icon-button.d.ts.map +1 -1
  38. package/dist/v1/components/icon-button/icon-button.js +8 -7
  39. package/dist/v1/components/icon-button/icon-button.js.map +1 -1
  40. package/dist/v1/components/select/select-content.cjs +16 -7
  41. package/dist/v1/components/select/select-content.cjs.map +1 -1
  42. package/dist/v1/components/select/select-content.d.ts +1 -1
  43. package/dist/v1/components/select/select-content.d.ts.map +1 -1
  44. package/dist/v1/components/select/select-content.js +16 -7
  45. package/dist/v1/components/select/select-content.js.map +1 -1
  46. package/dist/v1/components/select/select-item.cjs +19 -18
  47. package/dist/v1/components/select/select-item.cjs.map +1 -1
  48. package/dist/v1/components/select/select-item.d.ts +1 -3
  49. package/dist/v1/components/select/select-item.d.ts.map +1 -1
  50. package/dist/v1/components/select/select-item.js +19 -18
  51. package/dist/v1/components/select/select-item.js.map +1 -1
  52. package/dist/v1/components/select/select-multiple-value.cjs +67 -0
  53. package/dist/v1/components/select/select-multiple-value.cjs.map +1 -0
  54. package/dist/v1/components/select/select-multiple-value.d.ts +8 -0
  55. package/dist/v1/components/select/select-multiple-value.d.ts.map +1 -0
  56. package/dist/v1/components/select/select-multiple-value.js +65 -0
  57. package/dist/v1/components/select/select-multiple-value.js.map +1 -0
  58. package/dist/v1/components/select/select-root.cjs +64 -22
  59. package/dist/v1/components/select/select-root.cjs.map +1 -1
  60. package/dist/v1/components/select/select-root.d.ts +25 -26
  61. package/dist/v1/components/select/select-root.d.ts.map +1 -1
  62. package/dist/v1/components/select/select-root.js +64 -22
  63. package/dist/v1/components/select/select-root.js.map +1 -1
  64. package/dist/v1/components/select/select-trigger.cjs +18 -20
  65. package/dist/v1/components/select/select-trigger.cjs.map +1 -1
  66. package/dist/v1/components/select/select-trigger.d.ts +10 -18
  67. package/dist/v1/components/select/select-trigger.d.ts.map +1 -1
  68. package/dist/v1/components/select/select-trigger.js +16 -18
  69. package/dist/v1/components/select/select-trigger.js.map +1 -1
  70. package/dist/v1/components/select/select-value.cjs +23 -7
  71. package/dist/v1/components/select/select-value.cjs.map +1 -1
  72. package/dist/v1/components/select/select-value.d.ts +8 -2
  73. package/dist/v1/components/select/select-value.d.ts.map +1 -1
  74. package/dist/v1/components/select/select-value.js +22 -6
  75. package/dist/v1/components/select/select-value.js.map +1 -1
  76. package/dist/v1/components/select/select.d.ts +11 -9
  77. package/dist/v1/components/select/select.d.ts.map +1 -1
  78. package/dist/v1/components/select/select.module.css.cjs +1 -1
  79. package/dist/v1/components/select/select.module.css.js +1 -1
  80. package/dist/v1/components/select/types.d.ts +7 -0
  81. package/dist/v1/components/select/types.d.ts.map +1 -0
  82. package/dist/v1/components/sidebar/sidebar.cjs +26 -26
  83. package/dist/v1/components/sidebar/sidebar.cjs.map +1 -1
  84. package/dist/v1/components/sidebar/sidebar.d.ts +8 -8
  85. package/dist/v1/components/sidebar/sidebar.d.ts.map +1 -1
  86. package/dist/v1/components/sidebar/sidebar.js +26 -26
  87. package/dist/v1/components/sidebar/sidebar.js.map +1 -1
  88. package/dist/v1/components/tooltip/tooltip.cjs +34 -12
  89. package/dist/v1/components/tooltip/tooltip.cjs.map +1 -1
  90. package/dist/v1/components/tooltip/tooltip.d.ts +16 -9
  91. package/dist/v1/components/tooltip/tooltip.d.ts.map +1 -1
  92. package/dist/v1/components/tooltip/tooltip.js +35 -13
  93. package/dist/v1/components/tooltip/tooltip.js.map +1 -1
  94. package/dist/v1/components/tooltip/tooltip.module.css.cjs +1 -1
  95. package/dist/v1/components/tooltip/tooltip.module.css.js +1 -1
  96. package/dist/v1/components/tooltip/utils.cjs +30 -0
  97. package/dist/v1/components/tooltip/utils.cjs.map +1 -0
  98. package/dist/v1/components/tooltip/utils.d.ts +10 -0
  99. package/dist/v1/components/tooltip/utils.d.ts.map +1 -0
  100. package/dist/v1/components/tooltip/utils.js +28 -0
  101. package/dist/v1/components/tooltip/utils.js.map +1 -0
  102. package/dist/v1/hooks/index.cjs +2 -0
  103. package/dist/v1/hooks/index.cjs.map +1 -1
  104. package/dist/v1/hooks/index.d.ts +2 -1
  105. package/dist/v1/hooks/index.d.ts.map +1 -1
  106. package/dist/v1/hooks/index.js +1 -0
  107. package/dist/v1/hooks/index.js.map +1 -1
  108. package/dist/v1/hooks/useMouse.cjs +53 -0
  109. package/dist/v1/hooks/useMouse.cjs.map +1 -0
  110. package/dist/v1/hooks/useMouse.d.ts +20 -0
  111. package/dist/v1/hooks/useMouse.d.ts.map +1 -0
  112. package/dist/v1/hooks/useMouse.js +51 -0
  113. package/dist/v1/hooks/useMouse.js.map +1 -0
  114. package/dist/v1/node_modules/.pnpm/@radix-ui_react-select@2.2.4_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-select/dist/index.cjs +0 -2
  115. package/dist/v1/node_modules/.pnpm/@radix-ui_react-select@2.2.4_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-select/dist/index.cjs.map +1 -1
  116. package/dist/v1/node_modules/.pnpm/@radix-ui_react-select@2.2.4_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-select/dist/index.js +1 -2
  117. package/dist/v1/node_modules/.pnpm/@radix-ui_react-select@2.2.4_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-select/dist/index.js.map +1 -1
  118. package/dist/v1/style.css +1 -1
  119. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"select-value.js","sources":["../../../../v1/components/select/select-value.tsx"],"sourcesContent":["import { ElementRef, forwardRef } from \"react\";\nimport * as SelectPrimitive from \"@radix-ui/react-select\";\nimport styles from \"./select.module.css\";\nimport { useSelectContext } from \"./select-root\";\nimport { cx } from \"class-variance-authority\";\n\nexport const SelectValue = forwardRef<\n ElementRef<typeof SelectPrimitive.Value>,\n SelectPrimitive.SelectValueProps\n>(({ children, ...props }, ref) => {\n const { value } = useSelectContext();\n const leadingIcon = value?.icon;\n\n return (\n <div className={cx(styles.valueContent)}>\n {leadingIcon && <div className={styles.leadingIcon}>{leadingIcon}</div>}\n <SelectPrimitive.Value ref={ref} {...props}>\n {children}\n </SelectPrimitive.Value>\n </div>\n );\n});\nSelectValue.displayName = SelectPrimitive.Value.displayName;\n"],"names":["_jsxs","_jsx","SelectPrimitive.Value"],"mappings":";;;;;;;AAMa,MAAA,WAAW,GAAG,UAAU,CAGnC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAI;AAChC,IAAA,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,EAAE,CAAC;AACrC,IAAA,MAAM,WAAW,GAAG,KAAK,EAAE,IAAI,CAAC;AAEhC,IAAA,QACEA,sBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,aACpC,WAAW,IAAIC,+BAAK,SAAS,EAAE,MAAM,CAAC,WAAW,EAAG,QAAA,EAAA,WAAW,GAAO,EACvEA,qBAAA,CAACC,KAAqB,EAAC,EAAA,GAAG,EAAE,GAAG,KAAM,KAAK,EAAA,QAAA,EACvC,QAAQ,EACa,CAAA,CAAA,EAAA,CACpB,EACN;AACJ,CAAC,EAAE;AACH,WAAW,CAAC,WAAW,GAAGA,KAAqB,CAAC,WAAW;;;;"}
1
+ {"version":3,"file":"select-value.js","sources":["../../../../v1/components/select/select-value.tsx"],"sourcesContent":["import * as SelectPrimitive from '@radix-ui/react-select';\nimport { cx } from 'class-variance-authority';\nimport { ElementRef, ReactNode, forwardRef, useMemo } from 'react';\nimport { SelectMultipleValue } from './select-multiple-value';\nimport { useSelectContext } from './select-root';\nimport styles from './select.module.css';\nimport { ItemType } from './types';\n\ntype ValueType = Omit<ItemType, 'children'>;\n\ntype SelectValueProps = Omit<SelectPrimitive.SelectValueProps, 'children'> & {\n children?: ((value?: ValueType | ValueType[]) => ReactNode) | ReactNode;\n};\n\nexport const SelectValue = forwardRef<\n ElementRef<typeof SelectPrimitive.Value>,\n SelectValueProps\n>(({ children, ...props }, ref) => {\n const { value, items, multiple } = useSelectContext();\n\n const item = useMemo(() => {\n if (!value) return undefined;\n if (multiple && Array.isArray(value)) {\n const itemValues = value.map(v => items[v]);\n if (itemValues.length === 1) return itemValues[0];\n return itemValues;\n }\n return items[value as string];\n }, [value, items, multiple]);\n\n if (children) {\n return (\n <SelectPrimitive.Value ref={ref} {...props}>\n {typeof children === 'function' ? children(item) : children}\n </SelectPrimitive.Value>\n );\n }\n\n if (Array.isArray(item))\n return <SelectMultipleValue data={item} ref={ref} {...props} />;\n\n return (\n <SelectPrimitive.Value ref={ref} {...props}>\n <div className={cx(styles.valueContent)}>\n {typeof item?.children === 'string' && item?.leadingIcon && (\n <div className={styles.itemIcon}>{item.leadingIcon}</div>\n )}\n {item?.children ?? value}\n </div>\n </SelectPrimitive.Value>\n );\n});\nSelectValue.displayName = SelectPrimitive.Value.displayName;\n"],"names":["_jsx","SelectPrimitive.Value","_jsxs"],"mappings":";;;;;;;;AAca,MAAA,WAAW,GAAG,UAAU,CAGnC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAI;IAChC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE,CAAC;AAEtD,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAK;AACxB,QAAA,IAAI,CAAC,KAAK;AAAE,YAAA,OAAO,SAAS,CAAC;QAC7B,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACpC,YAAA,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,YAAA,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;AAAE,gBAAA,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;AAClD,YAAA,OAAO,UAAU,CAAC;SACnB;AACD,QAAA,OAAO,KAAK,CAAC,KAAe,CAAC,CAAC;KAC/B,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE7B,IAAI,QAAQ,EAAE;AACZ,QAAA,QACEA,qBAAA,CAACC,KAAqB,EAAA,EAAC,GAAG,EAAE,GAAG,EAAA,GAAM,KAAK,EAAA,QAAA,EACvC,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,EAAA,CACrC,EACxB;KACH;AAED,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;AACrB,QAAA,OAAOD,qBAAC,CAAA,mBAAmB,EAAC,EAAA,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAM,GAAA,KAAK,GAAI,CAAC;IAElE,QACEA,qBAAC,CAAAC,KAAqB,IAAC,GAAG,EAAE,GAAG,EAAA,GAAM,KAAK,EAAA,QAAA,EACxCC,gCAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EACpC,QAAA,EAAA,CAAA,OAAO,IAAI,EAAE,QAAQ,KAAK,QAAQ,IAAI,IAAI,EAAE,WAAW,KACtDF,qBAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAG,QAAA,EAAA,IAAI,CAAC,WAAW,EAAA,CAAO,CAC1D,EACA,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAA,EAAA,CACpB,EACgB,CAAA,EACxB;AACJ,CAAC,EAAE;AACH,WAAW,CAAC,WAAW,GAAGC,KAAqB,CAAC,WAAW;;;;"}
@@ -1,19 +1,21 @@
1
1
  import * as SelectPrimitive from "@radix-ui/react-select";
2
- export declare const Select: (({ children, value, onValueChange, defaultValue, autocomplete, autocompleteMode, searchValue: providedSearchValue, onSearch, defaultSearchValue, open: controlledOpen, defaultOpen, onOpenChange, htmlAutoComplete, ...props }: import("./select-root").SelectRootProps) => import("react/jsx-runtime").JSX.Element) & {
2
+ export declare const Select: ((props: import("./select-root").SelectRootProps) => import("react/jsx-runtime").JSX.Element) & {
3
3
  Group: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & import("react").RefAttributes<HTMLDivElement>>;
4
- Value: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & import("react").RefAttributes<HTMLSpanElement>>;
4
+ Value: import("react").ForwardRefExoticComponent<Omit<SelectPrimitive.SelectValueProps, "children"> & {
5
+ children?: import("react").ReactNode | ((value?: {
6
+ leadingIcon?: import("react").ReactNode;
7
+ value: string;
8
+ } | {
9
+ leadingIcon?: import("react").ReactNode;
10
+ value: string;
11
+ }[] | undefined) => import("react").ReactNode);
12
+ } & import("react").RefAttributes<HTMLSpanElement>>;
5
13
  ScrollUpButton: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectScrollDownButtonProps & import("react").RefAttributes<HTMLDivElement>>;
6
14
  ScrollDownButton: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectScrollDownButtonProps & import("react").RefAttributes<HTMLDivElement>>;
7
15
  Viewport: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectViewportProps & import("react").RefAttributes<HTMLDivElement>>;
8
- Trigger: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectTriggerProps & import("class-variance-authority").VariantProps<(props?: ({
9
- size?: "small" | "medium" | null | undefined;
10
- variant?: "text" | "outline" | null | undefined;
11
- } & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
12
- iconProps?: import("./select-trigger").IconProps | undefined;
13
- } & import("./select-trigger").AriaProps & import("./select-trigger").TriggerStyleProps & import("react").RefAttributes<HTMLButtonElement>>;
16
+ Trigger: import("react").ForwardRefExoticComponent<import("./select-trigger").SelectTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
14
17
  Content: import("react").ForwardRefExoticComponent<import("./select-content").SelectContentProps & import("react").RefAttributes<HTMLDivElement>>;
15
18
  Item: import("react").ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps, "asChild"> & {
16
- textProps?: import("../text").TextProps | undefined;
17
19
  leadingIcon?: import("react").ReactNode;
18
20
  } & import("react").RefAttributes<HTMLDivElement>>;
19
21
  Separator: import("react").ForwardRefExoticComponent<SelectPrimitive.SelectSeparatorProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../v1/components/select/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAQ1D,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;CAWjB,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../v1/components/select/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAQ1D,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;CAWjB,CAAC"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var styles = {"content":"select-module_content__wLQoN","menuitem":"select-module_menuitem__BTQat","label":"select-module_label__YsBmk","separator":"select-module_separator__7YD2G","trigger":"select-module_trigger__8XPsA","trigger-outline":"select-module_trigger-outline__FIv-z","trigger-text":"select-module_trigger-text__QHQ4b","trigger-small":"select-module_trigger-small__krYBJ","triggerContent":"select-module_triggerContent__P35Y0","trigger-medium":"select-module_trigger-medium__0vmIM","triggerIcon":"select-module_triggerIcon__cZGjN","valueContent":"select-module_valueContent__KFsoy","itemIcon":"select-module_itemIcon__Nnej1","placeholder":"select-module_placeholder__Lepbs","leadingIcon":"select-module_leadingIcon__PTDA9","comboboxContent":"select-module_comboboxContent__toOr1","viewport":"select-module_viewport__X6Qew","comboboxViewport":"select-module_comboboxViewport__-X4uR","comboboxContainer":"select-module_comboboxContainer__8y-WI","comboboxInput":"select-module_comboboxInput__TCgRj","hidden":"select-module_hidden__5UHM7","trigger___outline":"select-module_trigger-outline__FIv-z","trigger___text":"select-module_trigger-text__QHQ4b","trigger___small":"select-module_trigger-small__krYBJ","trigger___medium":"select-module_trigger-medium__0vmIM"};
5
+ var styles = {"content":"select-module_content__wLQoN","menuitem":"select-module_menuitem__BTQat","label":"select-module_label__YsBmk","separator":"select-module_separator__7YD2G","trigger":"select-module_trigger__8XPsA","trigger-outline":"select-module_trigger-outline__FIv-z","trigger-text":"select-module_trigger-text__QHQ4b","trigger-small":"select-module_trigger-small__krYBJ","triggerContent":"select-module_triggerContent__P35Y0","trigger-medium":"select-module_trigger-medium__0vmIM","triggerIcon":"select-module_triggerIcon__cZGjN","valueContent":"select-module_valueContent__KFsoy","itemIcon":"select-module_itemIcon__Nnej1","placeholder":"select-module_placeholder__Lepbs","comboboxContent":"select-module_comboboxContent__toOr1","viewport":"select-module_viewport__X6Qew","comboboxViewport":"select-module_comboboxViewport__-X4uR","comboboxContainer":"select-module_comboboxContainer__8y-WI","comboboxInput":"select-module_comboboxInput__TCgRj","hidden":"select-module_hidden__5UHM7","trigger___outline":"select-module_trigger-outline__FIv-z","trigger___text":"select-module_trigger-text__QHQ4b","trigger___small":"select-module_trigger-small__krYBJ","trigger___medium":"select-module_trigger-medium__0vmIM"};
6
6
 
7
7
  exports.default = styles;
8
8
  //# sourceMappingURL=select.module.css.cjs.map
@@ -1,4 +1,4 @@
1
- var styles = {"content":"select-module_content__wLQoN","menuitem":"select-module_menuitem__BTQat","label":"select-module_label__YsBmk","separator":"select-module_separator__7YD2G","trigger":"select-module_trigger__8XPsA","trigger-outline":"select-module_trigger-outline__FIv-z","trigger-text":"select-module_trigger-text__QHQ4b","trigger-small":"select-module_trigger-small__krYBJ","triggerContent":"select-module_triggerContent__P35Y0","trigger-medium":"select-module_trigger-medium__0vmIM","triggerIcon":"select-module_triggerIcon__cZGjN","valueContent":"select-module_valueContent__KFsoy","itemIcon":"select-module_itemIcon__Nnej1","placeholder":"select-module_placeholder__Lepbs","leadingIcon":"select-module_leadingIcon__PTDA9","comboboxContent":"select-module_comboboxContent__toOr1","viewport":"select-module_viewport__X6Qew","comboboxViewport":"select-module_comboboxViewport__-X4uR","comboboxContainer":"select-module_comboboxContainer__8y-WI","comboboxInput":"select-module_comboboxInput__TCgRj","hidden":"select-module_hidden__5UHM7","trigger___outline":"select-module_trigger-outline__FIv-z","trigger___text":"select-module_trigger-text__QHQ4b","trigger___small":"select-module_trigger-small__krYBJ","trigger___medium":"select-module_trigger-medium__0vmIM"};
1
+ var styles = {"content":"select-module_content__wLQoN","menuitem":"select-module_menuitem__BTQat","label":"select-module_label__YsBmk","separator":"select-module_separator__7YD2G","trigger":"select-module_trigger__8XPsA","trigger-outline":"select-module_trigger-outline__FIv-z","trigger-text":"select-module_trigger-text__QHQ4b","trigger-small":"select-module_trigger-small__krYBJ","triggerContent":"select-module_triggerContent__P35Y0","trigger-medium":"select-module_trigger-medium__0vmIM","triggerIcon":"select-module_triggerIcon__cZGjN","valueContent":"select-module_valueContent__KFsoy","itemIcon":"select-module_itemIcon__Nnej1","placeholder":"select-module_placeholder__Lepbs","comboboxContent":"select-module_comboboxContent__toOr1","viewport":"select-module_viewport__X6Qew","comboboxViewport":"select-module_comboboxViewport__-X4uR","comboboxContainer":"select-module_comboboxContainer__8y-WI","comboboxInput":"select-module_comboboxInput__TCgRj","hidden":"select-module_hidden__5UHM7","trigger___outline":"select-module_trigger-outline__FIv-z","trigger___text":"select-module_trigger-text__QHQ4b","trigger___small":"select-module_trigger-small__krYBJ","trigger___medium":"select-module_trigger-medium__0vmIM"};
2
2
 
3
3
  export { styles as default };
4
4
  //# sourceMappingURL=select.module.css.js.map
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from 'react';
2
+ export type ItemType = {
3
+ leadingIcon?: ReactNode;
4
+ children: ReactNode;
5
+ value: string;
6
+ };
7
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../v1/components/select/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,MAAM,QAAQ,GAAG;IACrB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
@@ -4,58 +4,58 @@ var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/rea
4
4
  var index = require('../../node_modules/.pnpm/@radix-ui_react-collapsible@1.1.2_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18._hjslo7xm5vmo3b4sx344jkbtcq/node_modules/@radix-ui/react-collapsible/dist/index.cjs');
5
5
  var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
6
6
  var React = require('react');
7
+ var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
7
8
  var tooltip = require('../tooltip/tooltip.cjs');
8
9
  var sidebar_module = require('./sidebar.module.css.cjs');
9
- var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
10
10
 
11
11
  const SidebarContext = React.createContext({
12
- isCollapsed: false,
12
+ isCollapsed: false
13
13
  });
14
14
  const root = index$1.cva(sidebar_module.default.root);
15
- const SidebarRoot = React.forwardRef(({ className, position = "left", open, onOpenChange, hideCollapsedItemTooltip, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx(SidebarContext.Provider, { value: { isCollapsed: !open, hideCollapsedItemTooltip }, children: jsxRuntime.jsxRuntimeExports.jsx(tooltip.TooltipProvider, { children: jsxRuntime.jsxRuntimeExports.jsx(index.Root, { ref: ref, className: root({ className }), "data-position": position, "data-state": open ? "expanded" : "collapsed", open: open, onOpenChange: onOpenChange, "aria-label": "Navigation Sidebar", "aria-expanded": open, role: "navigation", ...props, asChild: true, children: jsxRuntime.jsxRuntimeExports.jsxs("aside", { children: [jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: open ? "Click to collapse" : "Click to expand", side: position === "left" ? "right" : "left", asChild: true, children: jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.resizeHandle, onClick: () => onOpenChange?.(!open), role: "button", tabIndex: 0, "aria-label": open ? "Collapse sidebar" : "Expand sidebar", onKeyDown: e => {
16
- if (e.key === "Enter" || e.key === " ") {
15
+ const SidebarRoot = React.forwardRef(({ className, position = 'left', open, onOpenChange, hideCollapsedItemTooltip, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx(SidebarContext.Provider, { value: { isCollapsed: !open, hideCollapsedItemTooltip }, children: jsxRuntime.jsxRuntimeExports.jsx(tooltip.TooltipProvider, { children: jsxRuntime.jsxRuntimeExports.jsx(index.Root, { ref: ref, className: root({ className }), "data-position": position, "data-state": open ? 'expanded' : 'collapsed', open: open, onOpenChange: onOpenChange, "aria-label": 'Navigation Sidebar', "aria-expanded": open, role: 'navigation', ...props, asChild: true, children: jsxRuntime.jsxRuntimeExports.jsxs("aside", { children: [jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: open ? 'Click to collapse' : 'Click to expand', side: position === 'left' ? 'right' : 'left', asChild: true, followCursor: true, children: jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.resizeHandle, onClick: () => onOpenChange?.(!open), role: 'button', tabIndex: 0, "aria-label": open ? 'Collapse sidebar' : 'Expand sidebar', onKeyDown: e => {
16
+ if (e.key === 'Enter' || e.key === ' ') {
17
17
  e.preventDefault();
18
18
  onOpenChange?.(!open);
19
19
  }
20
20
  } }) }), children] }) }) }) })));
21
- const SidebarHeader = React.forwardRef(({ className, logo, title, onLogoClick, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsxs("div", { ref: ref, className: sidebar_module.default.header, role: "banner", ...props, children: [jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.logo, onClick: onLogoClick, role: onLogoClick ? "button" : undefined, tabIndex: onLogoClick ? 0 : undefined, onKeyDown: e => {
22
- if (onLogoClick && (e.key === "Enter" || e.key === " ")) {
21
+ const SidebarHeader = React.forwardRef(({ className, logo, title, onLogoClick, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsxs("div", { ref: ref, className: sidebar_module.default.header, role: 'banner', ...props, children: [jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.logo, onClick: onLogoClick, role: onLogoClick ? 'button' : undefined, tabIndex: onLogoClick ? 0 : undefined, onKeyDown: e => {
22
+ if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {
23
23
  e.preventDefault();
24
24
  onLogoClick();
25
25
  }
26
- }, style: { cursor: onLogoClick ? "pointer" : undefined }, children: logo }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.title, role: "heading", "aria-level": 1, children: title })] })));
27
- const SidebarMain = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.main, role: "group", "aria-label": "Main navigation", ...props, children: children })));
28
- const SidebarFooter = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.footer, role: "group", "aria-label": "Footer navigation", ...props, children: children })));
26
+ }, style: { cursor: onLogoClick ? 'pointer' : undefined }, children: logo }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default.title, role: 'heading', "aria-level": 1, children: title })] })));
27
+ const SidebarMain = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.main, role: 'group', "aria-label": 'Main navigation', ...props, children: children })));
28
+ const SidebarFooter = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: sidebar_module.default.footer, role: 'group', "aria-label": 'Footer navigation', ...props, children: children })));
29
29
  const SidebarItem = React.forwardRef(({ classNames, icon, children, active, disabled, as = jsxRuntime.jsxRuntimeExports.jsx("a", {}), ...props }, ref) => {
30
30
  const { isCollapsed, hideCollapsedItemTooltip } = React.useContext(SidebarContext); // To prevent prop drillng
31
31
  const content = React.cloneElement(as, {
32
32
  ref,
33
- className: clsx.clsx(sidebar_module.default["nav-item"], classNames?.root),
34
- "data-active": active,
35
- "data-disabled": disabled,
36
- role: "menuitem",
37
- "aria-current": active ? "page" : undefined,
38
- "aria-disabled": disabled,
39
- ...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 })] }));
33
+ className: clsx.clsx(sidebar_module.default['nav-item'], classNames?.root),
34
+ 'data-active': active,
35
+ 'data-disabled': disabled,
36
+ role: 'menuitem',
37
+ 'aria-current': active ? 'page' : undefined,
38
+ 'aria-disabled': disabled,
39
+ ...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 })] }));
41
41
  if (isCollapsed && !hideCollapsedItemTooltip) {
42
- return (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: children, side: "right", children: content }));
42
+ return (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: children, side: 'right', children: content }));
43
43
  }
44
44
  return content;
45
45
  });
46
- const SidebarNavigationGroup = React.forwardRef(({ className, name, icon, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsxs("section", { ref: ref, className: className, "aria-label": name, ...props, children: [jsxRuntime.jsxRuntimeExports.jsxs("div", { className: sidebar_module.default["nav-group-header"], children: [icon && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default["nav-icon"], children: icon }), jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default["nav-group-name"], children: name })] }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default["nav-group-items"], role: "list", children: children })] })));
47
- SidebarRoot.displayName = "Sidebar.Root";
48
- SidebarHeader.displayName = "Sidebar.Header";
49
- SidebarMain.displayName = "Sidebar.Main";
50
- SidebarFooter.displayName = "Sidebar.Footer";
51
- SidebarItem.displayName = "Sidebar.Item";
52
- SidebarNavigationGroup.displayName = "Sidebar.Group";
46
+ const SidebarNavigationGroup = React.forwardRef(({ className, name, icon, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsxs("section", { ref: ref, className: className, "aria-label": name, ...props, children: [jsxRuntime.jsxRuntimeExports.jsxs("div", { className: sidebar_module.default['nav-group-header'], children: [icon && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-icon'], children: icon }), jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-group-name'], children: name })] }), jsxRuntime.jsxRuntimeExports.jsx("div", { className: sidebar_module.default['nav-group-items'], role: 'list', children: children })] })));
47
+ SidebarRoot.displayName = 'Sidebar.Root';
48
+ SidebarHeader.displayName = 'Sidebar.Header';
49
+ SidebarMain.displayName = 'Sidebar.Main';
50
+ SidebarFooter.displayName = 'Sidebar.Footer';
51
+ SidebarItem.displayName = 'Sidebar.Item';
52
+ SidebarNavigationGroup.displayName = 'Sidebar.Group';
53
53
  const Sidebar = Object.assign(SidebarRoot, {
54
54
  Header: SidebarHeader,
55
55
  Main: SidebarMain,
56
56
  Footer: SidebarFooter,
57
57
  Item: SidebarItem,
58
- Group: SidebarNavigationGroup,
58
+ Group: SidebarNavigationGroup
59
59
  });
60
60
 
61
61
  exports.Sidebar = Sidebar;
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.cjs","sources":["../../../../v1/components/sidebar/sidebar.tsx"],"sourcesContent":["import * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { cva } from \"class-variance-authority\";\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n forwardRef,\n ReactNode,\n createContext,\n useContext,\n ReactElement,\n cloneElement,\n} from \"react\";\n\nimport { Tooltip, TooltipProvider } from \"../tooltip\";\nimport styles from \"./sidebar.module.css\";\nimport clsx from \"clsx\";\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}\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 children,\n ...props\n },\n ref,\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}>\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? \"expanded\" : \"collapsed\"}\n open={open}\n onOpenChange={onOpenChange}\n aria-label=\"Navigation Sidebar\"\n aria-expanded={open}\n role=\"navigation\"\n {...props}\n asChild>\n <aside>\n <Tooltip\n message={open ? \"Click to collapse\" : \"Click to expand\"}\n side={position === \"left\" ? \"right\" : \"left\"}\n asChild>\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 {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 {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 {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 {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 {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":["../../../../v1/components/sidebar/sidebar.tsx"],"sourcesContent":["import * as Collapsible from '@radix-ui/react-collapsible';\nimport { cva } from 'class-variance-authority';\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}\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 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 open={open}\n onOpenChange={onOpenChange}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\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 {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,16 +1,16 @@
1
- import * as Collapsible from "@radix-ui/react-collapsible";
2
- import { ComponentPropsWithoutRef, ReactNode, ReactElement } from "react";
1
+ import * as Collapsible from '@radix-ui/react-collapsible';
2
+ import { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
3
3
  interface SidebarProps extends ComponentPropsWithoutRef<typeof Collapsible.Root> {
4
- position?: "left" | "right";
4
+ position?: 'left' | 'right';
5
5
  hideCollapsedItemTooltip?: boolean;
6
6
  }
7
- interface SidebarHeaderProps extends ComponentPropsWithoutRef<"div"> {
7
+ interface SidebarHeaderProps extends ComponentPropsWithoutRef<'div'> {
8
8
  logo: ReactNode;
9
9
  title: string;
10
10
  onLogoClick?: () => void;
11
11
  }
12
- interface SidebarItemProps extends ComponentPropsWithoutRef<"a"> {
13
- icon: ReactNode;
12
+ interface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {
13
+ icon?: ReactNode;
14
14
  active?: boolean;
15
15
  disabled?: boolean;
16
16
  as?: ReactElement;
@@ -20,9 +20,9 @@ interface SidebarItemProps extends ComponentPropsWithoutRef<"a"> {
20
20
  text?: string;
21
21
  };
22
22
  }
23
- interface SidebarFooterProps extends ComponentPropsWithoutRef<"div"> {
23
+ interface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {
24
24
  }
25
- interface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<"div"> {
25
+ interface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {
26
26
  name: string;
27
27
  icon?: ReactNode;
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../../v1/components/sidebar/sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EACL,wBAAwB,EAGxB,SAAS,EAGT,YAAY,EAEb,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;CACpC;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,EAAE,SAAS,CAAC;IAChB,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;AA8KD,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../../v1/components/sidebar/sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAE3D,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;CACpC;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;AAsLD,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
@@ -2,58 +2,58 @@ import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/no
2
2
  import { Root } from '../../node_modules/.pnpm/@radix-ui_react-collapsible@1.1.2_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18._hjslo7xm5vmo3b4sx344jkbtcq/node_modules/@radix-ui/react-collapsible/dist/index.js';
3
3
  import { cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
4
4
  import { createContext, forwardRef, useContext, cloneElement } from 'react';
5
+ import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
5
6
  import { TooltipProvider, Tooltip } from '../tooltip/tooltip.js';
6
7
  import styles from './sidebar.module.css.js';
7
- import { clsx } from '../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
8
8
 
9
9
  const SidebarContext = createContext({
10
- isCollapsed: false,
10
+ isCollapsed: false
11
11
  });
12
12
  const root = cva(styles.root);
13
- const SidebarRoot = forwardRef(({ className, position = "left", open, onOpenChange, hideCollapsedItemTooltip, children, ...props }, ref) => (jsxRuntimeExports.jsx(SidebarContext.Provider, { value: { isCollapsed: !open, hideCollapsedItemTooltip }, children: jsxRuntimeExports.jsx(TooltipProvider, { children: jsxRuntimeExports.jsx(Root, { ref: ref, className: root({ className }), "data-position": position, "data-state": open ? "expanded" : "collapsed", open: open, onOpenChange: onOpenChange, "aria-label": "Navigation Sidebar", "aria-expanded": open, role: "navigation", ...props, asChild: true, children: jsxRuntimeExports.jsxs("aside", { children: [jsxRuntimeExports.jsx(Tooltip, { message: open ? "Click to collapse" : "Click to expand", side: position === "left" ? "right" : "left", asChild: true, children: jsxRuntimeExports.jsx("div", { className: styles.resizeHandle, onClick: () => onOpenChange?.(!open), role: "button", tabIndex: 0, "aria-label": open ? "Collapse sidebar" : "Expand sidebar", onKeyDown: e => {
14
- if (e.key === "Enter" || e.key === " ") {
13
+ const SidebarRoot = forwardRef(({ className, position = 'left', open, onOpenChange, hideCollapsedItemTooltip, children, ...props }, ref) => (jsxRuntimeExports.jsx(SidebarContext.Provider, { value: { isCollapsed: !open, hideCollapsedItemTooltip }, children: jsxRuntimeExports.jsx(TooltipProvider, { children: jsxRuntimeExports.jsx(Root, { ref: ref, className: root({ className }), "data-position": position, "data-state": open ? 'expanded' : 'collapsed', open: open, onOpenChange: onOpenChange, "aria-label": 'Navigation Sidebar', "aria-expanded": open, role: 'navigation', ...props, asChild: true, children: jsxRuntimeExports.jsxs("aside", { children: [jsxRuntimeExports.jsx(Tooltip, { message: open ? 'Click to collapse' : 'Click to expand', side: position === 'left' ? 'right' : 'left', asChild: true, followCursor: true, children: jsxRuntimeExports.jsx("div", { className: styles.resizeHandle, onClick: () => onOpenChange?.(!open), role: 'button', tabIndex: 0, "aria-label": open ? 'Collapse sidebar' : 'Expand sidebar', onKeyDown: e => {
14
+ if (e.key === 'Enter' || e.key === ' ') {
15
15
  e.preventDefault();
16
16
  onOpenChange?.(!open);
17
17
  }
18
18
  } }) }), children] }) }) }) })));
19
- const SidebarHeader = forwardRef(({ className, logo, title, onLogoClick, ...props }, ref) => (jsxRuntimeExports.jsxs("div", { ref: ref, className: styles.header, role: "banner", ...props, children: [jsxRuntimeExports.jsx("div", { className: styles.logo, onClick: onLogoClick, role: onLogoClick ? "button" : undefined, tabIndex: onLogoClick ? 0 : undefined, onKeyDown: e => {
20
- if (onLogoClick && (e.key === "Enter" || e.key === " ")) {
19
+ const SidebarHeader = forwardRef(({ className, logo, title, onLogoClick, ...props }, ref) => (jsxRuntimeExports.jsxs("div", { ref: ref, className: styles.header, role: 'banner', ...props, children: [jsxRuntimeExports.jsx("div", { className: styles.logo, onClick: onLogoClick, role: onLogoClick ? 'button' : undefined, tabIndex: onLogoClick ? 0 : undefined, onKeyDown: e => {
20
+ if (onLogoClick && (e.key === 'Enter' || e.key === ' ')) {
21
21
  e.preventDefault();
22
22
  onLogoClick();
23
23
  }
24
- }, style: { cursor: onLogoClick ? "pointer" : undefined }, children: logo }), jsxRuntimeExports.jsx("div", { className: styles.title, role: "heading", "aria-level": 1, children: title })] })));
25
- const SidebarMain = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx("div", { ref: ref, className: styles.main, role: "group", "aria-label": "Main navigation", ...props, children: children })));
26
- const SidebarFooter = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx("div", { ref: ref, className: styles.footer, role: "group", "aria-label": "Footer navigation", ...props, children: children })));
24
+ }, style: { cursor: onLogoClick ? 'pointer' : undefined }, children: logo }), jsxRuntimeExports.jsx("div", { className: styles.title, role: 'heading', "aria-level": 1, children: title })] })));
25
+ const SidebarMain = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx("div", { ref: ref, className: styles.main, role: 'group', "aria-label": 'Main navigation', ...props, children: children })));
26
+ const SidebarFooter = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx("div", { ref: ref, className: styles.footer, role: 'group', "aria-label": 'Footer navigation', ...props, children: children })));
27
27
  const SidebarItem = forwardRef(({ classNames, icon, children, active, disabled, as = jsxRuntimeExports.jsx("a", {}), ...props }, ref) => {
28
28
  const { isCollapsed, hideCollapsedItemTooltip } = useContext(SidebarContext); // To prevent prop drillng
29
29
  const content = cloneElement(as, {
30
30
  ref,
31
- className: clsx(styles["nav-item"], classNames?.root),
32
- "data-active": active,
33
- "data-disabled": disabled,
34
- role: "menuitem",
35
- "aria-current": active ? "page" : undefined,
36
- "aria-disabled": disabled,
37
- ...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 })] }));
31
+ className: clsx(styles['nav-item'], classNames?.root),
32
+ 'data-active': active,
33
+ 'data-disabled': disabled,
34
+ role: 'menuitem',
35
+ 'aria-current': active ? 'page' : undefined,
36
+ 'aria-disabled': disabled,
37
+ ...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 })] }));
39
39
  if (isCollapsed && !hideCollapsedItemTooltip) {
40
- return (jsxRuntimeExports.jsx(Tooltip, { message: children, side: "right", children: content }));
40
+ return (jsxRuntimeExports.jsx(Tooltip, { message: children, side: 'right', children: content }));
41
41
  }
42
42
  return content;
43
43
  });
44
- const SidebarNavigationGroup = forwardRef(({ className, name, icon, children, ...props }, ref) => (jsxRuntimeExports.jsxs("section", { ref: ref, className: className, "aria-label": name, ...props, children: [jsxRuntimeExports.jsxs("div", { className: styles["nav-group-header"], children: [icon && jsxRuntimeExports.jsx("span", { className: styles["nav-icon"], children: icon }), jsxRuntimeExports.jsx("span", { className: styles["nav-group-name"], children: name })] }), jsxRuntimeExports.jsx("div", { className: styles["nav-group-items"], role: "list", children: children })] })));
45
- SidebarRoot.displayName = "Sidebar.Root";
46
- SidebarHeader.displayName = "Sidebar.Header";
47
- SidebarMain.displayName = "Sidebar.Main";
48
- SidebarFooter.displayName = "Sidebar.Footer";
49
- SidebarItem.displayName = "Sidebar.Item";
50
- SidebarNavigationGroup.displayName = "Sidebar.Group";
44
+ const SidebarNavigationGroup = forwardRef(({ className, name, icon, children, ...props }, ref) => (jsxRuntimeExports.jsxs("section", { ref: ref, className: className, "aria-label": name, ...props, children: [jsxRuntimeExports.jsxs("div", { className: styles['nav-group-header'], children: [icon && jsxRuntimeExports.jsx("span", { className: styles['nav-icon'], children: icon }), jsxRuntimeExports.jsx("span", { className: styles['nav-group-name'], children: name })] }), jsxRuntimeExports.jsx("div", { className: styles['nav-group-items'], role: 'list', children: children })] })));
45
+ SidebarRoot.displayName = 'Sidebar.Root';
46
+ SidebarHeader.displayName = 'Sidebar.Header';
47
+ SidebarMain.displayName = 'Sidebar.Main';
48
+ SidebarFooter.displayName = 'Sidebar.Footer';
49
+ SidebarItem.displayName = 'Sidebar.Item';
50
+ SidebarNavigationGroup.displayName = 'Sidebar.Group';
51
51
  const Sidebar = Object.assign(SidebarRoot, {
52
52
  Header: SidebarHeader,
53
53
  Main: SidebarMain,
54
54
  Footer: SidebarFooter,
55
55
  Item: SidebarItem,
56
- Group: SidebarNavigationGroup,
56
+ Group: SidebarNavigationGroup
57
57
  });
58
58
 
59
59
  export { Sidebar };
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sources":["../../../../v1/components/sidebar/sidebar.tsx"],"sourcesContent":["import * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { cva } from \"class-variance-authority\";\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n forwardRef,\n ReactNode,\n createContext,\n useContext,\n ReactElement,\n cloneElement,\n} from \"react\";\n\nimport { Tooltip, TooltipProvider } from \"../tooltip\";\nimport styles from \"./sidebar.module.css\";\nimport clsx from \"clsx\";\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}\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 children,\n ...props\n },\n ref,\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}>\n <TooltipProvider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? \"expanded\" : \"collapsed\"}\n open={open}\n onOpenChange={onOpenChange}\n aria-label=\"Navigation Sidebar\"\n aria-expanded={open}\n role=\"navigation\"\n {...props}\n asChild>\n <aside>\n <Tooltip\n message={open ? \"Click to collapse\" : \"Click to expand\"}\n side={position === \"left\" ? \"right\" : \"left\"}\n asChild>\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 {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 {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 {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 {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 {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":["../../../../v1/components/sidebar/sidebar.tsx"],"sourcesContent":["import * as Collapsible from '@radix-ui/react-collapsible';\nimport { cva } from 'class-variance-authority';\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}\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 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 open={open}\n onOpenChange={onOpenChange}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\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 {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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"}
@@ -3,29 +3,51 @@
3
3
  var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
4
4
  var index = require('../../node_modules/.pnpm/@radix-ui_react-tooltip@1.0.7_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-tooltip/dist/index.cjs');
5
5
  var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
6
- var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
6
+ var React = require('react');
7
+ var useMouse = require('../../hooks/useMouse.cjs');
7
8
  var text = require('../text/text.cjs');
8
9
  var tooltip_module = require('./tooltip.module.css.cjs');
10
+ var utils = require('./utils.cjs');
9
11
 
10
12
  const tooltip = index$1.cva(tooltip_module.default.content, {
11
13
  variants: {
12
14
  side: {
13
- top: tooltip_module.default["side-top"],
14
- right: tooltip_module.default["side-right"],
15
- bottom: tooltip_module.default["side-bottom"],
16
- left: tooltip_module.default["side-left"],
17
- "top-left": tooltip_module.default["side-top-left"],
18
- "top-right": tooltip_module.default["side-top-right"],
19
- "bottom-left": tooltip_module.default["side-bottom-left"],
20
- "bottom-right": tooltip_module.default["side-bottom-right"],
15
+ top: tooltip_module.default['side-top'],
16
+ right: tooltip_module.default['side-right'],
17
+ bottom: tooltip_module.default['side-bottom'],
18
+ left: tooltip_module.default['side-left'],
19
+ 'top-left': tooltip_module.default['side-top-left'],
20
+ 'top-right': tooltip_module.default['side-top-right'],
21
+ 'bottom-left': tooltip_module.default['side-bottom-left'],
22
+ 'bottom-right': tooltip_module.default['side-bottom-right']
21
23
  }
22
24
  },
23
25
  defaultVariants: {
24
- side: "top"
26
+ side: 'top'
25
27
  }
26
28
  });
27
- const Tooltip = ({ children, message, disabled, side = "top", classNames, triggerStyle, contentStyle, delayDuration = 200, skipDelayDuration = 200, 'aria-label': ariaLabel, asChild = true, showArrow = true, }) => {
28
- return disabled ? (children) : (jsxRuntime.jsxRuntimeExports.jsx(index.Provider, { delayDuration: delayDuration, skipDelayDuration: skipDelayDuration, children: jsxRuntime.jsxRuntimeExports.jsxs(index.Root, { children: [jsxRuntime.jsxRuntimeExports.jsx(index.Trigger, { "aria-describedby": "tooltip", asChild: asChild, children: jsxRuntime.jsxRuntimeExports.jsx("div", { className: clsx.clsx(tooltip_module.default.trigger, classNames?.trigger ?? ""), style: triggerStyle, children: children }) }), jsxRuntime.jsxRuntimeExports.jsx(index.Portal, { children: jsxRuntime.jsxRuntimeExports.jsxs(index.Content, { id: "tooltip", role: "tooltip", "aria-label": ariaLabel || (typeof message === 'string' ? message : undefined), side: side?.split('-')[0] || 'top', align: (side?.includes('-') ? (side.split('-')[1] === 'left' ? 'start' : 'end') : 'center'), sideOffset: 4, className: tooltip({ side, className: classNames?.content }), style: contentStyle, children: [typeof message === "string" ? (jsxRuntime.jsxRuntimeExports.jsx(text.Text, { children: message })) : (message), showArrow && (jsxRuntime.jsxRuntimeExports.jsx(index.Arrow, { className: clsx.clsx(tooltip_module.default.arrow, classNames?.arrow), width: 12, height: 6 }))] }) })] }) }));
29
+ const Tooltip = ({ children, message, disabled, side = 'top', classNames, triggerStyle, contentStyle, delayDuration = 200, skipDelayDuration = 200, 'aria-label': ariaLabel, asChild = true, showArrow = true, id, followCursor = false, sideOffset = 4, alignOffset = 0 }) => {
30
+ const generatedId = React.useId();
31
+ const tooltipId = id ?? generatedId;
32
+ const { ref, value: mouseValue, reset } = useMouse.useMouse({
33
+ resetOnExit: false,
34
+ enabled: followCursor
35
+ });
36
+ const computedSide = React.useMemo(() => (side?.split('-')[0] || 'top'), [side]);
37
+ const computedAlign = React.useMemo(() => (side?.includes('-')
38
+ ? side.split('-')[1] === 'left'
39
+ ? 'start'
40
+ : 'end'
41
+ : 'center'), [side]);
42
+ if (disabled)
43
+ return children;
44
+ return (jsxRuntime.jsxRuntimeExports.jsx(index.Provider, { delayDuration: delayDuration, skipDelayDuration: skipDelayDuration, children: jsxRuntime.jsxRuntimeExports.jsxs(index.Root, { children: [jsxRuntime.jsxRuntimeExports.jsx(index.Trigger, { "aria-describedby": tooltipId, asChild: asChild, onFocus: followCursor ? reset : undefined, children: jsxRuntime.jsxRuntimeExports.jsx("div", { ref: ref, className: index$1.cx(tooltip_module.default.trigger, classNames?.trigger), style: triggerStyle, children: children }) }), jsxRuntime.jsxRuntimeExports.jsx(index.Portal, { children: jsxRuntime.jsxRuntimeExports.jsxs(index.Content, { id: tooltipId, role: 'tooltip', "aria-label": ariaLabel || (typeof message === 'string' ? message : undefined), side: computedSide, align: computedAlign, alignOffset: alignOffset, sideOffset: sideOffset, className: tooltip({ side, className: classNames?.content }), "data-follow-cursor": followCursor, style: {
45
+ ...contentStyle,
46
+ pointerEvents: followCursor ? 'none' : undefined,
47
+ transform: followCursor && mouseValue
48
+ ? utils.getTransformForPlacement(computedSide, computedAlign, mouseValue)
49
+ : undefined
50
+ }, children: [typeof message === 'string' ? jsxRuntime.jsxRuntimeExports.jsx(text.Text, { children: message }) : message, showArrow && (jsxRuntime.jsxRuntimeExports.jsx(index.Arrow, { className: index$1.cx(tooltip_module.default.arrow, classNames?.arrow), width: 7, height: 7 }))] }) })] }) }));
29
51
  };
30
52
  Tooltip.displayName = 'Tooltip';
31
53
  const TooltipProvider = index.Provider;
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.cjs","sources":["../../../../v1/components/tooltip/tooltip.tsx"],"sourcesContent":["import * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\nimport { cva, VariantProps } from \"class-variance-authority\";\nimport clsx from \"clsx\";\nimport React from \"react\";\n\nimport { Text } from \"../text\";\nimport styles from \"./tooltip.module.css\";\n\nconst tooltip = cva(styles.content, {\n variants: {\n side: {\n top: styles[\"side-top\"],\n right: styles[\"side-right\"],\n bottom: styles[\"side-bottom\"],\n left: styles[\"side-left\"],\n \"top-left\": styles[\"side-top-left\"],\n \"top-right\": styles[\"side-top-right\"],\n \"bottom-left\": styles[\"side-bottom-left\"],\n \"bottom-right\": styles[\"side-bottom-right\"],\n }\n },\n defaultVariants: {\n side: \"top\"\n }\n});\n\ninterface TooltipProps extends VariantProps<typeof tooltip> {\n disabled?: boolean;\n children: React.ReactNode;\n message: React.ReactNode;\n classNames?: {\n trigger?: string;\n content?: string;\n arrow?: string;\n };\n triggerStyle?: React.CSSProperties;\n contentStyle?: React.CSSProperties;\n delayDuration?: number;\n skipDelayDuration?: number;\n 'aria-label'?: string;\n asChild?: boolean;\n showArrow?: boolean;\n}\n\nexport const Tooltip: React.FC<TooltipProps> = ({\n children,\n message,\n disabled,\n side = \"top\",\n classNames,\n triggerStyle,\n contentStyle,\n delayDuration = 200,\n skipDelayDuration = 200,\n 'aria-label': ariaLabel,\n asChild = true,\n showArrow = true,\n}) => {\n return disabled ? (\n children\n ) : (\n <TooltipPrimitive.Provider delayDuration={delayDuration} skipDelayDuration={skipDelayDuration}>\n <TooltipPrimitive.Root>\n <TooltipPrimitive.Trigger \n aria-describedby=\"tooltip\" \n asChild={asChild}\n >\n <div className={clsx(styles.trigger, classNames?.trigger ?? \"\")} style={triggerStyle}>\n {children}\n </div>\n </TooltipPrimitive.Trigger>\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n id=\"tooltip\"\n role=\"tooltip\"\n aria-label={ariaLabel || (typeof message === 'string' ? message : undefined)}\n side={side?.split('-')[0] as TooltipPrimitive.TooltipContentProps['side'] || 'top'}\n align={(side?.includes('-') ? (side.split('-')[1] === 'left' ? 'start' : 'end') : 'center') satisfies 'start' | 'end' | 'center'}\n sideOffset={4}\n className={tooltip({ side, className: classNames?.content })}\n style={contentStyle}\n >\n {typeof message === \"string\" ? (\n <Text>{message}</Text>\n ) : (\n message\n )}\n {showArrow && (\n <TooltipPrimitive.Arrow \n className={clsx(styles.arrow, classNames?.arrow)} \n width={12} \n height={6} \n />\n )}\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n </TooltipPrimitive.Root>\n </TooltipPrimitive.Provider>\n );\n};\n\nTooltip.displayName = 'Tooltip';\n\nexport const TooltipProvider = TooltipPrimitive.Provider;\n"],"names":["cva","styles","_jsx","TooltipPrimitive.Provider","_jsxs","TooltipPrimitive.Root","TooltipPrimitive.Trigger","clsx","TooltipPrimitive.Portal","TooltipPrimitive.Content","Text","TooltipPrimitive.Arrow"],"mappings":"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"}
1
+ {"version":3,"file":"tooltip.cjs","sources":["../../../../v1/components/tooltip/tooltip.tsx"],"sourcesContent":["import * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { VariantProps, cva, cx } from 'class-variance-authority';\nimport { CSSProperties, ReactNode, useId, useMemo } from 'react';\nimport { useMouse } from '~/v1/hooks';\nimport { Text } from '../text';\nimport styles from './tooltip.module.css';\nimport { getTransformForPlacement } from './utils';\n\nconst tooltip = cva(styles.content, {\n variants: {\n side: {\n top: styles['side-top'],\n right: styles['side-right'],\n bottom: styles['side-bottom'],\n left: styles['side-left'],\n 'top-left': styles['side-top-left'],\n 'top-right': styles['side-top-right'],\n 'bottom-left': styles['side-bottom-left'],\n 'bottom-right': styles['side-bottom-right']\n }\n },\n defaultVariants: {\n side: 'top'\n }\n});\n\ninterface TooltipProps extends VariantProps<typeof tooltip> {\n disabled?: boolean;\n children: ReactNode;\n message: ReactNode;\n classNames?: {\n trigger?: string;\n content?: string;\n arrow?: string;\n };\n triggerStyle?: CSSProperties;\n contentStyle?: CSSProperties;\n delayDuration?: number;\n skipDelayDuration?: number;\n 'aria-label'?: string;\n asChild?: boolean;\n id?: string;\n showArrow?: boolean;\n followCursor?: boolean;\n sideOffset?: number;\n alignOffset?: number;\n}\ntype TooltipSide = NonNullable<TooltipPrimitive.TooltipContentProps['side']>;\ntype TooltipAlign = NonNullable<TooltipPrimitive.TooltipContentProps['align']>;\n\nexport const Tooltip = ({\n children,\n message,\n disabled,\n side = 'top',\n classNames,\n triggerStyle,\n contentStyle,\n delayDuration = 200,\n skipDelayDuration = 200,\n 'aria-label': ariaLabel,\n asChild = true,\n showArrow = true,\n id,\n followCursor = false,\n sideOffset = 4,\n alignOffset = 0\n}: TooltipProps) => {\n const generatedId = useId();\n const tooltipId = id ?? generatedId;\n const {\n ref,\n value: mouseValue,\n reset\n } = useMouse<HTMLDivElement>({\n resetOnExit: false,\n enabled: followCursor\n });\n\n const computedSide = useMemo(\n () => (side?.split('-')[0] || 'top') as TooltipSide,\n [side]\n );\n const computedAlign = useMemo(\n () =>\n (side?.includes('-')\n ? side.split('-')[1] === 'left'\n ? 'start'\n : 'end'\n : 'center') as TooltipAlign,\n [side]\n );\n\n if (disabled) return children;\n\n return (\n <TooltipPrimitive.Provider\n delayDuration={delayDuration}\n skipDelayDuration={skipDelayDuration}\n >\n <TooltipPrimitive.Root>\n <TooltipPrimitive.Trigger\n aria-describedby={tooltipId}\n asChild={asChild}\n onFocus={followCursor ? reset : undefined}\n >\n <div\n ref={ref}\n className={cx(styles.trigger, classNames?.trigger)}\n style={triggerStyle}\n >\n {children}\n </div>\n </TooltipPrimitive.Trigger>\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n id={tooltipId}\n role='tooltip'\n aria-label={\n ariaLabel || (typeof message === 'string' ? message : undefined)\n }\n side={computedSide}\n align={computedAlign}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={tooltip({ side, className: classNames?.content })}\n data-follow-cursor={followCursor}\n style={{\n ...contentStyle,\n pointerEvents: followCursor ? 'none' : undefined,\n transform:\n followCursor && mouseValue\n ? getTransformForPlacement(\n computedSide,\n computedAlign,\n mouseValue\n )\n : undefined\n }}\n >\n {typeof message === 'string' ? <Text>{message}</Text> : message}\n {showArrow && (\n <TooltipPrimitive.Arrow\n className={cx(styles.arrow, classNames?.arrow)}\n width={7}\n height={7}\n />\n )}\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n </TooltipPrimitive.Root>\n </TooltipPrimitive.Provider>\n );\n};\n\nTooltip.displayName = 'Tooltip';\n\nexport const TooltipProvider = TooltipPrimitive.Provider;\n"],"names":["cva","styles","useId","useMouse","useMemo","_jsx","TooltipPrimitive.Provider","_jsxs","TooltipPrimitive.Root","TooltipPrimitive.Trigger","cx","TooltipPrimitive.Portal","TooltipPrimitive.Content","getTransformForPlacement","Text","TooltipPrimitive.Arrow"],"mappings":"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"}