@rpcbase/ui 0.171.0 → 0.173.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/dist/components/DayPickerField/index.d.ts.map +1 -1
  2. package/dist/index10.js +1 -1
  3. package/dist/index11.js +120 -119
  4. package/dist/index11.js.map +1 -1
  5. package/dist/index12.js +1 -1
  6. package/dist/index13.js +2 -2
  7. package/dist/index14.js +4 -4
  8. package/dist/index146.js +2 -2
  9. package/dist/index147.js +5 -46
  10. package/dist/index147.js.map +1 -1
  11. package/dist/index148.js +62 -199
  12. package/dist/index148.js.map +1 -1
  13. package/dist/index149.js +2 -22
  14. package/dist/index149.js.map +1 -1
  15. package/dist/index15.js +1 -1
  16. package/dist/index150.js +363 -24
  17. package/dist/index150.js.map +1 -1
  18. package/dist/index151.js +243 -381
  19. package/dist/index151.js.map +1 -1
  20. package/dist/index152.js +52 -597
  21. package/dist/index152.js.map +1 -1
  22. package/dist/index153.js +46 -5
  23. package/dist/index153.js.map +1 -1
  24. package/dist/index154.js +157 -56
  25. package/dist/index154.js.map +1 -1
  26. package/dist/index155.js +110 -2
  27. package/dist/index155.js.map +1 -1
  28. package/dist/index156.js +24 -363
  29. package/dist/index156.js.map +1 -1
  30. package/dist/index157.js +8 -262
  31. package/dist/index157.js.map +1 -1
  32. package/dist/index158.js +4 -60
  33. package/dist/index158.js.map +1 -1
  34. package/dist/index159.js +5 -46
  35. package/dist/index159.js.map +1 -1
  36. package/dist/index16.js +1 -1
  37. package/dist/index160.js +4 -169
  38. package/dist/index160.js.map +1 -1
  39. package/dist/index161.js +459 -102
  40. package/dist/index161.js.map +1 -1
  41. package/dist/index162.js +185 -24
  42. package/dist/index162.js.map +1 -1
  43. package/dist/index163.js +108 -8
  44. package/dist/index163.js.map +1 -1
  45. package/dist/index164.js +262 -4
  46. package/dist/index164.js.map +1 -1
  47. package/dist/index165.js +9 -5
  48. package/dist/index165.js.map +1 -1
  49. package/dist/index166.js +42 -4
  50. package/dist/index166.js.map +1 -1
  51. package/dist/index167.js +4 -466
  52. package/dist/index167.js.map +1 -1
  53. package/dist/index168.js +44 -183
  54. package/dist/index168.js.map +1 -1
  55. package/dist/index169.js +198 -100
  56. package/dist/index169.js.map +1 -1
  57. package/dist/index17.js +1 -1
  58. package/dist/index170.js +22 -263
  59. package/dist/index170.js.map +1 -1
  60. package/dist/index171.js +24 -9
  61. package/dist/index171.js.map +1 -1
  62. package/dist/index172.js +391 -34
  63. package/dist/index172.js.map +1 -1
  64. package/dist/index173.js +605 -4
  65. package/dist/index173.js.map +1 -1
  66. package/dist/index18.js +74 -74
  67. package/dist/index18.js.map +1 -1
  68. package/dist/index19.js +7 -7
  69. package/dist/index20.js +2 -2
  70. package/dist/index21.js +1 -1
  71. package/dist/index22.js +1 -1
  72. package/dist/index23.js +2 -2
  73. package/dist/index235.js +12 -23
  74. package/dist/index235.js.map +1 -1
  75. package/dist/index236.js +155 -29
  76. package/dist/index236.js.map +1 -1
  77. package/dist/index237.js +31 -5
  78. package/dist/index237.js.map +1 -1
  79. package/dist/index238.js +9 -67
  80. package/dist/index238.js.map +1 -1
  81. package/dist/index239.js +43 -176
  82. package/dist/index239.js.map +1 -1
  83. package/dist/index24.js +1 -1
  84. package/dist/index240.js +10 -45
  85. package/dist/index240.js.map +1 -1
  86. package/dist/index241.js +44 -13
  87. package/dist/index241.js.map +1 -1
  88. package/dist/index242.js +86 -145
  89. package/dist/index242.js.map +1 -1
  90. package/dist/index243.js +83 -27
  91. package/dist/index243.js.map +1 -1
  92. package/dist/index244.js +105 -9
  93. package/dist/index244.js.map +1 -1
  94. package/dist/index245.js +45 -40
  95. package/dist/index245.js.map +1 -1
  96. package/dist/index246.js +11 -11
  97. package/dist/index246.js.map +1 -1
  98. package/dist/index247.js +35 -42
  99. package/dist/index247.js.map +1 -1
  100. package/dist/index248.js +8 -95
  101. package/dist/index248.js.map +1 -1
  102. package/dist/index249.js +110 -80
  103. package/dist/index249.js.map +1 -1
  104. package/dist/index250.js +17 -105
  105. package/dist/index250.js.map +1 -1
  106. package/dist/index251.js +14 -51
  107. package/dist/index251.js.map +1 -1
  108. package/dist/index252.js +3 -11
  109. package/dist/index252.js.map +1 -1
  110. package/dist/index253.js +32 -33
  111. package/dist/index253.js.map +1 -1
  112. package/dist/index254.js +20 -8
  113. package/dist/index254.js.map +1 -1
  114. package/dist/index255.js +9 -3
  115. package/dist/index255.js.map +1 -1
  116. package/dist/index256.js +7 -8
  117. package/dist/index256.js.map +1 -1
  118. package/dist/index257.js +17 -114
  119. package/dist/index257.js.map +1 -1
  120. package/dist/index258.js +28 -17
  121. package/dist/index258.js.map +1 -1
  122. package/dist/index259.js +15 -14
  123. package/dist/index259.js.map +1 -1
  124. package/dist/index260.js +23 -35
  125. package/dist/index260.js.map +1 -1
  126. package/dist/index261.js +29 -21
  127. package/dist/index261.js.map +1 -1
  128. package/dist/index262.js +5 -9
  129. package/dist/index262.js.map +1 -1
  130. package/dist/index263.js +65 -17
  131. package/dist/index263.js.map +1 -1
  132. package/dist/index264.js +178 -26
  133. package/dist/index264.js.map +1 -1
  134. package/dist/index265.js +44 -14
  135. package/dist/index265.js.map +1 -1
  136. package/dist/index269.js +21 -5
  137. package/dist/index269.js.map +1 -1
  138. package/dist/index27.js +3 -37
  139. package/dist/index27.js.map +1 -1
  140. package/dist/index270.js +5 -3
  141. package/dist/index270.js.map +1 -1
  142. package/dist/index271.js +3 -24
  143. package/dist/index271.js.map +1 -1
  144. package/dist/index272.js +22 -111
  145. package/dist/index272.js.map +1 -1
  146. package/dist/index273.js +111 -14
  147. package/dist/index273.js.map +1 -1
  148. package/dist/index274.js +14 -523
  149. package/dist/index274.js.map +1 -1
  150. package/dist/index275.js +511 -114
  151. package/dist/index275.js.map +1 -1
  152. package/dist/index276.js +111 -117
  153. package/dist/index276.js.map +1 -1
  154. package/dist/index277.js +133 -20
  155. package/dist/index277.js.map +1 -1
  156. package/dist/index28.js +125 -3
  157. package/dist/index28.js.map +1 -1
  158. package/dist/index29.js +227 -120
  159. package/dist/index29.js.map +1 -1
  160. package/dist/index295.js +1 -1
  161. package/dist/index299.js +1 -1
  162. package/dist/index30.js +49 -230
  163. package/dist/index30.js.map +1 -1
  164. package/dist/index31.js +2640 -50
  165. package/dist/index31.js.map +1 -1
  166. package/dist/index32.js +351 -2598
  167. package/dist/index32.js.map +1 -1
  168. package/dist/index33.js +214 -375
  169. package/dist/index33.js.map +1 -1
  170. package/dist/index34.js +19 -230
  171. package/dist/index34.js.map +1 -1
  172. package/dist/index35.js +138 -18
  173. package/dist/index35.js.map +1 -1
  174. package/dist/index36.js +170 -125
  175. package/dist/index36.js.map +1 -1
  176. package/dist/index37.js +64 -174
  177. package/dist/index37.js.map +1 -1
  178. package/dist/index38.js +88 -74
  179. package/dist/index38.js.map +1 -1
  180. package/dist/index39.js +5 -90
  181. package/dist/index39.js.map +1 -1
  182. package/dist/index40.js +843 -5
  183. package/dist/index40.js.map +1 -1
  184. package/dist/index41.js +54 -832
  185. package/dist/index41.js.map +1 -1
  186. package/dist/index42.js +37 -66
  187. package/dist/index42.js.map +1 -1
  188. package/dist/index45.js +1 -1
  189. package/dist/index46.js +1 -1
  190. package/dist/index47.js +7 -205
  191. package/dist/index47.js.map +1 -1
  192. package/dist/index48.js +33 -6
  193. package/dist/index48.js.map +1 -1
  194. package/dist/index49.js +26 -33
  195. package/dist/index49.js.map +1 -1
  196. package/dist/index5.js +1 -1
  197. package/dist/index50.js +7 -26
  198. package/dist/index50.js.map +1 -1
  199. package/dist/index51.js +11 -7
  200. package/dist/index51.js.map +1 -1
  201. package/dist/index52.js +53 -11
  202. package/dist/index52.js.map +1 -1
  203. package/dist/index53.js +205 -4
  204. package/dist/index53.js.map +1 -1
  205. package/dist/index54.js +3 -47
  206. package/dist/index54.js.map +1 -1
  207. package/dist/index55.js +45 -48
  208. package/dist/index55.js.map +1 -1
  209. package/dist/index56.js +50 -7
  210. package/dist/index56.js.map +1 -1
  211. package/dist/index57.js +7 -14
  212. package/dist/index57.js.map +1 -1
  213. package/dist/index58.js +14 -133
  214. package/dist/index58.js.map +1 -1
  215. package/dist/index59.js +133 -10
  216. package/dist/index59.js.map +1 -1
  217. package/dist/index60.js +10 -216
  218. package/dist/index60.js.map +1 -1
  219. package/dist/index61.js +216 -12
  220. package/dist/index61.js.map +1 -1
  221. package/dist/index62.js +13 -47
  222. package/dist/index62.js.map +1 -1
  223. package/dist/index63.js +44 -47
  224. package/dist/index63.js.map +1 -1
  225. package/dist/index64.js +50 -4
  226. package/dist/index64.js.map +1 -1
  227. package/dist/index65.js +4 -6
  228. package/dist/index65.js.map +1 -1
  229. package/dist/index66.js +6 -28
  230. package/dist/index66.js.map +1 -1
  231. package/dist/index67.js +28 -50
  232. package/dist/index67.js.map +1 -1
  233. package/dist/index68.js +50 -9
  234. package/dist/index68.js.map +1 -1
  235. package/dist/index69.js +9 -6
  236. package/dist/index69.js.map +1 -1
  237. package/dist/index70.js +5 -7
  238. package/dist/index70.js.map +1 -1
  239. package/dist/index71.js +7 -5
  240. package/dist/index71.js.map +1 -1
  241. package/dist/index72.js +6 -2
  242. package/dist/index72.js.map +1 -1
  243. package/dist/index73.js +2 -2
  244. package/dist/index74.js +2 -54
  245. package/dist/index74.js.map +1 -1
  246. package/dist/index8.js +1 -1
  247. package/dist/index9.js +1 -1
  248. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index173.js","sources":["../../../node_modules/libphonenumber-js/es6/helpers/isObject.js"],"sourcesContent":["var objectConstructor = {}.constructor;\nexport default function isObject(object) {\n return object !== undefined && object !== null && object.constructor === objectConstructor;\n}\n//# sourceMappingURL=isObject.js.map"],"names":["objectConstructor","isObject","object"],"mappings":"AAAA,IAAIA,IAAoB,CAAA,EAAG;AACZ,SAASC,EAASC,GAAQ;AACvC,SAA+BA,KAAW,QAAQA,EAAO,gBAAgBF;AAC3E;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index173.js","sources":["../../../node_modules/@radix-ui/react-menu/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/menu.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs, composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive, dispatchDiscreteCustomEvent } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { jsx } from \"react/jsx-runtime\";\nvar SELECTION_KEYS = [\"Enter\", \" \"];\nvar FIRST_KEYS = [\"ArrowDown\", \"PageUp\", \"Home\"];\nvar LAST_KEYS = [\"ArrowUp\", \"PageDown\", \"End\"];\nvar FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];\nvar SUB_OPEN_KEYS = {\n ltr: [...SELECTION_KEYS, \"ArrowRight\"],\n rtl: [...SELECTION_KEYS, \"ArrowLeft\"]\n};\nvar SUB_CLOSE_KEYS = {\n ltr: [\"ArrowLeft\"],\n rtl: [\"ArrowRight\"]\n};\nvar MENU_NAME = \"Menu\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(MENU_NAME);\nvar [createMenuContext, createMenuScope] = createContextScope(MENU_NAME, [\n createCollectionScope,\n createPopperScope,\n createRovingFocusGroupScope\n]);\nvar usePopperScope = createPopperScope();\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [MenuProvider, useMenuContext] = createMenuContext(MENU_NAME);\nvar [MenuRootProvider, useMenuRootContext] = createMenuContext(MENU_NAME);\nvar Menu = (props) => {\n const { __scopeMenu, open = false, children, dir, onOpenChange, modal = true } = props;\n const popperScope = usePopperScope(__scopeMenu);\n const [content, setContent] = React.useState(null);\n const isUsingKeyboardRef = React.useRef(false);\n const handleOpenChange = useCallbackRef(onOpenChange);\n const direction = useDirection(dir);\n React.useEffect(() => {\n const handleKeyDown = () => {\n isUsingKeyboardRef.current = true;\n document.addEventListener(\"pointerdown\", handlePointer, { capture: true, once: true });\n document.addEventListener(\"pointermove\", handlePointer, { capture: true, once: true });\n };\n const handlePointer = () => isUsingKeyboardRef.current = false;\n document.addEventListener(\"keydown\", handleKeyDown, { capture: true });\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown, { capture: true });\n document.removeEventListener(\"pointerdown\", handlePointer, { capture: true });\n document.removeEventListener(\"pointermove\", handlePointer, { capture: true });\n };\n }, []);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n MenuProvider,\n {\n scope: __scopeMenu,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ jsx(\n MenuRootProvider,\n {\n scope: __scopeMenu,\n onClose: React.useCallback(() => handleOpenChange(false), [handleOpenChange]),\n isUsingKeyboardRef,\n dir: direction,\n modal,\n children\n }\n )\n }\n ) });\n};\nMenu.displayName = MENU_NAME;\nvar ANCHOR_NAME = \"MenuAnchor\";\nvar MenuAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...anchorProps } = props;\n const popperScope = usePopperScope(__scopeMenu);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });\n }\n);\nMenuAnchor.displayName = ANCHOR_NAME;\nvar PORTAL_NAME = \"MenuPortal\";\nvar [PortalProvider, usePortalContext] = createMenuContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar MenuPortal = (props) => {\n const { __scopeMenu, forceMount, children, container } = props;\n const context = useMenuContext(PORTAL_NAME, __scopeMenu);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeMenu, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nMenuPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"MenuContent\";\nvar [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME);\nvar MenuContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });\n }\n);\nvar MenuRootContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n const content = ref.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: context.open,\n disableOutsideScroll: true,\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault(),\n { checkForDefaultPrevented: false }\n ),\n onDismiss: () => context.onOpenChange(false)\n }\n );\n }\n);\nvar MenuRootContentNonModal = React.forwardRef((props, forwardedRef) => {\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n return /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n onDismiss: () => context.onOpenChange(false)\n }\n );\n});\nvar Slot = createSlot(\"MenuContent.ScrollLock\");\nvar MenuContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeMenu,\n loop = false,\n trapFocus,\n onOpenAutoFocus,\n onCloseAutoFocus,\n disableOutsidePointerEvents,\n onEntryFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n disableOutsideScroll,\n ...contentProps\n } = props;\n const context = useMenuContext(CONTENT_NAME, __scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, __scopeMenu);\n const popperScope = usePopperScope(__scopeMenu);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);\n const getItems = useCollection(__scopeMenu);\n const [currentItemId, setCurrentItemId] = React.useState(null);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef, context.onContentChange);\n const timerRef = React.useRef(0);\n const searchRef = React.useRef(\"\");\n const pointerGraceTimerRef = React.useRef(0);\n const pointerGraceIntentRef = React.useRef(null);\n const pointerDirRef = React.useRef(\"right\");\n const lastPointerXRef = React.useRef(0);\n const ScrollLockWrapper = disableOutsideScroll ? RemoveScroll : React.Fragment;\n const scrollLockWrapperProps = disableOutsideScroll ? { as: Slot, allowPinchZoom: true } : void 0;\n const handleTypeaheadSearch = (key) => {\n const search = searchRef.current + key;\n const items = getItems().filter((item) => !item.disabled);\n const currentItem = document.activeElement;\n const currentMatch = items.find((item) => item.ref.current === currentItem)?.textValue;\n const values = items.map((item) => item.textValue);\n const nextMatch = getNextMatch(values, search, currentMatch);\n const newItem = items.find((item) => item.textValue === nextMatch)?.ref.current;\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n if (newItem) {\n setTimeout(() => newItem.focus());\n }\n };\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n useFocusGuards();\n const isPointerMovingToSubmenu = React.useCallback((event) => {\n const isMovingTowards = pointerDirRef.current === pointerGraceIntentRef.current?.side;\n return isMovingTowards && isPointerInGraceArea(event, pointerGraceIntentRef.current?.area);\n }, []);\n return /* @__PURE__ */ jsx(\n MenuContentProvider,\n {\n scope: __scopeMenu,\n searchRef,\n onItemEnter: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n },\n [isPointerMovingToSubmenu]\n ),\n onItemLeave: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) return;\n contentRef.current?.focus();\n setCurrentItemId(null);\n },\n [isPointerMovingToSubmenu]\n ),\n onTriggerLeave: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n },\n [isPointerMovingToSubmenu]\n ),\n pointerGraceTimerRef,\n onPointerGraceIntentChange: React.useCallback((intent) => {\n pointerGraceIntentRef.current = intent;\n }, []),\n children: /* @__PURE__ */ jsx(ScrollLockWrapper, { ...scrollLockWrapperProps, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: trapFocus,\n onMountAutoFocus: composeEventHandlers(onOpenAutoFocus, (event) => {\n event.preventDefault();\n contentRef.current?.focus({ preventScroll: true });\n }),\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n children: /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n dir: rootContext.dir,\n orientation: \"vertical\",\n loop,\n currentTabStopId: currentItemId,\n onCurrentTabStopIdChange: setCurrentItemId,\n onEntryFocus: composeEventHandlers(onEntryFocus, (event) => {\n if (!rootContext.isUsingKeyboardRef.current) event.preventDefault();\n }),\n preventScrollOnEntryFocus: true,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n role: \"menu\",\n \"aria-orientation\": \"vertical\",\n \"data-state\": getOpenState(context.open),\n \"data-radix-menu-content\": \"\",\n dir: rootContext.dir,\n ...popperScope,\n ...contentProps,\n ref: composedRefs,\n style: { outline: \"none\", ...contentProps.style },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const target = event.target;\n const isKeyDownInside = target.closest(\"[data-radix-menu-content]\") === event.currentTarget;\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n const isCharacterKey = event.key.length === 1;\n if (isKeyDownInside) {\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && isCharacterKey) handleTypeaheadSearch(event.key);\n }\n const content = contentRef.current;\n if (event.target !== content) return;\n if (!FIRST_LAST_KEYS.includes(event.key)) return;\n event.preventDefault();\n const items = getItems().filter((item) => !item.disabled);\n const candidateNodes = items.map((item) => item.ref.current);\n if (LAST_KEYS.includes(event.key)) candidateNodes.reverse();\n focusFirst(candidateNodes);\n }),\n onBlur: composeEventHandlers(props.onBlur, (event) => {\n if (!event.currentTarget.contains(event.target)) {\n window.clearTimeout(timerRef.current);\n searchRef.current = \"\";\n }\n }),\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n const target = event.target;\n const pointerXHasChanged = lastPointerXRef.current !== event.clientX;\n if (event.currentTarget.contains(target) && pointerXHasChanged) {\n const newDir = event.clientX > lastPointerXRef.current ? \"right\" : \"left\";\n pointerDirRef.current = newDir;\n lastPointerXRef.current = event.clientX;\n }\n })\n )\n }\n )\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nMenuContent.displayName = CONTENT_NAME;\nvar GROUP_NAME = \"MenuGroup\";\nvar MenuGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...groupProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", ...groupProps, ref: forwardedRef });\n }\n);\nMenuGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"MenuLabel\";\nvar MenuLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...labelProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { ...labelProps, ref: forwardedRef });\n }\n);\nMenuLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"MenuItem\";\nvar ITEM_SELECT = \"menu.itemSelect\";\nvar MenuItem = React.forwardRef(\n (props, forwardedRef) => {\n const { disabled = false, onSelect, ...itemProps } = props;\n const ref = React.useRef(null);\n const rootContext = useMenuRootContext(ITEM_NAME, props.__scopeMenu);\n const contentContext = useMenuContentContext(ITEM_NAME, props.__scopeMenu);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const isPointerDownRef = React.useRef(false);\n const handleSelect = () => {\n const menuItem = ref.current;\n if (!disabled && menuItem) {\n const itemSelectEvent = new CustomEvent(ITEM_SELECT, { bubbles: true, cancelable: true });\n menuItem.addEventListener(ITEM_SELECT, (event) => onSelect?.(event), { once: true });\n dispatchDiscreteCustomEvent(menuItem, itemSelectEvent);\n if (itemSelectEvent.defaultPrevented) {\n isPointerDownRef.current = false;\n } else {\n rootContext.onClose();\n }\n }\n };\n return /* @__PURE__ */ jsx(\n MenuItemImpl,\n {\n ...itemProps,\n ref: composedRefs,\n disabled,\n onClick: composeEventHandlers(props.onClick, handleSelect),\n onPointerDown: (event) => {\n props.onPointerDown?.(event);\n isPointerDownRef.current = true;\n },\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n if (!isPointerDownRef.current) event.currentTarget?.click();\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef.current !== \"\";\n if (disabled || isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) {\n event.currentTarget.click();\n event.preventDefault();\n }\n })\n }\n );\n }\n);\nMenuItem.displayName = ITEM_NAME;\nvar MenuItemImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;\n const contentContext = useMenuContentContext(ITEM_NAME, __scopeMenu);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [isFocused, setIsFocused] = React.useState(false);\n const [textContent, setTextContent] = React.useState(\"\");\n React.useEffect(() => {\n const menuItem = ref.current;\n if (menuItem) {\n setTextContent((menuItem.textContent ?? \"\").trim());\n }\n }, [itemProps.children]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeMenu,\n disabled,\n textValue: textValue ?? textContent,\n children: /* @__PURE__ */ jsx(RovingFocusGroup.Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"menuitem\",\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...itemProps,\n ref: composedRefs,\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n if (disabled) {\n contentContext.onItemLeave(event);\n } else {\n contentContext.onItemEnter(event);\n if (!event.defaultPrevented) {\n const item = event.currentTarget;\n item.focus({ preventScroll: true });\n }\n }\n })\n ),\n onPointerLeave: composeEventHandlers(\n props.onPointerLeave,\n whenMouse((event) => contentContext.onItemLeave(event))\n ),\n onFocus: composeEventHandlers(props.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(props.onBlur, () => setIsFocused(false))\n }\n ) })\n }\n );\n }\n);\nvar CHECKBOX_ITEM_NAME = \"MenuCheckboxItem\";\nvar MenuCheckboxItem = React.forwardRef(\n (props, forwardedRef) => {\n const { checked = false, onCheckedChange, ...checkboxItemProps } = props;\n return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(\n MenuItem,\n {\n role: \"menuitemcheckbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n ...checkboxItemProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: composeEventHandlers(\n checkboxItemProps.onSelect,\n () => onCheckedChange?.(isIndeterminate(checked) ? true : !checked),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\nvar RADIO_GROUP_NAME = \"MenuRadioGroup\";\nvar [RadioGroupProvider, useRadioGroupContext] = createMenuContext(\n RADIO_GROUP_NAME,\n { value: void 0, onValueChange: () => {\n } }\n);\nvar MenuRadioGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { value, onValueChange, ...groupProps } = props;\n const handleValueChange = useCallbackRef(onValueChange);\n return /* @__PURE__ */ jsx(RadioGroupProvider, { scope: props.__scopeMenu, value, onValueChange: handleValueChange, children: /* @__PURE__ */ jsx(MenuGroup, { ...groupProps, ref: forwardedRef }) });\n }\n);\nMenuRadioGroup.displayName = RADIO_GROUP_NAME;\nvar RADIO_ITEM_NAME = \"MenuRadioItem\";\nvar MenuRadioItem = React.forwardRef(\n (props, forwardedRef) => {\n const { value, ...radioItemProps } = props;\n const context = useRadioGroupContext(RADIO_ITEM_NAME, props.__scopeMenu);\n const checked = value === context.value;\n return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(\n MenuItem,\n {\n role: \"menuitemradio\",\n \"aria-checked\": checked,\n ...radioItemProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: composeEventHandlers(\n radioItemProps.onSelect,\n () => context.onValueChange?.(value),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nMenuRadioItem.displayName = RADIO_ITEM_NAME;\nvar ITEM_INDICATOR_NAME = \"MenuItemIndicator\";\nvar [ItemIndicatorProvider, useItemIndicatorContext] = createMenuContext(\n ITEM_INDICATOR_NAME,\n { checked: false }\n);\nvar MenuItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, forceMount, ...itemIndicatorProps } = props;\n const indicatorContext = useItemIndicatorContext(ITEM_INDICATOR_NAME, __scopeMenu);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...itemIndicatorProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(indicatorContext.checked)\n }\n )\n }\n );\n }\n);\nMenuItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SEPARATOR_NAME = \"MenuSeparator\";\nvar MenuSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"separator\",\n \"aria-orientation\": \"horizontal\",\n ...separatorProps,\n ref: forwardedRef\n }\n );\n }\n);\nMenuSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"MenuArrow\";\nvar MenuArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeMenu);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nMenuArrow.displayName = ARROW_NAME;\nvar SUB_NAME = \"MenuSub\";\nvar [MenuSubProvider, useMenuSubContext] = createMenuContext(SUB_NAME);\nvar MenuSub = (props) => {\n const { __scopeMenu, children, open = false, onOpenChange } = props;\n const parentMenuContext = useMenuContext(SUB_NAME, __scopeMenu);\n const popperScope = usePopperScope(__scopeMenu);\n const [trigger, setTrigger] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const handleOpenChange = useCallbackRef(onOpenChange);\n React.useEffect(() => {\n if (parentMenuContext.open === false) handleOpenChange(false);\n return () => handleOpenChange(false);\n }, [parentMenuContext.open, handleOpenChange]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n MenuProvider,\n {\n scope: __scopeMenu,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ jsx(\n MenuSubProvider,\n {\n scope: __scopeMenu,\n contentId: useId(),\n triggerId: useId(),\n trigger,\n onTriggerChange: setTrigger,\n children\n }\n )\n }\n ) });\n};\nMenuSub.displayName = SUB_NAME;\nvar SUB_TRIGGER_NAME = \"MenuSubTrigger\";\nvar MenuSubTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const context = useMenuContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const subContext = useMenuSubContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const contentContext = useMenuContentContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const openTimerRef = React.useRef(null);\n const { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;\n const scope = { __scopeMenu: props.__scopeMenu };\n const clearOpenTimer = React.useCallback(() => {\n if (openTimerRef.current) window.clearTimeout(openTimerRef.current);\n openTimerRef.current = null;\n }, []);\n React.useEffect(() => clearOpenTimer, [clearOpenTimer]);\n React.useEffect(() => {\n const pointerGraceTimer = pointerGraceTimerRef.current;\n return () => {\n window.clearTimeout(pointerGraceTimer);\n onPointerGraceIntentChange(null);\n };\n }, [pointerGraceTimerRef, onPointerGraceIntentChange]);\n return /* @__PURE__ */ jsx(MenuAnchor, { asChild: true, ...scope, children: /* @__PURE__ */ jsx(\n MenuItemImpl,\n {\n id: subContext.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": context.open,\n \"aria-controls\": subContext.contentId,\n \"data-state\": getOpenState(context.open),\n ...props,\n ref: composeRefs(forwardedRef, subContext.onTriggerChange),\n onClick: (event) => {\n props.onClick?.(event);\n if (props.disabled || event.defaultPrevented) return;\n event.currentTarget.focus();\n if (!context.open) context.onOpenChange(true);\n },\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n contentContext.onItemEnter(event);\n if (event.defaultPrevented) return;\n if (!props.disabled && !context.open && !openTimerRef.current) {\n contentContext.onPointerGraceIntentChange(null);\n openTimerRef.current = window.setTimeout(() => {\n context.onOpenChange(true);\n clearOpenTimer();\n }, 100);\n }\n })\n ),\n onPointerLeave: composeEventHandlers(\n props.onPointerLeave,\n whenMouse((event) => {\n clearOpenTimer();\n const contentRect = context.content?.getBoundingClientRect();\n if (contentRect) {\n const side = context.content?.dataset.side;\n const rightSide = side === \"right\";\n const bleed = rightSide ? -5 : 5;\n const contentNearEdge = contentRect[rightSide ? \"left\" : \"right\"];\n const contentFarEdge = contentRect[rightSide ? \"right\" : \"left\"];\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom }\n ],\n side\n });\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300\n );\n } else {\n contentContext.onTriggerLeave(event);\n if (event.defaultPrevented) return;\n contentContext.onPointerGraceIntentChange(null);\n }\n })\n ),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef.current !== \"\";\n if (props.disabled || isTypingAhead && event.key === \" \") return;\n if (SUB_OPEN_KEYS[rootContext.dir].includes(event.key)) {\n context.onOpenChange(true);\n context.content?.focus();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nMenuSubTrigger.displayName = SUB_TRIGGER_NAME;\nvar SUB_CONTENT_NAME = \"MenuSubContent\";\nvar MenuSubContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);\n const { forceMount = portalContext.forceMount, ...subContentProps } = props;\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);\n const subContext = useMenuSubContext(SUB_CONTENT_NAME, props.__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n id: subContext.contentId,\n \"aria-labelledby\": subContext.triggerId,\n ...subContentProps,\n ref: composedRefs,\n align: \"start\",\n side: rootContext.dir === \"rtl\" ? \"left\" : \"right\",\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n trapFocus: false,\n onOpenAutoFocus: (event) => {\n if (rootContext.isUsingKeyboardRef.current) ref.current?.focus();\n event.preventDefault();\n },\n onCloseAutoFocus: (event) => event.preventDefault(),\n onFocusOutside: composeEventHandlers(props.onFocusOutside, (event) => {\n if (event.target !== subContext.trigger) context.onOpenChange(false);\n }),\n onEscapeKeyDown: composeEventHandlers(props.onEscapeKeyDown, (event) => {\n rootContext.onClose();\n event.preventDefault();\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isKeyDownInside = event.currentTarget.contains(event.target);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n context.onOpenChange(false);\n subContext.trigger?.focus();\n event.preventDefault();\n }\n })\n }\n ) }) }) });\n }\n);\nMenuSubContent.displayName = SUB_CONTENT_NAME;\nfunction getOpenState(open) {\n return open ? \"open\" : \"closed\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getCheckedState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nfunction focusFirst(candidates) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nfunction getNextMatch(values, search, currentMatch) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n let wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n const excludeCurrentMatch = normalizedSearch.length === 1;\n if (excludeCurrentMatch) wrappedValues = wrappedValues.filter((v) => v !== currentMatch);\n const nextMatch = wrappedValues.find(\n (value) => value.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextMatch !== currentMatch ? nextMatch : void 0;\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const ii = polygon[i];\n const jj = polygon[j];\n const xi = ii.x;\n const yi = ii.y;\n const xj = jj.x;\n const yj = jj.y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction isPointerInGraceArea(event, area) {\n if (!area) return false;\n const cursorPos = { x: event.clientX, y: event.clientY };\n return isPointInPolygon(cursorPos, area);\n}\nfunction whenMouse(handler) {\n return (event) => event.pointerType === \"mouse\" ? handler(event) : void 0;\n}\nvar Root3 = Menu;\nvar Anchor2 = MenuAnchor;\nvar Portal = MenuPortal;\nvar Content2 = MenuContent;\nvar Group = MenuGroup;\nvar Label = MenuLabel;\nvar Item2 = MenuItem;\nvar CheckboxItem = MenuCheckboxItem;\nvar RadioGroup = MenuRadioGroup;\nvar RadioItem = MenuRadioItem;\nvar ItemIndicator = MenuItemIndicator;\nvar Separator = MenuSeparator;\nvar Arrow2 = MenuArrow;\nvar Sub = MenuSub;\nvar SubTrigger = MenuSubTrigger;\nvar SubContent = MenuSubContent;\nexport {\n Anchor2 as Anchor,\n Arrow2 as Arrow,\n CheckboxItem,\n Content2 as Content,\n Group,\n Item2 as Item,\n ItemIndicator,\n Label,\n Menu,\n MenuAnchor,\n MenuArrow,\n MenuCheckboxItem,\n MenuContent,\n MenuGroup,\n MenuItem,\n MenuItemIndicator,\n MenuLabel,\n MenuPortal,\n MenuRadioGroup,\n MenuRadioItem,\n MenuSeparator,\n MenuSub,\n MenuSubContent,\n MenuSubTrigger,\n Portal,\n RadioGroup,\n RadioItem,\n Root3 as Root,\n Separator,\n Sub,\n SubContent,\n SubTrigger,\n createMenuScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["SELECTION_KEYS","FIRST_KEYS","LAST_KEYS","FIRST_LAST_KEYS","SUB_OPEN_KEYS","SUB_CLOSE_KEYS","MENU_NAME","Collection","useCollection","createCollectionScope","createCollection","createMenuContext","createMenuScope","createContextScope","createPopperScope","createRovingFocusGroupScope","usePopperScope","useRovingFocusGroupScope","MenuProvider","useMenuContext","MenuRootProvider","useMenuRootContext","Menu","props","__scopeMenu","open","children","dir","onOpenChange","modal","popperScope","content","setContent","React","isUsingKeyboardRef","handleOpenChange","useCallbackRef","direction","useDirection","handleKeyDown","handlePointer","jsx","PopperPrimitive.Root","ANCHOR_NAME","MenuAnchor","forwardedRef","anchorProps","PopperPrimitive.Anchor","PORTAL_NAME","PortalProvider","usePortalContext","MenuPortal","forceMount","container","context","Presence","PortalPrimitive","CONTENT_NAME","MenuContentProvider","useMenuContentContext","MenuContent","portalContext","contentProps","rootContext","MenuRootContentModal","MenuRootContentNonModal","ref","composedRefs","useComposedRefs","hideOthers","MenuContentImpl","composeEventHandlers","event","Slot","createSlot","loop","trapFocus","onOpenAutoFocus","onCloseAutoFocus","disableOutsidePointerEvents","onEntryFocus","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","onDismiss","disableOutsideScroll","rovingFocusGroupScope","getItems","currentItemId","setCurrentItemId","contentRef","timerRef","searchRef","pointerGraceTimerRef","pointerGraceIntentRef","pointerDirRef","lastPointerXRef","ScrollLockWrapper","RemoveScroll","scrollLockWrapperProps","handleTypeaheadSearch","key","search","items","item","currentItem","currentMatch","values","nextMatch","getNextMatch","newItem","updateSearch","value","useFocusGuards","isPointerMovingToSubmenu","isPointerInGraceArea","intent","FocusScope","DismissableLayer","RovingFocusGroup.Root","PopperPrimitive.Content","getOpenState","isKeyDownInside","isModifierKey","isCharacterKey","candidateNodes","focusFirst","whenMouse","target","pointerXHasChanged","newDir","GROUP_NAME","MenuGroup","groupProps","Primitive","LABEL_NAME","MenuLabel","labelProps","ITEM_NAME","ITEM_SELECT","MenuItem","disabled","onSelect","itemProps","contentContext","isPointerDownRef","handleSelect","menuItem","itemSelectEvent","dispatchDiscreteCustomEvent","MenuItemImpl","isTypingAhead","textValue","isFocused","setIsFocused","textContent","setTextContent","RovingFocusGroup.Item","CHECKBOX_ITEM_NAME","MenuCheckboxItem","checked","onCheckedChange","checkboxItemProps","ItemIndicatorProvider","isIndeterminate","getCheckedState","RADIO_GROUP_NAME","RadioGroupProvider","useRadioGroupContext","MenuRadioGroup","onValueChange","handleValueChange","RADIO_ITEM_NAME","MenuRadioItem","radioItemProps","ITEM_INDICATOR_NAME","useItemIndicatorContext","MenuItemIndicator","itemIndicatorProps","indicatorContext","SEPARATOR_NAME","MenuSeparator","separatorProps","ARROW_NAME","MenuArrow","arrowProps","PopperPrimitive.Arrow","SUB_NAME","MenuSubProvider","useMenuSubContext","SUB_TRIGGER_NAME","MenuSubTrigger","subContext","openTimerRef","onPointerGraceIntentChange","scope","clearOpenTimer","pointerGraceTimer","composeRefs","contentRect","side","rightSide","bleed","contentNearEdge","contentFarEdge","SUB_CONTENT_NAME","MenuSubContent","subContentProps","isCloseKey","candidates","PREVIOUSLY_FOCUSED_ELEMENT","candidate","wrapArray","array","startIndex","_","index","normalizedSearch","char","currentMatchIndex","wrappedValues","v","isPointInPolygon","point","polygon","x","y","inside","i","j","ii","jj","xi","yi","xj","yj","area","cursorPos","handler","Root3","Anchor2","Portal","Content2","Group","Label","Item2","CheckboxItem","RadioGroup","RadioItem","ItemIndicator","Separator","Arrow2","SubTrigger","SubContent"],"mappings":";;;;;;;;;;;;;;;;;;;AAyBA,IAAIA,IAAiB,CAAC,SAAS,GAAG,GAC9BC,KAAa,CAAC,aAAa,UAAU,MAAM,GAC3CC,KAAY,CAAC,WAAW,YAAY,KAAK,GACzCC,KAAkB,CAAC,GAAGF,IAAY,GAAGC,EAAS,GAC9CE,KAAgB;AAAA,EAClB,KAAK,CAAC,GAAGJ,GAAgB,YAAY;AAAA,EACrC,KAAK,CAAC,GAAGA,GAAgB,WAAW;AACtC,GACIK,KAAiB;AAAA,EACnB,KAAK,CAAC,WAAW;AAAA,EACjB,KAAK,CAAC,YAAY;AACpB,GACIC,IAAY,QACZ,CAACC,GAAYC,IAAeC,EAAqB,IAAIC,GAAiBJ,CAAS,GAC/E,CAACK,GAAmBC,EAAe,IAAIC,GAAmBP,GAAW;AAAA,EACvEG;AAAA,EACAK;AAAA,EACAC;AACF,CAAC,GACGC,IAAiBF,GAAiB,GAClCG,KAA2BF,GAA2B,GACtD,CAACG,IAAcC,CAAc,IAAIR,EAAkBL,CAAS,GAC5D,CAACc,IAAkBC,CAAkB,IAAIV,EAAkBL,CAAS,GACpEgB,KAAO,CAACC,MAAU;AACpB,QAAM,EAAE,aAAAC,GAAa,MAAAC,IAAO,IAAO,UAAAC,GAAU,KAAAC,GAAK,cAAAC,GAAc,OAAAC,IAAQ,GAAI,IAAKN,GAC3EO,IAAcd,EAAeQ,CAAW,GACxC,CAACO,GAASC,CAAU,IAAIC,EAAM,SAAS,IAAI,GAC3CC,IAAqBD,EAAM,OAAO,EAAK,GACvCE,IAAmBC,GAAeR,CAAY,GAC9CS,IAAYC,GAAaX,CAAG;AAClC,SAAAM,EAAM,UAAU,MAAM;AACpB,UAAMM,IAAgB,MAAM;AAC1B,MAAAL,EAAmB,UAAU,IAC7B,SAAS,iBAAiB,eAAeM,GAAe,EAAE,SAAS,IAAM,MAAM,IAAM,GACrF,SAAS,iBAAiB,eAAeA,GAAe,EAAE,SAAS,IAAM,MAAM,IAAM;AAAA,IACvF,GACMA,IAAgB,MAAMN,EAAmB,UAAU;AACzD,oBAAS,iBAAiB,WAAWK,GAAe,EAAE,SAAS,IAAM,GAC9D,MAAM;AACX,eAAS,oBAAoB,WAAWA,GAAe,EAAE,SAAS,IAAM,GACxE,SAAS,oBAAoB,eAAeC,GAAe,EAAE,SAAS,IAAM,GAC5E,SAAS,oBAAoB,eAAeA,GAAe,EAAE,SAAS,IAAM;AAAA,IAC9E;AAAA,EACF,GAAG,CAAA,CAAE,GACkBC,gBAAAA,EAAAA,IAAIC,IAAsB,EAAE,GAAGZ,GAAa,UAA0BW,gBAAAA,EAAAA;AAAAA,IAC3FvB;AAAA,IACA;AAAA,MACE,OAAOM;AAAA,MACP,MAAAC;AAAA,MACA,cAAcU;AAAA,MACd,SAAAJ;AAAA,MACA,iBAAiBC;AAAA,MACjB,UAA0BS,gBAAAA,EAAAA;AAAAA,QACxBrB;AAAA,QACA;AAAA,UACE,OAAOI;AAAA,UACP,SAASS,EAAM,YAAY,MAAME,EAAiB,EAAK,GAAG,CAACA,CAAgB,CAAC;AAAA,UAC5E,oBAAAD;AAAA,UACA,KAAKG;AAAA,UACL,OAAAR;AAAA,UACA,UAAAH;AAAA,QACV;AAAA,MACA;AAAA,IACA;AAAA,EACA,GAAK;AACL;AACAJ,GAAK,cAAchB;AACnB,IAAIqC,KAAc,cACdC,IAAaX,EAAM;AAAA,EACrB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,GAAGsB,EAAW,IAAKvB,GAClCO,IAAcd,EAAeQ,CAAW;AAC9C,WAAuBiB,gBAAAA,EAAAA,IAAIM,IAAwB,EAAE,GAAGjB,GAAa,GAAGgB,GAAa,KAAKD,GAAc;AAAA,EAC1G;AACF;AACAD,EAAW,cAAcD;AACzB,IAAIK,IAAc,cACd,CAACC,IAAgBC,EAAgB,IAAIvC,EAAkBqC,GAAa;AAAA,EACtE,YAAY;AACd,CAAC,GACGG,KAAa,CAAC5B,MAAU;AAC1B,QAAM,EAAE,aAAAC,GAAa,YAAA4B,GAAY,UAAA1B,GAAU,WAAA2B,EAAS,IAAK9B,GACnD+B,IAAUnC,EAAe6B,GAAaxB,CAAW;AACvD,SAAuBiB,gBAAAA,MAAIQ,IAAgB,EAAE,OAAOzB,GAAa,YAAA4B,GAAY,UAA0BX,gBAAAA,EAAAA,IAAIc,GAAU,EAAE,SAASH,KAAcE,EAAQ,MAAM,UAA0Bb,gBAAAA,MAAIe,IAAiB,EAAE,SAAS,IAAM,WAAAH,GAAW,UAAA3B,GAAU,EAAC,CAAE,EAAC,CAAE;AACzP;AACAyB,GAAW,cAAcH;AACzB,IAAIS,IAAe,eACf,CAACC,IAAqBC,CAAqB,IAAIhD,EAAkB8C,CAAY,GAC7EG,KAAc3B,EAAM;AAAA,EACtB,CAACV,GAAOsB,MAAiB;AACvB,UAAMgB,IAAgBX,GAAiBO,GAAclC,EAAM,WAAW,GAChE,EAAE,YAAA6B,IAAaS,EAAc,YAAY,GAAGC,EAAY,IAAKvC,GAC7D+B,IAAUnC,EAAesC,GAAclC,EAAM,WAAW,GACxDwC,IAAc1C,EAAmBoC,GAAclC,EAAM,WAAW;AACtE,WAAuBkB,gBAAAA,EAAAA,IAAIlC,EAAW,UAAU,EAAE,OAAOgB,EAAM,aAAa,UAA0BkB,gBAAAA,MAAIc,GAAU,EAAE,SAASH,KAAcE,EAAQ,MAAM,UAA0Bb,gBAAAA,EAAAA,IAAIlC,EAAW,MAAM,EAAE,OAAOgB,EAAM,aAAa,UAAUwC,EAAY,QAAwBtB,gBAAAA,EAAAA,IAAIuB,IAAsB,EAAE,GAAGF,GAAc,KAAKjB,EAAY,CAAE,IAAoBJ,gBAAAA,MAAIwB,IAAyB,EAAE,GAAGH,GAAc,KAAKjB,GAAc,EAAC,CAAE,EAAC,CAAE,GAAG;AAAA,EACtb;AACF,GACImB,KAAuB/B,EAAM;AAAA,EAC/B,CAACV,GAAOsB,MAAiB;AACvB,UAAMS,IAAUnC,EAAesC,GAAclC,EAAM,WAAW,GACxD2C,IAAMjC,EAAM,OAAO,IAAI,GACvBkC,IAAeC,EAAgBvB,GAAcqB,CAAG;AACtD,WAAAjC,EAAM,UAAU,MAAM;AACpB,YAAMF,IAAUmC,EAAI;AACpB,UAAInC,EAAS,QAAOsC,GAAWtC,CAAO;AAAA,IACxC,GAAG,CAAA,CAAE,GACkBU,gBAAAA,EAAAA;AAAAA,MACrB6B;AAAA,MACA;AAAA,QACE,GAAG/C;AAAA,QACH,KAAK4C;AAAA,QACL,WAAWb,EAAQ;AAAA,QACnB,6BAA6BA,EAAQ;AAAA,QACrC,sBAAsB;AAAA,QACtB,gBAAgBiB;AAAA,UACdhD,EAAM;AAAA,UACN,CAACiD,MAAUA,EAAM,eAAc;AAAA,UAC/B,EAAE,0BAA0B,GAAK;AAAA,QAC3C;AAAA,QACQ,WAAW,MAAMlB,EAAQ,aAAa,EAAK;AAAA,MACnD;AAAA,IACA;AAAA,EACE;AACF,GACIW,KAA0BhC,EAAM,WAAW,CAACV,GAAOsB,MAAiB;AACtE,QAAMS,IAAUnC,EAAesC,GAAclC,EAAM,WAAW;AAC9D,SAAuBkB,gBAAAA,EAAAA;AAAAA,IACrB6B;AAAA,IACA;AAAA,MACE,GAAG/C;AAAA,MACH,KAAKsB;AAAA,MACL,WAAW;AAAA,MACX,6BAA6B;AAAA,MAC7B,sBAAsB;AAAA,MACtB,WAAW,MAAMS,EAAQ,aAAa,EAAK;AAAA,IACjD;AAAA,EACA;AACA,CAAC,GACGmB,KAAOC,GAAW,wBAAwB,GAC1CJ,KAAkBrC,EAAM;AAAA,EAC1B,CAACV,GAAOsB,MAAiB;AACvB,UAAM;AAAA,MACJ,aAAArB;AAAA,MACA,MAAAmD,IAAO;AAAA,MACP,WAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,6BAAAC;AAAA,MACA,cAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,WAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,GAAGxB;AAAA,IACT,IAAQvC,GACE+B,IAAUnC,EAAesC,GAAcjC,CAAW,GAClDuC,IAAc1C,EAAmBoC,GAAcjC,CAAW,GAC1DM,KAAcd,EAAeQ,CAAW,GACxC+D,KAAwBtE,GAAyBO,CAAW,GAC5DgE,KAAWhF,GAAcgB,CAAW,GACpC,CAACiE,IAAeC,EAAgB,IAAIzD,EAAM,SAAS,IAAI,GACvD0D,IAAa1D,EAAM,OAAO,IAAI,GAC9BkC,KAAeC,EAAgBvB,GAAc8C,GAAYrC,EAAQ,eAAe,GAChFsC,IAAW3D,EAAM,OAAO,CAAC,GACzB4D,IAAY5D,EAAM,OAAO,EAAE,GAC3B6D,KAAuB7D,EAAM,OAAO,CAAC,GACrC8D,IAAwB9D,EAAM,OAAO,IAAI,GACzC+D,KAAgB/D,EAAM,OAAO,OAAO,GACpCgE,IAAkBhE,EAAM,OAAO,CAAC,GAChCiE,KAAoBZ,IAAuBa,KAAelE,EAAM,UAChEmE,KAAyBd,IAAuB,EAAE,IAAIb,IAAM,gBAAgB,GAAI,IAAK,QACrF4B,KAAwB,CAACC,MAAQ;AACrC,YAAMC,IAASV,EAAU,UAAUS,GAC7BE,IAAQhB,KAAW,OAAO,CAACiB,MAAS,CAACA,EAAK,QAAQ,GAClDC,IAAc,SAAS,eACvBC,IAAeH,EAAM,KAAK,CAACC,MAASA,EAAK,IAAI,YAAYC,CAAW,GAAG,WACvEE,IAASJ,EAAM,IAAI,CAACC,MAASA,EAAK,SAAS,GAC3CI,KAAYC,GAAaF,GAAQL,GAAQI,CAAY,GACrDI,IAAUP,EAAM,KAAK,CAACC,MAASA,EAAK,cAAcI,EAAS,GAAG,IAAI;AACxE,OAAC,SAASG,EAAaC,IAAO;AAC5B,QAAApB,EAAU,UAAUoB,IACpB,OAAO,aAAarB,EAAS,OAAO,GAChCqB,OAAU,OAAIrB,EAAS,UAAU,OAAO,WAAW,MAAMoB,EAAa,EAAE,GAAG,GAAG;AAAA,MACpF,GAAGT,CAAM,GACLQ,KACF,WAAW,MAAMA,EAAQ,OAAO;AAAA,IAEpC;AACA,IAAA9E,EAAM,UAAU,MACP,MAAM,OAAO,aAAa2D,EAAS,OAAO,GAChD,CAAA,CAAE,GACLsB,GAAc;AACd,UAAMC,IAA2BlF,EAAM,YAAY,CAACuC,MAC1BwB,GAAc,YAAYD,EAAsB,SAAS,QACvDqB,GAAqB5C,GAAOuB,EAAsB,SAAS,IAAI,GACxF,CAAA,CAAE;AACL,WAAuBtD,gBAAAA,EAAAA;AAAAA,MACrBiB;AAAA,MACA;AAAA,QACE,OAAOlC;AAAA,QACP,WAAAqE;AAAA,QACA,aAAa5D,EAAM;AAAA,UACjB,CAACuC,MAAU;AACT,YAAI2C,EAAyB3C,CAAK,KAAGA,EAAM,eAAc;AAAA,UAC3D;AAAA,UACA,CAAC2C,CAAwB;AAAA,QACnC;AAAA,QACQ,aAAalF,EAAM;AAAA,UACjB,CAACuC,MAAU;AACT,YAAI2C,EAAyB3C,CAAK,MAClCmB,EAAW,SAAS,MAAK,GACzBD,GAAiB,IAAI;AAAA,UACvB;AAAA,UACA,CAACyB,CAAwB;AAAA,QACnC;AAAA,QACQ,gBAAgBlF,EAAM;AAAA,UACpB,CAACuC,MAAU;AACT,YAAI2C,EAAyB3C,CAAK,KAAGA,EAAM,eAAc;AAAA,UAC3D;AAAA,UACA,CAAC2C,CAAwB;AAAA,QACnC;AAAA,QACQ,sBAAArB;AAAA,QACA,4BAA4B7D,EAAM,YAAY,CAACoF,MAAW;AACxD,UAAAtB,EAAsB,UAAUsB;AAAA,QAClC,GAAG,CAAA,CAAE;AAAA,QACL,UAA0B5E,gBAAAA,EAAAA,IAAIyD,IAAmB,EAAE,GAAGE,IAAwB,UAA0B3D,gBAAAA,EAAAA;AAAAA,UACtG6E;AAAA,UACA;AAAA,YACE,SAAS;AAAA,YACT,SAAS1C;AAAA,YACT,kBAAkBL,EAAqBM,GAAiB,CAACL,MAAU;AACjE,cAAAA,EAAM,eAAc,GACpBmB,EAAW,SAAS,MAAM,EAAE,eAAe,GAAI,CAAE;AAAA,YACnD,CAAC;AAAA,YACD,oBAAoBb;AAAA,YACpB,UAA0BrC,gBAAAA,EAAAA;AAAAA,cACxB8E;AAAA,cACA;AAAA,gBACE,SAAS;AAAA,gBACT,6BAAAxC;AAAA,gBACA,iBAAAE;AAAA,gBACA,sBAAAC;AAAA,gBACA,gBAAAC;AAAA,gBACA,mBAAAC;AAAA,gBACA,WAAAC;AAAA,gBACA,UAA0B5C,gBAAAA,EAAAA;AAAAA,kBACxB+E;AAAAA,kBACA;AAAA,oBACE,SAAS;AAAA,oBACT,GAAGjC;AAAA,oBACH,KAAKxB,EAAY;AAAA,oBACjB,aAAa;AAAA,oBACb,MAAAY;AAAA,oBACA,kBAAkBc;AAAA,oBAClB,0BAA0BC;AAAA,oBAC1B,cAAcnB,EAAqBS,GAAc,CAACR,MAAU;AAC1D,sBAAKT,EAAY,mBAAmB,WAASS,EAAM,eAAc;AAAA,oBACnE,CAAC;AAAA,oBACD,2BAA2B;AAAA,oBAC3B,UAA0B/B,gBAAAA,EAAAA;AAAAA,sBACxBgF;AAAAA,sBACA;AAAA,wBACE,MAAM;AAAA,wBACN,oBAAoB;AAAA,wBACpB,cAAcC,GAAapE,EAAQ,IAAI;AAAA,wBACvC,2BAA2B;AAAA,wBAC3B,KAAKS,EAAY;AAAA,wBACjB,GAAGjC;AAAA,wBACH,GAAGgC;AAAA,wBACH,KAAKK;AAAA,wBACL,OAAO,EAAE,SAAS,QAAQ,GAAGL,EAAa,MAAK;AAAA,wBAC/C,WAAWS,EAAqBT,EAAa,WAAW,CAACU,MAAU;AAEjE,gCAAMmD,IADSnD,EAAM,OACU,QAAQ,2BAA2B,MAAMA,EAAM,eACxEoD,IAAgBpD,EAAM,WAAWA,EAAM,UAAUA,EAAM,SACvDqD,IAAiBrD,EAAM,IAAI,WAAW;AAC5C,0BAAImD,MACEnD,EAAM,QAAQ,SAAOA,EAAM,eAAc,GACzC,CAACoD,KAAiBC,KAAgBxB,GAAsB7B,EAAM,GAAG;AAEvE,gCAAMzC,IAAU4D,EAAW;AAE3B,8BADInB,EAAM,WAAWzC,KACjB,CAAC5B,GAAgB,SAASqE,EAAM,GAAG,EAAG;AAC1C,0BAAAA,EAAM,eAAc;AAEpB,gCAAMsD,IADQtC,KAAW,OAAO,CAACiB,MAAS,CAACA,EAAK,QAAQ,EAC3B,IAAI,CAACA,MAASA,EAAK,IAAI,OAAO;AAC3D,0BAAIvG,GAAU,SAASsE,EAAM,GAAG,KAAGsD,EAAe,QAAO,GACzDC,GAAWD,CAAc;AAAA,wBAC3B,CAAC;AAAA,wBACD,QAAQvD,EAAqBhD,EAAM,QAAQ,CAACiD,MAAU;AACpD,0BAAKA,EAAM,cAAc,SAASA,EAAM,MAAM,MAC5C,OAAO,aAAaoB,EAAS,OAAO,GACpCC,EAAU,UAAU;AAAA,wBAExB,CAAC;AAAA,wBACD,eAAetB;AAAA,0BACbhD,EAAM;AAAA,0BACNyG,EAAU,CAACxD,MAAU;AACnB,kCAAMyD,IAASzD,EAAM,QACf0D,IAAqBjC,EAAgB,YAAYzB,EAAM;AAC7D,gCAAIA,EAAM,cAAc,SAASyD,CAAM,KAAKC,GAAoB;AAC9D,oCAAMC,IAAS3D,EAAM,UAAUyB,EAAgB,UAAU,UAAU;AACnE,8BAAAD,GAAc,UAAUmC,GACxBlC,EAAgB,UAAUzB,EAAM;AAAA,4BAClC;AAAA,0BACF,CAAC;AAAA,wBAC3B;AAAA,sBACA;AAAA,oBACA;AAAA,kBACA;AAAA,gBACA;AAAA,cACA;AAAA,YACA;AAAA,UACA;AAAA,QACA,EAAS,CAAE;AAAA,MACX;AAAA,IACA;AAAA,EACE;AACF;AACAZ,GAAY,cAAcH;AAC1B,IAAI2E,KAAa,aACbC,KAAYpG,EAAM;AAAA,EACpB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,GAAG8G,EAAU,IAAK/G;AACvC,WAAuBkB,gBAAAA,EAAAA,IAAI8F,EAAU,KAAK,EAAE,MAAM,SAAS,GAAGD,GAAY,KAAKzF,GAAc;AAAA,EAC/F;AACF;AACAwF,GAAU,cAAcD;AACxB,IAAII,KAAa,aACbC,KAAYxG,EAAM;AAAA,EACpB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,GAAGkH,EAAU,IAAKnH;AACvC,WAAuBkB,gBAAAA,EAAAA,IAAI8F,EAAU,KAAK,EAAE,GAAGG,GAAY,KAAK7F,GAAc;AAAA,EAChF;AACF;AACA4F,GAAU,cAAcD;AACxB,IAAIG,IAAY,YACZC,KAAc,mBACdC,IAAW5G,EAAM;AAAA,EACnB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,UAAAiG,IAAW,IAAO,UAAAC,GAAU,GAAGC,EAAS,IAAKzH,GAC/C2C,IAAMjC,EAAM,OAAO,IAAI,GACvB8B,IAAc1C,EAAmBsH,GAAWpH,EAAM,WAAW,GAC7D0H,IAAiBtF,EAAsBgF,GAAWpH,EAAM,WAAW,GACnE4C,IAAeC,EAAgBvB,GAAcqB,CAAG,GAChDgF,IAAmBjH,EAAM,OAAO,EAAK,GACrCkH,IAAe,MAAM;AACzB,YAAMC,IAAWlF,EAAI;AACrB,UAAI,CAAC4E,KAAYM,GAAU;AACzB,cAAMC,IAAkB,IAAI,YAAYT,IAAa,EAAE,SAAS,IAAM,YAAY,IAAM;AACxF,QAAAQ,EAAS,iBAAiBR,IAAa,CAACpE,MAAUuE,IAAWvE,CAAK,GAAG,EAAE,MAAM,IAAM,GACnF8E,GAA4BF,GAAUC,CAAe,GACjDA,EAAgB,mBAClBH,EAAiB,UAAU,KAE3BnF,EAAY,QAAO;AAAA,MAEvB;AAAA,IACF;AACA,WAAuBtB,gBAAAA,EAAAA;AAAAA,MACrB8G;AAAA,MACA;AAAA,QACE,GAAGP;AAAA,QACH,KAAK7E;AAAA,QACL,UAAA2E;AAAA,QACA,SAASvE,EAAqBhD,EAAM,SAAS4H,CAAY;AAAA,QACzD,eAAe,CAAC3E,MAAU;AACxB,UAAAjD,EAAM,gBAAgBiD,CAAK,GAC3B0E,EAAiB,UAAU;AAAA,QAC7B;AAAA,QACA,aAAa3E,EAAqBhD,EAAM,aAAa,CAACiD,MAAU;AAC9D,UAAK0E,EAAiB,WAAS1E,EAAM,eAAe,MAAK;AAAA,QAC3D,CAAC;AAAA,QACD,WAAWD,EAAqBhD,EAAM,WAAW,CAACiD,MAAU;AAC1D,gBAAMgF,IAAgBP,EAAe,UAAU,YAAY;AAC3D,UAAIH,KAAYU,KAAiBhF,EAAM,QAAQ,OAC3CxE,EAAe,SAASwE,EAAM,GAAG,MACnCA,EAAM,cAAc,MAAK,GACzBA,EAAM,eAAc;AAAA,QAExB,CAAC;AAAA,MACT;AAAA,IACA;AAAA,EACE;AACF;AACAqE,EAAS,cAAcF;AACvB,IAAIY,KAAetH,EAAM;AAAA,EACvB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,UAAAsH,IAAW,IAAO,WAAAW,GAAW,GAAGT,EAAS,IAAKzH,GAC7D0H,IAAiBtF,EAAsBgF,GAAWnH,CAAW,GAC7D+D,IAAwBtE,GAAyBO,CAAW,GAC5D0C,IAAMjC,EAAM,OAAO,IAAI,GACvBkC,IAAeC,EAAgBvB,GAAcqB,CAAG,GAChD,CAACwF,GAAWC,CAAY,IAAI1H,EAAM,SAAS,EAAK,GAChD,CAAC2H,GAAaC,CAAc,IAAI5H,EAAM,SAAS,EAAE;AACvD,WAAAA,EAAM,UAAU,MAAM;AACpB,YAAMmH,IAAWlF,EAAI;AACrB,MAAIkF,KACFS,GAAgBT,EAAS,eAAe,IAAI,KAAI,CAAE;AAAA,IAEtD,GAAG,CAACJ,EAAU,QAAQ,CAAC,GACAvG,gBAAAA,EAAAA;AAAAA,MACrBlC,EAAW;AAAA,MACX;AAAA,QACE,OAAOiB;AAAA,QACP,UAAAsH;AAAA,QACA,WAAWW,KAAaG;AAAA,QACxB,UAA0BnH,gBAAAA,EAAAA,IAAIqH,IAAuB,EAAE,SAAS,IAAM,GAAGvE,GAAuB,WAAW,CAACuD,GAAU,UAA0BrG,gBAAAA,EAAAA;AAAAA,UAC9I8F,EAAU;AAAA,UACV;AAAA,YACE,MAAM;AAAA,YACN,oBAAoBmB,IAAY,KAAK;AAAA,YACrC,iBAAiBZ,KAAY;AAAA,YAC7B,iBAAiBA,IAAW,KAAK;AAAA,YACjC,GAAGE;AAAA,YACH,KAAK7E;AAAA,YACL,eAAeI;AAAA,cACbhD,EAAM;AAAA,cACNyG,EAAU,CAACxD,MAAU;AACnB,gBAAIsE,IACFG,EAAe,YAAYzE,CAAK,KAEhCyE,EAAe,YAAYzE,CAAK,GAC3BA,EAAM,oBACIA,EAAM,cACd,MAAM,EAAE,eAAe,GAAI,CAAE;AAAA,cAGxC,CAAC;AAAA,YACf;AAAA,YACY,gBAAgBD;AAAA,cACdhD,EAAM;AAAA,cACNyG,EAAU,CAACxD,MAAUyE,EAAe,YAAYzE,CAAK,CAAC;AAAA,YACpE;AAAA,YACY,SAASD,EAAqBhD,EAAM,SAAS,MAAMoI,EAAa,EAAI,CAAC;AAAA,YACrE,QAAQpF,EAAqBhD,EAAM,QAAQ,MAAMoI,EAAa,EAAK,CAAC;AAAA,UAChF;AAAA,QACA,EAAS,CAAE;AAAA,MACX;AAAA,IACA;AAAA,EACE;AACF,GACII,KAAqB,oBACrBC,KAAmB/H,EAAM;AAAA,EAC3B,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,SAAAoH,IAAU,IAAO,iBAAAC,GAAiB,GAAGC,EAAiB,IAAK5I;AACnE,WAAuBkB,gBAAAA,EAAAA,IAAI2H,IAAuB,EAAE,OAAO7I,EAAM,aAAa,SAAA0I,GAAS,UAA0BxH,gBAAAA,EAAAA;AAAAA,MAC/GoG;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,gBAAgBwB,EAAgBJ,CAAO,IAAI,UAAUA;AAAA,QACrD,GAAGE;AAAA,QACH,KAAKtH;AAAA,QACL,cAAcyH,GAAgBL,CAAO;AAAA,QACrC,UAAU1F;AAAA,UACR4F,EAAkB;AAAA,UAClB,MAAMD,IAAkBG,EAAgBJ,CAAO,IAAI,KAAO,CAACA,CAAO;AAAA,UAClE,EAAE,0BAA0B,GAAK;AAAA,QAC3C;AAAA,MACA;AAAA,IACA,GAAO;AAAA,EACL;AACF;AACAD,GAAiB,cAAcD;AAC/B,IAAIQ,KAAmB,kBACnB,CAACC,IAAoBC,EAAoB,IAAI9J;AAAA,EAC/C4J;AAAA,EACA,EAAE,OAAO,QAAQ,eAAe,MAAM;AAAA,EACtC,EAAC;AACH,GACIG,KAAiBzI,EAAM;AAAA,EACzB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,OAAAoE,GAAO,eAAA0D,GAAe,GAAGrC,EAAU,IAAK/G,GAC1CqJ,IAAoBxI,GAAeuI,CAAa;AACtD,WAAuBlI,gBAAAA,EAAAA,IAAI+H,IAAoB,EAAE,OAAOjJ,EAAM,aAAa,OAAA0F,GAAO,eAAe2D,GAAmB,UAA0BnI,gBAAAA,EAAAA,IAAI4F,IAAW,EAAE,GAAGC,GAAY,KAAKzF,EAAY,CAAE,GAAG;AAAA,EACtM;AACF;AACA6H,GAAe,cAAcH;AAC7B,IAAIM,KAAkB,iBAClBC,KAAgB7I,EAAM;AAAA,EACxB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,OAAAoE,GAAO,GAAG8D,EAAc,IAAKxJ,GAC/B+B,IAAUmH,GAAqBI,IAAiBtJ,EAAM,WAAW,GACjE0I,IAAUhD,MAAU3D,EAAQ;AAClC,WAAuBb,gBAAAA,EAAAA,IAAI2H,IAAuB,EAAE,OAAO7I,EAAM,aAAa,SAAA0I,GAAS,UAA0BxH,gBAAAA,EAAAA;AAAAA,MAC/GoG;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,gBAAgBoB;AAAA,QAChB,GAAGc;AAAA,QACH,KAAKlI;AAAA,QACL,cAAcyH,GAAgBL,CAAO;AAAA,QACrC,UAAU1F;AAAA,UACRwG,EAAe;AAAA,UACf,MAAMzH,EAAQ,gBAAgB2D,CAAK;AAAA,UACnC,EAAE,0BAA0B,GAAK;AAAA,QAC3C;AAAA,MACA;AAAA,IACA,GAAO;AAAA,EACL;AACF;AACA6D,GAAc,cAAcD;AAC5B,IAAIG,KAAsB,qBACtB,CAACZ,IAAuBa,EAAuB,IAAItK;AAAA,EACrDqK;AAAA,EACA,EAAE,SAAS,GAAK;AAClB,GACIE,KAAoBjJ,EAAM;AAAA,EAC5B,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,YAAA4B,GAAY,GAAG+H,EAAkB,IAAK5J,GACrD6J,IAAmBH,GAAwBD,IAAqBxJ,CAAW;AACjF,WAAuBiB,gBAAAA,EAAAA;AAAAA,MACrBc;AAAA,MACA;AAAA,QACE,SAASH,KAAciH,EAAgBe,EAAiB,OAAO,KAAKA,EAAiB,YAAY;AAAA,QACjG,UAA0B3I,gBAAAA,EAAAA;AAAAA,UACxB8F,EAAU;AAAA,UACV;AAAA,YACE,GAAG4C;AAAA,YACH,KAAKtI;AAAA,YACL,cAAcyH,GAAgBc,EAAiB,OAAO;AAAA,UAClE;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACE;AACF;AACAF,GAAkB,cAAcF;AAChC,IAAIK,KAAiB,iBACjBC,KAAgBrJ,EAAM;AAAA,EACxB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,GAAG+J,EAAc,IAAKhK;AAC3C,WAAuBkB,gBAAAA,EAAAA;AAAAA,MACrB8F,EAAU;AAAA,MACV;AAAA,QACE,MAAM;AAAA,QACN,oBAAoB;AAAA,QACpB,GAAGgD;AAAA,QACH,KAAK1I;AAAA,MACb;AAAA,IACA;AAAA,EACE;AACF;AACAyI,GAAc,cAAcD;AAC5B,IAAIG,KAAa,aACbC,KAAYxJ,EAAM;AAAA,EACpB,CAACV,GAAOsB,MAAiB;AACvB,UAAM,EAAE,aAAArB,GAAa,GAAGkK,EAAU,IAAKnK,GACjCO,IAAcd,EAAeQ,CAAW;AAC9C,WAAuBiB,gBAAAA,EAAAA,IAAIkJ,IAAuB,EAAE,GAAG7J,GAAa,GAAG4J,GAAY,KAAK7I,GAAc;AAAA,EACxG;AACF;AACA4I,GAAU,cAAcD;AACxB,IAAII,KAAW,WACX,CAACC,IAAiBC,EAAiB,IAAInL,EAAkBiL,EAAQ,GAmCjEG,IAAmB,kBACnBC,KAAiB/J,EAAM;AAAA,EACzB,CAACV,GAAOsB,MAAiB;AACvB,UAAMS,IAAUnC,EAAe4K,GAAkBxK,EAAM,WAAW,GAC5DwC,IAAc1C,EAAmB0K,GAAkBxK,EAAM,WAAW,GACpE0K,IAAaH,GAAkBC,GAAkBxK,EAAM,WAAW,GAClE0H,IAAiBtF,EAAsBoI,GAAkBxK,EAAM,WAAW,GAC1E2K,IAAejK,EAAM,OAAO,IAAI,GAChC,EAAE,sBAAA6D,GAAsB,4BAAAqG,EAA0B,IAAKlD,GACvDmD,IAAQ,EAAE,aAAa7K,EAAM,YAAW,GACxC8K,IAAiBpK,EAAM,YAAY,MAAM;AAC7C,MAAIiK,EAAa,WAAS,OAAO,aAAaA,EAAa,OAAO,GAClEA,EAAa,UAAU;AAAA,IACzB,GAAG,CAAA,CAAE;AACL,WAAAjK,EAAM,UAAU,MAAMoK,GAAgB,CAACA,CAAc,CAAC,GACtDpK,EAAM,UAAU,MAAM;AACpB,YAAMqK,IAAoBxG,EAAqB;AAC/C,aAAO,MAAM;AACX,eAAO,aAAawG,CAAiB,GACrCH,EAA2B,IAAI;AAAA,MACjC;AAAA,IACF,GAAG,CAACrG,GAAsBqG,CAA0B,CAAC,GAC9B1J,gBAAAA,EAAAA,IAAIG,GAAY,EAAE,SAAS,IAAM,GAAGwJ,GAAO,UAA0B3J,gBAAAA,EAAAA;AAAAA,MAC1F8G;AAAA,MACA;AAAA,QACE,IAAI0C,EAAW;AAAA,QACf,iBAAiB;AAAA,QACjB,iBAAiB3I,EAAQ;AAAA,QACzB,iBAAiB2I,EAAW;AAAA,QAC5B,cAAcvE,GAAapE,EAAQ,IAAI;AAAA,QACvC,GAAG/B;AAAA,QACH,KAAKgL,GAAY1J,GAAcoJ,EAAW,eAAe;AAAA,QACzD,SAAS,CAACzH,MAAU;AAElB,UADAjD,EAAM,UAAUiD,CAAK,GACjB,EAAAjD,EAAM,YAAYiD,EAAM,sBAC5BA,EAAM,cAAc,MAAK,GACpBlB,EAAQ,QAAMA,EAAQ,aAAa,EAAI;AAAA,QAC9C;AAAA,QACA,eAAeiB;AAAA,UACbhD,EAAM;AAAA,UACNyG,EAAU,CAACxD,MAAU;AAEnB,YADAyE,EAAe,YAAYzE,CAAK,GAC5B,CAAAA,EAAM,oBACN,CAACjD,EAAM,YAAY,CAAC+B,EAAQ,QAAQ,CAAC4I,EAAa,YACpDjD,EAAe,2BAA2B,IAAI,GAC9CiD,EAAa,UAAU,OAAO,WAAW,MAAM;AAC7C,cAAA5I,EAAQ,aAAa,EAAI,GACzB+I,EAAc;AAAA,YAChB,GAAG,GAAG;AAAA,UAEV,CAAC;AAAA,QACX;AAAA,QACQ,gBAAgB9H;AAAA,UACdhD,EAAM;AAAA,UACNyG,EAAU,CAACxD,MAAU;AACnB,YAAA6H,EAAc;AACd,kBAAMG,IAAclJ,EAAQ,SAAS,sBAAqB;AAC1D,gBAAIkJ,GAAa;AACf,oBAAMC,IAAOnJ,EAAQ,SAAS,QAAQ,MAChCoJ,IAAYD,MAAS,SACrBE,IAAQD,IAAY,KAAK,GACzBE,IAAkBJ,EAAYE,IAAY,SAAS,OAAO,GAC1DG,IAAiBL,EAAYE,IAAY,UAAU,MAAM;AAC/D,cAAAzD,EAAe,2BAA2B;AAAA,gBACxC,MAAM;AAAA;AAAA;AAAA,kBAGJ,EAAE,GAAGzE,EAAM,UAAUmI,GAAO,GAAGnI,EAAM,QAAO;AAAA,kBAC5C,EAAE,GAAGoI,GAAiB,GAAGJ,EAAY,IAAG;AAAA,kBACxC,EAAE,GAAGK,GAAgB,GAAGL,EAAY,IAAG;AAAA,kBACvC,EAAE,GAAGK,GAAgB,GAAGL,EAAY,OAAM;AAAA,kBAC1C,EAAE,GAAGI,GAAiB,GAAGJ,EAAY,OAAM;AAAA,gBAC7D;AAAA,gBACgB,MAAAC;AAAA,cAChB,CAAe,GACD,OAAO,aAAa3G,EAAqB,OAAO,GAChDA,EAAqB,UAAU,OAAO;AAAA,gBACpC,MAAMmD,EAAe,2BAA2B,IAAI;AAAA,gBACpD;AAAA,cAChB;AAAA,YACY,OAAO;AAEL,kBADAA,EAAe,eAAezE,CAAK,GAC/BA,EAAM,iBAAkB;AAC5B,cAAAyE,EAAe,2BAA2B,IAAI;AAAA,YAChD;AAAA,UACF,CAAC;AAAA,QACX;AAAA,QACQ,WAAW1E,EAAqBhD,EAAM,WAAW,CAACiD,MAAU;AAC1D,gBAAMgF,IAAgBP,EAAe,UAAU,YAAY;AAC3D,UAAI1H,EAAM,YAAYiI,KAAiBhF,EAAM,QAAQ,OACjDpE,GAAc2D,EAAY,GAAG,EAAE,SAASS,EAAM,GAAG,MACnDlB,EAAQ,aAAa,EAAI,GACzBA,EAAQ,SAAS,MAAK,GACtBkB,EAAM,eAAc;AAAA,QAExB,CAAC;AAAA,MACT;AAAA,IACA,GAAO;AAAA,EACL;AACF;AACAwH,GAAe,cAAcD;AAC7B,IAAIe,KAAmB,kBACnBC,KAAiB9K,EAAM;AAAA,EACzB,CAACV,GAAOsB,MAAiB;AACvB,UAAMgB,IAAgBX,GAAiBO,GAAclC,EAAM,WAAW,GAChE,EAAE,YAAA6B,IAAaS,EAAc,YAAY,GAAGmJ,EAAe,IAAKzL,GAChE+B,IAAUnC,EAAesC,GAAclC,EAAM,WAAW,GACxDwC,IAAc1C,EAAmBoC,GAAclC,EAAM,WAAW,GAChE0K,IAAaH,GAAkBgB,IAAkBvL,EAAM,WAAW,GAClE2C,IAAMjC,EAAM,OAAO,IAAI,GACvBkC,IAAeC,EAAgBvB,GAAcqB,CAAG;AACtD,WAAuBzB,gBAAAA,MAAIlC,EAAW,UAAU,EAAE,OAAOgB,EAAM,aAAa,UAA0BkB,gBAAAA,MAAIc,GAAU,EAAE,SAASH,KAAcE,EAAQ,MAAM,UAA0Bb,gBAAAA,EAAAA,IAAIlC,EAAW,MAAM,EAAE,OAAOgB,EAAM,aAAa,UAA0BkB,gBAAAA,EAAAA;AAAAA,MAC9P6B;AAAA,MACA;AAAA,QACE,IAAI2H,EAAW;AAAA,QACf,mBAAmBA,EAAW;AAAA,QAC9B,GAAGe;AAAA,QACH,KAAK7I;AAAA,QACL,OAAO;AAAA,QACP,MAAMJ,EAAY,QAAQ,QAAQ,SAAS;AAAA,QAC3C,6BAA6B;AAAA,QAC7B,sBAAsB;AAAA,QACtB,WAAW;AAAA,QACX,iBAAiB,CAACS,MAAU;AAC1B,UAAIT,EAAY,mBAAmB,WAASG,EAAI,SAAS,MAAK,GAC9DM,EAAM,eAAc;AAAA,QACtB;AAAA,QACA,kBAAkB,CAACA,MAAUA,EAAM,eAAc;AAAA,QACjD,gBAAgBD,EAAqBhD,EAAM,gBAAgB,CAACiD,MAAU;AACpE,UAAIA,EAAM,WAAWyH,EAAW,WAAS3I,EAAQ,aAAa,EAAK;AAAA,QACrE,CAAC;AAAA,QACD,iBAAiBiB,EAAqBhD,EAAM,iBAAiB,CAACiD,MAAU;AACtE,UAAAT,EAAY,QAAO,GACnBS,EAAM,eAAc;AAAA,QACtB,CAAC;AAAA,QACD,WAAWD,EAAqBhD,EAAM,WAAW,CAACiD,MAAU;AAC1D,gBAAMmD,IAAkBnD,EAAM,cAAc,SAASA,EAAM,MAAM,GAC3DyI,IAAa5M,GAAe0D,EAAY,GAAG,EAAE,SAASS,EAAM,GAAG;AACrE,UAAImD,KAAmBsF,MACrB3J,EAAQ,aAAa,EAAK,GAC1B2I,EAAW,SAAS,MAAK,GACzBzH,EAAM,eAAc;AAAA,QAExB,CAAC;AAAA,MACT;AAAA,IACA,EAAK,CAAE,EAAC,CAAE,GAAG;AAAA,EACX;AACF;AACAuI,GAAe,cAAcD;AAC7B,SAASpF,GAAajG,GAAM;AAC1B,SAAOA,IAAO,SAAS;AACzB;AACA,SAAS4I,EAAgBJ,GAAS;AAChC,SAAOA,MAAY;AACrB;AACA,SAASK,GAAgBL,GAAS;AAChC,SAAOI,EAAgBJ,CAAO,IAAI,kBAAkBA,IAAU,YAAY;AAC5E;AACA,SAASlC,GAAWmF,GAAY;AAC9B,QAAMC,IAA6B,SAAS;AAC5C,aAAWC,KAAaF;AAGtB,QAFIE,MAAcD,MAClBC,EAAU,MAAK,GACX,SAAS,kBAAkBD,GAA4B;AAE/D;AACA,SAASE,GAAUC,GAAOC,GAAY;AACpC,SAAOD,EAAM,IAAI,CAACE,GAAGC,MAAUH,GAAOC,IAAaE,KAASH,EAAM,MAAM,CAAC;AAC3E;AACA,SAASxG,GAAaF,GAAQL,GAAQI,GAAc;AAElD,QAAM+G,IADanH,EAAO,SAAS,KAAK,MAAM,KAAKA,CAAM,EAAE,MAAM,CAACoH,MAASA,MAASpH,EAAO,CAAC,CAAC,IACvDA,EAAO,CAAC,IAAIA,GAC5CqH,IAAoBjH,IAAeC,EAAO,QAAQD,CAAY,IAAI;AACxE,MAAIkH,IAAgBR,GAAUzG,GAAQ,KAAK,IAAIgH,GAAmB,CAAC,CAAC;AAEpE,EAD4BF,EAAiB,WAAW,MAC/BG,IAAgBA,EAAc,OAAO,CAACC,MAAMA,MAAMnH,CAAY;AACvF,QAAME,IAAYgH,EAAc;AAAA,IAC9B,CAAC5G,MAAUA,EAAM,YAAW,EAAG,WAAWyG,EAAiB,YAAW,CAAE;AAAA,EAC5E;AACE,SAAO7G,MAAcF,IAAeE,IAAY;AAClD;AACA,SAASkH,GAAiBC,GAAOC,GAAS;AACxC,QAAM,EAAE,GAAAC,GAAG,GAAAC,EAAC,IAAKH;AACjB,MAAII,IAAS;AACb,WAASC,IAAI,GAAGC,IAAIL,EAAQ,SAAS,GAAGI,IAAIJ,EAAQ,QAAQK,IAAID,KAAK;AACnE,UAAME,IAAKN,EAAQI,CAAC,GACdG,IAAKP,EAAQK,CAAC,GACdG,IAAKF,EAAG,GACRG,IAAKH,EAAG,GACRI,IAAKH,EAAG,GACRI,IAAKJ,EAAG;AAEd,IADkBE,IAAKP,KAAMS,IAAKT,KAAKD,KAAKS,IAAKF,MAAON,IAAIO,MAAOE,IAAKF,KAAMD,MAC/DL,IAAS,CAACA;AAAA,EAC3B;AACA,SAAOA;AACT;AACA,SAAShH,GAAqB5C,GAAOqK,GAAM;AACzC,MAAI,CAACA,EAAM,QAAO;AAClB,QAAMC,IAAY,EAAE,GAAGtK,EAAM,SAAS,GAAGA,EAAM,QAAO;AACtD,SAAOuJ,GAAiBe,GAAWD,CAAI;AACzC;AACA,SAAS7G,EAAU+G,GAAS;AAC1B,SAAO,CAACvK,MAAUA,EAAM,gBAAgB,UAAUuK,EAAQvK,CAAK,IAAI;AACrE;AACG,IAACwK,KAAQ1N,IACR2N,KAAUrM,GACVsM,KAAS/L,IACTgM,KAAWvL,IACXwL,KAAQ/G,IACRgH,KAAQ5G,IACR6G,KAAQzG,GACR0G,KAAevF,IACfwF,KAAa9E,IACb+E,KAAY3E,IACZ4E,KAAgBxE,IAChByE,KAAYrE,IACZsE,KAASnE,IAEToE,KAAa7D,IACb8D,KAAa/C;","x_google_ignoreList":[0]}
package/dist/index18.js CHANGED
@@ -1,7 +1,7 @@
1
- import { j as a } from "./index28.js";
1
+ import { j as a } from "./index27.js";
2
2
  import { Check as ue, ChevronDown as ne, ChevronUp as ae } from "lucide-react";
3
3
  import * as n from "react";
4
- import { DismissableLayerBranch as fe } from "./index29.js";
4
+ import { DismissableLayerBranch as fe } from "./index28.js";
5
5
  import { createPortal as de } from "react-dom";
6
6
  import { IMaskInput as me } from "react-imask";
7
7
  import pe, { InputMask as he } from "imask";
@@ -103,7 +103,7 @@ function re({
103
103
  (d === "up" ? D > I : D < A - I) && Math.abs(D - w) > 0.01 ? b.current = requestAnimationFrame(P) : (j(), setTimeout(h, 16));
104
104
  },
105
105
  [h, d, o, r, j, f]
106
- ), V = n.useCallback(() => {
106
+ ), O = n.useCallback(() => {
107
107
  o || !f.current || p.current || (p.current = !0, N.current = void 0, b.current = requestAnimationFrame(P));
108
108
  }, [o, P, f]);
109
109
  return n.useEffect(() => j, [j]), /* @__PURE__ */ a.jsx(
@@ -115,10 +115,10 @@ function re({
115
115
  i
116
116
  ),
117
117
  onPointerEnter: () => {
118
- o || V();
118
+ o || O();
119
119
  },
120
120
  onPointerMove: () => {
121
- !o && !p.current && V();
121
+ !o && !p.current && O();
122
122
  },
123
123
  onPointerLeave: () => {
124
124
  j();
@@ -140,11 +140,11 @@ function oe({
140
140
  readOnly: h,
141
141
  open: j,
142
142
  onOpenChange: P,
143
- triggerTestId: V,
143
+ triggerTestId: O,
144
144
  contentTestId: T,
145
145
  isHydrated: x
146
146
  }) {
147
- const v = n.useId(), M = d ?? `hours-picker-${v}`, w = n.useRef(null), A = n.useRef(null), D = n.useRef(null), I = n.useRef(!1), [F, K] = n.useState(null), R = n.useRef(null), _ = n.useRef(null), O = n.useRef(null), [t, c] = n.useState(() => ({
147
+ const v = n.useId(), M = d ?? `hours-picker-${v}`, w = n.useRef(null), A = n.useRef(null), D = n.useRef(null), I = n.useRef(!1), [F, K] = n.useState(null), R = n.useRef(null), _ = n.useRef(null), V = n.useRef(null), [t, l] = n.useState(() => ({
148
148
  left: 0,
149
149
  top: 0,
150
150
  width: 0
@@ -162,15 +162,15 @@ function oe({
162
162
  }, []);
163
163
  n.useEffect(() => {
164
164
  if (!m) return;
165
- const e = o.find((l) => l.value === f);
165
+ const e = o.find((c) => c.value === f);
166
166
  if (e && z(e)) {
167
167
  W(e.value);
168
168
  return;
169
169
  }
170
- const s = o.find((l) => z(l));
170
+ const s = o.find((c) => z(c));
171
171
  W(s?.value ?? null);
172
172
  }, [m, o, W, f]);
173
- const le = n.useCallback(
173
+ const ce = n.useCallback(
174
174
  (e) => {
175
175
  if (e === null) {
176
176
  if (i) {
@@ -180,7 +180,7 @@ function oe({
180
180
  r(null);
181
181
  return;
182
182
  }
183
- const s = o.find((l) => l.value === e);
183
+ const s = o.find((c) => c.value === e);
184
184
  if (z(s)) {
185
185
  if (i) {
186
186
  i(e);
@@ -196,7 +196,7 @@ function oe({
196
196
  i && i(null), r(null);
197
197
  return;
198
198
  }
199
- const s = o.find((l) => l.value === e);
199
+ const s = o.find((c) => c.value === e);
200
200
  z(s) && (i && i(e), r(e));
201
201
  },
202
202
  [r, i, o]
@@ -204,11 +204,11 @@ function oe({
204
204
  n.useEffect(() => {
205
205
  if (!m) return;
206
206
  const e = (s) => {
207
- const l = s.target;
208
- if (!(l instanceof Node))
207
+ const c = s.target;
208
+ if (!(c instanceof Node))
209
209
  return;
210
210
  const u = R.current;
211
- !u || u.contains(l) || _.current?.contains(l) || B(!1);
211
+ !u || u.contains(c) || _.current?.contains(c) || B(!1);
212
212
  };
213
213
  return document.addEventListener("pointerdown", e, !0), () => {
214
214
  document.removeEventListener("pointerdown", e, !0);
@@ -219,19 +219,19 @@ function oe({
219
219
  const e = _.current;
220
220
  if (!e)
221
221
  return;
222
- const s = (l) => {
223
- const u = O.current;
222
+ const s = (c) => {
223
+ const u = V.current;
224
224
  if (!u)
225
225
  return;
226
- const E = l.deltaY;
226
+ const E = c.deltaY;
227
227
  if (E === 0)
228
228
  return;
229
- const C = Math.max(0, u.scrollHeight - u.clientHeight), y = u.scrollTop <= 0, G = u.scrollTop >= C, L = l.target;
229
+ const C = Math.max(0, u.scrollHeight - u.clientHeight), y = u.scrollTop <= 0, G = u.scrollTop >= C, L = c.target;
230
230
  if (L instanceof Node && u.contains(L)) {
231
- (E < 0 && y || E > 0 && G) && l.preventDefault();
231
+ (E < 0 && y || E > 0 && G) && c.preventDefault();
232
232
  return;
233
233
  }
234
- l.preventDefault();
234
+ c.preventDefault();
235
235
  const Y = Math.min(C, Math.max(0, u.scrollTop + E));
236
236
  u.scrollTop = Y;
237
237
  };
@@ -245,26 +245,26 @@ function oe({
245
245
  if (!(e instanceof HTMLElement))
246
246
  return;
247
247
  let s = !0;
248
- const l = new IntersectionObserver((u) => {
248
+ const c = new IntersectionObserver((u) => {
249
249
  if (!s)
250
250
  return;
251
251
  const E = u[0];
252
252
  E && !E.isIntersecting && B(!1);
253
253
  });
254
- return l.observe(e), () => {
255
- s = !1, l.disconnect();
254
+ return c.observe(e), () => {
255
+ s = !1, c.disconnect();
256
256
  };
257
257
  }, [P, m, j, B]);
258
258
  const $ = n.useCallback(() => {
259
259
  if (typeof window > "u") return;
260
260
  const e = w.current, s = _.current;
261
261
  if (!(e instanceof HTMLElement) || !s) return;
262
- const l = e.getBoundingClientRect(), u = s.offsetHeight, E = window.innerWidth ?? 0, C = window.innerHeight ?? 0, y = 8, G = l.width;
263
- let L = l.left;
262
+ const c = e.getBoundingClientRect(), u = s.offsetHeight, E = window.innerWidth ?? 0, C = window.innerHeight ?? 0, y = 8, G = c.width;
263
+ let L = c.left;
264
264
  L + G > E - y && (L = Math.max(y, E - G - y)), L < y && (L = y);
265
- let H = l.bottom + y;
266
- const Y = H + u > C - y, X = l.top - u - y;
267
- Y && X >= y && (H = X), H < y && (H = y), H + u > C - y && (H = Math.max(y, C - u - y)), c({ left: L, top: H, width: G });
265
+ let H = c.bottom + y;
266
+ const Y = H + u > C - y, X = c.top - u - y;
267
+ Y && X >= y && (H = X), H < y && (H = y), H + u > C - y && (H = Math.max(y, C - u - y)), l({ left: L, top: H, width: G });
268
268
  }, []);
269
269
  return se(() => {
270
270
  if (!m || p || typeof window > "u") return;
@@ -275,9 +275,9 @@ function oe({
275
275
  };
276
276
  }, [p, m, $]), n.useEffect(() => {
277
277
  if (!m) return;
278
- const e = O.current;
278
+ const e = V.current;
279
279
  if (!e) return;
280
- const l = requestAnimationFrame(() => {
280
+ const c = requestAnimationFrame(() => {
281
281
  const u = e.querySelector('[role="option"][data-state="checked"]');
282
282
  if (u instanceof HTMLElement) {
283
283
  const Y = u.offsetTop - 8, X = u.offsetTop + u.offsetHeight + 8;
@@ -285,8 +285,8 @@ function oe({
285
285
  e.scrollTop = Math.max(0, Y);
286
286
  return;
287
287
  }
288
- const ce = e.scrollTop + e.clientHeight;
289
- X > ce && (e.scrollTop = Math.max(0, X - e.clientHeight));
288
+ const le = e.scrollTop + e.clientHeight;
289
+ X > le && (e.scrollTop = Math.max(0, X - e.clientHeight));
290
290
  return;
291
291
  }
292
292
  const E = Array.from(e.querySelectorAll('[role="option"]'));
@@ -303,14 +303,14 @@ function oe({
303
303
  const L = Math.max(0, (y || C).offsetTop - 8);
304
304
  e.scrollTop = L;
305
305
  });
306
- return () => cancelAnimationFrame(l);
306
+ return () => cancelAnimationFrame(c);
307
307
  }, [m, o]), n.useEffect(() => {
308
308
  if (!m || !F || !I.current) return;
309
- const e = O.current;
309
+ const e = V.current;
310
310
  if (!e) return;
311
311
  const s = e.querySelector(`[role="option"][data-value="${F}"]`);
312
312
  if (!(s instanceof HTMLElement)) return;
313
- const l = 8, u = s.offsetTop - l, E = s.offsetTop + s.offsetHeight + l;
313
+ const c = 8, u = s.offsetTop - c, E = s.offsetTop + s.offsetHeight + c;
314
314
  if (u < e.scrollTop) {
315
315
  e.scrollTop = Math.max(0, u);
316
316
  return;
@@ -330,7 +330,7 @@ function oe({
330
330
  id: M,
331
331
  placeholder: g,
332
332
  value: f,
333
- onValueUpdate: le,
333
+ onValueUpdate: ce,
334
334
  onCommit: U,
335
335
  options: o,
336
336
  disabled: p,
@@ -338,7 +338,7 @@ function oe({
338
338
  open: m,
339
339
  setOpen: B,
340
340
  inputClassName: N,
341
- triggerTestId: V,
341
+ triggerTestId: O,
342
342
  isHydrated: x,
343
343
  highlightedValueRef: D,
344
344
  setHighlightedValue: W,
@@ -370,24 +370,24 @@ function oe({
370
370
  re,
371
371
  {
372
372
  direction: "up",
373
- viewportRef: O
373
+ viewportRef: V
374
374
  }
375
375
  ),
376
376
  /* @__PURE__ */ a.jsx(
377
377
  "div",
378
378
  {
379
- ref: O,
379
+ ref: V,
380
380
  role: "listbox",
381
381
  className: "max-h-64 overflow-y-auto p-1 [overscroll-behavior:contain] [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden",
382
382
  children: o.map((s) => {
383
- const l = s.value === f;
383
+ const c = s.value === f;
384
384
  return /* @__PURE__ */ a.jsxs(
385
385
  "div",
386
386
  {
387
387
  role: "option",
388
- "aria-selected": l,
388
+ "aria-selected": c,
389
389
  "data-value": s.value,
390
- "data-state": l ? "checked" : "unchecked",
390
+ "data-state": c ? "checked" : "unchecked",
391
391
  "data-disabled": s.disabled ? "" : void 0,
392
392
  className: q(
393
393
  "relative flex w-full select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none cursor-pointer",
@@ -407,7 +407,7 @@ function oe({
407
407
  I.current && u.movementX === 0 && u.movementY === 0 || (I.current = !1, W(s.value));
408
408
  },
409
409
  children: [
410
- /* @__PURE__ */ a.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: l ? /* @__PURE__ */ a.jsx(ue, { "aria-hidden": !0, className: "h-4 w-4" }) : null }),
410
+ /* @__PURE__ */ a.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: c ? /* @__PURE__ */ a.jsx(ue, { "aria-hidden": !0, className: "h-4 w-4" }) : null }),
411
411
  /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col", children: [
412
412
  /* @__PURE__ */ a.jsx("span", { children: s.label }),
413
413
  s.description != null ? /* @__PURE__ */ a.jsx("span", { "data-slot": "description", className: "text-xs text-muted-foreground", children: s.description }) : null
@@ -423,7 +423,7 @@ function oe({
423
423
  re,
424
424
  {
425
425
  direction: "down",
426
- viewportRef: O
426
+ viewportRef: V
427
427
  }
428
428
  )
429
429
  ]
@@ -449,7 +449,7 @@ function Te({
449
449
  open: h,
450
450
  onOpenChange: j,
451
451
  triggerTestId: P,
452
- contentTestId: V,
452
+ contentTestId: O,
453
453
  isHydrated: T
454
454
  }) {
455
455
  const x = n.useCallback(
@@ -487,7 +487,7 @@ function Te({
487
487
  /* @__PURE__ */ a.jsx(
488
488
  xe,
489
489
  {
490
- "data-testid": V,
490
+ "data-testid": O,
491
491
  autoScroll: "firstEnabledWithContext",
492
492
  className: "max-h-64 overflow-y-auto",
493
493
  children: o.map((v) => /* @__PURE__ */ a.jsxs(
@@ -525,7 +525,7 @@ function Ee({
525
525
  setOpen: h,
526
526
  inputClassName: j,
527
527
  triggerTestId: P,
528
- isHydrated: V,
528
+ isHydrated: O,
529
529
  highlightedValueRef: T,
530
530
  setHighlightedValue: x,
531
531
  markKeyboardNavigation: v,
@@ -540,8 +540,8 @@ function Ee({
540
540
  }), [w]);
541
541
  const _ = n.useCallback(
542
542
  (t) => {
543
- const c = T.current ?? r ?? "";
544
- let k = g.findIndex((S) => S.value === c);
543
+ const l = T.current ?? r ?? "";
544
+ let k = g.findIndex((S) => S.value === l);
545
545
  k === -1 && (k = t === 1 ? -1 : g.length);
546
546
  for (let S = k + t; S >= 0 && S < g.length; S += t) {
547
547
  const m = g[S];
@@ -556,7 +556,7 @@ function Ee({
556
556
  n.useEffect(() => {
557
557
  A.current || R(r || "");
558
558
  }, [r]);
559
- const O = q(
559
+ const V = q(
560
560
  "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 pr-10 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
561
561
  "transition-colors group-hover:bg-accent group-hover:text-accent-foreground",
562
562
  !K && "text-muted-foreground",
@@ -570,7 +570,7 @@ function Ee({
570
570
  {
571
571
  id: d,
572
572
  "data-testid": P,
573
- "data-hydrated": V ? "true" : void 0,
573
+ "data-hydrated": O ? "true" : void 0,
574
574
  type: "text",
575
575
  disabled: b,
576
576
  readOnly: N,
@@ -580,26 +580,26 @@ function Ee({
580
580
  { mask: "00:00", lazy: !0 },
581
581
  { mask: "0:00", lazy: !0 }
582
582
  ],
583
- dispatch: (t, c) => {
584
- const k = (c.value + t).replace(/\D/g, "");
585
- if (k.length <= 2 || k.length >= 4) return c.compiledMasks[0];
583
+ dispatch: (t, l) => {
584
+ const k = (l.value + t).replace(/\D/g, "");
585
+ if (k.length <= 2 || k.length >= 4) return l.compiledMasks[0];
586
586
  const S = Q(Number(k.slice(0, 2)));
587
- return g.some((B) => B.value.startsWith(`${S}:`)) ? c.compiledMasks[0] : c.compiledMasks[1];
587
+ return g.some((B) => B.value.startsWith(`${S}:`)) ? l.compiledMasks[0] : l.compiledMasks[1];
588
588
  },
589
589
  placeholder: f,
590
590
  value: K,
591
- className: O,
591
+ className: V,
592
592
  onAccept: (t) => {
593
- const c = typeof t == "string" ? t : String(t ?? "");
594
- R(c), c.replace(/\D/g, "").length === 0 && r && o(null);
593
+ const l = typeof t == "string" ? t : String(t ?? "");
594
+ R(l), l.replace(/\D/g, "").length === 0 && r && o(null);
595
595
  },
596
596
  onComplete: (t) => {
597
- const c = typeof t == "string" ? t : String(t ?? "");
598
- if (F.current === c) {
597
+ const l = typeof t == "string" ? t : String(t ?? "");
598
+ if (F.current === l) {
599
599
  F.current = null;
600
600
  return;
601
601
  }
602
- const k = J(c, g);
602
+ const k = J(l, g);
603
603
  if (!k)
604
604
  return;
605
605
  if (k.selectableValue) {
@@ -645,27 +645,27 @@ function Ee({
645
645
  }
646
646
  if (t.key === "Enter") {
647
647
  v();
648
- const c = J(K, g);
649
- if (!c)
648
+ const l = J(K, g);
649
+ if (!l)
650
650
  return;
651
- if (c.selectableValue) {
652
- t.preventDefault(), x(c.selectableValue), R(c.selectableValue), r !== c.selectableValue && o(c.selectableValue), h(!1);
651
+ if (l.selectableValue) {
652
+ t.preventDefault(), x(l.selectableValue), R(l.selectableValue), o(l.selectableValue), h(!1);
653
653
  return;
654
654
  }
655
- const k = Z(c.parsed);
655
+ const k = Z(l.parsed);
656
656
  if (k == null)
657
657
  return;
658
658
  const S = te(k, g);
659
659
  if (!S)
660
660
  return;
661
- t.preventDefault(), x(S.value), R(S.value), r !== S.value && o(S.value), h(!1);
661
+ t.preventDefault(), x(S.value), R(S.value), o(S.value), h(!1);
662
662
  return;
663
663
  }
664
664
  }
665
665
  },
666
666
  onFocus: (t) => {
667
- const c = !D.current || !I.current;
668
- if (D.current = !1, I.current = !1, A.current = !0, c) {
667
+ const l = !D.current || !I.current;
668
+ if (D.current = !1, I.current = !1, A.current = !0, l) {
669
669
  const k = t.currentTarget;
670
670
  requestAnimationFrame(() => k.select());
671
671
  }
@@ -678,16 +678,16 @@ function Ee({
678
678
  R(r || "");
679
679
  return;
680
680
  }
681
- const c = J(t, g);
682
- if (!c) {
681
+ const l = J(t, g);
682
+ if (!l) {
683
683
  R(r || "");
684
684
  return;
685
685
  }
686
- if (!c.selectableValue) {
686
+ if (!l.selectableValue) {
687
687
  R(r || "");
688
688
  return;
689
689
  }
690
- R(c.selectableValue), r !== c.selectableValue && o(c.selectableValue);
690
+ R(l.selectableValue), r !== l.selectableValue && o(l.selectableValue);
691
691
  }
692
692
  }
693
693
  ),