@televet/kibble-ui 4.0.0-beta.49 → 4.0.0-beta.51
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.
- package/dist/chunks/{alert.component-xIg594Bw.js → alert.component-g3HPaEm9.js} +3 -3
- package/dist/chunks/{alert.component-xIg594Bw.js.map → alert.component-g3HPaEm9.js.map} +1 -1
- package/dist/chunks/{avatar.component-B7rggLqO.js → avatar.component-oOJ66hzm.js} +11 -11
- package/dist/chunks/{avatar.component-B7rggLqO.js.map → avatar.component-oOJ66hzm.js.map} +1 -1
- package/dist/chunks/{avatarGroup.component-BxK-Fntw.js → avatarGroup.component-BOzKnzZu.js} +2 -2
- package/dist/chunks/{avatarGroup.component-BxK-Fntw.js.map → avatarGroup.component-BOzKnzZu.js.map} +1 -1
- package/dist/chunks/{buttonGroup.component-B_5ioQ76.js → buttonGroup.component-CESNUX_O.js} +2 -2
- package/dist/chunks/{buttonGroup.component-B_5ioQ76.js.map → buttonGroup.component-CESNUX_O.js.map} +1 -1
- package/dist/chunks/{characterCounter.component-Bmd3imRK.js → characterCounter.component-BFw6saPi.js} +2 -2
- package/dist/chunks/{characterCounter.component-Bmd3imRK.js.map → characterCounter.component-BFw6saPi.js.map} +1 -1
- package/dist/chunks/{checkbox.component-C99uwLFM.js → checkbox.component-DGQYgNkB.js} +12 -12
- package/dist/chunks/{checkbox.component-C99uwLFM.js.map → checkbox.component-DGQYgNkB.js.map} +1 -1
- package/dist/chunks/{checkbox.records-BBV1vniy.js → checkbox.records-7WQ70CZr.js} +4 -4
- package/dist/chunks/{checkbox.records-BBV1vniy.js.map → checkbox.records-7WQ70CZr.js.map} +1 -1
- package/dist/chunks/{checkboxGroup.component-DwICStpY.js → checkboxGroup.component-DAMxeo3c.js} +3 -3
- package/dist/chunks/{checkboxGroup.component-DwICStpY.js.map → checkboxGroup.component-DAMxeo3c.js.map} +1 -1
- package/dist/chunks/{conversationCard.component-CiDSMTUO.js → conversationCard.component-CiFdjzC0.js} +7 -7
- package/dist/chunks/{conversationCard.component-CiDSMTUO.js.map → conversationCard.component-CiFdjzC0.js.map} +1 -1
- package/dist/chunks/{datePicker.component-DKDgsGci.js → datePicker.component-D7J1Ft-p.js} +7 -7
- package/dist/chunks/{datePicker.component-DKDgsGci.js.map → datePicker.component-D7J1Ft-p.js.map} +1 -1
- package/dist/chunks/{dialog-trigger-sGBMGLMB.js → dialog-trigger-CKEZLJZ6.js} +13 -13
- package/dist/chunks/{dialog-trigger-sGBMGLMB.js.map → dialog-trigger-CKEZLJZ6.js.map} +1 -1
- package/dist/chunks/{heading.component-DIST7ncC.js → heading.component-CVm2LGDL.js} +2 -2
- package/dist/chunks/{heading.component-DIST7ncC.js.map → heading.component-CVm2LGDL.js.map} +1 -1
- package/dist/chunks/{index-DLvqBeH6.js → index-B8d8Hi2Q.js} +35 -35
- package/dist/chunks/{index-DLvqBeH6.js.map → index-B8d8Hi2Q.js.map} +1 -1
- package/dist/chunks/{index-ByhnCBwf.js → index-BE2MBRYo.js} +4 -4
- package/dist/chunks/{index-ByhnCBwf.js.map → index-BE2MBRYo.js.map} +1 -1
- package/dist/chunks/{index-Dn2nvQ5m.js → index-BavQMU2I.js} +4 -4
- package/dist/chunks/{index-Dn2nvQ5m.js.map → index-BavQMU2I.js.map} +1 -1
- package/dist/chunks/{index-sWaESJRS.js → index-BsfW-qzE.js} +35 -35
- package/dist/chunks/{index-sWaESJRS.js.map → index-BsfW-qzE.js.map} +1 -1
- package/dist/chunks/{index-D79JhErY.js → index-CJ_SaUFt.js} +7 -7
- package/dist/chunks/{index-D79JhErY.js.map → index-CJ_SaUFt.js.map} +1 -1
- package/dist/chunks/{index-63NGUyr9.js → index-COcjj2r_.js} +4 -4
- package/dist/chunks/{index-63NGUyr9.js.map → index-COcjj2r_.js.map} +1 -1
- package/dist/chunks/{index-C3d8HKg_.js → index-CVMzOz4r.js} +7 -7
- package/dist/chunks/{index-C3d8HKg_.js.map → index-CVMzOz4r.js.map} +1 -1
- package/dist/chunks/{index-C1_01X--.js → index-Dw9PbX_m.js} +80 -80
- package/dist/chunks/{index-C1_01X--.js.map → index-Dw9PbX_m.js.map} +1 -1
- package/dist/chunks/{index-Bcp83GlU.js → index-X8K9tzgE.js} +10 -10
- package/dist/chunks/{index-Bcp83GlU.js.map → index-X8K9tzgE.js.map} +1 -1
- package/dist/chunks/{index-Kw3RO_3f.js → index-bYxdnAxK.js} +3 -3
- package/dist/chunks/{index-Kw3RO_3f.js.map → index-bYxdnAxK.js.map} +1 -1
- package/dist/chunks/{index-Cz4pncg8.js → index-xa8tmbbH.js} +25 -25
- package/dist/chunks/{index-Cz4pncg8.js.map → index-xa8tmbbH.js.map} +1 -1
- package/dist/chunks/{link.component-DYNc5XEj.js → link.component-B8MuH7tM.js} +2 -2
- package/dist/chunks/{link.component-DYNc5XEj.js.map → link.component-B8MuH7tM.js.map} +1 -1
- package/dist/chunks/menu.component-Bi2JPazM.js.map +1 -1
- package/dist/chunks/{menu.component-DbVIiM3g.js → menu.component-DZoyME_s.js} +22 -22
- package/dist/chunks/{menu.component-DbVIiM3g.js.map → menu.component-DZoyME_s.js.map} +1 -1
- package/dist/chunks/{modal.types-CdZepugS.js → modal.types-3KGURq43.js} +5 -5
- package/dist/chunks/{modal.types-CdZepugS.js.map → modal.types-3KGURq43.js.map} +1 -1
- package/dist/chunks/{pinInput.types-Ov7NqPQG.js → pinInput.types-Q3gBjJrF.js} +8 -8
- package/dist/chunks/{pinInput.types-Ov7NqPQG.js.map → pinInput.types-Q3gBjJrF.js.map} +1 -1
- package/dist/chunks/{popover-Q1b5Ou9h.js → popover-BBhgGw0a.js} +12 -12
- package/dist/chunks/{popover-Q1b5Ou9h.js.map → popover-BBhgGw0a.js.map} +1 -1
- package/dist/chunks/{popover-root-provider-_dExZRNY.js → popover-root-provider-CKQPoRvU.js} +8 -8
- package/dist/chunks/{popover-root-provider-_dExZRNY.js.map → popover-root-provider-CKQPoRvU.js.map} +1 -1
- package/dist/chunks/{popover.component-LH8cQ5xp.js → popover.component-D-UQ63DB.js} +15 -15
- package/dist/chunks/{popover.component-LH8cQ5xp.js.map → popover.component-D-UQ63DB.js.map} +1 -1
- package/dist/chunks/{popover.recipe-BwEAIvNr.js → popover.recipe-BVdiJdJk.js} +6 -6
- package/dist/chunks/{popover.recipe-BwEAIvNr.js.map → popover.recipe-BVdiJdJk.js.map} +1 -1
- package/dist/chunks/{radio.records-BEcLVP_S.js → radio.records-EtuVQX6z.js} +4 -4
- package/dist/chunks/{radio.records-BEcLVP_S.js.map → radio.records-EtuVQX6z.js.map} +1 -1
- package/dist/chunks/{radioGroup.component-VgKW4-P2.js → radioGroup.component-sOmiKjNM.js} +19 -19
- package/dist/chunks/{radioGroup.component-VgKW4-P2.js.map → radioGroup.component-sOmiKjNM.js.map} +1 -1
- package/dist/chunks/{ratingDots.component-CgBG_tvz.js → ratingDots.component-CMDKq3_T.js} +3 -3
- package/dist/chunks/{ratingDots.component-CgBG_tvz.js.map → ratingDots.component-CMDKq3_T.js.map} +1 -1
- package/dist/chunks/{render-strategy-Cr139kIz.js → render-strategy-DBmKAZIM.js} +2 -2
- package/dist/chunks/{render-strategy-Cr139kIz.js.map → render-strategy-DBmKAZIM.js.map} +1 -1
- package/dist/chunks/{select.component-BSZd60MZ.js → select.component-BOSAKx8m.js} +36 -36
- package/dist/chunks/{select.component-BSZd60MZ.js.map → select.component-BOSAKx8m.js.map} +1 -1
- package/dist/chunks/{select.component-BDLdQaL2.js → select.component-C9Vj7Sk7.js} +2 -2
- package/dist/chunks/{select.component-BDLdQaL2.js.map → select.component-C9Vj7Sk7.js.map} +1 -1
- package/dist/chunks/{sortableList.component-BRToMbfY.js → sortableList.component-BEc4_tAM.js} +3 -3
- package/dist/chunks/{sortableList.component-BRToMbfY.js.map → sortableList.component-BEc4_tAM.js.map} +1 -1
- package/dist/chunks/{spinner.component-DCSsW51J.js → spinner.component-DNrNcGw9.js} +2 -2
- package/dist/chunks/{spinner.component-DCSsW51J.js.map → spinner.component-DNrNcGw9.js.map} +1 -1
- package/dist/chunks/{styledAvatar.types-b9eWaeJ6.js → styledAvatar.types-DgeupAct.js} +2 -2
- package/dist/chunks/{styledAvatar.types-b9eWaeJ6.js.map → styledAvatar.types-DgeupAct.js.map} +1 -1
- package/dist/chunks/{switch.component-B2vWRrP_.js → switch.component-BQ9rEKP6.js} +9 -9
- package/dist/chunks/{switch.component-B2vWRrP_.js.map → switch.component-BQ9rEKP6.js.map} +1 -1
- package/dist/chunks/{tabs.component-DlaP-qhJ.js → tabs.component-BuknlGMy.js} +41 -41
- package/dist/chunks/{tabs.component-DlaP-qhJ.js.map → tabs.component-BuknlGMy.js.map} +1 -1
- package/dist/chunks/{tagBlock.component-DpcWXFLP.js → tagBlock.component-BZtyjaQk.js} +5 -5
- package/dist/chunks/{tagBlock.component-DpcWXFLP.js.map → tagBlock.component-BZtyjaQk.js.map} +1 -1
- package/dist/chunks/{text.component-D3E0SdX1.js → text.component-ByshUroO.js} +2 -2
- package/dist/chunks/{text.component-D3E0SdX1.js.map → text.component-ByshUroO.js.map} +1 -1
- package/dist/chunks/{textInput.component-BpCIE07n.js → textInput.component-BYpBgS2h.js} +12 -12
- package/dist/chunks/{textInput.component-BpCIE07n.js.map → textInput.component-BYpBgS2h.js.map} +1 -1
- package/dist/chunks/{textarea.component-B5AsA90v.js → textarea.component-B8X86Tqw.js} +6 -6
- package/dist/chunks/{textarea.component-B5AsA90v.js.map → textarea.component-B8X86Tqw.js.map} +1 -1
- package/dist/chunks/{theme.provider-B9PPowSI.js → theme.provider-C13bkPxl.js} +18 -18
- package/dist/chunks/{theme.provider-B9PPowSI.js.map → theme.provider-C13bkPxl.js.map} +1 -1
- package/dist/chunks/{timePicker.component-BFa1h4Gv.js → timePicker.component-BwmHvV_9.js} +3 -3
- package/dist/chunks/{timePicker.component-BFa1h4Gv.js.map → timePicker.component-BwmHvV_9.js.map} +1 -1
- package/dist/chunks/{timeRange.component-DuKclNl6.js → timeRange.component-Du_CkwPc.js} +2 -2
- package/dist/chunks/{timeRange.component-DuKclNl6.js.map → timeRange.component-Du_CkwPc.js.map} +1 -1
- package/dist/chunks/{timestamp.component-BouqsJZM.js → timestamp.component-CA-gdN9e.js} +3 -3
- package/dist/chunks/{timestamp.component-BouqsJZM.js.map → timestamp.component-CA-gdN9e.js.map} +1 -1
- package/dist/chunks/{toaster.records-BSRUGTiS.js → toaster.records-DuvFE6c1.js} +10 -10
- package/dist/chunks/{toaster.records-BSRUGTiS.js.map → toaster.records-DuvFE6c1.js.map} +1 -1
- package/dist/chunks/{tooltip.component-DYBYGsfe.js → tooltip.component-B0iqN7WJ.js} +40 -40
- package/dist/chunks/{tooltip.component-DYBYGsfe.js.map → tooltip.component-B0iqN7WJ.js.map} +1 -1
- package/dist/chunks/{typography.records-DA6XZIsX.js → typography.records-BS1CFpJg.js} +2 -2
- package/dist/chunks/{typography.records-DA6XZIsX.js.map → typography.records-BS1CFpJg.js.map} +1 -1
- package/dist/chunks/{use-field-context-B8ygn96q.js → use-field-context-Bxg2bkx0.js} +2 -2
- package/dist/chunks/{use-field-context-B8ygn96q.js.map → use-field-context-Bxg2bkx0.js.map} +1 -1
- package/dist/chunks/{use-locale-context-zakBNK5b.js → use-locale-context-BnlMA8su.js} +58 -58
- package/dist/chunks/{use-locale-context-zakBNK5b.js.map → use-locale-context-BnlMA8su.js.map} +1 -1
- package/dist/chunks/{withFormControl-Vf_flDYv.js → withFormControl-BRVK_J11.js} +26 -26
- package/dist/chunks/{withFormControl-Vf_flDYv.js.map → withFormControl-BRVK_J11.js.map} +1 -1
- package/dist/chunks/{withTruncation-BNm_JUdt.js → withTruncation-C3gfaeh3.js} +2 -2
- package/dist/chunks/{withTruncation-BNm_JUdt.js.map → withTruncation-C3gfaeh3.js.map} +1 -1
- package/dist/cjs/chakra/index.cjs +1 -1
- package/dist/cjs/components/Select/index.cjs +1 -1
- package/dist/cjs/components/index.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/esm/chakra/index.js +115 -114
- package/dist/esm/components/Alert/index.js +1 -1
- package/dist/esm/components/Avatar/index.js +1 -1
- package/dist/esm/components/AvatarGroup/index.js +1 -1
- package/dist/esm/components/ButtonGroup/index.js +1 -1
- package/dist/esm/components/CharacterCounter/index.js +1 -1
- package/dist/esm/components/Checkbox/index.js +1 -1
- package/dist/esm/components/CheckboxGroup/index.js +1 -1
- package/dist/esm/components/ConversationCard/index.js +1 -1
- package/dist/esm/components/DatePicker/index.js +1 -1
- package/dist/esm/components/Heading/index.js +1 -1
- package/dist/esm/components/Link/index.js +1 -1
- package/dist/esm/components/Menu/index.js +1 -1
- package/dist/esm/components/Modal/index.js +1 -1
- package/dist/esm/components/PinInput/index.js +1 -1
- package/dist/esm/components/Popover/index.js +1 -1
- package/dist/esm/components/RadioGroup/index.js +1 -1
- package/dist/esm/components/RatingDots/index.js +1 -1
- package/dist/esm/components/Select/index.js +1 -1
- package/dist/esm/components/SortableList/index.js +1 -1
- package/dist/esm/components/Spinner/index.js +1 -1
- package/dist/esm/components/StyledAvatar/index.js +1 -1
- package/dist/esm/components/Switch/index.js +1 -1
- package/dist/esm/components/Tabs/index.js +1 -1
- package/dist/esm/components/TagBlock/index.js +1 -1
- package/dist/esm/components/Text/index.js +1 -1
- package/dist/esm/components/TextInput/index.js +1 -1
- package/dist/esm/components/Textarea/index.js +1 -1
- package/dist/esm/components/TimePicker/index.js +1 -1
- package/dist/esm/components/TimeRange/index.js +1 -1
- package/dist/esm/components/Timestamp/index.js +1 -1
- package/dist/esm/components/Toast/index.js +1 -1
- package/dist/esm/components/Tooltip/index.js +1 -1
- package/dist/esm/components/index.js +31 -31
- package/dist/esm/index.js +32 -32
- package/dist/esm/theme/index.js +1 -1
- package/dist/types/chakra/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-Cz4pncg8.js","sources":["../../node_modules/@zag-js/interact-outside/dist/index.mjs","../../node_modules/@zag-js/dismissable/dist/index.mjs"],"sourcesContent":["import { raf, getDocument, getWindow, isShadowRoot, addDomEvent, isTouchDevice, getEventTarget, isFocusable, isContextMenuEvent, isHTMLElement, contains, getNearestOverflowAncestor } from '@zag-js/dom-query';\nimport { callAll } from '@zag-js/utils';\n\n// src/index.ts\n\n// src/frame-utils.ts\nfunction getWindowFrames(win) {\n const frames = {\n each(cb) {\n for (let i = 0; i < win.frames?.length; i += 1) {\n const frame = win.frames[i];\n if (frame) cb(frame);\n }\n },\n addEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.addEventListener(event, listener, options);\n } catch {\n }\n });\n return () => {\n try {\n frames.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.removeEventListener(event, listener, options);\n } catch {\n }\n });\n }\n };\n return frames;\n}\nfunction getParentWindow(win) {\n const parent = win.frameElement != null ? win.parent : null;\n return {\n addEventListener: (event, listener, options) => {\n try {\n parent?.addEventListener(event, listener, options);\n } catch {\n }\n return () => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener: (event, listener, options) => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n }\n };\n}\n\n// src/index.ts\nvar POINTER_OUTSIDE_EVENT = \"pointerdown.outside\";\nvar FOCUS_OUTSIDE_EVENT = \"focus.outside\";\nfunction isComposedPathFocusable(composedPath) {\n for (const node of composedPath) {\n if (isHTMLElement(node) && isFocusable(node)) return true;\n }\n return false;\n}\nvar isPointerEvent = (event) => \"clientY\" in event;\nfunction isEventPointWithin(node, event) {\n if (!isPointerEvent(event) || !node) return false;\n const rect = node.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return false;\n return rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;\n}\nfunction isPointInRect(rect, point) {\n return rect.y <= point.y && point.y <= rect.y + rect.height && rect.x <= point.x && point.x <= rect.x + rect.width;\n}\nfunction isEventWithinScrollbar(event, ancestor) {\n if (!ancestor || !isPointerEvent(event)) return false;\n const isScrollableY = ancestor.scrollHeight > ancestor.clientHeight;\n const onScrollbarY = isScrollableY && event.clientX > ancestor.offsetLeft + ancestor.clientWidth;\n const isScrollableX = ancestor.scrollWidth > ancestor.clientWidth;\n const onScrollbarX = isScrollableX && event.clientY > ancestor.offsetTop + ancestor.clientHeight;\n const rect = {\n x: ancestor.offsetLeft,\n y: ancestor.offsetTop,\n width: ancestor.clientWidth + (isScrollableY ? 16 : 0),\n height: ancestor.clientHeight + (isScrollableX ? 16 : 0)\n };\n const point = {\n x: event.clientX,\n y: event.clientY\n };\n if (!isPointInRect(rect, point)) return false;\n return onScrollbarY || onScrollbarX;\n}\nfunction trackInteractOutsideImpl(node, options) {\n const { exclude, onFocusOutside, onPointerDownOutside, onInteractOutside, defer } = options;\n if (!node) return;\n const doc = getDocument(node);\n const win = getWindow(node);\n const frames = getWindowFrames(win);\n const parentWin = getParentWindow(win);\n function isEventOutside(event, target) {\n if (!isHTMLElement(target)) return false;\n if (!target.isConnected) return false;\n if (contains(node, target)) return false;\n if (isEventPointWithin(node, event)) return false;\n const triggerEl = doc.querySelector(`[aria-controls=\"${node.id}\"]`);\n if (triggerEl) {\n const triggerAncestor = getNearestOverflowAncestor(triggerEl);\n if (isEventWithinScrollbar(event, triggerAncestor)) return false;\n }\n const nodeAncestor = getNearestOverflowAncestor(node);\n if (isEventWithinScrollbar(event, nodeAncestor)) return false;\n return !exclude?.(target);\n }\n const pointerdownCleanups = /* @__PURE__ */ new Set();\n const isInShadowRoot = isShadowRoot(node?.getRootNode());\n function onPointerDown(event) {\n function handler(clickEvent) {\n const func = defer && !isTouchDevice() ? raf : (v) => v();\n const evt = clickEvent ?? event;\n const composedPath = evt?.composedPath?.() ?? [evt?.target];\n func(() => {\n const target = isInShadowRoot ? composedPath[0] : getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onPointerDownOutside || onInteractOutside) {\n const handler2 = callAll(onPointerDownOutside, onInteractOutside);\n node.addEventListener(POINTER_OUTSIDE_EVENT, handler2, { once: true });\n }\n fireCustomEvent(node, POINTER_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: evt,\n contextmenu: isContextMenuEvent(evt),\n focusable: isComposedPathFocusable(composedPath),\n target\n }\n });\n });\n }\n if (event.pointerType === \"touch\") {\n pointerdownCleanups.forEach((fn) => fn());\n pointerdownCleanups.add(addDomEvent(doc, \"click\", handler, { once: true }));\n pointerdownCleanups.add(parentWin.addEventListener(\"click\", handler, { once: true }));\n pointerdownCleanups.add(frames.addEventListener(\"click\", handler, { once: true }));\n } else {\n handler();\n }\n }\n const cleanups = /* @__PURE__ */ new Set();\n const timer = setTimeout(() => {\n cleanups.add(addDomEvent(doc, \"pointerdown\", onPointerDown, true));\n cleanups.add(parentWin.addEventListener(\"pointerdown\", onPointerDown, true));\n cleanups.add(frames.addEventListener(\"pointerdown\", onPointerDown, true));\n }, 0);\n function onFocusin(event) {\n const func = defer ? raf : (v) => v();\n func(() => {\n const target = getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onFocusOutside || onInteractOutside) {\n const handler = callAll(onFocusOutside, onInteractOutside);\n node.addEventListener(FOCUS_OUTSIDE_EVENT, handler, { once: true });\n }\n fireCustomEvent(node, FOCUS_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: event,\n contextmenu: false,\n focusable: isFocusable(target),\n target\n }\n });\n });\n }\n if (!isTouchDevice()) {\n cleanups.add(addDomEvent(doc, \"focusin\", onFocusin, true));\n cleanups.add(parentWin.addEventListener(\"focusin\", onFocusin, true));\n cleanups.add(frames.addEventListener(\"focusin\", onFocusin, true));\n }\n return () => {\n clearTimeout(timer);\n pointerdownCleanups.forEach((fn) => fn());\n cleanups.forEach((fn) => fn());\n };\n}\nfunction trackInteractOutside(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof nodeOrFn === \"function\" ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackInteractOutsideImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction fireCustomEvent(el, type, init) {\n const win = el.ownerDocument.defaultView || window;\n const event = new win.CustomEvent(type, init);\n return el.dispatchEvent(event);\n}\n\nexport { trackInteractOutside };\n","import { raf, contains, getDocument, waitForElements, setStyle, addDomEvent, getEventTarget, isHTMLElement } from '@zag-js/dom-query';\nimport { trackInteractOutside } from '@zag-js/interact-outside';\nimport { isFunction, warn } from '@zag-js/utils';\n\n// src/dismissable-layer.ts\nfunction trackEscapeKeydown(node, fn) {\n const handleKeyDown = (event) => {\n if (event.key !== \"Escape\") return;\n if (event.isComposing) return;\n fn?.(event);\n };\n return addDomEvent(getDocument(node), \"keydown\", handleKeyDown, { capture: true });\n}\nvar layerStack = {\n layers: [],\n branches: [],\n count() {\n return this.layers.length;\n },\n pointerBlockingLayers() {\n return this.layers.filter((layer) => layer.pointerBlocking);\n },\n topMostPointerBlockingLayer() {\n return [...this.pointerBlockingLayers()].slice(-1)[0];\n },\n hasPointerBlockingLayer() {\n return this.pointerBlockingLayers().length > 0;\n },\n isBelowPointerBlockingLayer(node) {\n const index = this.indexOf(node);\n const highestBlockingIndex = this.topMostPointerBlockingLayer() ? this.indexOf(this.topMostPointerBlockingLayer()?.node) : -1;\n return index < highestBlockingIndex;\n },\n isTopMost(node) {\n const layer = this.layers[this.count() - 1];\n return layer?.node === node;\n },\n getNestedLayers(node) {\n return Array.from(this.layers).slice(this.indexOf(node) + 1);\n },\n isInNestedLayer(node, target) {\n return this.getNestedLayers(node).some((layer) => contains(layer.node, target));\n },\n isInBranch(target) {\n return Array.from(this.branches).some((branch) => contains(branch, target));\n },\n add(layer) {\n const num = this.layers.push(layer);\n layer.node.style.setProperty(\"--layer-index\", `${num}`);\n },\n addBranch(node) {\n this.branches.push(node);\n },\n remove(node) {\n const index = this.indexOf(node);\n if (index < 0) return;\n if (index < this.count() - 1) {\n const _layers = this.getNestedLayers(node);\n _layers.forEach((layer) => layer.dismiss());\n }\n this.layers.splice(index, 1);\n node.style.removeProperty(\"--layer-index\");\n },\n removeBranch(node) {\n const index = this.branches.indexOf(node);\n if (index >= 0) this.branches.splice(index, 1);\n },\n indexOf(node) {\n return this.layers.findIndex((layer) => layer.node === node);\n },\n dismiss(node) {\n this.layers[this.indexOf(node)]?.dismiss();\n },\n clear() {\n this.remove(this.layers[0].node);\n }\n};\nvar originalBodyPointerEvents;\nfunction assignPointerEventToLayers() {\n layerStack.layers.forEach(({ node }) => {\n node.style.pointerEvents = layerStack.isBelowPointerBlockingLayer(node) ? \"none\" : \"auto\";\n });\n}\nfunction clearPointerEvent(node) {\n node.style.pointerEvents = \"\";\n}\nfunction disablePointerEventsOutside(node, persistentElements) {\n const doc = getDocument(node);\n const cleanups = [];\n if (layerStack.hasPointerBlockingLayer() && !doc.body.hasAttribute(\"data-inert\")) {\n originalBodyPointerEvents = document.body.style.pointerEvents;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = \"none\";\n doc.body.setAttribute(\"data-inert\", \"\");\n });\n }\n if (persistentElements) {\n const persistedCleanup = waitForElements(persistentElements, (el) => {\n cleanups.push(setStyle(el, { pointerEvents: \"auto\" }));\n });\n cleanups.push(persistedCleanup);\n }\n return () => {\n if (layerStack.hasPointerBlockingLayer()) return;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = originalBodyPointerEvents;\n doc.body.removeAttribute(\"data-inert\");\n if (doc.body.style.length === 0) doc.body.removeAttribute(\"style\");\n });\n cleanups.forEach((fn) => fn());\n };\n}\n\n// src/dismissable-layer.ts\nfunction trackDismissableElementImpl(node, options) {\n const { warnOnMissingNode = true } = options;\n if (warnOnMissingNode && !node) {\n warn(\"[@zag-js/dismissable] node is `null` or `undefined`\");\n return;\n }\n if (!node) {\n return;\n }\n const { onDismiss, pointerBlocking, exclude: excludeContainers, debug } = options;\n const layer = { dismiss: onDismiss, node, pointerBlocking };\n layerStack.add(layer);\n assignPointerEventToLayers();\n function onPointerDownOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isBelowPointerBlockingLayer(node) || layerStack.isInBranch(target)) return;\n options.onPointerDownOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onPointerDownOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onFocusOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isInBranch(target)) return;\n options.onFocusOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onFocusOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onEscapeKeyDown(event) {\n if (!layerStack.isTopMost(node)) return;\n options.onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }\n function exclude(target) {\n if (!node) return false;\n const containers = typeof excludeContainers === \"function\" ? excludeContainers() : excludeContainers;\n const _containers = Array.isArray(containers) ? containers : [containers];\n const persistentElements = options.persistentElements?.map((fn) => fn()).filter(isHTMLElement);\n if (persistentElements) _containers.push(...persistentElements);\n return _containers.some((node2) => contains(node2, target)) || layerStack.isInNestedLayer(node, target);\n }\n const cleanups = [\n pointerBlocking ? disablePointerEventsOutside(node, options.persistentElements) : void 0,\n trackEscapeKeydown(node, onEscapeKeyDown),\n trackInteractOutside(node, { exclude, onFocusOutside, onPointerDownOutside, defer: options.defer })\n ];\n return () => {\n layerStack.remove(node);\n assignPointerEventToLayers();\n clearPointerEvent(node);\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableElement(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackDismissableElementImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableBranch(nodeOrFn, options = {}) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n if (!node) {\n warn(\"[@zag-js/dismissable] branch node is `null` or `undefined`\");\n return;\n }\n layerStack.addBranch(node);\n cleanups.push(() => {\n layerStack.removeBranch(node);\n });\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\nexport { trackDismissableBranch, trackDismissableElement };\n"],"names":["getWindowFrames","win","frames","cb","i","frame","event","listener","options","getParentWindow","parent","POINTER_OUTSIDE_EVENT","FOCUS_OUTSIDE_EVENT","isComposedPathFocusable","composedPath","node","isHTMLElement","isFocusable","isPointerEvent","isEventPointWithin","rect","isPointInRect","point","isEventWithinScrollbar","ancestor","isScrollableY","onScrollbarY","isScrollableX","onScrollbarX","trackInteractOutsideImpl","exclude","onFocusOutside","onPointerDownOutside","onInteractOutside","defer","doc","getDocument","getWindow","parentWin","isEventOutside","target","contains","triggerEl","triggerAncestor","getNearestOverflowAncestor","nodeAncestor","pointerdownCleanups","isInShadowRoot","isShadowRoot","onPointerDown","handler","clickEvent","func","isTouchDevice","raf","v","evt","getEventTarget","handler2","callAll","fireCustomEvent","isContextMenuEvent","fn","addDomEvent","cleanups","timer","onFocusin","trackInteractOutside","nodeOrFn","el","type","init","trackEscapeKeydown","handleKeyDown","layerStack","layer","index","highestBlockingIndex","branch","num","originalBodyPointerEvents","assignPointerEventToLayers","clearPointerEvent","disablePointerEventsOutside","persistentElements","persistedCleanup","waitForElements","setStyle","trackDismissableElementImpl","warnOnMissingNode","warn","onDismiss","pointerBlocking","excludeContainers","debug","onEscapeKeyDown","containers","_containers","node2","trackDismissableElement","isFunction","trackDismissableBranch"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"index-xa8tmbbH.js","sources":["../../node_modules/@zag-js/interact-outside/dist/index.mjs","../../node_modules/@zag-js/dismissable/dist/index.mjs"],"sourcesContent":["import { raf, getDocument, getWindow, isShadowRoot, addDomEvent, isTouchDevice, getEventTarget, isFocusable, isContextMenuEvent, isHTMLElement, contains, getNearestOverflowAncestor } from '@zag-js/dom-query';\nimport { callAll } from '@zag-js/utils';\n\n// src/index.ts\n\n// src/frame-utils.ts\nfunction getWindowFrames(win) {\n const frames = {\n each(cb) {\n for (let i = 0; i < win.frames?.length; i += 1) {\n const frame = win.frames[i];\n if (frame) cb(frame);\n }\n },\n addEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.addEventListener(event, listener, options);\n } catch {\n }\n });\n return () => {\n try {\n frames.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener(event, listener, options) {\n frames.each((frame) => {\n try {\n frame.document.removeEventListener(event, listener, options);\n } catch {\n }\n });\n }\n };\n return frames;\n}\nfunction getParentWindow(win) {\n const parent = win.frameElement != null ? win.parent : null;\n return {\n addEventListener: (event, listener, options) => {\n try {\n parent?.addEventListener(event, listener, options);\n } catch {\n }\n return () => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n };\n },\n removeEventListener: (event, listener, options) => {\n try {\n parent?.removeEventListener(event, listener, options);\n } catch {\n }\n }\n };\n}\n\n// src/index.ts\nvar POINTER_OUTSIDE_EVENT = \"pointerdown.outside\";\nvar FOCUS_OUTSIDE_EVENT = \"focus.outside\";\nfunction isComposedPathFocusable(composedPath) {\n for (const node of composedPath) {\n if (isHTMLElement(node) && isFocusable(node)) return true;\n }\n return false;\n}\nvar isPointerEvent = (event) => \"clientY\" in event;\nfunction isEventPointWithin(node, event) {\n if (!isPointerEvent(event) || !node) return false;\n const rect = node.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return false;\n return rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;\n}\nfunction isPointInRect(rect, point) {\n return rect.y <= point.y && point.y <= rect.y + rect.height && rect.x <= point.x && point.x <= rect.x + rect.width;\n}\nfunction isEventWithinScrollbar(event, ancestor) {\n if (!ancestor || !isPointerEvent(event)) return false;\n const isScrollableY = ancestor.scrollHeight > ancestor.clientHeight;\n const onScrollbarY = isScrollableY && event.clientX > ancestor.offsetLeft + ancestor.clientWidth;\n const isScrollableX = ancestor.scrollWidth > ancestor.clientWidth;\n const onScrollbarX = isScrollableX && event.clientY > ancestor.offsetTop + ancestor.clientHeight;\n const rect = {\n x: ancestor.offsetLeft,\n y: ancestor.offsetTop,\n width: ancestor.clientWidth + (isScrollableY ? 16 : 0),\n height: ancestor.clientHeight + (isScrollableX ? 16 : 0)\n };\n const point = {\n x: event.clientX,\n y: event.clientY\n };\n if (!isPointInRect(rect, point)) return false;\n return onScrollbarY || onScrollbarX;\n}\nfunction trackInteractOutsideImpl(node, options) {\n const { exclude, onFocusOutside, onPointerDownOutside, onInteractOutside, defer } = options;\n if (!node) return;\n const doc = getDocument(node);\n const win = getWindow(node);\n const frames = getWindowFrames(win);\n const parentWin = getParentWindow(win);\n function isEventOutside(event, target) {\n if (!isHTMLElement(target)) return false;\n if (!target.isConnected) return false;\n if (contains(node, target)) return false;\n if (isEventPointWithin(node, event)) return false;\n const triggerEl = doc.querySelector(`[aria-controls=\"${node.id}\"]`);\n if (triggerEl) {\n const triggerAncestor = getNearestOverflowAncestor(triggerEl);\n if (isEventWithinScrollbar(event, triggerAncestor)) return false;\n }\n const nodeAncestor = getNearestOverflowAncestor(node);\n if (isEventWithinScrollbar(event, nodeAncestor)) return false;\n return !exclude?.(target);\n }\n const pointerdownCleanups = /* @__PURE__ */ new Set();\n const isInShadowRoot = isShadowRoot(node?.getRootNode());\n function onPointerDown(event) {\n function handler(clickEvent) {\n const func = defer && !isTouchDevice() ? raf : (v) => v();\n const evt = clickEvent ?? event;\n const composedPath = evt?.composedPath?.() ?? [evt?.target];\n func(() => {\n const target = isInShadowRoot ? composedPath[0] : getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onPointerDownOutside || onInteractOutside) {\n const handler2 = callAll(onPointerDownOutside, onInteractOutside);\n node.addEventListener(POINTER_OUTSIDE_EVENT, handler2, { once: true });\n }\n fireCustomEvent(node, POINTER_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: evt,\n contextmenu: isContextMenuEvent(evt),\n focusable: isComposedPathFocusable(composedPath),\n target\n }\n });\n });\n }\n if (event.pointerType === \"touch\") {\n pointerdownCleanups.forEach((fn) => fn());\n pointerdownCleanups.add(addDomEvent(doc, \"click\", handler, { once: true }));\n pointerdownCleanups.add(parentWin.addEventListener(\"click\", handler, { once: true }));\n pointerdownCleanups.add(frames.addEventListener(\"click\", handler, { once: true }));\n } else {\n handler();\n }\n }\n const cleanups = /* @__PURE__ */ new Set();\n const timer = setTimeout(() => {\n cleanups.add(addDomEvent(doc, \"pointerdown\", onPointerDown, true));\n cleanups.add(parentWin.addEventListener(\"pointerdown\", onPointerDown, true));\n cleanups.add(frames.addEventListener(\"pointerdown\", onPointerDown, true));\n }, 0);\n function onFocusin(event) {\n const func = defer ? raf : (v) => v();\n func(() => {\n const target = getEventTarget(event);\n if (!node || !isEventOutside(event, target)) return;\n if (onFocusOutside || onInteractOutside) {\n const handler = callAll(onFocusOutside, onInteractOutside);\n node.addEventListener(FOCUS_OUTSIDE_EVENT, handler, { once: true });\n }\n fireCustomEvent(node, FOCUS_OUTSIDE_EVENT, {\n bubbles: false,\n cancelable: true,\n detail: {\n originalEvent: event,\n contextmenu: false,\n focusable: isFocusable(target),\n target\n }\n });\n });\n }\n if (!isTouchDevice()) {\n cleanups.add(addDomEvent(doc, \"focusin\", onFocusin, true));\n cleanups.add(parentWin.addEventListener(\"focusin\", onFocusin, true));\n cleanups.add(frames.addEventListener(\"focusin\", onFocusin, true));\n }\n return () => {\n clearTimeout(timer);\n pointerdownCleanups.forEach((fn) => fn());\n cleanups.forEach((fn) => fn());\n };\n}\nfunction trackInteractOutside(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = typeof nodeOrFn === \"function\" ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackInteractOutsideImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction fireCustomEvent(el, type, init) {\n const win = el.ownerDocument.defaultView || window;\n const event = new win.CustomEvent(type, init);\n return el.dispatchEvent(event);\n}\n\nexport { trackInteractOutside };\n","import { raf, contains, getDocument, waitForElements, setStyle, addDomEvent, getEventTarget, isHTMLElement } from '@zag-js/dom-query';\nimport { trackInteractOutside } from '@zag-js/interact-outside';\nimport { isFunction, warn } from '@zag-js/utils';\n\n// src/dismissable-layer.ts\nfunction trackEscapeKeydown(node, fn) {\n const handleKeyDown = (event) => {\n if (event.key !== \"Escape\") return;\n if (event.isComposing) return;\n fn?.(event);\n };\n return addDomEvent(getDocument(node), \"keydown\", handleKeyDown, { capture: true });\n}\nvar layerStack = {\n layers: [],\n branches: [],\n count() {\n return this.layers.length;\n },\n pointerBlockingLayers() {\n return this.layers.filter((layer) => layer.pointerBlocking);\n },\n topMostPointerBlockingLayer() {\n return [...this.pointerBlockingLayers()].slice(-1)[0];\n },\n hasPointerBlockingLayer() {\n return this.pointerBlockingLayers().length > 0;\n },\n isBelowPointerBlockingLayer(node) {\n const index = this.indexOf(node);\n const highestBlockingIndex = this.topMostPointerBlockingLayer() ? this.indexOf(this.topMostPointerBlockingLayer()?.node) : -1;\n return index < highestBlockingIndex;\n },\n isTopMost(node) {\n const layer = this.layers[this.count() - 1];\n return layer?.node === node;\n },\n getNestedLayers(node) {\n return Array.from(this.layers).slice(this.indexOf(node) + 1);\n },\n isInNestedLayer(node, target) {\n return this.getNestedLayers(node).some((layer) => contains(layer.node, target));\n },\n isInBranch(target) {\n return Array.from(this.branches).some((branch) => contains(branch, target));\n },\n add(layer) {\n const num = this.layers.push(layer);\n layer.node.style.setProperty(\"--layer-index\", `${num}`);\n },\n addBranch(node) {\n this.branches.push(node);\n },\n remove(node) {\n const index = this.indexOf(node);\n if (index < 0) return;\n if (index < this.count() - 1) {\n const _layers = this.getNestedLayers(node);\n _layers.forEach((layer) => layer.dismiss());\n }\n this.layers.splice(index, 1);\n node.style.removeProperty(\"--layer-index\");\n },\n removeBranch(node) {\n const index = this.branches.indexOf(node);\n if (index >= 0) this.branches.splice(index, 1);\n },\n indexOf(node) {\n return this.layers.findIndex((layer) => layer.node === node);\n },\n dismiss(node) {\n this.layers[this.indexOf(node)]?.dismiss();\n },\n clear() {\n this.remove(this.layers[0].node);\n }\n};\nvar originalBodyPointerEvents;\nfunction assignPointerEventToLayers() {\n layerStack.layers.forEach(({ node }) => {\n node.style.pointerEvents = layerStack.isBelowPointerBlockingLayer(node) ? \"none\" : \"auto\";\n });\n}\nfunction clearPointerEvent(node) {\n node.style.pointerEvents = \"\";\n}\nfunction disablePointerEventsOutside(node, persistentElements) {\n const doc = getDocument(node);\n const cleanups = [];\n if (layerStack.hasPointerBlockingLayer() && !doc.body.hasAttribute(\"data-inert\")) {\n originalBodyPointerEvents = document.body.style.pointerEvents;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = \"none\";\n doc.body.setAttribute(\"data-inert\", \"\");\n });\n }\n if (persistentElements) {\n const persistedCleanup = waitForElements(persistentElements, (el) => {\n cleanups.push(setStyle(el, { pointerEvents: \"auto\" }));\n });\n cleanups.push(persistedCleanup);\n }\n return () => {\n if (layerStack.hasPointerBlockingLayer()) return;\n queueMicrotask(() => {\n doc.body.style.pointerEvents = originalBodyPointerEvents;\n doc.body.removeAttribute(\"data-inert\");\n if (doc.body.style.length === 0) doc.body.removeAttribute(\"style\");\n });\n cleanups.forEach((fn) => fn());\n };\n}\n\n// src/dismissable-layer.ts\nfunction trackDismissableElementImpl(node, options) {\n const { warnOnMissingNode = true } = options;\n if (warnOnMissingNode && !node) {\n warn(\"[@zag-js/dismissable] node is `null` or `undefined`\");\n return;\n }\n if (!node) {\n return;\n }\n const { onDismiss, pointerBlocking, exclude: excludeContainers, debug } = options;\n const layer = { dismiss: onDismiss, node, pointerBlocking };\n layerStack.add(layer);\n assignPointerEventToLayers();\n function onPointerDownOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isBelowPointerBlockingLayer(node) || layerStack.isInBranch(target)) return;\n options.onPointerDownOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onPointerDownOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onFocusOutside(event) {\n const target = getEventTarget(event.detail.originalEvent);\n if (layerStack.isInBranch(target)) return;\n options.onFocusOutside?.(event);\n options.onInteractOutside?.(event);\n if (event.defaultPrevented) return;\n if (debug) {\n console.log(\"onFocusOutside:\", event.detail.originalEvent);\n }\n onDismiss?.();\n }\n function onEscapeKeyDown(event) {\n if (!layerStack.isTopMost(node)) return;\n options.onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }\n function exclude(target) {\n if (!node) return false;\n const containers = typeof excludeContainers === \"function\" ? excludeContainers() : excludeContainers;\n const _containers = Array.isArray(containers) ? containers : [containers];\n const persistentElements = options.persistentElements?.map((fn) => fn()).filter(isHTMLElement);\n if (persistentElements) _containers.push(...persistentElements);\n return _containers.some((node2) => contains(node2, target)) || layerStack.isInNestedLayer(node, target);\n }\n const cleanups = [\n pointerBlocking ? disablePointerEventsOutside(node, options.persistentElements) : void 0,\n trackEscapeKeydown(node, onEscapeKeyDown),\n trackInteractOutside(node, { exclude, onFocusOutside, onPointerDownOutside, defer: options.defer })\n ];\n return () => {\n layerStack.remove(node);\n assignPointerEventToLayers();\n clearPointerEvent(node);\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableElement(nodeOrFn, options) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n cleanups.push(trackDismissableElementImpl(node, options));\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\nfunction trackDismissableBranch(nodeOrFn, options = {}) {\n const { defer } = options;\n const func = defer ? raf : (v) => v();\n const cleanups = [];\n cleanups.push(\n func(() => {\n const node = isFunction(nodeOrFn) ? nodeOrFn() : nodeOrFn;\n if (!node) {\n warn(\"[@zag-js/dismissable] branch node is `null` or `undefined`\");\n return;\n }\n layerStack.addBranch(node);\n cleanups.push(() => {\n layerStack.removeBranch(node);\n });\n })\n );\n return () => {\n cleanups.forEach((fn) => fn?.());\n };\n}\n\nexport { trackDismissableBranch, trackDismissableElement };\n"],"names":["getWindowFrames","win","frames","cb","i","frame","event","listener","options","getParentWindow","parent","POINTER_OUTSIDE_EVENT","FOCUS_OUTSIDE_EVENT","isComposedPathFocusable","composedPath","node","isHTMLElement","isFocusable","isPointerEvent","isEventPointWithin","rect","isPointInRect","point","isEventWithinScrollbar","ancestor","isScrollableY","onScrollbarY","isScrollableX","onScrollbarX","trackInteractOutsideImpl","exclude","onFocusOutside","onPointerDownOutside","onInteractOutside","defer","doc","getDocument","getWindow","parentWin","isEventOutside","target","contains","triggerEl","triggerAncestor","getNearestOverflowAncestor","nodeAncestor","pointerdownCleanups","isInShadowRoot","isShadowRoot","onPointerDown","handler","clickEvent","func","isTouchDevice","raf","v","evt","getEventTarget","handler2","callAll","fireCustomEvent","isContextMenuEvent","fn","addDomEvent","cleanups","timer","onFocusin","trackInteractOutside","nodeOrFn","el","type","init","trackEscapeKeydown","handleKeyDown","layerStack","layer","index","highestBlockingIndex","branch","num","originalBodyPointerEvents","assignPointerEventToLayers","clearPointerEvent","disablePointerEventsOutside","persistentElements","persistedCleanup","waitForElements","setStyle","trackDismissableElementImpl","warnOnMissingNode","warn","onDismiss","pointerBlocking","excludeContainers","debug","onEscapeKeyDown","containers","_containers","node2","trackDismissableElement","isFunction","trackDismissableBranch"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as e } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
2
|
import { forwardRef as x } from "react";
|
|
3
|
-
import { W as k } from "./text.component-
|
|
3
|
+
import { W as k } from "./text.component-ByshUroO.js";
|
|
4
4
|
import { I as d } from "./icon.component-BmcWaysM.js";
|
|
5
5
|
import { u as f } from "./useIconTextSizeMap-BK-pUrQv.js";
|
|
6
6
|
import { c as j } from "./create-recipe-context-BcvaE0iS.js";
|
|
@@ -58,4 +58,4 @@ I.displayName = "Link";
|
|
|
58
58
|
export {
|
|
59
59
|
I as L
|
|
60
60
|
};
|
|
61
|
-
//# sourceMappingURL=link.component-
|
|
61
|
+
//# sourceMappingURL=link.component-B8MuH7tM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.component-
|
|
1
|
+
{"version":3,"file":"link.component-B8MuH7tM.js","sources":["../../node_modules/@chakra-ui/react/dist/esm/components/link/link.js","../../src/components/Link/components/LinkIcon/linkIcon.component.tsx","../../src/components/Link/link.component.tsx"],"sourcesContent":["\"use strict\";\n\"use client\";\nimport { createRecipeContext } from '../../styled-system/create-recipe-context.js';\n\nconst { withContext, PropsProvider } = createRecipeContext({\n key: \"link\"\n});\nconst Link = withContext(\"a\");\nconst LinkPropsProvider = PropsProvider;\n\nexport { Link, LinkPropsProvider };\n","import React from \"react\";\nimport { Icon, IconProps } from \"components/Icon\";\n\nexport interface LinkIconProps extends Pick<IconProps, \"name\"> {\n position?: \"start\" | \"end\";\n}\n\ntype InternalLinkIconProps = Pick<IconProps, \"name\" | \"variant\" | \"size\">;\n\nexport const LinkIcon = ({\n variant,\n ...rest\n}: InternalLinkIconProps): React.JSX.Element => {\n return <Icon variant={variant || \"interactive\"} {...rest} />;\n};\n","import React, { ForwardedRef, forwardRef } from \"react\";\nimport { Link as CLink, LinkProps as CLinkProps } from \"@chakra-ui/react/link\"; // Make sure to use named imports from Chakra UI\nimport { TypographyVariant } from \"shared/types\";\nimport { TextSize } from \"components/Text/text.types\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Text } from \"components/Text\";\nimport {\n LinkIcon,\n LinkIconProps,\n} from \"./components/LinkIcon/linkIcon.component\";\nimport { useIconTextSizeMap } from \"hooks/useIconTextSizeMap\";\n\nexport interface LinkProps extends CLinkProps {\n iconProps?: LinkIconProps;\n external?: boolean;\n size?: TextSize;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n to?: any;\n variant?: TypographyVariant;\n}\n\nexport const Link = forwardRef(\n (\n props: LinkProps,\n ref: ForwardedRef<HTMLAnchorElement>,\n ): React.JSX.Element => {\n const {\n children,\n external,\n iconProps,\n size = \"md\",\n variant = \"interactive\",\n ...rest\n } = props;\n const mapIconSize = useIconTextSizeMap(size);\n const iconPosition = iconProps?.position || \"start\";\n\n return (\n <CLink\n className=\"Link\"\n data-testid=\"kibble-link\"\n variant={variant}\n display=\"inline-block\"\n size={size}\n ref={ref}\n {...(external && { target: \"_blank\", rel: \"noopener noreferrer\" })}\n {...rest}\n >\n <HStack gap={1} align=\"center\">\n {iconProps && iconPosition === \"start\" && (\n <LinkIcon\n name={iconProps.name}\n variant={variant}\n size={mapIconSize}\n />\n )}\n <Text size={size} variant={variant}>\n {children}\n </Text>\n {iconProps && iconPosition === \"end\" && (\n <LinkIcon\n name={iconProps.name}\n variant={variant}\n size={mapIconSize}\n />\n )}\n </HStack>\n </CLink>\n );\n },\n);\n\nLink.displayName = \"Link\";\n"],"names":["withContext","createRecipeContext","Link","LinkIcon","variant","rest","Icon","forwardRef","props","ref","children","external","iconProps","size","mapIconSize","useIconTextSizeMap","iconPosition","jsx","CLink","jsxs","HStack","Text"],"mappings":";;;;;;;AAIA,MAAM,EAAE,aAAAA,EAA2B,IAAIC,EAAoB;AAAA,EACzD,KAAK;AACP,CAAC,GACKC,IAAOF,EAAY,GAAG,GCEfG,IAAW,CAAC;AAAA,EACvB,SAAAC;AAAA,EACA,GAAGC;AACL,4BACUC,GAAK,EAAA,SAASF,KAAW,eAAgB,GAAGC,GAAM,GCQ/CH,IAAOK;AAAA,EAClB,CACEC,GACAC,MACsB;AAChB,UAAA;AAAA,MACJ,UAAAC;AAAA,MACA,UAAAC;AAAA,MACA,WAAAC;AAAA,MACA,MAAAC,IAAO;AAAA,MACP,SAAAT,IAAU;AAAA,MACV,GAAGC;AAAA,IAAA,IACDG,GACEM,IAAcC,EAAmBF,CAAI,GACrCG,IAAeJ,GAAW,YAAY;AAG1C,WAAAK,gBAAAA,EAAA;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,eAAY;AAAA,QACZ,SAAAd;AAAA,QACA,SAAQ;AAAA,QACR,MAAAS;AAAA,QACA,KAAAJ;AAAA,QACC,GAAIE,KAAY,EAAE,QAAQ,UAAU,KAAK,sBAAsB;AAAA,QAC/D,GAAGN;AAAA,QAEJ,UAACc,gBAAAA,EAAAA,KAAAC,GAAA,EAAO,KAAK,GAAG,OAAM,UACnB,UAAA;AAAA,UAAAR,KAAaI,MAAiB,WAC7BC,gBAAAA,EAAA;AAAA,YAACd;AAAA,YAAA;AAAA,cACC,MAAMS,EAAU;AAAA,cAChB,SAAAR;AAAA,cACA,MAAMU;AAAA,YAAA;AAAA,UACR;AAAA,UAEDG,gBAAAA,EAAAA,IAAAI,GAAA,EAAK,MAAAR,GAAY,SAAAT,GACf,UAAAM,EACH,CAAA;AAAA,UACCE,KAAaI,MAAiB,SAC7BC,gBAAAA,EAAA;AAAA,YAACd;AAAA,YAAA;AAAA,cACC,MAAMS,EAAU;AAAA,cAChB,SAAAR;AAAA,cACA,MAAMU;AAAA,YAAA;AAAA,UAAA;AAAA,QACR,EAEJ,CAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;AAEAZ,EAAK,cAAc;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.component-Bi2JPazM.js","sources":["../../node_modules/@ark-ui/react/dist/components/menu/use-menu-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow-tip.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-option-item-props-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-checkbox-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-content.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-context-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-group-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group-label.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-text.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-positioner.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item-group.js","../../node_modules/@ark-ui/react/dist/utils/use-effect-once.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-machine-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-trigger-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root-provider.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-separator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger-item.js","../../node_modules/@chakra-ui/react/dist/esm/components/menu/menu.js","../../src/components/Menu/components/MenuButton/menuButton.components.tsx","../../src/components/Menu/components/MenuItem/menuItem.component.tsx","../../src/components/Menu/components/MenuToggleButtons/menuToggleButtons.tsx","../../src/components/Menu/menu.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuProvider, useMenuContext] = createContext({\n name: \"MenuContext\",\n hookName: \"useMenuContext\",\n providerName: \"<MenuProvider />\",\n strict: false\n});\n\nexport { MenuProvider, useMenuContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrow = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrow.displayName = \"MenuArrow\";\n\nexport { MenuArrow };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrowTip = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowTipProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrowTip.displayName = \"MenuArrowTip\";\n\nexport { MenuArrowTip };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemProvider, useMenuItemContext] = createContext({\n name: \"MenuItemContext\",\n hookName: \"useMenuItemContext\",\n providerName: \"<MenuItemProvider />\"\n});\n\nexport { MenuItemProvider, useMenuItemContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuOptionItemPropsProvider, useMenuOptionItemPropsContext] = createContext({\n name: \"MenuOptionItemPropsContext\",\n hookName: \"useMenuOptionItemPropsContext\",\n providerName: \"<MenuOptionItemPropsProvider />\"\n});\n\nexport { MenuOptionItemPropsProvider, useMenuOptionItemPropsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuOptionItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuCheckboxItem = forwardRef((props, ref) => {\n const [partialOptionItemProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"closeOnSelect\",\n \"disabled\",\n \"onCheckedChange\",\n \"value\",\n \"valueText\"\n ]);\n const optionItemProps = {\n ...partialOptionItemProps,\n type: \"checkbox\"\n };\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuOptionItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\";\n\nexport { MenuCheckboxItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContent = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(menu.getContentProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nMenuContent.displayName = \"MenuContent\";\n\nexport { MenuContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContextTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getContextTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuContextTrigger.displayName = \"MenuContextTrigger\";\n\nexport { MenuContextTrigger };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuIndicator.displayName = \"MenuIndicator\";\n\nexport { MenuIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useEffect } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\n\nconst MenuItem = forwardRef((props, ref) => {\n const [itemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\",\n \"onSelect\"\n ]);\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getItemProps(itemProps), localProps);\n const itemState = menu.getItemState(itemProps);\n useEffect(() => {\n return menu.addItemListener({ id: itemState.id, onSelect: itemProps.onSelect });\n }, [itemState.id, itemProps.onSelect]);\n return /* @__PURE__ */ jsx(MenuItemProvider, { value: itemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItem.displayName = \"MenuItem\";\n\nexport { MenuItem };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemGroupProvider, useMenuItemGroupContext] = createContext({\n name: \"MenuItemGroupContext\",\n hookName: \"useMenuItemGroupContext\",\n providerName: \"<MenuItemGroupProvider />\"\n});\n\nexport { MenuItemGroupProvider, useMenuItemGroupContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\"id\"]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps(itemGroupProps), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItemGroup.displayName = \"MenuItemGroup\";\n\nexport { MenuItemGroup };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\n\nconst MenuItemGroupLabel = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const mergedProps = mergeProps(menu.getItemGroupLabelProps({ htmlFor: itemGroup.id }), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemGroupLabel.displayName = \"MenuItemGroupLabel\";\n\nexport { MenuItemGroupLabel };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuOptionItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const optionItemProps = useMenuOptionItemPropsContext();\n const mergedProps = mergeProps(menu.getItemIndicatorProps(optionItemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemIndicator.displayName = \"MenuItemIndicator\";\n\nexport { MenuItemIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuOptionItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemText = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const optionItemProps = useMenuOptionItemPropsContext();\n const mergedProps = mergeProps(menu.getItemTextProps(optionItemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemText.displayName = \"MenuItemText\";\n\nexport { MenuItemText };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuPositioner = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getPositionerProps(), props);\n const presence = usePresenceContext();\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuPositioner.displayName = \"MenuPositioner\";\n\nexport { MenuPositioner };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\nimport { MenuOptionItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuRadioItem = forwardRef((props, ref) => {\n const [partialItemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\"\n ]);\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const optionItemProps = {\n ...partialItemProps,\n checked: itemGroup.value === partialItemProps.value,\n type: \"radio\",\n onCheckedChange: () => itemGroup.onValueChange?.({ value: partialItemProps.value })\n };\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuOptionItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuRadioItem.displayName = \"MenuRadioItem\";\n\nexport { MenuRadioItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuRadioItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\n \"id\",\n \"onValueChange\",\n \"value\"\n ]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps({ id: itemGroupProps.id }), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuRadioItemGroup.displayName = \"MenuRadioItemGroup\";\n\nexport { MenuRadioItemGroup };\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nconst useEffectOnce = (cb) => {\n const savedCallback = useRef(cb);\n const effectGuard = useRef(false);\n useEffect(() => {\n savedCallback.current = cb;\n });\n useEffect(() => {\n if (effectGuard.current !== true) {\n effectGuard.current = true;\n savedCallback.current();\n }\n }, []);\n};\n\nexport { useEffectOnce };\n","'use client';\nimport * as menu from '@zag-js/menu';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useMenu = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(menu.machine, machineProps);\n const api = menu.connect(service, normalizeProps);\n return { api, service };\n};\n\nexport { useMenu };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuMachineProvider, useMenuMachineContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuMachineProvider, useMenuMachineContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuTriggerItemProvider, useMenuTriggerItemContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuTriggerItemProvider, useMenuTriggerItemContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenu } from './use-menu.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRoot = (props) => {\n const [presenceProps, menuProps] = splitPresenceProps(props);\n const [useMenuProps, localProps] = createSplitProps()(menuProps, [\n \"anchorPoint\",\n \"aria-label\",\n \"closeOnSelect\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onEscapeKeyDown\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"open\",\n \"positioning\",\n \"typeahead\"\n ]);\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const { api, service } = useMenu(useMenuProps);\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, ...localProps }) }) }) });\n};\n\nexport { MenuRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRootProvider = (props) => {\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const [presenceProps, { value: menu, children }] = splitPresenceProps(props);\n const { api, service } = menu;\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children }) }) }) });\n};\n\nexport { MenuRootProvider };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuSeparator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getSeparatorProps(), props);\n return /* @__PURE__ */ jsx(ark.hr, { ...mergedProps, ref });\n});\nMenuSeparator.displayName = \"MenuSeparator\";\n\nexport { MenuSeparator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(\n {\n ...menu.getTriggerProps(),\n \"aria-controls\": presence.unmounted ? void 0 : menu.getTriggerProps()[\"aria-controls\"]\n },\n props\n );\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuTrigger.displayName = \"MenuTrigger\";\n\nexport { MenuTrigger };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuTriggerItemContext } from './use-menu-trigger-item-context.js';\n\nconst MenuTriggerItem = forwardRef((props, ref) => {\n const getTriggerItemProps = useMenuTriggerItemContext();\n const mergedProps = mergeProps(getTriggerItemProps?.() ?? {}, props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuTriggerItem.displayName = \"MenuTriggerItem\";\n\nexport { MenuTriggerItem };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Menu } from '@ark-ui/react/menu';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { CheckIcon } from '../icons.js';\n\nconst {\n withRootProvider,\n withContext,\n useStyles: useMenuStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"menu\" });\nconst MenuRootProvider = withRootProvider(\n Menu.RootProvider\n);\nconst MenuRoot = withRootProvider(Menu.Root, {\n defaultProps: { lazyMount: true, unmountOnExit: true }\n});\nconst MenuPropsProvider = PropsProvider;\nconst MenuTrigger = withContext(\n Menu.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst MenuContextTrigger = withContext(Menu.ContextTrigger, \"contextTrigger\", { forwardAsChild: true });\nconst MenuPositioner = withContext(\n Menu.Positioner,\n \"positioner\",\n { forwardAsChild: true }\n);\nconst MenuSeparator = withContext(\n Menu.Separator,\n \"separator\",\n { forwardAsChild: true }\n);\nconst MenuContent = withContext(\n Menu.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst MenuArrowTip = withContext(\n Menu.ArrowTip,\n \"arrowTip\",\n { forwardAsChild: true }\n);\nconst MenuArrow = withContext(\n Menu.Arrow,\n \"arrow\",\n { forwardAsChild: true, defaultProps: { children: /* @__PURE__ */ jsx(MenuArrowTip, {}) } }\n);\nconst MenuIndicator = withContext(\n Menu.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst MenuItemGroup = withContext(\n Menu.ItemGroup,\n \"itemGroup\",\n { forwardAsChild: true }\n);\nconst MenuItemGroupLabel = withContext(Menu.ItemGroupLabel, \"itemGroupLabel\", { forwardAsChild: true });\nconst MenuItem = withContext(\n Menu.Item,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuTriggerItem = withContext(Menu.TriggerItem, \"item\", { forwardAsChild: true });\nconst MenuItemText = withContext(\n Menu.ItemText,\n \"itemText\",\n { forwardAsChild: true }\n);\nconst MenuItemCommand = withContext(\n \"kbd\",\n \"itemCommand\"\n);\nconst MenuItemIndicator = withContext(Menu.ItemIndicator, \"itemIndicator\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(CheckIcon, { boxSize: \"4\" }) }\n});\nconst MenuCheckboxItem = withContext(Menu.CheckboxItem, \"item\", { forwardAsChild: true });\nconst MenuRadioItemGroup = withContext(Menu.RadioItemGroup, \"itemGroup\", { forwardAsChild: true });\nconst MenuRadioItem = withContext(\n Menu.RadioItem,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuContext = Menu.Context;\nconst MenuItemContext = Menu.ItemContext;\n\nexport { MenuArrow, MenuArrowTip, MenuCheckboxItem, MenuContent, MenuContext, MenuContextTrigger, MenuIndicator, MenuItem, MenuItemCommand, MenuItemContext, MenuItemGroup, MenuItemGroupLabel, MenuItemIndicator, MenuItemText, MenuPositioner, MenuPropsProvider, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuRootProvider, MenuSeparator, MenuTrigger, MenuTriggerItem, useMenuStyles };\n","import { Flex } from \"@chakra-ui/react/flex\";\nimport { Button, ButtonProps } from \"components/Button/button.component\";\nimport { Icon } from \"components/Icon/icon.component\";\nimport { Text, TextProps } from \"components/Text/text.component\";\nimport React from \"react\";\n\nexport interface MenuButtonProps extends Omit<ButtonProps, \"children\"> {\n hideCaret?: boolean;\n text?: string;\n textProps?: TextProps;\n}\n\nexport const MenuButton = ({\n hideCaret = false,\n size = \"md\",\n text,\n textProps,\n variant,\n ...rest\n}: MenuButtonProps): React.JSX.Element => {\n return (\n <Button\n className=\"Menu__Button\"\n data-testid=\"kibble-menu-button\"\n size={size}\n variant={variant}\n {...rest}\n >\n {text && (\n <Text\n className=\"Menu__ButtonText\"\n data-testid=\"kibble-menu-button-text\"\n fontWeight=\"semibold\"\n size={size}\n color={variant ? \"inherit\" : textProps?.color || \"text.contrast\"}\n truncate\n {...textProps}\n >\n {text}\n </Text>\n )}\n {!hideCaret && (\n <Flex\n className=\"Menu__ButtonCaret\"\n data-testid=\"kibble-menu-button-caret\"\n >\n <Icon name=\"chevronDown\" size={size === \"lg\" ? \"sm\" : \"xs\"} />\n </Flex>\n )}\n </Button>\n );\n};\n","import { Flex } from \"@chakra-ui/react/flex\";\nimport { Menu as CMenu } from \"@chakra-ui/react/menu\";\nimport React, { useCallback } from \"react\";\nimport { Text } from \"components/Text/text.component\";\nimport { MenuItemType } from \"./menuItem.types\";\nimport { Menu, MenuListProps } from \"components/Menu\";\nimport { TypographyVariant } from \"shared/types/typography\";\nimport { Checkbox } from \"components/Checkbox/checkbox.component\";\nimport { Icon } from \"components/Icon/icon.component\";\n\ninterface BaseMenuItemProps {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n groupLabel?: string;\n onSelect?: (value: string) => void;\n shouldTruncateText?: boolean;\n type?: MenuItemType;\n value: string;\n variant?: TypographyVariant;\n}\n\ninterface DefaultMenuItemProps extends Omit<CMenu.ItemProps, \"onSelect\"> {\n type?: \"default\";\n selected?: boolean;\n}\n\ninterface CheckboxMenuItemProps\n extends Omit<CMenu.CheckboxItemProps, \"onSelect\"> {\n type: \"checkbox\";\n checked: boolean;\n}\n\ninterface SubmenuMenuItemProps {\n type: \"submenu\";\n valueText?: string;\n listProps?: MenuListProps;\n}\n\nexport type MenuItemProps = BaseMenuItemProps &\n (DefaultMenuItemProps | CheckboxMenuItemProps | SubmenuMenuItemProps);\n\nexport const MenuItem = ({\n label,\n leftElement,\n onSelect,\n shouldTruncateText,\n type = \"default\",\n variant,\n ...rest\n}: MenuItemProps): React.JSX.Element => {\n const handleOnSelect = useCallback(() => {\n if (onSelect) {\n onSelect(rest.value);\n }\n }, [onSelect, rest.value]);\n\n if (type === \"submenu\") {\n const { valueText, listProps } = rest as Omit<SubmenuMenuItemProps, \"type\">;\n return (\n <Menu\n submenuTrigger={\n <CMenu.TriggerItem\n className=\"Menu__Item--Submenu\"\n data-testid=\"kibble-menu-item-submenu\"\n justifyContent=\"space-between\"\n aria-valuetext={valueText}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n <Icon name=\"chevronRight\" size=\"sm\" />\n </CMenu.TriggerItem>\n }\n portalled={true}\n listProps={listProps}\n />\n );\n }\n\n if (type === \"checkbox\") {\n const { checked, value, closeOnSelect, ...checkboxRest } =\n rest as CheckboxMenuItemProps;\n return (\n <CMenu.CheckboxItem\n className=\"Menu__Item--Checkbox\"\n data-testid=\"kibble-menu-item-checkbox\"\n value={value}\n checked={!!checked}\n onCheckedChange={handleOnSelect}\n closeOnSelect={closeOnSelect || false}\n gap={3}\n {...checkboxRest}\n >\n <Checkbox checked={!!checked} size=\"md\" />\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n </CMenu.CheckboxItem>\n );\n }\n\n if (type === \"default\") {\n const {\n selected = false,\n value,\n ...defaultRest\n } = rest as DefaultMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Default\"\n data-testid=\"kibble-menu-item-default\"\n value={value}\n onSelect={handleOnSelect}\n {...(selected && { bgColor: \"background.secondaryAlpha.hover\" })}\n {...defaultRest}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={selected ? \"info\" : variant}\n />\n </CMenu.Item>\n );\n }\n\n return <></>;\n};\n\nconst MenuItemLabel = ({\n label,\n leftElement,\n shouldTruncateText,\n variant,\n}: {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n shouldTruncateText?: boolean;\n variant?: TypographyVariant;\n}): React.JSX.Element => {\n return (\n <Flex className=\"Menu__ItemLabel\" alignItems=\"center\" gap={3}>\n {leftElement}\n {typeof label === \"string\" ? (\n <Text size=\"sm\" truncated={shouldTruncateText} variant={variant}>\n {label}\n </Text>\n ) : (\n label\n )}\n </Flex>\n );\n};\n","import { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { Button } from \"components/Button/button.component\";\n\ninterface MenuToggleButtonsProps {\n hasSelectedItems?: boolean;\n groupName?: string;\n onToggle: ({\n groupName,\n clear,\n }: {\n clear: boolean;\n groupName?: string;\n }) => void;\n}\n\nexport const MenuToggleButtons = ({\n groupName,\n hasSelectedItems = false,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n const isGrouped = !!groupName;\n return (\n <Box\n className=\"Menu__ToggleButtons\"\n data-testid=\"kibble-menu-toggle-buttons\"\n {...(isGrouped ? { textAlign: \"right\", w: \"50%\" } : { mt: 2 })}\n >\n {isGrouped ? (\n <>\n {hasSelectedItems ? (\n <ClearAllButton\n hasSelectedItems={hasSelectedItems}\n groupName={groupName}\n onToggle={onToggle}\n />\n ) : (\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n )}\n </>\n ) : (\n <Flex justifyContent=\"space-between\">\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n <ClearAllButton\n hasSelectedItems={hasSelectedItems}\n groupName={groupName}\n onToggle={onToggle}\n />\n </Flex>\n )}\n </Box>\n );\n};\n\nconst SelectAllButton = ({\n groupName,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghost\"\n size=\"xs\"\n onClick={(): void => onToggle({ groupName, clear: false })}\n >\n Select All\n </Button>\n );\n};\n\nconst ClearAllButton = ({\n hasSelectedItems,\n groupName,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghostNeutral\"\n iconName=\"arrowCircle\"\n size=\"xs\"\n disabled={!hasSelectedItems}\n onClick={(): void => onToggle({ groupName, clear: true })}\n >\n Clear All\n </Button>\n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Menu as CMenu } from \"@chakra-ui/react/menu\";\nimport { Portal } from \"@chakra-ui/react/portal\";\nimport {\n MenuButton,\n MenuButtonProps,\n} from \"./components/MenuButton/menuButton.components\";\nimport {\n MenuItem,\n MenuItemProps,\n} from \"./components/MenuItem/menuItem.component\";\nimport { useCheckboxGroup } from \"@chakra-ui/react/checkbox\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Text } from \"components/Text/text.component\";\nimport { TextInput } from \"components/TextInput/textInput.component\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { MenuToggleButtons } from \"./components/MenuToggleButtons/menuToggleButtons\";\nimport { useModalContentRef } from \"components/Modal/context/modal.context\";\n\nexport type MenuListOnSelect =\n | ((selectedItem: string | undefined, allSelectedItems?: string[]) => void)\n | ((\n selectedItem: string | undefined,\n allSelectedItems?: string[]\n ) => Promise<void>);\n\nexport type MenuListOnSelectAll =\n | ((selectedItems: string[]) => void)\n | ((selectedItems: string[]) => Promise<void>);\n\nexport interface MenuListProps extends Omit<CMenu.ContentProps, \"onSelect\"> {\n canSelectAll?: boolean;\n canSelectGroups?: boolean;\n emptyStateText?: string;\n loading?: boolean;\n menuItems?: MenuItemProps[];\n onSearch?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n onSelect?: MenuListOnSelect;\n onSelectAll?: MenuListOnSelectAll;\n searchable?: boolean;\n searchPlaceholder?: string;\n shouldTruncateText?: boolean;\n}\n\nexport interface MenuProps\n extends Omit<CMenu.RootProps, \"children\" | \"onSelect\"> {\n buttonProps?: MenuButtonProps;\n listProps?: MenuListProps;\n portalled?: boolean;\n}\n\ninterface InternalMenuProps extends MenuProps {\n submenuTrigger?: React.ReactNode;\n}\n\nexport const Menu = ({\n buttonProps,\n listProps,\n portalled = false,\n submenuTrigger,\n ...rest\n}: InternalMenuProps): React.JSX.Element => {\n const { contentRef: modalContentRef } = useModalContentRef();\n const {\n canSelectAll,\n canSelectGroups,\n emptyStateText = \"No results found\",\n loading,\n maxH = \"480px\",\n menuItems = [],\n minW = \"240px\",\n onSearch,\n onSelect,\n onSelectAll,\n searchable,\n searchPlaceholder = \"Search...\",\n shouldTruncateText,\n ...restListProps\n } = listProps || {};\n const [searchText, setSearchText] = useState<string>(\"\");\n const [filteredMenuItems, setFilteredMenuItems] =\n useState<MenuItemProps[]>(menuItems);\n\n // Menu Items\n const groupedItems = useMemo(() => {\n const groups: Record<string, Record<string, MenuItemProps[]>> = {};\n\n filteredMenuItems?.forEach((item) => {\n const group = item.groupLabel || \"default\";\n // Default and submenu items are grouped under \"default\"\n const type = item.type === \"checkbox\" ? \"checkbox\" : \"default\";\n\n if (!groups[group]) {\n groups[group] = {};\n }\n\n if (!groups[group][type]) {\n groups[group][type] = [];\n }\n\n groups[group][type].push(item);\n });\n\n return groups;\n }, [filteredMenuItems]);\n\n const groups = useMemo(() => Object.entries(groupedItems), [groupedItems]);\n\n // Checkbox State Management\n const checkboxItems = useMemo(\n () => menuItems?.filter((item) => item.type === \"checkbox\") || [],\n [menuItems]\n );\n\n const defaultSelectedItems = useMemo(() => {\n const selectedMenuItems =\n checkboxItems?.filter((item) => item.checked) || [];\n return selectedMenuItems.map((item) => item.value);\n }, [checkboxItems]);\n\n const selectedItems = useCheckboxGroup({\n defaultValue: defaultSelectedItems,\n });\n\n // Search\n const filterOptions = useCallback(\n (searchInput: string, itemsToFilter: MenuItemProps[]) => {\n if (searchInput === \"\" || !searchInput) {\n return itemsToFilter;\n }\n\n return itemsToFilter.filter((item): boolean => {\n const labelText =\n typeof item.label === \"string\" ? item.label : item.valueText;\n\n return !!labelText?.toLowerCase().includes(searchInput.toLowerCase());\n });\n },\n []\n );\n\n useEffect(() => {\n if (onSearch) {\n setFilteredMenuItems(menuItems);\n } else {\n setFilteredMenuItems(filterOptions(searchText, menuItems));\n }\n }, [searchText, onSearch, filterOptions, menuItems]);\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchInput = e.target.value;\n setSearchText(searchInput);\n\n if (onSearch) {\n onSearch(e);\n }\n },\n [onSearch]\n );\n\n const clearSearch = useCallback(() => {\n setSearchText(\"\");\n\n if (onSearch) {\n onSearch({\n target: { value: \"\" },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n }, [onSearch]);\n\n // Selection\n const handleToggle = useCallback(\n ({ groupName, clear }: { groupName?: string; clear: boolean }) => {\n let newValues: string[] = [];\n if (groupName) {\n const groupItems = checkboxItems\n .filter((item) => item.groupLabel === groupName)\n .map((item) => item.value);\n newValues = clear\n ? selectedItems.value.filter((value) => !groupItems.includes(value))\n : [...selectedItems.value, ...groupItems];\n } else {\n newValues = clear ? [] : checkboxItems.map((item) => item.value);\n }\n onSelectAll?.(newValues);\n selectedItems.setValue(newValues);\n },\n [checkboxItems, onSelectAll, selectedItems]\n );\n\n const handleSelect = useCallback(\n (item: MenuItemProps) => {\n item.onSelect?.(item.value);\n const currentSelection = selectedItems.value;\n const isItemSelected = selectedItems.isChecked(item.value);\n onSelect?.(\n item.value,\n isItemSelected\n ? currentSelection.filter((value) => value !== item.value)\n : [...currentSelection, item.value]\n );\n if (item.type === \"checkbox\") {\n selectedItems.toggleValue(item.value);\n }\n },\n [onSelect, selectedItems]\n );\n\n // Cleanup\n const handleCleanup = useCallback(\n (open: boolean) => {\n if (!open) {\n setSearchText(\"\");\n setFilteredMenuItems(menuItems);\n }\n },\n [menuItems]\n );\n\n return (\n <CMenu.Root\n {...rest}\n onOpenChange={(details) => {\n handleCleanup(details.open);\n rest.onOpenChange?.(details);\n }}\n >\n {!submenuTrigger ? (\n <CMenu.Trigger\n asChild\n className=\"Menu__Trigger\"\n data-testid=\"kibble-menu-trigger\"\n >\n <MenuButton {...buttonProps} />\n </CMenu.Trigger>\n ) : (\n submenuTrigger\n )}\n <Portal disabled={!portalled} container={modalContentRef || undefined}>\n <CMenu.Positioner className=\"Menu\" data-testid=\"kibble-menu\">\n <CMenu.Content\n className=\"Menu__Content\"\n data-testid=\"kibble-menu-content\"\n maxH={maxH}\n minW={minW}\n {...restListProps}\n >\n {(searchable || canSelectAll) && (\n <Box\n className=\"Menu__Header\"\n data-testid=\"kibble-menu-header\"\n m=\"0 12px 8px\"\n >\n {searchable && (\n <TextInput\n className=\"Menu__SearchBar\"\n data-testid=\"kibble-menu-search-bar\"\n placeholder={searchPlaceholder}\n onChange={handleSearch}\n size=\"sm\"\n value={searchText}\n clearable\n onClear={clearSearch}\n formControlStyle={{ mt: 1 }}\n />\n )}\n {canSelectAll && !!checkboxItems.length && (\n <MenuToggleButtons\n onToggle={handleToggle}\n hasSelectedItems={!!selectedItems.value.length}\n />\n )}\n </Box>\n )}\n {!loading ? (\n <Box className=\"Menu__List\" data-testid=\"kibble-menu-list\">\n {groups.length ? (\n <>\n {groups.map(([groupLabel, types]) => {\n const isDefaultGroup = groupLabel === \"default\";\n const itemTypes = Object.keys(types);\n const MenuGroupContainer = !isDefaultGroup\n ? CMenu.ItemGroup\n : React.Fragment;\n const groupValues = types[\"checkbox\"]?.map(\n (item) => item.value\n );\n const hasSelectedItems = groupValues?.some((value) =>\n selectedItems.value.includes(value)\n );\n return (\n <MenuGroupContainer key={groupLabel}>\n {!isDefaultGroup && (\n <CMenu.ItemGroupLabel>\n <Flex\n alignItems=\"center\"\n justifyContent=\"space-between\"\n >\n {groupLabel}\n {canSelectGroups &&\n itemTypes.includes(\"checkbox\") && (\n <MenuToggleButtons\n groupName={groupLabel}\n onToggle={handleToggle}\n hasSelectedItems={hasSelectedItems}\n />\n )}\n </Flex>\n </CMenu.ItemGroupLabel>\n )}\n {Object.entries(types).map(([type, items]) =>\n items.map((item, index) => (\n <MenuItem\n key={`menu-item-${groupLabel}-${type}-${index}`}\n {...item}\n shouldTruncateText={shouldTruncateText}\n {...(item.type === \"checkbox\" && {\n checked: selectedItems.isChecked(item.value),\n })}\n onSelect={() => handleSelect(item)}\n />\n ))\n )}\n </MenuGroupContainer>\n );\n })}\n </>\n ) : (\n <>\n <Box textAlign=\"center\" p={3}>\n <Text size=\"sm\" variant=\"subtle\">\n {emptyStateText}\n </Text>\n </Box>\n </>\n )}\n </Box>\n ) : (\n <Flex justifyContent=\"center\" py={5}>\n <Spinner />\n </Flex>\n )}\n </CMenu.Content>\n </CMenu.Positioner>\n </Portal>\n </CMenu.Root>\n );\n};\n"],"names":["MenuProvider","useMenuContext","createContext","MenuArrow","forwardRef","props","ref","menu","mergedProps","mergeProps","jsx","ark","MenuArrowTip","MenuItemProvider","useMenuItemContext","MenuOptionItemPropsProvider","useMenuOptionItemPropsContext","MenuCheckboxItem","partialOptionItemProps","localProps","createSplitProps","optionItemProps","optionItemState","MenuContent","presence","usePresenceContext","composeRefs","MenuContextTrigger","MenuIndicator","MenuItem","itemProps","itemState","useEffect","MenuItemGroupProvider","useMenuItemGroupContext","MenuItemGroup","optionalItemGroupProps","itemGroupProps","useId","MenuItemGroupLabel","itemGroup","MenuItemIndicator","MenuItemText","MenuPositioner","MenuRadioItem","partialItemProps","MenuRadioItemGroup","useEffectOnce","cb","savedCallback","useRef","effectGuard","useMenu","id","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","menu.machine","menu.connect","normalizeProps","MenuMachineProvider","useMenuMachineContext","MenuTriggerItemProvider","useMenuTriggerItemContext","MenuRoot","presenceProps","menuProps","splitPresenceProps","useMenuProps","parentApi","parentMachine","api","usePresence","triggerItemContext","useCallback","PresenceProvider","MenuRootProvider","children","MenuSeparator","MenuTrigger","MenuTriggerItem","getTriggerItemProps","withRootProvider","withContext","createSlotRecipeContext","Menu.RootProvider","Menu.Root","Menu.Trigger","Menu.ContextTrigger","Menu.Positioner","Menu.Separator","Menu.Content","Menu.ArrowTip","Menu.Arrow","Menu.Indicator","Menu.ItemGroup","Menu.ItemGroupLabel","Menu.Item","Menu.TriggerItem","Menu.ItemText","Menu.ItemIndicator","CheckIcon","Menu.CheckboxItem","Menu.RadioItemGroup","Menu.RadioItem","MenuButton","hideCaret","size","text","textProps","variant","rest","jsxs","Button","Text","Flex","Icon","label","leftElement","onSelect","shouldTruncateText","type","handleOnSelect","valueText","listProps","Menu","CMenu.TriggerItem","MenuItemLabel","checked","value","closeOnSelect","checkboxRest","CMenu.CheckboxItem","Checkbox","selected","defaultRest","CMenu.Item","Fragment","MenuToggleButtons","groupName","hasSelectedItems","onToggle","isGrouped","Box","ClearAllButton","SelectAllButton","buttonProps","portalled","submenuTrigger","modalContentRef","useModalContentRef","canSelectAll","canSelectGroups","emptyStateText","loading","maxH","menuItems","minW","onSearch","onSelectAll","searchable","searchPlaceholder","restListProps","searchText","setSearchText","useState","filteredMenuItems","setFilteredMenuItems","groupedItems","useMemo","groups","item","group","checkboxItems","defaultSelectedItems","selectedItems","useCheckboxGroup","filterOptions","searchInput","itemsToFilter","handleSearch","e","clearSearch","handleToggle","clear","newValues","groupItems","handleSelect","currentSelection","isItemSelected","handleCleanup","open","CMenu.Root","details","CMenu.Trigger","Portal","CMenu.Positioner","CMenu.Content","TextInput","Spinner","groupLabel","types","isDefaultGroup","itemTypes","MenuGroupContainer","React","CMenu.ItemGroup","CMenu.ItemGroupLabel","items","index"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]}
|
|
1
|
+
{"version":3,"file":"menu.component-Bi2JPazM.js","sources":["../../node_modules/@ark-ui/react/dist/components/menu/use-menu-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-arrow-tip.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-option-item-props-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-checkbox-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-content.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-context-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-item-group-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-group-label.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-indicator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-item-text.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-positioner.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-radio-item-group.js","../../node_modules/@ark-ui/react/dist/utils/use-effect-once.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-machine-context.js","../../node_modules/@ark-ui/react/dist/components/menu/use-menu-trigger-item-context.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-root-provider.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-separator.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger.js","../../node_modules/@ark-ui/react/dist/components/menu/menu-trigger-item.js","../../node_modules/@chakra-ui/react/dist/esm/components/menu/menu.js","../../src/components/Menu/components/MenuButton/menuButton.components.tsx","../../src/components/Menu/components/MenuItem/menuItem.component.tsx","../../src/components/Menu/components/MenuToggleButtons/menuToggleButtons.tsx","../../src/components/Menu/menu.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuProvider, useMenuContext] = createContext({\n name: \"MenuContext\",\n hookName: \"useMenuContext\",\n providerName: \"<MenuProvider />\",\n strict: false\n});\n\nexport { MenuProvider, useMenuContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrow = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrow.displayName = \"MenuArrow\";\n\nexport { MenuArrow };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuArrowTip = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getArrowTipProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuArrowTip.displayName = \"MenuArrowTip\";\n\nexport { MenuArrowTip };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemProvider, useMenuItemContext] = createContext({\n name: \"MenuItemContext\",\n hookName: \"useMenuItemContext\",\n providerName: \"<MenuItemProvider />\"\n});\n\nexport { MenuItemProvider, useMenuItemContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuOptionItemPropsProvider, useMenuOptionItemPropsContext] = createContext({\n name: \"MenuOptionItemPropsContext\",\n hookName: \"useMenuOptionItemPropsContext\",\n providerName: \"<MenuOptionItemPropsProvider />\"\n});\n\nexport { MenuOptionItemPropsProvider, useMenuOptionItemPropsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { MenuOptionItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuCheckboxItem = forwardRef((props, ref) => {\n const [partialOptionItemProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"closeOnSelect\",\n \"disabled\",\n \"onCheckedChange\",\n \"value\",\n \"valueText\"\n ]);\n const optionItemProps = {\n ...partialOptionItemProps,\n type: \"checkbox\"\n };\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuOptionItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\";\n\nexport { MenuCheckboxItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContent = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(menu.getContentProps(), presence.getPresenceProps(), props);\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) });\n});\nMenuContent.displayName = \"MenuContent\";\n\nexport { MenuContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuContextTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getContextTriggerProps(), props);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuContextTrigger.displayName = \"MenuContextTrigger\";\n\nexport { MenuContextTrigger };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuIndicator.displayName = \"MenuIndicator\";\n\nexport { MenuIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useEffect } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\n\nconst MenuItem = forwardRef((props, ref) => {\n const [itemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\",\n \"onSelect\"\n ]);\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getItemProps(itemProps), localProps);\n const itemState = menu.getItemState(itemProps);\n useEffect(() => {\n return menu.addItemListener({ id: itemState.id, onSelect: itemProps.onSelect });\n }, [itemState.id, itemProps.onSelect]);\n return /* @__PURE__ */ jsx(MenuItemProvider, { value: itemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItem.displayName = \"MenuItem\";\n\nexport { MenuItem };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuItemGroupProvider, useMenuItemGroupContext] = createContext({\n name: \"MenuItemGroupContext\",\n hookName: \"useMenuItemGroupContext\",\n providerName: \"<MenuItemGroupProvider />\"\n});\n\nexport { MenuItemGroupProvider, useMenuItemGroupContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\"id\"]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps(itemGroupProps), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuItemGroup.displayName = \"MenuItemGroup\";\n\nexport { MenuItemGroup };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\n\nconst MenuItemGroupLabel = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const mergedProps = mergeProps(menu.getItemGroupLabelProps({ htmlFor: itemGroup.id }), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemGroupLabel.displayName = \"MenuItemGroupLabel\";\n\nexport { MenuItemGroupLabel };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuOptionItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemIndicator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const optionItemProps = useMenuOptionItemPropsContext();\n const mergedProps = mergeProps(menu.getItemIndicatorProps(optionItemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemIndicator.displayName = \"MenuItemIndicator\";\n\nexport { MenuItemIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { useMenuOptionItemPropsContext } from './use-menu-option-item-props-context.js';\n\nconst MenuItemText = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const optionItemProps = useMenuOptionItemPropsContext();\n const mergedProps = mergeProps(menu.getItemTextProps(optionItemProps), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuItemText.displayName = \"MenuItemText\";\n\nexport { MenuItemText };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuPositioner = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getPositionerProps(), props);\n const presence = usePresenceContext();\n if (presence.unmounted) {\n return null;\n }\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuPositioner.displayName = \"MenuPositioner\";\n\nexport { MenuPositioner };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemProvider } from './use-menu-item-context.js';\nimport { useMenuItemGroupContext } from './use-menu-item-group-context.js';\nimport { MenuOptionItemPropsProvider } from './use-menu-option-item-props-context.js';\n\nconst MenuRadioItem = forwardRef((props, ref) => {\n const [partialItemProps, localProps] = createSplitProps()(props, [\n \"closeOnSelect\",\n \"disabled\",\n \"value\",\n \"valueText\"\n ]);\n const menu = useMenuContext();\n const itemGroup = useMenuItemGroupContext();\n const optionItemProps = {\n ...partialItemProps,\n checked: itemGroup.value === partialItemProps.value,\n type: \"radio\",\n onCheckedChange: () => itemGroup.onValueChange?.({ value: partialItemProps.value })\n };\n const mergedProps = mergeProps(menu.getOptionItemProps(optionItemProps), localProps);\n const optionItemState = menu.getOptionItemState(optionItemProps);\n return /* @__PURE__ */ jsx(MenuOptionItemPropsProvider, { value: optionItemProps, children: /* @__PURE__ */ jsx(MenuItemProvider, { value: optionItemState, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nMenuRadioItem.displayName = \"MenuRadioItem\";\n\nexport { MenuRadioItem };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef, useId } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\nimport { MenuItemGroupProvider } from './use-menu-item-group-context.js';\n\nconst MenuRadioItemGroup = forwardRef((props, ref) => {\n const [optionalItemGroupProps, localProps] = createSplitProps()(props, [\n \"id\",\n \"onValueChange\",\n \"value\"\n ]);\n const menu = useMenuContext();\n const id = useId();\n const itemGroupProps = { id, ...optionalItemGroupProps };\n const mergedProps = mergeProps(menu.getItemGroupProps({ id: itemGroupProps.id }), localProps);\n return /* @__PURE__ */ jsx(MenuItemGroupProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });\n});\nMenuRadioItemGroup.displayName = \"MenuRadioItemGroup\";\n\nexport { MenuRadioItemGroup };\n","'use client';\nimport { useRef, useEffect } from 'react';\n\nconst useEffectOnce = (cb) => {\n const savedCallback = useRef(cb);\n const effectGuard = useRef(false);\n useEffect(() => {\n savedCallback.current = cb;\n });\n useEffect(() => {\n if (effectGuard.current !== true) {\n effectGuard.current = true;\n savedCallback.current();\n }\n }, []);\n};\n\nexport { useEffectOnce };\n","'use client';\nimport * as menu from '@zag-js/menu';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useMenu = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(menu.machine, machineProps);\n const api = menu.connect(service, normalizeProps);\n return { api, service };\n};\n\nexport { useMenu };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuMachineProvider, useMenuMachineContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuMachineProvider, useMenuMachineContext };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [MenuTriggerItemProvider, useMenuTriggerItemContext] = createContext({\n name: \"MenuMachineContext\",\n hookName: \"useMenuMachineContext\",\n providerName: \"<MenuMachineProvider />\",\n strict: false\n});\n\nexport { MenuTriggerItemProvider, useMenuTriggerItemContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenu } from './use-menu.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRoot = (props) => {\n const [presenceProps, menuProps] = splitPresenceProps(props);\n const [useMenuProps, localProps] = createSplitProps()(menuProps, [\n \"anchorPoint\",\n \"aria-label\",\n \"closeOnSelect\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onEscapeKeyDown\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"open\",\n \"positioning\",\n \"typeahead\"\n ]);\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const { api, service } = useMenu(useMenuProps);\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, ...localProps }) }) }) });\n};\n\nexport { MenuRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { useCallback } from 'react';\nimport { useEffectOnce } from '../../utils/use-effect-once.js';\nimport { splitPresenceProps } from '../presence/split-presence-props.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useMenuContext, MenuProvider } from './use-menu-context.js';\nimport { useMenuMachineContext, MenuMachineProvider } from './use-menu-machine-context.js';\nimport { MenuTriggerItemProvider } from './use-menu-trigger-item-context.js';\n\nconst MenuRootProvider = (props) => {\n const parentApi = useMenuContext();\n const parentMachine = useMenuMachineContext();\n const [presenceProps, { value: menu, children }] = splitPresenceProps(props);\n const { api, service } = menu;\n const presence = usePresence(mergeProps({ present: api.open }, presenceProps));\n useEffectOnce(() => {\n if (!parentMachine) return;\n if (!parentApi) return;\n parentApi.setChild(service);\n api.setParent(parentMachine);\n });\n const triggerItemContext = useCallback(() => parentApi?.getTriggerItemProps(api), [api, parentApi]);\n return /* @__PURE__ */ jsx(MenuTriggerItemProvider, { value: triggerItemContext, children: /* @__PURE__ */ jsx(MenuMachineProvider, { value: service, children: /* @__PURE__ */ jsx(MenuProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children }) }) }) });\n};\n\nexport { MenuRootProvider };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuSeparator = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const mergedProps = mergeProps(menu.getSeparatorProps(), props);\n return /* @__PURE__ */ jsx(ark.hr, { ...mergedProps, ref });\n});\nMenuSeparator.displayName = \"MenuSeparator\";\n\nexport { MenuSeparator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { usePresenceContext } from '../presence/use-presence-context.js';\nimport { useMenuContext } from './use-menu-context.js';\n\nconst MenuTrigger = forwardRef((props, ref) => {\n const menu = useMenuContext();\n const presence = usePresenceContext();\n const mergedProps = mergeProps(\n {\n ...menu.getTriggerProps(),\n \"aria-controls\": presence.unmounted ? void 0 : menu.getTriggerProps()[\"aria-controls\"]\n },\n props\n );\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nMenuTrigger.displayName = \"MenuTrigger\";\n\nexport { MenuTrigger };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useMenuTriggerItemContext } from './use-menu-trigger-item-context.js';\n\nconst MenuTriggerItem = forwardRef((props, ref) => {\n const getTriggerItemProps = useMenuTriggerItemContext();\n const mergedProps = mergeProps(getTriggerItemProps?.() ?? {}, props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nMenuTriggerItem.displayName = \"MenuTriggerItem\";\n\nexport { MenuTriggerItem };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Menu } from '@ark-ui/react/menu';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { CheckIcon } from '../icons.js';\n\nconst {\n withRootProvider,\n withContext,\n useStyles: useMenuStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"menu\" });\nconst MenuRootProvider = withRootProvider(\n Menu.RootProvider\n);\nconst MenuRoot = withRootProvider(Menu.Root, {\n defaultProps: { lazyMount: true, unmountOnExit: true }\n});\nconst MenuPropsProvider = PropsProvider;\nconst MenuTrigger = withContext(\n Menu.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst MenuContextTrigger = withContext(Menu.ContextTrigger, \"contextTrigger\", { forwardAsChild: true });\nconst MenuPositioner = withContext(\n Menu.Positioner,\n \"positioner\",\n { forwardAsChild: true }\n);\nconst MenuSeparator = withContext(\n Menu.Separator,\n \"separator\",\n { forwardAsChild: true }\n);\nconst MenuContent = withContext(\n Menu.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst MenuArrowTip = withContext(\n Menu.ArrowTip,\n \"arrowTip\",\n { forwardAsChild: true }\n);\nconst MenuArrow = withContext(\n Menu.Arrow,\n \"arrow\",\n { forwardAsChild: true, defaultProps: { children: /* @__PURE__ */ jsx(MenuArrowTip, {}) } }\n);\nconst MenuIndicator = withContext(\n Menu.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst MenuItemGroup = withContext(\n Menu.ItemGroup,\n \"itemGroup\",\n { forwardAsChild: true }\n);\nconst MenuItemGroupLabel = withContext(Menu.ItemGroupLabel, \"itemGroupLabel\", { forwardAsChild: true });\nconst MenuItem = withContext(\n Menu.Item,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuTriggerItem = withContext(Menu.TriggerItem, \"item\", { forwardAsChild: true });\nconst MenuItemText = withContext(\n Menu.ItemText,\n \"itemText\",\n { forwardAsChild: true }\n);\nconst MenuItemCommand = withContext(\n \"kbd\",\n \"itemCommand\"\n);\nconst MenuItemIndicator = withContext(Menu.ItemIndicator, \"itemIndicator\", {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(CheckIcon, { boxSize: \"4\" }) }\n});\nconst MenuCheckboxItem = withContext(Menu.CheckboxItem, \"item\", { forwardAsChild: true });\nconst MenuRadioItemGroup = withContext(Menu.RadioItemGroup, \"itemGroup\", { forwardAsChild: true });\nconst MenuRadioItem = withContext(\n Menu.RadioItem,\n \"item\",\n { forwardAsChild: true }\n);\nconst MenuContext = Menu.Context;\nconst MenuItemContext = Menu.ItemContext;\n\nexport { MenuArrow, MenuArrowTip, MenuCheckboxItem, MenuContent, MenuContext, MenuContextTrigger, MenuIndicator, MenuItem, MenuItemCommand, MenuItemContext, MenuItemGroup, MenuItemGroupLabel, MenuItemIndicator, MenuItemText, MenuPositioner, MenuPropsProvider, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuRootProvider, MenuSeparator, MenuTrigger, MenuTriggerItem, useMenuStyles };\n","import { Flex } from \"@chakra-ui/react/flex\";\nimport { Button, ButtonProps } from \"components/Button/button.component\";\nimport { Icon } from \"components/Icon/icon.component\";\nimport { Text, TextProps } from \"components/Text/text.component\";\nimport React from \"react\";\n\nexport interface MenuButtonProps extends Omit<ButtonProps, \"children\"> {\n hideCaret?: boolean;\n text?: string;\n textProps?: TextProps;\n}\n\nexport const MenuButton = ({\n hideCaret = false,\n size = \"md\",\n text,\n textProps,\n variant,\n ...rest\n}: MenuButtonProps): React.JSX.Element => {\n return (\n <Button\n className=\"Menu__Button\"\n data-testid=\"kibble-menu-button\"\n size={size}\n variant={variant}\n {...rest}\n >\n {text && (\n <Text\n className=\"Menu__ButtonText\"\n data-testid=\"kibble-menu-button-text\"\n fontWeight=\"semibold\"\n size={size}\n color={variant ? \"inherit\" : textProps?.color || \"text.contrast\"}\n truncate\n {...textProps}\n >\n {text}\n </Text>\n )}\n {!hideCaret && (\n <Flex\n className=\"Menu__ButtonCaret\"\n data-testid=\"kibble-menu-button-caret\"\n >\n <Icon name=\"chevronDown\" size={size === \"lg\" ? \"sm\" : \"xs\"} />\n </Flex>\n )}\n </Button>\n );\n};\n","import { Flex } from \"@chakra-ui/react/flex\";\nimport { Menu as CMenu } from \"@chakra-ui/react/menu\";\nimport React, { useCallback } from \"react\";\nimport { Text } from \"components/Text/text.component\";\nimport { MenuItemType } from \"./menuItem.types\";\nimport { Menu, MenuListProps } from \"components/Menu\";\nimport { TypographyVariant } from \"shared/types/typography\";\nimport { Checkbox } from \"components/Checkbox/checkbox.component\";\nimport { Icon } from \"components/Icon/icon.component\";\n\ninterface BaseMenuItemProps {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n groupLabel?: string;\n onSelect?: (value: string) => void;\n shouldTruncateText?: boolean;\n type?: MenuItemType;\n value: string;\n variant?: TypographyVariant;\n}\n\ninterface DefaultMenuItemProps extends Omit<CMenu.ItemProps, \"onSelect\"> {\n type?: \"default\";\n selected?: boolean;\n}\n\ninterface CheckboxMenuItemProps\n extends Omit<CMenu.CheckboxItemProps, \"onSelect\"> {\n type: \"checkbox\";\n checked: boolean;\n}\n\ninterface SubmenuMenuItemProps {\n type: \"submenu\";\n valueText?: string;\n listProps?: MenuListProps;\n}\n\nexport type MenuItemProps = BaseMenuItemProps &\n (DefaultMenuItemProps | CheckboxMenuItemProps | SubmenuMenuItemProps);\n\nexport const MenuItem = ({\n label,\n leftElement,\n onSelect,\n shouldTruncateText,\n type = \"default\",\n variant,\n ...rest\n}: MenuItemProps): React.JSX.Element => {\n const handleOnSelect = useCallback(() => {\n if (onSelect) {\n onSelect(rest.value);\n }\n }, [onSelect, rest.value]);\n\n if (type === \"submenu\") {\n const { valueText, listProps } = rest as Omit<SubmenuMenuItemProps, \"type\">;\n return (\n <Menu\n submenuTrigger={\n <CMenu.TriggerItem\n className=\"Menu__Item--Submenu\"\n data-testid=\"kibble-menu-item-submenu\"\n justifyContent=\"space-between\"\n aria-valuetext={valueText}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n <Icon name=\"chevronRight\" size=\"sm\" />\n </CMenu.TriggerItem>\n }\n portalled={true}\n listProps={listProps}\n />\n );\n }\n\n if (type === \"checkbox\") {\n const { checked, value, closeOnSelect, ...checkboxRest } =\n rest as CheckboxMenuItemProps;\n return (\n <CMenu.CheckboxItem\n className=\"Menu__Item--Checkbox\"\n data-testid=\"kibble-menu-item-checkbox\"\n value={value}\n checked={!!checked}\n onCheckedChange={handleOnSelect}\n closeOnSelect={closeOnSelect || false}\n gap={3}\n {...checkboxRest}\n >\n <Checkbox checked={!!checked} size=\"md\" />\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={variant}\n />\n </CMenu.CheckboxItem>\n );\n }\n\n if (type === \"default\") {\n const {\n selected = false,\n value,\n ...defaultRest\n } = rest as DefaultMenuItemProps;\n return (\n <CMenu.Item\n className=\"Menu__Item--Default\"\n data-testid=\"kibble-menu-item-default\"\n value={value}\n onSelect={handleOnSelect}\n {...(selected && { bgColor: \"background.secondaryAlpha.hover\" })}\n {...defaultRest}\n >\n <MenuItemLabel\n label={label}\n leftElement={leftElement}\n shouldTruncateText={shouldTruncateText}\n variant={selected ? \"info\" : variant}\n />\n </CMenu.Item>\n );\n }\n\n return <></>;\n};\n\nconst MenuItemLabel = ({\n label,\n leftElement,\n shouldTruncateText,\n variant,\n}: {\n label?: React.ReactNode;\n leftElement?: React.ReactNode;\n shouldTruncateText?: boolean;\n variant?: TypographyVariant;\n}): React.JSX.Element => {\n return (\n <Flex className=\"Menu__ItemLabel\" alignItems=\"center\" gap={3}>\n {leftElement}\n {typeof label === \"string\" ? (\n <Text size=\"sm\" truncated={shouldTruncateText} variant={variant}>\n {label}\n </Text>\n ) : (\n label\n )}\n </Flex>\n );\n};\n","import { Box } from \"@chakra-ui/react/box\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { Button } from \"components/Button/button.component\";\n\ninterface MenuToggleButtonsProps {\n hasSelectedItems?: boolean;\n groupName?: string;\n onToggle: ({\n groupName,\n clear,\n }: {\n clear: boolean;\n groupName?: string;\n }) => void;\n}\n\nexport const MenuToggleButtons = ({\n groupName,\n hasSelectedItems = false,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n const isGrouped = !!groupName;\n return (\n <Box\n className=\"Menu__ToggleButtons\"\n data-testid=\"kibble-menu-toggle-buttons\"\n {...(isGrouped ? { textAlign: \"right\", w: \"50%\" } : { mt: 2 })}\n >\n {isGrouped ? (\n <>\n {hasSelectedItems ? (\n <ClearAllButton\n hasSelectedItems={hasSelectedItems}\n groupName={groupName}\n onToggle={onToggle}\n />\n ) : (\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n )}\n </>\n ) : (\n <Flex justifyContent=\"space-between\">\n <SelectAllButton groupName={groupName} onToggle={onToggle} />\n <ClearAllButton\n hasSelectedItems={hasSelectedItems}\n groupName={groupName}\n onToggle={onToggle}\n />\n </Flex>\n )}\n </Box>\n );\n};\n\nconst SelectAllButton = ({\n groupName,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghost\"\n size=\"xs\"\n onClick={(): void => onToggle({ groupName, clear: false })}\n >\n Select All\n </Button>\n );\n};\n\nconst ClearAllButton = ({\n hasSelectedItems,\n groupName,\n onToggle,\n}: MenuToggleButtonsProps): React.JSX.Element => {\n return (\n <Button\n variant=\"ghostNeutral\"\n iconName=\"arrowCircle\"\n size=\"xs\"\n disabled={!hasSelectedItems}\n onClick={(): void => onToggle({ groupName, clear: true })}\n >\n Clear All\n </Button>\n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Menu as CMenu } from \"@chakra-ui/react/menu\";\nimport { Portal } from \"@chakra-ui/react/portal\";\nimport {\n MenuButton,\n MenuButtonProps,\n} from \"./components/MenuButton/menuButton.components\";\nimport {\n MenuItem,\n MenuItemProps,\n} from \"./components/MenuItem/menuItem.component\";\nimport { useCheckboxGroup } from \"@chakra-ui/react/checkbox\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Text } from \"components/Text/text.component\";\nimport { TextInput } from \"components/TextInput/textInput.component\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { Spinner } from \"components/Spinner/spinner.component\";\nimport { MenuToggleButtons } from \"./components/MenuToggleButtons/menuToggleButtons\";\nimport { useModalContentRef } from \"components/Modal/context/modal.context\";\n\nexport type MenuListOnSelect =\n | ((selectedItem: string | undefined, allSelectedItems?: string[]) => void)\n | ((\n selectedItem: string | undefined,\n allSelectedItems?: string[],\n ) => Promise<void>);\n\nexport type MenuListOnSelectAll =\n | ((selectedItems: string[]) => void)\n | ((selectedItems: string[]) => Promise<void>);\n\nexport interface MenuListProps extends Omit<CMenu.ContentProps, \"onSelect\"> {\n canSelectAll?: boolean;\n canSelectGroups?: boolean;\n emptyStateText?: string;\n loading?: boolean;\n menuItems?: MenuItemProps[];\n onSearch?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n onSelect?: MenuListOnSelect;\n onSelectAll?: MenuListOnSelectAll;\n searchable?: boolean;\n searchPlaceholder?: string;\n shouldTruncateText?: boolean;\n}\n\nexport interface MenuProps\n extends Omit<CMenu.RootProps, \"children\" | \"onSelect\"> {\n buttonProps?: MenuButtonProps;\n listProps?: MenuListProps;\n portalled?: boolean;\n}\n\ninterface InternalMenuProps extends MenuProps {\n submenuTrigger?: React.ReactNode;\n}\n\nexport const Menu = ({\n buttonProps,\n listProps,\n portalled = false,\n submenuTrigger,\n ...rest\n}: InternalMenuProps): React.JSX.Element => {\n const { contentRef: modalContentRef } = useModalContentRef();\n const {\n canSelectAll,\n canSelectGroups,\n emptyStateText = \"No results found\",\n loading,\n maxH = \"480px\",\n menuItems = [],\n minW = \"240px\",\n onSearch,\n onSelect,\n onSelectAll,\n searchable,\n searchPlaceholder = \"Search...\",\n shouldTruncateText,\n ...restListProps\n } = listProps || {};\n const [searchText, setSearchText] = useState<string>(\"\");\n const [filteredMenuItems, setFilteredMenuItems] =\n useState<MenuItemProps[]>(menuItems);\n\n // Menu Items\n const groupedItems = useMemo(() => {\n const groups: Record<string, Record<string, MenuItemProps[]>> = {};\n\n filteredMenuItems?.forEach((item) => {\n const group = item.groupLabel || \"default\";\n // Default and submenu items are grouped under \"default\"\n const type = item.type === \"checkbox\" ? \"checkbox\" : \"default\";\n\n if (!groups[group]) {\n groups[group] = {};\n }\n\n if (!groups[group][type]) {\n groups[group][type] = [];\n }\n\n groups[group][type].push(item);\n });\n\n return groups;\n }, [filteredMenuItems]);\n\n const groups = useMemo(() => Object.entries(groupedItems), [groupedItems]);\n\n // Checkbox State Management\n const checkboxItems = useMemo(\n () => menuItems?.filter((item) => item.type === \"checkbox\") || [],\n [menuItems],\n );\n\n const defaultSelectedItems = useMemo(() => {\n const selectedMenuItems =\n checkboxItems?.filter((item) => item.checked) || [];\n return selectedMenuItems.map((item) => item.value);\n }, [checkboxItems]);\n\n const selectedItems = useCheckboxGroup({\n defaultValue: defaultSelectedItems,\n });\n\n // Search\n const filterOptions = useCallback(\n (searchInput: string, itemsToFilter: MenuItemProps[]) => {\n if (searchInput === \"\" || !searchInput) {\n return itemsToFilter;\n }\n\n return itemsToFilter.filter((item): boolean => {\n const labelText =\n typeof item.label === \"string\" ? item.label : item.valueText;\n\n return !!labelText?.toLowerCase().includes(searchInput.toLowerCase());\n });\n },\n [],\n );\n\n useEffect(() => {\n if (onSearch) {\n setFilteredMenuItems(menuItems);\n } else {\n setFilteredMenuItems(filterOptions(searchText, menuItems));\n }\n }, [searchText, onSearch, filterOptions, menuItems]);\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const searchInput = e.target.value;\n setSearchText(searchInput);\n\n if (onSearch) {\n onSearch(e);\n }\n },\n [onSearch],\n );\n\n const clearSearch = useCallback(() => {\n setSearchText(\"\");\n\n if (onSearch) {\n onSearch({\n target: { value: \"\" },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n }, [onSearch]);\n\n // Selection\n const handleToggle = useCallback(\n ({ groupName, clear }: { groupName?: string; clear: boolean }) => {\n let newValues: string[] = [];\n if (groupName) {\n const groupItems = checkboxItems\n .filter((item) => item.groupLabel === groupName)\n .map((item) => item.value);\n newValues = clear\n ? selectedItems.value.filter((value) => !groupItems.includes(value))\n : [...selectedItems.value, ...groupItems];\n } else {\n newValues = clear ? [] : checkboxItems.map((item) => item.value);\n }\n onSelectAll?.(newValues);\n selectedItems.setValue(newValues);\n },\n [checkboxItems, onSelectAll, selectedItems],\n );\n\n const handleSelect = useCallback(\n (item: MenuItemProps) => {\n item.onSelect?.(item.value);\n const currentSelection = selectedItems.value;\n const isItemSelected = selectedItems.isChecked(item.value);\n onSelect?.(\n item.value,\n isItemSelected\n ? currentSelection.filter((value) => value !== item.value)\n : [...currentSelection, item.value],\n );\n if (item.type === \"checkbox\") {\n selectedItems.toggleValue(item.value);\n }\n },\n [onSelect, selectedItems],\n );\n\n // Cleanup\n const handleCleanup = useCallback(\n (open: boolean) => {\n if (!open) {\n setSearchText(\"\");\n setFilteredMenuItems(menuItems);\n }\n },\n [menuItems],\n );\n\n return (\n <CMenu.Root\n {...rest}\n onOpenChange={(details) => {\n handleCleanup(details.open);\n rest.onOpenChange?.(details);\n }}\n >\n {!submenuTrigger ? (\n <CMenu.Trigger\n asChild\n className=\"Menu__Trigger\"\n data-testid=\"kibble-menu-trigger\"\n >\n <MenuButton {...buttonProps} />\n </CMenu.Trigger>\n ) : (\n submenuTrigger\n )}\n <Portal disabled={!portalled} container={modalContentRef || undefined}>\n <CMenu.Positioner className=\"Menu\" data-testid=\"kibble-menu\">\n <CMenu.Content\n className=\"Menu__Content\"\n data-testid=\"kibble-menu-content\"\n maxH={maxH}\n minW={minW}\n {...restListProps}\n >\n {(searchable || canSelectAll) && (\n <Box\n className=\"Menu__Header\"\n data-testid=\"kibble-menu-header\"\n m=\"0 12px 8px\"\n >\n {searchable && (\n <TextInput\n className=\"Menu__SearchBar\"\n data-testid=\"kibble-menu-search-bar\"\n placeholder={searchPlaceholder}\n onChange={handleSearch}\n size=\"sm\"\n value={searchText}\n clearable\n onClear={clearSearch}\n formControlStyle={{ mt: 1 }}\n />\n )}\n {canSelectAll && !!checkboxItems.length && (\n <MenuToggleButtons\n onToggle={handleToggle}\n hasSelectedItems={!!selectedItems.value.length}\n />\n )}\n </Box>\n )}\n {!loading ? (\n <Box className=\"Menu__List\" data-testid=\"kibble-menu-list\">\n {groups.length ? (\n <>\n {groups.map(([groupLabel, types]) => {\n const isDefaultGroup = groupLabel === \"default\";\n const itemTypes = Object.keys(types);\n const MenuGroupContainer = !isDefaultGroup\n ? CMenu.ItemGroup\n : React.Fragment;\n const groupValues = types[\"checkbox\"]?.map(\n (item) => item.value,\n );\n const hasSelectedItems = groupValues?.some((value) =>\n selectedItems.value.includes(value),\n );\n return (\n <MenuGroupContainer key={groupLabel}>\n {!isDefaultGroup && (\n <CMenu.ItemGroupLabel>\n <Flex\n alignItems=\"center\"\n justifyContent=\"space-between\"\n >\n {groupLabel}\n {canSelectGroups &&\n itemTypes.includes(\"checkbox\") && (\n <MenuToggleButtons\n groupName={groupLabel}\n onToggle={handleToggle}\n hasSelectedItems={hasSelectedItems}\n />\n )}\n </Flex>\n </CMenu.ItemGroupLabel>\n )}\n {Object.entries(types).map(([type, items]) =>\n items.map((item, index) => (\n <MenuItem\n key={`menu-item-${groupLabel}-${type}-${index}`}\n {...item}\n shouldTruncateText={shouldTruncateText}\n {...(item.type === \"checkbox\" && {\n checked: selectedItems.isChecked(item.value),\n })}\n onSelect={() => handleSelect(item)}\n />\n )),\n )}\n </MenuGroupContainer>\n );\n })}\n </>\n ) : (\n <>\n <Box textAlign=\"center\" p={3}>\n <Text size=\"sm\" variant=\"subtle\">\n {emptyStateText}\n </Text>\n </Box>\n </>\n )}\n </Box>\n ) : (\n <Flex justifyContent=\"center\" py={5}>\n <Spinner />\n </Flex>\n )}\n </CMenu.Content>\n </CMenu.Positioner>\n </Portal>\n </CMenu.Root>\n );\n};\n"],"names":["MenuProvider","useMenuContext","createContext","MenuArrow","forwardRef","props","ref","menu","mergedProps","mergeProps","jsx","ark","MenuArrowTip","MenuItemProvider","useMenuItemContext","MenuOptionItemPropsProvider","useMenuOptionItemPropsContext","MenuCheckboxItem","partialOptionItemProps","localProps","createSplitProps","optionItemProps","optionItemState","MenuContent","presence","usePresenceContext","composeRefs","MenuContextTrigger","MenuIndicator","MenuItem","itemProps","itemState","useEffect","MenuItemGroupProvider","useMenuItemGroupContext","MenuItemGroup","optionalItemGroupProps","itemGroupProps","useId","MenuItemGroupLabel","itemGroup","MenuItemIndicator","MenuItemText","MenuPositioner","MenuRadioItem","partialItemProps","MenuRadioItemGroup","useEffectOnce","cb","savedCallback","useRef","effectGuard","useMenu","id","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","menu.machine","menu.connect","normalizeProps","MenuMachineProvider","useMenuMachineContext","MenuTriggerItemProvider","useMenuTriggerItemContext","MenuRoot","presenceProps","menuProps","splitPresenceProps","useMenuProps","parentApi","parentMachine","api","usePresence","triggerItemContext","useCallback","PresenceProvider","MenuRootProvider","children","MenuSeparator","MenuTrigger","MenuTriggerItem","getTriggerItemProps","withRootProvider","withContext","createSlotRecipeContext","Menu.RootProvider","Menu.Root","Menu.Trigger","Menu.ContextTrigger","Menu.Positioner","Menu.Separator","Menu.Content","Menu.ArrowTip","Menu.Arrow","Menu.Indicator","Menu.ItemGroup","Menu.ItemGroupLabel","Menu.Item","Menu.TriggerItem","Menu.ItemText","Menu.ItemIndicator","CheckIcon","Menu.CheckboxItem","Menu.RadioItemGroup","Menu.RadioItem","MenuButton","hideCaret","size","text","textProps","variant","rest","jsxs","Button","Text","Flex","Icon","label","leftElement","onSelect","shouldTruncateText","type","handleOnSelect","valueText","listProps","Menu","CMenu.TriggerItem","MenuItemLabel","checked","value","closeOnSelect","checkboxRest","CMenu.CheckboxItem","Checkbox","selected","defaultRest","CMenu.Item","Fragment","MenuToggleButtons","groupName","hasSelectedItems","onToggle","isGrouped","Box","ClearAllButton","SelectAllButton","buttonProps","portalled","submenuTrigger","modalContentRef","useModalContentRef","canSelectAll","canSelectGroups","emptyStateText","loading","maxH","menuItems","minW","onSearch","onSelectAll","searchable","searchPlaceholder","restListProps","searchText","setSearchText","useState","filteredMenuItems","setFilteredMenuItems","groupedItems","useMemo","groups","item","group","checkboxItems","defaultSelectedItems","selectedItems","useCheckboxGroup","filterOptions","searchInput","itemsToFilter","handleSearch","e","clearSearch","handleToggle","clear","newValues","groupItems","handleSelect","currentSelection","isItemSelected","handleCleanup","open","CMenu.Root","details","CMenu.Trigger","Portal","CMenu.Positioner","CMenu.Content","TextInput","Spinner","groupLabel","types","isDefaultGroup","itemTypes","MenuGroupContainer","React","CMenu.ItemGroup","CMenu.ItemGroupLabel","items","index"],"mappings":"4rBAGM,CAACA,EAAcC,CAAc,EAAIC,gBAAc,CACnD,KAAM,cACN,SAAU,iBACV,aAAc,mBACd,OAAQ,EACV,CAAC,ECDKC,EAAYC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC3C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,cAAa,EAAIF,CAAK,EAC1D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDH,EAAU,YAAc,YCLxB,MAAMS,EAAeR,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC9C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,iBAAgB,EAAIF,CAAK,EAC7D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDM,EAAa,YAAc,eCT3B,KAAM,CAACC,EAAkBC,EAAkB,EAAIZ,gBAAc,CAC3D,KAAM,kBACN,SAAU,qBACV,aAAc,sBAChB,CAAC,ECJK,CAACa,GAA6BC,EAA6B,EAAId,gBAAc,CACjF,KAAM,6BACN,SAAU,gCACV,aAAc,iCAChB,CAAC,ECGKe,GAAmBb,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAClD,KAAM,CAACY,EAAwBC,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACrE,UACA,gBACA,WACA,kBACA,QACA,WACJ,CAAG,EACKgB,EAAkB,CACtB,GAAGH,EACH,KAAM,UACP,EACKX,EAAON,EAAgB,EACvBO,EAAcC,EAAAA,WAAWF,EAAK,mBAAmBc,CAAe,EAAGF,CAAU,EAC7EG,EAAkBf,EAAK,mBAAmBc,CAAe,EAC/D,OAAuBX,EAAG,kBAAA,IAACK,GAA6B,CAAE,MAAOM,EAAiB,SAA0BX,EAAAA,kBAAAA,IAAIG,EAAkB,CAAE,MAAOS,EAAiB,SAA0BZ,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAG,CAAA,EAAG,CAClO,CAAC,EACDW,GAAiB,YAAc,mBCnB/B,MAAMM,GAAcnB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC7C,MAAMC,EAAON,EAAgB,EACvBuB,EAAWC,EAAAA,mBAAoB,EAC/BjB,EAAcC,EAAU,WAACF,EAAK,gBAAiB,EAAEiB,EAAS,iBAAkB,EAAEnB,CAAK,EACzF,OAAImB,EAAS,UACJ,KAEcd,wBAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAKkB,EAAAA,YAAYF,EAAS,IAAKlB,CAAG,CAAC,CAAE,CAC7F,CAAC,EACDiB,GAAY,YAAc,cCX1B,MAAMI,GAAqBvB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,uBAAsB,EAAIF,CAAK,EACnE,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,OAAQ,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAChE,CAAC,EACDqB,GAAmB,YAAc,qBCLjC,MAAMC,GAAgBxB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,kBAAiB,EAAIF,CAAK,EAC9D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDsB,GAAc,YAAc,gBCH5B,MAAMC,GAAWzB,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC1C,KAAM,CAACwB,EAAWX,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACxD,gBACA,WACA,QACA,YACA,UACJ,CAAG,EACKE,EAAON,EAAgB,EACvBO,EAAcC,EAAAA,WAAWF,EAAK,aAAauB,CAAS,EAAGX,CAAU,EACjEY,EAAYxB,EAAK,aAAauB,CAAS,EAC7CE,OAAAA,EAAAA,UAAU,IACDzB,EAAK,gBAAgB,CAAE,GAAIwB,EAAU,GAAI,SAAUD,EAAU,SAAU,EAC7E,CAACC,EAAU,GAAID,EAAU,QAAQ,CAAC,EACdpB,EAAG,kBAAA,IAACG,EAAkB,CAAE,MAAOkB,EAAW,SAA0BrB,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAC,CAAE,CACpI,CAAC,EACDuB,GAAS,YAAc,WCtBvB,KAAM,CAACI,GAAuBC,EAAuB,EAAIhC,gBAAc,CACrE,KAAM,uBACN,SAAU,0BACV,aAAc,2BAChB,CAAC,ECEKiC,GAAgB/B,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,KAAM,CAAC8B,EAAwBjB,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CAAC,IAAI,CAAC,EACvEE,EAAON,EAAgB,EAEvBoC,EAAiB,CAAE,GADdC,EAAAA,MAAO,EACW,GAAGF,CAAwB,EAClD5B,EAAcC,EAAAA,WAAWF,EAAK,kBAAkB8B,CAAc,EAAGlB,CAAU,EACjF,OAAuBT,EAAG,kBAAA,IAACuB,GAAuB,CAAE,MAAOI,EAAgB,SAA0B3B,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAC,CAAE,CAC9I,CAAC,EACD6B,GAAc,YAAc,gBCT5B,MAAMI,GAAqBnC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,MAAMC,EAAON,EAAgB,EACvBuC,EAAYN,GAAyB,EACrC1B,EAAcC,aAAWF,EAAK,uBAAuB,CAAE,QAASiC,EAAU,GAAI,EAAGnC,CAAK,EAC5F,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDiC,GAAmB,YAAc,qBCNjC,MAAME,GAAoBrC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACnD,MAAMC,EAAON,EAAgB,EACvBoB,EAAkBL,GAA+B,EACjDR,EAAcC,EAAAA,WAAWF,EAAK,sBAAsBc,CAAe,EAAGhB,CAAK,EACjF,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDmC,GAAkB,YAAc,oBCNhC,MAAMC,GAAetC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC9C,MAAMC,EAAON,EAAgB,EACvBoB,EAAkBL,GAA+B,EACjDR,EAAcC,EAAAA,WAAWF,EAAK,iBAAiBc,CAAe,EAAGhB,CAAK,EAC5E,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDoC,GAAa,YAAc,eCN3B,MAAMC,GAAiBvC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAChD,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,mBAAkB,EAAIF,CAAK,EAE/D,OADiBoB,EAAAA,mBAAoB,EACxB,UACJ,KAEcf,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACDqC,GAAe,YAAc,iBCN7B,MAAMC,GAAgBxC,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,KAAM,CAACuC,EAAkB1B,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CAC/D,gBACA,WACA,QACA,WACJ,CAAG,EACKE,EAAON,EAAgB,EACvBuC,EAAYN,GAAyB,EACrCb,EAAkB,CACtB,GAAGwB,EACH,QAASL,EAAU,QAAUK,EAAiB,MAC9C,KAAM,QACN,gBAAiB,IAAML,EAAU,gBAAgB,CAAE,MAAOK,EAAiB,KAAO,CAAA,CACnF,EACKrC,EAAcC,EAAAA,WAAWF,EAAK,mBAAmBc,CAAe,EAAGF,CAAU,EAC7EG,EAAkBf,EAAK,mBAAmBc,CAAe,EAC/D,OAAuBX,EAAG,kBAAA,IAACK,GAA6B,CAAE,MAAOM,EAAiB,SAA0BX,EAAAA,kBAAAA,IAAIG,EAAkB,CAAE,MAAOS,EAAiB,SAA0BZ,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAG,CAAA,EAAG,CAClO,CAAC,EACDsC,GAAc,YAAc,gBCrB5B,MAAME,GAAqB1C,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACpD,KAAM,CAAC8B,EAAwBjB,CAAU,EAAIC,EAAgB,iBAAA,EAAGf,EAAO,CACrE,KACA,gBACA,OACJ,CAAG,EACKE,EAAON,EAAgB,EAEvBoC,EAAiB,CAAE,GADdC,EAAAA,MAAO,EACW,GAAGF,CAAwB,EAClD5B,EAAcC,aAAWF,EAAK,kBAAkB,CAAE,GAAI8B,EAAe,GAAI,EAAGlB,CAAU,EAC5F,OAAuBT,EAAG,kBAAA,IAACuB,GAAuB,CAAE,MAAOI,EAAgB,SAA0B3B,EAAAA,kBAAAA,IAAIC,EAAG,IAAC,IAAK,CAAE,GAAGH,EAAa,IAAAF,CAAG,CAAE,CAAC,CAAE,CAC9I,CAAC,EACDwC,GAAmB,YAAc,qBClBjC,MAAMC,GAAiBC,GAAO,CAC5B,MAAMC,EAAgBC,EAAM,OAACF,CAAE,EACzBG,EAAcD,EAAM,OAAC,EAAK,EAChClB,EAAAA,UAAU,IAAM,CACdiB,EAAc,QAAUD,CAC5B,CAAG,EACDhB,EAAAA,UAAU,IAAM,CACVmB,EAAY,UAAY,KAC1BA,EAAY,QAAU,GACtBF,EAAc,QAAS,EAE1B,EAAE,EAAE,CACP,ECRMG,GAAW/C,GAAU,CACzB,MAAMgD,EAAKf,EAAAA,MAAO,EACZ,CAAE,YAAAgB,CAAa,EAAGC,wBAAuB,EACzC,CAAE,IAAAC,CAAK,EAAGC,mBAAkB,EAC5BC,EAAe,CACnB,GAAAL,EACA,IAAAG,EACA,YAAAF,EACA,GAAGjD,CACJ,EACKsD,EAAUC,EAAAA,WAAWC,EAAY,QAAEH,CAAY,EAErD,MAAO,CAAE,IADGI,EAAAA,QAAaH,EAASI,gBAAc,EAClC,QAAAJ,CAAS,CACzB,ECjBM,CAACK,GAAqBC,EAAqB,EAAI/D,gBAAc,CACjE,KAAM,qBACN,SAAU,wBACV,aAAc,0BACd,OAAQ,EACV,CAAC,ECLK,CAACgE,GAAyBC,EAAyB,EAAIjE,gBAAc,CACzE,KAAM,qBACN,SAAU,wBACV,aAAc,0BACd,OAAQ,EACV,CAAC,ECMKkE,GAAY/D,GAAU,CAC1B,KAAM,CAACgE,EAAeC,CAAS,EAAIC,EAAAA,mBAAmBlE,CAAK,EACrD,CAACmE,EAAcrD,CAAU,EAAIC,EAAgB,iBAAA,EAAGkD,EAAW,CAC/D,cACA,aACA,gBACA,YACA,0BACA,cACA,mBACA,KACA,MACA,YACA,WACA,kBACA,iBACA,oBACA,oBACA,eACA,uBACA,WACA,OACA,cACA,WACJ,CAAG,EACKG,EAAYxE,EAAgB,EAC5ByE,EAAgBT,GAAuB,EACvC,CAAE,IAAAU,EAAK,QAAAhB,GAAYP,GAAQoB,CAAY,EACvChD,EAAWoD,EAAW,YAACnE,aAAW,CAAE,QAASkE,EAAI,MAAQN,CAAa,CAAC,EAC7EtB,GAAc,IAAM,CACb2B,GACAD,IACLA,EAAU,SAASd,CAAO,EAC1BgB,EAAI,UAAUD,CAAa,EAC/B,CAAG,EACD,MAAMG,EAAqBC,cAAY,IAAML,GAAW,oBAAoBE,CAAG,EAAG,CAACA,EAAKF,CAAS,CAAC,EAClG,OAAuB/D,EAAG,kBAAA,IAACwD,GAAyB,CAAE,MAAOW,EAAoB,SAA0BnE,wBAAIsD,GAAqB,CAAE,MAAOL,EAAS,SAA0BjD,EAAAA,kBAAAA,IAAIV,EAAc,CAAE,MAAO2E,EAAK,SAA0BjE,EAAG,kBAAA,IAACqE,EAAgB,iBAAE,CAAE,MAAOvD,EAAU,GAAGL,CAAY,CAAA,EAAG,CAAC,CAAE,CAAC,CAAE,CAC7S,ECvCM6D,GAAoB3E,GAAU,CAClC,MAAMoE,EAAYxE,EAAgB,EAC5ByE,EAAgBT,GAAuB,EACvC,CAACI,EAAe,CAAE,MAAO9D,EAAM,SAAA0E,EAAU,EAAIV,EAAkB,mBAAClE,CAAK,EACrE,CAAE,IAAAsE,EAAK,QAAAhB,CAAO,EAAKpD,EACnBiB,EAAWoD,EAAW,YAACnE,aAAW,CAAE,QAASkE,EAAI,MAAQN,CAAa,CAAC,EAC7EtB,GAAc,IAAM,CACb2B,GACAD,IACLA,EAAU,SAASd,CAAO,EAC1BgB,EAAI,UAAUD,CAAa,EAC/B,CAAG,EACD,MAAMG,EAAqBC,cAAY,IAAML,GAAW,oBAAoBE,CAAG,EAAG,CAACA,EAAKF,CAAS,CAAC,EAClG,OAAuB/D,wBAAIwD,GAAyB,CAAE,MAAOW,EAAoB,SAA0BnE,EAAG,kBAAA,IAACsD,GAAqB,CAAE,MAAOL,EAAS,SAA0BjD,EAAG,kBAAA,IAACV,EAAc,CAAE,MAAO2E,EAAK,SAA0BjE,EAAAA,kBAAAA,IAAIqE,EAAAA,iBAAkB,CAAE,MAAOvD,EAAU,SAAAyD,CAAU,CAAA,EAAG,CAAC,CAAE,CAAC,CAAE,CACxS,ECnBMC,GAAgB9E,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC/C,MAAMC,EAAON,EAAgB,EACvBO,EAAcC,EAAU,WAACF,EAAK,kBAAiB,EAAIF,CAAK,EAC9D,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,GAAI,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC5D,CAAC,EACD4E,GAAc,YAAc,gBCJ5B,MAAMC,GAAc/E,EAAU,WAAC,CAACC,EAAOC,IAAQ,CAC7C,MAAMC,EAAON,EAAgB,EACvBuB,EAAWC,EAAAA,mBAAoB,EAC/BjB,EAAcC,EAAU,WAC5B,CACE,GAAGF,EAAK,gBAAiB,EACzB,gBAAiBiB,EAAS,UAAY,OAASjB,EAAK,gBAAe,EAAG,eAAe,CACtF,EACDF,CACD,EACD,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,OAAQ,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAChE,CAAC,EACD6E,GAAY,YAAc,cCb1B,MAAMC,GAAkBhF,EAAU,WAAC,CAACC,EAAOC,IAAQ,CACjD,MAAM+E,EAAsBlB,GAA2B,EACjD3D,EAAcC,EAAU,WAAC4E,IAAmB,GAAQ,CAAA,EAAIhF,CAAK,EACnE,OAAuBK,EAAAA,kBAAAA,IAAIC,EAAAA,IAAI,IAAK,CAAE,GAAGH,EAAa,IAAAF,EAAK,CAC7D,CAAC,EACD8E,GAAgB,YAAc,kBCL9B,KAAM,CACJ,iBAAAE,GACA,YAAAC,CAGF,EAAIC,GAAuB,wBAAC,CAAE,IAAK,MAAM,CAAE,EAClBF,GACvBG,EACF,EACA,MAAMrB,GAAWkB,GAAiBI,GAAW,CAC3C,aAAc,CAAE,UAAW,GAAM,cAAe,EAAI,CACtD,CAAC,EAEKP,GAAcI,EAClBI,GACA,UACA,CAAE,eAAgB,EAAI,CACxB,EAC2BJ,EAAYK,GAAqB,iBAAkB,CAAE,eAAgB,EAAM,CAAA,EACtG,MAAMjD,GAAiB4C,EACrBM,GACA,aACA,CAAE,eAAgB,EAAI,CACxB,EACsBN,EACpBO,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACA,MAAMvE,GAAcgE,EAClBQ,GACA,UACA,CAAE,eAAgB,EAAI,CACxB,EACMnF,GAAe2E,EACnBS,EACA,WACA,CAAE,eAAgB,EAAI,CACxB,EACkBT,EAChBU,EACA,QACA,CAAE,eAAgB,GAAM,aAAc,CAAE,SAA0BvF,wBAAIE,GAAc,CAAA,CAAE,CAAG,CAAA,CAC3F,EACsB2E,EACpBW,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACA,MAAM/D,GAAgBoD,EACpBY,GACA,YACA,CAAE,eAAgB,EAAI,CACxB,EACM5D,GAAqBgD,EAAYa,GAAqB,iBAAkB,CAAE,eAAgB,GAAM,EAChGvE,GAAW0D,EACfc,GACA,OACA,CAAE,eAAgB,EAAI,CACxB,EACMjB,GAAkBG,EAAYe,GAAkB,OAAQ,CAAE,eAAgB,GAAM,EACjEf,EACnBgB,GACA,WACA,CAAE,eAAgB,EAAI,CACxB,EACwBhB,EACtB,MACA,aACF,EAC0BA,EAAYiB,GAAoB,gBAAiB,CACzE,eAAgB,GAChB,aAAc,CAAE,SAA0B9F,EAAG,kBAAA,IAAC+F,GAAS,UAAE,CAAE,QAAS,IAAK,CAAC,CAC5E,CAAC,EACD,MAAMxF,GAAmBsE,EAAYmB,GAAmB,OAAQ,CAAE,eAAgB,GAAM,EAC7DnB,EAAYoB,GAAqB,YAAa,CAAE,eAAgB,EAAM,CAAA,EAC3EpB,EACpBqB,GACA,OACA,CAAE,eAAgB,EAAI,CACxB,EC3EO,MAAMC,GAAa,CAAC,CACzB,UAAAC,EAAY,GACZ,KAAAC,EAAO,KACP,KAAAC,EACA,UAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAEIC,EAAA,kBAAA,KAACC,EAAA,OAAA,CACC,UAAU,eACV,cAAY,qBACZ,KAAAN,EACA,QAAAG,EACC,GAAGC,EAEH,SAAA,CACCH,GAAAtG,EAAA,kBAAA,IAAC4G,EAAA,YAAA,CACC,UAAU,mBACV,cAAY,0BACZ,WAAW,WACX,KAAAP,EACA,MAAOG,EAAU,UAAYD,GAAW,OAAS,gBACjD,SAAQ,GACP,GAAGA,EAEH,SAAAD,CAAA,CACH,EAED,CAACF,GACApG,EAAA,kBAAA,IAAC6G,EAAA,KAAA,CACC,UAAU,oBACV,cAAY,2BAEZ,SAAA7G,EAAA,kBAAA,IAAC8G,QAAK,KAAK,cAAc,KAAMT,IAAS,KAAO,KAAO,IAAM,CAAA,CAAA,CAAA,CAC9D,CAAA,CAEJ,ECRSlF,GAAW,CAAC,CACvB,MAAA4F,EACA,YAAAC,EACA,SAAAC,EACA,mBAAAC,EACA,KAAAC,EAAO,UACP,QAAAX,EACA,GAAGC,CACL,IAAwC,CAChC,MAAAW,EAAiBhD,EAAAA,YAAY,IAAM,CACnC6C,GACFA,EAASR,EAAK,KAAK,CAEpB,EAAA,CAACQ,EAAUR,EAAK,KAAK,CAAC,EAEzB,GAAIU,IAAS,UAAW,CAChB,KAAA,CAAE,UAAAE,EAAW,UAAAC,CAAA,EAAcb,EAE/B,OAAAzG,EAAA,kBAAA,IAACuH,GAAA,CACC,eACEb,EAAA,kBAAA,KAACc,GAAA,CACC,UAAU,sBACV,cAAY,2BACZ,eAAe,gBACf,iBAAgBH,EAEhB,SAAA,CAAArH,EAAA,kBAAA,IAACyH,EAAA,CACC,MAAAV,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAV,CAAA,CACF,EACCxG,EAAA,kBAAA,IAAA8G,EAAA,KAAA,CAAK,KAAK,eAAe,KAAK,IAAK,CAAA,CAAA,CAAA,CACtC,EAEF,UAAW,GACX,UAAAQ,CAAA,CACF,CAAA,CAIJ,GAAIH,IAAS,WAAY,CACvB,KAAM,CAAE,QAAAO,EAAS,MAAAC,EAAO,cAAAC,EAAe,GAAGC,CACxC,EAAApB,EAEA,OAAAC,EAAA,kBAAA,KAACoB,GAAA,CACC,UAAU,uBACV,cAAY,4BACZ,MAAAH,EACA,QAAS,CAAC,CAACD,EACX,gBAAiBN,EACjB,cAAeQ,GAAiB,GAChC,IAAK,EACJ,GAAGC,EAEJ,SAAA,CAAA7H,EAAA,kBAAA,IAAC+H,mBAAS,QAAS,CAAC,CAACL,EAAS,KAAK,KAAK,EACxC1H,EAAA,kBAAA,IAACyH,EAAA,CACC,MAAAV,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAV,CAAA,CAAA,CACF,CAAA,CACF,CAAA,CAIJ,GAAIW,IAAS,UAAW,CAChB,KAAA,CACJ,SAAAa,EAAW,GACX,MAAAL,EACA,GAAGM,CAAA,EACDxB,EAEF,OAAAzG,EAAA,kBAAA,IAACkI,GAAA,CACC,UAAU,sBACV,cAAY,2BACZ,MAAAP,EACA,SAAUP,EACT,GAAIY,GAAY,CAAE,QAAS,iCAAkC,EAC7D,GAAGC,EAEJ,SAAAjI,EAAA,kBAAA,IAACyH,EAAA,CACC,MAAAV,EACA,YAAAC,EACA,mBAAAE,EACA,QAASc,EAAW,OAASxB,CAAA,CAAA,CAC/B,CACF,CAAA,CAIJ,OAASxG,EAAA,kBAAA,IAAAmI,EAAA,kBAAA,SAAA,EAAA,CACX,EAEMV,EAAgB,CAAC,CACrB,MAAAV,EACA,YAAAC,EACA,mBAAAE,EACA,QAAAV,CACF,6BAOKK,OAAK,CAAA,UAAU,kBAAkB,WAAW,SAAS,IAAK,EACxD,SAAA,CAAAG,EACA,OAAOD,GAAU,SACf/G,wBAAA4G,EAAAA,YAAA,CAAK,KAAK,KAAK,UAAWM,EAAoB,QAAAV,EAC5C,SAAAO,CACH,CAAA,EAEAA,CAAA,EAEJ,EC5ISqB,EAAoB,CAAC,CAChC,UAAAC,EACA,iBAAAC,EAAmB,GACnB,SAAAC,CACF,IAAiD,CACzC,MAAAC,EAAY,CAAC,CAACH,EAElB,OAAArI,EAAA,kBAAA,IAACyI,EAAA,IAAA,CACC,UAAU,sBACV,cAAY,6BACX,GAAID,EAAY,CAAE,UAAW,QAAS,EAAG,KAAM,EAAI,CAAE,GAAI,CAAE,EAE3D,SAAAA,wDAEI,SACCF,EAAAtI,EAAA,kBAAA,IAAC0I,EAAA,CACC,iBAAAJ,EACA,UAAAD,EACA,SAAAE,CAAA,CACF,EAECvI,EAAA,kBAAA,IAAA2I,EAAA,CAAgB,UAAAN,EAAsB,SAAAE,CAAA,CAAoB,EAE/D,EAEA7B,EAAAA,kBAAAA,KAACG,EAAAA,KAAK,CAAA,eAAe,gBACnB,SAAA,CAAC7G,EAAAA,kBAAAA,IAAA2I,EAAA,CAAgB,UAAAN,EAAsB,SAAAE,CAAoB,CAAA,EAC3DvI,EAAA,kBAAA,IAAC0I,EAAA,CACC,iBAAAJ,EACA,UAAAD,EACA,SAAAE,CAAA,CAAA,CACF,CACF,CAAA,CAAA,CAEJ,CAEJ,EAEMI,EAAkB,CAAC,CACvB,UAAAN,EACA,SAAAE,CACF,IAEIvI,EAAA,kBAAA,IAAC2G,EAAA,OAAA,CACC,QAAQ,QACR,KAAK,KACL,QAAS,IAAY4B,EAAS,CAAE,UAAAF,EAAW,MAAO,GAAO,EAC1D,SAAA,YAAA,CAED,EAIEK,EAAiB,CAAC,CACtB,iBAAAJ,EACA,UAAAD,EACA,SAAAE,CACF,IAEIvI,EAAA,kBAAA,IAAC2G,EAAA,OAAA,CACC,QAAQ,eACR,SAAS,cACT,KAAK,KACL,SAAU,CAAC2B,EACX,QAAS,IAAYC,EAAS,CAAE,UAAAF,EAAW,MAAO,GAAM,EACzD,SAAA,WAAA,CAED,EC3BSd,GAAO,CAAC,CACnB,YAAAqB,EACA,UAAAtB,EACA,UAAAuB,EAAY,GACZ,eAAAC,EACA,GAAGrC,CACL,IAA4C,CAC1C,KAAM,CAAE,WAAYsC,CAAgB,EAAIC,sBAAmB,EACrD,CACJ,aAAAC,EACA,gBAAAC,EACA,eAAAC,EAAiB,mBACjB,QAAAC,EACA,KAAAC,EAAO,QACP,UAAAC,EAAY,CAAC,EACb,KAAAC,GAAO,QACP,SAAAC,EACA,SAAAvC,EACA,YAAAwC,EACA,WAAAC,EACA,kBAAAC,GAAoB,YACpB,mBAAAzC,GACA,GAAG0C,EACL,EAAItC,GAAa,CAAC,EACZ,CAACuC,EAAYC,CAAa,EAAIC,EAAAA,SAAiB,EAAE,EACjD,CAACC,EAAmBC,CAAoB,EAC5CF,EAAAA,SAA0BT,CAAS,EAG/BY,EAAeC,EAAAA,QAAQ,IAAM,CACjC,MAAMC,EAA0D,CAAC,EAE9C,OAAAJ,GAAA,QAASK,GAAS,CAC7B,MAAAC,EAAQD,EAAK,YAAc,UAE3BlD,EAAOkD,EAAK,OAAS,WAAa,WAAa,UAEhDD,EAAOE,CAAK,IACfF,EAAOE,CAAK,EAAI,CAAC,GAGdF,EAAOE,CAAK,EAAEnD,CAAI,IACrBiD,EAAOE,CAAK,EAAEnD,CAAI,EAAI,CAAC,GAGzBiD,EAAOE,CAAK,EAAEnD,CAAI,EAAE,KAAKkD,CAAI,CAAA,CAC9B,EAEMD,CAAA,EACN,CAACJ,CAAiB,CAAC,EAEhBI,EAASD,UAAQ,IAAM,OAAO,QAAQD,CAAY,EAAG,CAACA,CAAY,CAAC,EAGnEK,EAAgBJ,EAAA,QACpB,IAAMb,GAAW,OAAQe,GAASA,EAAK,OAAS,UAAU,GAAK,CAAC,EAChE,CAACf,CAAS,CACZ,EAEMkB,GAAuBL,EAAAA,QAAQ,KAEjCI,GAAe,OAAQF,GAASA,EAAK,OAAO,GAAK,CAAC,GAC3B,IAAKA,GAASA,EAAK,KAAK,EAChD,CAACE,CAAa,CAAC,EAEZE,EAAgBC,EAAAA,iBAAiB,CACrC,aAAcF,EAAA,CACf,EAGKG,EAAgBvG,EAAA,YACpB,CAACwG,EAAqBC,IAChBD,IAAgB,IAAM,CAACA,EAClBC,EAGFA,EAAc,OAAQR,GAIpB,CAAC,EAFN,OAAOA,EAAK,OAAU,SAAWA,EAAK,MAAQA,EAAK,YAEjC,YAAA,EAAc,SAASO,EAAY,aAAa,CACrE,EAEH,CAAA,CACF,EAEAtJ,EAAAA,UAAU,IAAM,CAEZ2I,EADET,EACmBF,EAEAqB,EAAcd,EAAYP,CAAS,CAF1B,GAI/B,CAACO,EAAYL,EAAUmB,EAAerB,CAAS,CAAC,EAEnD,MAAMwB,GAAe1G,EAAA,YAClB2G,GAA2C,CACpC,MAAAH,EAAcG,EAAE,OAAO,MAC7BjB,EAAcc,CAAW,EAErBpB,GACFA,EAASuB,CAAC,CAEd,EACA,CAACvB,CAAQ,CACX,EAEMwB,GAAc5G,EAAAA,YAAY,IAAM,CACpC0F,EAAc,EAAE,EAEZN,GACOA,EAAA,CACP,OAAQ,CAAE,MAAO,EAAG,CAAA,CACkB,CAC1C,EACC,CAACA,CAAQ,CAAC,EAGPyB,EAAe7G,EAAA,YACnB,CAAC,CAAE,UAAAiE,EAAW,MAAA6C,KAAoD,CAChE,IAAIC,EAAsB,CAAC,EAC3B,GAAI9C,EAAW,CACb,MAAM+C,EAAab,EAChB,OAAQF,GAASA,EAAK,aAAehC,CAAS,EAC9C,IAAKgC,GAASA,EAAK,KAAK,EAC3Bc,EAAYD,EACRT,EAAc,MAAM,OAAQ9C,GAAU,CAACyD,EAAW,SAASzD,CAAK,CAAC,EACjE,CAAC,GAAG8C,EAAc,MAAO,GAAGW,CAAU,CAAA,MAE9BD,EAAAD,EAAQ,CAAA,EAAKX,EAAc,IAAKF,GAASA,EAAK,KAAK,EAEjEZ,IAAc0B,CAAS,EACvBV,EAAc,SAASU,CAAS,CAClC,EACA,CAACZ,EAAed,EAAagB,CAAa,CAC5C,EAEMY,GAAejH,EAAA,YAClBiG,GAAwB,CAClBA,EAAA,WAAWA,EAAK,KAAK,EAC1B,MAAMiB,EAAmBb,EAAc,MACjCc,EAAiBd,EAAc,UAAUJ,EAAK,KAAK,EACzDpD,IACEoD,EAAK,MACLkB,EACID,EAAiB,OAAQ3D,GAAUA,IAAU0C,EAAK,KAAK,EACvD,CAAC,GAAGiB,EAAkBjB,EAAK,KAAK,CACtC,EACIA,EAAK,OAAS,YACFI,EAAA,YAAYJ,EAAK,KAAK,CAExC,EACA,CAACpD,EAAUwD,CAAa,CAC1B,EAGMe,GAAgBpH,EAAA,YACnBqH,GAAkB,CACZA,IACH3B,EAAc,EAAE,EAChBG,EAAqBX,CAAS,EAElC,EACA,CAACA,CAAS,CACZ,EAGE,OAAA5C,EAAA,kBAAA,KAACgF,GAAA,CACE,GAAGjF,EACJ,aAAekF,GAAY,CACzBH,GAAcG,EAAQ,IAAI,EAC1BlF,EAAK,eAAekF,CAAO,CAC7B,EAEC,SAAA,CAAC7C,GACA9I,EAAA,kBAAA,IAAC4L,GAAA,CACC,QAAO,GACP,UAAU,gBACV,cAAY,sBAEZ,SAAA5L,EAAA,kBAAA,IAACmG,GAAY,CAAA,GAAGyC,CAAa,CAAA,CAAA,CAAA,EAKhC5I,EAAA,kBAAA,IAAA6L,EAAA,OAAA,CAAO,SAAU,CAAChD,EAAW,UAAWE,GAAmB,OAC1D,SAAA/I,EAAA,kBAAA,IAAC8L,GAAA,CAAiB,UAAU,OAAO,cAAY,cAC7C,SAAApF,EAAA,kBAAA,KAACqF,GAAA,CACC,UAAU,gBACV,cAAY,sBACZ,KAAA1C,EACA,KAAAE,GACC,GAAGK,GAEF,SAAA,EAAAF,GAAcT,IACdvC,EAAA,kBAAA,KAAC+B,EAAA,IAAA,CACC,UAAU,eACV,cAAY,qBACZ,EAAE,aAED,SAAA,CACCiB,GAAA1J,EAAA,kBAAA,IAACgM,GAAA,iBAAA,CACC,UAAU,kBACV,cAAY,yBACZ,YAAarC,GACb,SAAUmB,GACV,KAAK,KACL,MAAOjB,EACP,UAAS,GACT,QAASmB,GACT,iBAAkB,CAAE,GAAI,CAAE,CAAA,CAC5B,EAED/B,GAAgB,CAAC,CAACsB,EAAc,QAC/BvK,EAAA,kBAAA,IAACoI,EAAA,CACC,SAAU6C,EACV,iBAAkB,CAAC,CAACR,EAAc,MAAM,MAAA,CAAA,CAC1C,CAAA,CAEJ,EAEArB,EAgEApJ,EAAAA,kBAAAA,IAAC6G,EAAK,KAAA,CAAA,eAAe,SAAS,GAAI,EAChC,SAAA7G,wBAACiM,GAAAA,UAAQ,CACX,CAAA,EAjEAjM,EAAA,kBAAA,IAACyI,MAAI,CAAA,UAAU,aAAa,cAAY,mBACrC,SAAO2B,EAAA,6DAEH,SAAOA,EAAA,IAAI,CAAC,CAAC8B,EAAYC,CAAK,IAAM,CACnC,MAAMC,EAAiBF,IAAe,UAChCG,EAAY,OAAO,KAAKF,CAAK,EAC7BG,EAAsBF,EAExBG,GAAM,QAAA,SADNC,GAKElE,GAHc6D,EAAM,UAAa,IACpC9B,GAASA,EAAK,KACjB,GACsC,KAAM1C,GAC1C8C,EAAc,MAAM,SAAS9C,CAAK,CACpC,EACA,gCACG2E,EACE,CAAA,SAAA,CAAA,CAACF,GACApM,EAAA,kBAAA,IAACyM,GAAA,CACC,SAAA/F,EAAA,kBAAA,KAACG,EAAA,KAAA,CACC,WAAW,SACX,eAAe,gBAEd,SAAA,CAAAqF,EACAhD,GACCmD,EAAU,SAAS,UAAU,GAC3BrM,EAAA,kBAAA,IAACoI,EAAA,CACC,UAAW8D,EACX,SAAUjB,EACV,iBAAA3C,EAAA,CAAA,CACF,CAAA,CAAA,EAGR,EAED,OAAO,QAAQ6D,CAAK,EAAE,IAAI,CAAC,CAAChF,EAAMuF,EAAK,IACtCA,GAAM,IAAI,CAACrC,EAAMsC,KACf3M,EAAA,kBAAA,IAACmB,GAAA,CAEE,GAAGkJ,EACJ,mBAAAnD,GACC,GAAImD,EAAK,OAAS,YAAc,CAC/B,QAASI,EAAc,UAAUJ,EAAK,KAAK,CAC7C,EACA,SAAU,IAAMgB,GAAahB,CAAI,CAAA,EAN5B,aAAa6B,CAAU,IAAI/E,CAAI,IAAIwF,EAAK,EAQhD,CAAA,CAAA,CACH,CAAA,EA/BuBT,CAgCzB,CAAA,CAEH,CAAA,CACH,EAEAlM,wBAAAmI,EAAAA,kBAAAA,SAAA,CACE,SAACnI,EAAAA,kBAAAA,IAAAyI,EAAAA,IAAA,CAAI,UAAU,SAAS,EAAG,EACzB,SAACzI,EAAA,kBAAA,IAAA4G,cAAA,CAAK,KAAK,KAAK,QAAQ,SACrB,SACHuC,EAAA,CAAA,CACF,CACF,CAAA,CAEJ,CAAA,CAIA,CAAA,GAGN,CACF,CAAA,CAAA,CAAA,CACF,CAEJ","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]}
|