lizaui 8.0.4 → 8.0.6

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 (97) hide show
  1. package/dist/button/index.cjs.js +1 -1
  2. package/dist/button/index.es.js +1 -1
  3. package/dist/calendar/index.cjs.js +10 -10
  4. package/dist/calendar/index.cjs.js.map +1 -1
  5. package/dist/calendar/index.es.js +1309 -1842
  6. package/dist/calendar/index.es.js.map +1 -1
  7. package/dist/checkbox/index.cjs.js +1 -1
  8. package/dist/checkbox/index.es.js +1 -1
  9. package/dist/chip/index.cjs.js +1 -1
  10. package/dist/chip/index.es.js +1 -1
  11. package/dist/chunks/{button-OdZ6El_t.js → button-CGIs6rx_.js} +2 -2
  12. package/dist/chunks/{button-OdZ6El_t.js.map → button-CGIs6rx_.js.map} +1 -1
  13. package/dist/chunks/{button-CSuKvE1x.js → button-COC4E-Qv.js} +4 -4
  14. package/dist/chunks/{button-CSuKvE1x.js.map → button-COC4E-Qv.js.map} +1 -1
  15. package/dist/chunks/{checkbox-BhW9i0pm.js → checkbox-C4O1CC2o.js} +3 -3
  16. package/dist/chunks/{checkbox-BhW9i0pm.js.map → checkbox-C4O1CC2o.js.map} +1 -1
  17. package/dist/chunks/{checkbox-CWDPVAn2.js → checkbox-C7iPXnsq.js} +2 -2
  18. package/dist/chunks/{checkbox-CWDPVAn2.js.map → checkbox-C7iPXnsq.js.map} +1 -1
  19. package/dist/chunks/{index-Do-g2tEs.js → index-6UmdGTUS.js} +2 -2
  20. package/dist/chunks/{index-Do-g2tEs.js.map → index-6UmdGTUS.js.map} +1 -1
  21. package/dist/chunks/index-BD4EmzUR.js +15 -0
  22. package/dist/chunks/index-BD4EmzUR.js.map +1 -0
  23. package/dist/chunks/{index-6ER8bShj.js → index-B_lLnyI9.js} +2 -2
  24. package/dist/chunks/{index-6ER8bShj.js.map → index-B_lLnyI9.js.map} +1 -1
  25. package/dist/chunks/index-COBcVFMF.js +2 -0
  26. package/dist/chunks/index-COBcVFMF.js.map +1 -0
  27. package/dist/chunks/jsx-runtime-DZW6kfQG.js +2 -0
  28. package/dist/chunks/{jsx-runtime-BjzqJBtL.js.map → jsx-runtime-DZW6kfQG.js.map} +1 -1
  29. package/dist/chunks/{jsx-runtime-Cl_4eDuT.js → jsx-runtime-Dk9ExdSX.js} +2 -3
  30. package/dist/chunks/{jsx-runtime-Cl_4eDuT.js.map → jsx-runtime-Dk9ExdSX.js.map} +1 -1
  31. package/dist/chunks/{label-error-DGQqDKTV.js → label-error-Dg6_L7YY.js} +2 -2
  32. package/dist/chunks/{label-error-DGQqDKTV.js.map → label-error-Dg6_L7YY.js.map} +1 -1
  33. package/dist/chunks/{label-error-Ax74Uy3M.js → label-error-wbavGDVw.js} +2 -2
  34. package/dist/chunks/{label-error-Ax74Uy3M.js.map → label-error-wbavGDVw.js.map} +1 -1
  35. package/dist/chunks/{ripple-DMI95LHg.js → ripple-DkVNrwwK.js} +2 -2
  36. package/dist/chunks/{ripple-DMI95LHg.js.map → ripple-DkVNrwwK.js.map} +1 -1
  37. package/dist/chunks/{ripple-DieNd7XQ.js → ripple-S5nRL6TJ.js} +2 -2
  38. package/dist/chunks/{ripple-DieNd7XQ.js.map → ripple-S5nRL6TJ.js.map} +1 -1
  39. package/dist/chunks/scroll-area--KGqTnx5.js +2 -0
  40. package/dist/chunks/scroll-area--KGqTnx5.js.map +1 -0
  41. package/dist/chunks/{scroll-area-zt_z9PRo.js → scroll-area-CsOiTMG3.js} +163 -168
  42. package/dist/chunks/scroll-area-CsOiTMG3.js.map +1 -0
  43. package/dist/chunks/{select-qaP_vaF3.js → select-CJRY9hSL.js} +181 -181
  44. package/dist/chunks/select-CJRY9hSL.js.map +1 -0
  45. package/dist/chunks/select-DCeDDexH.js +2 -0
  46. package/dist/chunks/select-DCeDDexH.js.map +1 -0
  47. package/dist/chunks/{styled-components.browser.esm-CAEXERbT.js → styled-components.browser.esm-CxZkQVdi.js} +2 -2
  48. package/dist/chunks/{styled-components.browser.esm-CAEXERbT.js.map → styled-components.browser.esm-CxZkQVdi.js.map} +1 -1
  49. package/dist/chunks/{styled-components.browser.esm-DwaG9BxE.js → styled-components.browser.esm-M-8MrVJR.js} +2 -2
  50. package/dist/chunks/{styled-components.browser.esm-DwaG9BxE.js.map → styled-components.browser.esm-M-8MrVJR.js.map} +1 -1
  51. package/dist/chunks/{textarea-Cklud2kp.js → textarea-99dejq_o.js} +2 -2
  52. package/dist/chunks/{textarea-Cklud2kp.js.map → textarea-99dejq_o.js.map} +1 -1
  53. package/dist/chunks/{textarea-BIy5pTb5.js → textarea-COi5ngTN.js} +5 -5
  54. package/dist/chunks/{textarea-BIy5pTb5.js.map → textarea-COi5ngTN.js.map} +1 -1
  55. package/dist/chunks/{tooltip-B-5G3VVC.js → tooltip-Bxodcuiq.js} +2 -2
  56. package/dist/chunks/{tooltip-B-5G3VVC.js.map → tooltip-Bxodcuiq.js.map} +1 -1
  57. package/dist/chunks/{tooltip-DGFz59KW.js → tooltip-DWnKIv1c.js} +2 -2
  58. package/dist/chunks/{tooltip-DGFz59KW.js.map → tooltip-DWnKIv1c.js.map} +1 -1
  59. package/dist/divider/index.cjs.js +1 -1
  60. package/dist/divider/index.es.js +2 -2
  61. package/dist/modal/index.cjs.js +1 -1
  62. package/dist/modal/index.es.js +2 -2
  63. package/dist/pagination/index.cjs.js +1 -1
  64. package/dist/pagination/index.cjs.js.map +1 -1
  65. package/dist/pagination/index.es.js +28 -27
  66. package/dist/pagination/index.es.js.map +1 -1
  67. package/dist/phone-input/index.cjs.js +1 -1
  68. package/dist/phone-input/index.cjs.js.map +1 -1
  69. package/dist/phone-input/index.es.js +16 -16
  70. package/dist/ripple/index.cjs.js +1 -1
  71. package/dist/ripple/index.es.js +1 -1
  72. package/dist/select-input/index.cjs.js +1 -1
  73. package/dist/select-input/index.es.js +3 -3
  74. package/dist/table/index.cjs.js +1 -1
  75. package/dist/table/index.es.js +3 -3
  76. package/dist/time-input/index.cjs.js +1 -1
  77. package/dist/time-input/index.cjs.js.map +1 -1
  78. package/dist/time-input/index.es.js +8 -7
  79. package/dist/time-input/index.es.js.map +1 -1
  80. package/dist/tooltip/index.cjs.js +1 -1
  81. package/dist/tooltip/index.es.js +1 -1
  82. package/dist/ui/index.cjs.js +4 -4
  83. package/dist/ui/index.cjs.js.map +1 -1
  84. package/dist/ui/index.es.js +1052 -1063
  85. package/dist/ui/index.es.js.map +1 -1
  86. package/package.json +1 -1
  87. package/dist/chunks/index-BydcKEwP.js +0 -2
  88. package/dist/chunks/index-BydcKEwP.js.map +0 -1
  89. package/dist/chunks/index-VJ2Qvmen.js +0 -87
  90. package/dist/chunks/index-VJ2Qvmen.js.map +0 -1
  91. package/dist/chunks/jsx-runtime-BjzqJBtL.js +0 -2
  92. package/dist/chunks/scroll-area-C8l3z7wv.js +0 -2
  93. package/dist/chunks/scroll-area-C8l3z7wv.js.map +0 -1
  94. package/dist/chunks/scroll-area-zt_z9PRo.js.map +0 -1
  95. package/dist/chunks/select-CC7ump6t.js +0 -2
  96. package/dist/chunks/select-CC7ump6t.js.map +0 -1
  97. package/dist/chunks/select-qaP_vaF3.js.map +0 -1
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "lizaui",
3
3
  "private": false,
4
4
  "license": "ISC",
5
- "version": "8.0.4",
5
+ "version": "8.0.6",
6
6
  "type": "module",
7
7
  "main": "dist/index.cjs.js",
8
8
  "module": "dist/index.es.js",
@@ -1,2 +0,0 @@
1
- "use strict";const c=require("react");require("./jsx-runtime-BjzqJBtL.js");function C(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,o.get?o:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const l=C(c);var w=l.createContext(void 0);function g(e){const t=l.useContext(w);return e||t||"ltr"}const b=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),k=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,o)=>o?o.toUpperCase():r.toLowerCase()),u=e=>{const t=k(e);return t.charAt(0).toUpperCase()+t.slice(1)},d=(...e)=>e.filter((t,r,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===r).join(" ").trim(),v=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var y={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const D=c.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:a="",children:n,iconNode:m,...i},p)=>c.createElement("svg",{ref:p,...y,width:t,height:t,stroke:e,strokeWidth:o?Number(r)*24/Number(t):r,className:d("lucide",a),...!n&&!v(i)&&{"aria-hidden":"true"},...i},[...m.map(([f,h])=>c.createElement(f,h)),...Array.isArray(n)?n:[n]]));const s=(e,t)=>{const r=c.forwardRef(({className:o,...a},n)=>c.createElement(D,{ref:n,iconNode:t,className:d(`lucide-${b(u(e))}`,`lucide-${e}`,o),...a}));return r.displayName=u(e),r};const _=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],x=s("check",_);const A=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],j=s("chevron-down",A);function L(e,[t,r]){return Math.min(r,Math.max(t,e))}exports.Check=x;exports.ChevronDown=j;exports.clamp=L;exports.createLucideIcon=s;exports.useDirection=g;
2
- //# sourceMappingURL=index-BydcKEwP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BydcKEwP.js","sources":["../../node_modules/.pnpm/@radix-ui+react-direction@1.1.1_@types+react@19.1.12_react@19.1.1/node_modules/@radix-ui/react-direction/dist/index.mjs","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/shared/src/utils.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/defaultAttributes.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/Icon.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/createLucideIcon.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/check.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/chevron-down.js","../../node_modules/.pnpm/@radix-ui+number@1.1.1/node_modules/@radix-ui/number/dist/index.mjs"],"sourcesContent":["// packages/react/direction/src/direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n};\n\nexport { hasA11yProp, mergeClasses, toCamelCase, toKebabCase, toPascalCase };\n//# sourceMappingURL=utils.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m6 9 6 6 6-6\", key: \"qrunsl\" }]];\nconst ChevronDown = createLucideIcon(\"chevron-down\", __iconNode);\n\nexport { __iconNode, ChevronDown as default };\n//# sourceMappingURL=chevron-down.js.map\n","// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DirectionContext","React","useDirection","localDir","globalDir","toKebabCase","string","toCamelCase","match","p1","p2","toPascalCase","camelCase","mergeClasses","classes","className","index","array","hasA11yProp","props","prop","defaultAttributes","Icon","forwardRef","color","size","strokeWidth","absoluteStrokeWidth","children","iconNode","rest","ref","createElement","tag","attrs","createLucideIcon","iconName","Component","__iconNode","Check","ChevronDown","clamp","value","min","max"],"mappings":"qWAGA,IAAIA,EAAmBC,EAAM,cAAc,MAAM,EAKjD,SAASC,EAAaC,EAAU,CAC9B,MAAMC,EAAYH,EAAM,WAAWD,CAAgB,EACnD,OAAOG,GAAYC,GAAa,KAClC,CCJA,MAAMC,EAAeC,GAAWA,EAAO,QAAQ,qBAAsB,OAAO,EAAE,YAAW,EACnFC,EAAeD,GAAWA,EAAO,QACrC,wBACA,CAACE,EAAOC,EAAIC,IAAOA,EAAKA,EAAG,YAAW,EAAKD,EAAG,YAAW,CAC3D,EACME,EAAgBL,GAAW,CAC/B,MAAMM,EAAYL,EAAYD,CAAM,EACpC,OAAOM,EAAU,OAAO,CAAC,EAAE,YAAW,EAAKA,EAAU,MAAM,CAAC,CAC9D,EACMC,EAAe,IAAIC,IAAYA,EAAQ,OAAO,CAACC,EAAWC,EAAOC,IAC9D,EAAQF,GAAcA,EAAU,KAAI,IAAO,IAAME,EAAM,QAAQF,CAAS,IAAMC,CACtF,EAAE,KAAK,GAAG,EAAE,KAAI,EACXE,EAAeC,GAAU,CAC7B,UAAWC,KAAQD,EACjB,GAAIC,EAAK,WAAW,OAAO,GAAKA,IAAS,QAAUA,IAAS,QAC1D,MAAO,EAGb,EClBA,IAAIC,EAAoB,CACtB,MAAO,6BACP,MAAO,GACP,OAAQ,GACR,QAAS,YACT,KAAM,OACN,OAAQ,eACR,YAAa,EACb,cAAe,QACf,eAAgB,OAClB,ECNA,MAAMC,EAAOC,EAAAA,WACX,CAAC,CACC,MAAAC,EAAQ,eACR,KAAAC,EAAO,GACP,YAAAC,EAAc,EACd,oBAAAC,EACA,UAAAZ,EAAY,GACZ,SAAAa,EACA,SAAAC,EACA,GAAGC,CACP,EAAKC,IAAQC,EAAAA,cACT,MACA,CACE,IAAAD,EACA,GAAGV,EACH,MAAOI,EACP,OAAQA,EACR,OAAQD,EACR,YAAaG,EAAsB,OAAOD,CAAW,EAAI,GAAK,OAAOD,CAAI,EAAIC,EAC7E,UAAWb,EAAa,SAAUE,CAAS,EAC3C,GAAG,CAACa,GAAY,CAACV,EAAYY,CAAI,GAAK,CAAE,cAAe,MAAM,EAC7D,GAAGA,CACT,EACI,CACE,GAAGD,EAAS,IAAI,CAAC,CAACI,EAAKC,CAAK,IAAMF,EAAAA,cAAcC,EAAKC,CAAK,CAAC,EAC3D,GAAG,MAAM,QAAQN,CAAQ,EAAIA,EAAW,CAACA,CAAQ,CACvD,CACA,CACA,EC5BK,MAACO,EAAmB,CAACC,EAAUP,IAAa,CAC/C,MAAMQ,EAAYd,EAAAA,WAChB,CAAC,CAAE,UAAAR,EAAW,GAAGI,CAAK,EAAIY,IAAQC,EAAAA,cAAcV,EAAM,CACpD,IAAAS,EACA,SAAAF,EACA,UAAWhB,EACT,UAAUR,EAAYM,EAAayB,CAAQ,CAAC,CAAC,GAC7C,UAAUA,CAAQ,GAClBrB,CACR,EACM,GAAGI,CACT,CAAK,CACL,EACE,OAAAkB,EAAU,YAAc1B,EAAayB,CAAQ,EACtCC,CACT,ECjBA,MAAMC,EAAa,CAAC,CAAC,OAAQ,CAAE,EAAG,kBAAmB,IAAK,QAAQ,CAAE,CAAC,EAC/DC,EAAQJ,EAAiB,QAASG,CAAU,ECDlD,MAAMA,EAAa,CAAC,CAAC,OAAQ,CAAE,EAAG,eAAgB,IAAK,QAAQ,CAAE,CAAC,EAC5DE,EAAcL,EAAiB,eAAgBG,CAAU,ECT/D,SAASG,EAAMC,EAAO,CAACC,EAAKC,CAAG,EAAG,CAChC,OAAO,KAAK,IAAIA,EAAK,KAAK,IAAID,EAAKD,CAAK,CAAC,CAC3C","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
@@ -1,87 +0,0 @@
1
- import * as u from "react";
2
- import { forwardRef as l, createElement as s } from "react";
3
- import "./jsx-runtime-Cl_4eDuT.js";
4
- var w = u.createContext(void 0);
5
- function $(e) {
6
- const t = u.useContext(w);
7
- return e || t || "ltr";
8
- }
9
- const g = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), k = (e) => e.replace(
10
- /^([A-Z])|[\s-_]+(\w)/g,
11
- (t, o, r) => r ? r.toUpperCase() : o.toLowerCase()
12
- ), i = (e) => {
13
- const t = k(e);
14
- return t.charAt(0).toUpperCase() + t.slice(1);
15
- }, m = (...e) => e.filter((t, o, r) => !!t && t.trim() !== "" && r.indexOf(t) === o).join(" ").trim(), v = (e) => {
16
- for (const t in e)
17
- if (t.startsWith("aria-") || t === "role" || t === "title")
18
- return !0;
19
- };
20
- var x = {
21
- xmlns: "http://www.w3.org/2000/svg",
22
- width: 24,
23
- height: 24,
24
- viewBox: "0 0 24 24",
25
- fill: "none",
26
- stroke: "currentColor",
27
- strokeWidth: 2,
28
- strokeLinecap: "round",
29
- strokeLinejoin: "round"
30
- };
31
- const b = l(
32
- ({
33
- color: e = "currentColor",
34
- size: t = 24,
35
- strokeWidth: o = 2,
36
- absoluteStrokeWidth: r,
37
- className: a = "",
38
- children: n,
39
- iconNode: C,
40
- ...c
41
- }, d) => s(
42
- "svg",
43
- {
44
- ref: d,
45
- ...x,
46
- width: t,
47
- height: t,
48
- stroke: e,
49
- strokeWidth: r ? Number(o) * 24 / Number(t) : o,
50
- className: m("lucide", a),
51
- ...!n && !v(c) && { "aria-hidden": "true" },
52
- ...c
53
- },
54
- [
55
- ...C.map(([h, f]) => s(h, f)),
56
- ...Array.isArray(n) ? n : [n]
57
- ]
58
- )
59
- );
60
- const p = (e, t) => {
61
- const o = l(
62
- ({ className: r, ...a }, n) => s(b, {
63
- ref: n,
64
- iconNode: t,
65
- className: m(
66
- `lucide-${g(i(e))}`,
67
- `lucide-${e}`,
68
- r
69
- ),
70
- ...a
71
- })
72
- );
73
- return o.displayName = i(e), o;
74
- };
75
- const A = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]], D = p("check", A);
76
- const y = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]], M = p("chevron-down", y);
77
- function N(e, [t, o]) {
78
- return Math.min(o, Math.max(t, e));
79
- }
80
- export {
81
- M as C,
82
- D as a,
83
- N as b,
84
- p as c,
85
- $ as u
86
- };
87
- //# sourceMappingURL=index-VJ2Qvmen.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-VJ2Qvmen.js","sources":["../../node_modules/.pnpm/@radix-ui+react-direction@1.1.1_@types+react@19.1.12_react@19.1.1/node_modules/@radix-ui/react-direction/dist/index.mjs","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/shared/src/utils.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/defaultAttributes.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/Icon.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/createLucideIcon.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/check.js","../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/chevron-down.js","../../node_modules/.pnpm/@radix-ui+number@1.1.1/node_modules/@radix-ui/number/dist/index.mjs"],"sourcesContent":["// packages/react/direction/src/direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n};\n\nexport { hasA11yProp, mergeClasses, toCamelCase, toKebabCase, toPascalCase };\n//# sourceMappingURL=utils.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n","/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m6 9 6 6 6-6\", key: \"qrunsl\" }]];\nconst ChevronDown = createLucideIcon(\"chevron-down\", __iconNode);\n\nexport { __iconNode, ChevronDown as default };\n//# sourceMappingURL=chevron-down.js.map\n","// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DirectionContext","React","useDirection","localDir","globalDir","toKebabCase","string","toCamelCase","match","p1","p2","toPascalCase","camelCase","mergeClasses","classes","className","index","array","hasA11yProp","props","prop","defaultAttributes","Icon","forwardRef","color","size","strokeWidth","absoluteStrokeWidth","children","iconNode","rest","ref","createElement","tag","attrs","createLucideIcon","iconName","Component","__iconNode","Check","ChevronDown","clamp","value","min","max"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
@@ -1,2 +0,0 @@
1
- "use strict";const re=require("react");var T={exports:{}},R={};var F;function te(){if(F)return R;F=1;var l=Symbol.for("react.transitional.element"),b=Symbol.for("react.fragment");function i(f,o,s){var d=null;if(s!==void 0&&(d=""+s),o.key!==void 0&&(d=""+o.key),"key"in o){s={};for(var m in o)m!=="key"&&(s[m]=o[m])}else s=o;return o=s.ref,{$$typeof:l,type:f,key:d,ref:o!==void 0?o:null,props:s}}return R.Fragment=b,R.jsx=i,R.jsxs=i,R}var _={};var $;function ne(){return $||($=1,process.env.NODE_ENV!=="production"&&(function(){function l(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Q?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case p:return"Fragment";case J:return"Profiler";case q:return"StrictMode";case X:return"Suspense";case B:return"SuspenseList";case Z:return"Activity"}if(typeof e=="object")switch(e.tag,e.$$typeof){case U:return"Portal";case V:return(e.displayName||"Context")+".Provider";case z:return(e._context.displayName||"Context")+".Consumer";case G:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case H:return r=e.displayName||null,r!==null?r:l(e.type)||"Memo";case w:r=e._payload,e=e._init;try{return l(e(r))}catch{}}return null}function b(e){return""+e}function i(e){try{b(e);var r=!1}catch{r=!0}if(r){r=console;var t=r.error,n=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return t.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),b(e)}}function f(e){if(e===p)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===w)return"<...>";try{var r=l(e);return r?"<"+r+">":"<...>"}catch{return"<...>"}}function o(){var e=k.A;return e===null?null:e.getOwner()}function s(){return Error("react-stack-top-frame")}function d(e){if(y.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function m(e,r){function t(){g||(g=!0)}t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}function M(){var e=l(this.type);return N[e]||(N[e]=!0),e=this.props.ref,e!==void 0?e:null}function W(e,r,t,n,c,u,S,A){return t=u.ref,e={$$typeof:j,type:e,key:r,props:u,_owner:c},(t!==void 0?t:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:M}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:S}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:A}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function x(e,r,t,n,c,u,S,A){var a=r.children;if(a!==void 0)if(n){if(K(a)){for(n=0;n<a.length;n++)h(a[n]);Object.freeze&&Object.freeze(a)}}else h(a);if(y.call(r,"key")){a=l(e);var E=Object.keys(r).filter(function(ee){return ee!=="key"});n=0<E.length?"{key: someKey, "+E.join(": ..., ")+": ...}":"{key: someKey}",I[a+n]||(E=0<E.length?"{"+E.join(": ..., ")+": ...}":"{}",I[a+n]=!0)}if(a=null,t!==void 0&&(i(t),a=""+t),d(r)&&(i(r.key),a=""+r.key),"key"in r){t={};for(var P in r)P!=="key"&&(t[P]=r[P])}else t=r;return a&&m(t,typeof e=="function"?e.displayName||e.name||"Unknown":e),W(e,a,u,c,o(),t,S,A)}function h(e){typeof e=="object"&&e!==null&&e.$$typeof===j&&e._store&&(e._store.validated=1)}var v=re,j=Symbol.for("react.transitional.element"),U=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),q=Symbol.for("react.strict_mode"),J=Symbol.for("react.profiler"),z=Symbol.for("react.consumer"),V=Symbol.for("react.context"),G=Symbol.for("react.forward_ref"),X=Symbol.for("react.suspense"),B=Symbol.for("react.suspense_list"),H=Symbol.for("react.memo"),w=Symbol.for("react.lazy"),Z=Symbol.for("react.activity"),Q=Symbol.for("react.client.reference"),k=v.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,y=Object.prototype.hasOwnProperty,K=Array.isArray,O=console.createTask?console.createTask:function(){return null};v={react_stack_bottom_frame:function(e){return e()}};var g,N={},C=v.react_stack_bottom_frame.bind(v,s)(),Y=O(f(s)),I={};_.Fragment=p,_.jsx=function(e,r,t,n,c){var u=1e4>k.recentlyCreatedOwnerStacks++;return x(e,r,t,!1,n,c,u?Error("react-stack-top-frame"):C,u?O(f(e)):Y)},_.jsxs=function(e,r,t,n,c){var u=1e4>k.recentlyCreatedOwnerStacks++;return x(e,r,t,!0,n,c,u?Error("react-stack-top-frame"):C,u?O(f(e)):Y)}})()),_}var D;function L(){return D||(D=1,process.env.NODE_ENV==="production"?T.exports=te():T.exports=ne()),T.exports}var ae=L();exports.jsxRuntimeExports=ae;exports.requireJsxRuntime=L;
2
- //# sourceMappingURL=jsx-runtime-BjzqJBtL.js.map
@@ -1,2 +0,0 @@
1
- "use strict";const I=require("./index-BydcKEwP.js"),h=require("./jsx-runtime-BjzqJBtL.js"),le=require("react"),p=require("./textarea-Cklud2kp.js"),C=require("./index-6ER8bShj.js"),B=require("./utils-IjLH3w2e.js");function se(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const s=se(le);const ce=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],ie=I.createLucideIcon("search",ce);function ae(e,t){return s.useReducer((r,n)=>t[r][n]??r,e)}var M="ScrollArea",[V,Ce]=p.createContextScope(M),[ue,v]=V(M),F=s.forwardRef((e,t)=>{const{__scopeScrollArea:r,type:n="hover",dir:o,scrollHideDelay:l=600,...c}=e,[i,a]=s.useState(null),[f,u]=s.useState(null),[m,d]=s.useState(null),[b,w]=s.useState(null),[j,z]=s.useState(null),[g,T]=s.useState(0),[k,y]=s.useState(0),[_,A]=s.useState(!1),[L,D]=s.useState(!1),S=C.useComposedRefs(t,E=>a(E)),x=I.useDirection(o);return h.jsxRuntimeExports.jsx(ue,{scope:r,type:n,dir:x,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:u,content:m,onContentChange:d,scrollbarX:b,onScrollbarXChange:w,scrollbarXEnabled:_,onScrollbarXEnabledChange:A,scrollbarY:j,onScrollbarYChange:z,scrollbarYEnabled:L,onScrollbarYEnabledChange:D,onCornerWidthChange:T,onCornerHeightChange:y,children:h.jsxRuntimeExports.jsx(p.Primitive.div,{dir:x,...c,ref:S,style:{position:"relative","--radix-scroll-area-corner-width":g+"px","--radix-scroll-area-corner-height":k+"px",...e.style}})})});F.displayName=M;var q="ScrollAreaViewport",$=s.forwardRef((e,t)=>{const{__scopeScrollArea:r,children:n,nonce:o,...l}=e,c=v(q,r),i=s.useRef(null),a=C.useComposedRefs(t,i,c.onViewportChange);return h.jsxRuntimeExports.jsxs(h.jsxRuntimeExports.Fragment,{children:[h.jsxRuntimeExports.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),h.jsxRuntimeExports.jsx(p.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:h.jsxRuntimeExports.jsx("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});$.displayName=q;var R="ScrollAreaScrollbar",G=s.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=v(R,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:c}=o,i=e.orientation==="horizontal";return s.useEffect(()=>(i?l(!0):c(!0),()=>{i?l(!1):c(!1)}),[i,l,c]),o.type==="hover"?h.jsxRuntimeExports.jsx(de,{...n,ref:t,forceMount:r}):o.type==="scroll"?h.jsxRuntimeExports.jsx(fe,{...n,ref:t,forceMount:r}):o.type==="auto"?h.jsxRuntimeExports.jsx(J,{...n,ref:t,forceMount:r}):o.type==="always"?h.jsxRuntimeExports.jsx(X,{...n,ref:t}):null});G.displayName=R;var de=s.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=v(R,e.__scopeScrollArea),[l,c]=s.useState(!1);return s.useEffect(()=>{const i=o.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),c(!0)},u=()=>{a=window.setTimeout(()=>c(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",u),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",u)}}},[o.scrollArea,o.scrollHideDelay]),h.jsxRuntimeExports.jsx(p.Presence,{present:r||l,children:h.jsxRuntimeExports.jsx(J,{"data-state":l?"visible":"hidden",...n,ref:t})})}),fe=s.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=v(R,e.__scopeScrollArea),l=e.orientation==="horizontal",c=W(()=>a("SCROLL_END"),100),[i,a]=ae("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return s.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,o.scrollHideDelay,a]),s.useEffect(()=>{const f=o.viewport,u=l?"scrollLeft":"scrollTop";if(f){let m=f[u];const d=()=>{const b=f[u];m!==b&&(a("SCROLL"),c()),m=b};return f.addEventListener("scroll",d),()=>f.removeEventListener("scroll",d)}},[o.viewport,l,a,c]),h.jsxRuntimeExports.jsx(p.Presence,{present:r||i!=="hidden",children:h.jsxRuntimeExports.jsx(X,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:p.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:p.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),J=s.forwardRef((e,t)=>{const r=v(R,e.__scopeScrollArea),{forceMount:n,...o}=e,[l,c]=s.useState(!1),i=e.orientation==="horizontal",a=W(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;c(i?f:u)}},10);return P(r.viewport,a),P(r.content,a),h.jsxRuntimeExports.jsx(p.Presence,{present:n||l,children:h.jsxRuntimeExports.jsx(X,{"data-state":l?"visible":"hidden",...o,ref:t})})}),X=s.forwardRef((e,t)=>{const{orientation:r="vertical",...n}=e,o=v(R,e.__scopeScrollArea),l=s.useRef(null),c=s.useRef(0),[i,a]=s.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=re(i.viewport,i.content),u={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:d=>l.current=d,onThumbPointerUp:()=>c.current=0,onThumbPointerDown:d=>c.current=d};function m(d,b){return ve(d,c.current,i,b)}return r==="horizontal"?h.jsxRuntimeExports.jsx(he,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollLeft,b=U(d,i,o.dir);l.current.style.transform=`translate3d(${b}px, 0, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollLeft=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollLeft=m(d,o.dir))}}):r==="vertical"?h.jsxRuntimeExports.jsx(me,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollTop,b=U(d,i);l.current.style.transform=`translate3d(0, ${b}px, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollTop=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollTop=m(d))}}):null}),he=s.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=v(R,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=C.useComposedRefs(t,a,l.onScrollbarXChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsxRuntimeExports.jsx(Q,{"data-orientation":"horizontal",...o,ref:f,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":O(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,m)=>{if(l.viewport){const d=l.viewport.scrollLeft+u.deltaX;e.onWheelScroll(d),oe(d,m)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:N(c.paddingLeft),paddingEnd:N(c.paddingRight)}})}})}),me=s.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=v(R,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=C.useComposedRefs(t,a,l.onScrollbarYChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsxRuntimeExports.jsx(Q,{"data-orientation":"vertical",...o,ref:f,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":O(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,m)=>{if(l.viewport){const d=l.viewport.scrollTop+u.deltaY;e.onWheelScroll(d),oe(d,m)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:N(c.paddingTop),paddingEnd:N(c.paddingBottom)}})}})}),[pe,K]=V(R),Q=s.forwardRef((e,t)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:o,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:u,onResize:m,...d}=e,b=v(R,r),[w,j]=s.useState(null),z=C.useComposedRefs(t,S=>j(S)),g=s.useRef(null),T=s.useRef(""),k=b.viewport,y=n.content-n.viewport,_=p.useCallbackRef(u),A=p.useCallbackRef(a),L=W(m,10);function D(S){if(g.current){const x=S.clientX-g.current.left,E=S.clientY-g.current.top;f({x,y:E})}}return s.useEffect(()=>{const S=x=>{const E=x.target;w?.contains(E)&&_(x,y)};return document.addEventListener("wheel",S,{passive:!1}),()=>document.removeEventListener("wheel",S,{passive:!1})},[k,w,y,_]),s.useEffect(A,[n,A]),P(w,L),P(b.content,L),h.jsxRuntimeExports.jsx(pe,{scope:r,scrollbar:w,hasThumb:o,onThumbChange:p.useCallbackRef(l),onThumbPointerUp:p.useCallbackRef(c),onThumbPositionChange:A,onThumbPointerDown:p.useCallbackRef(i),children:h.jsxRuntimeExports.jsx(p.Primitive.div,{...d,ref:z,style:{position:"absolute",...d.style},onPointerDown:p.composeEventHandlers(e.onPointerDown,S=>{S.button===0&&(S.target.setPointerCapture(S.pointerId),g.current=w.getBoundingClientRect(),T.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",b.viewport&&(b.viewport.style.scrollBehavior="auto"),D(S))}),onPointerMove:p.composeEventHandlers(e.onPointerMove,D),onPointerUp:p.composeEventHandlers(e.onPointerUp,S=>{const x=S.target;x.hasPointerCapture(S.pointerId)&&x.releasePointerCapture(S.pointerId),document.body.style.webkitUserSelect=T.current,b.viewport&&(b.viewport.style.scrollBehavior=""),g.current=null})})})}),H="ScrollAreaThumb",Z=s.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=K(H,e.__scopeScrollArea);return h.jsxRuntimeExports.jsx(p.Presence,{present:r||o.hasThumb,children:h.jsxRuntimeExports.jsx(be,{ref:t,...n})})}),be=s.forwardRef((e,t)=>{const{__scopeScrollArea:r,style:n,...o}=e,l=v(H,r),c=K(H,r),{onThumbPositionChange:i}=c,a=C.useComposedRefs(t,m=>c.onThumbChange(m)),f=s.useRef(void 0),u=W(()=>{f.current&&(f.current(),f.current=void 0)},100);return s.useEffect(()=>{const m=l.viewport;if(m){const d=()=>{if(u(),!f.current){const b=xe(m,i);f.current=b,i()}};return i(),m.addEventListener("scroll",d),()=>m.removeEventListener("scroll",d)}},[l.viewport,u,i]),h.jsxRuntimeExports.jsx(p.Primitive.div,{"data-state":c.hasThumb?"visible":"hidden",...o,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:p.composeEventHandlers(e.onPointerDownCapture,m=>{const b=m.target.getBoundingClientRect(),w=m.clientX-b.left,j=m.clientY-b.top;c.onThumbPointerDown({x:w,y:j})}),onPointerUp:p.composeEventHandlers(e.onPointerUp,c.onThumbPointerUp)})});Z.displayName=H;var Y="ScrollAreaCorner",ee=s.forwardRef((e,t)=>{const r=v(Y,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?h.jsxRuntimeExports.jsx(Se,{...e,ref:t}):null});ee.displayName=Y;var Se=s.forwardRef((e,t)=>{const{__scopeScrollArea:r,...n}=e,o=v(Y,r),[l,c]=s.useState(0),[i,a]=s.useState(0),f=!!(l&&i);return P(o.scrollbarX,()=>{const u=o.scrollbarX?.offsetHeight||0;o.onCornerHeightChange(u),a(u)}),P(o.scrollbarY,()=>{const u=o.scrollbarY?.offsetWidth||0;o.onCornerWidthChange(u),c(u)}),f?h.jsxRuntimeExports.jsx(p.Primitive.div,{...n,ref:t,style:{width:l,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function N(e){return e?parseInt(e,10):0}function re(e,t){const r=e/t;return isNaN(r)?0:r}function O(e){const t=re(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function ve(e,t,r,n="ltr"){const o=O(r),l=o/2,c=t||l,i=o-c,a=r.scrollbar.paddingStart+c,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,u=r.content-r.viewport,m=n==="ltr"?[0,u]:[u*-1,0];return te([a,f],m)(e)}function U(e,t,r="ltr"){const n=O(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=t.scrollbar.size-o,c=t.content-t.viewport,i=l-n,a=r==="ltr"?[0,c]:[c*-1,0],f=I.clamp(e,a);return te([0,c],[0,i])(f)}function te(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function oe(e,t){return e>0&&e<t}var xe=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return(function o(){const l={left:e.scrollLeft,top:e.scrollTop},c=r.left!==l.left,i=r.top!==l.top;(c||i)&&t(),r=l,n=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(n)};function W(e,t){const r=p.useCallbackRef(e),n=s.useRef(0);return s.useEffect(()=>()=>window.clearTimeout(n.current),[]),s.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function P(e,t){const r=p.useCallbackRef(t);p.useLayoutEffect2(()=>{let n=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(n),o.unobserve(e)}}},[e,r])}var we=F,Re=$,ge=ee;function Ee({className:e,children:t,...r}){return h.jsxRuntimeExports.jsxs(we,{"data-slot":"scroll-area",className:B.cn("relative",e),...r,children:[h.jsxRuntimeExports.jsx(Re,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:t}),h.jsxRuntimeExports.jsx(ne,{}),h.jsxRuntimeExports.jsx(ge,{})]})}function ne({className:e,orientation:t="vertical",...r}){return h.jsxRuntimeExports.jsx(G,{"data-slot":"scroll-area-scrollbar",orientation:t,className:B.cn("flex touch-none p-px transition-colors select-none",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",e),...r,children:h.jsxRuntimeExports.jsx(Z,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}exports.ScrollArea=Ee;exports.ScrollBar=ne;exports.Search=ie;
2
- //# sourceMappingURL=scroll-area-C8l3z7wv.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-area-C8l3z7wv.js","sources":["../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/search.js","../../node_modules/.pnpm/@radix-ui+react-scroll-area@1.2.10_@types+react-dom@19.1.9_@types+react@19.1.12__@types+react_2ybifjy3bplh5o2sdq6cwy7gae/node_modules/@radix-ui/react-scroll-area/dist/index.mjs","../../src/components/ui/scroll-area.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 21-4.34-4.34\", key: \"14j7rj\" }],\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }]\n];\nconst Search = createLucideIcon(\"search\", __iconNode);\n\nexport { __iconNode, Search as default };\n//# sourceMappingURL=search.js.map\n","\"use client\";\n\n// src/scroll-area.tsx\nimport * as React2 from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\n\n// src/use-state-machine.ts\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// src/scroll-area.tsx\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SCROLL_AREA_NAME = \"ScrollArea\";\nvar [createScrollAreaContext, createScrollAreaScope] = createContextScope(SCROLL_AREA_NAME);\nvar [ScrollAreaProvider, useScrollAreaContext] = createScrollAreaContext(SCROLL_AREA_NAME);\nvar ScrollArea = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeScrollArea,\n type = \"hover\",\n dir,\n scrollHideDelay = 600,\n ...scrollAreaProps\n } = props;\n const [scrollArea, setScrollArea] = React2.useState(null);\n const [viewport, setViewport] = React2.useState(null);\n const [content, setContent] = React2.useState(null);\n const [scrollbarX, setScrollbarX] = React2.useState(null);\n const [scrollbarY, setScrollbarY] = React2.useState(null);\n const [cornerWidth, setCornerWidth] = React2.useState(0);\n const [cornerHeight, setCornerHeight] = React2.useState(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = React2.useState(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = React2.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setScrollArea(node));\n const direction = useDirection(dir);\n return /* @__PURE__ */ jsx(\n ScrollAreaProvider,\n {\n scope: __scopeScrollArea,\n type,\n dir: direction,\n scrollHideDelay,\n scrollArea,\n viewport,\n onViewportChange: setViewport,\n content,\n onContentChange: setContent,\n scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n ...scrollAreaProps,\n ref: composedRefs,\n style: {\n position: \"relative\",\n // Pass corner sizes as CSS vars to reduce re-renders of context consumers\n [\"--radix-scroll-area-corner-width\"]: cornerWidth + \"px\",\n [\"--radix-scroll-area-corner-height\"]: cornerHeight + \"px\",\n ...props.style\n }\n }\n )\n }\n );\n }\n);\nScrollArea.displayName = SCROLL_AREA_NAME;\nvar VIEWPORT_NAME = \"ScrollAreaViewport\";\nvar ScrollAreaViewport = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, children, nonce, ...viewportProps } = props;\n const context = useScrollAreaContext(VIEWPORT_NAME, __scopeScrollArea);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-scroll-area-viewport\": \"\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n /**\n * We don't support `visible` because the intention is to have at least one scrollbar\n * if this component is used and `visible` will behave like `auto` in that case\n * https://developer.mozilla.org/en-US/docs/Web/CSS/overflow#description\n *\n * We don't handle `auto` because the intention is for the native implementation\n * to be hidden if using this component. We just want to ensure the node is scrollable\n * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent\n * the browser from having to work out whether to render native scrollbars or not,\n * we tell it to with the intention of hiding them in CSS.\n */\n overflowX: context.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: context.scrollbarYEnabled ? \"scroll\" : \"hidden\",\n ...props.style\n },\n children: /* @__PURE__ */ jsx(\"div\", { ref: context.onContentChange, style: { minWidth: \"100%\", display: \"table\" }, children })\n }\n )\n ] });\n }\n);\nScrollAreaViewport.displayName = VIEWPORT_NAME;\nvar SCROLLBAR_NAME = \"ScrollAreaScrollbar\";\nvar ScrollAreaScrollbar = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n React2.useEffect(() => {\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return () => {\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n return context.type === \"hover\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarHover, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"scroll\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarScroll, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"auto\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarAuto, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"always\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarVisible, { ...scrollbarProps, ref: forwardedRef }) : null;\n }\n);\nScrollAreaScrollbar.displayName = SCROLLBAR_NAME;\nvar ScrollAreaScrollbarHover = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [visible, setVisible] = React2.useState(false);\n React2.useEffect(() => {\n const scrollArea = context.scrollArea;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = () => {\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = () => {\n hideTimer = window.setTimeout(() => setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return () => {\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n }, [context.scrollArea, context.scrollHideDelay]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarAuto,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarScroll = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const isHorizontal = props.orientation === \"horizontal\";\n const debounceScrollEnd = useDebounceCallback(() => send(\"SCROLL_END\"), 100);\n const [state, send] = useStateMachine(\"hidden\", {\n hidden: {\n SCROLL: \"scrolling\"\n },\n scrolling: {\n SCROLL_END: \"idle\",\n POINTER_ENTER: \"interacting\"\n },\n interacting: {\n SCROLL: \"interacting\",\n POINTER_LEAVE: \"idle\"\n },\n idle: {\n HIDE: \"hidden\",\n SCROLL: \"scrolling\",\n POINTER_ENTER: \"interacting\"\n }\n });\n React2.useEffect(() => {\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(() => send(\"HIDE\"), context.scrollHideDelay);\n return () => window.clearTimeout(hideTimer);\n }\n }, [state, context.scrollHideDelay, send]);\n React2.useEffect(() => {\n const viewport = context.viewport;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = () => {\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n send(\"SCROLL\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [context.viewport, isHorizontal, send, debounceScrollEnd]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || state !== \"hidden\", children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\",\n ...scrollbarProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, () => send(\"POINTER_ENTER\")),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => send(\"POINTER_LEAVE\"))\n }\n ) });\n});\nvar ScrollAreaScrollbarAuto = React2.forwardRef((props, forwardedRef) => {\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { forceMount, ...scrollbarProps } = props;\n const [visible, setVisible] = React2.useState(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = useDebounceCallback(() => {\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n useResizeObserver(context.viewport, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarVisible = React2.forwardRef((props, forwardedRef) => {\n const { orientation = \"vertical\", ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const thumbRef = React2.useRef(null);\n const pointerOffsetRef = React2.useRef(0);\n const [sizes, setSizes] = React2.useState({\n content: 0,\n viewport: 0,\n scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }\n });\n const thumbRatio = getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = {\n ...scrollbarProps,\n sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb) => thumbRef.current = thumb,\n onThumbPointerUp: () => pointerOffsetRef.current = 0,\n onThumbPointerDown: (pointerPos) => pointerOffsetRef.current = pointerPos\n };\n function getScrollPosition(pointerPos, dir) {\n return getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, dir);\n }\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarX,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes, context.dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) {\n context.viewport.scrollLeft = getScrollPosition(pointerPos, context.dir);\n }\n }\n }\n );\n }\n if (orientation === \"vertical\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarY,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n }\n );\n }\n return null;\n});\nvar ScrollAreaScrollbarX = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarXChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"horizontal\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n bottom: 0,\n left: context.dir === \"rtl\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n right: context.dir === \"ltr\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n [\"--radix-scroll-area-thumb-width\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollWidth,\n viewport: context.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: toInt(computedStyle.paddingLeft),\n paddingEnd: toInt(computedStyle.paddingRight)\n }\n });\n }\n }\n }\n );\n});\nvar ScrollAreaScrollbarY = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarYChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"vertical\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n top: 0,\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: \"var(--radix-scroll-area-corner-height)\",\n [\"--radix-scroll-area-thumb-height\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: toInt(computedStyle.paddingTop),\n paddingEnd: toInt(computedStyle.paddingBottom)\n }\n });\n }\n }\n }\n );\n});\nvar [ScrollbarProvider, useScrollbarContext] = createScrollAreaContext(SCROLLBAR_NAME);\nvar ScrollAreaScrollbarImpl = React2.forwardRef((props, forwardedRef) => {\n const {\n __scopeScrollArea,\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, __scopeScrollArea);\n const [scrollbar, setScrollbar] = React2.useState(null);\n const composeRefs = useComposedRefs(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React2.useRef(null);\n const prevWebkitUserSelectRef = React2.useRef(\"\");\n const viewport = context.viewport;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n function handleDragScroll(event) {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n }\n React2.useEffect(() => {\n const handleWheel = (event) => {\n const element = event.target;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => document.removeEventListener(\"wheel\", handleWheel, { passive: false });\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n React2.useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(\n ScrollbarProvider,\n {\n scope: __scopeScrollArea,\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...scrollbarProps,\n ref: composeRefs,\n style: { position: \"absolute\", ...scrollbarProps.style },\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n if (context.viewport) context.viewport.style.scrollBehavior = \"auto\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, handleDragScroll),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n if (context.viewport) context.viewport.style.scrollBehavior = \"\";\n rectRef.current = null;\n })\n }\n )\n }\n );\n});\nvar THUMB_NAME = \"ScrollAreaThumb\";\nvar ScrollAreaThumb = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...thumbProps } = props;\n const scrollbarContext = useScrollbarContext(THUMB_NAME, props.__scopeScrollArea);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || scrollbarContext.hasThumb, children: /* @__PURE__ */ jsx(ScrollAreaThumbImpl, { ref: forwardedRef, ...thumbProps }) });\n }\n);\nvar ScrollAreaThumbImpl = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, style, ...thumbProps } = props;\n const scrollAreaContext = useScrollAreaContext(THUMB_NAME, __scopeScrollArea);\n const scrollbarContext = useScrollbarContext(THUMB_NAME, __scopeScrollArea);\n const { onThumbPositionChange } = scrollbarContext;\n const composedRef = useComposedRefs(\n forwardedRef,\n (node) => scrollbarContext.onThumbChange(node)\n );\n const removeUnlinkedScrollListenerRef = React2.useRef(void 0);\n const debounceScrollEnd = useDebounceCallback(() => {\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = void 0;\n }\n }, 100);\n React2.useEffect(() => {\n const viewport = scrollAreaContext.viewport;\n if (viewport) {\n const handleScroll = () => {\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\",\n ...thumbProps,\n ref: composedRef,\n style: {\n width: \"var(--radix-scroll-area-thumb-width)\",\n height: \"var(--radix-scroll-area-thumb-height)\",\n ...style\n },\n onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, (event) => {\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({ x, y });\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n }\n );\n }\n);\nScrollAreaThumb.displayName = THUMB_NAME;\nvar CORNER_NAME = \"ScrollAreaCorner\";\nvar ScrollAreaCorner = React2.forwardRef(\n (props, forwardedRef) => {\n const context = useScrollAreaContext(CORNER_NAME, props.__scopeScrollArea);\n const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);\n const hasCorner = context.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /* @__PURE__ */ jsx(ScrollAreaCornerImpl, { ...props, ref: forwardedRef }) : null;\n }\n);\nScrollAreaCorner.displayName = CORNER_NAME;\nvar ScrollAreaCornerImpl = React2.forwardRef((props, forwardedRef) => {\n const { __scopeScrollArea, ...cornerProps } = props;\n const context = useScrollAreaContext(CORNER_NAME, __scopeScrollArea);\n const [width, setWidth] = React2.useState(0);\n const [height, setHeight] = React2.useState(0);\n const hasSize = Boolean(width && height);\n useResizeObserver(context.scrollbarX, () => {\n const height2 = context.scrollbarX?.offsetHeight || 0;\n context.onCornerHeightChange(height2);\n setHeight(height2);\n });\n useResizeObserver(context.scrollbarY, () => {\n const width2 = context.scrollbarY?.offsetWidth || 0;\n context.onCornerWidthChange(width2);\n setWidth(width2);\n });\n return hasSize ? /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...cornerProps,\n ref: forwardedRef,\n style: {\n width,\n height,\n position: \"absolute\",\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: 0,\n ...props.style\n }\n }\n ) : null;\n});\nfunction toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\nfunction getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return isNaN(ratio) ? 0 : ratio;\n}\nfunction getThumbSize(sizes) {\n const ratio = getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio;\n return Math.max(thumbSize, 18);\n}\nfunction getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const interpolate = linearScale([minPointerPos, maxPointerPos], scrollRange);\n return interpolate(pointerPos);\n}\nfunction getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const scrollWithoutMomentum = clamp(scrollPos, scrollClampRange);\n const interpolate = linearScale([0, maxScrollPos], [0, maxThumbPos]);\n return interpolate(scrollWithoutMomentum);\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n}\nvar addUnlinkedScrollListener = (node, handler = () => {\n}) => {\n let prevPosition = { left: node.scrollLeft, top: node.scrollTop };\n let rAF = 0;\n (function loop() {\n const position = { left: node.scrollLeft, top: node.scrollTop };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll) handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return () => window.cancelAnimationFrame(rAF);\n};\nfunction useDebounceCallback(callback, delay) {\n const handleCallback = useCallbackRef(callback);\n const debounceTimerRef = React2.useRef(0);\n React2.useEffect(() => () => window.clearTimeout(debounceTimerRef.current), []);\n return React2.useCallback(() => {\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [handleCallback, delay]);\n}\nfunction useResizeObserver(element, onResize) {\n const handleResize = useCallbackRef(onResize);\n useLayoutEffect(() => {\n let rAF = 0;\n if (element) {\n const resizeObserver = new ResizeObserver(() => {\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return () => {\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n }, [element, handleResize]);\n}\nvar Root = ScrollArea;\nvar Viewport = ScrollAreaViewport;\nvar Scrollbar = ScrollAreaScrollbar;\nvar Thumb = ScrollAreaThumb;\nvar Corner = ScrollAreaCorner;\nexport {\n Corner,\n Root,\n ScrollArea,\n ScrollAreaCorner,\n ScrollAreaScrollbar,\n ScrollAreaThumb,\n ScrollAreaViewport,\n Scrollbar,\n Thumb,\n Viewport,\n createScrollAreaScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction ScrollArea({ className, children, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn(\"relative\", className)} {...props}>\n\t\t\t<ScrollAreaPrimitive.Viewport\n\t\t\t\tdata-slot=\"scroll-area-viewport\"\n\t\t\t\tclassName=\"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</ScrollAreaPrimitive.Viewport>\n\t\t\t<ScrollBar />\n\t\t\t<ScrollAreaPrimitive.Corner />\n\t\t</ScrollAreaPrimitive.Root>\n\t);\n}\n\nfunction ScrollBar({ className, orientation = \"vertical\", ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.ScrollAreaScrollbar\n\t\t\tdata-slot=\"scroll-area-scrollbar\"\n\t\t\torientation={orientation}\n\t\t\tclassName={cn(\n\t\t\t\t\"flex touch-none p-px transition-colors select-none\",\n\t\t\t\torientation === \"vertical\" && \"h-full w-2.5 border-l border-l-transparent\",\n\t\t\t\torientation === \"horizontal\" && \"h-2.5 flex-col border-t border-t-transparent\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<ScrollAreaPrimitive.ScrollAreaThumb data-slot=\"scroll-area-thumb\" className=\"bg-border relative flex-1 rounded-full\" />\n\t\t</ScrollAreaPrimitive.ScrollAreaScrollbar>\n\t);\n}\n\nexport { ScrollArea, ScrollBar };\n"],"names":["__iconNode","Search","createLucideIcon","useStateMachine","initialState","machine","React","state","event","SCROLL_AREA_NAME","createScrollAreaContext","createScrollAreaScope","createContextScope","ScrollAreaProvider","useScrollAreaContext","ScrollArea","React2","props","forwardedRef","__scopeScrollArea","type","dir","scrollHideDelay","scrollAreaProps","scrollArea","setScrollArea","viewport","setViewport","content","setContent","scrollbarX","setScrollbarX","scrollbarY","setScrollbarY","cornerWidth","setCornerWidth","cornerHeight","setCornerHeight","scrollbarXEnabled","setScrollbarXEnabled","scrollbarYEnabled","setScrollbarYEnabled","composedRefs","useComposedRefs","node","direction","useDirection","jsx","Primitive","VIEWPORT_NAME","ScrollAreaViewport","children","nonce","viewportProps","context","ref","jsxs","Fragment","SCROLLBAR_NAME","ScrollAreaScrollbar","forceMount","scrollbarProps","onScrollbarXEnabledChange","onScrollbarYEnabledChange","isHorizontal","ScrollAreaScrollbarHover","ScrollAreaScrollbarScroll","ScrollAreaScrollbarAuto","ScrollAreaScrollbarVisible","visible","setVisible","hideTimer","handlePointerEnter","handlePointerLeave","Presence","debounceScrollEnd","useDebounceCallback","send","scrollDirection","prevScrollPos","handleScroll","scrollPos","composeEventHandlers","handleResize","isOverflowX","isOverflowY","useResizeObserver","orientation","thumbRef","pointerOffsetRef","sizes","setSizes","thumbRatio","getThumbRatio","commonProps","thumb","pointerPos","getScrollPosition","getScrollPositionFromPointer","ScrollAreaScrollbarX","offset","getThumbOffsetFromScroll","ScrollAreaScrollbarY","onSizesChange","computedStyle","setComputedStyle","composeRefs","ScrollAreaScrollbarImpl","getThumbSize","maxScrollPos","isScrollingWithinScrollbarBounds","toInt","ScrollbarProvider","useScrollbarContext","hasThumb","onThumbChange","onThumbPointerUp","onThumbPointerDown","onThumbPositionChange","onDragScroll","onWheelScroll","onResize","scrollbar","setScrollbar","rectRef","prevWebkitUserSelectRef","handleWheelScroll","useCallbackRef","handleThumbPositionChange","handleDragScroll","y","handleWheel","element","THUMB_NAME","ScrollAreaThumb","thumbProps","scrollbarContext","ScrollAreaThumbImpl","style","scrollAreaContext","composedRef","removeUnlinkedScrollListenerRef","listener","addUnlinkedScrollListener","thumbRect","x","CORNER_NAME","ScrollAreaCorner","hasBothScrollbarsVisible","ScrollAreaCornerImpl","cornerProps","width","setWidth","height","setHeight","hasSize","height2","width2","value","viewportSize","contentSize","ratio","scrollbarPadding","thumbSize","pointerOffset","thumbSizePx","thumbCenter","thumbOffsetFromEnd","minPointerPos","maxPointerPos","scrollRange","linearScale","maxThumbPos","scrollClampRange","scrollWithoutMomentum","clamp","input","output","handler","prevPosition","rAF","loop","position","isHorizontalScroll","isVerticalScroll","callback","delay","handleCallback","debounceTimerRef","useLayoutEffect","resizeObserver","Root","Viewport","Corner","className","ScrollAreaPrimitive.Root","cn","ScrollAreaPrimitive.Viewport","ScrollBar","ScrollAreaPrimitive.Corner","ScrollAreaPrimitive.ScrollAreaScrollbar","ScrollAreaPrimitive.ScrollAreaThumb"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-area-zt_z9PRo.js","sources":["../../node_modules/.pnpm/lucide-react@0.543.0_react@19.1.1/node_modules/lucide-react/dist/esm/icons/search.js","../../node_modules/.pnpm/@radix-ui+react-scroll-area@1.2.10_@types+react-dom@19.1.9_@types+react@19.1.12__@types+react_2ybifjy3bplh5o2sdq6cwy7gae/node_modules/@radix-ui/react-scroll-area/dist/index.mjs","../../src/components/ui/scroll-area.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.543.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 21-4.34-4.34\", key: \"14j7rj\" }],\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }]\n];\nconst Search = createLucideIcon(\"search\", __iconNode);\n\nexport { __iconNode, Search as default };\n//# sourceMappingURL=search.js.map\n","\"use client\";\n\n// src/scroll-area.tsx\nimport * as React2 from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\n\n// src/use-state-machine.ts\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// src/scroll-area.tsx\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SCROLL_AREA_NAME = \"ScrollArea\";\nvar [createScrollAreaContext, createScrollAreaScope] = createContextScope(SCROLL_AREA_NAME);\nvar [ScrollAreaProvider, useScrollAreaContext] = createScrollAreaContext(SCROLL_AREA_NAME);\nvar ScrollArea = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeScrollArea,\n type = \"hover\",\n dir,\n scrollHideDelay = 600,\n ...scrollAreaProps\n } = props;\n const [scrollArea, setScrollArea] = React2.useState(null);\n const [viewport, setViewport] = React2.useState(null);\n const [content, setContent] = React2.useState(null);\n const [scrollbarX, setScrollbarX] = React2.useState(null);\n const [scrollbarY, setScrollbarY] = React2.useState(null);\n const [cornerWidth, setCornerWidth] = React2.useState(0);\n const [cornerHeight, setCornerHeight] = React2.useState(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = React2.useState(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = React2.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setScrollArea(node));\n const direction = useDirection(dir);\n return /* @__PURE__ */ jsx(\n ScrollAreaProvider,\n {\n scope: __scopeScrollArea,\n type,\n dir: direction,\n scrollHideDelay,\n scrollArea,\n viewport,\n onViewportChange: setViewport,\n content,\n onContentChange: setContent,\n scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n ...scrollAreaProps,\n ref: composedRefs,\n style: {\n position: \"relative\",\n // Pass corner sizes as CSS vars to reduce re-renders of context consumers\n [\"--radix-scroll-area-corner-width\"]: cornerWidth + \"px\",\n [\"--radix-scroll-area-corner-height\"]: cornerHeight + \"px\",\n ...props.style\n }\n }\n )\n }\n );\n }\n);\nScrollArea.displayName = SCROLL_AREA_NAME;\nvar VIEWPORT_NAME = \"ScrollAreaViewport\";\nvar ScrollAreaViewport = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, children, nonce, ...viewportProps } = props;\n const context = useScrollAreaContext(VIEWPORT_NAME, __scopeScrollArea);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-scroll-area-viewport\": \"\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n /**\n * We don't support `visible` because the intention is to have at least one scrollbar\n * if this component is used and `visible` will behave like `auto` in that case\n * https://developer.mozilla.org/en-US/docs/Web/CSS/overflow#description\n *\n * We don't handle `auto` because the intention is for the native implementation\n * to be hidden if using this component. We just want to ensure the node is scrollable\n * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent\n * the browser from having to work out whether to render native scrollbars or not,\n * we tell it to with the intention of hiding them in CSS.\n */\n overflowX: context.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: context.scrollbarYEnabled ? \"scroll\" : \"hidden\",\n ...props.style\n },\n children: /* @__PURE__ */ jsx(\"div\", { ref: context.onContentChange, style: { minWidth: \"100%\", display: \"table\" }, children })\n }\n )\n ] });\n }\n);\nScrollAreaViewport.displayName = VIEWPORT_NAME;\nvar SCROLLBAR_NAME = \"ScrollAreaScrollbar\";\nvar ScrollAreaScrollbar = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n React2.useEffect(() => {\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return () => {\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n return context.type === \"hover\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarHover, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"scroll\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarScroll, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"auto\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarAuto, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"always\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarVisible, { ...scrollbarProps, ref: forwardedRef }) : null;\n }\n);\nScrollAreaScrollbar.displayName = SCROLLBAR_NAME;\nvar ScrollAreaScrollbarHover = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [visible, setVisible] = React2.useState(false);\n React2.useEffect(() => {\n const scrollArea = context.scrollArea;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = () => {\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = () => {\n hideTimer = window.setTimeout(() => setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return () => {\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n }, [context.scrollArea, context.scrollHideDelay]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarAuto,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarScroll = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const isHorizontal = props.orientation === \"horizontal\";\n const debounceScrollEnd = useDebounceCallback(() => send(\"SCROLL_END\"), 100);\n const [state, send] = useStateMachine(\"hidden\", {\n hidden: {\n SCROLL: \"scrolling\"\n },\n scrolling: {\n SCROLL_END: \"idle\",\n POINTER_ENTER: \"interacting\"\n },\n interacting: {\n SCROLL: \"interacting\",\n POINTER_LEAVE: \"idle\"\n },\n idle: {\n HIDE: \"hidden\",\n SCROLL: \"scrolling\",\n POINTER_ENTER: \"interacting\"\n }\n });\n React2.useEffect(() => {\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(() => send(\"HIDE\"), context.scrollHideDelay);\n return () => window.clearTimeout(hideTimer);\n }\n }, [state, context.scrollHideDelay, send]);\n React2.useEffect(() => {\n const viewport = context.viewport;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = () => {\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n send(\"SCROLL\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [context.viewport, isHorizontal, send, debounceScrollEnd]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || state !== \"hidden\", children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\",\n ...scrollbarProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, () => send(\"POINTER_ENTER\")),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => send(\"POINTER_LEAVE\"))\n }\n ) });\n});\nvar ScrollAreaScrollbarAuto = React2.forwardRef((props, forwardedRef) => {\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { forceMount, ...scrollbarProps } = props;\n const [visible, setVisible] = React2.useState(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = useDebounceCallback(() => {\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n useResizeObserver(context.viewport, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarVisible = React2.forwardRef((props, forwardedRef) => {\n const { orientation = \"vertical\", ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const thumbRef = React2.useRef(null);\n const pointerOffsetRef = React2.useRef(0);\n const [sizes, setSizes] = React2.useState({\n content: 0,\n viewport: 0,\n scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }\n });\n const thumbRatio = getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = {\n ...scrollbarProps,\n sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb) => thumbRef.current = thumb,\n onThumbPointerUp: () => pointerOffsetRef.current = 0,\n onThumbPointerDown: (pointerPos) => pointerOffsetRef.current = pointerPos\n };\n function getScrollPosition(pointerPos, dir) {\n return getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, dir);\n }\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarX,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes, context.dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) {\n context.viewport.scrollLeft = getScrollPosition(pointerPos, context.dir);\n }\n }\n }\n );\n }\n if (orientation === \"vertical\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarY,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n }\n );\n }\n return null;\n});\nvar ScrollAreaScrollbarX = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarXChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"horizontal\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n bottom: 0,\n left: context.dir === \"rtl\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n right: context.dir === \"ltr\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n [\"--radix-scroll-area-thumb-width\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollWidth,\n viewport: context.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: toInt(computedStyle.paddingLeft),\n paddingEnd: toInt(computedStyle.paddingRight)\n }\n });\n }\n }\n }\n );\n});\nvar ScrollAreaScrollbarY = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarYChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"vertical\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n top: 0,\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: \"var(--radix-scroll-area-corner-height)\",\n [\"--radix-scroll-area-thumb-height\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: toInt(computedStyle.paddingTop),\n paddingEnd: toInt(computedStyle.paddingBottom)\n }\n });\n }\n }\n }\n );\n});\nvar [ScrollbarProvider, useScrollbarContext] = createScrollAreaContext(SCROLLBAR_NAME);\nvar ScrollAreaScrollbarImpl = React2.forwardRef((props, forwardedRef) => {\n const {\n __scopeScrollArea,\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, __scopeScrollArea);\n const [scrollbar, setScrollbar] = React2.useState(null);\n const composeRefs = useComposedRefs(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React2.useRef(null);\n const prevWebkitUserSelectRef = React2.useRef(\"\");\n const viewport = context.viewport;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n function handleDragScroll(event) {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n }\n React2.useEffect(() => {\n const handleWheel = (event) => {\n const element = event.target;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => document.removeEventListener(\"wheel\", handleWheel, { passive: false });\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n React2.useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(\n ScrollbarProvider,\n {\n scope: __scopeScrollArea,\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...scrollbarProps,\n ref: composeRefs,\n style: { position: \"absolute\", ...scrollbarProps.style },\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n if (context.viewport) context.viewport.style.scrollBehavior = \"auto\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, handleDragScroll),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n if (context.viewport) context.viewport.style.scrollBehavior = \"\";\n rectRef.current = null;\n })\n }\n )\n }\n );\n});\nvar THUMB_NAME = \"ScrollAreaThumb\";\nvar ScrollAreaThumb = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...thumbProps } = props;\n const scrollbarContext = useScrollbarContext(THUMB_NAME, props.__scopeScrollArea);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || scrollbarContext.hasThumb, children: /* @__PURE__ */ jsx(ScrollAreaThumbImpl, { ref: forwardedRef, ...thumbProps }) });\n }\n);\nvar ScrollAreaThumbImpl = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, style, ...thumbProps } = props;\n const scrollAreaContext = useScrollAreaContext(THUMB_NAME, __scopeScrollArea);\n const scrollbarContext = useScrollbarContext(THUMB_NAME, __scopeScrollArea);\n const { onThumbPositionChange } = scrollbarContext;\n const composedRef = useComposedRefs(\n forwardedRef,\n (node) => scrollbarContext.onThumbChange(node)\n );\n const removeUnlinkedScrollListenerRef = React2.useRef(void 0);\n const debounceScrollEnd = useDebounceCallback(() => {\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = void 0;\n }\n }, 100);\n React2.useEffect(() => {\n const viewport = scrollAreaContext.viewport;\n if (viewport) {\n const handleScroll = () => {\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\",\n ...thumbProps,\n ref: composedRef,\n style: {\n width: \"var(--radix-scroll-area-thumb-width)\",\n height: \"var(--radix-scroll-area-thumb-height)\",\n ...style\n },\n onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, (event) => {\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({ x, y });\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n }\n );\n }\n);\nScrollAreaThumb.displayName = THUMB_NAME;\nvar CORNER_NAME = \"ScrollAreaCorner\";\nvar ScrollAreaCorner = React2.forwardRef(\n (props, forwardedRef) => {\n const context = useScrollAreaContext(CORNER_NAME, props.__scopeScrollArea);\n const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);\n const hasCorner = context.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /* @__PURE__ */ jsx(ScrollAreaCornerImpl, { ...props, ref: forwardedRef }) : null;\n }\n);\nScrollAreaCorner.displayName = CORNER_NAME;\nvar ScrollAreaCornerImpl = React2.forwardRef((props, forwardedRef) => {\n const { __scopeScrollArea, ...cornerProps } = props;\n const context = useScrollAreaContext(CORNER_NAME, __scopeScrollArea);\n const [width, setWidth] = React2.useState(0);\n const [height, setHeight] = React2.useState(0);\n const hasSize = Boolean(width && height);\n useResizeObserver(context.scrollbarX, () => {\n const height2 = context.scrollbarX?.offsetHeight || 0;\n context.onCornerHeightChange(height2);\n setHeight(height2);\n });\n useResizeObserver(context.scrollbarY, () => {\n const width2 = context.scrollbarY?.offsetWidth || 0;\n context.onCornerWidthChange(width2);\n setWidth(width2);\n });\n return hasSize ? /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...cornerProps,\n ref: forwardedRef,\n style: {\n width,\n height,\n position: \"absolute\",\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: 0,\n ...props.style\n }\n }\n ) : null;\n});\nfunction toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\nfunction getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return isNaN(ratio) ? 0 : ratio;\n}\nfunction getThumbSize(sizes) {\n const ratio = getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio;\n return Math.max(thumbSize, 18);\n}\nfunction getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const interpolate = linearScale([minPointerPos, maxPointerPos], scrollRange);\n return interpolate(pointerPos);\n}\nfunction getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const scrollWithoutMomentum = clamp(scrollPos, scrollClampRange);\n const interpolate = linearScale([0, maxScrollPos], [0, maxThumbPos]);\n return interpolate(scrollWithoutMomentum);\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n}\nvar addUnlinkedScrollListener = (node, handler = () => {\n}) => {\n let prevPosition = { left: node.scrollLeft, top: node.scrollTop };\n let rAF = 0;\n (function loop() {\n const position = { left: node.scrollLeft, top: node.scrollTop };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll) handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return () => window.cancelAnimationFrame(rAF);\n};\nfunction useDebounceCallback(callback, delay) {\n const handleCallback = useCallbackRef(callback);\n const debounceTimerRef = React2.useRef(0);\n React2.useEffect(() => () => window.clearTimeout(debounceTimerRef.current), []);\n return React2.useCallback(() => {\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [handleCallback, delay]);\n}\nfunction useResizeObserver(element, onResize) {\n const handleResize = useCallbackRef(onResize);\n useLayoutEffect(() => {\n let rAF = 0;\n if (element) {\n const resizeObserver = new ResizeObserver(() => {\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return () => {\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n }, [element, handleResize]);\n}\nvar Root = ScrollArea;\nvar Viewport = ScrollAreaViewport;\nvar Scrollbar = ScrollAreaScrollbar;\nvar Thumb = ScrollAreaThumb;\nvar Corner = ScrollAreaCorner;\nexport {\n Corner,\n Root,\n ScrollArea,\n ScrollAreaCorner,\n ScrollAreaScrollbar,\n ScrollAreaThumb,\n ScrollAreaViewport,\n Scrollbar,\n Thumb,\n Viewport,\n createScrollAreaScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction ScrollArea({ className, children, ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.Root data-slot=\"scroll-area\" className={cn(\"relative\", className)} {...props}>\n\t\t\t<ScrollAreaPrimitive.Viewport\n\t\t\t\tdata-slot=\"scroll-area-viewport\"\n\t\t\t\tclassName=\"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</ScrollAreaPrimitive.Viewport>\n\t\t\t<ScrollBar />\n\t\t\t<ScrollAreaPrimitive.Corner />\n\t\t</ScrollAreaPrimitive.Root>\n\t);\n}\n\nfunction ScrollBar({ className, orientation = \"vertical\", ...props }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.ScrollAreaScrollbar\n\t\t\tdata-slot=\"scroll-area-scrollbar\"\n\t\t\torientation={orientation}\n\t\t\tclassName={cn(\n\t\t\t\t\"flex touch-none p-px transition-colors select-none\",\n\t\t\t\torientation === \"vertical\" && \"h-full w-2.5 border-l border-l-transparent\",\n\t\t\t\torientation === \"horizontal\" && \"h-2.5 flex-col border-t border-t-transparent\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<ScrollAreaPrimitive.ScrollAreaThumb data-slot=\"scroll-area-thumb\" className=\"bg-border relative flex-1 rounded-full\" />\n\t\t</ScrollAreaPrimitive.ScrollAreaScrollbar>\n\t);\n}\n\nexport { ScrollArea, ScrollBar };\n"],"names":["__iconNode","Search","createLucideIcon","useStateMachine","initialState","machine","React","state","event","SCROLL_AREA_NAME","createScrollAreaContext","createScrollAreaScope","createContextScope","ScrollAreaProvider","useScrollAreaContext","ScrollArea","React2","props","forwardedRef","__scopeScrollArea","type","dir","scrollHideDelay","scrollAreaProps","scrollArea","setScrollArea","viewport","setViewport","content","setContent","scrollbarX","setScrollbarX","scrollbarY","setScrollbarY","cornerWidth","setCornerWidth","cornerHeight","setCornerHeight","scrollbarXEnabled","setScrollbarXEnabled","scrollbarYEnabled","setScrollbarYEnabled","composedRefs","useComposedRefs","node","direction","useDirection","jsx","Primitive","VIEWPORT_NAME","ScrollAreaViewport","children","nonce","viewportProps","context","ref","jsxs","Fragment","SCROLLBAR_NAME","ScrollAreaScrollbar","forceMount","scrollbarProps","onScrollbarXEnabledChange","onScrollbarYEnabledChange","isHorizontal","ScrollAreaScrollbarHover","ScrollAreaScrollbarScroll","ScrollAreaScrollbarAuto","ScrollAreaScrollbarVisible","visible","setVisible","hideTimer","handlePointerEnter","handlePointerLeave","Presence","debounceScrollEnd","useDebounceCallback","send","scrollDirection","prevScrollPos","handleScroll","scrollPos","composeEventHandlers","handleResize","isOverflowX","isOverflowY","useResizeObserver","orientation","thumbRef","pointerOffsetRef","sizes","setSizes","thumbRatio","getThumbRatio","commonProps","thumb","pointerPos","getScrollPosition","getScrollPositionFromPointer","ScrollAreaScrollbarX","offset","getThumbOffsetFromScroll","ScrollAreaScrollbarY","onSizesChange","computedStyle","setComputedStyle","composeRefs","ScrollAreaScrollbarImpl","getThumbSize","maxScrollPos","isScrollingWithinScrollbarBounds","toInt","ScrollbarProvider","useScrollbarContext","hasThumb","onThumbChange","onThumbPointerUp","onThumbPointerDown","onThumbPositionChange","onDragScroll","onWheelScroll","onResize","scrollbar","setScrollbar","rectRef","prevWebkitUserSelectRef","handleWheelScroll","useCallbackRef","handleThumbPositionChange","handleDragScroll","x","y","handleWheel","element","THUMB_NAME","ScrollAreaThumb","thumbProps","scrollbarContext","ScrollAreaThumbImpl","style","scrollAreaContext","composedRef","removeUnlinkedScrollListenerRef","listener","addUnlinkedScrollListener","thumbRect","CORNER_NAME","ScrollAreaCorner","hasBothScrollbarsVisible","ScrollAreaCornerImpl","cornerProps","width","setWidth","height","setHeight","hasSize","height2","width2","value","viewportSize","contentSize","ratio","scrollbarPadding","thumbSize","pointerOffset","thumbSizePx","thumbCenter","thumbOffsetFromEnd","minPointerPos","maxPointerPos","scrollRange","linearScale","maxThumbPos","scrollClampRange","scrollWithoutMomentum","clamp","input","output","handler","prevPosition","rAF","loop","position","isHorizontalScroll","isVerticalScroll","callback","delay","handleCallback","debounceTimerRef","useLayoutEffect","resizeObserver","Root","Viewport","Corner","className","ScrollAreaPrimitive.Root","cn","ScrollAreaPrimitive.Viewport","ScrollBar","ScrollAreaPrimitive.Corner","ScrollAreaPrimitive.ScrollAreaScrollbar","ScrollAreaPrimitive.ScrollAreaThumb"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,2 +0,0 @@
1
- "use strict";const r=require("./jsx-runtime-BjzqJBtL.js"),X=require("react"),Pt=require("react-dom"),ne=require("./index-BydcKEwP.js"),p=require("./textarea-Cklud2kp.js"),N=require("./index-6ER8bShj.js"),Y=require("./floating-ui.react-dom-fLHuukRa.js"),bt=require("./floating-ui.dom-CJ93ksva.js"),Z=require("./utils-IjLH3w2e.js");function Ie(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,i.get?i:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const n=Ie(X),Te=Ie(Pt);function Ne(e){const o=e+"CollectionProvider",[t,i]=p.createContextScope(o),[a,d]=t(o,{collectionRef:{current:null},itemMap:new Map}),s=u=>{const{scope:h,children:S}=u,m=X.useRef(null),v=X.useRef(new Map).current;return r.jsxRuntimeExports.jsx(a,{scope:h,itemMap:v,collectionRef:m,children:S})};s.displayName=o;const l=e+"CollectionSlot",c=N.createSlot(l),f=X.forwardRef((u,h)=>{const{scope:S,children:m}=u,v=d(l,S),b=N.useComposedRefs(h,v.collectionRef);return r.jsxRuntimeExports.jsx(c,{ref:b,children:m})});f.displayName=l;const g=e+"CollectionItemSlot",w="data-radix-collection-item",j=N.createSlot(g),E=X.forwardRef((u,h)=>{const{scope:S,children:m,...v}=u,b=X.useRef(null),_=N.useComposedRefs(h,b),H=d(g,S);return X.useEffect(()=>(H.itemMap.set(b,{ref:b,...v}),()=>void H.itemMap.delete(b))),r.jsxRuntimeExports.jsx(j,{[w]:"",ref:_,children:m})});E.displayName=g;function R(u){const h=d(e+"CollectionConsumer",u);return X.useCallback(()=>{const m=h.collectionRef.current;if(!m)return[];const v=Array.from(m.querySelectorAll(`[${w}]`));return Array.from(h.itemMap.values()).sort((H,T)=>v.indexOf(H.ref.current)-v.indexOf(T.ref.current))},[h.collectionRef,h.itemMap])}return[{Provider:s,Slot:f,ItemSlot:E},R,i]}var It="Arrow",_e=n.forwardRef((e,o)=>{const{children:t,width:i=10,height:a=5,...d}=e;return r.jsxRuntimeExports.jsx(p.Primitive.svg,{...d,ref:o,width:i,height:a,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?t:r.jsxRuntimeExports.jsx("polygon",{points:"0,0 30,0 15,10"})})});_e.displayName=It;var Tt=_e;function Ae(e){const[o,t]=n.useState(void 0);return p.useLayoutEffect2(()=>{if(e){t({width:e.offsetWidth,height:e.offsetHeight});const i=new ResizeObserver(a=>{if(!Array.isArray(a)||!a.length)return;const d=a[0];let s,l;if("borderBoxSize"in d){const c=d.borderBoxSize,f=Array.isArray(c)?c[0]:c;s=f.inlineSize,l=f.blockSize}else s=e.offsetWidth,l=e.offsetHeight;t({width:s,height:l})});return i.observe(e,{box:"border-box"}),()=>i.unobserve(e)}else t(void 0)},[e]),o}var Ce="Popper",[Oe,je]=p.createContextScope(Ce),[Nt,Me]=Oe(Ce),De=e=>{const{__scopePopper:o,children:t}=e,[i,a]=n.useState(null);return r.jsxRuntimeExports.jsx(Nt,{scope:o,anchor:i,onAnchorChange:a,children:t})};De.displayName=Ce;var He="PopperAnchor",Le=n.forwardRef((e,o)=>{const{__scopePopper:t,virtualRef:i,...a}=e,d=Me(He,t),s=n.useRef(null),l=N.useComposedRefs(o,s),c=n.useRef(null);return n.useEffect(()=>{const f=c.current;c.current=i?.current||s.current,f!==c.current&&d.onAnchorChange(c.current)}),i?null:r.jsxRuntimeExports.jsx(p.Primitive.div,{...a,ref:l})});Le.displayName=He;var Pe="PopperContent",[_t,At]=Oe(Pe),ke=n.forwardRef((e,o)=>{const{__scopePopper:t,side:i="bottom",sideOffset:a=0,align:d="center",alignOffset:s=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:f=[],collisionPadding:g=0,sticky:w="partial",hideWhenDetached:j=!1,updatePositionStrategy:E="optimized",onPlaced:R,...u}=e,h=Me(Pe,t),[S,m]=n.useState(null),v=N.useComposedRefs(o,x=>m(x)),[b,_]=n.useState(null),H=Ae(b),T=H?.width??0,L=H?.height??0,K=i+(d!=="center"?"-"+d:""),q=typeof g=="number"?g:{top:0,right:0,bottom:0,left:0,...g},B=Array.isArray(f)?f:[f],W=B.length>0,k={padding:q,boundary:B.filter(Mt),altBoundary:W},{refs:$,floatingStyles:V,placement:A,isPositioned:M,middlewareData:O}=Y.useFloating({strategy:"fixed",placement:K,whileElementsMounted:(...x)=>bt.autoUpdate(...x,{animationFrame:E==="always"}),elements:{reference:h.anchor},middleware:[Y.offset({mainAxis:a+L,alignmentAxis:s}),c&&Y.shift({mainAxis:!0,crossAxis:!1,limiter:w==="partial"?Y.limitShift():void 0,...k}),c&&Y.flip({...k}),Y.size({...k,apply:({elements:x,rects:P,availableWidth:D,availableHeight:y})=>{const{width:C,height:I}=P.reference,z=x.floating.style;z.setProperty("--radix-popper-available-width",`${D}px`),z.setProperty("--radix-popper-available-height",`${y}px`),z.setProperty("--radix-popper-anchor-width",`${C}px`),z.setProperty("--radix-popper-anchor-height",`${I}px`)}}),b&&Y.arrow({element:b,padding:l}),Dt({arrowWidth:T,arrowHeight:L}),j&&Y.hide({strategy:"referenceHidden",...k})]}),[U,ce]=ze(A),ee=p.useCallbackRef(R);p.useLayoutEffect2(()=>{M&&ee?.()},[M,ee]);const le=O.arrow?.x,de=O.arrow?.y,G=O.arrow?.centerOffset!==0,[ie,te]=n.useState();return p.useLayoutEffect2(()=>{S&&te(window.getComputedStyle(S).zIndex)},[S]),r.jsxRuntimeExports.jsx("div",{ref:$.setFloating,"data-radix-popper-content-wrapper":"",style:{...V,transform:M?V.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ie,"--radix-popper-transform-origin":[O.transformOrigin?.x,O.transformOrigin?.y].join(" "),...O.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:r.jsxRuntimeExports.jsx(_t,{scope:t,placedSide:U,onArrowChange:_,arrowX:le,arrowY:de,shouldHideArrow:G,children:r.jsxRuntimeExports.jsx(p.Primitive.div,{"data-side":U,"data-align":ce,...u,ref:v,style:{...u.style,animation:M?void 0:"none"}})})})});ke.displayName=Pe;var Be="PopperArrow",Ot={top:"bottom",right:"left",bottom:"top",left:"right"},Ve=n.forwardRef(function(o,t){const{__scopePopper:i,...a}=o,d=At(Be,i),s=Ot[d.placedSide];return r.jsxRuntimeExports.jsx("span",{ref:d.onArrowChange,style:{position:"absolute",left:d.arrowX,top:d.arrowY,[s]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[d.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[d.placedSide],visibility:d.shouldHideArrow?"hidden":void 0},children:r.jsxRuntimeExports.jsx(Tt,{...a,ref:t,style:{...a.style,display:"block"}})})});Ve.displayName=Be;function Mt(e){return e!==null}var Dt=e=>({name:"transformOrigin",options:e,fn(o){const{placement:t,rects:i,middlewareData:a}=o,s=a.arrow?.centerOffset!==0,l=s?0:e.arrowWidth,c=s?0:e.arrowHeight,[f,g]=ze(t),w={start:"0%",center:"50%",end:"100%"}[g],j=(a.arrow?.x??0)+l/2,E=(a.arrow?.y??0)+c/2;let R="",u="";return f==="bottom"?(R=s?w:`${j}px`,u=`${-c}px`):f==="top"?(R=s?w:`${j}px`,u=`${i.floating.height+c}px`):f==="right"?(R=`${-c}px`,u=s?w:`${E}px`):f==="left"&&(R=`${i.floating.width+c}px`,u=s?w:`${E}px`),{data:{x:R,y:u}}}});function ze(e){const[o,t="center"]=e.split("-");return[o,t]}var We=De,$e=Le,Ue=ke,Fe=Ve;const Ht=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Lt=ne.createLucideIcon("chevron-up",Ht);function Ke(e){const o=n.useRef({value:e,previous:e});return n.useMemo(()=>(o.current.value!==e&&(o.current.previous=o.current.value,o.current.value=e),o.current.previous),[e])}var qe=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),kt="VisuallyHidden",Ge=n.forwardRef((e,o)=>r.jsxRuntimeExports.jsx(p.Primitive.span,{...e,ref:o,style:{...qe,...e.style}}));Ge.displayName=kt;var Bt=Ge,Vt=[" ","Enter","ArrowUp","ArrowDown"],zt=[" ","Enter"],re="Select",[fe,me,Wt]=Ne(re),[ae,No]=p.createContextScope(re,[Wt,je]),xe=je(),[$t,J]=ae(re),[Ut,Ft]=ae(re),Ye=e=>{const{__scopeSelect:o,children:t,open:i,defaultOpen:a,onOpenChange:d,value:s,defaultValue:l,onValueChange:c,dir:f,name:g,autoComplete:w,disabled:j,required:E,form:R}=e,u=xe(o),[h,S]=n.useState(null),[m,v]=n.useState(null),[b,_]=n.useState(!1),H=ne.useDirection(f),[T,L]=p.useControllableState({prop:i,defaultProp:a??!1,onChange:d,caller:re}),[K,q]=p.useControllableState({prop:s,defaultProp:l,onChange:c,caller:re}),B=n.useRef(null),W=h?R||!!h.closest("form"):!0,[k,$]=n.useState(new Set),V=Array.from(k).map(A=>A.props.value).join(";");return r.jsxRuntimeExports.jsx(We,{...u,children:r.jsxRuntimeExports.jsxs($t,{required:E,scope:o,trigger:h,onTriggerChange:S,valueNode:m,onValueNodeChange:v,valueNodeHasChildren:b,onValueNodeHasChildrenChange:_,contentId:p.useId(),value:K,onValueChange:q,open:T,onOpenChange:L,dir:H,triggerPointerDownPosRef:B,disabled:j,children:[r.jsxRuntimeExports.jsx(fe.Provider,{scope:o,children:r.jsxRuntimeExports.jsx(Ut,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(A=>{$(M=>new Set(M).add(A))},[]),onNativeOptionRemove:n.useCallback(A=>{$(M=>{const O=new Set(M);return O.delete(A),O})},[]),children:t})}),W?r.jsxRuntimeExports.jsxs(wt,{"aria-hidden":!0,required:E,tabIndex:-1,name:g,autoComplete:w,value:K,onChange:A=>q(A.target.value),disabled:j,form:R,children:[K===void 0?r.jsxRuntimeExports.jsx("option",{value:""}):null,Array.from(k)]},V):null]})})};Ye.displayName=re;var Xe="SelectTrigger",Ze=n.forwardRef((e,o)=>{const{__scopeSelect:t,disabled:i=!1,...a}=e,d=xe(t),s=J(Xe,t),l=s.disabled||i,c=N.useComposedRefs(o,s.onTriggerChange),f=me(t),g=n.useRef("touch"),[w,j,E]=Et(u=>{const h=f().filter(v=>!v.disabled),S=h.find(v=>v.value===s.value),m=yt(h,u,S);m!==void 0&&s.onValueChange(m.value)}),R=u=>{l||(s.onOpenChange(!0),E()),u&&(s.triggerPointerDownPosRef.current={x:Math.round(u.pageX),y:Math.round(u.pageY)})};return r.jsxRuntimeExports.jsx($e,{asChild:!0,...d,children:r.jsxRuntimeExports.jsx(p.Primitive.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":Rt(s.value)?"":void 0,...a,ref:c,onClick:p.composeEventHandlers(a.onClick,u=>{u.currentTarget.focus(),g.current!=="mouse"&&R(u)}),onPointerDown:p.composeEventHandlers(a.onPointerDown,u=>{g.current=u.pointerType;const h=u.target;h.hasPointerCapture(u.pointerId)&&h.releasePointerCapture(u.pointerId),u.button===0&&u.ctrlKey===!1&&u.pointerType==="mouse"&&(R(u),u.preventDefault())}),onKeyDown:p.composeEventHandlers(a.onKeyDown,u=>{const h=w.current!=="";!(u.ctrlKey||u.altKey||u.metaKey)&&u.key.length===1&&j(u.key),!(h&&u.key===" ")&&Vt.includes(u.key)&&(R(),u.preventDefault())})})})});Ze.displayName=Xe;var Je="SelectValue",Qe=n.forwardRef((e,o)=>{const{__scopeSelect:t,className:i,style:a,children:d,placeholder:s="",...l}=e,c=J(Je,t),{onValueNodeHasChildrenChange:f}=c,g=d!==void 0,w=N.useComposedRefs(o,c.onValueNodeChange);return p.useLayoutEffect2(()=>{f(g)},[f,g]),r.jsxRuntimeExports.jsx(p.Primitive.span,{...l,ref:w,style:{pointerEvents:"none"},children:Rt(c.value)?r.jsxRuntimeExports.jsx(r.jsxRuntimeExports.Fragment,{children:s}):d})});Qe.displayName=Je;var Kt="SelectIcon",et=n.forwardRef((e,o)=>{const{__scopeSelect:t,children:i,...a}=e;return r.jsxRuntimeExports.jsx(p.Primitive.span,{"aria-hidden":!0,...a,ref:o,children:i||"▼"})});et.displayName=Kt;var qt="SelectPortal",tt=e=>r.jsxRuntimeExports.jsx(p.Portal,{asChild:!0,...e});tt.displayName=qt;var se="SelectContent",ot=n.forwardRef((e,o)=>{const t=J(se,e.__scopeSelect),[i,a]=n.useState();if(p.useLayoutEffect2(()=>{a(new DocumentFragment)},[]),!t.open){const d=i;return d?Te.createPortal(r.jsxRuntimeExports.jsx(nt,{scope:e.__scopeSelect,children:r.jsxRuntimeExports.jsx(fe.Slot,{scope:e.__scopeSelect,children:r.jsxRuntimeExports.jsx("div",{children:e.children})})}),d):null}return r.jsxRuntimeExports.jsx(rt,{...e,ref:o})});ot.displayName=se;var F=10,[nt,Q]=ae(se),Gt="SelectContentImpl",Yt=N.createSlot("SelectContent.RemoveScroll"),rt=n.forwardRef((e,o)=>{const{__scopeSelect:t,position:i="item-aligned",onCloseAutoFocus:a,onEscapeKeyDown:d,onPointerDownOutside:s,side:l,sideOffset:c,align:f,alignOffset:g,arrowPadding:w,collisionBoundary:j,collisionPadding:E,sticky:R,hideWhenDetached:u,avoidCollisions:h,...S}=e,m=J(se,t),[v,b]=n.useState(null),[_,H]=n.useState(null),T=N.useComposedRefs(o,x=>b(x)),[L,K]=n.useState(null),[q,B]=n.useState(null),W=me(t),[k,$]=n.useState(!1),V=n.useRef(!1);n.useEffect(()=>{if(v)return p.hideOthers(v)},[v]),p.useFocusGuards();const A=n.useCallback(x=>{const[P,...D]=W().map(I=>I.ref.current),[y]=D.slice(-1),C=document.activeElement;for(const I of x)if(I===C||(I?.scrollIntoView({block:"nearest"}),I===P&&_&&(_.scrollTop=0),I===y&&_&&(_.scrollTop=_.scrollHeight),I?.focus(),document.activeElement!==C))return},[W,_]),M=n.useCallback(()=>A([L,v]),[A,L,v]);n.useEffect(()=>{k&&M()},[k,M]);const{onOpenChange:O,triggerPointerDownPosRef:U}=m;n.useEffect(()=>{if(v){let x={x:0,y:0};const P=y=>{x={x:Math.abs(Math.round(y.pageX)-(U.current?.x??0)),y:Math.abs(Math.round(y.pageY)-(U.current?.y??0))}},D=y=>{x.x<=10&&x.y<=10?y.preventDefault():v.contains(y.target)||O(!1),document.removeEventListener("pointermove",P),U.current=null};return U.current!==null&&(document.addEventListener("pointermove",P),document.addEventListener("pointerup",D,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",P),document.removeEventListener("pointerup",D,{capture:!0})}}},[v,O,U]),n.useEffect(()=>{const x=()=>O(!1);return window.addEventListener("blur",x),window.addEventListener("resize",x),()=>{window.removeEventListener("blur",x),window.removeEventListener("resize",x)}},[O]);const[ce,ee]=Et(x=>{const P=W().filter(C=>!C.disabled),D=P.find(C=>C.ref.current===document.activeElement),y=yt(P,x,D);y&&setTimeout(()=>y.ref.current.focus())}),le=n.useCallback((x,P,D)=>{const y=!V.current&&!D;(m.value!==void 0&&m.value===P||y)&&(K(x),y&&(V.current=!0))},[m.value]),de=n.useCallback(()=>v?.focus(),[v]),G=n.useCallback((x,P,D)=>{const y=!V.current&&!D;(m.value!==void 0&&m.value===P||y)&&B(x)},[m.value]),ie=i==="popper"?Se:st,te=ie===Se?{side:l,sideOffset:c,align:f,alignOffset:g,arrowPadding:w,collisionBoundary:j,collisionPadding:E,sticky:R,hideWhenDetached:u,avoidCollisions:h}:{};return r.jsxRuntimeExports.jsx(nt,{scope:t,content:v,viewport:_,onViewportChange:H,itemRefCallback:le,selectedItem:L,onItemLeave:de,itemTextRefCallback:G,focusSelectedItem:M,selectedItemText:q,position:i,isPositioned:k,searchRef:ce,children:r.jsxRuntimeExports.jsx(p.ReactRemoveScroll,{as:Yt,allowPinchZoom:!0,children:r.jsxRuntimeExports.jsx(p.FocusScope,{asChild:!0,trapped:m.open,onMountAutoFocus:x=>{x.preventDefault()},onUnmountAutoFocus:p.composeEventHandlers(a,x=>{m.trigger?.focus({preventScroll:!0}),x.preventDefault()}),children:r.jsxRuntimeExports.jsx(p.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:d,onPointerDownOutside:s,onFocusOutside:x=>x.preventDefault(),onDismiss:()=>m.onOpenChange(!1),children:r.jsxRuntimeExports.jsx(ie,{role:"listbox",id:m.contentId,"data-state":m.open?"open":"closed",dir:m.dir,onContextMenu:x=>x.preventDefault(),...S,...te,onPlaced:()=>$(!0),ref:T,style:{display:"flex",flexDirection:"column",outline:"none",...S.style},onKeyDown:p.composeEventHandlers(S.onKeyDown,x=>{const P=x.ctrlKey||x.altKey||x.metaKey;if(x.key==="Tab"&&x.preventDefault(),!P&&x.key.length===1&&ee(x.key),["ArrowUp","ArrowDown","Home","End"].includes(x.key)){let y=W().filter(C=>!C.disabled).map(C=>C.ref.current);if(["ArrowUp","End"].includes(x.key)&&(y=y.slice().reverse()),["ArrowUp","ArrowDown"].includes(x.key)){const C=x.target,I=y.indexOf(C);y=y.slice(I+1)}setTimeout(()=>A(y)),x.preventDefault()}})})})})})})});rt.displayName=Gt;var Xt="SelectItemAlignedPosition",st=n.forwardRef((e,o)=>{const{__scopeSelect:t,onPlaced:i,...a}=e,d=J(se,t),s=Q(se,t),[l,c]=n.useState(null),[f,g]=n.useState(null),w=N.useComposedRefs(o,T=>g(T)),j=me(t),E=n.useRef(!1),R=n.useRef(!0),{viewport:u,selectedItem:h,selectedItemText:S,focusSelectedItem:m}=s,v=n.useCallback(()=>{if(d.trigger&&d.valueNode&&l&&f&&u&&h&&S){const T=d.trigger.getBoundingClientRect(),L=f.getBoundingClientRect(),K=d.valueNode.getBoundingClientRect(),q=S.getBoundingClientRect();if(d.dir!=="rtl"){const C=q.left-L.left,I=K.left-C,z=T.left-I,oe=T.width+z,he=Math.max(oe,L.width),ve=window.innerWidth-F,ge=ne.clamp(I,[F,Math.max(F,ve-he)]);l.style.minWidth=oe+"px",l.style.left=ge+"px"}else{const C=L.right-q.right,I=window.innerWidth-K.right-C,z=window.innerWidth-T.right-I,oe=T.width+z,he=Math.max(oe,L.width),ve=window.innerWidth-F,ge=ne.clamp(I,[F,Math.max(F,ve-he)]);l.style.minWidth=oe+"px",l.style.right=ge+"px"}const B=j(),W=window.innerHeight-F*2,k=u.scrollHeight,$=window.getComputedStyle(f),V=parseInt($.borderTopWidth,10),A=parseInt($.paddingTop,10),M=parseInt($.borderBottomWidth,10),O=parseInt($.paddingBottom,10),U=V+A+k+O+M,ce=Math.min(h.offsetHeight*5,U),ee=window.getComputedStyle(u),le=parseInt(ee.paddingTop,10),de=parseInt(ee.paddingBottom,10),G=T.top+T.height/2-F,ie=W-G,te=h.offsetHeight/2,x=h.offsetTop+te,P=V+A+x,D=U-P;if(P<=G){const C=B.length>0&&h===B[B.length-1].ref.current;l.style.bottom="0px";const I=f.clientHeight-u.offsetTop-u.offsetHeight,z=Math.max(ie,te+(C?de:0)+I+M),oe=P+z;l.style.height=oe+"px"}else{const C=B.length>0&&h===B[0].ref.current;l.style.top="0px";const z=Math.max(G,V+u.offsetTop+(C?le:0)+te)+D;l.style.height=z+"px",u.scrollTop=P-G+u.offsetTop}l.style.margin=`${F}px 0`,l.style.minHeight=ce+"px",l.style.maxHeight=W+"px",i?.(),requestAnimationFrame(()=>E.current=!0)}},[j,d.trigger,d.valueNode,l,f,u,h,S,d.dir,i]);p.useLayoutEffect2(()=>v(),[v]);const[b,_]=n.useState();p.useLayoutEffect2(()=>{f&&_(window.getComputedStyle(f).zIndex)},[f]);const H=n.useCallback(T=>{T&&R.current===!0&&(v(),m?.(),R.current=!1)},[v,m]);return r.jsxRuntimeExports.jsx(Jt,{scope:t,contentWrapper:l,shouldExpandOnScrollRef:E,onScrollButtonChange:H,children:r.jsxRuntimeExports.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:b},children:r.jsxRuntimeExports.jsx(p.Primitive.div,{...a,ref:w,style:{boxSizing:"border-box",maxHeight:"100%",...a.style}})})})});st.displayName=Xt;var Zt="SelectPopperPosition",Se=n.forwardRef((e,o)=>{const{__scopeSelect:t,align:i="start",collisionPadding:a=F,...d}=e,s=xe(t);return r.jsxRuntimeExports.jsx(Ue,{...s,...d,ref:o,align:i,collisionPadding:a,style:{boxSizing:"border-box",...d.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});Se.displayName=Zt;var[Jt,be]=ae(se,{}),we="SelectViewport",it=n.forwardRef((e,o)=>{const{__scopeSelect:t,nonce:i,...a}=e,d=Q(we,t),s=be(we,t),l=N.useComposedRefs(o,d.onViewportChange),c=n.useRef(0);return r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),r.jsxRuntimeExports.jsx(fe.Slot,{scope:t,children:r.jsxRuntimeExports.jsx(p.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...a,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...a.style},onScroll:p.composeEventHandlers(a.onScroll,f=>{const g=f.currentTarget,{contentWrapper:w,shouldExpandOnScrollRef:j}=s;if(j?.current&&w){const E=Math.abs(c.current-g.scrollTop);if(E>0){const R=window.innerHeight-F*2,u=parseFloat(w.style.minHeight),h=parseFloat(w.style.height),S=Math.max(u,h);if(S<R){const m=S+E,v=Math.min(R,m),b=m-v;w.style.height=v+"px",w.style.bottom==="0px"&&(g.scrollTop=b>0?b:0,w.style.justifyContent="flex-end")}}}c.current=g.scrollTop})})})]})});it.displayName=we;var at="SelectGroup",[Qt,eo]=ae(at),ct=n.forwardRef((e,o)=>{const{__scopeSelect:t,...i}=e,a=p.useId();return r.jsxRuntimeExports.jsx(Qt,{scope:t,id:a,children:r.jsxRuntimeExports.jsx(p.Primitive.div,{role:"group","aria-labelledby":a,...i,ref:o})})});ct.displayName=at;var lt="SelectLabel",dt=n.forwardRef((e,o)=>{const{__scopeSelect:t,...i}=e,a=eo(lt,t);return r.jsxRuntimeExports.jsx(p.Primitive.div,{id:a.id,...i,ref:o})});dt.displayName=lt;var pe="SelectItem",[to,ut]=ae(pe),pt=n.forwardRef((e,o)=>{const{__scopeSelect:t,value:i,disabled:a=!1,textValue:d,...s}=e,l=J(pe,t),c=Q(pe,t),f=l.value===i,[g,w]=n.useState(d??""),[j,E]=n.useState(!1),R=N.useComposedRefs(o,m=>c.itemRefCallback?.(m,i,a)),u=p.useId(),h=n.useRef("touch"),S=()=>{a||(l.onValueChange(i),l.onOpenChange(!1))};if(i==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return r.jsxRuntimeExports.jsx(to,{scope:t,value:i,disabled:a,textId:u,isSelected:f,onItemTextChange:n.useCallback(m=>{w(v=>v||(m?.textContent??"").trim())},[]),children:r.jsxRuntimeExports.jsx(fe.ItemSlot,{scope:t,value:i,disabled:a,textValue:g,children:r.jsxRuntimeExports.jsx(p.Primitive.div,{role:"option","aria-labelledby":u,"data-highlighted":j?"":void 0,"aria-selected":f&&j,"data-state":f?"checked":"unchecked","aria-disabled":a||void 0,"data-disabled":a?"":void 0,tabIndex:a?void 0:-1,...s,ref:R,onFocus:p.composeEventHandlers(s.onFocus,()=>E(!0)),onBlur:p.composeEventHandlers(s.onBlur,()=>E(!1)),onClick:p.composeEventHandlers(s.onClick,()=>{h.current!=="mouse"&&S()}),onPointerUp:p.composeEventHandlers(s.onPointerUp,()=>{h.current==="mouse"&&S()}),onPointerDown:p.composeEventHandlers(s.onPointerDown,m=>{h.current=m.pointerType}),onPointerMove:p.composeEventHandlers(s.onPointerMove,m=>{h.current=m.pointerType,a?c.onItemLeave?.():h.current==="mouse"&&m.currentTarget.focus({preventScroll:!0})}),onPointerLeave:p.composeEventHandlers(s.onPointerLeave,m=>{m.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:p.composeEventHandlers(s.onKeyDown,m=>{c.searchRef?.current!==""&&m.key===" "||(zt.includes(m.key)&&S(),m.key===" "&&m.preventDefault())})})})})});pt.displayName=pe;var ue="SelectItemText",ft=n.forwardRef((e,o)=>{const{__scopeSelect:t,className:i,style:a,...d}=e,s=J(ue,t),l=Q(ue,t),c=ut(ue,t),f=Ft(ue,t),[g,w]=n.useState(null),j=N.useComposedRefs(o,S=>w(S),c.onItemTextChange,S=>l.itemTextRefCallback?.(S,c.value,c.disabled)),E=g?.textContent,R=n.useMemo(()=>r.jsxRuntimeExports.jsx("option",{value:c.value,disabled:c.disabled,children:E},c.value),[c.disabled,c.value,E]),{onNativeOptionAdd:u,onNativeOptionRemove:h}=f;return p.useLayoutEffect2(()=>(u(R),()=>h(R)),[u,h,R]),r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(p.Primitive.span,{id:c.textId,...d,ref:j}),c.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Te.createPortal(d.children,s.valueNode):null]})});ft.displayName=ue;var mt="SelectItemIndicator",xt=n.forwardRef((e,o)=>{const{__scopeSelect:t,...i}=e;return ut(mt,t).isSelected?r.jsxRuntimeExports.jsx(p.Primitive.span,{"aria-hidden":!0,...i,ref:o}):null});xt.displayName=mt;var Re="SelectScrollUpButton",ht=n.forwardRef((e,o)=>{const t=Q(Re,e.__scopeSelect),i=be(Re,e.__scopeSelect),[a,d]=n.useState(!1),s=N.useComposedRefs(o,i.onScrollButtonChange);return p.useLayoutEffect2(()=>{if(t.viewport&&t.isPositioned){let l=function(){const f=c.scrollTop>0;d(f)};const c=t.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),a?r.jsxRuntimeExports.jsx(gt,{...e,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=t;l&&c&&(l.scrollTop=l.scrollTop-c.offsetHeight)}}):null});ht.displayName=Re;var Ee="SelectScrollDownButton",vt=n.forwardRef((e,o)=>{const t=Q(Ee,e.__scopeSelect),i=be(Ee,e.__scopeSelect),[a,d]=n.useState(!1),s=N.useComposedRefs(o,i.onScrollButtonChange);return p.useLayoutEffect2(()=>{if(t.viewport&&t.isPositioned){let l=function(){const f=c.scrollHeight-c.clientHeight,g=Math.ceil(c.scrollTop)<f;d(g)};const c=t.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[t.viewport,t.isPositioned]),a?r.jsxRuntimeExports.jsx(gt,{...e,ref:s,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=t;l&&c&&(l.scrollTop=l.scrollTop+c.offsetHeight)}}):null});vt.displayName=Ee;var gt=n.forwardRef((e,o)=>{const{__scopeSelect:t,onAutoScroll:i,...a}=e,d=Q("SelectScrollButton",t),s=n.useRef(null),l=me(t),c=n.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return n.useEffect(()=>()=>c(),[c]),p.useLayoutEffect2(()=>{l().find(g=>g.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[l]),r.jsxRuntimeExports.jsx(p.Primitive.div,{"aria-hidden":!0,...a,ref:o,style:{flexShrink:0,...a.style},onPointerDown:p.composeEventHandlers(a.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(i,50))}),onPointerMove:p.composeEventHandlers(a.onPointerMove,()=>{d.onItemLeave?.(),s.current===null&&(s.current=window.setInterval(i,50))}),onPointerLeave:p.composeEventHandlers(a.onPointerLeave,()=>{c()})})}),oo="SelectSeparator",St=n.forwardRef((e,o)=>{const{__scopeSelect:t,...i}=e;return r.jsxRuntimeExports.jsx(p.Primitive.div,{"aria-hidden":!0,...i,ref:o})});St.displayName=oo;var ye="SelectArrow",no=n.forwardRef((e,o)=>{const{__scopeSelect:t,...i}=e,a=xe(t),d=J(ye,t),s=Q(ye,t);return d.open&&s.position==="popper"?r.jsxRuntimeExports.jsx(Fe,{...a,...i,ref:o}):null});no.displayName=ye;var ro="SelectBubbleInput",wt=n.forwardRef(({__scopeSelect:e,value:o,...t},i)=>{const a=n.useRef(null),d=N.useComposedRefs(i,a),s=Ke(o);return n.useEffect(()=>{const l=a.current;if(!l)return;const c=window.HTMLSelectElement.prototype,g=Object.getOwnPropertyDescriptor(c,"value").set;if(s!==o&&g){const w=new Event("change",{bubbles:!0});g.call(l,o),l.dispatchEvent(w)}},[s,o]),r.jsxRuntimeExports.jsx(p.Primitive.select,{...t,style:{...qe,...t.style},ref:d,defaultValue:o})});wt.displayName=ro;function Rt(e){return e===""||e===void 0}function Et(e){const o=p.useCallbackRef(e),t=n.useRef(""),i=n.useRef(0),a=n.useCallback(s=>{const l=t.current+s;o(l),(function c(f){t.current=f,window.clearTimeout(i.current),f!==""&&(i.current=window.setTimeout(()=>c(""),1e3))})(l)},[o]),d=n.useCallback(()=>{t.current="",window.clearTimeout(i.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(i.current),[]),[t,a,d]}function yt(e,o,t){const a=o.length>1&&Array.from(o).every(f=>f===o[0])?o[0]:o,d=t?e.indexOf(t):-1;let s=so(e,Math.max(d,0));a.length===1&&(s=s.filter(f=>f!==t));const c=s.find(f=>f.textValue.toLowerCase().startsWith(a.toLowerCase()));return c!==t?c:void 0}function so(e,o){return e.map((t,i)=>e[(o+i)%e.length])}var io=Ye,ao=Ze,co=Qe,lo=et,uo=tt,po=ot,fo=it,mo=ct,xo=dt,ho=pt,vo=ft,go=xt,So=ht,wo=vt,Ro=St;function Eo({...e}){return r.jsxRuntimeExports.jsx(io,{"data-slot":"select",...e})}function yo({...e}){return r.jsxRuntimeExports.jsx(mo,{"data-slot":"select-group",...e})}function Co({...e}){return r.jsxRuntimeExports.jsx(co,{"data-slot":"select-value",...e})}function jo({className:e,size:o="default",children:t,...i}){return r.jsxRuntimeExports.jsxs(ao,{"data-slot":"select-trigger","data-size":o,className:Z.cn("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...i,children:[t,r.jsxRuntimeExports.jsx(lo,{asChild:!0,children:r.jsxRuntimeExports.jsx(ne.ChevronDown,{className:"size-4 opacity-50"})})]})}function Po({className:e,children:o,position:t="popper",...i}){return r.jsxRuntimeExports.jsx(uo,{children:r.jsxRuntimeExports.jsxs(po,{"data-slot":"select-content",className:Z.cn("bg-content1 text-popover-foreground 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md shadow-medium",t==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:t,...i,children:[r.jsxRuntimeExports.jsx(Ct,{}),r.jsxRuntimeExports.jsx(fo,{className:Z.cn("p-1",t==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:o}),r.jsxRuntimeExports.jsx(jt,{})]})})}function bo({className:e,...o}){return r.jsxRuntimeExports.jsx(xo,{"data-slot":"select-label",className:Z.cn("text-muted-foreground px-2 py-1.5 text-xs",e),...o})}function Io({className:e,children:o,...t}){return r.jsxRuntimeExports.jsxs(ho,{"data-slot":"select-item",className:Z.cn("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...t,children:[r.jsxRuntimeExports.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:r.jsxRuntimeExports.jsx(go,{children:r.jsxRuntimeExports.jsx(ne.Check,{className:"size-4"})})}),r.jsxRuntimeExports.jsx(vo,{children:o})]})}function To({className:e,...o}){return r.jsxRuntimeExports.jsx(Ro,{"data-slot":"select-separator",className:Z.cn("bg-border pointer-events-none -mx-1 my-1 h-px",e),...o})}function Ct({className:e,...o}){return r.jsxRuntimeExports.jsx(So,{"data-slot":"select-scroll-up-button",className:Z.cn("flex cursor-default items-center justify-center py-1",e),...o,children:r.jsxRuntimeExports.jsx(Lt,{className:"size-4"})})}function jt({className:e,...o}){return r.jsxRuntimeExports.jsx(wo,{"data-slot":"select-scroll-down-button",className:Z.cn("flex cursor-default items-center justify-center py-1",e),...o,children:r.jsxRuntimeExports.jsx(ne.ChevronDown,{className:"size-4"})})}exports.Anchor=$e;exports.Arrow=Fe;exports.Content=Ue;exports.Root=Bt;exports.Root2=We;exports.Select=Eo;exports.SelectContent=Po;exports.SelectGroup=yo;exports.SelectItem=Io;exports.SelectLabel=bo;exports.SelectScrollDownButton=jt;exports.SelectScrollUpButton=Ct;exports.SelectSeparator=To;exports.SelectTrigger=jo;exports.SelectValue=Co;exports.createCollection=Ne;exports.createPopperScope=je;exports.usePrevious=Ke;exports.useSize=Ae;
2
- //# sourceMappingURL=select-CC7ump6t.js.map