@incognia/cosmik 1.0.11 → 1.1.1

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 (198) hide show
  1. package/dist/Tabs/index.d.ts +5 -1
  2. package/dist/Tabs/index.d.ts.map +1 -1
  3. package/dist/cosmik.css +3 -1
  4. package/dist/index.cjs +1 -2
  5. package/dist/index.js +36 -179
  6. package/dist/index10.cjs +2 -2
  7. package/dist/index10.cjs.map +1 -1
  8. package/dist/index10.js +70 -193
  9. package/dist/index10.js.map +1 -1
  10. package/dist/index11.cjs +2 -2
  11. package/dist/index11.cjs.map +1 -1
  12. package/dist/index11.js +97 -139
  13. package/dist/index11.js.map +1 -1
  14. package/dist/index12.cjs +2 -2
  15. package/dist/index12.cjs.map +1 -1
  16. package/dist/index12.js +57 -229
  17. package/dist/index12.js.map +1 -1
  18. package/dist/index13.cjs +2 -2
  19. package/dist/index13.cjs.map +1 -1
  20. package/dist/index13.js +22 -119
  21. package/dist/index13.js.map +1 -1
  22. package/dist/index14.cjs +2 -2
  23. package/dist/index14.cjs.map +1 -1
  24. package/dist/index14.js +89 -25
  25. package/dist/index14.js.map +1 -1
  26. package/dist/index15.cjs +2 -2
  27. package/dist/index15.cjs.map +1 -1
  28. package/dist/index15.js +89 -26
  29. package/dist/index15.js.map +1 -1
  30. package/dist/index16.cjs +2 -2
  31. package/dist/index16.cjs.map +1 -1
  32. package/dist/index16.js +125 -23
  33. package/dist/index16.js.map +1 -1
  34. package/dist/index17.cjs +2 -2
  35. package/dist/index17.cjs.map +1 -1
  36. package/dist/index17.js +37 -60
  37. package/dist/index17.js.map +1 -1
  38. package/dist/index18.cjs +2 -2
  39. package/dist/index18.cjs.map +1 -1
  40. package/dist/index18.js +75 -22
  41. package/dist/index18.js.map +1 -1
  42. package/dist/index19.cjs +2 -2
  43. package/dist/index19.cjs.map +1 -1
  44. package/dist/index19.js +68 -108
  45. package/dist/index19.js.map +1 -1
  46. package/dist/index2.cjs +1 -0
  47. package/dist/index20.cjs +2 -2
  48. package/dist/index20.cjs.map +1 -1
  49. package/dist/index20.js +28 -45
  50. package/dist/index20.js.map +1 -1
  51. package/dist/index21.cjs +2 -2
  52. package/dist/index21.cjs.map +1 -1
  53. package/dist/index21.js +15 -31
  54. package/dist/index21.js.map +1 -1
  55. package/dist/index22.cjs +2 -2
  56. package/dist/index22.cjs.map +1 -1
  57. package/dist/index22.js +16 -46
  58. package/dist/index22.js.map +1 -1
  59. package/dist/index23.cjs +2 -2
  60. package/dist/index23.cjs.map +1 -1
  61. package/dist/index23.js +51 -186
  62. package/dist/index23.js.map +1 -1
  63. package/dist/index24.cjs +2 -2
  64. package/dist/index24.cjs.map +1 -1
  65. package/dist/index24.js +9 -28
  66. package/dist/index24.js.map +1 -1
  67. package/dist/index25.cjs +2 -2
  68. package/dist/index25.cjs.map +1 -1
  69. package/dist/index25.js +24 -132
  70. package/dist/index25.js.map +1 -1
  71. package/dist/index26.cjs +2 -2
  72. package/dist/index26.cjs.map +1 -1
  73. package/dist/index26.js +68 -17
  74. package/dist/index26.js.map +1 -1
  75. package/dist/index27.cjs +2 -2
  76. package/dist/index27.cjs.map +1 -1
  77. package/dist/index27.js +22 -36
  78. package/dist/index27.js.map +1 -1
  79. package/dist/index28.cjs +2 -2
  80. package/dist/index28.cjs.map +1 -1
  81. package/dist/index28.js +29 -33
  82. package/dist/index28.js.map +1 -1
  83. package/dist/index29.cjs +2 -2
  84. package/dist/index29.cjs.map +1 -1
  85. package/dist/index29.js +89 -127
  86. package/dist/index29.js.map +1 -1
  87. package/dist/index3.js +16 -85
  88. package/dist/index3.js.map +1 -1
  89. package/dist/index30.cjs +2 -2
  90. package/dist/index30.cjs.map +1 -1
  91. package/dist/index30.js +18 -65
  92. package/dist/index30.js.map +1 -1
  93. package/dist/index31.cjs +2 -2
  94. package/dist/index31.cjs.map +1 -1
  95. package/dist/index31.js +82 -87
  96. package/dist/index31.js.map +1 -1
  97. package/dist/index32.cjs +2 -2
  98. package/dist/index32.cjs.map +1 -1
  99. package/dist/index32.js +12 -23
  100. package/dist/index32.js.map +1 -1
  101. package/dist/index33.cjs +2 -2
  102. package/dist/index33.cjs.map +1 -1
  103. package/dist/index33.js +44 -94
  104. package/dist/index33.js.map +1 -1
  105. package/dist/index34.cjs +2 -2
  106. package/dist/index34.cjs.map +1 -1
  107. package/dist/index34.js +20 -72
  108. package/dist/index34.js.map +1 -1
  109. package/dist/index35.cjs +2 -2
  110. package/dist/index35.cjs.map +1 -1
  111. package/dist/index35.js +66 -62
  112. package/dist/index35.js.map +1 -1
  113. package/dist/index36.cjs +2 -2
  114. package/dist/index36.cjs.map +1 -1
  115. package/dist/index36.js +59 -161
  116. package/dist/index36.js.map +1 -1
  117. package/dist/index37.cjs +2 -2
  118. package/dist/index37.cjs.map +1 -1
  119. package/dist/index37.js +73 -6
  120. package/dist/index37.js.map +1 -1
  121. package/dist/index38.cjs +2 -2
  122. package/dist/index38.cjs.map +1 -1
  123. package/dist/index38.js +15 -36
  124. package/dist/index38.js.map +1 -1
  125. package/dist/index39.cjs +2 -2
  126. package/dist/index39.cjs.map +1 -1
  127. package/dist/index39.js +86 -15
  128. package/dist/index39.js.map +1 -1
  129. package/dist/index4.cjs +2 -2
  130. package/dist/index4.cjs.map +1 -1
  131. package/dist/index4.js +34 -159
  132. package/dist/index4.js.map +1 -1
  133. package/dist/index40.cjs +2 -2
  134. package/dist/index40.cjs.map +1 -1
  135. package/dist/index40.js +51 -119
  136. package/dist/index40.js.map +1 -1
  137. package/dist/index41.cjs +2 -2
  138. package/dist/index41.cjs.map +1 -1
  139. package/dist/index41.js +48 -16
  140. package/dist/index41.js.map +1 -1
  141. package/dist/index42.cjs +2 -2
  142. package/dist/index42.cjs.map +1 -1
  143. package/dist/index42.js +84 -11
  144. package/dist/index42.js.map +1 -1
  145. package/dist/index43.cjs +2 -2
  146. package/dist/index43.cjs.map +1 -1
  147. package/dist/index5.cjs +2 -2
  148. package/dist/index5.cjs.map +1 -1
  149. package/dist/index5.js +1586 -79
  150. package/dist/index5.js.map +1 -1
  151. package/dist/index6.cjs +2 -2
  152. package/dist/index6.cjs.map +1 -1
  153. package/dist/index6.js +15 -164
  154. package/dist/index6.js.map +1 -1
  155. package/dist/index7.cjs +2 -2
  156. package/dist/index7.cjs.map +1 -1
  157. package/dist/index7.js +60 -196
  158. package/dist/index7.js.map +1 -1
  159. package/dist/index8.cjs +2 -2
  160. package/dist/index8.cjs.map +1 -1
  161. package/dist/index8.js +156 -90
  162. package/dist/index8.js.map +1 -1
  163. package/dist/index9.cjs +2 -2
  164. package/dist/index9.cjs.map +1 -1
  165. package/dist/index9.js +92 -40
  166. package/dist/index9.js.map +1 -1
  167. package/package.json +22 -20
  168. package/dist/index.cjs.map +0 -1
  169. package/dist/index.js.map +0 -1
  170. package/dist/index3.cjs +0 -2
  171. package/dist/index3.cjs.map +0 -1
  172. package/dist/index43.js +0 -5
  173. package/dist/index43.js.map +0 -1
  174. package/dist/index44.cjs +0 -2
  175. package/dist/index44.cjs.map +0 -1
  176. package/dist/index44.js +0 -27
  177. package/dist/index44.js.map +0 -1
  178. package/dist/index45.cjs +0 -7
  179. package/dist/index45.cjs.map +0 -1
  180. package/dist/index45.js +0 -239
  181. package/dist/index45.js.map +0 -1
  182. package/dist/index46.cjs +0 -2
  183. package/dist/index46.cjs.map +0 -1
  184. package/dist/index46.js +0 -17
  185. package/dist/index46.js.map +0 -1
  186. package/dist/index47.cjs +0 -2
  187. package/dist/index47.cjs.map +0 -1
  188. package/dist/index47.js +0 -2732
  189. package/dist/index47.js.map +0 -1
  190. package/dist/index48.cjs +0 -2
  191. package/dist/index48.cjs.map +0 -1
  192. package/dist/index48.js +0 -5
  193. package/dist/index48.js.map +0 -1
  194. package/dist/index49.cjs +0 -2
  195. package/dist/index49.cjs.map +0 -1
  196. package/dist/index49.js +0 -5
  197. package/dist/index49.js.map +0 -1
  198. /package/dist/{cosmik-theme.css → src/cosmik-theme.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index17.cjs","sources":["../src/Layout/index.tsx"],"sourcesContent":["import React from 'react'\nimport { cn } from '../lib/utils'\n\ntype LayoutProps = React.HTMLAttributes<HTMLDivElement> & {\n children: React.ReactNode\n className?: string\n}\n\nexport function Layout({\n children,\n className,\n isLoading,\n ...props\n}: LayoutProps & {\n isLoading?: boolean\n}) {\n return (\n <div className={cn('flex h-full', className)} {...props}>\n {isLoading && <LayoutPageLoader />}\n {children}\n </div>\n )\n}\n\nfunction LayoutPageLoader() {\n return (\n <div className=\"fixed inset-0 bg-gray-400 z-60 h-4\">\n <div className=\"bg-chart-purple h-4 rounded-r animate-page-loader\"></div>\n </div>\n )\n}\n\nexport function LayoutSidebar({ className, ...props }: LayoutProps) {\n return (\n <aside\n className={cn(\n 'bg-white flex flex-col shrink-0 border-r border-gray-900/16 sticky h-screen',\n className\n )}\n {...props}\n />\n )\n}\n\nexport function LayoutContent({ className, ...props }: LayoutProps) {\n return <div className={cn('shrink-0', className)} {...props} />\n}\n\nexport function LayoutScrollableContent({ className, ...props }: LayoutProps) {\n return <div className={cn('grow overflow-auto', className)} {...props} />\n}\n\nexport function LayoutMain({ className, ...props }: LayoutProps) {\n return (\n <main\n className={cn(\n 'flex flex-col grow justify-start bg-gray-50 sticky h-screen overflow-hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nexport function LayoutTopbar({ className, ...props }: LayoutProps) {\n return (\n <div\n className={cn('shrink-0 bg-white border-b border-gray-900/16', className)}\n {...props}\n />\n )\n}\n"],"names":["Layout","children","className","isLoading","props","jsxs","cn","LayoutPageLoader","jsx","LayoutSidebar","LayoutContent","LayoutScrollableContent","LayoutMain","LayoutTopbar"],"mappings":"4IAQO,SAASA,EAAO,CACrB,SAAAC,EACA,UAAAC,EACA,UAAAC,EACA,GAAGC,CACL,EAEG,CACD,OACEC,EAAAA,kBAAAA,KAAC,OAAI,UAAWC,EAAAA,GAAG,cAAeJ,CAAS,EAAI,GAAGE,EAC/C,SAAA,CAAAD,2BAAcI,EAAA,EAAiB,EAC/BN,CAAA,EACH,CAEJ,CAEA,SAASM,GAAmB,CAC1B,OACEC,wBAAC,OAAI,UAAU,qCACb,iCAAC,MAAA,CAAI,UAAU,oDAAoD,CAAA,CACrE,CAEJ,CAEO,SAASC,EAAc,CAAE,UAAAP,EAAW,GAAGE,GAAsB,CAClE,OACEI,EAAAA,kBAAAA,IAAC,QAAA,CACC,UAAWF,EAAAA,GACT,8EACAJ,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEO,SAASM,EAAc,CAAE,UAAAR,EAAW,GAAGE,GAAsB,CAClE,OAAOI,EAAAA,kBAAAA,IAAC,OAAI,UAAWF,EAAAA,GAAG,WAAYJ,CAAS,EAAI,GAAGE,EAAO,CAC/D,CAEO,SAASO,EAAwB,CAAE,UAAAT,EAAW,GAAGE,GAAsB,CAC5E,OAAOI,EAAAA,kBAAAA,IAAC,OAAI,UAAWF,EAAAA,GAAG,qBAAsBJ,CAAS,EAAI,GAAGE,EAAO,CACzE,CAEO,SAASQ,EAAW,CAAE,UAAAV,EAAW,GAAGE,GAAsB,CAC/D,OACEI,EAAAA,kBAAAA,IAAC,OAAA,CACC,UAAWF,EAAAA,GACT,8EACAJ,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEO,SAASS,EAAa,CAAE,UAAAX,EAAW,GAAGE,GAAsB,CACjE,OACEI,EAAAA,kBAAAA,IAAC,MAAA,CACC,UAAWF,EAAAA,GAAG,gDAAiDJ,CAAS,EACvE,GAAGE,CAAA,CAAA,CAGV"}
1
+ {"version":3,"file":"index17.cjs","names":[],"sources":["../src/DropdownMenu/index.tsx"],"sourcesContent":["'use client'\n\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nfunction DropdownMenu({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return (\n <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n )\n}\n\nfunction DropdownMenuTrigger({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return (\n <DropdownMenuPrimitive.Trigger\n data-slot=\"dropdown-menu-trigger\"\n {...props}\n />\n )\n}\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n 'bg-white text-gray-900 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded border border-gray-900/8 shadow-200',\n className\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return (\n <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n )\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-gray-200 focus:text-gray-900 data-[variant=destructive]:text-magenta-700 data-[variant=destructive]:focus:bg-magenta-100 data-[variant=destructive]:focus:text-magenta-700 data-[variant=destructive]:*:[svg]:!text-magenta-700 [&_svg:not([class*='text-'])]:text-gray-700 relative flex cursor-default items-center gap-8 rounded px-16 py-8 text-base outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 data-[inset]:pl-32 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-16\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"focus:bg-gray-200 focus:text-gray-900 relative flex cursor-default items-center gap-8 rounded py-8 pr-4 pl-32 text-base outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-16\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-8 flex size-[14px] items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-16\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return (\n <DropdownMenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n {...props}\n />\n )\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"focus:bg-gray-200 focus:text-gray-900 relative flex cursor-default items-center gap-8 rounded py-8 pr-4 pl-32 text-base outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-16\",\n className\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-8 flex size-[14px] items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-8 fill-gray-900\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn(\n 'px-16 py-8 text-base font-semibold data-[inset]:pl-32',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return (\n <DropdownMenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn('bg-gray-900/8 h-px', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuShortcut({\n className,\n ...props\n}: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn('ml-auto text-sm tracking-widest opacity-40', className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSub({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'focus:bg-gray-200 focus:text-gray-900 data-[state=open]:bg-gray-200 data-[state=open]:text-gray-900 flex cursor-default items-center rounded px-16 py-8 text-base outline-none select-none data-[inset]:pl-32',\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-16\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n 'bg-white text-gray-900 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-48 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded border border-gray-900/8 p-4 shadow-200',\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger\n}\n"],"mappings":"wOAOA,SAAS,EAAa,CACpB,GAAG,GACuD,CAC1D,OAAO,EAAA,EAAA,KAAC,EAAsB,KAAvB,CAA4B,YAAU,gBAAgB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAS,EAAmB,CAC1B,GAAG,GACyD,CAC5D,OACE,EAAA,EAAA,KAAC,EAAsB,OAAvB,CAA8B,YAAU,uBAAuB,GAAI,CAAQ,CAAA,CAE/E,CAEA,SAAS,EAAoB,CAC3B,GAAG,GAC0D,CAC7D,OACE,EAAA,EAAA,KAAC,EAAsB,QAAvB,CACE,YAAU,wBACV,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAoB,CAC3B,YACA,aAAa,EACb,GAAG,GAC0D,CAC7D,OACE,EAAA,EAAA,KAAC,EAAsB,OAAvB,CAAA,UACE,EAAA,EAAA,KAAC,EAAsB,QAAvB,CACE,YAAU,wBACE,aACZ,UAAW,EAAA,GACT,yjBACA,CACF,EACA,GAAI,CACL,CAAA,CAC2B,CAAA,CAElC,CAEA,SAAS,EAAkB,CACzB,GAAG,GACwD,CAC3D,OACE,EAAA,EAAA,KAAC,EAAsB,MAAvB,CAA6B,YAAU,sBAAsB,GAAI,CAAQ,CAAA,CAE7E,CAEA,SAAS,EAAiB,CACxB,YACA,QACA,UAAU,UACV,GAAG,GAIF,CACD,OACE,EAAA,EAAA,KAAC,EAAsB,KAAvB,CACE,YAAU,qBACV,aAAY,EACZ,eAAc,EACd,UAAW,EAAA,GACT,kiBACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAyB,CAChC,YACA,WACA,UACA,GAAG,GAC+D,CAClE,OACE,EAAA,EAAA,MAAC,EAAsB,aAAvB,CACE,YAAU,8BACV,UAAW,EAAA,GACT,qSACA,CACF,EACS,UACT,GAAI,WAPN,EASE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,6FACd,EAAA,EAAA,KAAC,EAAsB,cAAvB,CAAA,UACE,EAAA,EAAA,KAAC,EAAA,UAAD,CAAW,UAAU,SAAW,CAAA,CACG,CAAA,CACjC,CAAA,EACL,CACiC,GAExC,CAEA,SAAS,EAAuB,CAC9B,GAAG,GAC6D,CAChE,OACE,EAAA,EAAA,KAAC,EAAsB,WAAvB,CACE,YAAU,4BACV,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAsB,CAC7B,YACA,WACA,GAAG,GAC4D,CAC/D,OACE,EAAA,EAAA,MAAC,EAAsB,UAAvB,CACE,YAAU,2BACV,UAAW,EAAA,GACT,qSACA,CACF,EACA,GAAI,WANN,EAQE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,6FACd,EAAA,EAAA,KAAC,EAAsB,cAAvB,CAAA,UACE,EAAA,EAAA,KAAC,EAAA,WAAD,CAAY,UAAU,sBAAwB,CAAA,CACX,CAAA,CACjC,CAAA,EACL,CAC8B,GAErC,CAEA,SAAS,EAAkB,CACzB,YACA,QACA,GAAG,GAGF,CACD,OACE,EAAA,EAAA,KAAC,EAAsB,MAAvB,CACE,YAAU,sBACV,aAAY,EACZ,UAAW,EAAA,GACT,wDACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAsB,CAC7B,YACA,GAAG,GAC4D,CAC/D,OACE,EAAA,EAAA,KAAC,EAAsB,UAAvB,CACE,YAAU,0BACV,UAAW,EAAA,GAAG,qBAAsB,CAAS,EAC7C,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAqB,CAC5B,YACA,GAAG,GAC4B,CAC/B,OACE,EAAA,EAAA,KAAC,OAAD,CACE,YAAU,yBACV,UAAW,EAAA,GAAG,6CAA8C,CAAS,EACrE,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAgB,CACvB,GAAG,GACsD,CACzD,OAAO,EAAA,EAAA,KAAC,EAAsB,IAAvB,CAA2B,YAAU,oBAAoB,GAAI,CAAQ,CAAA,CAC9E,CAEA,SAAS,EAAuB,CAC9B,YACA,QACA,WACA,GAAG,GAGF,CACD,OACE,EAAA,EAAA,MAAC,EAAsB,WAAvB,CACE,YAAU,4BACV,aAAY,EACZ,UAAW,EAAA,GACT,gNACA,CACF,EACA,GAAI,WAPN,CASG,GACD,EAAA,EAAA,KAAC,EAAA,iBAAD,CAAkB,UAAU,iBAAmB,CAAA,CACf,GAEtC,CAEA,SAAS,EAAuB,CAC9B,YACA,GAAG,GAC6D,CAChE,OACE,EAAA,EAAA,KAAC,EAAsB,WAAvB,CACE,YAAU,4BACV,UAAW,EAAA,GACT,ofACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
package/dist/index17.js CHANGED
@@ -1,64 +1,41 @@
1
- import { j as a } from "./index37.js";
2
- import { cn as t } from "./index39.js";
3
- function c({
4
- children: r,
5
- className: e,
6
- isLoading: n,
7
- ...o
8
- }) {
9
- return /* @__PURE__ */ a.jsxs("div", { className: t("flex h-full", e), ...o, children: [
10
- n && /* @__PURE__ */ a.jsx(s, {}),
11
- r
12
- ] });
1
+ "use client";
2
+ import { cn as e } from "./index6.js";
3
+ import "react";
4
+ import { jsx as t } from "react/jsx-runtime";
5
+ import * as n from "@radix-ui/react-popover";
6
+ //#region src/Popover/index.tsx
7
+ function r({ ...e }) {
8
+ return /* @__PURE__ */ t(n.Root, {
9
+ "data-slot": "popover",
10
+ ...e
11
+ });
13
12
  }
14
- function s() {
15
- return /* @__PURE__ */ a.jsx("div", { className: "fixed inset-0 bg-gray-400 z-60 h-4", children: /* @__PURE__ */ a.jsx("div", { className: "bg-chart-purple h-4 rounded-r animate-page-loader" }) });
13
+ function i({ ...e }) {
14
+ return /* @__PURE__ */ t(n.Trigger, {
15
+ "data-slot": "popover-trigger",
16
+ ...e
17
+ });
16
18
  }
17
- function l({ className: r, ...e }) {
18
- return /* @__PURE__ */ a.jsx(
19
- "aside",
20
- {
21
- className: t(
22
- "bg-white flex flex-col shrink-0 border-r border-gray-900/16 sticky h-screen",
23
- r
24
- ),
25
- ...e
26
- }
27
- );
19
+ function a({ className: r, align: i = "center", sideOffset: a = 4, portalled: o = !0, container: s, ...c }) {
20
+ let l = /* @__PURE__ */ t(n.Content, {
21
+ "data-slot": "popover-content",
22
+ align: i,
23
+ sideOffset: a,
24
+ className: e("bg-white text-gray-800 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-[288px] origin-(--radix-popover-content-transform-origin) rounded border border-gray-900/8 p-16 shadow-200 outline-hidden", r),
25
+ ...c
26
+ });
27
+ return o ? /* @__PURE__ */ t(n.Portal, {
28
+ container: s,
29
+ children: l
30
+ }) : l;
28
31
  }
29
- function d({ className: r, ...e }) {
30
- return /* @__PURE__ */ a.jsx("div", { className: t("shrink-0", r), ...e });
32
+ function o({ ...e }) {
33
+ return /* @__PURE__ */ t(n.Anchor, {
34
+ "data-slot": "popover-anchor",
35
+ ...e
36
+ });
31
37
  }
32
- function f({ className: r, ...e }) {
33
- return /* @__PURE__ */ a.jsx("div", { className: t("grow overflow-auto", r), ...e });
34
- }
35
- function x({ className: r, ...e }) {
36
- return /* @__PURE__ */ a.jsx(
37
- "main",
38
- {
39
- className: t(
40
- "flex flex-col grow justify-start bg-gray-50 sticky h-screen overflow-hidden",
41
- r
42
- ),
43
- ...e
44
- }
45
- );
46
- }
47
- function m({ className: r, ...e }) {
48
- return /* @__PURE__ */ a.jsx(
49
- "div",
50
- {
51
- className: t("shrink-0 bg-white border-b border-gray-900/16", r),
52
- ...e
53
- }
54
- );
55
- }
56
- export {
57
- c as Layout,
58
- d as LayoutContent,
59
- x as LayoutMain,
60
- f as LayoutScrollableContent,
61
- l as LayoutSidebar,
62
- m as LayoutTopbar
63
- };
64
- //# sourceMappingURL=index17.js.map
38
+ //#endregion
39
+ export { r as Popover, o as PopoverAnchor, a as PopoverContent, i as PopoverTrigger };
40
+
41
+ //# sourceMappingURL=index17.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index17.js","sources":["../src/Layout/index.tsx"],"sourcesContent":["import React from 'react'\nimport { cn } from '../lib/utils'\n\ntype LayoutProps = React.HTMLAttributes<HTMLDivElement> & {\n children: React.ReactNode\n className?: string\n}\n\nexport function Layout({\n children,\n className,\n isLoading,\n ...props\n}: LayoutProps & {\n isLoading?: boolean\n}) {\n return (\n <div className={cn('flex h-full', className)} {...props}>\n {isLoading && <LayoutPageLoader />}\n {children}\n </div>\n )\n}\n\nfunction LayoutPageLoader() {\n return (\n <div className=\"fixed inset-0 bg-gray-400 z-60 h-4\">\n <div className=\"bg-chart-purple h-4 rounded-r animate-page-loader\"></div>\n </div>\n )\n}\n\nexport function LayoutSidebar({ className, ...props }: LayoutProps) {\n return (\n <aside\n className={cn(\n 'bg-white flex flex-col shrink-0 border-r border-gray-900/16 sticky h-screen',\n className\n )}\n {...props}\n />\n )\n}\n\nexport function LayoutContent({ className, ...props }: LayoutProps) {\n return <div className={cn('shrink-0', className)} {...props} />\n}\n\nexport function LayoutScrollableContent({ className, ...props }: LayoutProps) {\n return <div className={cn('grow overflow-auto', className)} {...props} />\n}\n\nexport function LayoutMain({ className, ...props }: LayoutProps) {\n return (\n <main\n className={cn(\n 'flex flex-col grow justify-start bg-gray-50 sticky h-screen overflow-hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nexport function LayoutTopbar({ className, ...props }: LayoutProps) {\n return (\n <div\n className={cn('shrink-0 bg-white border-b border-gray-900/16', className)}\n {...props}\n />\n )\n}\n"],"names":["Layout","children","className","isLoading","props","jsxs","cn","LayoutPageLoader","jsx","LayoutSidebar","LayoutContent","LayoutScrollableContent","LayoutMain","LayoutTopbar"],"mappings":";;AAQO,SAASA,EAAO;AAAA,EACrB,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,GAAGC;AACL,GAEG;AACD,SACEC,gBAAAA,EAAAA,KAAC,SAAI,WAAWC,EAAG,eAAeJ,CAAS,GAAI,GAAGE,GAC/C,UAAA;AAAA,IAAAD,2BAAcI,GAAA,EAAiB;AAAA,IAC/BN;AAAA,EAAA,GACH;AAEJ;AAEA,SAASM,IAAmB;AAC1B,SACEC,gBAAAA,MAAC,SAAI,WAAU,sCACb,gCAAC,OAAA,EAAI,WAAU,qDAAoD,EAAA,CACrE;AAEJ;AAEO,SAASC,EAAc,EAAE,WAAAP,GAAW,GAAGE,KAAsB;AAClE,SACEI,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWF;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEO,SAASM,EAAc,EAAE,WAAAR,GAAW,GAAGE,KAAsB;AAClE,SAAOI,gBAAAA,EAAAA,IAAC,SAAI,WAAWF,EAAG,YAAYJ,CAAS,GAAI,GAAGE,GAAO;AAC/D;AAEO,SAASO,EAAwB,EAAE,WAAAT,GAAW,GAAGE,KAAsB;AAC5E,SAAOI,gBAAAA,EAAAA,IAAC,SAAI,WAAWF,EAAG,sBAAsBJ,CAAS,GAAI,GAAGE,GAAO;AACzE;AAEO,SAASQ,EAAW,EAAE,WAAAV,GAAW,GAAGE,KAAsB;AAC/D,SACEI,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWF;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEO,SAASS,EAAa,EAAE,WAAAX,GAAW,GAAGE,KAAsB;AACjE,SACEI,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWF,EAAG,iDAAiDJ,CAAS;AAAA,MACvE,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;"}
1
+ {"version":3,"file":"index17.js","names":[],"sources":["../src/Popover/index.tsx"],"sourcesContent":["'use client'\n\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nfunction Popover({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\nfunction PopoverTrigger({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\nfunction PopoverContent({\n className,\n align = 'center',\n sideOffset = 4,\n portalled = true,\n container,\n ...props\n}: PopoverContentProps) {\n const content = (\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-white text-gray-800 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-[288px] origin-(--radix-popover-content-transform-origin) rounded border border-gray-900/8 p-16 shadow-200 outline-hidden',\n className\n )}\n {...props}\n />\n )\n\n if (!portalled) return content\n\n return (\n <PopoverPrimitive.Portal container={container}>\n {content}\n </PopoverPrimitive.Portal>\n )\n}\n\nfunction PopoverAnchor({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />\n}\n\nexport type PopoverContentProps = React.ComponentProps<\n typeof PopoverPrimitive.Content\n> & {\n portalled?: boolean\n container?: React.ComponentProps<typeof PopoverPrimitive.Portal>['container']\n}\n\nexport { Popover, PopoverAnchor, PopoverContent, PopoverTrigger }\n"],"mappings":";;;;;;AAMA,SAAS,EAAQ,EACf,GAAG,KACkD;CACrD,OAAO,kBAAC,EAAiB,MAAlB;EAAuB,aAAU;EAAU,GAAI;CAAQ,CAAA;AAChE;AAEA,SAAS,EAAe,EACtB,GAAG,KACqD;CACxD,OAAO,kBAAC,EAAiB,SAAlB;EAA0B,aAAU;EAAkB,GAAI;CAAQ,CAAA;AAC3E;AAEA,SAAS,EAAe,EACtB,cACA,WAAQ,UACR,gBAAa,GACb,eAAY,IACZ,cACA,GAAG,KACmB;CACtB,IAAM,IACJ,kBAAC,EAAiB,SAAlB;EACE,aAAU;EACH;EACK;EACZ,WAAW,EACT,4eACA,CACF;EACA,GAAI;CACL,CAAA;CAKH,OAFK,IAGH,kBAAC,EAAiB,QAAlB;EAAoC;YACjC;CACsB,CAAA,IALJ;AAOzB;AAEA,SAAS,EAAc,EACrB,GAAG,KACoD;CACvD,OAAO,kBAAC,EAAiB,QAAlB;EAAyB,aAAU;EAAiB,GAAI;CAAQ,CAAA;AACzE"}
package/dist/index18.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index37.cjs"),i=require("./index39.cjs"),s=require("./index41.cjs");function l({className:t}){return e.jsxRuntimeExports.jsx("div",{role:"alert","aria-busy":!0,className:i.cn("flex items-center justify-center",t),children:e.jsxRuntimeExports.jsxs("div",{className:"inline-block relative w-[76px] h-48",children:[e.jsxRuntimeExports.jsx(s.default,{className:"left-8 animate-loading-ellipsis1"}),e.jsxRuntimeExports.jsx(s.default,{className:"left-8 animate-loading-ellipsis2"}),e.jsxRuntimeExports.jsx(s.default,{className:"left-32 animate-loading-ellipsis2"}),e.jsxRuntimeExports.jsx(s.default,{className:"left-[56px] animate-loading-ellipsis3"})]})})}exports.Loading=l;
2
- //# sourceMappingURL=index18.cjs.map
1
+ "use client";const e=require("./index2.cjs"),t=require("./index7.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("react/jsx-runtime"),i=require("@radix-ui/react-popover");i=e.__toESM(i,1);function a({...e}){return(0,r.jsx)(i.Root,{"data-slot":`popover`,...e})}function o({...e}){return(0,r.jsx)(i.Trigger,{"data-slot":`popover-trigger`,...e})}function s({className:e,align:n=`center`,sideOffset:a=4,portalled:o=!0,container:s,...c}){let l=(0,r.jsx)(i.Content,{"data-slot":`popover-content`,align:n,sideOffset:a,className:t.cn(`bg-white text-gray-800 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-[288px] origin-(--radix-popover-content-transform-origin) rounded border border-gray-900/8 p-16 shadow-200 outline-hidden`,e),...c});return o?(0,r.jsx)(i.Portal,{container:s,children:l}):l}function c({...e}){return(0,r.jsx)(i.Anchor,{"data-slot":`popover-anchor`,...e})}exports.Popover=a,exports.PopoverAnchor=c,exports.PopoverContent=s,exports.PopoverTrigger=o;
2
+ //# sourceMappingURL=index18.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index18.cjs","sources":["../src/Loading/index.tsx"],"sourcesContent":["import { cn } from '../lib/utils'\nimport LoadingDot from './LoadingDot'\n\ntype Props = {\n className?: string\n}\n\nexport function Loading({ className }: Props) {\n return (\n <div\n role=\"alert\"\n aria-busy={true}\n className={cn('flex items-center justify-center', className)}\n >\n <div className=\"inline-block relative w-[76px] h-48\">\n <LoadingDot className=\"left-8 animate-loading-ellipsis1\" />\n <LoadingDot className=\"left-8 animate-loading-ellipsis2\" />\n <LoadingDot className=\"left-32 animate-loading-ellipsis2\" />\n <LoadingDot className=\"left-[56px] animate-loading-ellipsis3\" />\n </div>\n </div>\n )\n}\n"],"names":["Loading","className","jsx","cn","jsxs","LoadingDot"],"mappings":"uKAOO,SAASA,EAAQ,CAAE,UAAAC,GAAoB,CAC5C,OACEC,EAAAA,kBAAAA,IAAC,MAAA,CACC,KAAK,QACL,YAAW,GACX,UAAWC,EAAAA,GAAG,mCAAoCF,CAAS,EAE3D,SAAAG,EAAAA,kBAAAA,KAAC,MAAA,CAAI,UAAU,sCACb,SAAA,CAAAF,EAAAA,kBAAAA,IAACG,EAAAA,QAAA,CAAW,UAAU,kCAAA,CAAmC,EACzDH,EAAAA,kBAAAA,IAACG,EAAAA,QAAA,CAAW,UAAU,kCAAA,CAAmC,EACzDH,EAAAA,kBAAAA,IAACG,EAAAA,QAAA,CAAW,UAAU,mCAAA,CAAoC,EAC1DH,EAAAA,kBAAAA,IAACG,EAAAA,QAAA,CAAW,UAAU,uCAAA,CAAwC,CAAA,CAAA,CAChE,CAAA,CAAA,CAGN"}
1
+ {"version":3,"file":"index18.cjs","names":[],"sources":["../src/Popover/index.tsx"],"sourcesContent":["'use client'\n\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport * as React from 'react'\nimport { cn } from '../lib/utils'\n\nfunction Popover({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\nfunction PopoverTrigger({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\nfunction PopoverContent({\n className,\n align = 'center',\n sideOffset = 4,\n portalled = true,\n container,\n ...props\n}: PopoverContentProps) {\n const content = (\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-white text-gray-800 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-[288px] origin-(--radix-popover-content-transform-origin) rounded border border-gray-900/8 p-16 shadow-200 outline-hidden',\n className\n )}\n {...props}\n />\n )\n\n if (!portalled) return content\n\n return (\n <PopoverPrimitive.Portal container={container}>\n {content}\n </PopoverPrimitive.Portal>\n )\n}\n\nfunction PopoverAnchor({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />\n}\n\nexport type PopoverContentProps = React.ComponentProps<\n typeof PopoverPrimitive.Content\n> & {\n portalled?: boolean\n container?: React.ComponentProps<typeof PopoverPrimitive.Portal>['container']\n}\n\nexport { Popover, PopoverAnchor, PopoverContent, PopoverTrigger }\n"],"mappings":"wMAMA,SAAS,EAAQ,CACf,GAAG,GACkD,CACrD,OAAO,EAAA,EAAA,KAAC,EAAiB,KAAlB,CAAuB,YAAU,UAAU,GAAI,CAAQ,CAAA,CAChE,CAEA,SAAS,EAAe,CACtB,GAAG,GACqD,CACxD,OAAO,EAAA,EAAA,KAAC,EAAiB,QAAlB,CAA0B,YAAU,kBAAkB,GAAI,CAAQ,CAAA,CAC3E,CAEA,SAAS,EAAe,CACtB,YACA,QAAQ,SACR,aAAa,EACb,YAAY,GACZ,YACA,GAAG,GACmB,CACtB,IAAM,GACJ,EAAA,EAAA,KAAC,EAAiB,QAAlB,CACE,YAAU,kBACH,QACK,aACZ,UAAW,EAAA,GACT,2eACA,CACF,EACA,GAAI,CACL,CAAA,EAKH,OAFK,GAGH,EAAA,EAAA,KAAC,EAAiB,OAAlB,CAAoC,qBACjC,CACsB,CAAA,EALJ,CAOzB,CAEA,SAAS,EAAc,CACrB,GAAG,GACoD,CACvD,OAAO,EAAA,EAAA,KAAC,EAAiB,OAAlB,CAAyB,YAAU,iBAAiB,GAAI,CAAQ,CAAA,CACzE"}
package/dist/index18.js CHANGED
@@ -1,23 +1,76 @@
1
- import { j as e } from "./index37.js";
2
- import { cn as a } from "./index39.js";
3
- import i from "./index41.js";
4
- function r({ className: s }) {
5
- return /* @__PURE__ */ e.jsx(
6
- "div",
7
- {
8
- role: "alert",
9
- "aria-busy": !0,
10
- className: a("flex items-center justify-center", s),
11
- children: /* @__PURE__ */ e.jsxs("div", { className: "inline-block relative w-[76px] h-48", children: [
12
- /* @__PURE__ */ e.jsx(i, { className: "left-8 animate-loading-ellipsis1" }),
13
- /* @__PURE__ */ e.jsx(i, { className: "left-8 animate-loading-ellipsis2" }),
14
- /* @__PURE__ */ e.jsx(i, { className: "left-32 animate-loading-ellipsis2" }),
15
- /* @__PURE__ */ e.jsx(i, { className: "left-[56px] animate-loading-ellipsis3" })
16
- ] })
17
- }
18
- );
1
+ import { cn as e } from "./index6.js";
2
+ import { Button as t } from "./index8.js";
3
+ import { Popover as n, PopoverContent as r, PopoverTrigger as i } from "./index17.js";
4
+ import { LucideX as a } from "lucide-react";
5
+ import o from "react";
6
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
7
+ //#region src/Filter/index.tsx
8
+ function l({ children: l, label: u, selectedLabel: d, trigger: f, i18n: p, value: m, onOpenChange: h, onApply: g, contentProps: _ = {}, buttonProps: v = {}, clearable: y = !0, ...b }) {
9
+ let [x, S] = o.useState(!1), [C, w] = o.useState(m || null), T = m ? d ? d(m) : m.toString() : u, E = /* @__PURE__ */ c(t, {
10
+ variant: m ? "filled" : "outline",
11
+ intent: m ? "filter" : "secondary",
12
+ size: "sm",
13
+ className: e("font-normal flex items-center whitespace-nowrap gap-x-4 rounded-[12px]", { "pr-12": !!m }),
14
+ ...v,
15
+ children: [T, y && m && /* @__PURE__ */ s(a, {
16
+ className: "w-16 h-16 rounded hover:bg-purple-100 shrink-0",
17
+ onClick: (e) => {
18
+ e.preventDefault(), w(null), g?.(void 0);
19
+ }
20
+ })]
21
+ });
22
+ function D() {
23
+ g?.(C ?? void 0), S(!1);
24
+ }
25
+ return /* @__PURE__ */ c(n, {
26
+ open: x,
27
+ onOpenChange: (e) => {
28
+ h?.(e), e || g?.(C ?? void 0), e && w(m ?? null), S(e);
29
+ },
30
+ ...b,
31
+ children: [/* @__PURE__ */ s(i, {
32
+ asChild: !0,
33
+ children: f || E
34
+ }), /* @__PURE__ */ s(r, {
35
+ className: "w-full min-w-[200px]",
36
+ align: "start",
37
+ ..._,
38
+ children: /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("div", {
39
+ onKeyDown: (e) => {
40
+ if (e.defaultPrevented || e.key !== "Enter") return;
41
+ let t = e.target;
42
+ if (!t) return;
43
+ let n = t.tagName, r = n === "INPUT", i = n === "TEXTAREA", a = n === "BUTTON", o = t.isContentEditable;
44
+ !r || i || a || o || (e.preventDefault(), e.stopPropagation(), D());
45
+ },
46
+ children: l({
47
+ onFilterChange: w,
48
+ filterValue: C
49
+ })
50
+ }), /* @__PURE__ */ c("div", {
51
+ className: "w-full flex justify-between mt-16",
52
+ children: [y && C && p.clear && /* @__PURE__ */ s(t, {
53
+ variant: "link",
54
+ intent: "secondary",
55
+ size: "fit-content",
56
+ type: "button",
57
+ onClick: () => w(null),
58
+ children: p.clear
59
+ }), p.apply && /* @__PURE__ */ s(t, {
60
+ className: "ml-auto",
61
+ variant: "link",
62
+ size: "fit-content",
63
+ type: "button",
64
+ onClick: (e) => {
65
+ e.preventDefault(), D();
66
+ },
67
+ children: p.apply
68
+ })]
69
+ })] })
70
+ })]
71
+ });
19
72
  }
20
- export {
21
- r as Loading
22
- };
23
- //# sourceMappingURL=index18.js.map
73
+ //#endregion
74
+ export { l as Filter };
75
+
76
+ //# sourceMappingURL=index18.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index18.js","sources":["../src/Loading/index.tsx"],"sourcesContent":["import { cn } from '../lib/utils'\nimport LoadingDot from './LoadingDot'\n\ntype Props = {\n className?: string\n}\n\nexport function Loading({ className }: Props) {\n return (\n <div\n role=\"alert\"\n aria-busy={true}\n className={cn('flex items-center justify-center', className)}\n >\n <div className=\"inline-block relative w-[76px] h-48\">\n <LoadingDot className=\"left-8 animate-loading-ellipsis1\" />\n <LoadingDot className=\"left-8 animate-loading-ellipsis2\" />\n <LoadingDot className=\"left-32 animate-loading-ellipsis2\" />\n <LoadingDot className=\"left-[56px] animate-loading-ellipsis3\" />\n </div>\n </div>\n )\n}\n"],"names":["Loading","className","jsx","cn","jsxs","LoadingDot"],"mappings":";;;AAOO,SAASA,EAAQ,EAAE,WAAAC,KAAoB;AAC5C,SACEC,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAW;AAAA,MACX,WAAWC,EAAG,oCAAoCF,CAAS;AAAA,MAE3D,UAAAG,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,uCACb,UAAA;AAAA,QAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAW,WAAU,mCAAA,CAAmC;AAAA,QACzDH,gBAAAA,EAAAA,IAACG,GAAA,EAAW,WAAU,mCAAA,CAAmC;AAAA,QACzDH,gBAAAA,EAAAA,IAACG,GAAA,EAAW,WAAU,oCAAA,CAAoC;AAAA,QAC1DH,gBAAAA,EAAAA,IAACG,GAAA,EAAW,WAAU,wCAAA,CAAwC;AAAA,MAAA,EAAA,CAChE;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"index18.js","names":[],"sources":["../src/Filter/index.tsx"],"sourcesContent":["import { LucideX } from 'lucide-react'\nimport React from 'react'\nimport { Button, ButtonProps } from '../Button'\nimport {\n Popover,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger\n} from '../Popover'\nimport { cn } from '../lib/utils'\n\ntype FilterPropsBase<T> = {\n i18n: {\n apply?: string\n clear?: string\n }\n value?: T\n onOpenChange?: (open: boolean) => void\n onApply: (value?: T) => void\n children: (props: {\n onFilterChange: (value: T | null) => void\n filterValue: T | null\n }) => React.ReactNode\n contentProps?: PopoverContentProps\n buttonProps?: ButtonProps\n clearable?: boolean\n}\n\ntype FilterPropsWithLabel<T> = FilterPropsBase<T> & {\n label: string\n selectedLabel?: (value: T) => React.ReactNode\n trigger?: never\n}\n\ntype FilterPropsWithTrigger<T> = FilterPropsBase<T> & {\n trigger: React.ReactNode\n label?: never\n selectedLabel?: never\n}\n\ntype FilterProps<T> = FilterPropsWithLabel<T> | FilterPropsWithTrigger<T>\n\nfunction Filter<T>({\n children,\n label,\n selectedLabel,\n trigger,\n i18n,\n value,\n onOpenChange,\n onApply,\n contentProps = {},\n buttonProps = {},\n clearable = true,\n ...props\n}: FilterProps<T>) {\n const [isOpen, setIsOpen] = React.useState(false)\n const [localValue, setLocalValue] = React.useState<T | null>(value || null)\n\n const filterLabel = value\n ? selectedLabel\n ? selectedLabel(value)\n : value.toString()\n : label\n\n const defaultTrigger = (\n <Button\n variant={value ? 'filled' : 'outline'}\n intent={value ? 'filter' : 'secondary'}\n size=\"sm\"\n className={cn(\n 'font-normal flex items-center whitespace-nowrap gap-x-4 rounded-[12px]',\n {\n 'pr-12': !!value\n }\n )}\n {...buttonProps}\n >\n {filterLabel}\n {clearable && value && (\n <LucideX\n className=\"w-16 h-16 rounded hover:bg-purple-100 shrink-0\"\n onClick={e => {\n e.preventDefault()\n setLocalValue(null)\n onApply?.(undefined)\n }}\n />\n )}\n </Button>\n )\n\n function handleApply() {\n onApply?.(localValue ?? undefined)\n setIsOpen(false)\n }\n\n return (\n <Popover\n open={isOpen}\n onOpenChange={open => {\n onOpenChange?.(open)\n if (!open) onApply?.(localValue ?? undefined)\n if (open) setLocalValue(value ?? null)\n setIsOpen(open)\n }}\n {...props}\n >\n <PopoverTrigger asChild>{trigger || defaultTrigger}</PopoverTrigger>\n <PopoverContent\n className=\"w-full min-w-[200px]\"\n align=\"start\"\n {...contentProps}\n >\n <div>\n <div\n onKeyDown={e => {\n if (e.defaultPrevented) return\n if (e.key !== 'Enter') return\n const target = e.target as HTMLElement | null\n if (!target) return\n const tagName = target.tagName\n const isInput = tagName === 'INPUT'\n const isTextarea = tagName === 'TEXTAREA'\n const isButton = tagName === 'BUTTON'\n const isContentEditable = target.isContentEditable\n // Only apply on Enter from filter input fields, not from buttons,\n // textareas, or other interactive/contenteditable elements.\n if (!isInput || isTextarea || isButton || isContentEditable) {\n return\n }\n e.preventDefault()\n e.stopPropagation()\n handleApply()\n }}\n >\n {children({\n onFilterChange: setLocalValue,\n filterValue: localValue\n })}\n </div>\n <div className=\"w-full flex justify-between mt-16\">\n {clearable && localValue && i18n.clear && (\n <Button\n variant=\"link\"\n intent=\"secondary\"\n size=\"fit-content\"\n type=\"button\"\n onClick={() => setLocalValue(null)}\n >\n {i18n.clear}\n </Button>\n )}\n {i18n.apply && (\n <Button\n className=\"ml-auto\"\n variant=\"link\"\n size=\"fit-content\"\n type=\"button\"\n onClick={e => {\n e.preventDefault()\n handleApply()\n }}\n >\n {i18n.apply}\n </Button>\n )}\n </div>\n </div>\n </PopoverContent>\n </Popover>\n )\n}\n\nexport { Filter }\nexport type { FilterProps }\n"],"mappings":";;;;;;;AA0CA,SAAS,EAAU,EACjB,aACA,UACA,kBACA,YACA,SACA,UACA,iBACA,YACA,kBAAe,CAAC,GAChB,iBAAc,CAAC,GACf,eAAY,IACZ,GAAG,KACc;CACjB,IAAM,CAAC,GAAQ,KAAa,EAAM,SAAS,EAAK,GAC1C,CAAC,GAAY,KAAiB,EAAM,SAAmB,KAAS,IAAI,GAEpE,IAAc,IAChB,IACE,EAAc,CAAK,IACnB,EAAM,SAAS,IACjB,GAEE,IACJ,kBAAC,GAAD;EACE,SAAS,IAAQ,WAAW;EAC5B,QAAQ,IAAQ,WAAW;EAC3B,MAAK;EACL,WAAW,EACT,0EACA,EACE,SAAS,CAAC,CAAC,EACb,CACF;EACA,GAAI;YAVN,CAYG,GACA,KAAa,KACZ,kBAAC,GAAD;GACE,WAAU;GACV,UAAS,MAAK;IAGZ,AAFA,EAAE,eAAe,GACjB,EAAc,IAAI,GAClB,IAAU,KAAA,CAAS;GACrB;EACD,CAAA,CAEG;;CAGV,SAAS,IAAc;EAErB,AADA,IAAU,KAAc,KAAA,CAAS,GACjC,EAAU,EAAK;CACjB;CAEA,OACE,kBAAC,GAAD;EACE,MAAM;EACN,eAAc,MAAQ;GAIpB,AAHA,IAAe,CAAI,GACd,KAAM,IAAU,KAAc,KAAA,CAAS,GACxC,KAAM,EAAc,KAAS,IAAI,GACrC,EAAU,CAAI;EAChB;EACA,GAAI;YARN,CAUE,kBAAC,GAAD;GAAgB,SAAA;aAAS,KAAW;EAA+B,CAAA,GACnE,kBAAC,GAAD;GACE,WAAU;GACV,OAAM;GACN,GAAI;aAEJ,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,OAAD;IACE,YAAW,MAAK;KAEd,IADI,EAAE,oBACF,EAAE,QAAQ,SAAS;KACvB,IAAM,IAAS,EAAE;KACjB,IAAI,CAAC,GAAQ;KACb,IAAM,IAAU,EAAO,SACjB,IAAU,MAAY,SACtB,IAAa,MAAY,YACzB,IAAW,MAAY,UACvB,IAAoB,EAAO;KAG7B,CAAC,KAAW,KAAc,KAAY,MAG1C,EAAE,eAAe,GACjB,EAAE,gBAAgB,GAClB,EAAY;IACd;cAEC,EAAS;KACR,gBAAgB;KAChB,aAAa;IACf,CAAC;GACE,CAAA,GACL,kBAAC,OAAD;IAAK,WAAU;cAAf,CACG,KAAa,KAAc,EAAK,SAC/B,kBAAC,GAAD;KACE,SAAQ;KACR,QAAO;KACP,MAAK;KACL,MAAK;KACL,eAAe,EAAc,IAAI;eAEhC,EAAK;IACA,CAAA,GAET,EAAK,SACJ,kBAAC,GAAD;KACE,WAAU;KACV,SAAQ;KACR,MAAK;KACL,MAAK;KACL,UAAS,MAAK;MAEZ,AADA,EAAE,eAAe,GACjB,EAAY;KACd;eAEC,EAAK;IACA,CAAA,CAEP;KACF,EAAA,CAAA;EACS,CAAA,CACT;;AAEb"}
package/dist/index19.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index37.cjs"),a=require("lucide-react"),r=require("./index6.cjs"),e=require("./index39.cjs");function u({className:t,...n}){return i.jsxRuntimeExports.jsx("nav",{role:"navigation","aria-label":"pagination","data-slot":"pagination",className:e.cn("mx-auto flex w-full justify-center",t),...n})}function l({className:t,...n}){return i.jsxRuntimeExports.jsx("ul",{"data-slot":"pagination-content",className:e.cn("flex flex-row items-center gap-8",t),...n})}function c({...t}){return i.jsxRuntimeExports.jsx("li",{"data-slot":"pagination-item",...t})}function o({className:t,isActive:n,...s}){return i.jsxRuntimeExports.jsx(r.Button,{"aria-current":n?"page":void 0,"data-slot":"pagination-button","data-active":n,variant:"filled",intent:n?"primary":"secondary",size:"icon",className:e.cn({"bg-purple-800 hover:bg-purple-800 focus:bg-purple-800 active:bg-purple-800":n},t),...s})}function x({className:t,...n}){return i.jsxRuntimeExports.jsx(o,{"aria-label":"Go to previous page",className:t,...n,children:i.jsxRuntimeExports.jsx(a.ChevronLeftIcon,{className:"size-16"})})}function p({className:t,...n}){return i.jsxRuntimeExports.jsx(o,{"aria-label":"Go to next page",className:t,...n,children:i.jsxRuntimeExports.jsx(a.ChevronRightIcon,{className:"size-16"})})}function g({className:t,...n}){return i.jsxRuntimeExports.jsx("span",{"aria-hidden":!0,"data-slot":"pagination-ellipsis",className:e.cn("flex size-32 items-center justify-center",t),...n,children:i.jsxRuntimeExports.jsx(a.MoreHorizontalIcon,{className:"size-16"})})}exports.Pagination=u;exports.PaginationButton=o;exports.PaginationContent=l;exports.PaginationEllipsis=g;exports.PaginationItem=c;exports.PaginationNext=p;exports.PaginationPrevious=x;
2
- //# sourceMappingURL=index19.cjs.map
1
+ const e=require("./index2.cjs"),t=require("./index7.cjs"),n=require("./index9.cjs"),r=require("./index18.cjs");let i=require("lucide-react"),a=require("react");a=e.__toESM(a,1);let o=require("react/jsx-runtime");function s({children:e,label:s,selectedLabel:c,trigger:l,i18n:u,value:d,onOpenChange:f,onApply:p,contentProps:m={},buttonProps:h={},clearable:g=!0,..._}){let[v,y]=a.default.useState(!1),[b,x]=a.default.useState(d||null),S=d?c?c(d):d.toString():s,C=(0,o.jsxs)(n.Button,{variant:d?`filled`:`outline`,intent:d?`filter`:`secondary`,size:`sm`,className:t.cn(`font-normal flex items-center whitespace-nowrap gap-x-4 rounded-[12px]`,{"pr-12":!!d}),...h,children:[S,g&&d&&(0,o.jsx)(i.LucideX,{className:`w-16 h-16 rounded hover:bg-purple-100 shrink-0`,onClick:e=>{e.preventDefault(),x(null),p?.(void 0)}})]});function w(){p?.(b??void 0),y(!1)}return(0,o.jsxs)(r.Popover,{open:v,onOpenChange:e=>{f?.(e),e||p?.(b??void 0),e&&x(d??null),y(e)},..._,children:[(0,o.jsx)(r.PopoverTrigger,{asChild:!0,children:l||C}),(0,o.jsx)(r.PopoverContent,{className:`w-full min-w-[200px]`,align:`start`,...m,children:(0,o.jsxs)(`div`,{children:[(0,o.jsx)(`div`,{onKeyDown:e=>{if(e.defaultPrevented||e.key!==`Enter`)return;let t=e.target;if(!t)return;let n=t.tagName,r=n===`INPUT`,i=n===`TEXTAREA`,a=n===`BUTTON`,o=t.isContentEditable;!r||i||a||o||(e.preventDefault(),e.stopPropagation(),w())},children:e({onFilterChange:x,filterValue:b})}),(0,o.jsxs)(`div`,{className:`w-full flex justify-between mt-16`,children:[g&&b&&u.clear&&(0,o.jsx)(n.Button,{variant:`link`,intent:`secondary`,size:`fit-content`,type:`button`,onClick:()=>x(null),children:u.clear}),u.apply&&(0,o.jsx)(n.Button,{className:`ml-auto`,variant:`link`,size:`fit-content`,type:`button`,onClick:e=>{e.preventDefault(),w()},children:u.apply})]})]})})]})}exports.Filter=s;
2
+ //# sourceMappingURL=index19.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index19.cjs","sources":["../src/Pagination/index.tsx"],"sourcesContent":["import {\n ChevronLeftIcon,\n ChevronRightIcon,\n MoreHorizontalIcon\n} from 'lucide-react'\nimport * as React from 'react'\nimport { Button } from '../Button'\nimport { cn } from '../lib/utils'\n\nfunction Pagination({ className, ...props }: React.ComponentProps<'nav'>) {\n return (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n data-slot=\"pagination\"\n className={cn('mx-auto flex w-full justify-center', className)}\n {...props}\n />\n )\n}\n\nfunction PaginationContent({\n className,\n ...props\n}: React.ComponentProps<'ul'>) {\n return (\n <ul\n data-slot=\"pagination-content\"\n className={cn('flex flex-row items-center gap-8', className)}\n {...props}\n />\n )\n}\n\nfunction PaginationItem({ ...props }: React.ComponentProps<'li'>) {\n return <li data-slot=\"pagination-item\" {...props} />\n}\n\ntype PaginationButtonProps = {\n isActive?: boolean\n} & React.ComponentProps<typeof Button>\n\nfunction PaginationButton({\n className,\n isActive,\n ...props\n}: PaginationButtonProps) {\n return (\n <Button\n aria-current={isActive ? 'page' : undefined}\n data-slot=\"pagination-button\"\n data-active={isActive}\n variant=\"filled\"\n intent={isActive ? 'primary' : 'secondary'}\n size=\"icon\"\n className={cn(\n {\n 'bg-purple-800 hover:bg-purple-800 focus:bg-purple-800 active:bg-purple-800':\n isActive\n },\n className\n )}\n {...props}\n />\n )\n}\n\nfunction PaginationPrevious({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationButton>) {\n return (\n <PaginationButton\n aria-label=\"Go to previous page\"\n className={className}\n {...props}\n >\n <ChevronLeftIcon className=\"size-16\" />\n </PaginationButton>\n )\n}\n\nfunction PaginationNext({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationButton>) {\n return (\n <PaginationButton\n aria-label=\"Go to next page\"\n className={className}\n {...props}\n >\n <ChevronRightIcon className=\"size-16\" />\n </PaginationButton>\n )\n}\n\nfunction PaginationEllipsis({\n className,\n ...props\n}: React.ComponentProps<'span'>) {\n return (\n <span\n aria-hidden\n data-slot=\"pagination-ellipsis\"\n className={cn('flex size-32 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontalIcon className=\"size-16\" />\n </span>\n )\n}\n\nexport {\n Pagination,\n PaginationButton,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationNext,\n PaginationPrevious\n}\n"],"names":["Pagination","className","props","jsx","cn","PaginationContent","PaginationItem","PaginationButton","isActive","Button","PaginationPrevious","ChevronLeftIcon","PaginationNext","ChevronRightIcon","PaginationEllipsis","MoreHorizontalIcon"],"mappings":"gMASA,SAASA,EAAW,CAAE,UAAAC,EAAW,GAAGC,GAAsC,CACxE,OACEC,EAAAA,kBAAAA,IAAC,MAAA,CACC,KAAK,aACL,aAAW,aACX,YAAU,aACV,UAAWC,EAAAA,GAAG,qCAAsCH,CAAS,EAC5D,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASG,EAAkB,CACzB,UAAAJ,EACA,GAAGC,CACL,EAA+B,CAC7B,OACEC,EAAAA,kBAAAA,IAAC,KAAA,CACC,YAAU,qBACV,UAAWC,EAAAA,GAAG,mCAAoCH,CAAS,EAC1D,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASI,EAAe,CAAE,GAAGJ,GAAqC,CAChE,OAAOC,EAAAA,kBAAAA,IAAC,KAAA,CAAG,YAAU,kBAAmB,GAAGD,EAAO,CACpD,CAMA,SAASK,EAAiB,CACxB,UAAAN,EACA,SAAAO,EACA,GAAGN,CACL,EAA0B,CACxB,OACEC,EAAAA,kBAAAA,IAACM,EAAAA,OAAA,CACC,eAAcD,EAAW,OAAS,OAClC,YAAU,oBACV,cAAaA,EACb,QAAQ,SACR,OAAQA,EAAW,UAAY,YAC/B,KAAK,OACL,UAAWJ,EAAAA,GACT,CACE,6EACEI,CAAA,EAEJP,CAAA,EAED,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASQ,EAAmB,CAC1B,UAAAT,EACA,GAAGC,CACL,EAAkD,CAChD,OACEC,EAAAA,kBAAAA,IAACI,EAAA,CACC,aAAW,sBACX,UAAAN,EACC,GAAGC,EAEJ,SAAAC,EAAAA,kBAAAA,IAACQ,EAAAA,gBAAA,CAAgB,UAAU,SAAA,CAAU,CAAA,CAAA,CAG3C,CAEA,SAASC,EAAe,CACtB,UAAAX,EACA,GAAGC,CACL,EAAkD,CAChD,OACEC,EAAAA,kBAAAA,IAACI,EAAA,CACC,aAAW,kBACX,UAAAN,EACC,GAAGC,EAEJ,SAAAC,EAAAA,kBAAAA,IAACU,EAAAA,iBAAA,CAAiB,UAAU,SAAA,CAAU,CAAA,CAAA,CAG5C,CAEA,SAASC,EAAmB,CAC1B,UAAAb,EACA,GAAGC,CACL,EAAiC,CAC/B,OACEC,EAAAA,kBAAAA,IAAC,OAAA,CACC,cAAW,GACX,YAAU,sBACV,UAAWC,EAAAA,GAAG,2CAA4CH,CAAS,EAClE,GAAGC,EAEJ,SAAAC,EAAAA,kBAAAA,IAACY,EAAAA,mBAAA,CAAmB,UAAU,SAAA,CAAU,CAAA,CAAA,CAG9C"}
1
+ {"version":3,"file":"index19.cjs","names":[],"sources":["../src/Filter/index.tsx"],"sourcesContent":["import { LucideX } from 'lucide-react'\nimport React from 'react'\nimport { Button, ButtonProps } from '../Button'\nimport {\n Popover,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger\n} from '../Popover'\nimport { cn } from '../lib/utils'\n\ntype FilterPropsBase<T> = {\n i18n: {\n apply?: string\n clear?: string\n }\n value?: T\n onOpenChange?: (open: boolean) => void\n onApply: (value?: T) => void\n children: (props: {\n onFilterChange: (value: T | null) => void\n filterValue: T | null\n }) => React.ReactNode\n contentProps?: PopoverContentProps\n buttonProps?: ButtonProps\n clearable?: boolean\n}\n\ntype FilterPropsWithLabel<T> = FilterPropsBase<T> & {\n label: string\n selectedLabel?: (value: T) => React.ReactNode\n trigger?: never\n}\n\ntype FilterPropsWithTrigger<T> = FilterPropsBase<T> & {\n trigger: React.ReactNode\n label?: never\n selectedLabel?: never\n}\n\ntype FilterProps<T> = FilterPropsWithLabel<T> | FilterPropsWithTrigger<T>\n\nfunction Filter<T>({\n children,\n label,\n selectedLabel,\n trigger,\n i18n,\n value,\n onOpenChange,\n onApply,\n contentProps = {},\n buttonProps = {},\n clearable = true,\n ...props\n}: FilterProps<T>) {\n const [isOpen, setIsOpen] = React.useState(false)\n const [localValue, setLocalValue] = React.useState<T | null>(value || null)\n\n const filterLabel = value\n ? selectedLabel\n ? selectedLabel(value)\n : value.toString()\n : label\n\n const defaultTrigger = (\n <Button\n variant={value ? 'filled' : 'outline'}\n intent={value ? 'filter' : 'secondary'}\n size=\"sm\"\n className={cn(\n 'font-normal flex items-center whitespace-nowrap gap-x-4 rounded-[12px]',\n {\n 'pr-12': !!value\n }\n )}\n {...buttonProps}\n >\n {filterLabel}\n {clearable && value && (\n <LucideX\n className=\"w-16 h-16 rounded hover:bg-purple-100 shrink-0\"\n onClick={e => {\n e.preventDefault()\n setLocalValue(null)\n onApply?.(undefined)\n }}\n />\n )}\n </Button>\n )\n\n function handleApply() {\n onApply?.(localValue ?? undefined)\n setIsOpen(false)\n }\n\n return (\n <Popover\n open={isOpen}\n onOpenChange={open => {\n onOpenChange?.(open)\n if (!open) onApply?.(localValue ?? undefined)\n if (open) setLocalValue(value ?? null)\n setIsOpen(open)\n }}\n {...props}\n >\n <PopoverTrigger asChild>{trigger || defaultTrigger}</PopoverTrigger>\n <PopoverContent\n className=\"w-full min-w-[200px]\"\n align=\"start\"\n {...contentProps}\n >\n <div>\n <div\n onKeyDown={e => {\n if (e.defaultPrevented) return\n if (e.key !== 'Enter') return\n const target = e.target as HTMLElement | null\n if (!target) return\n const tagName = target.tagName\n const isInput = tagName === 'INPUT'\n const isTextarea = tagName === 'TEXTAREA'\n const isButton = tagName === 'BUTTON'\n const isContentEditable = target.isContentEditable\n // Only apply on Enter from filter input fields, not from buttons,\n // textareas, or other interactive/contenteditable elements.\n if (!isInput || isTextarea || isButton || isContentEditable) {\n return\n }\n e.preventDefault()\n e.stopPropagation()\n handleApply()\n }}\n >\n {children({\n onFilterChange: setLocalValue,\n filterValue: localValue\n })}\n </div>\n <div className=\"w-full flex justify-between mt-16\">\n {clearable && localValue && i18n.clear && (\n <Button\n variant=\"link\"\n intent=\"secondary\"\n size=\"fit-content\"\n type=\"button\"\n onClick={() => setLocalValue(null)}\n >\n {i18n.clear}\n </Button>\n )}\n {i18n.apply && (\n <Button\n className=\"ml-auto\"\n variant=\"link\"\n size=\"fit-content\"\n type=\"button\"\n onClick={e => {\n e.preventDefault()\n handleApply()\n }}\n >\n {i18n.apply}\n </Button>\n )}\n </div>\n </div>\n </PopoverContent>\n </Popover>\n )\n}\n\nexport { Filter }\nexport type { FilterProps }\n"],"mappings":"oNA0CA,SAAS,EAAU,CACjB,WACA,QACA,gBACA,UACA,OACA,QACA,eACA,UACA,eAAe,CAAC,EAChB,cAAc,CAAC,EACf,YAAY,GACZ,GAAG,GACc,CACjB,GAAM,CAAC,EAAQ,GAAa,EAAA,QAAM,SAAS,EAAK,EAC1C,CAAC,EAAY,GAAiB,EAAA,QAAM,SAAmB,GAAS,IAAI,EAEpE,EAAc,EAChB,EACE,EAAc,CAAK,EACnB,EAAM,SAAS,EACjB,EAEE,GACJ,EAAA,EAAA,MAAC,EAAA,OAAD,CACE,QAAS,EAAQ,SAAW,UAC5B,OAAQ,EAAQ,SAAW,YAC3B,KAAK,KACL,UAAW,EAAA,GACT,yEACA,CACE,QAAS,CAAC,CAAC,CACb,CACF,EACA,GAAI,WAVN,CAYG,EACA,GAAa,IACZ,EAAA,EAAA,KAAC,EAAA,QAAD,CACE,UAAU,iDACV,QAAS,GAAK,CACZ,EAAE,eAAe,EACjB,EAAc,IAAI,EAClB,IAAU,IAAA,EAAS,CACrB,CACD,CAAA,CAEG,IAGV,SAAS,GAAc,CACrB,IAAU,GAAc,IAAA,EAAS,EACjC,EAAU,EAAK,CACjB,CAEA,OACE,EAAA,EAAA,MAAC,EAAA,QAAD,CACE,KAAM,EACN,aAAc,GAAQ,CACpB,IAAe,CAAI,EACd,GAAM,IAAU,GAAc,IAAA,EAAS,EACxC,GAAM,EAAc,GAAS,IAAI,EACrC,EAAU,CAAI,CAChB,EACA,GAAI,WARN,EAUE,EAAA,EAAA,KAAC,EAAA,eAAD,CAAgB,QAAA,YAAS,GAAW,CAA+B,CAAA,GACnE,EAAA,EAAA,KAAC,EAAA,eAAD,CACE,UAAU,uBACV,MAAM,QACN,GAAI,YAEJ,EAAA,EAAA,MAAC,MAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,GAAK,CAEd,GADI,EAAE,kBACF,EAAE,MAAQ,QAAS,OACvB,IAAM,EAAS,EAAE,OACjB,GAAI,CAAC,EAAQ,OACb,IAAM,EAAU,EAAO,QACjB,EAAU,IAAY,QACtB,EAAa,IAAY,WACzB,EAAW,IAAY,SACvB,EAAoB,EAAO,kBAG7B,CAAC,GAAW,GAAc,GAAY,IAG1C,EAAE,eAAe,EACjB,EAAE,gBAAgB,EAClB,EAAY,EACd,WAEC,EAAS,CACR,eAAgB,EAChB,YAAa,CACf,CAAC,CACE,CAAA,GACL,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,6CAAf,CACG,GAAa,GAAc,EAAK,QAC/B,EAAA,EAAA,KAAC,EAAA,OAAD,CACE,QAAQ,OACR,OAAO,YACP,KAAK,cACL,KAAK,SACL,YAAe,EAAc,IAAI,WAEhC,EAAK,KACA,CAAA,EAET,EAAK,QACJ,EAAA,EAAA,KAAC,EAAA,OAAD,CACE,UAAU,UACV,QAAQ,OACR,KAAK,cACL,KAAK,SACL,QAAS,GAAK,CACZ,EAAE,eAAe,EACjB,EAAY,CACd,WAEC,EAAK,KACA,CAAA,CAEP,GACF,CAAA,CAAA,CACS,CAAA,CACT,GAEb"}
package/dist/index19.js CHANGED
@@ -1,109 +1,69 @@
1
- import { j as t } from "./index37.js";
2
- import { MoreHorizontalIcon as r, ChevronRightIcon as s, ChevronLeftIcon as l } from "lucide-react";
3
- import { Button as u } from "./index6.js";
4
- import { cn as i } from "./index39.js";
5
- function f({ className: n, ...a }) {
6
- return /* @__PURE__ */ t.jsx(
7
- "nav",
8
- {
9
- role: "navigation",
10
- "aria-label": "pagination",
11
- "data-slot": "pagination",
12
- className: i("mx-auto flex w-full justify-center", n),
13
- ...a
14
- }
15
- );
1
+ import { cva as e } from "./index4.js";
2
+ import { cn as t, debounce as n } from "./index6.js";
3
+ import { ChevronLeft as r, ChevronRight as i } from "lucide-react";
4
+ import a from "react";
5
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
+ //#region src/FilterBar/GradientScroll.tsx
7
+ var c = e("", {
8
+ variants: { variant: {
9
+ white: "to-white",
10
+ gray: "to-gray-50"
11
+ } },
12
+ defaultVariants: { variant: "gray" }
13
+ }), l = e("", {
14
+ variants: { variant: {
15
+ white: "bg-white",
16
+ gray: "bg-gray-50"
17
+ } },
18
+ defaultVariants: { variant: "gray" }
19
+ });
20
+ function u({ children: e, className: u, variant: d }) {
21
+ let f = a.useRef(null), [p, m] = a.useState(!1), [h, g] = a.useState(!1), _ = a.useCallback(() => {
22
+ if (!f.current) return;
23
+ let { scrollLeft: e, scrollWidth: t, clientWidth: n } = f.current;
24
+ m(e > 0), g(e + n < t - 5);
25
+ }, [f]);
26
+ return a.useEffect(() => {
27
+ _();
28
+ let e = n(_, 100);
29
+ return window.addEventListener("resize", e), () => {
30
+ window.removeEventListener("resize", e);
31
+ };
32
+ }, [_]), /* @__PURE__ */ s("div", {
33
+ className: "relative flex overflow-hidden",
34
+ children: [
35
+ /* @__PURE__ */ s("div", {
36
+ className: t("absolute left-0 top-0 h-full flex items-center", { hidden: !p }),
37
+ children: [/* @__PURE__ */ o(r, {
38
+ size: 16,
39
+ className: t("text-gray-600 h-full cursor-pointer", l({ variant: d })),
40
+ onClick: () => f.current?.scrollBy({
41
+ left: -100,
42
+ behavior: "smooth"
43
+ })
44
+ }), /* @__PURE__ */ o("div", { className: t("w-[50px] h-full bg-linear-to-l from-transparent", c({ variant: d })) })]
45
+ }),
46
+ /* @__PURE__ */ o("div", {
47
+ ref: f,
48
+ onScroll: _,
49
+ className: t("overflow-scroll no-scrollbar", u),
50
+ children: e
51
+ }),
52
+ /* @__PURE__ */ s("div", {
53
+ className: t("absolute right-0 top-0 h-full w-fit flex items-center justify-end", { hidden: !h }),
54
+ children: [/* @__PURE__ */ o("div", { className: t("w-[50px] h-full bg-linear-to-r from-transparent", c({ variant: d })) }), /* @__PURE__ */ o(i, {
55
+ size: 16,
56
+ className: t("text-gray-600 h-full cursor-pointer", l({ variant: d })),
57
+ onClick: () => f.current?.scrollBy({
58
+ left: 100,
59
+ behavior: "smooth"
60
+ })
61
+ })]
62
+ })
63
+ ]
64
+ });
16
65
  }
17
- function x({
18
- className: n,
19
- ...a
20
- }) {
21
- return /* @__PURE__ */ t.jsx(
22
- "ul",
23
- {
24
- "data-slot": "pagination-content",
25
- className: i("flex flex-row items-center gap-8", n),
26
- ...a
27
- }
28
- );
29
- }
30
- function d({ ...n }) {
31
- return /* @__PURE__ */ t.jsx("li", { "data-slot": "pagination-item", ...n });
32
- }
33
- function e({
34
- className: n,
35
- isActive: a,
36
- ...o
37
- }) {
38
- return /* @__PURE__ */ t.jsx(
39
- u,
40
- {
41
- "aria-current": a ? "page" : void 0,
42
- "data-slot": "pagination-button",
43
- "data-active": a,
44
- variant: "filled",
45
- intent: a ? "primary" : "secondary",
46
- size: "icon",
47
- className: i(
48
- {
49
- "bg-purple-800 hover:bg-purple-800 focus:bg-purple-800 active:bg-purple-800": a
50
- },
51
- n
52
- ),
53
- ...o
54
- }
55
- );
56
- }
57
- function j({
58
- className: n,
59
- ...a
60
- }) {
61
- return /* @__PURE__ */ t.jsx(
62
- e,
63
- {
64
- "aria-label": "Go to previous page",
65
- className: n,
66
- ...a,
67
- children: /* @__PURE__ */ t.jsx(l, { className: "size-16" })
68
- }
69
- );
70
- }
71
- function b({
72
- className: n,
73
- ...a
74
- }) {
75
- return /* @__PURE__ */ t.jsx(
76
- e,
77
- {
78
- "aria-label": "Go to next page",
79
- className: n,
80
- ...a,
81
- children: /* @__PURE__ */ t.jsx(s, { className: "size-16" })
82
- }
83
- );
84
- }
85
- function h({
86
- className: n,
87
- ...a
88
- }) {
89
- return /* @__PURE__ */ t.jsx(
90
- "span",
91
- {
92
- "aria-hidden": !0,
93
- "data-slot": "pagination-ellipsis",
94
- className: i("flex size-32 items-center justify-center", n),
95
- ...a,
96
- children: /* @__PURE__ */ t.jsx(r, { className: "size-16" })
97
- }
98
- );
99
- }
100
- export {
101
- f as Pagination,
102
- e as PaginationButton,
103
- x as PaginationContent,
104
- h as PaginationEllipsis,
105
- d as PaginationItem,
106
- b as PaginationNext,
107
- j as PaginationPrevious
108
- };
109
- //# sourceMappingURL=index19.js.map
66
+ //#endregion
67
+ export { u as GradientScroll };
68
+
69
+ //# sourceMappingURL=index19.js.map