{"version":3,"sources":["jsdelivr-header.js","/npm/@zag-js/tags-input@1.33.1/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@zag-js/tags-input@1.33.1/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@zag-js/tags-input@1.33.1/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 domQuery = require('@zag-js/dom-query');\nvar autoResize = require('@zag-js/auto-resize');\nvar core = require('@zag-js/core');\nvar interactOutside = require('@zag-js/interact-outside');\nvar liveRegion = require('@zag-js/live-region');\nvar utils = require('@zag-js/utils');\nvar types = require('@zag-js/types');\n\n// src/tags-input.anatomy.ts\nvar anatomy = anatomy$1.createAnatomy(\"tagsInput\").parts(\n  \"root\",\n  \"label\",\n  \"control\",\n  \"input\",\n  \"clearTrigger\",\n  \"item\",\n  \"itemPreview\",\n  \"itemInput\",\n  \"itemText\",\n  \"itemDeleteTrigger\"\n);\nvar parts = anatomy.build();\nvar getRootId = (ctx) => ctx.ids?.root ?? `tags-input:${ctx.id}`;\nvar getInputId = (ctx) => ctx.ids?.input ?? `tags-input:${ctx.id}:input`;\nvar getClearTriggerId = (ctx) => ctx.ids?.clearBtn ?? `tags-input:${ctx.id}:clear-btn`;\nvar getHiddenInputId = (ctx) => ctx.ids?.hiddenInput ?? `tags-input:${ctx.id}:hidden-input`;\nvar getLabelId = (ctx) => ctx.ids?.label ?? `tags-input:${ctx.id}:label`;\nvar getControlId = (ctx) => ctx.ids?.control ?? `tags-input:${ctx.id}:control`;\nvar getItemId = (ctx, opt) => ctx.ids?.item?.(opt) ?? `tags-input:${ctx.id}:tag:${opt.value}:${opt.index}`;\nvar getItemDeleteTriggerId = (ctx, opt) => ctx.ids?.itemDeleteTrigger?.(opt) ?? `${getItemId(ctx, opt)}:delete-btn`;\nvar getItemInputId = (ctx, opt) => ctx.ids?.itemInput?.(opt) ?? `${getItemId(ctx, opt)}:input`;\nvar getEditInputId = (id) => `${id}:input`;\nvar getEditInputEl = (ctx, id) => ctx.getById(getEditInputId(id));\nvar getItemEls = (ctx) => domQuery.queryAll(getRootEl(ctx), `[data-part=item]`);\nvar getTagInputEl = (ctx, opt) => ctx.getById(getItemInputId(ctx, opt));\nvar getRootEl = (ctx) => ctx.getById(getRootId(ctx));\nvar getInputEl = (ctx) => ctx.getById(getInputId(ctx));\nvar getHiddenInputEl = (ctx) => ctx.getById(getHiddenInputId(ctx));\nvar getTagElements = (ctx) => domQuery.queryAll(getRootEl(ctx), `[data-part=item-preview]:not([data-disabled])`);\nvar getFirstEl = (ctx) => getTagElements(ctx)[0];\nvar getLastEl = (ctx) => getTagElements(ctx)[getTagElements(ctx).length - 1];\nvar getPrevEl = (ctx, id) => domQuery.prevById(getTagElements(ctx), id, false);\nvar getNextEl = (ctx, id) => domQuery.nextById(getTagElements(ctx), id, false);\nvar getTagElAtIndex = (ctx, index) => getTagElements(ctx)[index];\nvar getIndexOfId = (ctx, id) => domQuery.indexOfId(getTagElements(ctx), id);\nvar setHoverIntent = (el) => {\n  const tagEl = el.closest(\"[data-part=item-preview]\");\n  if (!tagEl) return;\n  tagEl.dataset.deleteIntent = \"\";\n};\nvar clearHoverIntent = (el) => {\n  const tagEl = el.closest(\"[data-part=item-preview]\");\n  if (!tagEl) return;\n  delete tagEl.dataset.deleteIntent;\n};\nvar dispatchInputEvent = (ctx, value) => {\n  const inputEl = getHiddenInputEl(ctx);\n  if (!inputEl) return;\n  domQuery.dispatchInputValueEvent(inputEl, { value });\n};\n\n// src/tags-input.connect.ts\nfunction connect(service, normalize) {\n  const { state, send, computed, prop, scope, context } = service;\n  const interactive = computed(\"isInteractive\");\n  const disabled = !!prop(\"disabled\");\n  const readOnly = !!prop(\"readOnly\");\n  const required = !!prop(\"required\");\n  const invalid = prop(\"invalid\") || computed(\"isOverflowing\");\n  const translations = prop(\"translations\");\n  const focused = state.hasTag(\"focused\");\n  const editingTag = state.matches(\"editing:tag\");\n  const empty = computed(\"count\") === 0;\n  function getItemState(options) {\n    const id = getItemId(scope, options);\n    const editedTagId = context.get(\"editedTagId\");\n    const highlightedTagId = context.get(\"highlightedTagId\");\n    return {\n      id,\n      editing: editingTag && editedTagId === id,\n      highlighted: id === highlightedTagId,\n      disabled: Boolean(options.disabled || disabled)\n    };\n  }\n  return {\n    empty,\n    inputValue: computed(\"trimmedInputValue\"),\n    value: context.get(\"value\"),\n    valueAsString: computed(\"valueAsString\"),\n    count: computed(\"count\"),\n    atMax: computed(\"isAtMax\"),\n    setValue(value) {\n      send({ type: \"SET_VALUE\", value });\n    },\n    clearValue(id) {\n      if (id) {\n        send({ type: \"CLEAR_TAG\", id });\n      } else {\n        send({ type: \"CLEAR_VALUE\" });\n      }\n    },\n    addValue(value) {\n      send({ type: \"ADD_TAG\", value });\n    },\n    setValueAtIndex(index, value) {\n      send({ type: \"SET_VALUE_AT_INDEX\", index, value });\n    },\n    setInputValue(value) {\n      send({ type: \"SET_INPUT_VALUE\", value });\n    },\n    clearInputValue() {\n      send({ type: \"SET_INPUT_VALUE\", value: \"\" });\n    },\n    focus() {\n      getInputEl(scope)?.focus();\n    },\n    getItemState,\n    getRootProps() {\n      return normalize.element({\n        dir: prop(\"dir\"),\n        ...parts.root.attrs,\n        \"data-invalid\": domQuery.dataAttr(invalid),\n        \"data-readonly\": domQuery.dataAttr(readOnly),\n        \"data-disabled\": domQuery.dataAttr(disabled),\n        \"data-focus\": domQuery.dataAttr(focused),\n        \"data-empty\": domQuery.dataAttr(empty),\n        id: getRootId(scope),\n        onPointerDown() {\n          if (!interactive) return;\n          send({ type: \"POINTER_DOWN\" });\n        }\n      });\n    },\n    getLabelProps() {\n      return normalize.label({\n        ...parts.label.attrs,\n        \"data-disabled\": domQuery.dataAttr(disabled),\n        \"data-invalid\": domQuery.dataAttr(invalid),\n        \"data-readonly\": domQuery.dataAttr(readOnly),\n        \"data-required\": domQuery.dataAttr(required),\n        id: getLabelId(scope),\n        dir: prop(\"dir\"),\n        htmlFor: getInputId(scope)\n      });\n    },\n    getControlProps() {\n      return normalize.element({\n        id: getControlId(scope),\n        ...parts.control.attrs,\n        dir: prop(\"dir\"),\n        tabIndex: readOnly ? 0 : void 0,\n        \"data-disabled\": domQuery.dataAttr(disabled),\n        \"data-readonly\": domQuery.dataAttr(readOnly),\n        \"data-invalid\": domQuery.dataAttr(invalid),\n        \"data-focus\": domQuery.dataAttr(focused)\n      });\n    },\n    getInputProps() {\n      return normalize.input({\n        ...parts.input.attrs,\n        dir: prop(\"dir\"),\n        \"data-invalid\": domQuery.dataAttr(invalid),\n        \"aria-invalid\": domQuery.ariaAttr(invalid),\n        \"data-readonly\": domQuery.dataAttr(readOnly),\n        \"data-empty\": domQuery.dataAttr(empty),\n        maxLength: prop(\"maxLength\"),\n        id: getInputId(scope),\n        defaultValue: context.get(\"inputValue\"),\n        autoComplete: \"off\",\n        autoCorrect: \"off\",\n        autoCapitalize: \"none\",\n        disabled: disabled || readOnly,\n        placeholder: empty ? prop(\"placeholder\") : void 0,\n        onInput(event) {\n          const evt = domQuery.getNativeEvent(event);\n          const value = event.currentTarget.value;\n          if (evt.inputType === \"insertFromPaste\") {\n            send({ type: \"PASTE\", value });\n            return;\n          }\n          if (endsWith(value, prop(\"delimiter\"))) {\n            send({ type: \"DELIMITER_KEY\" });\n            return;\n          }\n          send({ type: \"TYPE\", value, key: evt.inputType });\n        },\n        onFocus() {\n          queueMicrotask(() => {\n            send({ type: \"FOCUS\" });\n          });\n        },\n        onKeyDown(event) {\n          if (event.defaultPrevented) return;\n          if (domQuery.isComposingEvent(event)) return;\n          const target = event.currentTarget;\n          const isCombobox = target.getAttribute(\"role\") === \"combobox\";\n          const isExpanded = target.ariaExpanded === \"true\";\n          const keyMap = {\n            ArrowDown() {\n              send({ type: \"ARROW_DOWN\" });\n            },\n            ArrowLeft() {\n              if (isCombobox && isExpanded) return;\n              send({ type: \"ARROW_LEFT\" });\n            },\n            ArrowRight(event2) {\n              if (context.get(\"highlightedTagId\")) {\n                event2.preventDefault();\n              }\n              if (isCombobox && isExpanded) return;\n              send({ type: \"ARROW_RIGHT\" });\n            },\n            Escape(event2) {\n              event2.preventDefault();\n              send({ type: \"ESCAPE\" });\n            },\n            Backspace() {\n              send({ type: \"BACKSPACE\" });\n            },\n            Delete() {\n              send({ type: \"DELETE\" });\n            },\n            Enter(event2) {\n              const hasHighlightedItem = target.getAttribute(\"aria-activedescendant\");\n              if (isCombobox && isExpanded && hasHighlightedItem) return;\n              send({ type: \"ENTER\" });\n              event2.preventDefault();\n            }\n          };\n          const key = domQuery.getEventKey(event, { dir: prop(\"dir\") });\n          const exec = keyMap[key];\n          if (exec) {\n            exec(event);\n            return;\n          }\n        }\n      });\n    },\n    getHiddenInputProps() {\n      return normalize.input({\n        type: \"text\",\n        hidden: true,\n        name: prop(\"name\"),\n        form: prop(\"form\"),\n        disabled,\n        readOnly,\n        required: prop(\"required\"),\n        id: getHiddenInputId(scope),\n        defaultValue: computed(\"valueAsString\")\n      });\n    },\n    getItemProps(props2) {\n      return normalize.element({\n        ...parts.item.attrs,\n        dir: prop(\"dir\"),\n        \"data-value\": props2.value,\n        \"data-disabled\": domQuery.dataAttr(disabled)\n      });\n    },\n    getItemPreviewProps(props2) {\n      const itemState = getItemState(props2);\n      return normalize.element({\n        ...parts.itemPreview.attrs,\n        id: itemState.id,\n        dir: prop(\"dir\"),\n        hidden: itemState.editing,\n        \"data-value\": props2.value,\n        \"data-disabled\": domQuery.dataAttr(disabled),\n        \"data-highlighted\": domQuery.dataAttr(itemState.highlighted),\n        onPointerDown(event) {\n          if (!interactive || itemState.disabled) return;\n          if (!domQuery.isLeftClick(event)) return;\n          event.preventDefault();\n          send({ type: \"POINTER_DOWN_TAG\", id: itemState.id });\n        },\n        onDoubleClick() {\n          if (!interactive || itemState.disabled) return;\n          send({ type: \"DOUBLE_CLICK_TAG\", id: itemState.id });\n        }\n      });\n    },\n    getItemTextProps(props2) {\n      const itemState = getItemState(props2);\n      return normalize.element({\n        ...parts.itemText.attrs,\n        dir: prop(\"dir\"),\n        \"data-disabled\": domQuery.dataAttr(disabled),\n        \"data-highlighted\": domQuery.dataAttr(itemState.highlighted)\n      });\n    },\n    getItemInputProps(props2) {\n      const itemState = getItemState(props2);\n      return normalize.input({\n        ...parts.itemInput.attrs,\n        dir: prop(\"dir\"),\n        \"aria-label\": translations?.tagEdited?.(props2.value),\n        disabled,\n        id: getItemInputId(scope, props2),\n        tabIndex: -1,\n        hidden: !itemState.editing,\n        maxLength: prop(\"maxLength\"),\n        defaultValue: itemState.editing ? context.get(\"editedTagValue\") : \"\",\n        onInput(event) {\n          send({ type: \"TAG_INPUT_TYPE\", value: event.currentTarget.value });\n        },\n        onBlur(event) {\n          queueMicrotask(() => {\n            send({ type: \"TAG_INPUT_BLUR\", target: event.relatedTarget, id: itemState.id });\n          });\n        },\n        onKeyDown(event) {\n          if (event.defaultPrevented) return;\n          if (domQuery.isComposingEvent(event)) return;\n          const keyMap = {\n            Enter() {\n              send({ type: \"TAG_INPUT_ENTER\" });\n            },\n            Escape() {\n              send({ type: \"TAG_INPUT_ESCAPE\" });\n            }\n          };\n          const exec = keyMap[event.key];\n          if (exec) {\n            event.preventDefault();\n            exec(event);\n          }\n        }\n      });\n    },\n    getItemDeleteTriggerProps(props2) {\n      const itemState = getItemState(props2);\n      return normalize.button({\n        ...parts.itemDeleteTrigger.attrs,\n        dir: prop(\"dir\"),\n        \"data-disabled\": domQuery.dataAttr(itemState.disabled),\n        \"aria-disabled\": itemState.disabled,\n        \"data-highlighted\": domQuery.dataAttr(itemState.highlighted),\n        id: getItemDeleteTriggerId(scope, props2),\n        type: \"button\",\n        disabled: itemState.disabled,\n        \"aria-label\": translations?.deleteTagTriggerLabel?.(props2.value),\n        tabIndex: -1,\n        onPointerDown(event) {\n          if (!domQuery.isLeftClick(event)) return;\n          if (!interactive) {\n            event.preventDefault();\n          }\n        },\n        onPointerMove(event) {\n          if (!interactive) return;\n          setHoverIntent(event.currentTarget);\n        },\n        onPointerLeave(event) {\n          if (!interactive) return;\n          clearHoverIntent(event.currentTarget);\n        },\n        onClick(event) {\n          if (event.defaultPrevented) return;\n          if (!interactive) return;\n          send({ type: \"CLICK_DELETE_TAG\", id: itemState.id });\n        }\n      });\n    },\n    getClearTriggerProps() {\n      return normalize.button({\n        ...parts.clearTrigger.attrs,\n        dir: prop(\"dir\"),\n        id: getClearTriggerId(scope),\n        type: \"button\",\n        \"data-readonly\": domQuery.dataAttr(readOnly),\n        disabled,\n        \"aria-label\": translations?.clearTriggerLabel,\n        hidden: empty,\n        onClick() {\n          if (!interactive) return;\n          send({ type: \"CLEAR_VALUE\" });\n        }\n      });\n    }\n  };\n}\nfunction endsWith(str, del) {\n  if (!del) return false;\n  if (typeof del === \"string\") return str.endsWith(del);\n  return new RegExp(`${del.source}$`).test(str);\n}\nvar { and, not, or } = core.createGuards();\nvar machine = core.createMachine({\n  props({ props: props2 }) {\n    return {\n      dir: \"ltr\",\n      addOnPaste: false,\n      editable: true,\n      validate: () => true,\n      delimiter: \",\",\n      defaultValue: [],\n      defaultInputValue: \"\",\n      max: Infinity,\n      ...props2,\n      translations: {\n        clearTriggerLabel: \"Clear all tags\",\n        deleteTagTriggerLabel: (value) => `Delete tag ${value}`,\n        tagAdded: (value) => `Added tag ${value}`,\n        tagsPasted: (values) => `Pasted ${values.length} tags`,\n        tagEdited: (value) => `Editing tag ${value}. Press enter to save or escape to cancel.`,\n        tagUpdated: (value) => `Tag update to ${value}`,\n        tagDeleted: (value) => `Tag ${value} deleted`,\n        tagSelected: (value) => `Tag ${value} selected. Press enter to edit, delete or backspace to remove.`,\n        ...props2.translations\n      }\n    };\n  },\n  initialState({ prop }) {\n    return prop(\"autoFocus\") ? \"focused:input\" : \"idle\";\n  },\n  refs() {\n    return {\n      liveRegion: null,\n      log: { current: null, prev: null }\n    };\n  },\n  context({ bindable, prop }) {\n    return {\n      value: bindable(() => ({\n        defaultValue: prop(\"defaultValue\"),\n        value: prop(\"value\"),\n        isEqual: utils.isEqual,\n        hash(value) {\n          return value.join(\", \");\n        },\n        onChange(value) {\n          prop(\"onValueChange\")?.({ value });\n        }\n      })),\n      inputValue: bindable(() => ({\n        sync: true,\n        defaultValue: prop(\"defaultInputValue\"),\n        value: prop(\"inputValue\"),\n        onChange(value) {\n          prop(\"onInputValueChange\")?.({ inputValue: value });\n        }\n      })),\n      fieldsetDisabled: bindable(() => ({ defaultValue: false })),\n      editedTagValue: bindable(() => ({ defaultValue: \"\" })),\n      editedTagId: bindable(() => ({ defaultValue: null })),\n      editedTagIndex: bindable(() => ({\n        defaultValue: null,\n        sync: true\n      })),\n      highlightedTagId: bindable(() => ({\n        defaultValue: null,\n        sync: true,\n        onChange(value) {\n          prop(\"onHighlightChange\")?.({ highlightedValue: value });\n        }\n      }))\n    };\n  },\n  computed: {\n    count: ({ context }) => context.get(\"value\").length,\n    valueAsString: ({ context }) => context.hash(\"value\"),\n    trimmedInputValue: ({ context }) => context.get(\"inputValue\").trim(),\n    isDisabled: ({ prop }) => !!prop(\"disabled\"),\n    isInteractive: ({ prop }) => !(prop(\"readOnly\") || !!prop(\"disabled\")),\n    isAtMax: ({ context, prop }) => context.get(\"value\").length === prop(\"max\"),\n    isOverflowing: ({ context, prop }) => context.get(\"value\").length > prop(\"max\")\n  },\n  watch({ track, context, action, computed, refs }) {\n    track([() => context.get(\"editedTagValue\")], () => {\n      action([\"syncEditedTagInputValue\"]);\n    });\n    track([() => context.get(\"inputValue\")], () => {\n      action([\"syncInputValue\"]);\n    });\n    track([() => context.get(\"highlightedTagId\")], () => {\n      action([\"logHighlightedTag\"]);\n    });\n    track([() => computed(\"isOverflowing\")], () => {\n      action([\"invokeOnInvalid\"]);\n    });\n    track([() => JSON.stringify(refs.get(\"log\"))], () => {\n      action([\"announceLog\"]);\n    });\n  },\n  effects: [\"trackLiveRegion\", \"trackFormControlState\"],\n  exit: [\"clearLog\"],\n  on: {\n    DOUBLE_CLICK_TAG: {\n      // internal: true,\n      guard: \"isTagEditable\",\n      target: \"editing:tag\",\n      actions: [\"setEditedId\"]\n    },\n    POINTER_DOWN_TAG: {\n      // internal: true,\n      target: \"navigating:tag\",\n      actions: [\"highlightTag\", \"focusInput\"]\n    },\n    CLICK_DELETE_TAG: {\n      target: \"focused:input\",\n      actions: [\"deleteTag\"]\n    },\n    SET_INPUT_VALUE: {\n      actions: [\"setInputValue\"]\n    },\n    SET_VALUE: {\n      actions: [\"setValue\"]\n    },\n    CLEAR_TAG: {\n      actions: [\"deleteTag\"]\n    },\n    SET_VALUE_AT_INDEX: {\n      actions: [\"setValueAtIndex\"]\n    },\n    CLEAR_VALUE: {\n      actions: [\"clearTags\", \"clearInputValue\", \"focusInput\"]\n    },\n    ADD_TAG: {\n      actions: [\"addTag\"]\n    },\n    INSERT_TAG: {\n      // (!isAtMax || allowOverflow) && !inputValueIsEmpty\n      guard: and(or(not(\"isAtMax\"), \"allowOverflow\"), not(\"isInputValueEmpty\")),\n      actions: [\"addTag\", \"clearInputValue\"]\n    },\n    EXTERNAL_BLUR: [\n      { guard: \"addOnBlur\", actions: [\"raiseInsertTagEvent\"] },\n      { guard: \"clearOnBlur\", actions: [\"clearInputValue\"] }\n    ]\n  },\n  states: {\n    idle: {\n      on: {\n        FOCUS: {\n          target: \"focused:input\"\n        },\n        POINTER_DOWN: {\n          guard: not(\"hasHighlightedTag\"),\n          target: \"focused:input\"\n        }\n      }\n    },\n    \"focused:input\": {\n      tags: [\"focused\"],\n      entry: [\"focusInput\", \"clearHighlightedId\"],\n      effects: [\"trackInteractOutside\"],\n      on: {\n        TYPE: {\n          actions: [\"setInputValue\"]\n        },\n        BLUR: [\n          {\n            guard: \"addOnBlur\",\n            target: \"idle\",\n            actions: [\"raiseInsertTagEvent\"]\n          },\n          {\n            guard: \"clearOnBlur\",\n            target: \"idle\",\n            actions: [\"clearInputValue\"]\n          },\n          { target: \"idle\" }\n        ],\n        ENTER: {\n          actions: [\"raiseInsertTagEvent\"]\n        },\n        DELIMITER_KEY: {\n          actions: [\"raiseInsertTagEvent\"]\n        },\n        ARROW_LEFT: {\n          guard: and(\"hasTags\", \"isCaretAtStart\"),\n          target: \"navigating:tag\",\n          actions: [\"highlightLastTag\"]\n        },\n        BACKSPACE: {\n          target: \"navigating:tag\",\n          guard: and(\"hasTags\", \"isCaretAtStart\"),\n          actions: [\"highlightLastTag\"]\n        },\n        DELETE: {\n          guard: \"hasHighlightedTag\",\n          actions: [\"deleteHighlightedTag\", \"highlightTagAtIndex\"]\n        },\n        PASTE: [\n          {\n            guard: \"addOnPaste\",\n            actions: [\"setInputValue\", \"addTagFromPaste\"]\n          },\n          {\n            actions: [\"setInputValue\"]\n          }\n        ]\n      }\n    },\n    \"navigating:tag\": {\n      tags: [\"focused\"],\n      effects: [\"trackInteractOutside\"],\n      on: {\n        ARROW_RIGHT: [\n          {\n            guard: and(\"hasTags\", \"isCaretAtStart\", not(\"isLastTagHighlighted\")),\n            actions: [\"highlightNextTag\"]\n          },\n          { target: \"focused:input\" }\n        ],\n        ARROW_LEFT: [\n          {\n            guard: not(\"isCaretAtStart\"),\n            target: \"focused:input\"\n          },\n          {\n            actions: [\"highlightPrevTag\"]\n          }\n        ],\n        BLUR: {\n          target: \"idle\",\n          actions: [\"clearHighlightedId\"]\n        },\n        ENTER: {\n          guard: and(\"isTagEditable\", \"hasHighlightedTag\"),\n          target: \"editing:tag\",\n          actions: [\"setEditedId\", \"focusEditedTagInput\"]\n        },\n        ARROW_DOWN: {\n          target: \"focused:input\"\n        },\n        ESCAPE: {\n          target: \"focused:input\"\n        },\n        TYPE: {\n          target: \"focused:input\",\n          actions: [\"setInputValue\"]\n        },\n        BACKSPACE: [\n          {\n            guard: not(\"isCaretAtStart\"),\n            target: \"focused:input\"\n          },\n          {\n            guard: \"isFirstTagHighlighted\",\n            actions: [\"deleteHighlightedTag\", \"highlightFirstTag\"]\n          },\n          {\n            guard: \"hasHighlightedTag\",\n            actions: [\"deleteHighlightedTag\", \"highlightPrevTag\"]\n          },\n          {\n            actions: [\"highlightLastTag\"]\n          }\n        ],\n        DELETE: [\n          {\n            guard: not(\"isCaretAtStart\"),\n            target: \"focused:input\"\n          },\n          {\n            target: \"focused:input\",\n            actions: [\"deleteHighlightedTag\", \"highlightTagAtIndex\"]\n          }\n        ],\n        PASTE: [\n          {\n            guard: \"addOnPaste\",\n            target: \"focused:input\",\n            actions: [\"setInputValue\", \"addTagFromPaste\"]\n          },\n          {\n            target: \"focused:input\",\n            actions: [\"setInputValue\"]\n          }\n        ]\n      }\n    },\n    \"editing:tag\": {\n      tags: [\"editing\", \"focused\"],\n      entry: [\"focusEditedTagInput\"],\n      effects: [\"autoResize\"],\n      on: {\n        TAG_INPUT_TYPE: {\n          actions: [\"setEditedTagValue\"]\n        },\n        TAG_INPUT_ESCAPE: {\n          target: \"navigating:tag\",\n          actions: [\"clearEditedTagValue\", \"focusInput\", \"clearEditedId\", \"highlightTagAtIndex\"]\n        },\n        TAG_INPUT_BLUR: [\n          {\n            guard: \"isInputRelatedTarget\",\n            target: \"navigating:tag\",\n            actions: [\"clearEditedTagValue\", \"clearHighlightedId\", \"clearEditedId\"]\n          },\n          {\n            target: \"idle\",\n            actions: [\"clearEditedTagValue\", \"clearHighlightedId\", \"clearEditedId\", \"raiseExternalBlurEvent\"]\n          }\n        ],\n        TAG_INPUT_ENTER: [\n          {\n            guard: \"isEditedTagEmpty\",\n            target: \"navigating:tag\",\n            actions: [\"deleteHighlightedTag\", \"focusInput\", \"clearEditedId\", \"highlightTagAtIndex\"]\n          },\n          {\n            target: \"navigating:tag\",\n            actions: [\"submitEditedTagValue\", \"focusInput\", \"clearEditedId\", \"highlightTagAtIndex\"]\n          }\n        ]\n      }\n    }\n  },\n  implementations: {\n    guards: {\n      isInputRelatedTarget: ({ scope, event }) => event.relatedTarget === getInputEl(scope),\n      isAtMax: ({ computed }) => computed(\"isAtMax\"),\n      hasHighlightedTag: ({ context }) => context.get(\"highlightedTagId\") != null,\n      isFirstTagHighlighted: ({ context, scope }) => {\n        const value = context.get(\"value\");\n        const firstItemId = getItemId(scope, { value: value[0], index: 0 });\n        return firstItemId === context.get(\"highlightedTagId\");\n      },\n      isEditedTagEmpty: ({ context }) => context.get(\"editedTagValue\").trim() === \"\",\n      isLastTagHighlighted: ({ context, scope }) => {\n        const value = context.get(\"value\");\n        const lastIndex = value.length - 1;\n        const lastItemId = getItemId(scope, { value: value[lastIndex], index: lastIndex });\n        return lastItemId === context.get(\"highlightedTagId\");\n      },\n      isInputValueEmpty: ({ context }) => context.get(\"inputValue\").trim().length === 0,\n      hasTags: ({ context }) => context.get(\"value\").length > 0,\n      allowOverflow: ({ prop }) => !!prop(\"allowOverflow\"),\n      autoFocus: ({ prop }) => !!prop(\"autoFocus\"),\n      addOnBlur: ({ prop }) => prop(\"blurBehavior\") === \"add\",\n      clearOnBlur: ({ prop }) => prop(\"blurBehavior\") === \"clear\",\n      addOnPaste: ({ prop }) => !!prop(\"addOnPaste\"),\n      isTagEditable: ({ prop }) => !!prop(\"editable\"),\n      isCaretAtStart: ({ scope }) => domQuery.isCaretAtStart(getInputEl(scope))\n    },\n    effects: {\n      trackInteractOutside({ scope, prop, send }) {\n        return interactOutside.trackInteractOutside(getInputEl(scope), {\n          exclude(target) {\n            const itemEls = getItemEls(scope);\n            return itemEls.some((el) => domQuery.contains(el, target));\n          },\n          onFocusOutside: prop(\"onFocusOutside\"),\n          onPointerDownOutside: prop(\"onPointerDownOutside\"),\n          onInteractOutside(event) {\n            prop(\"onInteractOutside\")?.(event);\n            if (event.defaultPrevented) return;\n            send({ type: \"BLUR\", src: \"interact-outside\" });\n          }\n        });\n      },\n      trackFormControlState({ context, send, scope }) {\n        return domQuery.trackFormControl(getHiddenInputEl(scope), {\n          onFieldsetDisabledChange(disabled) {\n            context.set(\"fieldsetDisabled\", disabled);\n          },\n          onFormReset() {\n            const value = context.initial(\"value\");\n            send({ type: \"SET_VALUE\", value, src: \"form-reset\" });\n          }\n        });\n      },\n      autoResize({ context, prop, scope }) {\n        let fn_cleanup;\n        queueMicrotask(() => {\n          const editedTagValue = context.get(\"editedTagValue\");\n          const editedTagIndex = context.get(\"editedTagIndex\");\n          if (!editedTagValue || editedTagIndex == null || !prop(\"editable\")) return;\n          const inputEl = getTagInputEl(scope, {\n            value: editedTagValue,\n            index: editedTagIndex\n          });\n          fn_cleanup = autoResize.autoResizeInput(inputEl);\n        });\n        return () => {\n          fn_cleanup?.();\n        };\n      },\n      trackLiveRegion({ scope, refs }) {\n        const liveRegion$1 = liveRegion.createLiveRegion({\n          level: \"assertive\",\n          document: scope.getDoc()\n        });\n        refs.set(\"liveRegion\", liveRegion$1);\n        return () => liveRegion$1.destroy();\n      }\n    },\n    actions: {\n      raiseInsertTagEvent({ send }) {\n        send({ type: \"INSERT_TAG\" });\n      },\n      raiseExternalBlurEvent({ send, event }) {\n        send({ type: \"EXTERNAL_BLUR\", id: event.id });\n      },\n      dispatchChangeEvent({ scope, computed }) {\n        dispatchInputEvent(scope, computed(\"valueAsString\"));\n      },\n      highlightNextTag({ context, scope }) {\n        const highlightedTagId = context.get(\"highlightedTagId\");\n        if (highlightedTagId == null) return;\n        const next = getNextEl(scope, highlightedTagId);\n        context.set(\"highlightedTagId\", next?.id ?? null);\n      },\n      highlightFirstTag({ context, scope }) {\n        domQuery.raf(() => {\n          const first = getFirstEl(scope);\n          context.set(\"highlightedTagId\", first?.id ?? null);\n        });\n      },\n      highlightLastTag({ context, scope }) {\n        const last = getLastEl(scope);\n        context.set(\"highlightedTagId\", last?.id ?? null);\n      },\n      highlightPrevTag({ context, scope }) {\n        const highlightedTagId = context.get(\"highlightedTagId\");\n        if (highlightedTagId == null) return;\n        const prev = getPrevEl(scope, highlightedTagId);\n        context.set(\"highlightedTagId\", prev?.id ?? null);\n      },\n      highlightTag({ context, event }) {\n        context.set(\"highlightedTagId\", event.id);\n      },\n      highlightTagAtIndex({ context, scope }) {\n        domQuery.raf(() => {\n          const idx = context.get(\"editedTagIndex\");\n          if (idx == null) return;\n          const tagEl = getTagElAtIndex(scope, idx);\n          if (tagEl == null) return;\n          context.set(\"highlightedTagId\", tagEl.id);\n          context.set(\"editedTagIndex\", null);\n        });\n      },\n      deleteTag({ context, scope, event, refs }) {\n        const index = getIndexOfId(scope, event.id);\n        const value = context.get(\"value\")[index];\n        const prevLog = refs.get(\"log\");\n        refs.set(\"log\", {\n          prev: prevLog.current,\n          current: { type: \"delete\", value }\n        });\n        context.set(\"value\", (prev) => utils.removeAt(prev, index));\n      },\n      deleteHighlightedTag({ context, scope, refs }) {\n        const highlightedTagId = context.get(\"highlightedTagId\");\n        if (highlightedTagId == null) return;\n        const index = getIndexOfId(scope, highlightedTagId);\n        context.set(\"editedTagIndex\", index);\n        const value = context.get(\"value\");\n        const prevLog = refs.get(\"log\");\n        refs.set(\"log\", {\n          prev: prevLog.current,\n          current: { type: \"delete\", value: value[index] }\n        });\n        context.set(\"value\", (prev) => utils.removeAt(prev, index));\n      },\n      setEditedId({ context, event, scope }) {\n        const highlightedTagId = context.get(\"highlightedTagId\");\n        const editedTagId = event.id ?? highlightedTagId;\n        context.set(\"editedTagId\", editedTagId);\n        const index = getIndexOfId(scope, editedTagId);\n        const valueAtIndex = context.get(\"value\")[index];\n        context.set(\"editedTagIndex\", index);\n        context.set(\"editedTagValue\", valueAtIndex);\n      },\n      clearEditedId({ context }) {\n        context.set(\"editedTagId\", null);\n      },\n      clearEditedTagValue({ context }) {\n        context.set(\"editedTagValue\", \"\");\n      },\n      setEditedTagValue({ context, event }) {\n        context.set(\"editedTagValue\", event.value);\n      },\n      submitEditedTagValue({ context, scope, refs }) {\n        const editedTagId = context.get(\"editedTagId\");\n        if (!editedTagId) return;\n        const index = getIndexOfId(scope, editedTagId);\n        context.set(\"value\", (prev) => {\n          const value = prev.slice();\n          value[index] = context.get(\"editedTagValue\");\n          return value;\n        });\n        const prevLog = refs.get(\"log\");\n        refs.set(\"log\", {\n          prev: prevLog.current,\n          current: { type: \"update\", value: context.get(\"editedTagValue\") }\n        });\n      },\n      setValueAtIndex({ context, event, refs }) {\n        if (event.value) {\n          context.set(\"value\", (prev) => {\n            const value = prev.slice();\n            value[event.index] = event.value;\n            return value;\n          });\n          const prevLog = refs.get(\"log\");\n          refs.set(\"log\", {\n            prev: prevLog.current,\n            current: { type: \"update\", value: event.value }\n          });\n        } else {\n          utils.warn(\"You need to provide a value for the tag\");\n        }\n      },\n      focusEditedTagInput({ context, scope }) {\n        domQuery.raf(() => {\n          const editedTagId = context.get(\"editedTagId\");\n          if (!editedTagId) return;\n          const editTagInputEl = getEditInputEl(scope, editedTagId);\n          editTagInputEl?.select();\n        });\n      },\n      setInputValue({ context, event }) {\n        context.set(\"inputValue\", event.value);\n      },\n      clearHighlightedId({ context }) {\n        context.set(\"highlightedTagId\", null);\n      },\n      focusInput({ scope }) {\n        domQuery.raf(() => {\n          getInputEl(scope)?.focus();\n        });\n      },\n      clearInputValue({ context }) {\n        domQuery.raf(() => {\n          context.set(\"inputValue\", \"\");\n        });\n      },\n      syncInputValue({ context, scope }) {\n        const inputEl = getInputEl(scope);\n        if (!inputEl) return;\n        domQuery.setElementValue(inputEl, context.get(\"inputValue\"));\n      },\n      syncEditedTagInputValue({ context, event, scope }) {\n        const id = context.get(\"editedTagId\") || context.get(\"highlightedTagId\") || event.id;\n        if (id == null) return;\n        const editTagInputEl = getEditInputEl(scope, id);\n        if (!editTagInputEl) return;\n        domQuery.setElementValue(editTagInputEl, context.get(\"editedTagValue\"));\n      },\n      addTag({ context, event, computed, prop, refs }) {\n        const inputValue = event.value ?? computed(\"trimmedInputValue\");\n        const value = context.get(\"value\");\n        const guard = prop(\"validate\")?.({ inputValue, value: Array.from(value) });\n        if (guard) {\n          const nextValue = utils.uniq(value.concat(inputValue));\n          context.set(\"value\", nextValue);\n          const prevLog = refs.get(\"log\");\n          refs.set(\"log\", {\n            prev: prevLog.current,\n            current: { type: \"add\", value: inputValue }\n          });\n        } else {\n          prop(\"onValueInvalid\")?.({ reason: \"invalidTag\" });\n        }\n      },\n      addTagFromPaste({ context, computed, prop, refs }) {\n        domQuery.raf(() => {\n          const inputValue = computed(\"trimmedInputValue\");\n          const value = context.get(\"value\");\n          const guard = prop(\"validate\")?.({\n            inputValue,\n            value: Array.from(value)\n          });\n          if (guard) {\n            const delimiter = prop(\"delimiter\");\n            const trimmedValue = delimiter ? inputValue.split(delimiter).map((v) => v.trim()) : [inputValue];\n            const nextValue = utils.uniq(value.concat(...trimmedValue));\n            context.set(\"value\", nextValue);\n            const prevLog = refs.get(\"log\");\n            refs.set(\"log\", {\n              prev: prevLog.current,\n              current: { type: \"paste\", values: trimmedValue }\n            });\n          } else {\n            prop(\"onValueInvalid\")?.({ reason: \"invalidTag\" });\n          }\n          context.set(\"inputValue\", \"\");\n        });\n      },\n      clearTags({ context, refs }) {\n        context.set(\"value\", []);\n        const prevLog = refs.get(\"log\");\n        refs.set(\"log\", {\n          prev: prevLog.current,\n          current: { type: \"clear\" }\n        });\n      },\n      setValue({ context, event }) {\n        context.set(\"value\", event.value);\n      },\n      invokeOnInvalid({ prop, computed }) {\n        if (computed(\"isOverflowing\")) {\n          prop(\"onValueInvalid\")?.({ reason: \"rangeOverflow\" });\n        }\n      },\n      clearLog({ refs }) {\n        const log = refs.get(\"log\");\n        log.prev = log.current = null;\n      },\n      logHighlightedTag({ refs, context, scope }) {\n        const highlightedTagId = context.get(\"highlightedTagId\");\n        const log = refs.get(\"log\");\n        if (highlightedTagId == null || !log.current) return;\n        const index = getIndexOfId(scope, highlightedTagId);\n        const value = context.get(\"value\")[index];\n        const prevLog = refs.get(\"log\");\n        refs.set(\"log\", {\n          prev: prevLog.current,\n          current: { type: \"select\", value }\n        });\n      },\n      // queue logs with screen reader and get it announced\n      announceLog({ refs, prop }) {\n        const liveRegion = refs.get(\"liveRegion\");\n        const translations = prop(\"translations\");\n        const log = refs.get(\"log\");\n        if (!log.current || liveRegion == null) return;\n        const region = liveRegion;\n        const { current, prev } = log;\n        let msg;\n        switch (current.type) {\n          case \"add\":\n            msg = translations.tagAdded(current.value);\n            break;\n          case \"delete\":\n            msg = translations.tagDeleted(current.value);\n            break;\n          case \"update\":\n            msg = translations.tagUpdated(current.value);\n            break;\n          case \"paste\":\n            msg = translations.tagsPasted(current.values);\n            break;\n          case \"select\":\n            msg = translations.tagSelected(current.value);\n            if (prev?.type === \"delete\") {\n              msg = `${translations.tagDeleted(prev.value)}. ${msg}`;\n            } else if (prev?.type === \"update\") {\n              msg = `${translations.tagUpdated(prev.value)}. ${msg}`;\n            }\n            break;\n        }\n        if (msg) region.announce(msg);\n      }\n    }\n  }\n});\nvar props = types.createProps()([\n  \"addOnPaste\",\n  \"allowOverflow\",\n  \"autoFocus\",\n  \"blurBehavior\",\n  \"delimiter\",\n  \"dir\",\n  \"disabled\",\n  \"editable\",\n  \"form\",\n  \"getRootNode\",\n  \"id\",\n  \"ids\",\n  \"inputValue\",\n  \"invalid\",\n  \"max\",\n  \"maxLength\",\n  \"name\",\n  \"onFocusOutside\",\n  \"onHighlightChange\",\n  \"onInputValueChange\",\n  \"onInteractOutside\",\n  \"onPointerDownOutside\",\n  \"onValueChange\",\n  \"onValueInvalid\",\n  \"placeholder\",\n  \"required\",\n  \"readOnly\",\n  \"translations\",\n  \"validate\",\n  \"value\",\n  \"defaultValue\",\n  \"defaultInputValue\"\n]);\nvar splitProps = utils.createSplitProps(props);\nvar itemProps = types.createProps()([\"index\", \"disabled\", \"value\"]);\nvar splitItemProps = utils.createSplitProps(itemProps);\n\nexports.anatomy = anatomy;\nexports.connect = connect;\nexports.itemProps = itemProps;\nexports.machine = machine;\nexports.props = props;\nexports.splitItemProps = splitItemProps;\nexports.splitProps = splitProps;\n"]}