{"version":3,"file":"OperationNode.cjs","sources":["../../../../../../../packages/components/tabs/src/TabNavList/OperationNode.tsx"],"sourcesContent":["import type { CustomSlotsType, Key } from '@antdv/types';\nimport type { CSSProperties } from 'vue';\nimport { EllipsisOutlined } from '@ant-design/icons-vue';\nimport { useState } from '@antdv/hooks';\nimport { classNames, KeyCode } from '@antdv/utils';\nimport { VcDropdown } from '@antdv/vue-components';\nimport { computed, defineComponent, onMounted, watch } from 'vue';\nimport Menu, { MenuItem } from '../../../menu';\n\nimport { useProvideOverride } from '../../../menu/src/OverrideContext';\nimport { operationNodeProps } from '../props';\nimport AddButton from './AddButton';\n\nexport default defineComponent({\n  compatConfig: { MODE: 3 },\n  name: 'OperationNode',\n  inheritAttrs: false,\n  props: operationNodeProps,\n  emits: ['tabClick'],\n  slots: Object as CustomSlotsType<{\n    moreIcon?: any\n    default?: any\n  }>,\n  setup(props, { attrs, slots }) {\n    // ======================== Dropdown ========================\n    const [open, setOpen] = useState(false);\n    const [selectedKey, setSelectedKey] = useState<Key>(null);\n    const selectOffset = (offset: -1 | 1) => {\n      const enabledTabs = props.tabs.filter(tab => !tab.disabled);\n      let selectedIndex = enabledTabs.findIndex(tab => tab.key === selectedKey.value) || 0;\n      const len = enabledTabs.length;\n\n      for (let i = 0; i < len; i += 1) {\n        selectedIndex = (selectedIndex + offset + len) % len;\n        const tab = enabledTabs[selectedIndex];\n        if (!tab.disabled) {\n          setSelectedKey(tab.key);\n          return;\n        }\n      }\n    };\n\n    const onKeyDown = (e: KeyboardEvent) => {\n      const { which } = e;\n\n      if (!open.value) {\n        if ([KeyCode.DOWN, KeyCode.SPACE, KeyCode.ENTER].includes(which)) {\n          setOpen(true);\n          e.preventDefault();\n        }\n        return;\n      }\n\n      switch (which) {\n        case KeyCode.UP:\n          selectOffset(-1);\n          e.preventDefault();\n          break;\n        case KeyCode.DOWN:\n          selectOffset(1);\n          e.preventDefault();\n          break;\n        case KeyCode.ESC:\n          setOpen(false);\n          break;\n        case KeyCode.SPACE:\n        case KeyCode.ENTER:\n          if (selectedKey.value !== null) props.onTabClick(selectedKey.value, e);\n          break;\n      }\n    };\n    const popupId = computed(() => `${props.id}-more-popup`);\n\n    const selectedItemId = computed(() =>\n      selectedKey.value !== null ? `${popupId.value}-${selectedKey.value}` : null,\n    );\n\n    const onRemoveTab = (event: MouseEvent | KeyboardEvent, key: Key) => {\n      event.preventDefault();\n      event.stopPropagation();\n      props.editable.onEdit('remove', {\n        key,\n        event,\n      });\n    };\n\n    onMounted(() => {\n      watch(\n        selectedKey,\n        () => {\n          const ele = document.getElementById(selectedItemId.value);\n          if (ele && ele.scrollIntoView)\n            ele.scrollIntoView(false);\n        },\n        { flush: 'post', immediate: true },\n      );\n    });\n\n    watch(open, () => {\n      if (!open.value)\n        setSelectedKey(null);\n    });\n    useProvideOverride({});\n    return () => {\n      const {\n        prefixCls,\n        id,\n        tabs,\n        locale,\n        mobile,\n        moreIcon = slots.moreIcon?.() || <EllipsisOutlined />,\n        moreTransitionName,\n        editable,\n        tabBarGutter,\n        rtl,\n        onTabClick,\n        popupClassName,\n      } = props;\n\n      if (!tabs.length) return null;\n      const dropdownPrefix = `${prefixCls}-dropdown`;\n\n      const dropdownAriaLabel = locale?.dropdownAriaLabel;\n\n      // ========================= Render =========================\n      const moreStyle: CSSProperties = {\n        [rtl ? 'marginRight' : 'marginLeft']: tabBarGutter,\n      };\n      if (!tabs.length) {\n        moreStyle.visibility = 'hidden';\n        moreStyle.order = 1;\n      }\n\n      const overlayClassName = classNames({\n        [`${dropdownPrefix}-rtl`]: rtl,\n        [`${popupClassName}`]: true,\n      });\n      const moreNode = mobile\n        ? null\n        : (\n            <VcDropdown\n              prefixCls={dropdownPrefix}\n              trigger={['hover']}\n              visible={open.value}\n              transitionName={moreTransitionName}\n              onVisibleChange={setOpen}\n              overlayClassName={overlayClassName}\n              mouseEnterDelay={0.1}\n              mouseLeaveDelay={0.1}\n              getPopupContainer={props.getPopupContainer}\n              v-slots={{\n                overlay: () => (\n                  <Menu\n                    onClick={({ key, domEvent }) => {\n                      onTabClick(key, domEvent);\n                      setOpen(false);\n                    }}\n                    id={popupId.value}\n                    tabindex={-1}\n                    role=\"listbox\"\n                    aria-activedescendant={selectedItemId.value}\n                    selectedKeys={[selectedKey.value]}\n                    aria-label={\n                      dropdownAriaLabel !== undefined ? dropdownAriaLabel : 'expanded dropdown'\n                    }\n                  >\n                    {tabs.map((tab) => {\n                      const removable = editable && tab.closable !== false && !tab.disabled;\n                      return (\n                        <MenuItem\n                          key={tab.key}\n                          id={`${popupId.value}-${tab.key}`}\n                          role=\"option\"\n                          aria-controls={id && `${id}-panel-${tab.key}`}\n                          disabled={tab.disabled}\n                        >\n                          <span>{typeof tab.tab === 'function' ? tab.tab() : tab.tab}</span>\n                          {removable && (\n                            <button\n                              type=\"button\"\n                              aria-label={props.removeAriaLabel || 'remove'}\n                              tabindex={0}\n                              class={`${dropdownPrefix}-menu-item-remove`}\n                              onClick={(e) => {\n                                e.stopPropagation();\n                                onRemoveTab(e, tab.key);\n                              }}\n                            >\n                              {tab.closeIcon?.() || editable.removeIcon?.() || '×'}\n                            </button>\n                          )}\n                        </MenuItem>\n                      );\n                    })}\n                  </Menu>\n                ),\n                default: () => (\n                  <button\n                    type=\"button\"\n                    class={`${prefixCls}-nav-more`}\n                    style={moreStyle}\n                    tabindex={-1}\n                    aria-hidden=\"true\"\n                    aria-haspopup=\"listbox\"\n                    aria-controls={popupId.value}\n                    id={`${id}-more`}\n                    aria-expanded={open.value}\n                    onKeydown={onKeyDown}\n                  >\n                    {moreIcon}\n                  </button>\n                ),\n              }}\n            >\n            </VcDropdown>\n          );\n\n      return (\n        <div\n          class={classNames(`${prefixCls}-nav-operations`, attrs.class)}\n          style={attrs.style as CSSProperties}\n        >\n          {moreNode}\n          <AddButton prefixCls={prefixCls} locale={locale} editable={editable} />\n        </div>\n      );\n    };\n  },\n});\n"],"names":["defineComponent","compatConfig","MODE","name","inheritAttrs","props","operationNodeProps","emits","slots","Object","setup","attrs","open","setOpen","useState","selectedKey","setSelectedKey","selectOffset","offset","enabledTabs","tabs","filter","tab","disabled","selectedIndex","findIndex","key","value","len","length","i","onKeyDown","e","which","KeyCode","DOWN","SPACE","ENTER","includes","preventDefault","UP","ESC","onTabClick","popupId","computed","id","selectedItemId","onRemoveTab","event","stopPropagation","editable","onEdit","onMounted","watch","ele","document","getElementById","scrollIntoView","flush","immediate","useProvideOverride","prefixCls","locale","mobile","moreIcon","_createVNode","EllipsisOutlined","moreTransitionName","tabBarGutter","rtl","popupClassName","dropdownPrefix","dropdownAriaLabel","moreStyle","visibility","order","overlayClassName","classNames","moreNode","VcDropdown","getPopupContainer","overlay","Menu","onClick","domEvent","undefined","default","map","removable","closable","MenuItem","removeAriaLabel","closeIcon","removeIcon","class","style","AddButton"],"mappings":"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"}