{"version":3,"sources":["jsdelivr-header.js","/npm/@zag-js/menu@1.33.0/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@zag-js/menu@1.33.0/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@zag-js/menu@1.33.0/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nvar anatomy$1 = require('@zag-js/anatomy');\nvar core = require('@zag-js/core');\nvar domQuery = require('@zag-js/dom-query');\nvar popper = require('@zag-js/popper');\nvar utils = require('@zag-js/utils');\nvar dismissable = require('@zag-js/dismissable');\nvar rectUtils = require('@zag-js/rect-utils');\nvar types = require('@zag-js/types');\n\n// src/menu.anatomy.ts\nvar anatomy = anatomy$1.createAnatomy(\"menu\").parts(\n  \"arrow\",\n  \"arrowTip\",\n  \"content\",\n  \"contextTrigger\",\n  \"indicator\",\n  \"item\",\n  \"itemGroup\",\n  \"itemGroupLabel\",\n  \"itemIndicator\",\n  \"itemText\",\n  \"positioner\",\n  \"separator\",\n  \"trigger\",\n  \"triggerItem\"\n);\nvar parts = anatomy.build();\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `menu:${ctx.id}:trigger`;\nvar getContextTriggerId = (ctx) => ctx.ids?.contextTrigger ?? `menu:${ctx.id}:ctx-trigger`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `menu:${ctx.id}:content`;\nvar getArrowId = (ctx) => ctx.ids?.arrow ?? `menu:${ctx.id}:arrow`;\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `menu:${ctx.id}:popper`;\nvar getGroupId = (ctx, id) => ctx.ids?.group?.(id) ?? `menu:${ctx.id}:group:${id}`;\nvar getItemId = (ctx, id) => `${ctx.id}/${id}`;\nvar getItemValue = (el) => el?.dataset.value ?? null;\nvar getGroupLabelId = (ctx, id) => ctx.ids?.groupLabel?.(id) ?? `menu:${ctx.id}:group-label:${id}`;\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getItemEl = (ctx, value) => value ? ctx.getById(getItemId(ctx, value)) : null;\nvar getContextTriggerEl = (ctx) => ctx.getById(getContextTriggerId(ctx));\nvar getElements = (ctx) => {\n  const ownerId = CSS.escape(getContentId(ctx));\n  const selector = `[role^=\"menuitem\"][data-ownedby=${ownerId}]:not([data-disabled])`;\n  return domQuery.queryAll(getContentEl(ctx), selector);\n};\nvar getFirstEl = (ctx) => utils.first(getElements(ctx));\nvar getLastEl = (ctx) => utils.last(getElements(ctx));\nvar isMatch = (el, value) => {\n  if (!value) return false;\n  return el.id === value || el.dataset.value === value;\n};\nvar getNextEl = (ctx, opts) => {\n  const items = getElements(ctx);\n  const index = items.findIndex((el) => isMatch(el, opts.value));\n  return utils.next(items, index, { loop: opts.loop ?? opts.loopFocus });\n};\nvar getPrevEl = (ctx, opts) => {\n  const items = getElements(ctx);\n  const index = items.findIndex((el) => isMatch(el, opts.value));\n  return utils.prev(items, index, { loop: opts.loop ?? opts.loopFocus });\n};\nvar getElemByKey = (ctx, opts) => {\n  const items = getElements(ctx);\n  const item = items.find((el) => isMatch(el, opts.value));\n  return domQuery.getByTypeahead(items, { state: opts.typeaheadState, key: opts.key, activeId: item?.id ?? null });\n};\nvar isTargetDisabled = (v) => {\n  return domQuery.isHTMLElement(v) && (v.dataset.disabled === \"\" || v.hasAttribute(\"disabled\"));\n};\nvar isTriggerItem = (el) => {\n  return !!el?.getAttribute(\"role\")?.startsWith(\"menuitem\") && !!el?.hasAttribute(\"data-controls\");\n};\nvar itemSelectEvent = \"menu:select\";\nfunction dispatchSelectionEvent(el, value) {\n  if (!el) return;\n  const win = domQuery.getWindow(el);\n  const event = new win.CustomEvent(itemSelectEvent, { detail: { value } });\n  el.dispatchEvent(event);\n}\n\n// src/menu.connect.ts\nfunction connect(service, normalize) {\n  const { context, send, state, computed, prop, scope } = service;\n  const open = state.hasTag(\"open\");\n  const isSubmenu = context.get(\"isSubmenu\");\n  const isTypingAhead = computed(\"isTypingAhead\");\n  const composite = prop(\"composite\");\n  const currentPlacement = context.get(\"currentPlacement\");\n  const anchorPoint = context.get(\"anchorPoint\");\n  const highlightedValue = context.get(\"highlightedValue\");\n  const popperStyles = popper.getPlacementStyles({\n    ...prop(\"positioning\"),\n    placement: anchorPoint ? \"bottom\" : currentPlacement\n  });\n  function getItemState(props2) {\n    return {\n      id: getItemId(scope, props2.value),\n      disabled: !!props2.disabled,\n      highlighted: highlightedValue === props2.value\n    };\n  }\n  function getOptionItemProps(props2) {\n    const valueText = props2.valueText ?? props2.value;\n    return { ...props2, id: props2.value, valueText };\n  }\n  function getOptionItemState(props2) {\n    const itemState = getItemState(getOptionItemProps(props2));\n    return {\n      ...itemState,\n      checked: !!props2.checked\n    };\n  }\n  function getItemProps(props2) {\n    const { closeOnSelect, valueText, value } = props2;\n    const itemState = getItemState(props2);\n    const id = getItemId(scope, value);\n    return normalize.element({\n      ...parts.item.attrs,\n      id,\n      role: \"menuitem\",\n      \"aria-disabled\": domQuery.ariaAttr(itemState.disabled),\n      \"data-disabled\": domQuery.dataAttr(itemState.disabled),\n      \"data-ownedby\": getContentId(scope),\n      \"data-highlighted\": domQuery.dataAttr(itemState.highlighted),\n      \"data-value\": value,\n      \"data-valuetext\": valueText,\n      onDragStart(event) {\n        const isLink = event.currentTarget.matches(\"a[href]\");\n        if (isLink) event.preventDefault();\n      },\n      onPointerMove(event) {\n        if (itemState.disabled) return;\n        if (event.pointerType !== \"mouse\") return;\n        const target = event.currentTarget;\n        if (itemState.highlighted) return;\n        send({ type: \"ITEM_POINTERMOVE\", id, target, closeOnSelect });\n      },\n      onPointerLeave(event) {\n        if (itemState.disabled) return;\n        if (event.pointerType !== \"mouse\") return;\n        const pointerMoved = service.event.previous()?.type.includes(\"POINTER\");\n        if (!pointerMoved) return;\n        const target = event.currentTarget;\n        send({ type: \"ITEM_POINTERLEAVE\", id, target, closeOnSelect });\n      },\n      onPointerDown(event) {\n        if (itemState.disabled) return;\n        const target = event.currentTarget;\n        send({ type: \"ITEM_POINTERDOWN\", target, id, closeOnSelect });\n      },\n      onClick(event) {\n        if (domQuery.isDownloadingEvent(event)) return;\n        if (domQuery.isOpeningInNewTab(event)) return;\n        if (itemState.disabled) return;\n        const target = event.currentTarget;\n        send({ type: \"ITEM_CLICK\", target, id, closeOnSelect });\n      }\n    });\n  }\n  return {\n    highlightedValue,\n    open,\n    setOpen(nextOpen) {\n      const open2 = state.hasTag(\"open\");\n      if (open2 === nextOpen) return;\n      send({ type: nextOpen ? \"OPEN\" : \"CLOSE\" });\n    },\n    setHighlightedValue(value) {\n      send({ type: \"HIGHLIGHTED.SET\", value });\n    },\n    setParent(parent) {\n      send({ type: \"PARENT.SET\", value: parent, id: parent.prop(\"id\") });\n    },\n    setChild(child) {\n      send({ type: \"CHILD.SET\", value: child, id: child.prop(\"id\") });\n    },\n    reposition(options = {}) {\n      send({ type: \"POSITIONING.SET\", options });\n    },\n    addItemListener(props2) {\n      const node = scope.getById(props2.id);\n      if (!node) return;\n      const listener = () => props2.onSelect?.();\n      node.addEventListener(itemSelectEvent, listener);\n      return () => node.removeEventListener(itemSelectEvent, listener);\n    },\n    getContextTriggerProps() {\n      return normalize.element({\n        ...parts.contextTrigger.attrs,\n        dir: prop(\"dir\"),\n        id: getContextTriggerId(scope),\n        \"data-state\": open ? \"open\" : \"closed\",\n        onPointerDown(event) {\n          if (event.pointerType === \"mouse\") return;\n          const point = domQuery.getEventPoint(event);\n          send({ type: \"CONTEXT_MENU_START\", point });\n        },\n        onPointerCancel(event) {\n          if (event.pointerType === \"mouse\") return;\n          send({ type: \"CONTEXT_MENU_CANCEL\" });\n        },\n        onPointerMove(event) {\n          if (event.pointerType === \"mouse\") return;\n          send({ type: \"CONTEXT_MENU_CANCEL\" });\n        },\n        onPointerUp(event) {\n          if (event.pointerType === \"mouse\") return;\n          send({ type: \"CONTEXT_MENU_CANCEL\" });\n        },\n        onContextMenu(event) {\n          const point = domQuery.getEventPoint(event);\n          send({ type: \"CONTEXT_MENU\", point });\n          event.preventDefault();\n        },\n        style: {\n          WebkitTouchCallout: \"none\",\n          WebkitUserSelect: \"none\",\n          userSelect: \"none\"\n        }\n      });\n    },\n    getTriggerItemProps(childApi) {\n      const triggerProps = childApi.getTriggerProps();\n      return core.mergeProps(getItemProps({ value: triggerProps.id }), triggerProps);\n    },\n    getTriggerProps() {\n      return normalize.button({\n        ...isSubmenu ? parts.triggerItem.attrs : parts.trigger.attrs,\n        \"data-placement\": context.get(\"currentPlacement\"),\n        type: \"button\",\n        dir: prop(\"dir\"),\n        id: getTriggerId(scope),\n        \"data-uid\": prop(\"id\"),\n        \"aria-haspopup\": composite ? \"menu\" : \"dialog\",\n        \"aria-controls\": getContentId(scope),\n        \"data-controls\": getContentId(scope),\n        \"aria-expanded\": open || void 0,\n        \"data-state\": open ? \"open\" : \"closed\",\n        onPointerMove(event) {\n          if (event.pointerType !== \"mouse\") return;\n          const disabled = isTargetDisabled(event.currentTarget);\n          if (disabled || !isSubmenu) return;\n          const point = domQuery.getEventPoint(event);\n          send({ type: \"TRIGGER_POINTERMOVE\", target: event.currentTarget, point });\n        },\n        onPointerLeave(event) {\n          if (isTargetDisabled(event.currentTarget)) return;\n          if (event.pointerType !== \"mouse\") return;\n          if (!isSubmenu) return;\n          const point = domQuery.getEventPoint(event);\n          send({\n            type: \"TRIGGER_POINTERLEAVE\",\n            target: event.currentTarget,\n            point\n          });\n        },\n        onPointerDown(event) {\n          if (isTargetDisabled(event.currentTarget)) return;\n          if (domQuery.isContextMenuEvent(event)) return;\n          event.preventDefault();\n        },\n        onClick(event) {\n          if (event.defaultPrevented) return;\n          if (isTargetDisabled(event.currentTarget)) return;\n          send({ type: \"TRIGGER_CLICK\", target: event.currentTarget });\n        },\n        onBlur() {\n          send({ type: \"TRIGGER_BLUR\" });\n        },\n        onFocus() {\n          send({ type: \"TRIGGER_FOCUS\" });\n        },\n        onKeyDown(event) {\n          if (event.defaultPrevented) return;\n          const keyMap = {\n            ArrowDown() {\n              send({ type: \"ARROW_DOWN\" });\n            },\n            ArrowUp() {\n              send({ type: \"ARROW_UP\" });\n            },\n            Enter() {\n              send({ type: \"ARROW_DOWN\", src: \"enter\" });\n            },\n            Space() {\n              send({ type: \"ARROW_DOWN\", src: \"space\" });\n            }\n          };\n          const key = domQuery.getEventKey(event, {\n            orientation: \"vertical\",\n            dir: prop(\"dir\")\n          });\n          const exec = keyMap[key];\n          if (exec) {\n            event.preventDefault();\n            exec(event);\n          }\n        }\n      });\n    },\n    getIndicatorProps() {\n      return normalize.element({\n        ...parts.indicator.attrs,\n        dir: prop(\"dir\"),\n        \"data-state\": open ? \"open\" : \"closed\"\n      });\n    },\n    getPositionerProps() {\n      return normalize.element({\n        ...parts.positioner.attrs,\n        dir: prop(\"dir\"),\n        id: getPositionerId(scope),\n        style: popperStyles.floating\n      });\n    },\n    getArrowProps() {\n      return normalize.element({\n        id: getArrowId(scope),\n        ...parts.arrow.attrs,\n        dir: prop(\"dir\"),\n        style: popperStyles.arrow\n      });\n    },\n    getArrowTipProps() {\n      return normalize.element({\n        ...parts.arrowTip.attrs,\n        dir: prop(\"dir\"),\n        style: popperStyles.arrowTip\n      });\n    },\n    getContentProps() {\n      return normalize.element({\n        ...parts.content.attrs,\n        id: getContentId(scope),\n        \"aria-label\": prop(\"aria-label\"),\n        hidden: !open,\n        \"data-state\": open ? \"open\" : \"closed\",\n        role: composite ? \"menu\" : \"dialog\",\n        tabIndex: 0,\n        dir: prop(\"dir\"),\n        \"aria-activedescendant\": computed(\"highlightedId\") || void 0,\n        \"aria-labelledby\": getTriggerId(scope),\n        \"data-placement\": currentPlacement,\n        onPointerEnter(event) {\n          if (event.pointerType !== \"mouse\") return;\n          send({ type: \"MENU_POINTERENTER\" });\n        },\n        onKeyDown(event) {\n          if (event.defaultPrevented) return;\n          if (!domQuery.contains(event.currentTarget, domQuery.getEventTarget(event))) return;\n          const target = domQuery.getEventTarget(event);\n          const sameMenu = target?.closest(\"[role=menu]\") === event.currentTarget || target === event.currentTarget;\n          if (!sameMenu) return;\n          if (event.key === \"Tab\") {\n            const valid = domQuery.isValidTabEvent(event);\n            if (!valid) {\n              event.preventDefault();\n              return;\n            }\n          }\n          const keyMap = {\n            ArrowDown() {\n              send({ type: \"ARROW_DOWN\" });\n            },\n            ArrowUp() {\n              send({ type: \"ARROW_UP\" });\n            },\n            ArrowLeft() {\n              send({ type: \"ARROW_LEFT\" });\n            },\n            ArrowRight() {\n              send({ type: \"ARROW_RIGHT\" });\n            },\n            Enter() {\n              send({ type: \"ENTER\" });\n            },\n            Space(event2) {\n              if (isTypingAhead) {\n                send({ type: \"TYPEAHEAD\", key: event2.key });\n              } else {\n                keyMap.Enter?.(event2);\n              }\n            },\n            Home() {\n              send({ type: \"HOME\" });\n            },\n            End() {\n              send({ type: \"END\" });\n            }\n          };\n          const key = domQuery.getEventKey(event, { dir: prop(\"dir\") });\n          const exec = keyMap[key];\n          if (exec) {\n            exec(event);\n            event.stopPropagation();\n            event.preventDefault();\n            return;\n          }\n          if (!prop(\"typeahead\")) return;\n          if (!domQuery.isPrintableKey(event)) return;\n          if (domQuery.isModifierKey(event)) return;\n          if (domQuery.isEditableElement(target)) return;\n          send({ type: \"TYPEAHEAD\", key: event.key });\n          event.preventDefault();\n        }\n      });\n    },\n    getSeparatorProps() {\n      return normalize.element({\n        ...parts.separator.attrs,\n        role: \"separator\",\n        dir: prop(\"dir\"),\n        \"aria-orientation\": \"horizontal\"\n      });\n    },\n    getItemState,\n    getItemProps,\n    getOptionItemState,\n    getOptionItemProps(props2) {\n      const { type, disabled, closeOnSelect } = props2;\n      const option = getOptionItemProps(props2);\n      const itemState = getOptionItemState(props2);\n      return {\n        ...getItemProps(option),\n        ...normalize.element({\n          \"data-type\": type,\n          ...parts.item.attrs,\n          dir: prop(\"dir\"),\n          \"data-value\": option.value,\n          role: `menuitem${type}`,\n          \"aria-checked\": !!itemState.checked,\n          \"data-state\": itemState.checked ? \"checked\" : \"unchecked\",\n          onClick(event) {\n            if (disabled) return;\n            if (domQuery.isDownloadingEvent(event)) return;\n            if (domQuery.isOpeningInNewTab(event)) return;\n            const target = event.currentTarget;\n            send({ type: \"ITEM_CLICK\", target, option, closeOnSelect });\n          }\n        })\n      };\n    },\n    getItemIndicatorProps(props2) {\n      const itemState = getOptionItemState(utils.cast(props2));\n      const dataState = itemState.checked ? \"checked\" : \"unchecked\";\n      return normalize.element({\n        ...parts.itemIndicator.attrs,\n        dir: prop(\"dir\"),\n        \"data-disabled\": domQuery.dataAttr(itemState.disabled),\n        \"data-highlighted\": domQuery.dataAttr(itemState.highlighted),\n        \"data-state\": utils.hasProp(props2, \"checked\") ? dataState : void 0,\n        hidden: utils.hasProp(props2, \"checked\") ? !itemState.checked : void 0\n      });\n    },\n    getItemTextProps(props2) {\n      const itemState = getOptionItemState(utils.cast(props2));\n      const dataState = itemState.checked ? \"checked\" : \"unchecked\";\n      return normalize.element({\n        ...parts.itemText.attrs,\n        dir: prop(\"dir\"),\n        \"data-disabled\": domQuery.dataAttr(itemState.disabled),\n        \"data-highlighted\": domQuery.dataAttr(itemState.highlighted),\n        \"data-state\": utils.hasProp(props2, \"checked\") ? dataState : void 0\n      });\n    },\n    getItemGroupLabelProps(props2) {\n      return normalize.element({\n        ...parts.itemGroupLabel.attrs,\n        id: getGroupLabelId(scope, props2.htmlFor),\n        dir: prop(\"dir\")\n      });\n    },\n    getItemGroupProps(props2) {\n      return normalize.element({\n        id: getGroupId(scope, props2.id),\n        ...parts.itemGroup.attrs,\n        dir: prop(\"dir\"),\n        \"aria-labelledby\": getGroupLabelId(scope, props2.id),\n        role: \"group\"\n      });\n    }\n  };\n}\nvar { not, and, or } = core.createGuards();\nvar machine = core.createMachine({\n  props({ props: props2 }) {\n    return {\n      closeOnSelect: true,\n      typeahead: true,\n      composite: true,\n      loopFocus: false,\n      navigate(details) {\n        domQuery.clickIfLink(details.node);\n      },\n      ...props2,\n      positioning: {\n        placement: \"bottom-start\",\n        gutter: 8,\n        ...props2.positioning\n      }\n    };\n  },\n  initialState({ prop }) {\n    const open = prop(\"open\") || prop(\"defaultOpen\");\n    return open ? \"open\" : \"idle\";\n  },\n  context({ bindable, prop }) {\n    return {\n      suspendPointer: bindable(() => ({\n        defaultValue: false\n      })),\n      highlightedValue: bindable(() => ({\n        defaultValue: prop(\"defaultHighlightedValue\") || null,\n        value: prop(\"highlightedValue\"),\n        onChange(value) {\n          prop(\"onHighlightChange\")?.({ highlightedValue: value });\n        }\n      })),\n      lastHighlightedValue: bindable(() => ({\n        defaultValue: null\n      })),\n      currentPlacement: bindable(() => ({\n        defaultValue: void 0\n      })),\n      intentPolygon: bindable(() => ({\n        defaultValue: null\n      })),\n      anchorPoint: bindable(() => ({\n        defaultValue: null,\n        hash(value) {\n          return `x: ${value?.x}, y: ${value?.y}`;\n        }\n      })),\n      isSubmenu: bindable(() => ({\n        defaultValue: false\n      }))\n    };\n  },\n  refs() {\n    return {\n      parent: null,\n      children: {},\n      typeaheadState: { ...domQuery.getByTypeahead.defaultOptions },\n      positioningOverride: {}\n    };\n  },\n  computed: {\n    isRtl: ({ prop }) => prop(\"dir\") === \"rtl\",\n    isTypingAhead: ({ refs }) => refs.get(\"typeaheadState\").keysSoFar !== \"\",\n    highlightedId: ({ context, scope, refs }) => resolveItemId(refs.get(\"children\"), context.get(\"highlightedValue\"), scope)\n  },\n  watch({ track, action, context, prop }) {\n    track([() => context.get(\"isSubmenu\")], () => {\n      action([\"setSubmenuPlacement\"]);\n    });\n    track([() => context.hash(\"anchorPoint\")], () => {\n      if (!context.get(\"anchorPoint\")) return;\n      action([\"reposition\"]);\n    });\n    track([() => prop(\"open\")], () => {\n      action([\"toggleVisibility\"]);\n    });\n  },\n  on: {\n    \"PARENT.SET\": {\n      actions: [\"setParentMenu\"]\n    },\n    \"CHILD.SET\": {\n      actions: [\"setChildMenu\"]\n    },\n    OPEN: [\n      {\n        guard: \"isOpenControlled\",\n        actions: [\"invokeOnOpen\"]\n      },\n      {\n        target: \"open\",\n        actions: [\"invokeOnOpen\"]\n      }\n    ],\n    OPEN_AUTOFOCUS: [\n      {\n        guard: \"isOpenControlled\",\n        actions: [\"invokeOnOpen\"]\n      },\n      {\n        // internal: true,\n        target: \"open\",\n        actions: [\"highlightFirstItem\", \"invokeOnOpen\"]\n      }\n    ],\n    CLOSE: [\n      {\n        guard: \"isOpenControlled\",\n        actions: [\"invokeOnClose\"]\n      },\n      {\n        target: \"closed\",\n        actions: [\"invokeOnClose\"]\n      }\n    ],\n    \"HIGHLIGHTED.RESTORE\": {\n      actions: [\"restoreHighlightedItem\"]\n    },\n    \"HIGHLIGHTED.SET\": {\n      actions: [\"setHighlightedItem\"]\n    }\n  },\n  states: {\n    idle: {\n      tags: [\"closed\"],\n      on: {\n        \"CONTROLLED.OPEN\": {\n          target: \"open\"\n        },\n        \"CONTROLLED.CLOSE\": {\n          target: \"closed\"\n        },\n        CONTEXT_MENU_START: {\n          target: \"opening:contextmenu\",\n          actions: [\"setAnchorPoint\"]\n        },\n        CONTEXT_MENU: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"setAnchorPoint\", \"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"setAnchorPoint\", \"invokeOnOpen\"]\n          }\n        ],\n        TRIGGER_CLICK: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"invokeOnOpen\"]\n          }\n        ],\n        TRIGGER_FOCUS: {\n          guard: not(\"isSubmenu\"),\n          target: \"closed\"\n        },\n        TRIGGER_POINTERMOVE: {\n          guard: \"isSubmenu\",\n          target: \"opening\"\n        }\n      }\n    },\n    \"opening:contextmenu\": {\n      tags: [\"closed\"],\n      effects: [\"waitForLongPress\"],\n      on: {\n        \"CONTROLLED.OPEN\": { target: \"open\" },\n        \"CONTROLLED.CLOSE\": { target: \"closed\" },\n        CONTEXT_MENU_CANCEL: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            target: \"closed\",\n            actions: [\"invokeOnClose\"]\n          }\n        ],\n        \"LONG_PRESS.OPEN\": [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"invokeOnOpen\"]\n          }\n        ]\n      }\n    },\n    opening: {\n      tags: [\"closed\"],\n      effects: [\"waitForOpenDelay\"],\n      on: {\n        \"CONTROLLED.OPEN\": {\n          target: \"open\"\n        },\n        \"CONTROLLED.CLOSE\": {\n          target: \"closed\"\n        },\n        BLUR: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            target: \"closed\",\n            actions: [\"invokeOnClose\"]\n          }\n        ],\n        TRIGGER_POINTERLEAVE: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            target: \"closed\",\n            actions: [\"invokeOnClose\"]\n          }\n        ],\n        \"DELAY.OPEN\": [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"invokeOnOpen\"]\n          }\n        ]\n      }\n    },\n    closing: {\n      tags: [\"open\"],\n      effects: [\"trackPointerMove\", \"trackInteractOutside\", \"waitForCloseDelay\"],\n      on: {\n        \"CONTROLLED.OPEN\": {\n          target: \"open\"\n        },\n        \"CONTROLLED.CLOSE\": {\n          target: \"closed\",\n          actions: [\"focusParentMenu\", \"restoreParentHighlightedItem\"]\n        },\n        // don't invoke on open here since the menu is still open (we're only keeping it open)\n        MENU_POINTERENTER: {\n          target: \"open\",\n          actions: [\"clearIntentPolygon\"]\n        },\n        POINTER_MOVED_AWAY_FROM_SUBMENU: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            target: \"closed\",\n            actions: [\"focusParentMenu\", \"restoreParentHighlightedItem\"]\n          }\n        ],\n        \"DELAY.CLOSE\": [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            target: \"closed\",\n            actions: [\"focusParentMenu\", \"restoreParentHighlightedItem\", \"invokeOnClose\"]\n          }\n        ]\n      }\n    },\n    closed: {\n      tags: [\"closed\"],\n      entry: [\"clearHighlightedItem\", \"focusTrigger\", \"resumePointer\", \"clearAnchorPoint\"],\n      on: {\n        \"CONTROLLED.OPEN\": [\n          {\n            guard: or(\"isOpenAutoFocusEvent\", \"isArrowDownEvent\"),\n            target: \"open\",\n            actions: [\"highlightFirstItem\"]\n          },\n          {\n            guard: \"isArrowUpEvent\",\n            target: \"open\",\n            actions: [\"highlightLastItem\"]\n          },\n          {\n            target: \"open\"\n          }\n        ],\n        CONTEXT_MENU_START: {\n          target: \"opening:contextmenu\",\n          actions: [\"setAnchorPoint\"]\n        },\n        CONTEXT_MENU: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"setAnchorPoint\", \"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"setAnchorPoint\", \"invokeOnOpen\"]\n          }\n        ],\n        TRIGGER_CLICK: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"invokeOnOpen\"]\n          }\n        ],\n        TRIGGER_POINTERMOVE: {\n          guard: \"isTriggerItem\",\n          target: \"opening\"\n        },\n        TRIGGER_BLUR: { target: \"idle\" },\n        ARROW_DOWN: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"highlightFirstItem\", \"invokeOnOpen\"]\n          }\n        ],\n        ARROW_UP: [\n          {\n            guard: \"isOpenControlled\",\n            actions: [\"invokeOnOpen\"]\n          },\n          {\n            target: \"open\",\n            actions: [\"highlightLastItem\", \"invokeOnOpen\"]\n          }\n        ]\n      }\n    },\n    open: {\n      tags: [\"open\"],\n      effects: [\"trackInteractOutside\", \"trackPositioning\", \"scrollToHighlightedItem\"],\n      entry: [\"focusMenu\", \"resumePointer\"],\n      on: {\n        \"CONTROLLED.CLOSE\": [\n          {\n            target: \"closed\",\n            guard: \"isArrowLeftEvent\",\n            actions: [\"focusParentMenu\"]\n          },\n          {\n            target: \"closed\"\n          }\n        ],\n        TRIGGER_CLICK: [\n          {\n            guard: and(not(\"isTriggerItem\"), \"isOpenControlled\"),\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            guard: not(\"isTriggerItem\"),\n            target: \"closed\",\n            actions: [\"invokeOnClose\"]\n          }\n        ],\n        CONTEXT_MENU: {\n          actions: [\"setAnchorPoint\", \"focusMenu\"]\n        },\n        ARROW_UP: {\n          actions: [\"highlightPrevItem\", \"focusMenu\"]\n        },\n        ARROW_DOWN: {\n          actions: [\"highlightNextItem\", \"focusMenu\"]\n        },\n        ARROW_LEFT: [\n          {\n            guard: and(\"isSubmenu\", \"isOpenControlled\"),\n            actions: [\"invokeOnClose\"]\n          },\n          {\n            guard: \"isSubmenu\",\n            target: \"closed\",\n            actions: [\"focusParentMenu\", \"invokeOnClose\"]\n          }\n        ],\n        HOME: {\n          actions: [\"highlightFirstItem\", \"focusMenu\"]\n        },\n        END: {\n          actions: [\"highlightLastItem\", \"focusMenu\"]\n        },\n        ARROW_RIGHT: {\n          guard: \"isTriggerItemHighlighted\",\n          actions: [\"openSubmenu\"]\n        },\n        ENTER: [\n          {\n            guard: \"isTriggerItemHighlighted\",\n            actions: [\"openSubmenu\"]\n          },\n          {\n            actions: [\"clickHighlightedItem\"]\n          }\n        ],\n        ITEM_POINTERMOVE: [\n          {\n            guard: not(\"isPointerSuspended\"),\n            actions: [\"setHighlightedItem\", \"focusMenu\"]\n          },\n          {\n            actions: [\"setLastHighlightedItem\"]\n          }\n        ],\n        ITEM_POINTERLEAVE: {\n          guard: and(not(\"isPointerSuspended\"), not(\"isTriggerItem\")),\n          actions: [\"clearHighlightedItem\"]\n        },\n        ITEM_CLICK: [\n          // == grouped ==\n          {\n            guard: and(\n              not(\"isTriggerItemHighlighted\"),\n              not(\"isHighlightedItemEditable\"),\n              \"closeOnSelect\",\n              \"isOpenControlled\"\n            ),\n            actions: [\"invokeOnSelect\", \"setOptionState\", \"closeRootMenu\", \"invokeOnClose\"]\n          },\n          {\n            guard: and(not(\"isTriggerItemHighlighted\"), not(\"isHighlightedItemEditable\"), \"closeOnSelect\"),\n            target: \"closed\",\n            actions: [\"invokeOnSelect\", \"setOptionState\", \"closeRootMenu\", \"invokeOnClose\"]\n          },\n          //\n          {\n            guard: and(not(\"isTriggerItemHighlighted\"), not(\"isHighlightedItemEditable\")),\n            actions: [\"invokeOnSelect\", \"setOptionState\"]\n          },\n          { actions: [\"setHighlightedItem\"] }\n        ],\n        TRIGGER_POINTERMOVE: {\n          guard: \"isTriggerItem\",\n          actions: [\"setIntentPolygon\"]\n        },\n        TRIGGER_POINTERLEAVE: {\n          target: \"closing\"\n        },\n        ITEM_POINTERDOWN: {\n          actions: [\"setHighlightedItem\"]\n        },\n        TYPEAHEAD: {\n          actions: [\"highlightMatchedItem\"]\n        },\n        FOCUS_MENU: {\n          actions: [\"focusMenu\"]\n        },\n        \"POSITIONING.SET\": {\n          actions: [\"reposition\"]\n        }\n      }\n    }\n  },\n  implementations: {\n    guards: {\n      closeOnSelect: ({ prop, event }) => !!(event?.closeOnSelect ?? prop(\"closeOnSelect\")),\n      // whether the trigger is also a menu item\n      isTriggerItem: ({ event }) => isTriggerItem(event.target),\n      // whether the trigger item is the active item\n      isTriggerItemHighlighted: ({ event, scope, computed }) => {\n        const target = event.target ?? scope.getById(computed(\"highlightedId\"));\n        return !!target?.hasAttribute(\"data-controls\");\n      },\n      isSubmenu: ({ context }) => context.get(\"isSubmenu\"),\n      isPointerSuspended: ({ context }) => context.get(\"suspendPointer\"),\n      isHighlightedItemEditable: ({ scope, computed }) => domQuery.isEditableElement(scope.getById(computed(\"highlightedId\"))),\n      // guard assertions (for controlled mode)\n      isOpenControlled: ({ prop }) => prop(\"open\") !== void 0,\n      isArrowLeftEvent: ({ event }) => event.previousEvent?.type === \"ARROW_LEFT\",\n      isArrowUpEvent: ({ event }) => event.previousEvent?.type === \"ARROW_UP\",\n      isArrowDownEvent: ({ event }) => event.previousEvent?.type === \"ARROW_DOWN\",\n      isOpenAutoFocusEvent: ({ event }) => event.previousEvent?.type === \"OPEN_AUTOFOCUS\"\n    },\n    effects: {\n      waitForOpenDelay({ send }) {\n        const timer = setTimeout(() => {\n          send({ type: \"DELAY.OPEN\" });\n        }, 100);\n        return () => clearTimeout(timer);\n      },\n      waitForCloseDelay({ send }) {\n        const timer = setTimeout(() => {\n          send({ type: \"DELAY.CLOSE\" });\n        }, 300);\n        return () => clearTimeout(timer);\n      },\n      waitForLongPress({ send }) {\n        const timer = setTimeout(() => {\n          send({ type: \"LONG_PRESS.OPEN\" });\n        }, 700);\n        return () => clearTimeout(timer);\n      },\n      trackPositioning({ context, prop, scope, refs }) {\n        if (!!getContextTriggerEl(scope)) return;\n        const positioning = {\n          ...prop(\"positioning\"),\n          ...refs.get(\"positioningOverride\")\n        };\n        context.set(\"currentPlacement\", positioning.placement);\n        const getPositionerEl2 = () => getPositionerEl(scope);\n        return popper.getPlacement(getTriggerEl(scope), getPositionerEl2, {\n          ...positioning,\n          defer: true,\n          onComplete(data) {\n            context.set(\"currentPlacement\", data.placement);\n          }\n        });\n      },\n      trackInteractOutside({ refs, scope, prop, context, send }) {\n        const getContentEl2 = () => getContentEl(scope);\n        let restoreFocus = true;\n        return dismissable.trackDismissableElement(getContentEl2, {\n          type: \"menu\",\n          defer: true,\n          exclude: [getTriggerEl(scope)],\n          onInteractOutside: prop(\"onInteractOutside\"),\n          onRequestDismiss: prop(\"onRequestDismiss\"),\n          onFocusOutside(event) {\n            prop(\"onFocusOutside\")?.(event);\n            const target = domQuery.getEventTarget(event.detail.originalEvent);\n            const isWithinContextTrigger = domQuery.contains(getContextTriggerEl(scope), target);\n            if (isWithinContextTrigger) {\n              event.preventDefault();\n              return;\n            }\n          },\n          onEscapeKeyDown(event) {\n            prop(\"onEscapeKeyDown\")?.(event);\n            if (context.get(\"isSubmenu\")) event.preventDefault();\n            closeRootMenu({ parent: refs.get(\"parent\") });\n          },\n          onPointerDownOutside(event) {\n            prop(\"onPointerDownOutside\")?.(event);\n            const target = domQuery.getEventTarget(event.detail.originalEvent);\n            const isWithinContextTrigger = domQuery.contains(getContextTriggerEl(scope), target);\n            if (isWithinContextTrigger && event.detail.contextmenu) {\n              event.preventDefault();\n              return;\n            }\n            restoreFocus = !event.detail.focusable;\n          },\n          onDismiss() {\n            send({ type: \"CLOSE\", src: \"interact-outside\", restoreFocus });\n          }\n        });\n      },\n      trackPointerMove({ context, scope, send, refs, flush }) {\n        const parent = refs.get(\"parent\");\n        flush(() => {\n          parent.context.set(\"suspendPointer\", true);\n        });\n        const doc = scope.getDoc();\n        return domQuery.addDomEvent(doc, \"pointermove\", (e) => {\n          const isMovingToSubmenu = isWithinPolygon(context.get(\"intentPolygon\"), {\n            x: e.clientX,\n            y: e.clientY\n          });\n          if (!isMovingToSubmenu) {\n            send({ type: \"POINTER_MOVED_AWAY_FROM_SUBMENU\" });\n            parent.context.set(\"suspendPointer\", false);\n          }\n        });\n      },\n      scrollToHighlightedItem({ event, scope, computed }) {\n        const exec = () => {\n          if (event.current().type.startsWith(\"ITEM_POINTER\")) return;\n          const itemEl = scope.getById(computed(\"highlightedId\"));\n          const contentEl2 = getContentEl(scope);\n          domQuery.scrollIntoView(itemEl, { rootEl: contentEl2, block: \"nearest\" });\n        };\n        domQuery.raf(() => exec());\n        const contentEl = () => getContentEl(scope);\n        return domQuery.observeAttributes(contentEl, {\n          defer: true,\n          attributes: [\"aria-activedescendant\"],\n          callback: exec\n        });\n      }\n    },\n    actions: {\n      setAnchorPoint({ context, event }) {\n        context.set(\"anchorPoint\", (prev2) => utils.isEqual(prev2, event.point) ? prev2 : event.point);\n      },\n      setSubmenuPlacement({ context, computed, refs }) {\n        if (!context.get(\"isSubmenu\")) return;\n        const placement = computed(\"isRtl\") ? \"left-start\" : \"right-start\";\n        refs.set(\"positioningOverride\", { placement, gutter: 0 });\n      },\n      reposition({ context, scope, prop, event, refs }) {\n        const getPositionerEl2 = () => getPositionerEl(scope);\n        const anchorPoint = context.get(\"anchorPoint\");\n        const getAnchorRect = anchorPoint ? () => ({ width: 0, height: 0, ...anchorPoint }) : void 0;\n        const positioning = {\n          ...prop(\"positioning\"),\n          ...refs.get(\"positioningOverride\")\n        };\n        popper.getPlacement(getTriggerEl(scope), getPositionerEl2, {\n          ...positioning,\n          defer: true,\n          getAnchorRect,\n          ...event.options ?? {},\n          listeners: false,\n          onComplete(data) {\n            context.set(\"currentPlacement\", data.placement);\n          }\n        });\n      },\n      setOptionState({ event }) {\n        if (!event.option) return;\n        const { checked, onCheckedChange, type } = event.option;\n        if (type === \"radio\") {\n          onCheckedChange?.(true);\n        } else if (type === \"checkbox\") {\n          onCheckedChange?.(!checked);\n        }\n      },\n      clickHighlightedItem({ scope, computed, prop, context }) {\n        const itemEl = scope.getById(computed(\"highlightedId\"));\n        if (!itemEl || itemEl.dataset.disabled) return;\n        const highlightedValue = context.get(\"highlightedValue\");\n        if (domQuery.isAnchorElement(itemEl)) {\n          prop(\"navigate\")?.({ value: highlightedValue, node: itemEl, href: itemEl.href });\n        } else {\n          queueMicrotask(() => itemEl.click());\n        }\n      },\n      setIntentPolygon({ context, scope, event }) {\n        const menu = getContentEl(scope);\n        const placement = context.get(\"currentPlacement\");\n        if (!menu || !placement) return;\n        const rect = menu.getBoundingClientRect();\n        const polygon = rectUtils.getElementPolygon(rect, placement);\n        if (!polygon) return;\n        const rightSide = popper.getPlacementSide(placement) === \"right\";\n        const bleed = rightSide ? -5 : 5;\n        context.set(\"intentPolygon\", [{ ...event.point, x: event.point.x + bleed }, ...polygon]);\n      },\n      clearIntentPolygon({ context }) {\n        context.set(\"intentPolygon\", null);\n      },\n      clearAnchorPoint({ context }) {\n        context.set(\"anchorPoint\", null);\n      },\n      resumePointer({ refs, flush }) {\n        const parent = refs.get(\"parent\");\n        if (!parent) return;\n        flush(() => {\n          parent.context.set(\"suspendPointer\", false);\n        });\n      },\n      setHighlightedItem({ context, event }) {\n        const value = event.value || getItemValue(event.target);\n        context.set(\"highlightedValue\", value);\n      },\n      clearHighlightedItem({ context }) {\n        context.set(\"highlightedValue\", null);\n      },\n      focusMenu({ scope }) {\n        domQuery.raf(() => {\n          const contentEl = getContentEl(scope);\n          const initialFocusEl = domQuery.getInitialFocus({\n            root: contentEl,\n            enabled: !domQuery.contains(contentEl, scope.getActiveElement()),\n            filter(node) {\n              return !node.role?.startsWith(\"menuitem\");\n            }\n          });\n          initialFocusEl?.focus({ preventScroll: true });\n        });\n      },\n      highlightFirstItem({ context, scope }) {\n        const fn = getContentEl(scope) ? queueMicrotask : domQuery.raf;\n        fn(() => {\n          const first2 = getFirstEl(scope);\n          if (!first2) return;\n          context.set(\"highlightedValue\", getItemValue(first2));\n        });\n      },\n      highlightLastItem({ context, scope }) {\n        const fn = getContentEl(scope) ? queueMicrotask : domQuery.raf;\n        fn(() => {\n          const last2 = getLastEl(scope);\n          if (!last2) return;\n          context.set(\"highlightedValue\", getItemValue(last2));\n        });\n      },\n      highlightNextItem({ context, scope, event, prop }) {\n        const next2 = getNextEl(scope, {\n          loop: event.loop,\n          value: context.get(\"highlightedValue\"),\n          loopFocus: prop(\"loopFocus\")\n        });\n        context.set(\"highlightedValue\", getItemValue(next2));\n      },\n      highlightPrevItem({ context, scope, event, prop }) {\n        const prev2 = getPrevEl(scope, {\n          loop: event.loop,\n          value: context.get(\"highlightedValue\"),\n          loopFocus: prop(\"loopFocus\")\n        });\n        context.set(\"highlightedValue\", getItemValue(prev2));\n      },\n      invokeOnSelect({ context, prop, scope }) {\n        const value = context.get(\"highlightedValue\");\n        if (value == null) return;\n        const node = getItemEl(scope, value);\n        dispatchSelectionEvent(node, value);\n        prop(\"onSelect\")?.({ value });\n      },\n      focusTrigger({ scope, context, event }) {\n        if (context.get(\"isSubmenu\") || context.get(\"anchorPoint\") || event.restoreFocus === false) return;\n        queueMicrotask(() => getTriggerEl(scope)?.focus({ preventScroll: true }));\n      },\n      highlightMatchedItem({ scope, context, event, refs }) {\n        const node = getElemByKey(scope, {\n          key: event.key,\n          value: context.get(\"highlightedValue\"),\n          typeaheadState: refs.get(\"typeaheadState\")\n        });\n        if (!node) return;\n        context.set(\"highlightedValue\", getItemValue(node));\n      },\n      setParentMenu({ refs, event, context }) {\n        refs.set(\"parent\", event.value);\n        context.set(\"isSubmenu\", true);\n      },\n      setChildMenu({ refs, event }) {\n        const children = refs.get(\"children\");\n        children[event.id] = event.value;\n        refs.set(\"children\", children);\n      },\n      closeRootMenu({ refs }) {\n        closeRootMenu({ parent: refs.get(\"parent\") });\n      },\n      openSubmenu({ refs, scope, computed }) {\n        const item = scope.getById(computed(\"highlightedId\"));\n        const id = item?.getAttribute(\"data-uid\");\n        const children = refs.get(\"children\");\n        const child = id ? children[id] : null;\n        child?.send({ type: \"OPEN_AUTOFOCUS\" });\n      },\n      focusParentMenu({ refs }) {\n        refs.get(\"parent\")?.send({ type: \"FOCUS_MENU\" });\n      },\n      setLastHighlightedItem({ context, event }) {\n        context.set(\"lastHighlightedValue\", getItemValue(event.target));\n      },\n      restoreHighlightedItem({ context }) {\n        if (!context.get(\"lastHighlightedValue\")) return;\n        context.set(\"highlightedValue\", context.get(\"lastHighlightedValue\"));\n        context.set(\"lastHighlightedValue\", null);\n      },\n      restoreParentHighlightedItem({ refs }) {\n        refs.get(\"parent\")?.send({ type: \"HIGHLIGHTED.RESTORE\" });\n      },\n      invokeOnOpen({ prop }) {\n        prop(\"onOpenChange\")?.({ open: true });\n      },\n      invokeOnClose({ prop }) {\n        prop(\"onOpenChange\")?.({ open: false });\n      },\n      toggleVisibility({ prop, event, send }) {\n        send({\n          type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\",\n          previousEvent: event\n        });\n      }\n    }\n  }\n});\nfunction closeRootMenu(ctx) {\n  let parent = ctx.parent;\n  while (parent && parent.context.get(\"isSubmenu\")) {\n    parent = parent.refs.get(\"parent\");\n  }\n  parent?.send({ type: \"CLOSE\" });\n}\nfunction isWithinPolygon(polygon, point) {\n  if (!polygon) return false;\n  return rectUtils.isPointInPolygon(polygon, point);\n}\nfunction resolveItemId(children, value, scope) {\n  const hasChildren = Object.keys(children).length > 0;\n  if (!value) return null;\n  if (!hasChildren) {\n    return getItemId(scope, value);\n  }\n  for (const id in children) {\n    const childMenu = children[id];\n    const childTriggerId = getTriggerId(childMenu.scope);\n    if (childTriggerId === value) {\n      return childTriggerId;\n    }\n  }\n  return getItemId(scope, value);\n}\nvar props = types.createProps()([\n  \"anchorPoint\",\n  \"aria-label\",\n  \"closeOnSelect\",\n  \"composite\",\n  \"defaultHighlightedValue\",\n  \"defaultOpen\",\n  \"dir\",\n  \"getRootNode\",\n  \"highlightedValue\",\n  \"id\",\n  \"ids\",\n  \"loopFocus\",\n  \"navigate\",\n  \"onEscapeKeyDown\",\n  \"onFocusOutside\",\n  \"onHighlightChange\",\n  \"onInteractOutside\",\n  \"onOpenChange\",\n  \"onPointerDownOutside\",\n  \"onRequestDismiss\",\n  \"onSelect\",\n  \"open\",\n  \"positioning\",\n  \"typeahead\"\n]);\nvar splitProps = utils.createSplitProps(props);\nvar itemProps = types.createProps()([\"closeOnSelect\", \"disabled\", \"value\", \"valueText\"]);\nvar splitItemProps = utils.createSplitProps(itemProps);\nvar itemGroupLabelProps = types.createProps()([\"htmlFor\"]);\nvar splitItemGroupLabelProps = utils.createSplitProps(itemGroupLabelProps);\nvar itemGroupProps = types.createProps()([\"id\"]);\nvar splitItemGroupProps = utils.createSplitProps(itemGroupProps);\nvar optionItemProps = types.createProps()([\n  \"checked\",\n  \"closeOnSelect\",\n  \"disabled\",\n  \"onCheckedChange\",\n  \"type\",\n  \"value\",\n  \"valueText\"\n]);\nvar splitOptionItemProps = utils.createSplitProps(optionItemProps);\n\nexports.anatomy = anatomy;\nexports.connect = connect;\nexports.itemGroupLabelProps = itemGroupLabelProps;\nexports.itemGroupProps = itemGroupProps;\nexports.itemProps = itemProps;\nexports.machine = machine;\nexports.optionItemProps = optionItemProps;\nexports.props = props;\nexports.splitItemGroupLabelProps = splitItemGroupLabelProps;\nexports.splitItemGroupProps = splitItemGroupProps;\nexports.splitItemProps = splitItemProps;\nexports.splitOptionItemProps = splitOptionItemProps;\nexports.splitProps = splitProps;\n"]}