@sugarat/easypicker2-client 2.7.1 → 2.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/dist/assets/{data-analysis-B61f8OZD.js → data-analysis-B9140nBj.js} +2 -2
  2. package/dist/assets/{data-analysis-B61f8OZD.js.map → data-analysis-B9140nBj.js.map} +1 -1
  3. package/dist/assets/{data-analysis-legacy-sXkPNcPD.js → data-analysis-legacy-hCmX88pc.js} +2 -2
  4. package/dist/assets/{data-analysis-legacy-sXkPNcPD.js.map → data-analysis-legacy-hCmX88pc.js.map} +1 -1
  5. package/dist/assets/{data-board-BIN3HXKE.js → data-board-D3o_ZTM6.js} +2 -2
  6. package/dist/assets/{data-board-BIN3HXKE.js.map → data-board-D3o_ZTM6.js.map} +1 -1
  7. package/dist/assets/{data-board-legacy-mqcredpF.js → data-board-legacy-B3GeXOqc.js} +2 -2
  8. package/dist/assets/{data-board-legacy-mqcredpF.js.map → data-board-legacy-B3GeXOqc.js.map} +1 -1
  9. package/dist/assets/{el-date-picker-B-cvGosU.js → el-date-picker-DLwRZtue.js} +2 -2
  10. package/dist/assets/{el-date-picker-B-cvGosU.js.map → el-date-picker-DLwRZtue.js.map} +1 -1
  11. package/dist/assets/{el-date-picker-legacy-CACCtxzL.js → el-date-picker-legacy-D8g_iKhG.js} +2 -2
  12. package/dist/assets/{el-date-picker-legacy-CACCtxzL.js.map → el-date-picker-legacy-D8g_iKhG.js.map} +1 -1
  13. package/dist/assets/{el-dialog-C9wNxcPt.js → el-dialog-Dq3XmL6w.js} +2 -2
  14. package/dist/assets/{el-dialog-C9wNxcPt.js.map → el-dialog-Dq3XmL6w.js.map} +1 -1
  15. package/dist/assets/{el-dialog-legacy-CX7a77_4.js → el-dialog-legacy-DCFOVWEQ.js} +2 -2
  16. package/dist/assets/{el-dialog-legacy-CX7a77_4.js.map → el-dialog-legacy-DCFOVWEQ.js.map} +1 -1
  17. package/dist/assets/{el-dropdown-item-jbdZL0Yj.js → el-dropdown-item-C3aOY1Nr.js} +2 -2
  18. package/dist/assets/{el-dropdown-item-jbdZL0Yj.js.map → el-dropdown-item-C3aOY1Nr.js.map} +1 -1
  19. package/dist/assets/{el-dropdown-item-legacy-ChoB2YAN.js → el-dropdown-item-legacy-QQu1PUxO.js} +2 -2
  20. package/dist/assets/{el-dropdown-item-legacy-ChoB2YAN.js.map → el-dropdown-item-legacy-QQu1PUxO.js.map} +1 -1
  21. package/dist/assets/{el-form-item-BhAyaXPT.js → el-form-item-CtSEmj9z.js} +2 -2
  22. package/dist/assets/{el-form-item-BhAyaXPT.js.map → el-form-item-CtSEmj9z.js.map} +1 -1
  23. package/dist/assets/{el-form-item-legacy-DNwgpXzk.js → el-form-item-legacy-BS5eT84Y.js} +2 -2
  24. package/dist/assets/{el-form-item-legacy-DNwgpXzk.js.map → el-form-item-legacy-BS5eT84Y.js.map} +1 -1
  25. package/dist/assets/{el-loading-D5D_2rI_.js → el-loading-BzK_8zqi.js} +2 -2
  26. package/dist/assets/{el-loading-D5D_2rI_.js.map → el-loading-BzK_8zqi.js.map} +1 -1
  27. package/dist/assets/{el-loading-legacy-CCDpn-BT.js → el-loading-legacy-DWfn3F3x.js} +2 -2
  28. package/dist/assets/{el-loading-legacy-CCDpn-BT.js.map → el-loading-legacy-DWfn3F3x.js.map} +1 -1
  29. package/dist/assets/{el-pagination-DRV4WevC.js → el-pagination-Qx_lnumK.js} +2 -2
  30. package/dist/assets/{el-pagination-DRV4WevC.js.map → el-pagination-Qx_lnumK.js.map} +1 -1
  31. package/dist/assets/{el-pagination-legacy-CAxn6D5y.js → el-pagination-legacy-DqLvzT2t.js} +2 -2
  32. package/dist/assets/{el-pagination-legacy-CAxn6D5y.js.map → el-pagination-legacy-DqLvzT2t.js.map} +1 -1
  33. package/dist/assets/{el-progress-GDfl1hgb.js → el-progress-CeLYmjYA.js} +2 -2
  34. package/dist/assets/{el-progress-GDfl1hgb.js.map → el-progress-CeLYmjYA.js.map} +1 -1
  35. package/dist/assets/{el-progress-legacy-C5K3FqLs.js → el-progress-legacy-CwFO38du.js} +2 -2
  36. package/dist/assets/{el-progress-legacy-C5K3FqLs.js.map → el-progress-legacy-CwFO38du.js.map} +1 -1
  37. package/dist/assets/{el-select-B9z8VvNb.js → el-select-HG63LP3Z.js} +2 -2
  38. package/dist/assets/{el-select-B9z8VvNb.js.map → el-select-HG63LP3Z.js.map} +1 -1
  39. package/dist/assets/{el-select-legacy-BI1YK9Jv.js → el-select-legacy-fKvGMZFT.js} +2 -2
  40. package/dist/assets/{el-select-legacy-BI1YK9Jv.js.map → el-select-legacy-fKvGMZFT.js.map} +1 -1
  41. package/dist/assets/{el-switch-oOC_byJv.js → el-switch-FjmuXBNe.js} +2 -2
  42. package/dist/assets/{el-switch-oOC_byJv.js.map → el-switch-FjmuXBNe.js.map} +1 -1
  43. package/dist/assets/{el-switch-legacy-CG_sT4XS.js → el-switch-legacy-CU4cCeO5.js} +2 -2
  44. package/dist/assets/{el-switch-legacy-CG_sT4XS.js.map → el-switch-legacy-CU4cCeO5.js.map} +1 -1
  45. package/dist/assets/{el-tab-pane-NvGl_NI0.js → el-tab-pane-CuYcnzTM.js} +2 -2
  46. package/dist/assets/{el-tab-pane-NvGl_NI0.js.map → el-tab-pane-CuYcnzTM.js.map} +1 -1
  47. package/dist/assets/{el-tab-pane-legacy-usarmKVQ.js → el-tab-pane-legacy-CDSRCQdO.js} +2 -2
  48. package/dist/assets/{el-tab-pane-legacy-usarmKVQ.js.map → el-tab-pane-legacy-CDSRCQdO.js.map} +1 -1
  49. package/dist/assets/{el-table-column-JBAymLKS.js → el-table-column-B2R1FOoB.js} +2 -2
  50. package/dist/assets/{el-table-column-JBAymLKS.js.map → el-table-column-B2R1FOoB.js.map} +1 -1
  51. package/dist/assets/{el-table-column-legacy-BWpnrxZl.js → el-table-column-legacy-DDZdwCAr.js} +2 -2
  52. package/dist/assets/{el-table-column-legacy-BWpnrxZl.js.map → el-table-column-legacy-DDZdwCAr.js.map} +1 -1
  53. package/dist/assets/{index-Cno4i6lg.js → index-0SN-qZs5.js} +2 -2
  54. package/dist/assets/{index-Cno4i6lg.js.map → index-0SN-qZs5.js.map} +1 -1
  55. package/dist/assets/index-4ToTyeX6.css +1 -0
  56. package/dist/assets/{index-DRHl9KU8.js → index-BMhqAx1_.js} +2 -2
  57. package/dist/assets/{index-DRHl9KU8.js.map → index-BMhqAx1_.js.map} +1 -1
  58. package/dist/assets/{index-DDGYm9L-.js → index-BjPgOd_H.js} +2 -2
  59. package/dist/assets/{index-DDGYm9L-.js.map → index-BjPgOd_H.js.map} +1 -1
  60. package/dist/assets/{index-MTuc20rr.js → index-BjdYG4YE.js} +2 -2
  61. package/dist/assets/{index-MTuc20rr.js.map → index-BjdYG4YE.js.map} +1 -1
  62. package/dist/assets/{index-bD-fr3vy.js → index-BkLqrfrW.js} +2 -2
  63. package/dist/assets/{index-bD-fr3vy.js.map → index-BkLqrfrW.js.map} +1 -1
  64. package/dist/assets/{index-B0mV367i.js → index-BvTJrWND.js} +2 -2
  65. package/dist/assets/{index-B0mV367i.js.map → index-BvTJrWND.js.map} +1 -1
  66. package/dist/assets/{index-BUF8Xxid.js → index-BxLy8VN3.js} +2 -2
  67. package/dist/assets/{index-BUF8Xxid.js.map → index-BxLy8VN3.js.map} +1 -1
  68. package/dist/assets/index-C0ZXXBCX.js +40 -0
  69. package/dist/assets/index-C0ZXXBCX.js.map +1 -0
  70. package/dist/assets/{index-DJnltRnr.js → index-Cs-E_cyt.js} +2 -2
  71. package/dist/assets/{index-DJnltRnr.js.map → index-Cs-E_cyt.js.map} +1 -1
  72. package/dist/assets/index-CsvxKrFP.js +2 -0
  73. package/dist/assets/{index-DEiWe2Bk.js.map → index-CsvxKrFP.js.map} +1 -1
  74. package/dist/assets/{index-CHIrZkSk.js → index-DABL-KOd.js} +2 -2
  75. package/dist/assets/{index-CHIrZkSk.js.map → index-DABL-KOd.js.map} +1 -1
  76. package/dist/assets/{index-DMIqQLOE.js → index-DFVlBjXp.js} +2 -2
  77. package/dist/assets/{index-DMIqQLOE.js.map → index-DFVlBjXp.js.map} +1 -1
  78. package/dist/assets/{index-CKIiHmIf.js → index-DIlzTatU.js} +2 -2
  79. package/dist/assets/{index-CKIiHmIf.js.map → index-DIlzTatU.js.map} +1 -1
  80. package/dist/assets/{index-DCwrZmag.js → index-DREZLSQi.js} +2 -2
  81. package/dist/assets/{index-DCwrZmag.js.map → index-DREZLSQi.js.map} +1 -1
  82. package/dist/assets/{index-C0niS8Vv.js → index-DclP3Kg-.js} +2 -2
  83. package/dist/assets/{index-C0niS8Vv.js.map → index-DclP3Kg-.js.map} +1 -1
  84. package/dist/assets/index-DlyJUJ0j.js +2 -0
  85. package/dist/assets/{index-BxsJs6HZ.js.map → index-DlyJUJ0j.js.map} +1 -1
  86. package/dist/assets/index-DnxF29eG.css +1 -0
  87. package/dist/assets/{index-fb67TYJ8.js → index-GC0X-O3Y.js} +2 -2
  88. package/dist/assets/{index-fb67TYJ8.js.map → index-GC0X-O3Y.js.map} +1 -1
  89. package/dist/assets/{index-Byzqqd86.js → index-HzWmB96f.js} +2 -2
  90. package/dist/assets/{index-Byzqqd86.js.map → index-HzWmB96f.js.map} +1 -1
  91. package/dist/assets/{index-BOep9MOB.css → index-I0Y2y6h5.css} +1 -1
  92. package/dist/assets/{index-Dxy6ycv8.js → index-U2z5KAu0.js} +2 -2
  93. package/dist/assets/{index-Dxy6ycv8.js.map → index-U2z5KAu0.js.map} +1 -1
  94. package/dist/assets/{index-legacy-DC5-MYgp.js → index-legacy-B4IHsyj2.js} +13 -8
  95. package/dist/assets/index-legacy-B4IHsyj2.js.map +1 -0
  96. package/dist/assets/index-legacy-BKxszgZW.js +2 -0
  97. package/dist/assets/{index-legacy-DM_G6GXF.js.map → index-legacy-BKxszgZW.js.map} +1 -1
  98. package/dist/assets/{index-legacy-Cbyz8WHA.js → index-legacy-BO3hAqA9.js} +2 -2
  99. package/dist/assets/{index-legacy-Cbyz8WHA.js.map → index-legacy-BO3hAqA9.js.map} +1 -1
  100. package/dist/assets/{index-legacy-l7TP3X8w.js → index-legacy-BSXJnLod.js} +2 -2
  101. package/dist/assets/{index-legacy-l7TP3X8w.js.map → index-legacy-BSXJnLod.js.map} +1 -1
  102. package/dist/assets/{index-legacy-2G5G7SiF.js → index-legacy-BSv-V3Il.js} +2 -2
  103. package/dist/assets/{index-legacy-2G5G7SiF.js.map → index-legacy-BSv-V3Il.js.map} +1 -1
  104. package/dist/assets/{index-legacy-Qibh5ehq.js → index-legacy-CCqMKGqS.js} +2 -2
  105. package/dist/assets/{index-legacy-Qibh5ehq.js.map → index-legacy-CCqMKGqS.js.map} +1 -1
  106. package/dist/assets/{index-legacy-BN-W2P7-.js → index-legacy-CphqUnR0.js} +2 -2
  107. package/dist/assets/{index-legacy-BN-W2P7-.js.map → index-legacy-CphqUnR0.js.map} +1 -1
  108. package/dist/assets/{index-legacy-BwpR0DP9.js → index-legacy-D13WKbpb.js} +2 -2
  109. package/dist/assets/{index-legacy-BwpR0DP9.js.map → index-legacy-D13WKbpb.js.map} +1 -1
  110. package/dist/assets/{index-legacy-Chw6iyCz.js → index-legacy-D6IvG9Dt.js} +2 -2
  111. package/dist/assets/{index-legacy-Chw6iyCz.js.map → index-legacy-D6IvG9Dt.js.map} +1 -1
  112. package/dist/assets/{index-legacy-BZb5uhBF.js → index-legacy-DCezoU0z.js} +2 -2
  113. package/dist/assets/{index-legacy-BZb5uhBF.js.map → index-legacy-DCezoU0z.js.map} +1 -1
  114. package/dist/assets/{index-legacy-BdJHr4yN.js → index-legacy-DIwVyUHd.js} +2 -2
  115. package/dist/assets/{index-legacy-BdJHr4yN.js.map → index-legacy-DIwVyUHd.js.map} +1 -1
  116. package/dist/assets/{index-legacy-K0GPuvtR.js → index-legacy-DO2MADPO.js} +2 -2
  117. package/dist/assets/{index-legacy-K0GPuvtR.js.map → index-legacy-DO2MADPO.js.map} +1 -1
  118. package/dist/assets/{index-legacy-B1WwgC0S.js → index-legacy-DcFvM5kb.js} +2 -2
  119. package/dist/assets/{index-legacy-B1WwgC0S.js.map → index-legacy-DcFvM5kb.js.map} +1 -1
  120. package/dist/assets/{index-legacy-Dmi-DBK0.js → index-legacy-Df_9F2Oo.js} +2 -2
  121. package/dist/assets/{index-legacy-Dmi-DBK0.js.map → index-legacy-Df_9F2Oo.js.map} +1 -1
  122. package/dist/assets/{index-legacy-DiNZXmUs.js → index-legacy-Dhs-OKEx.js} +2 -2
  123. package/dist/assets/{index-legacy-DiNZXmUs.js.map → index-legacy-Dhs-OKEx.js.map} +1 -1
  124. package/dist/assets/{index-legacy-DUrsbgNe.js → index-legacy-DjWDlkzN.js} +2 -2
  125. package/dist/assets/{index-legacy-DUrsbgNe.js.map → index-legacy-DjWDlkzN.js.map} +1 -1
  126. package/dist/assets/{index-legacy-DV-KwU0c.js → index-legacy-DxQA53Qy.js} +2 -2
  127. package/dist/assets/{index-legacy-DV-KwU0c.js.map → index-legacy-DxQA53Qy.js.map} +1 -1
  128. package/dist/assets/{index-legacy-DmJc-LaA.js → index-legacy-GbLWntci.js} +2 -2
  129. package/dist/assets/{index-legacy-DmJc-LaA.js.map → index-legacy-GbLWntci.js.map} +1 -1
  130. package/dist/assets/{index-legacy-gQf30T09.js → index-legacy-I4qT4Thb.js} +2 -2
  131. package/dist/assets/{index-legacy-gQf30T09.js.map → index-legacy-I4qT4Thb.js.map} +1 -1
  132. package/dist/assets/{index-legacy-DP3Q6cDA.js → index-legacy-quXi4jhF.js} +2 -2
  133. package/dist/assets/{index-legacy-DP3Q6cDA.js.map → index-legacy-quXi4jhF.js.map} +1 -1
  134. package/dist/assets/{index-Dj5caLYF.js → index-tyMcidBi.js} +2 -2
  135. package/dist/assets/{index-Dj5caLYF.js.map → index-tyMcidBi.js.map} +1 -1
  136. package/dist/assets/{isEqual-pN6Ih18F.js → isEqual-Cecwc716.js} +2 -2
  137. package/dist/assets/{isEqual-pN6Ih18F.js.map → isEqual-Cecwc716.js.map} +1 -1
  138. package/dist/assets/{isEqual-legacy-DVLZyo95.js → isEqual-legacy-dqS7X02N.js} +2 -2
  139. package/dist/assets/{isEqual-legacy-DVLZyo95.js.map → isEqual-legacy-dqS7X02N.js.map} +1 -1
  140. package/dist/assets/{refresh-BTQLK-UW.js → refresh-BA55HwKz.js} +2 -2
  141. package/dist/assets/{refresh-BTQLK-UW.js.map → refresh-BA55HwKz.js.map} +1 -1
  142. package/dist/assets/{refresh-legacy-Cv7RM_sm.js → refresh-legacy-CpA05Fzr.js} +2 -2
  143. package/dist/assets/{refresh-legacy-Cv7RM_sm.js.map → refresh-legacy-CpA05Fzr.js.map} +1 -1
  144. package/dist/assets/{tip-DQo-E_Pu.js → tip-CrU2GCmD.js} +2 -2
  145. package/dist/assets/{tip-DQo-E_Pu.js.map → tip-CrU2GCmD.js.map} +1 -1
  146. package/dist/assets/{tip-legacy-Ci60OMi9.js → tip-legacy-B05oHh9-.js} +2 -2
  147. package/dist/assets/{tip-legacy-Ci60OMi9.js.map → tip-legacy-B05oHh9-.js.map} +1 -1
  148. package/dist/assets/validator-Ca0QsRid.js +2 -0
  149. package/dist/assets/{validator-CZlzBDi2.js.map → validator-Ca0QsRid.js.map} +1 -1
  150. package/dist/assets/validator-legacy-D0GLFVMZ.js +2 -0
  151. package/dist/assets/{validator-legacy-D-pC1hkO.js.map → validator-legacy-D0GLFVMZ.js.map} +1 -1
  152. package/dist/index.html +2 -2
  153. package/package.json +3 -3
  154. package/dist/assets/index-1eHw6sEI.css +0 -1
  155. package/dist/assets/index-BG1GuMIu.css +0 -1
  156. package/dist/assets/index-BxsJs6HZ.js +0 -2
  157. package/dist/assets/index-D80lTVeV.js +0 -36
  158. package/dist/assets/index-D80lTVeV.js.map +0 -1
  159. package/dist/assets/index-DEiWe2Bk.js +0 -2
  160. package/dist/assets/index-legacy-DC5-MYgp.js.map +0 -1
  161. package/dist/assets/index-legacy-DM_G6GXF.js +0 -2
  162. package/dist/assets/validator-CZlzBDi2.js +0 -2
  163. package/dist/assets/validator-legacy-D-pC1hkO.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"el-tab-pane-NvGl_NI0.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-nav.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/index.mjs"],"sourcesContent":["const tabsRootContextKey = Symbol(\"tabsRootContextKey\");\n\nexport { tabsRootContextKey };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\n\nconst tabBarProps = buildProps({\n tabs: {\n type: definePropType(Array),\n default: () => mutable([])\n }\n});\n\nexport { tabBarProps };\n//# sourceMappingURL=tab-bar.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, watch, nextTick, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle } from 'vue';\nimport { useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabBarProps } from './tab-bar.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { capitalize } from '@vue/shared';\n\nconst __default__ = {\n name: \"ElTabBar\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabBarProps,\n setup(__props, { expose }) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabBar\";\n const instance = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, \"<el-tabs><el-tab-bar /></el-tabs>\");\n const ns = useNamespace(\"tabs\");\n const barRef = ref();\n const barStyle = ref();\n const getBarStyle = () => {\n let offset = 0;\n let tabSize = 0;\n const sizeName = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\";\n const sizeDir = sizeName === \"width\" ? \"x\" : \"y\";\n props.tabs.every((tab) => {\n var _a, _b, _c, _d;\n const $el = (_b = (_a = instance.parent) == null ? void 0 : _a.refs) == null ? void 0 : _b[`tab-${tab.paneName}`];\n if (!$el)\n return false;\n if (!tab.active) {\n return true;\n }\n tabSize = $el[`client${capitalize(sizeName)}`];\n const position = sizeDir === \"x\" ? \"left\" : \"top\";\n offset = $el.getBoundingClientRect()[position] - ((_d = (_c = $el.parentElement) == null ? void 0 : _c.getBoundingClientRect()[position]) != null ? _d : 0);\n const tabStyles = window.getComputedStyle($el);\n if (sizeName === \"width\") {\n if (props.tabs.length > 1) {\n tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);\n }\n offset += Number.parseFloat(tabStyles.paddingLeft);\n }\n return false;\n });\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`\n };\n };\n const update = () => barStyle.value = getBarStyle();\n watch(() => props.tabs, async () => {\n await nextTick();\n update();\n }, { immediate: true });\n useResizeObserver(barRef, () => update());\n expose({\n ref: barRef,\n update\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n ref_key: \"barRef\",\n ref: barRef,\n class: normalizeClass([unref(ns).e(\"active-bar\"), unref(ns).is(unref(rootTabs).props.tabPosition)]),\n style: normalizeStyle(barStyle.value)\n }, null, 6);\n };\n }\n});\nvar TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue\"]]);\n\nexport { TabBar as default };\n//# sourceMappingURL=tab-bar2.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, computed, nextTick, watch, onMounted, onUpdated, createVNode } from 'vue';\nimport { NOOP, capitalize } from '@vue/shared';\nimport { useDocumentVisibility, useWindowFocus, useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { ArrowLeft, ArrowRight, Close } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabBar from './tab-bar2.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabNavProps = buildProps({\n panes: {\n type: definePropType(Array),\n default: () => mutable([])\n },\n currentName: {\n type: [String, Number],\n default: \"\"\n },\n editable: Boolean,\n onTabClick: {\n type: definePropType(Function),\n default: NOOP\n },\n onTabRemove: {\n type: definePropType(Function),\n default: NOOP\n },\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n stretch: Boolean\n});\nconst COMPONENT_NAME = \"ElTabNav\";\nconst TabNav = defineComponent({\n name: COMPONENT_NAME,\n props: tabNavProps,\n setup(props, {\n expose\n }) {\n const vm = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, `<el-tabs><tab-nav /></el-tabs>`);\n const ns = useNamespace(\"tabs\");\n const visibility = useDocumentVisibility();\n const focused = useWindowFocus();\n const navScroll$ = ref();\n const nav$ = ref();\n const el$ = ref();\n const scrollable = ref(false);\n const navOffset = ref(0);\n const isFocus = ref(false);\n const focusable = ref(true);\n const sizeName = computed(() => [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\");\n const navStyle = computed(() => {\n const dir = sizeName.value === \"width\" ? \"X\" : \"Y\";\n return {\n transform: `translate${dir}(-${navOffset.value}px)`\n };\n });\n const scrollPrev = () => {\n if (!navScroll$.value)\n return;\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (!currentOffset)\n return;\n const newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;\n navOffset.value = newOffset;\n };\n const scrollNext = () => {\n if (!navScroll$.value || !nav$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (navSize - currentOffset <= containerSize)\n return;\n const newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;\n navOffset.value = newOffset;\n };\n const scrollToActiveTab = async () => {\n const nav = nav$.value;\n if (!scrollable.value || !el$.value || !navScroll$.value || !nav)\n return;\n await nextTick();\n const activeTab = el$.value.querySelector(\".is-active\");\n if (!activeTab)\n return;\n const navScroll = navScroll$.value;\n const isHorizontal = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition);\n const activeTabBounding = activeTab.getBoundingClientRect();\n const navScrollBounding = navScroll.getBoundingClientRect();\n const maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;\n const currentOffset = navOffset.value;\n let newOffset = currentOffset;\n if (isHorizontal) {\n if (activeTabBounding.left < navScrollBounding.left) {\n newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);\n }\n if (activeTabBounding.right > navScrollBounding.right) {\n newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;\n }\n } else {\n if (activeTabBounding.top < navScrollBounding.top) {\n newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);\n }\n if (activeTabBounding.bottom > navScrollBounding.bottom) {\n newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);\n }\n }\n newOffset = Math.max(newOffset, 0);\n navOffset.value = Math.min(newOffset, maxOffset);\n };\n const update = () => {\n if (!nav$.value || !navScroll$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (containerSize < navSize) {\n const currentOffset2 = navOffset.value;\n scrollable.value = scrollable.value || {};\n scrollable.value.prev = currentOffset2;\n scrollable.value.next = currentOffset2 + containerSize < navSize;\n if (navSize - currentOffset2 < containerSize) {\n navOffset.value = navSize - containerSize;\n }\n } else {\n scrollable.value = false;\n if (currentOffset > 0) {\n navOffset.value = 0;\n }\n }\n };\n const changeTab = (e) => {\n const code = e.code;\n const {\n up,\n down,\n left,\n right\n } = EVENT_CODE;\n if (![up, down, left, right].includes(code))\n return;\n const tabList = Array.from(e.currentTarget.querySelectorAll(\"[role=tab]:not(.is-disabled)\"));\n const currentIndex = tabList.indexOf(e.target);\n let nextIndex;\n if (code === left || code === up) {\n if (currentIndex === 0) {\n nextIndex = tabList.length - 1;\n } else {\n nextIndex = currentIndex - 1;\n }\n } else {\n if (currentIndex < tabList.length - 1) {\n nextIndex = currentIndex + 1;\n } else {\n nextIndex = 0;\n }\n }\n tabList[nextIndex].focus();\n tabList[nextIndex].click();\n setFocus();\n };\n const setFocus = () => {\n if (focusable.value)\n isFocus.value = true;\n };\n const removeFocus = () => isFocus.value = false;\n watch(visibility, (visibility2) => {\n if (visibility2 === \"hidden\") {\n focusable.value = false;\n } else if (visibility2 === \"visible\") {\n setTimeout(() => focusable.value = true, 50);\n }\n });\n watch(focused, (focused2) => {\n if (focused2) {\n setTimeout(() => focusable.value = true, 50);\n } else {\n focusable.value = false;\n }\n });\n useResizeObserver(el$, update);\n onMounted(() => setTimeout(() => scrollToActiveTab(), 0));\n onUpdated(() => update());\n expose({\n scrollToActiveTab,\n removeFocus\n });\n watch(() => props.panes, () => vm.update(), {\n flush: \"post\"\n });\n return () => {\n const scrollBtn = scrollable.value ? [createVNode(\"span\", {\n \"class\": [ns.e(\"nav-prev\"), ns.is(\"disabled\", !scrollable.value.prev)],\n \"onClick\": scrollPrev\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowLeft, null, null)]\n })]), createVNode(\"span\", {\n \"class\": [ns.e(\"nav-next\"), ns.is(\"disabled\", !scrollable.value.next)],\n \"onClick\": scrollNext\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowRight, null, null)]\n })])] : null;\n const tabs = props.panes.map((pane, index) => {\n var _a, _b, _c, _d;\n const disabled = pane.props.disabled;\n const tabName = (_b = (_a = pane.props.name) != null ? _a : pane.index) != null ? _b : `${index}`;\n const closable = !disabled && (pane.isClosable || props.editable);\n pane.index = `${index}`;\n const btnClose = closable ? createVNode(ElIcon, {\n \"class\": \"is-icon-close\",\n \"onClick\": (ev) => props.onTabRemove(pane, ev)\n }, {\n default: () => [createVNode(Close, null, null)]\n }) : null;\n const tabLabelContent = ((_d = (_c = pane.slots).label) == null ? void 0 : _d.call(_c)) || pane.props.label;\n const tabindex = !disabled && pane.active ? 0 : -1;\n return createVNode(\"div\", {\n \"ref\": `tab-${tabName}`,\n \"class\": [ns.e(\"item\"), ns.is(rootTabs.props.tabPosition), ns.is(\"active\", pane.active), ns.is(\"disabled\", disabled), ns.is(\"closable\", closable), ns.is(\"focus\", isFocus.value)],\n \"id\": `tab-${tabName}`,\n \"key\": `tab-${tabName}`,\n \"aria-controls\": `pane-${tabName}`,\n \"role\": \"tab\",\n \"aria-selected\": pane.active,\n \"tabindex\": tabindex,\n \"onFocus\": () => setFocus(),\n \"onBlur\": () => removeFocus(),\n \"onClick\": (ev) => {\n removeFocus();\n props.onTabClick(pane, tabName, ev);\n },\n \"onKeydown\": (ev) => {\n if (closable && (ev.code === EVENT_CODE.delete || ev.code === EVENT_CODE.backspace)) {\n props.onTabRemove(pane, ev);\n }\n }\n }, [...[tabLabelContent, btnClose]]);\n });\n return createVNode(\"div\", {\n \"ref\": el$,\n \"class\": [ns.e(\"nav-wrap\"), ns.is(\"scrollable\", !!scrollable.value), ns.is(rootTabs.props.tabPosition)]\n }, [scrollBtn, createVNode(\"div\", {\n \"class\": ns.e(\"nav-scroll\"),\n \"ref\": navScroll$\n }, [createVNode(\"div\", {\n \"class\": [ns.e(\"nav\"), ns.is(rootTabs.props.tabPosition), ns.is(\"stretch\", props.stretch && [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition))],\n \"ref\": nav$,\n \"style\": navStyle.value,\n \"role\": \"tablist\",\n \"onKeydown\": changeTab\n }, [...[!props.type ? createVNode(TabBar, {\n \"tabs\": [...props.panes]\n }, null) : null, tabs]])])]);\n };\n }\n});\n\nexport { TabNav as default, tabNavProps };\n//# sourceMappingURL=tab-nav.mjs.map\n","import { defineComponent, ref, reactive, computed, watch, nextTick, provide, createVNode, renderSlot } from 'vue';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { Plus } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabNav from './tab-nav.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber } from '@vueuse/core';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { isUndefined } from '../../../utils/types.mjs';\nimport { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabsProps = buildProps({\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n activeName: {\n type: [String, Number]\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number]\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: [\"top\", \"right\", \"bottom\", \"left\"],\n default: \"top\"\n },\n beforeLeave: {\n type: definePropType(Function),\n default: () => true\n },\n stretch: Boolean\n});\nconst isPanelName = (value) => isString(value) || isNumber(value);\nconst tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name) => isPanelName(name),\n \"tab-click\": (pane, ev) => ev instanceof Event,\n \"tab-change\": (name) => isPanelName(name),\n edit: (paneName, action) => [\"remove\", \"add\"].includes(action),\n \"tab-remove\": (name) => isPanelName(name),\n \"tab-add\": () => true\n};\nvar Tabs = defineComponent({\n name: \"ElTabs\",\n props: tabsProps,\n emits: tabsEmits,\n setup(props, {\n emit,\n slots,\n expose\n }) {\n var _a, _b;\n const ns = useNamespace(\"tabs\");\n const nav$ = ref();\n const panes = reactive({});\n const currentName = ref((_b = (_a = props.modelValue) != null ? _a : props.activeName) != null ? _b : \"0\");\n const changeCurrentName = (value) => {\n currentName.value = value;\n emit(UPDATE_MODEL_EVENT, value);\n emit(\"tab-change\", value);\n };\n const setCurrentName = async (value) => {\n var _a2, _b2, _c;\n if (currentName.value === value || isUndefined(value))\n return;\n try {\n const canLeave = await ((_a2 = props.beforeLeave) == null ? void 0 : _a2.call(props, value, currentName.value));\n if (canLeave !== false) {\n changeCurrentName(value);\n (_c = (_b2 = nav$.value) == null ? void 0 : _b2.removeFocus) == null ? void 0 : _c.call(_b2);\n }\n } catch (e) {\n }\n };\n const handleTabClick = (tab, tabName, event) => {\n if (tab.props.disabled)\n return;\n setCurrentName(tabName);\n emit(\"tab-click\", tab, event);\n };\n const handleTabRemove = (pane, ev) => {\n if (pane.props.disabled || isUndefined(pane.props.name))\n return;\n ev.stopPropagation();\n emit(\"edit\", pane.props.name, \"remove\");\n emit(\"tab-remove\", pane.props.name);\n };\n const handleTabAdd = () => {\n emit(\"edit\", void 0, \"add\");\n emit(\"tab-add\");\n };\n useDeprecated({\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: \"ElTabs\",\n version: \"2.3.0\",\n ref: \"https://element-plus.org/en-US/component/tabs.html#attributes\",\n type: \"Attribute\"\n }, computed(() => !!props.activeName));\n watch(() => props.activeName, (modelValue) => setCurrentName(modelValue));\n watch(() => props.modelValue, (modelValue) => setCurrentName(modelValue));\n watch(currentName, async () => {\n var _a2;\n await nextTick();\n (_a2 = nav$.value) == null ? void 0 : _a2.scrollToActiveTab();\n });\n {\n const registerPane = (pane) => panes[pane.uid] = pane;\n const unregisterPane = (uid) => delete panes[uid];\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane\n });\n }\n expose({\n currentName\n });\n return () => {\n const newButton = props.editable || props.addable ? createVNode(\"span\", {\n \"class\": ns.e(\"new-tab\"),\n \"tabindex\": \"0\",\n \"onClick\": handleTabAdd,\n \"onKeydown\": (ev) => {\n if (ev.code === EVENT_CODE.enter)\n handleTabAdd();\n }\n }, [createVNode(ElIcon, {\n \"class\": ns.is(\"icon-plus\")\n }, {\n default: () => [createVNode(Plus, null, null)]\n })]) : null;\n const header = createVNode(\"div\", {\n \"class\": [ns.e(\"header\"), ns.is(props.tabPosition)]\n }, [newButton, createVNode(TabNav, {\n \"ref\": nav$,\n \"currentName\": currentName.value,\n \"editable\": props.editable,\n \"type\": props.type,\n \"panes\": Object.values(panes),\n \"stretch\": props.stretch,\n \"onTabClick\": handleTabClick,\n \"onTabRemove\": handleTabRemove\n }, null)]);\n const panels = createVNode(\"div\", {\n \"class\": ns.e(\"content\")\n }, [renderSlot(slots, \"default\")]);\n return createVNode(\"div\", {\n \"class\": [ns.b(), ns.m(props.tabPosition), {\n [ns.m(\"card\")]: props.type === \"card\",\n [ns.m(\"border-card\")]: props.type === \"border-card\"\n }]\n }, [...props.tabPosition !== \"bottom\" ? [header, panels] : [panels, header]]);\n };\n }\n});\n\nexport { Tabs as default, tabsEmits, tabsProps };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst tabPaneProps = buildProps({\n label: {\n type: String,\n default: \"\"\n },\n name: {\n type: [String, Number]\n },\n closable: Boolean,\n disabled: Boolean,\n lazy: Boolean\n});\n\nexport { tabPaneProps };\n//# sourceMappingURL=tab-pane.mjs.map\n","import { defineComponent, getCurrentInstance, useSlots, inject, ref, computed, watch, reactive, onMounted, onUnmounted, unref, withDirectives, openBlock, createElementBlock, normalizeClass, renderSlot, vShow, createCommentVNode } from 'vue';\nimport { eagerComputed } from '@vueuse/core';\nimport '../../../tokens/index.mjs';\nimport '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabPaneProps } from './tab-pane.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElTabPane\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabPaneProps,\n setup(__props) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabPane\";\n const instance = getCurrentInstance();\n const slots = useSlots();\n const tabsRoot = inject(tabsRootContextKey);\n if (!tabsRoot)\n throwError(COMPONENT_NAME, \"usage: <el-tabs><el-tab-pane /></el-tabs/>\");\n const ns = useNamespace(\"tab-pane\");\n const index = ref();\n const isClosable = computed(() => props.closable || tabsRoot.props.closable);\n const active = eagerComputed(() => {\n var _a;\n return tabsRoot.currentName.value === ((_a = props.name) != null ? _a : index.value);\n });\n const loaded = ref(active.value);\n const paneName = computed(() => {\n var _a;\n return (_a = props.name) != null ? _a : index.value;\n });\n const shouldBeRender = eagerComputed(() => !props.lazy || loaded.value || active.value);\n watch(active, (val) => {\n if (val)\n loaded.value = true;\n });\n const pane = reactive({\n uid: instance.uid,\n slots,\n props,\n paneName,\n active,\n index,\n isClosable\n });\n onMounted(() => {\n tabsRoot.registerPane(pane);\n });\n onUnmounted(() => {\n tabsRoot.unregisterPane(pane.uid);\n });\n return (_ctx, _cache) => {\n return unref(shouldBeRender) ? withDirectives((openBlock(), createElementBlock(\"div\", {\n key: 0,\n id: `pane-${unref(paneName)}`,\n class: normalizeClass(unref(ns).b()),\n role: \"tabpanel\",\n \"aria-hidden\": !unref(active),\n \"aria-labelledby\": `tab-${unref(paneName)}`\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1)), [\n [vShow, unref(active)]\n ]) : createCommentVNode(\"v-if\", true);\n };\n }\n});\nvar TabPane = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue\"]]);\n\nexport { TabPane as default };\n//# sourceMappingURL=tab-pane2.mjs.map\n","import '../../utils/index.mjs';\nimport Tabs from './src/tabs.mjs';\nexport { tabsEmits, tabsProps } from './src/tabs.mjs';\nimport TabPane from './src/tab-pane2.mjs';\nexport { tabBarProps } from './src/tab-bar.mjs';\nexport { tabNavProps } from './src/tab-nav.mjs';\nexport { tabPaneProps } from './src/tab-pane.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElTabs = withInstall(Tabs, {\n TabPane\n});\nconst ElTabPane = withNoopInstall(TabPane);\n\nexport { ElTabPane, ElTabs, ElTabs as default };\n//# sourceMappingURL=index.mjs.map\n"],"names":["tabsRootContextKey","tabBarProps","buildProps","definePropType","mutable","__default__","_sfc_main","defineComponent","__props","expose","props","COMPONENT_NAME","instance","getCurrentInstance","rootTabs","inject","throwError","ns","useNamespace","barRef","ref","barStyle","getBarStyle","offset","tabSize","sizeName","sizeDir","tab","_a","_b","_c","_d","$el","capitalize","position","tabStyles","update","watch","nextTick","useResizeObserver","_ctx","_cache","openBlock","createElementBlock","normalizeClass","unref","normalizeStyle","TabBar","_export_sfc","tabNavProps","NOOP","TabNav","vm","visibility","useDocumentVisibility","focused","useWindowFocus","navScroll$","nav$","el$","scrollable","navOffset","isFocus","focusable","computed","navStyle","dir","scrollPrev","containerSize","currentOffset","newOffset","scrollNext","navSize","scrollToActiveTab","nav","activeTab","navScroll","isHorizontal","activeTabBounding","navScrollBounding","maxOffset","currentOffset2","changeTab","e","code","up","down","left","right","EVENT_CODE","tabList","currentIndex","nextIndex","setFocus","removeFocus","visibility2","focused2","onMounted","onUpdated","scrollBtn","createVNode","ElIcon","ArrowLeft","ArrowRight","tabs","pane","index","disabled","tabName","closable","btnClose","ev","Close","tabLabelContent","tabindex","tabsProps","isPanelName","value","isString","isNumber","tabsEmits","UPDATE_MODEL_EVENT","name","paneName","action","Tabs","emit","slots","panes","reactive","currentName","changeCurrentName","setCurrentName","_a2","_b2","isUndefined","handleTabClick","event","handleTabRemove","handleTabAdd","useDeprecated","modelValue","provide","uid","newButton","Plus","header","panels","renderSlot","tabPaneProps","_hoisted_1","useSlots","tabsRoot","isClosable","active","eagerComputed","loaded","shouldBeRender","val","onUnmounted","withDirectives","vShow","createCommentVNode","TabPane","ElTabs","withInstall","ElTabPane","withNoopInstall"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
1
+ {"version":3,"file":"el-tab-pane-CuYcnzTM.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-nav.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/index.mjs"],"sourcesContent":["const tabsRootContextKey = Symbol(\"tabsRootContextKey\");\n\nexport { tabsRootContextKey };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\n\nconst tabBarProps = buildProps({\n tabs: {\n type: definePropType(Array),\n default: () => mutable([])\n }\n});\n\nexport { tabBarProps };\n//# sourceMappingURL=tab-bar.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, watch, nextTick, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle } from 'vue';\nimport { useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabBarProps } from './tab-bar.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { capitalize } from '@vue/shared';\n\nconst __default__ = {\n name: \"ElTabBar\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabBarProps,\n setup(__props, { expose }) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabBar\";\n const instance = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, \"<el-tabs><el-tab-bar /></el-tabs>\");\n const ns = useNamespace(\"tabs\");\n const barRef = ref();\n const barStyle = ref();\n const getBarStyle = () => {\n let offset = 0;\n let tabSize = 0;\n const sizeName = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\";\n const sizeDir = sizeName === \"width\" ? \"x\" : \"y\";\n props.tabs.every((tab) => {\n var _a, _b, _c, _d;\n const $el = (_b = (_a = instance.parent) == null ? void 0 : _a.refs) == null ? void 0 : _b[`tab-${tab.paneName}`];\n if (!$el)\n return false;\n if (!tab.active) {\n return true;\n }\n tabSize = $el[`client${capitalize(sizeName)}`];\n const position = sizeDir === \"x\" ? \"left\" : \"top\";\n offset = $el.getBoundingClientRect()[position] - ((_d = (_c = $el.parentElement) == null ? void 0 : _c.getBoundingClientRect()[position]) != null ? _d : 0);\n const tabStyles = window.getComputedStyle($el);\n if (sizeName === \"width\") {\n if (props.tabs.length > 1) {\n tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);\n }\n offset += Number.parseFloat(tabStyles.paddingLeft);\n }\n return false;\n });\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`\n };\n };\n const update = () => barStyle.value = getBarStyle();\n watch(() => props.tabs, async () => {\n await nextTick();\n update();\n }, { immediate: true });\n useResizeObserver(barRef, () => update());\n expose({\n ref: barRef,\n update\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n ref_key: \"barRef\",\n ref: barRef,\n class: normalizeClass([unref(ns).e(\"active-bar\"), unref(ns).is(unref(rootTabs).props.tabPosition)]),\n style: normalizeStyle(barStyle.value)\n }, null, 6);\n };\n }\n});\nvar TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue\"]]);\n\nexport { TabBar as default };\n//# sourceMappingURL=tab-bar2.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, computed, nextTick, watch, onMounted, onUpdated, createVNode } from 'vue';\nimport { NOOP, capitalize } from '@vue/shared';\nimport { useDocumentVisibility, useWindowFocus, useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { ArrowLeft, ArrowRight, Close } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabBar from './tab-bar2.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabNavProps = buildProps({\n panes: {\n type: definePropType(Array),\n default: () => mutable([])\n },\n currentName: {\n type: [String, Number],\n default: \"\"\n },\n editable: Boolean,\n onTabClick: {\n type: definePropType(Function),\n default: NOOP\n },\n onTabRemove: {\n type: definePropType(Function),\n default: NOOP\n },\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n stretch: Boolean\n});\nconst COMPONENT_NAME = \"ElTabNav\";\nconst TabNav = defineComponent({\n name: COMPONENT_NAME,\n props: tabNavProps,\n setup(props, {\n expose\n }) {\n const vm = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, `<el-tabs><tab-nav /></el-tabs>`);\n const ns = useNamespace(\"tabs\");\n const visibility = useDocumentVisibility();\n const focused = useWindowFocus();\n const navScroll$ = ref();\n const nav$ = ref();\n const el$ = ref();\n const scrollable = ref(false);\n const navOffset = ref(0);\n const isFocus = ref(false);\n const focusable = ref(true);\n const sizeName = computed(() => [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\");\n const navStyle = computed(() => {\n const dir = sizeName.value === \"width\" ? \"X\" : \"Y\";\n return {\n transform: `translate${dir}(-${navOffset.value}px)`\n };\n });\n const scrollPrev = () => {\n if (!navScroll$.value)\n return;\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (!currentOffset)\n return;\n const newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;\n navOffset.value = newOffset;\n };\n const scrollNext = () => {\n if (!navScroll$.value || !nav$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (navSize - currentOffset <= containerSize)\n return;\n const newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;\n navOffset.value = newOffset;\n };\n const scrollToActiveTab = async () => {\n const nav = nav$.value;\n if (!scrollable.value || !el$.value || !navScroll$.value || !nav)\n return;\n await nextTick();\n const activeTab = el$.value.querySelector(\".is-active\");\n if (!activeTab)\n return;\n const navScroll = navScroll$.value;\n const isHorizontal = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition);\n const activeTabBounding = activeTab.getBoundingClientRect();\n const navScrollBounding = navScroll.getBoundingClientRect();\n const maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;\n const currentOffset = navOffset.value;\n let newOffset = currentOffset;\n if (isHorizontal) {\n if (activeTabBounding.left < navScrollBounding.left) {\n newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);\n }\n if (activeTabBounding.right > navScrollBounding.right) {\n newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;\n }\n } else {\n if (activeTabBounding.top < navScrollBounding.top) {\n newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);\n }\n if (activeTabBounding.bottom > navScrollBounding.bottom) {\n newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);\n }\n }\n newOffset = Math.max(newOffset, 0);\n navOffset.value = Math.min(newOffset, maxOffset);\n };\n const update = () => {\n if (!nav$.value || !navScroll$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (containerSize < navSize) {\n const currentOffset2 = navOffset.value;\n scrollable.value = scrollable.value || {};\n scrollable.value.prev = currentOffset2;\n scrollable.value.next = currentOffset2 + containerSize < navSize;\n if (navSize - currentOffset2 < containerSize) {\n navOffset.value = navSize - containerSize;\n }\n } else {\n scrollable.value = false;\n if (currentOffset > 0) {\n navOffset.value = 0;\n }\n }\n };\n const changeTab = (e) => {\n const code = e.code;\n const {\n up,\n down,\n left,\n right\n } = EVENT_CODE;\n if (![up, down, left, right].includes(code))\n return;\n const tabList = Array.from(e.currentTarget.querySelectorAll(\"[role=tab]:not(.is-disabled)\"));\n const currentIndex = tabList.indexOf(e.target);\n let nextIndex;\n if (code === left || code === up) {\n if (currentIndex === 0) {\n nextIndex = tabList.length - 1;\n } else {\n nextIndex = currentIndex - 1;\n }\n } else {\n if (currentIndex < tabList.length - 1) {\n nextIndex = currentIndex + 1;\n } else {\n nextIndex = 0;\n }\n }\n tabList[nextIndex].focus();\n tabList[nextIndex].click();\n setFocus();\n };\n const setFocus = () => {\n if (focusable.value)\n isFocus.value = true;\n };\n const removeFocus = () => isFocus.value = false;\n watch(visibility, (visibility2) => {\n if (visibility2 === \"hidden\") {\n focusable.value = false;\n } else if (visibility2 === \"visible\") {\n setTimeout(() => focusable.value = true, 50);\n }\n });\n watch(focused, (focused2) => {\n if (focused2) {\n setTimeout(() => focusable.value = true, 50);\n } else {\n focusable.value = false;\n }\n });\n useResizeObserver(el$, update);\n onMounted(() => setTimeout(() => scrollToActiveTab(), 0));\n onUpdated(() => update());\n expose({\n scrollToActiveTab,\n removeFocus\n });\n watch(() => props.panes, () => vm.update(), {\n flush: \"post\"\n });\n return () => {\n const scrollBtn = scrollable.value ? [createVNode(\"span\", {\n \"class\": [ns.e(\"nav-prev\"), ns.is(\"disabled\", !scrollable.value.prev)],\n \"onClick\": scrollPrev\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowLeft, null, null)]\n })]), createVNode(\"span\", {\n \"class\": [ns.e(\"nav-next\"), ns.is(\"disabled\", !scrollable.value.next)],\n \"onClick\": scrollNext\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowRight, null, null)]\n })])] : null;\n const tabs = props.panes.map((pane, index) => {\n var _a, _b, _c, _d;\n const disabled = pane.props.disabled;\n const tabName = (_b = (_a = pane.props.name) != null ? _a : pane.index) != null ? _b : `${index}`;\n const closable = !disabled && (pane.isClosable || props.editable);\n pane.index = `${index}`;\n const btnClose = closable ? createVNode(ElIcon, {\n \"class\": \"is-icon-close\",\n \"onClick\": (ev) => props.onTabRemove(pane, ev)\n }, {\n default: () => [createVNode(Close, null, null)]\n }) : null;\n const tabLabelContent = ((_d = (_c = pane.slots).label) == null ? void 0 : _d.call(_c)) || pane.props.label;\n const tabindex = !disabled && pane.active ? 0 : -1;\n return createVNode(\"div\", {\n \"ref\": `tab-${tabName}`,\n \"class\": [ns.e(\"item\"), ns.is(rootTabs.props.tabPosition), ns.is(\"active\", pane.active), ns.is(\"disabled\", disabled), ns.is(\"closable\", closable), ns.is(\"focus\", isFocus.value)],\n \"id\": `tab-${tabName}`,\n \"key\": `tab-${tabName}`,\n \"aria-controls\": `pane-${tabName}`,\n \"role\": \"tab\",\n \"aria-selected\": pane.active,\n \"tabindex\": tabindex,\n \"onFocus\": () => setFocus(),\n \"onBlur\": () => removeFocus(),\n \"onClick\": (ev) => {\n removeFocus();\n props.onTabClick(pane, tabName, ev);\n },\n \"onKeydown\": (ev) => {\n if (closable && (ev.code === EVENT_CODE.delete || ev.code === EVENT_CODE.backspace)) {\n props.onTabRemove(pane, ev);\n }\n }\n }, [...[tabLabelContent, btnClose]]);\n });\n return createVNode(\"div\", {\n \"ref\": el$,\n \"class\": [ns.e(\"nav-wrap\"), ns.is(\"scrollable\", !!scrollable.value), ns.is(rootTabs.props.tabPosition)]\n }, [scrollBtn, createVNode(\"div\", {\n \"class\": ns.e(\"nav-scroll\"),\n \"ref\": navScroll$\n }, [createVNode(\"div\", {\n \"class\": [ns.e(\"nav\"), ns.is(rootTabs.props.tabPosition), ns.is(\"stretch\", props.stretch && [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition))],\n \"ref\": nav$,\n \"style\": navStyle.value,\n \"role\": \"tablist\",\n \"onKeydown\": changeTab\n }, [...[!props.type ? createVNode(TabBar, {\n \"tabs\": [...props.panes]\n }, null) : null, tabs]])])]);\n };\n }\n});\n\nexport { TabNav as default, tabNavProps };\n//# sourceMappingURL=tab-nav.mjs.map\n","import { defineComponent, ref, reactive, computed, watch, nextTick, provide, createVNode, renderSlot } from 'vue';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { Plus } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabNav from './tab-nav.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber } from '@vueuse/core';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { isUndefined } from '../../../utils/types.mjs';\nimport { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabsProps = buildProps({\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n activeName: {\n type: [String, Number]\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number]\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: [\"top\", \"right\", \"bottom\", \"left\"],\n default: \"top\"\n },\n beforeLeave: {\n type: definePropType(Function),\n default: () => true\n },\n stretch: Boolean\n});\nconst isPanelName = (value) => isString(value) || isNumber(value);\nconst tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name) => isPanelName(name),\n \"tab-click\": (pane, ev) => ev instanceof Event,\n \"tab-change\": (name) => isPanelName(name),\n edit: (paneName, action) => [\"remove\", \"add\"].includes(action),\n \"tab-remove\": (name) => isPanelName(name),\n \"tab-add\": () => true\n};\nvar Tabs = defineComponent({\n name: \"ElTabs\",\n props: tabsProps,\n emits: tabsEmits,\n setup(props, {\n emit,\n slots,\n expose\n }) {\n var _a, _b;\n const ns = useNamespace(\"tabs\");\n const nav$ = ref();\n const panes = reactive({});\n const currentName = ref((_b = (_a = props.modelValue) != null ? _a : props.activeName) != null ? _b : \"0\");\n const changeCurrentName = (value) => {\n currentName.value = value;\n emit(UPDATE_MODEL_EVENT, value);\n emit(\"tab-change\", value);\n };\n const setCurrentName = async (value) => {\n var _a2, _b2, _c;\n if (currentName.value === value || isUndefined(value))\n return;\n try {\n const canLeave = await ((_a2 = props.beforeLeave) == null ? void 0 : _a2.call(props, value, currentName.value));\n if (canLeave !== false) {\n changeCurrentName(value);\n (_c = (_b2 = nav$.value) == null ? void 0 : _b2.removeFocus) == null ? void 0 : _c.call(_b2);\n }\n } catch (e) {\n }\n };\n const handleTabClick = (tab, tabName, event) => {\n if (tab.props.disabled)\n return;\n setCurrentName(tabName);\n emit(\"tab-click\", tab, event);\n };\n const handleTabRemove = (pane, ev) => {\n if (pane.props.disabled || isUndefined(pane.props.name))\n return;\n ev.stopPropagation();\n emit(\"edit\", pane.props.name, \"remove\");\n emit(\"tab-remove\", pane.props.name);\n };\n const handleTabAdd = () => {\n emit(\"edit\", void 0, \"add\");\n emit(\"tab-add\");\n };\n useDeprecated({\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: \"ElTabs\",\n version: \"2.3.0\",\n ref: \"https://element-plus.org/en-US/component/tabs.html#attributes\",\n type: \"Attribute\"\n }, computed(() => !!props.activeName));\n watch(() => props.activeName, (modelValue) => setCurrentName(modelValue));\n watch(() => props.modelValue, (modelValue) => setCurrentName(modelValue));\n watch(currentName, async () => {\n var _a2;\n await nextTick();\n (_a2 = nav$.value) == null ? void 0 : _a2.scrollToActiveTab();\n });\n {\n const registerPane = (pane) => panes[pane.uid] = pane;\n const unregisterPane = (uid) => delete panes[uid];\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane\n });\n }\n expose({\n currentName\n });\n return () => {\n const newButton = props.editable || props.addable ? createVNode(\"span\", {\n \"class\": ns.e(\"new-tab\"),\n \"tabindex\": \"0\",\n \"onClick\": handleTabAdd,\n \"onKeydown\": (ev) => {\n if (ev.code === EVENT_CODE.enter)\n handleTabAdd();\n }\n }, [createVNode(ElIcon, {\n \"class\": ns.is(\"icon-plus\")\n }, {\n default: () => [createVNode(Plus, null, null)]\n })]) : null;\n const header = createVNode(\"div\", {\n \"class\": [ns.e(\"header\"), ns.is(props.tabPosition)]\n }, [newButton, createVNode(TabNav, {\n \"ref\": nav$,\n \"currentName\": currentName.value,\n \"editable\": props.editable,\n \"type\": props.type,\n \"panes\": Object.values(panes),\n \"stretch\": props.stretch,\n \"onTabClick\": handleTabClick,\n \"onTabRemove\": handleTabRemove\n }, null)]);\n const panels = createVNode(\"div\", {\n \"class\": ns.e(\"content\")\n }, [renderSlot(slots, \"default\")]);\n return createVNode(\"div\", {\n \"class\": [ns.b(), ns.m(props.tabPosition), {\n [ns.m(\"card\")]: props.type === \"card\",\n [ns.m(\"border-card\")]: props.type === \"border-card\"\n }]\n }, [...props.tabPosition !== \"bottom\" ? [header, panels] : [panels, header]]);\n };\n }\n});\n\nexport { Tabs as default, tabsEmits, tabsProps };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst tabPaneProps = buildProps({\n label: {\n type: String,\n default: \"\"\n },\n name: {\n type: [String, Number]\n },\n closable: Boolean,\n disabled: Boolean,\n lazy: Boolean\n});\n\nexport { tabPaneProps };\n//# sourceMappingURL=tab-pane.mjs.map\n","import { defineComponent, getCurrentInstance, useSlots, inject, ref, computed, watch, reactive, onMounted, onUnmounted, unref, withDirectives, openBlock, createElementBlock, normalizeClass, renderSlot, vShow, createCommentVNode } from 'vue';\nimport { eagerComputed } from '@vueuse/core';\nimport '../../../tokens/index.mjs';\nimport '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabPaneProps } from './tab-pane.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElTabPane\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabPaneProps,\n setup(__props) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabPane\";\n const instance = getCurrentInstance();\n const slots = useSlots();\n const tabsRoot = inject(tabsRootContextKey);\n if (!tabsRoot)\n throwError(COMPONENT_NAME, \"usage: <el-tabs><el-tab-pane /></el-tabs/>\");\n const ns = useNamespace(\"tab-pane\");\n const index = ref();\n const isClosable = computed(() => props.closable || tabsRoot.props.closable);\n const active = eagerComputed(() => {\n var _a;\n return tabsRoot.currentName.value === ((_a = props.name) != null ? _a : index.value);\n });\n const loaded = ref(active.value);\n const paneName = computed(() => {\n var _a;\n return (_a = props.name) != null ? _a : index.value;\n });\n const shouldBeRender = eagerComputed(() => !props.lazy || loaded.value || active.value);\n watch(active, (val) => {\n if (val)\n loaded.value = true;\n });\n const pane = reactive({\n uid: instance.uid,\n slots,\n props,\n paneName,\n active,\n index,\n isClosable\n });\n onMounted(() => {\n tabsRoot.registerPane(pane);\n });\n onUnmounted(() => {\n tabsRoot.unregisterPane(pane.uid);\n });\n return (_ctx, _cache) => {\n return unref(shouldBeRender) ? withDirectives((openBlock(), createElementBlock(\"div\", {\n key: 0,\n id: `pane-${unref(paneName)}`,\n class: normalizeClass(unref(ns).b()),\n role: \"tabpanel\",\n \"aria-hidden\": !unref(active),\n \"aria-labelledby\": `tab-${unref(paneName)}`\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1)), [\n [vShow, unref(active)]\n ]) : createCommentVNode(\"v-if\", true);\n };\n }\n});\nvar TabPane = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue\"]]);\n\nexport { TabPane as default };\n//# sourceMappingURL=tab-pane2.mjs.map\n","import '../../utils/index.mjs';\nimport Tabs from './src/tabs.mjs';\nexport { tabsEmits, tabsProps } from './src/tabs.mjs';\nimport TabPane from './src/tab-pane2.mjs';\nexport { tabBarProps } from './src/tab-bar.mjs';\nexport { tabNavProps } from './src/tab-nav.mjs';\nexport { tabPaneProps } from './src/tab-pane.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElTabs = withInstall(Tabs, {\n TabPane\n});\nconst ElTabPane = withNoopInstall(TabPane);\n\nexport { ElTabPane, ElTabs, ElTabs as default };\n//# sourceMappingURL=index.mjs.map\n"],"names":["tabsRootContextKey","tabBarProps","buildProps","definePropType","mutable","__default__","_sfc_main","defineComponent","__props","expose","props","COMPONENT_NAME","instance","getCurrentInstance","rootTabs","inject","throwError","ns","useNamespace","barRef","ref","barStyle","getBarStyle","offset","tabSize","sizeName","sizeDir","tab","_a","_b","_c","_d","$el","capitalize","position","tabStyles","update","watch","nextTick","useResizeObserver","_ctx","_cache","openBlock","createElementBlock","normalizeClass","unref","normalizeStyle","TabBar","_export_sfc","tabNavProps","NOOP","TabNav","vm","visibility","useDocumentVisibility","focused","useWindowFocus","navScroll$","nav$","el$","scrollable","navOffset","isFocus","focusable","computed","navStyle","dir","scrollPrev","containerSize","currentOffset","newOffset","scrollNext","navSize","scrollToActiveTab","nav","activeTab","navScroll","isHorizontal","activeTabBounding","navScrollBounding","maxOffset","currentOffset2","changeTab","e","code","up","down","left","right","EVENT_CODE","tabList","currentIndex","nextIndex","setFocus","removeFocus","visibility2","focused2","onMounted","onUpdated","scrollBtn","createVNode","ElIcon","ArrowLeft","ArrowRight","tabs","pane","index","disabled","tabName","closable","btnClose","ev","Close","tabLabelContent","tabindex","tabsProps","isPanelName","value","isString","isNumber","tabsEmits","UPDATE_MODEL_EVENT","name","paneName","action","Tabs","emit","slots","panes","reactive","currentName","changeCurrentName","setCurrentName","_a2","_b2","isUndefined","handleTabClick","event","handleTabRemove","handleTabAdd","useDeprecated","modelValue","provide","uid","newButton","Plus","header","panels","renderSlot","tabPaneProps","_hoisted_1","useSlots","tabsRoot","isClosable","active","eagerComputed","loaded","shouldBeRender","val","onUnmounted","withDirectives","vShow","createCommentVNode","TabPane","ElTabs","withInstall","ElTabPane","withNoopInstall"],"mappings":"yaAAA,MAAMA,EAAqB,OAAO,oBAAoB,ECIhDC,GAAcC,EAAW,CAC7B,KAAM,CACJ,KAAMC,EAAe,KAAK,EAC1B,QAAS,IAAMC,GAAQ,EAAE,CAC1B,CACH,CAAC,ECGKC,GAAc,CAClB,KAAM,UACR,EACMC,GAA4BC,EAAgB,CAChD,GAAGF,GACH,MAAOJ,GACP,MAAMO,EAAS,CAAE,OAAAC,GAAU,CACzB,MAAMC,EAAQF,EACRG,EAAiB,WACjBC,EAAWC,IACXC,EAAWC,EAAOf,CAAkB,EACrCc,GACHE,EAAWL,EAAgB,mCAAmC,EAChE,MAAMM,EAAKC,EAAa,MAAM,EACxBC,EAASC,IACTC,EAAWD,IACXE,EAAc,IAAM,CACxB,IAAIC,EAAS,EACTC,EAAU,EACd,MAAMC,EAAW,CAAC,MAAO,QAAQ,EAAE,SAASX,EAAS,MAAM,WAAW,EAAI,QAAU,SAC9EY,EAAUD,IAAa,QAAU,IAAM,IAC7C,OAAAf,EAAM,KAAK,MAAOiB,GAAQ,CACxB,IAAIC,EAAIC,EAAIC,EAAIC,EAChB,MAAMC,GAAOH,GAAMD,EAAKhB,EAAS,SAAW,KAAO,OAASgB,EAAG,OAAS,KAAO,OAASC,EAAG,OAAO,OAAAF,EAAI,SAAU,EAChH,GAAI,CAACK,EACH,MAAO,GACT,GAAI,CAACL,EAAI,OACP,MAAO,GAETH,EAAUQ,EAAI,SAAS,OAAAC,EAAWR,CAAQ,EAAG,EAC7C,MAAMS,EAAWR,IAAY,IAAM,OAAS,MAC5CH,EAASS,EAAI,wBAAwBE,CAAQ,IAAMH,GAAMD,EAAKE,EAAI,gBAAkB,KAAO,OAASF,EAAG,sBAAuB,EAACI,CAAQ,IAAM,KAAOH,EAAK,GACzJ,MAAMI,EAAY,OAAO,iBAAiBH,CAAG,EAC7C,OAAIP,IAAa,UACXf,EAAM,KAAK,OAAS,IACtBc,GAAW,OAAO,WAAWW,EAAU,WAAW,EAAI,OAAO,WAAWA,EAAU,YAAY,GAEhGZ,GAAU,OAAO,WAAWY,EAAU,WAAW,GAE5C,EACf,CAAO,EACM,CACL,CAACV,CAAQ,EAAG,GAAG,OAAAD,EAAO,MACtB,UAAW,YAAY,OAAAS,EAAWP,CAAO,EAAC,KAAI,OAAAH,EAAM,MAC5D,CACA,EACUa,EAAS,IAAMf,EAAS,MAAQC,EAAW,EACjD,OAAAe,EAAM,IAAM3B,EAAM,KAAM,SAAY,CAClC,MAAM4B,EAAQ,EACdF,GACN,EAAO,CAAE,UAAW,EAAI,CAAE,EACtBG,GAAkBpB,EAAQ,IAAMiB,EAAM,CAAE,EACxC3B,EAAO,CACL,IAAKU,EACL,OAAAiB,CACN,CAAK,EACM,CAACI,EAAMC,KACLC,GAAS,EAAIC,GAAmB,MAAO,CAC5C,QAAS,SACT,IAAKxB,EACL,MAAOyB,GAAe,CAACC,EAAM5B,CAAE,EAAE,EAAE,YAAY,EAAG4B,EAAM5B,CAAE,EAAE,GAAG4B,EAAM/B,CAAQ,EAAE,MAAM,WAAW,CAAC,CAAC,EAClG,MAAOgC,GAAezB,EAAS,KAAK,CAC5C,EAAS,KAAM,CAAC,EAEb,CACH,CAAC,EACD,IAAI0B,GAAyBC,GAAY1C,GAAW,CAAC,CAAC,SAAU,sFAAsF,CAAC,CAAC,EC7DxJ,MAAM2C,GAAc/C,EAAW,CAC7B,MAAO,CACL,KAAMC,EAAe,KAAK,EAC1B,QAAS,IAAMC,GAAQ,EAAE,CAC1B,EACD,YAAa,CACX,KAAM,CAAC,OAAQ,MAAM,EACrB,QAAS,EACV,EACD,SAAU,QACV,WAAY,CACV,KAAMD,EAAe,QAAQ,EAC7B,QAAS+C,CACV,EACD,YAAa,CACX,KAAM/C,EAAe,QAAQ,EAC7B,QAAS+C,CACV,EACD,KAAM,CACJ,KAAM,OACN,OAAQ,CAAC,OAAQ,cAAe,EAAE,EAClC,QAAS,EACV,EACD,QAAS,OACX,CAAC,EACKvC,GAAiB,WACjBwC,GAAS5C,EAAgB,CAC7B,KAAMI,GACN,MAAOsC,GACP,MAAMvC,EAAO,CACX,OAAAD,CACJ,EAAK,CACD,MAAM2C,EAAKvC,IACLC,EAAWC,EAAOf,CAAkB,EACrCc,GACHE,EAAWL,GAAgB,gCAAgC,EAC7D,MAAMM,EAAKC,EAAa,MAAM,EACxBmC,EAAaC,KACbC,EAAUC,KACVC,EAAarC,IACbsC,EAAOtC,IACPuC,EAAMvC,IACNwC,EAAaxC,EAAI,EAAK,EACtByC,EAAYzC,EAAI,CAAC,EACjB0C,EAAU1C,EAAI,EAAK,EACnB2C,EAAY3C,EAAI,EAAI,EACpBK,EAAWuC,EAAS,IAAM,CAAC,MAAO,QAAQ,EAAE,SAASlD,EAAS,MAAM,WAAW,EAAI,QAAU,QAAQ,EACrGmD,EAAWD,EAAS,IAAM,CAC9B,MAAME,EAAMzC,EAAS,QAAU,QAAU,IAAM,IAC/C,MAAO,CACL,UAAW,YAAY,OAAAyC,EAAG,MAAK,OAAAL,EAAU,MAAK,MACtD,CACA,CAAK,EACKM,EAAa,IAAM,CACvB,GAAI,CAACV,EAAW,MACd,OACF,MAAMW,EAAgBX,EAAW,MAAM,SAAS,OAAAxB,EAAWR,EAAS,KAAK,EAAG,EACtE4C,EAAgBR,EAAU,MAChC,GAAI,CAACQ,EACH,OACF,MAAMC,EAAYD,EAAgBD,EAAgBC,EAAgBD,EAAgB,EAClFP,EAAU,MAAQS,CACxB,EACUC,EAAa,IAAM,CACvB,GAAI,CAACd,EAAW,OAAS,CAACC,EAAK,MAC7B,OACF,MAAMc,EAAUd,EAAK,MAAM,SAAS,OAAAzB,EAAWR,EAAS,KAAK,EAAG,EAC1D2C,EAAgBX,EAAW,MAAM,SAAS,OAAAxB,EAAWR,EAAS,KAAK,EAAG,EACtE4C,EAAgBR,EAAU,MAChC,GAAIW,EAAUH,GAAiBD,EAC7B,OACF,MAAME,EAAYE,EAAUH,EAAgBD,EAAgB,EAAIC,EAAgBD,EAAgBI,EAAUJ,EAC1GP,EAAU,MAAQS,CACxB,EACUG,EAAoB,SAAY,CACpC,MAAMC,EAAMhB,EAAK,MACjB,GAAI,CAACE,EAAW,OAAS,CAACD,EAAI,OAAS,CAACF,EAAW,OAAS,CAACiB,EAC3D,OACF,MAAMpC,EAAQ,EACd,MAAMqC,EAAYhB,EAAI,MAAM,cAAc,YAAY,EACtD,GAAI,CAACgB,EACH,OACF,MAAMC,EAAYnB,EAAW,MACvBoB,EAAe,CAAC,MAAO,QAAQ,EAAE,SAAS/D,EAAS,MAAM,WAAW,EACpEgE,EAAoBH,EAAU,wBAC9BI,EAAoBH,EAAU,wBAC9BI,EAAYH,EAAeH,EAAI,YAAcK,EAAkB,MAAQL,EAAI,aAAeK,EAAkB,OAC5GV,EAAgBR,EAAU,MAChC,IAAIS,EAAYD,EACZQ,GACEC,EAAkB,KAAOC,EAAkB,OAC7CT,EAAYD,GAAiBU,EAAkB,KAAOD,EAAkB,OAEtEA,EAAkB,MAAQC,EAAkB,QAC9CT,EAAYD,EAAgBS,EAAkB,MAAQC,EAAkB,SAGtED,EAAkB,IAAMC,EAAkB,MAC5CT,EAAYD,GAAiBU,EAAkB,IAAMD,EAAkB,MAErEA,EAAkB,OAASC,EAAkB,SAC/CT,EAAYD,GAAiBS,EAAkB,OAASC,EAAkB,UAG9ET,EAAY,KAAK,IAAIA,EAAW,CAAC,EACjCT,EAAU,MAAQ,KAAK,IAAIS,EAAWU,CAAS,CACrD,EACU5C,EAAS,IAAM,CACnB,GAAI,CAACsB,EAAK,OAAS,CAACD,EAAW,MAC7B,OACF,MAAMe,EAAUd,EAAK,MAAM,SAAS,OAAAzB,EAAWR,EAAS,KAAK,EAAG,EAC1D2C,EAAgBX,EAAW,MAAM,SAAS,OAAAxB,EAAWR,EAAS,KAAK,EAAG,EACtE4C,EAAgBR,EAAU,MAChC,GAAIO,EAAgBI,EAAS,CAC3B,MAAMS,EAAiBpB,EAAU,MACjCD,EAAW,MAAQA,EAAW,OAAS,CAAA,EACvCA,EAAW,MAAM,KAAOqB,EACxBrB,EAAW,MAAM,KAAOqB,EAAiBb,EAAgBI,EACrDA,EAAUS,EAAiBb,IAC7BP,EAAU,MAAQW,EAAUJ,EAEtC,MACQR,EAAW,MAAQ,GACfS,EAAgB,IAClBR,EAAU,MAAQ,EAG5B,EACUqB,EAAaC,GAAM,CACvB,MAAMC,EAAOD,EAAE,KACT,CACJ,GAAAE,EACA,KAAAC,EACA,KAAAC,EACA,MAAAC,CACD,EAAGC,EACJ,GAAI,CAAC,CAACJ,EAAIC,EAAMC,EAAMC,CAAK,EAAE,SAASJ,CAAI,EACxC,OACF,MAAMM,EAAU,MAAM,KAAKP,EAAE,cAAc,iBAAiB,8BAA8B,CAAC,EACrFQ,EAAeD,EAAQ,QAAQP,EAAE,MAAM,EAC7C,IAAIS,EACAR,IAASG,GAAQH,IAASC,EACxBM,IAAiB,EACnBC,EAAYF,EAAQ,OAAS,EAE7BE,EAAYD,EAAe,EAGzBA,EAAeD,EAAQ,OAAS,EAClCE,EAAYD,EAAe,EAE3BC,EAAY,EAGhBF,EAAQE,CAAS,EAAE,QACnBF,EAAQE,CAAS,EAAE,QACnBC,GACN,EACUA,EAAW,IAAM,CACjB9B,EAAU,QACZD,EAAQ,MAAQ,GACxB,EACUgC,EAAc,IAAMhC,EAAQ,MAAQ,GAC1C,OAAAzB,EAAMgB,EAAa0C,GAAgB,CAC7BA,IAAgB,SAClBhC,EAAU,MAAQ,GACTgC,IAAgB,WACzB,WAAW,IAAMhC,EAAU,MAAQ,GAAM,EAAE,CAEnD,CAAK,EACD1B,EAAMkB,EAAUyC,GAAa,CACvBA,EACF,WAAW,IAAMjC,EAAU,MAAQ,GAAM,EAAE,EAE3CA,EAAU,MAAQ,EAE1B,CAAK,EACDxB,GAAkBoB,EAAKvB,CAAM,EAC7B6D,GAAU,IAAM,WAAW,IAAMxB,EAAiB,EAAI,CAAC,CAAC,EACxDyB,GAAU,IAAM9D,EAAM,CAAE,EACxB3B,EAAO,CACL,kBAAAgE,EACA,YAAAqB,CACN,CAAK,EACDzD,EAAM,IAAM3B,EAAM,MAAO,IAAM0C,EAAG,OAAM,EAAI,CAC1C,MAAO,MACb,CAAK,EACM,IAAM,CACX,MAAM+C,EAAYvC,EAAW,MAAQ,CAACwC,EAAY,OAAQ,CACxD,MAAS,CAACnF,EAAG,EAAE,UAAU,EAAGA,EAAG,GAAG,WAAY,CAAC2C,EAAW,MAAM,IAAI,CAAC,EACrE,QAAWO,CACnB,EAAS,CAACiC,EAAYC,EAAQ,KAAM,CAC5B,QAAS,IAAM,CAACD,EAAYE,GAAW,KAAM,IAAI,CAAC,CAC1D,CAAO,CAAC,CAAC,EAAGF,EAAY,OAAQ,CACxB,MAAS,CAACnF,EAAG,EAAE,UAAU,EAAGA,EAAG,GAAG,WAAY,CAAC2C,EAAW,MAAM,IAAI,CAAC,EACrE,QAAWW,CACnB,EAAS,CAAC6B,EAAYC,EAAQ,KAAM,CAC5B,QAAS,IAAM,CAACD,EAAYG,GAAY,KAAM,IAAI,CAAC,CAC3D,CAAO,CAAC,CAAC,CAAC,EAAI,KACFC,EAAO9F,EAAM,MAAM,IAAI,CAAC+F,EAAMC,IAAU,CAC5C,IAAI9E,EAAIC,EAAIC,EAAIC,EAChB,MAAM4E,EAAWF,EAAK,MAAM,SACtBG,GAAW/E,GAAMD,EAAK6E,EAAK,MAAM,OAAS,KAAO7E,EAAK6E,EAAK,QAAU,KAAO5E,EAAK,GAAG,OAAA6E,GACpFG,EAAW,CAACF,IAAaF,EAAK,YAAc/F,EAAM,UACxD+F,EAAK,MAAQ,GAAG,OAAAC,GAChB,MAAMI,GAAWD,EAAWT,EAAYC,EAAQ,CAC9C,MAAS,gBACT,QAAYU,GAAOrG,EAAM,YAAY+F,EAAMM,CAAE,CACvD,EAAW,CACD,QAAS,IAAM,CAACX,EAAYY,GAAO,KAAM,IAAI,CAAC,CAC/C,CAAA,EAAI,KACCC,KAAoBlF,GAAMD,EAAK2E,EAAK,OAAO,QAAU,KAAO,OAAS1E,EAAG,KAAKD,CAAE,IAAM2E,EAAK,MAAM,MAChGS,GAAW,CAACP,GAAYF,EAAK,OAAS,EAAI,GAChD,OAAOL,EAAY,MAAO,CACxB,IAAO,OAAO,OAAAQ,GACd,MAAS,CAAC3F,EAAG,EAAE,MAAM,EAAGA,EAAG,GAAGH,EAAS,MAAM,WAAW,EAAGG,EAAG,GAAG,SAAUwF,EAAK,MAAM,EAAGxF,EAAG,GAAG,WAAY0F,CAAQ,EAAG1F,EAAG,GAAG,WAAY4F,CAAQ,EAAG5F,EAAG,GAAG,QAAS6C,EAAQ,KAAK,CAAC,EAChL,GAAM,OAAO,OAAA8C,GACb,IAAO,OAAO,OAAAA,GACd,gBAAiB,QAAQ,OAAAA,GACzB,KAAQ,MACR,gBAAiBH,EAAK,OACtB,SAAYS,GACZ,QAAW,IAAMrB,EAAU,EAC3B,OAAU,IAAMC,EAAa,EAC7B,QAAYiB,GAAO,CACjBjB,IACApF,EAAM,WAAW+F,EAAMG,EAASG,CAAE,CACnC,EACD,UAAcA,GAAO,CACfF,IAAaE,EAAG,OAAStB,EAAW,QAAUsB,EAAG,OAAStB,EAAW,YACvE/E,EAAM,YAAY+F,EAAMM,CAAE,CAE7B,CACF,EAAE,CAAKE,GAAiBH,EAAS,CAAC,CAC3C,CAAO,EACD,OAAOV,EAAY,MAAO,CACxB,IAAOzC,EACP,MAAS,CAAC1C,EAAG,EAAE,UAAU,EAAGA,EAAG,GAAG,aAAc,CAAC,CAAC2C,EAAW,KAAK,EAAG3C,EAAG,GAAGH,EAAS,MAAM,WAAW,CAAC,CAC9G,EAAS,CAACqF,EAAWC,EAAY,MAAO,CAChC,MAASnF,EAAG,EAAE,YAAY,EAC1B,IAAOwC,CACf,EAAS,CAAC2C,EAAY,MAAO,CACrB,MAAS,CAACnF,EAAG,EAAE,KAAK,EAAGA,EAAG,GAAGH,EAAS,MAAM,WAAW,EAAGG,EAAG,GAAG,UAAWP,EAAM,SAAW,CAAC,MAAO,QAAQ,EAAE,SAASI,EAAS,MAAM,WAAW,CAAC,CAAC,EACnJ,IAAO4C,EACP,MAASO,EAAS,MAClB,KAAQ,UACR,UAAaiB,CACrB,EAAS,CAAMxE,EAAM,KAEJ,KAFW0F,EAAYrD,GAAQ,CACxC,KAAQ,CAAC,GAAGrC,EAAM,KAAK,CAC/B,EAAS,IAAI,EAAU8F,CAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACjC,CACG,CACH,CAAC,EC3PKW,GAAYjH,EAAW,CAC3B,KAAM,CACJ,KAAM,OACN,OAAQ,CAAC,OAAQ,cAAe,EAAE,EAClC,QAAS,EACV,EACD,WAAY,CACV,KAAM,CAAC,OAAQ,MAAM,CACtB,EACD,SAAU,QACV,QAAS,QACT,WAAY,CACV,KAAM,CAAC,OAAQ,MAAM,CACtB,EACD,SAAU,QACV,YAAa,CACX,KAAM,OACN,OAAQ,CAAC,MAAO,QAAS,SAAU,MAAM,EACzC,QAAS,KACV,EACD,YAAa,CACX,KAAMC,EAAe,QAAQ,EAC7B,QAAS,IAAM,EAChB,EACD,QAAS,OACX,CAAC,EACKiH,EAAeC,GAAUC,GAASD,CAAK,GAAKE,GAASF,CAAK,EAC1DG,GAAY,CAChB,CAACC,EAAkB,EAAIC,GAASN,EAAYM,CAAI,EAChD,YAAa,CAACjB,EAAMM,IAAOA,aAAc,MACzC,aAAeW,GAASN,EAAYM,CAAI,EACxC,KAAM,CAACC,EAAUC,IAAW,CAAC,SAAU,KAAK,EAAE,SAASA,CAAM,EAC7D,aAAeF,GAASN,EAAYM,CAAI,EACxC,UAAW,IAAM,EACnB,EACA,IAAIG,GAAOtH,EAAgB,CACzB,KAAM,SACN,MAAO4G,GACP,MAAOK,GACP,MAAM9G,EAAO,CACX,KAAAoH,EACA,MAAAC,EACA,OAAAtH,CACJ,EAAK,CACD,IAAImB,EAAIC,EACR,MAAMZ,EAAKC,EAAa,MAAM,EACxBwC,EAAOtC,IACP4G,EAAQC,GAAS,CAAA,CAAE,EACnBC,EAAc9G,GAAKS,GAAMD,EAAKlB,EAAM,aAAe,KAAOkB,EAAKlB,EAAM,aAAe,KAAOmB,EAAK,GAAG,EACnGsG,EAAqBd,GAAU,CACnCa,EAAY,MAAQb,EACpBS,EAAKL,GAAoBJ,CAAK,EAC9BS,EAAK,aAAcT,CAAK,CAC9B,EACUe,EAAiB,MAAOf,GAAU,CACtC,IAAIgB,EAAKC,EAAKxG,EACd,GAAI,EAAAoG,EAAY,QAAUb,GAASkB,GAAYlB,CAAK,GAEpD,GAAI,CACe,OAAQgB,EAAM3H,EAAM,cAAgB,KAAO,OAAS2H,EAAI,KAAK3H,EAAO2G,EAAOa,EAAY,KAAK,KAC5F,KACfC,EAAkBd,CAAK,GACtBvF,GAAMwG,EAAM5E,EAAK,QAAU,KAAO,OAAS4E,EAAI,cAAgB,MAAgBxG,EAAG,KAAKwG,CAAG,EAE9F,OAAQnD,EAAG,CACX,CACP,EACUqD,EAAiB,CAAC7G,EAAKiF,EAAS6B,IAAU,CAC1C9G,EAAI,MAAM,WAEdyG,EAAexB,CAAO,EACtBkB,EAAK,YAAanG,EAAK8G,CAAK,EAClC,EACUC,EAAkB,CAACjC,EAAMM,IAAO,CAChCN,EAAK,MAAM,UAAY8B,GAAY9B,EAAK,MAAM,IAAI,IAEtDM,EAAG,gBAAe,EAClBe,EAAK,OAAQrB,EAAK,MAAM,KAAM,QAAQ,EACtCqB,EAAK,aAAcrB,EAAK,MAAM,IAAI,EACxC,EACUkC,EAAe,IAAM,CACzBb,EAAK,OAAQ,OAAQ,KAAK,EAC1BA,EAAK,SAAS,CACpB,EACI,OAAAc,GAAc,CACZ,KAAM,eACN,YAAa,6BACb,MAAO,SACP,QAAS,QACT,IAAK,gEACL,KAAM,WACP,EAAE5E,EAAS,IAAM,CAAC,CAACtD,EAAM,UAAU,CAAC,EACrC2B,EAAM,IAAM3B,EAAM,WAAamI,GAAeT,EAAeS,CAAU,CAAC,EACxExG,EAAM,IAAM3B,EAAM,WAAamI,GAAeT,EAAeS,CAAU,CAAC,EACxExG,EAAM6F,EAAa,SAAY,CAC7B,IAAIG,EACJ,MAAM/F,EAAQ,GACb+F,EAAM3E,EAAK,QAAU,MAAgB2E,EAAI,mBAChD,CAAK,EAICS,GAAQ9I,EAAoB,CAC1B,MAAAU,EACA,YAAAwH,EACA,aALoBzB,GAASuB,EAAMvB,EAAK,GAAG,EAAIA,EAM/C,eALsBsC,GAAQ,OAAOf,EAAMe,CAAG,CAMtD,CAAO,EAEHtI,EAAO,CACL,YAAAyH,CACN,CAAK,EACM,IAAM,CACX,MAAMc,EAAYtI,EAAM,UAAYA,EAAM,QAAU0F,EAAY,OAAQ,CACtE,MAASnF,EAAG,EAAE,SAAS,EACvB,SAAY,IACZ,QAAW0H,EACX,UAAc5B,GAAO,CACfA,EAAG,OAAStB,EAAW,OACzBkD,GACH,CACT,EAAS,CAACvC,EAAYC,EAAQ,CACtB,MAASpF,EAAG,GAAG,WAAW,CAClC,EAAS,CACD,QAAS,IAAM,CAACmF,EAAY6C,GAAM,KAAM,IAAI,CAAC,CACrD,CAAO,CAAC,CAAC,EAAI,KACDC,EAAS9C,EAAY,MAAO,CAChC,MAAS,CAACnF,EAAG,EAAE,QAAQ,EAAGA,EAAG,GAAGP,EAAM,WAAW,CAAC,CAC1D,EAAS,CAACsI,EAAW5C,EAAYjD,GAAQ,CACjC,IAAOO,EACP,YAAewE,EAAY,MAC3B,SAAYxH,EAAM,SAClB,KAAQA,EAAM,KACd,MAAS,OAAO,OAAOsH,CAAK,EAC5B,QAAWtH,EAAM,QACjB,WAAc8H,EACd,YAAeE,CACvB,EAAS,IAAI,CAAC,CAAC,EACHS,EAAS/C,EAAY,MAAO,CAChC,MAASnF,EAAG,EAAE,SAAS,CACxB,EAAE,CAACmI,GAAWrB,EAAO,SAAS,CAAC,CAAC,EACjC,OAAO3B,EAAY,MAAO,CACxB,MAAS,CAACnF,EAAG,EAAG,EAAEA,EAAG,EAAEP,EAAM,WAAW,EAAG,CACzC,CAACO,EAAG,EAAE,MAAM,CAAC,EAAGP,EAAM,OAAS,OAC/B,CAACO,EAAG,EAAE,aAAa,CAAC,EAAGP,EAAM,OAAS,aAChD,CAAS,CACF,EAAE,CAAC,GAAGA,EAAM,cAAgB,SAAW,CAACwI,EAAQC,CAAM,EAAI,CAACA,EAAQD,CAAM,CAAC,CAAC,CAClF,CACG,CACH,CAAC,ECpKD,MAAMG,GAAenJ,EAAW,CAC9B,MAAO,CACL,KAAM,OACN,QAAS,EACV,EACD,KAAM,CACJ,KAAM,CAAC,OAAQ,MAAM,CACtB,EACD,SAAU,QACV,SAAU,QACV,KAAM,OACR,CAAC,ECHKoJ,GAAa,CAAC,KAAM,cAAe,iBAAiB,EACpDjJ,GAAc,CAClB,KAAM,WACR,EACMC,GAA4BC,EAAgB,CAChD,GAAGF,GACH,MAAOgJ,GACP,MAAM7I,EAAS,CACb,MAAME,EAAQF,EACRG,EAAiB,YACjBC,EAAWC,IACXkH,EAAQwB,KACRC,EAAWzI,EAAOf,CAAkB,EACrCwJ,GACHxI,EAAWL,EAAgB,4CAA4C,EACzE,MAAMM,EAAKC,EAAa,UAAU,EAC5BwF,EAAQtF,IACRqI,EAAazF,EAAS,IAAMtD,EAAM,UAAY8I,EAAS,MAAM,QAAQ,EACrEE,EAASC,GAAc,IAAM,CACjC,IAAI/H,EACJ,OAAO4H,EAAS,YAAY,UAAY5H,EAAKlB,EAAM,OAAS,KAAOkB,EAAK8E,EAAM,MACpF,CAAK,EACKkD,EAASxI,EAAIsI,EAAO,KAAK,EACzB/B,EAAW3D,EAAS,IAAM,CAC9B,IAAIpC,EACJ,OAAQA,EAAKlB,EAAM,OAAS,KAAOkB,EAAK8E,EAAM,KACpD,CAAK,EACKmD,EAAiBF,GAAc,IAAM,CAACjJ,EAAM,MAAQkJ,EAAO,OAASF,EAAO,KAAK,EACtFrH,EAAMqH,EAASI,GAAQ,CACjBA,IACFF,EAAO,MAAQ,GACvB,CAAK,EACD,MAAMnD,EAAOwB,GAAS,CACpB,IAAKrH,EAAS,IACd,MAAAmH,EACA,MAAArH,EACA,SAAAiH,EACA,OAAA+B,EACA,MAAAhD,EACA,WAAA+C,CACN,CAAK,EACD,OAAAxD,GAAU,IAAM,CACduD,EAAS,aAAa/C,CAAI,CAChC,CAAK,EACDsD,GAAY,IAAM,CAChBP,EAAS,eAAe/C,EAAK,GAAG,CACtC,CAAK,EACM,CAACjE,EAAMC,IACLI,EAAMgH,CAAc,EAAIG,IAAgBtH,GAAW,EAAEC,GAAmB,MAAO,CACpF,IAAK,EACL,GAAI,QAAQ,OAAAE,EAAM8E,CAAQ,GAC1B,MAAO/E,GAAeC,EAAM5B,CAAE,EAAE,EAAC,CAAE,EACnC,KAAM,WACN,cAAe,CAAC4B,EAAM6G,CAAM,EAC5B,kBAAmB,OAAO,OAAA7G,EAAM8E,CAAQ,EAChD,EAAS,CACDyB,GAAW5G,EAAK,OAAQ,SAAS,CACzC,EAAS,GAAI8G,EAAU,GAAI,CACnB,CAACW,GAAOpH,EAAM6G,CAAM,CAAC,CACtB,CAAA,EAAIQ,GAAmB,OAAQ,EAAI,CAEvC,CACH,CAAC,EACD,IAAIC,GAA0BnH,GAAY1C,GAAW,CAAC,CAAC,SAAU,uFAAuF,CAAC,CAAC,ECjErJ,MAAC8J,GAASC,GAAYxC,GAAM,CAC/B,QAAAsC,EACF,CAAC,EACKG,GAAYC,GAAgBJ,EAAO","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
@@ -1,2 +1,2 @@
1
- System.register(["./index-legacy-DC5-MYgp.js"],(function(e,t){"use strict";var a,l,r,s,i,o,n,b,d,_,c,p,v,h,f,m,g,u,x,w,y,k,T,I,R,$,N,P,z,C,B,S,L,E,F,A,j,K,O,M,V,q,H,U,Y,D,G,J;return{setters:[e=>{a=e.J,l=e.al,r=e.b2,s=e.N,i=e.d,o=e.ay,n=e.aj,b=e.b3,d=e.Q,_=e.r,c=e.$,p=e.au,v=e.b4,h=e.a,f=e.c,m=e.H,g=e.k,u=e.aD,x=e.b5,w=e.b6,y=e.b7,k=e.b8,T=e.O,I=e.o,R=e.aO,$=e.j,N=e.I,P=e.b9,z=e.ba,C=e.bb,B=e.am,S=e.Z,L=e.bc,E=e.ai,F=e.aS,A=e.T,j=e.aK,K=e.aM,O=e.aU,M=e.aG,V=e.bd,q=e.be,H=e.bf,U=e.a8,Y=e.a9,D=e.S,G=e.Y,J=e.aE}],execute:function(){var t=document.createElement("style");t.textContent='.el-tabs{--el-tabs-header-height:40px}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:var(--el-color-primary);z-index:1;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none}.el-tabs__new-tab{display:flex;align-items:center;justify-content:center;float:right;border:1px solid var(--el-border-color);height:20px;width:20px;line-height:20px;margin:10px 0 10px 10px;border-radius:3px;text-align:center;font-size:12px;color:var(--el-text-color-primary);cursor:pointer;transition:all .15s}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:var(--el-border-color-light);z-index:var(--el-index-normal)}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:var(--el-text-color-secondary)}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1)}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:var(--el-tabs-header-height);box-sizing:border-box;line-height:var(--el-tabs-header-height);display:inline-block;list-style:none;font-size:var(--el-font-size-base);font-weight:500;color:var(--el-text-color-primary);position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{border-radius:50%;text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-left:5px}.el-tabs__item .is-icon-close:before{transform:scale(.9);display:inline-block}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item .is-icon-close svg{margin-top:1px}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height)}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);border-bottom:none;border-radius:4px 4px 0 0;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border:1px solid transparent;margin-top:-1px;color:var(--el-text-color-secondary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after{left:auto;right:0}.el-tabs--left .el-tabs__active-bar.is-left{right:0;left:auto}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-right-color:#fff;border-left:none;border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid var(--el-border-color-light);border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-left-color:#fff;border-right:none;border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid var(--el-border-color-light);border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{-webkit-animation:slideInRight-enter var(--el-transition-duration);animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{position:absolute;left:0;right:0;-webkit-animation:slideInRight-leave var(--el-transition-duration);animation:slideInRight-leave var(--el-transition-duration)}.slideInLeft-enter{-webkit-animation:slideInLeft-enter var(--el-transition-duration);animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{position:absolute;left:0;right:0;-webkit-animation:slideInLeft-leave var(--el-transition-duration);animation:slideInLeft-leave var(--el-transition-duration)}@-webkit-keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@-webkit-keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@-webkit-keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@-webkit-keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}}\n',document.head.appendChild(t);const Q=Symbol("tabsRootContextKey"),W=a({tabs:{type:l(Array),default:()=>r([])}});var X=s(i({name:"ElTabBar",props:W,setup(e,{expose:t}){const a=e,l=o(),r=n(Q);r||b("ElTabBar","<el-tabs><el-tab-bar /></el-tabs>");const s=d("tabs"),i=_(),w=_(),y=()=>w.value=(()=>{let e=0,t=0;const s=["top","bottom"].includes(r.props.tabPosition)?"width":"height",i="width"===s?"x":"y";return a.tabs.every((r=>{var o,n,b,d;const _=null==(n=null==(o=l.parent)?void 0:o.refs)?void 0:n[`tab-${r.paneName}`];if(!_)return!1;if(!r.active)return!0;t=_[`client${x(s)}`];const c="x"===i?"left":"top";e=_.getBoundingClientRect()[c]-(null!=(d=null==(b=_.parentElement)?void 0:b.getBoundingClientRect()[c])?d:0);const p=window.getComputedStyle(_);return"width"===s&&(a.tabs.length>1&&(t-=Number.parseFloat(p.paddingLeft)+Number.parseFloat(p.paddingRight)),e+=Number.parseFloat(p.paddingLeft)),!1})),{[s]:`${t}px`,transform:`translate${x(i)}(${e}px)`}})();return c((()=>a.tabs),(async()=>{await p(),y()}),{immediate:!0}),v(i,(()=>y())),t({ref:i,update:y}),(e,t)=>(h(),f("div",{ref_key:"barRef",ref:i,class:m([g(s).e("active-bar"),g(s).is(g(r).props.tabPosition)]),style:u(w.value)},null,6))}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue"]]);const Z=a({panes:{type:l(Array),default:()=>r([])},currentName:{type:[String,Number],default:""},editable:Boolean,onTabClick:{type:l(Function),default:w},onTabRemove:{type:l(Function),default:w},type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean}),ee="ElTabNav",te=i({name:ee,props:Z,setup(e,{expose:t}){const a=o(),l=n(Q);l||b(ee,"<el-tabs><tab-nav /></el-tabs>");const r=d("tabs"),s=y(),i=k(),h=_(),f=_(),m=_(),g=_(!1),u=_(0),w=_(!1),S=_(!0),L=T((()=>["top","bottom"].includes(l.props.tabPosition)?"width":"height")),E=T((()=>({transform:`translate${"width"===L.value?"X":"Y"}(-${u.value}px)`}))),F=()=>{if(!h.value)return;const e=h.value[`offset${x(L.value)}`],t=u.value;if(!t)return;const a=t>e?t-e:0;u.value=a},A=()=>{if(!h.value||!f.value)return;const e=f.value[`offset${x(L.value)}`],t=h.value[`offset${x(L.value)}`],a=u.value;if(e-a<=t)return;const l=e-a>2*t?a+t:e-t;u.value=l},j=async()=>{const e=f.value;if(!(g.value&&m.value&&h.value&&e))return;await p();const t=m.value.querySelector(".is-active");if(!t)return;const a=h.value,r=["top","bottom"].includes(l.props.tabPosition),s=t.getBoundingClientRect(),i=a.getBoundingClientRect(),o=r?e.offsetWidth-i.width:e.offsetHeight-i.height,n=u.value;let b=n;r?(s.left<i.left&&(b=n-(i.left-s.left)),s.right>i.right&&(b=n+s.right-i.right)):(s.top<i.top&&(b=n-(i.top-s.top)),s.bottom>i.bottom&&(b=n+(s.bottom-i.bottom))),b=Math.max(b,0),u.value=Math.min(b,o)},K=()=>{if(!f.value||!h.value)return;const e=f.value[`offset${x(L.value)}`],t=h.value[`offset${x(L.value)}`],a=u.value;if(t<e){const a=u.value;g.value=g.value||{},g.value.prev=a,g.value.next=a+t<e,e-a<t&&(u.value=e-t)}else g.value=!1,a>0&&(u.value=0)},O=e=>{const t=e.code,{up:a,down:l,left:r,right:s}=B;if(![a,l,r,s].includes(t))return;const i=Array.from(e.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)")),o=i.indexOf(e.target);let n;n=t===r||t===a?0===o?i.length-1:o-1:o<i.length-1?o+1:0,i[n].focus(),i[n].click(),M()},M=()=>{S.value&&(w.value=!0)},V=()=>w.value=!1;return c(s,(e=>{"hidden"===e?S.value=!1:"visible"===e&&setTimeout((()=>S.value=!0),50)})),c(i,(e=>{e?setTimeout((()=>S.value=!0),50):S.value=!1})),v(m,K),I((()=>setTimeout((()=>j()),0))),R((()=>K())),t({scrollToActiveTab:j,removeFocus:V}),c((()=>e.panes),(()=>a.update()),{flush:"post"}),()=>{const t=g.value?[$("span",{class:[r.e("nav-prev"),r.is("disabled",!g.value.prev)],onClick:F},[$(N,null,{default:()=>[$(P,null,null)]})]),$("span",{class:[r.e("nav-next"),r.is("disabled",!g.value.next)],onClick:A},[$(N,null,{default:()=>[$(z,null,null)]})])]:null,a=e.panes.map(((t,a)=>{var s,i,o,n;const b=t.props.disabled,d=null!=(i=null!=(s=t.props.name)?s:t.index)?i:`${a}`,_=!b&&(t.isClosable||e.editable);t.index=`${a}`;const c=_?$(N,{class:"is-icon-close",onClick:a=>e.onTabRemove(t,a)},{default:()=>[$(C,null,null)]}):null,p=(null==(n=(o=t.slots).label)?void 0:n.call(o))||t.props.label,v=!b&&t.active?0:-1;return $("div",{ref:`tab-${d}`,class:[r.e("item"),r.is(l.props.tabPosition),r.is("active",t.active),r.is("disabled",b),r.is("closable",_),r.is("focus",w.value)],id:`tab-${d}`,key:`tab-${d}`,"aria-controls":`pane-${d}`,role:"tab","aria-selected":t.active,tabindex:v,onFocus:()=>M(),onBlur:()=>V(),onClick:a=>{V(),e.onTabClick(t,d,a)},onKeydown:a=>{!_||a.code!==B.delete&&a.code!==B.backspace||e.onTabRemove(t,a)}},[p,c])}));return $("div",{ref:m,class:[r.e("nav-wrap"),r.is("scrollable",!!g.value),r.is(l.props.tabPosition)]},[t,$("div",{class:r.e("nav-scroll"),ref:h},[$("div",{class:[r.e("nav"),r.is(l.props.tabPosition),r.is("stretch",e.stretch&&["top","bottom"].includes(l.props.tabPosition))],ref:f,style:E.value,role:"tablist",onKeydown:O},[e.type?null:$(X,{tabs:[...e.panes]},null),a])])])}}}),ae=a({type:{type:String,values:["card","border-card",""],default:""},activeName:{type:[String,Number]},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:l(Function),default:()=>!0},stretch:Boolean}),le=e=>O(e)||M(e);var re=i({name:"ElTabs",props:ae,emits:{[j]:e=>le(e),"tab-click":(e,t)=>t instanceof Event,"tab-change":e=>le(e),edit:(e,t)=>["remove","add"].includes(t),"tab-remove":e=>le(e),"tab-add":()=>!0},setup(e,{emit:t,slots:a,expose:l}){var r,s;const i=d("tabs"),o=_(),n=S({}),b=_(null!=(s=null!=(r=e.modelValue)?r:e.activeName)?s:"0"),v=async a=>{var l,r,s;if(b.value!==a&&!K(a))try{!1!==await(null==(l=e.beforeLeave)?void 0:l.call(e,a,b.value))&&((e=>{b.value=e,t(j,e),t("tab-change",e)})(a),null==(s=null==(r=o.value)?void 0:r.removeFocus)||s.call(r))}catch(i){}},h=(e,a,l)=>{e.props.disabled||(v(a),t("tab-click",e,l))},f=(e,a)=>{e.props.disabled||K(e.props.name)||(a.stopPropagation(),t("edit",e.props.name,"remove"),t("tab-remove",e.props.name))},m=()=>{t("edit",void 0,"add"),t("tab-add")};return L({from:'"activeName"',replacement:'"model-value" or "v-model"',scope:"ElTabs",version:"2.3.0",ref:"https://element-plus.org/en-US/component/tabs.html#attributes",type:"Attribute"},T((()=>!!e.activeName))),c((()=>e.activeName),(e=>v(e))),c((()=>e.modelValue),(e=>v(e))),c(b,(async()=>{var e;await p(),null==(e=o.value)||e.scrollToActiveTab()})),E(Q,{props:e,currentName:b,registerPane:e=>n[e.uid]=e,unregisterPane:e=>delete n[e]}),l({currentName:b}),()=>{const t=e.editable||e.addable?$("span",{class:i.e("new-tab"),tabindex:"0",onClick:m,onKeydown:e=>{e.code===B.enter&&m()}},[$(N,{class:i.is("icon-plus")},{default:()=>[$(F,null,null)]})]):null,l=$("div",{class:[i.e("header"),i.is(e.tabPosition)]},[t,$(te,{ref:o,currentName:b.value,editable:e.editable,type:e.type,panes:Object.values(n),stretch:e.stretch,onTabClick:h,onTabRemove:f},null)]),r=$("div",{class:i.e("content")},[A(a,"default")]);return $("div",{class:[i.b(),i.m(e.tabPosition),{[i.m("card")]:"card"===e.type,[i.m("border-card")]:"border-card"===e.type}]},[..."bottom"!==e.tabPosition?[l,r]:[r,l]])}}});const se=a({label:{type:String,default:""},name:{type:[String,Number]},closable:Boolean,disabled:Boolean,lazy:Boolean}),ie=["id","aria-hidden","aria-labelledby"];var oe=s(i({name:"ElTabPane",props:se,setup(e){const t=e,a=o(),l=V(),r=n(Q);r||b("ElTabPane","usage: <el-tabs><el-tab-pane /></el-tabs/>");const s=d("tab-pane"),i=_(),p=T((()=>t.closable||r.props.closable)),v=q((()=>{var e;return r.currentName.value===(null!=(e=t.name)?e:i.value)})),u=_(v.value),x=T((()=>{var e;return null!=(e=t.name)?e:i.value})),w=q((()=>!t.lazy||u.value||v.value));c(v,(e=>{e&&(u.value=!0)}));const y=S({uid:a.uid,slots:l,props:t,paneName:x,active:v,index:i,isClosable:p});return I((()=>{r.registerPane(y)})),H((()=>{r.unregisterPane(y.uid)})),(e,t)=>g(w)?U((h(),f("div",{key:0,id:`pane-${g(x)}`,class:m(g(s).b()),role:"tabpanel","aria-hidden":!g(v),"aria-labelledby":`tab-${g(x)}`},[A(e.$slots,"default")],10,ie)),[[Y,g(v)]]):D("v-if",!0)}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue"]]);e("a",G(re,{TabPane:oe})),e("E",J(oe))}}}));
2
- //# sourceMappingURL=el-tab-pane-legacy-usarmKVQ.js.map
1
+ System.register(["./index-legacy-B4IHsyj2.js"],(function(e,t){"use strict";var a,l,r,s,i,o,n,b,d,_,c,p,v,h,f,m,g,u,x,w,y,k,T,I,R,$,N,P,z,C,B,S,L,E,F,A,j,K,O,M,V,q,H,U,Y,D,G,J;return{setters:[e=>{a=e.J,l=e.al,r=e.b2,s=e.N,i=e.d,o=e.ay,n=e.aj,b=e.b3,d=e.Q,_=e.r,c=e.$,p=e.au,v=e.b4,h=e.a,f=e.c,m=e.H,g=e.k,u=e.aD,x=e.b5,w=e.b6,y=e.b7,k=e.b8,T=e.O,I=e.o,R=e.aO,$=e.j,N=e.I,P=e.b9,z=e.ba,C=e.bb,B=e.am,S=e.Z,L=e.bc,E=e.ai,F=e.aS,A=e.T,j=e.aK,K=e.aM,O=e.aU,M=e.aG,V=e.bd,q=e.be,H=e.bf,U=e.a8,Y=e.a9,D=e.S,G=e.Y,J=e.aE}],execute:function(){var t=document.createElement("style");t.textContent='.el-tabs{--el-tabs-header-height:40px}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:var(--el-color-primary);z-index:1;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none}.el-tabs__new-tab{display:flex;align-items:center;justify-content:center;float:right;border:1px solid var(--el-border-color);height:20px;width:20px;line-height:20px;margin:10px 0 10px 10px;border-radius:3px;text-align:center;font-size:12px;color:var(--el-text-color-primary);cursor:pointer;transition:all .15s}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:var(--el-border-color-light);z-index:var(--el-index-normal)}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:var(--el-text-color-secondary)}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1)}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:var(--el-tabs-header-height);box-sizing:border-box;line-height:var(--el-tabs-header-height);display:inline-block;list-style:none;font-size:var(--el-font-size-base);font-weight:500;color:var(--el-text-color-primary);position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{border-radius:50%;text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-left:5px}.el-tabs__item .is-icon-close:before{transform:scale(.9);display:inline-block}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item .is-icon-close svg{margin-top:1px}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height)}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);border-bottom:none;border-radius:4px 4px 0 0;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border:1px solid transparent;margin-top:-1px;color:var(--el-text-color-secondary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after{left:auto;right:0}.el-tabs--left .el-tabs__active-bar.is-left{right:0;left:auto}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-right-color:#fff;border-left:none;border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid var(--el-border-color-light);border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-left-color:#fff;border-right:none;border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid var(--el-border-color-light);border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{-webkit-animation:slideInRight-enter var(--el-transition-duration);animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{position:absolute;left:0;right:0;-webkit-animation:slideInRight-leave var(--el-transition-duration);animation:slideInRight-leave var(--el-transition-duration)}.slideInLeft-enter{-webkit-animation:slideInLeft-enter var(--el-transition-duration);animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{position:absolute;left:0;right:0;-webkit-animation:slideInLeft-leave var(--el-transition-duration);animation:slideInLeft-leave var(--el-transition-duration)}@-webkit-keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@-webkit-keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@-webkit-keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@-webkit-keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}}\n',document.head.appendChild(t);const Q=Symbol("tabsRootContextKey"),W=a({tabs:{type:l(Array),default:()=>r([])}});var X=s(i({name:"ElTabBar",props:W,setup(e,{expose:t}){const a=e,l=o(),r=n(Q);r||b("ElTabBar","<el-tabs><el-tab-bar /></el-tabs>");const s=d("tabs"),i=_(),w=_(),y=()=>w.value=(()=>{let e=0,t=0;const s=["top","bottom"].includes(r.props.tabPosition)?"width":"height",i="width"===s?"x":"y";return a.tabs.every((r=>{var o,n,b,d;const _=null==(n=null==(o=l.parent)?void 0:o.refs)?void 0:n[`tab-${r.paneName}`];if(!_)return!1;if(!r.active)return!0;t=_[`client${x(s)}`];const c="x"===i?"left":"top";e=_.getBoundingClientRect()[c]-(null!=(d=null==(b=_.parentElement)?void 0:b.getBoundingClientRect()[c])?d:0);const p=window.getComputedStyle(_);return"width"===s&&(a.tabs.length>1&&(t-=Number.parseFloat(p.paddingLeft)+Number.parseFloat(p.paddingRight)),e+=Number.parseFloat(p.paddingLeft)),!1})),{[s]:`${t}px`,transform:`translate${x(i)}(${e}px)`}})();return c((()=>a.tabs),(async()=>{await p(),y()}),{immediate:!0}),v(i,(()=>y())),t({ref:i,update:y}),(e,t)=>(h(),f("div",{ref_key:"barRef",ref:i,class:m([g(s).e("active-bar"),g(s).is(g(r).props.tabPosition)]),style:u(w.value)},null,6))}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue"]]);const Z=a({panes:{type:l(Array),default:()=>r([])},currentName:{type:[String,Number],default:""},editable:Boolean,onTabClick:{type:l(Function),default:w},onTabRemove:{type:l(Function),default:w},type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean}),ee="ElTabNav",te=i({name:ee,props:Z,setup(e,{expose:t}){const a=o(),l=n(Q);l||b(ee,"<el-tabs><tab-nav /></el-tabs>");const r=d("tabs"),s=y(),i=k(),h=_(),f=_(),m=_(),g=_(!1),u=_(0),w=_(!1),S=_(!0),L=T((()=>["top","bottom"].includes(l.props.tabPosition)?"width":"height")),E=T((()=>({transform:`translate${"width"===L.value?"X":"Y"}(-${u.value}px)`}))),F=()=>{if(!h.value)return;const e=h.value[`offset${x(L.value)}`],t=u.value;if(!t)return;const a=t>e?t-e:0;u.value=a},A=()=>{if(!h.value||!f.value)return;const e=f.value[`offset${x(L.value)}`],t=h.value[`offset${x(L.value)}`],a=u.value;if(e-a<=t)return;const l=e-a>2*t?a+t:e-t;u.value=l},j=async()=>{const e=f.value;if(!(g.value&&m.value&&h.value&&e))return;await p();const t=m.value.querySelector(".is-active");if(!t)return;const a=h.value,r=["top","bottom"].includes(l.props.tabPosition),s=t.getBoundingClientRect(),i=a.getBoundingClientRect(),o=r?e.offsetWidth-i.width:e.offsetHeight-i.height,n=u.value;let b=n;r?(s.left<i.left&&(b=n-(i.left-s.left)),s.right>i.right&&(b=n+s.right-i.right)):(s.top<i.top&&(b=n-(i.top-s.top)),s.bottom>i.bottom&&(b=n+(s.bottom-i.bottom))),b=Math.max(b,0),u.value=Math.min(b,o)},K=()=>{if(!f.value||!h.value)return;const e=f.value[`offset${x(L.value)}`],t=h.value[`offset${x(L.value)}`],a=u.value;if(t<e){const a=u.value;g.value=g.value||{},g.value.prev=a,g.value.next=a+t<e,e-a<t&&(u.value=e-t)}else g.value=!1,a>0&&(u.value=0)},O=e=>{const t=e.code,{up:a,down:l,left:r,right:s}=B;if(![a,l,r,s].includes(t))return;const i=Array.from(e.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)")),o=i.indexOf(e.target);let n;n=t===r||t===a?0===o?i.length-1:o-1:o<i.length-1?o+1:0,i[n].focus(),i[n].click(),M()},M=()=>{S.value&&(w.value=!0)},V=()=>w.value=!1;return c(s,(e=>{"hidden"===e?S.value=!1:"visible"===e&&setTimeout((()=>S.value=!0),50)})),c(i,(e=>{e?setTimeout((()=>S.value=!0),50):S.value=!1})),v(m,K),I((()=>setTimeout((()=>j()),0))),R((()=>K())),t({scrollToActiveTab:j,removeFocus:V}),c((()=>e.panes),(()=>a.update()),{flush:"post"}),()=>{const t=g.value?[$("span",{class:[r.e("nav-prev"),r.is("disabled",!g.value.prev)],onClick:F},[$(N,null,{default:()=>[$(P,null,null)]})]),$("span",{class:[r.e("nav-next"),r.is("disabled",!g.value.next)],onClick:A},[$(N,null,{default:()=>[$(z,null,null)]})])]:null,a=e.panes.map(((t,a)=>{var s,i,o,n;const b=t.props.disabled,d=null!=(i=null!=(s=t.props.name)?s:t.index)?i:`${a}`,_=!b&&(t.isClosable||e.editable);t.index=`${a}`;const c=_?$(N,{class:"is-icon-close",onClick:a=>e.onTabRemove(t,a)},{default:()=>[$(C,null,null)]}):null,p=(null==(n=(o=t.slots).label)?void 0:n.call(o))||t.props.label,v=!b&&t.active?0:-1;return $("div",{ref:`tab-${d}`,class:[r.e("item"),r.is(l.props.tabPosition),r.is("active",t.active),r.is("disabled",b),r.is("closable",_),r.is("focus",w.value)],id:`tab-${d}`,key:`tab-${d}`,"aria-controls":`pane-${d}`,role:"tab","aria-selected":t.active,tabindex:v,onFocus:()=>M(),onBlur:()=>V(),onClick:a=>{V(),e.onTabClick(t,d,a)},onKeydown:a=>{!_||a.code!==B.delete&&a.code!==B.backspace||e.onTabRemove(t,a)}},[p,c])}));return $("div",{ref:m,class:[r.e("nav-wrap"),r.is("scrollable",!!g.value),r.is(l.props.tabPosition)]},[t,$("div",{class:r.e("nav-scroll"),ref:h},[$("div",{class:[r.e("nav"),r.is(l.props.tabPosition),r.is("stretch",e.stretch&&["top","bottom"].includes(l.props.tabPosition))],ref:f,style:E.value,role:"tablist",onKeydown:O},[e.type?null:$(X,{tabs:[...e.panes]},null),a])])])}}}),ae=a({type:{type:String,values:["card","border-card",""],default:""},activeName:{type:[String,Number]},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:l(Function),default:()=>!0},stretch:Boolean}),le=e=>O(e)||M(e);var re=i({name:"ElTabs",props:ae,emits:{[j]:e=>le(e),"tab-click":(e,t)=>t instanceof Event,"tab-change":e=>le(e),edit:(e,t)=>["remove","add"].includes(t),"tab-remove":e=>le(e),"tab-add":()=>!0},setup(e,{emit:t,slots:a,expose:l}){var r,s;const i=d("tabs"),o=_(),n=S({}),b=_(null!=(s=null!=(r=e.modelValue)?r:e.activeName)?s:"0"),v=async a=>{var l,r,s;if(b.value!==a&&!K(a))try{!1!==await(null==(l=e.beforeLeave)?void 0:l.call(e,a,b.value))&&((e=>{b.value=e,t(j,e),t("tab-change",e)})(a),null==(s=null==(r=o.value)?void 0:r.removeFocus)||s.call(r))}catch(i){}},h=(e,a,l)=>{e.props.disabled||(v(a),t("tab-click",e,l))},f=(e,a)=>{e.props.disabled||K(e.props.name)||(a.stopPropagation(),t("edit",e.props.name,"remove"),t("tab-remove",e.props.name))},m=()=>{t("edit",void 0,"add"),t("tab-add")};return L({from:'"activeName"',replacement:'"model-value" or "v-model"',scope:"ElTabs",version:"2.3.0",ref:"https://element-plus.org/en-US/component/tabs.html#attributes",type:"Attribute"},T((()=>!!e.activeName))),c((()=>e.activeName),(e=>v(e))),c((()=>e.modelValue),(e=>v(e))),c(b,(async()=>{var e;await p(),null==(e=o.value)||e.scrollToActiveTab()})),E(Q,{props:e,currentName:b,registerPane:e=>n[e.uid]=e,unregisterPane:e=>delete n[e]}),l({currentName:b}),()=>{const t=e.editable||e.addable?$("span",{class:i.e("new-tab"),tabindex:"0",onClick:m,onKeydown:e=>{e.code===B.enter&&m()}},[$(N,{class:i.is("icon-plus")},{default:()=>[$(F,null,null)]})]):null,l=$("div",{class:[i.e("header"),i.is(e.tabPosition)]},[t,$(te,{ref:o,currentName:b.value,editable:e.editable,type:e.type,panes:Object.values(n),stretch:e.stretch,onTabClick:h,onTabRemove:f},null)]),r=$("div",{class:i.e("content")},[A(a,"default")]);return $("div",{class:[i.b(),i.m(e.tabPosition),{[i.m("card")]:"card"===e.type,[i.m("border-card")]:"border-card"===e.type}]},[..."bottom"!==e.tabPosition?[l,r]:[r,l]])}}});const se=a({label:{type:String,default:""},name:{type:[String,Number]},closable:Boolean,disabled:Boolean,lazy:Boolean}),ie=["id","aria-hidden","aria-labelledby"];var oe=s(i({name:"ElTabPane",props:se,setup(e){const t=e,a=o(),l=V(),r=n(Q);r||b("ElTabPane","usage: <el-tabs><el-tab-pane /></el-tabs/>");const s=d("tab-pane"),i=_(),p=T((()=>t.closable||r.props.closable)),v=q((()=>{var e;return r.currentName.value===(null!=(e=t.name)?e:i.value)})),u=_(v.value),x=T((()=>{var e;return null!=(e=t.name)?e:i.value})),w=q((()=>!t.lazy||u.value||v.value));c(v,(e=>{e&&(u.value=!0)}));const y=S({uid:a.uid,slots:l,props:t,paneName:x,active:v,index:i,isClosable:p});return I((()=>{r.registerPane(y)})),H((()=>{r.unregisterPane(y.uid)})),(e,t)=>g(w)?U((h(),f("div",{key:0,id:`pane-${g(x)}`,class:m(g(s).b()),role:"tabpanel","aria-hidden":!g(v),"aria-labelledby":`tab-${g(x)}`},[A(e.$slots,"default")],10,ie)),[[Y,g(v)]]):D("v-if",!0)}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue"]]);e("a",G(re,{TabPane:oe})),e("E",J(oe))}}}));
2
+ //# sourceMappingURL=el-tab-pane-legacy-CDSRCQdO.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"el-tab-pane-legacy-usarmKVQ.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-nav.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/index.mjs"],"sourcesContent":["const tabsRootContextKey = Symbol(\"tabsRootContextKey\");\n\nexport { tabsRootContextKey };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\n\nconst tabBarProps = buildProps({\n tabs: {\n type: definePropType(Array),\n default: () => mutable([])\n }\n});\n\nexport { tabBarProps };\n//# sourceMappingURL=tab-bar.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, watch, nextTick, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle } from 'vue';\nimport { useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabBarProps } from './tab-bar.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { capitalize } from '@vue/shared';\n\nconst __default__ = {\n name: \"ElTabBar\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabBarProps,\n setup(__props, { expose }) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabBar\";\n const instance = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, \"<el-tabs><el-tab-bar /></el-tabs>\");\n const ns = useNamespace(\"tabs\");\n const barRef = ref();\n const barStyle = ref();\n const getBarStyle = () => {\n let offset = 0;\n let tabSize = 0;\n const sizeName = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\";\n const sizeDir = sizeName === \"width\" ? \"x\" : \"y\";\n props.tabs.every((tab) => {\n var _a, _b, _c, _d;\n const $el = (_b = (_a = instance.parent) == null ? void 0 : _a.refs) == null ? void 0 : _b[`tab-${tab.paneName}`];\n if (!$el)\n return false;\n if (!tab.active) {\n return true;\n }\n tabSize = $el[`client${capitalize(sizeName)}`];\n const position = sizeDir === \"x\" ? \"left\" : \"top\";\n offset = $el.getBoundingClientRect()[position] - ((_d = (_c = $el.parentElement) == null ? void 0 : _c.getBoundingClientRect()[position]) != null ? _d : 0);\n const tabStyles = window.getComputedStyle($el);\n if (sizeName === \"width\") {\n if (props.tabs.length > 1) {\n tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);\n }\n offset += Number.parseFloat(tabStyles.paddingLeft);\n }\n return false;\n });\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`\n };\n };\n const update = () => barStyle.value = getBarStyle();\n watch(() => props.tabs, async () => {\n await nextTick();\n update();\n }, { immediate: true });\n useResizeObserver(barRef, () => update());\n expose({\n ref: barRef,\n update\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n ref_key: \"barRef\",\n ref: barRef,\n class: normalizeClass([unref(ns).e(\"active-bar\"), unref(ns).is(unref(rootTabs).props.tabPosition)]),\n style: normalizeStyle(barStyle.value)\n }, null, 6);\n };\n }\n});\nvar TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue\"]]);\n\nexport { TabBar as default };\n//# sourceMappingURL=tab-bar2.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, computed, nextTick, watch, onMounted, onUpdated, createVNode } from 'vue';\nimport { NOOP, capitalize } from '@vue/shared';\nimport { useDocumentVisibility, useWindowFocus, useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { ArrowLeft, ArrowRight, Close } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabBar from './tab-bar2.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabNavProps = buildProps({\n panes: {\n type: definePropType(Array),\n default: () => mutable([])\n },\n currentName: {\n type: [String, Number],\n default: \"\"\n },\n editable: Boolean,\n onTabClick: {\n type: definePropType(Function),\n default: NOOP\n },\n onTabRemove: {\n type: definePropType(Function),\n default: NOOP\n },\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n stretch: Boolean\n});\nconst COMPONENT_NAME = \"ElTabNav\";\nconst TabNav = defineComponent({\n name: COMPONENT_NAME,\n props: tabNavProps,\n setup(props, {\n expose\n }) {\n const vm = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, `<el-tabs><tab-nav /></el-tabs>`);\n const ns = useNamespace(\"tabs\");\n const visibility = useDocumentVisibility();\n const focused = useWindowFocus();\n const navScroll$ = ref();\n const nav$ = ref();\n const el$ = ref();\n const scrollable = ref(false);\n const navOffset = ref(0);\n const isFocus = ref(false);\n const focusable = ref(true);\n const sizeName = computed(() => [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\");\n const navStyle = computed(() => {\n const dir = sizeName.value === \"width\" ? \"X\" : \"Y\";\n return {\n transform: `translate${dir}(-${navOffset.value}px)`\n };\n });\n const scrollPrev = () => {\n if (!navScroll$.value)\n return;\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (!currentOffset)\n return;\n const newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;\n navOffset.value = newOffset;\n };\n const scrollNext = () => {\n if (!navScroll$.value || !nav$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (navSize - currentOffset <= containerSize)\n return;\n const newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;\n navOffset.value = newOffset;\n };\n const scrollToActiveTab = async () => {\n const nav = nav$.value;\n if (!scrollable.value || !el$.value || !navScroll$.value || !nav)\n return;\n await nextTick();\n const activeTab = el$.value.querySelector(\".is-active\");\n if (!activeTab)\n return;\n const navScroll = navScroll$.value;\n const isHorizontal = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition);\n const activeTabBounding = activeTab.getBoundingClientRect();\n const navScrollBounding = navScroll.getBoundingClientRect();\n const maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;\n const currentOffset = navOffset.value;\n let newOffset = currentOffset;\n if (isHorizontal) {\n if (activeTabBounding.left < navScrollBounding.left) {\n newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);\n }\n if (activeTabBounding.right > navScrollBounding.right) {\n newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;\n }\n } else {\n if (activeTabBounding.top < navScrollBounding.top) {\n newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);\n }\n if (activeTabBounding.bottom > navScrollBounding.bottom) {\n newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);\n }\n }\n newOffset = Math.max(newOffset, 0);\n navOffset.value = Math.min(newOffset, maxOffset);\n };\n const update = () => {\n if (!nav$.value || !navScroll$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (containerSize < navSize) {\n const currentOffset2 = navOffset.value;\n scrollable.value = scrollable.value || {};\n scrollable.value.prev = currentOffset2;\n scrollable.value.next = currentOffset2 + containerSize < navSize;\n if (navSize - currentOffset2 < containerSize) {\n navOffset.value = navSize - containerSize;\n }\n } else {\n scrollable.value = false;\n if (currentOffset > 0) {\n navOffset.value = 0;\n }\n }\n };\n const changeTab = (e) => {\n const code = e.code;\n const {\n up,\n down,\n left,\n right\n } = EVENT_CODE;\n if (![up, down, left, right].includes(code))\n return;\n const tabList = Array.from(e.currentTarget.querySelectorAll(\"[role=tab]:not(.is-disabled)\"));\n const currentIndex = tabList.indexOf(e.target);\n let nextIndex;\n if (code === left || code === up) {\n if (currentIndex === 0) {\n nextIndex = tabList.length - 1;\n } else {\n nextIndex = currentIndex - 1;\n }\n } else {\n if (currentIndex < tabList.length - 1) {\n nextIndex = currentIndex + 1;\n } else {\n nextIndex = 0;\n }\n }\n tabList[nextIndex].focus();\n tabList[nextIndex].click();\n setFocus();\n };\n const setFocus = () => {\n if (focusable.value)\n isFocus.value = true;\n };\n const removeFocus = () => isFocus.value = false;\n watch(visibility, (visibility2) => {\n if (visibility2 === \"hidden\") {\n focusable.value = false;\n } else if (visibility2 === \"visible\") {\n setTimeout(() => focusable.value = true, 50);\n }\n });\n watch(focused, (focused2) => {\n if (focused2) {\n setTimeout(() => focusable.value = true, 50);\n } else {\n focusable.value = false;\n }\n });\n useResizeObserver(el$, update);\n onMounted(() => setTimeout(() => scrollToActiveTab(), 0));\n onUpdated(() => update());\n expose({\n scrollToActiveTab,\n removeFocus\n });\n watch(() => props.panes, () => vm.update(), {\n flush: \"post\"\n });\n return () => {\n const scrollBtn = scrollable.value ? [createVNode(\"span\", {\n \"class\": [ns.e(\"nav-prev\"), ns.is(\"disabled\", !scrollable.value.prev)],\n \"onClick\": scrollPrev\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowLeft, null, null)]\n })]), createVNode(\"span\", {\n \"class\": [ns.e(\"nav-next\"), ns.is(\"disabled\", !scrollable.value.next)],\n \"onClick\": scrollNext\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowRight, null, null)]\n })])] : null;\n const tabs = props.panes.map((pane, index) => {\n var _a, _b, _c, _d;\n const disabled = pane.props.disabled;\n const tabName = (_b = (_a = pane.props.name) != null ? _a : pane.index) != null ? _b : `${index}`;\n const closable = !disabled && (pane.isClosable || props.editable);\n pane.index = `${index}`;\n const btnClose = closable ? createVNode(ElIcon, {\n \"class\": \"is-icon-close\",\n \"onClick\": (ev) => props.onTabRemove(pane, ev)\n }, {\n default: () => [createVNode(Close, null, null)]\n }) : null;\n const tabLabelContent = ((_d = (_c = pane.slots).label) == null ? void 0 : _d.call(_c)) || pane.props.label;\n const tabindex = !disabled && pane.active ? 0 : -1;\n return createVNode(\"div\", {\n \"ref\": `tab-${tabName}`,\n \"class\": [ns.e(\"item\"), ns.is(rootTabs.props.tabPosition), ns.is(\"active\", pane.active), ns.is(\"disabled\", disabled), ns.is(\"closable\", closable), ns.is(\"focus\", isFocus.value)],\n \"id\": `tab-${tabName}`,\n \"key\": `tab-${tabName}`,\n \"aria-controls\": `pane-${tabName}`,\n \"role\": \"tab\",\n \"aria-selected\": pane.active,\n \"tabindex\": tabindex,\n \"onFocus\": () => setFocus(),\n \"onBlur\": () => removeFocus(),\n \"onClick\": (ev) => {\n removeFocus();\n props.onTabClick(pane, tabName, ev);\n },\n \"onKeydown\": (ev) => {\n if (closable && (ev.code === EVENT_CODE.delete || ev.code === EVENT_CODE.backspace)) {\n props.onTabRemove(pane, ev);\n }\n }\n }, [...[tabLabelContent, btnClose]]);\n });\n return createVNode(\"div\", {\n \"ref\": el$,\n \"class\": [ns.e(\"nav-wrap\"), ns.is(\"scrollable\", !!scrollable.value), ns.is(rootTabs.props.tabPosition)]\n }, [scrollBtn, createVNode(\"div\", {\n \"class\": ns.e(\"nav-scroll\"),\n \"ref\": navScroll$\n }, [createVNode(\"div\", {\n \"class\": [ns.e(\"nav\"), ns.is(rootTabs.props.tabPosition), ns.is(\"stretch\", props.stretch && [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition))],\n \"ref\": nav$,\n \"style\": navStyle.value,\n \"role\": \"tablist\",\n \"onKeydown\": changeTab\n }, [...[!props.type ? createVNode(TabBar, {\n \"tabs\": [...props.panes]\n }, null) : null, tabs]])])]);\n };\n }\n});\n\nexport { TabNav as default, tabNavProps };\n//# sourceMappingURL=tab-nav.mjs.map\n","import { defineComponent, ref, reactive, computed, watch, nextTick, provide, createVNode, renderSlot } from 'vue';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { Plus } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabNav from './tab-nav.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber } from '@vueuse/core';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { isUndefined } from '../../../utils/types.mjs';\nimport { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabsProps = buildProps({\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n activeName: {\n type: [String, Number]\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number]\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: [\"top\", \"right\", \"bottom\", \"left\"],\n default: \"top\"\n },\n beforeLeave: {\n type: definePropType(Function),\n default: () => true\n },\n stretch: Boolean\n});\nconst isPanelName = (value) => isString(value) || isNumber(value);\nconst tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name) => isPanelName(name),\n \"tab-click\": (pane, ev) => ev instanceof Event,\n \"tab-change\": (name) => isPanelName(name),\n edit: (paneName, action) => [\"remove\", \"add\"].includes(action),\n \"tab-remove\": (name) => isPanelName(name),\n \"tab-add\": () => true\n};\nvar Tabs = defineComponent({\n name: \"ElTabs\",\n props: tabsProps,\n emits: tabsEmits,\n setup(props, {\n emit,\n slots,\n expose\n }) {\n var _a, _b;\n const ns = useNamespace(\"tabs\");\n const nav$ = ref();\n const panes = reactive({});\n const currentName = ref((_b = (_a = props.modelValue) != null ? _a : props.activeName) != null ? _b : \"0\");\n const changeCurrentName = (value) => {\n currentName.value = value;\n emit(UPDATE_MODEL_EVENT, value);\n emit(\"tab-change\", value);\n };\n const setCurrentName = async (value) => {\n var _a2, _b2, _c;\n if (currentName.value === value || isUndefined(value))\n return;\n try {\n const canLeave = await ((_a2 = props.beforeLeave) == null ? void 0 : _a2.call(props, value, currentName.value));\n if (canLeave !== false) {\n changeCurrentName(value);\n (_c = (_b2 = nav$.value) == null ? void 0 : _b2.removeFocus) == null ? void 0 : _c.call(_b2);\n }\n } catch (e) {\n }\n };\n const handleTabClick = (tab, tabName, event) => {\n if (tab.props.disabled)\n return;\n setCurrentName(tabName);\n emit(\"tab-click\", tab, event);\n };\n const handleTabRemove = (pane, ev) => {\n if (pane.props.disabled || isUndefined(pane.props.name))\n return;\n ev.stopPropagation();\n emit(\"edit\", pane.props.name, \"remove\");\n emit(\"tab-remove\", pane.props.name);\n };\n const handleTabAdd = () => {\n emit(\"edit\", void 0, \"add\");\n emit(\"tab-add\");\n };\n useDeprecated({\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: \"ElTabs\",\n version: \"2.3.0\",\n ref: \"https://element-plus.org/en-US/component/tabs.html#attributes\",\n type: \"Attribute\"\n }, computed(() => !!props.activeName));\n watch(() => props.activeName, (modelValue) => setCurrentName(modelValue));\n watch(() => props.modelValue, (modelValue) => setCurrentName(modelValue));\n watch(currentName, async () => {\n var _a2;\n await nextTick();\n (_a2 = nav$.value) == null ? void 0 : _a2.scrollToActiveTab();\n });\n {\n const registerPane = (pane) => panes[pane.uid] = pane;\n const unregisterPane = (uid) => delete panes[uid];\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane\n });\n }\n expose({\n currentName\n });\n return () => {\n const newButton = props.editable || props.addable ? createVNode(\"span\", {\n \"class\": ns.e(\"new-tab\"),\n \"tabindex\": \"0\",\n \"onClick\": handleTabAdd,\n \"onKeydown\": (ev) => {\n if (ev.code === EVENT_CODE.enter)\n handleTabAdd();\n }\n }, [createVNode(ElIcon, {\n \"class\": ns.is(\"icon-plus\")\n }, {\n default: () => [createVNode(Plus, null, null)]\n })]) : null;\n const header = createVNode(\"div\", {\n \"class\": [ns.e(\"header\"), ns.is(props.tabPosition)]\n }, [newButton, createVNode(TabNav, {\n \"ref\": nav$,\n \"currentName\": currentName.value,\n \"editable\": props.editable,\n \"type\": props.type,\n \"panes\": Object.values(panes),\n \"stretch\": props.stretch,\n \"onTabClick\": handleTabClick,\n \"onTabRemove\": handleTabRemove\n }, null)]);\n const panels = createVNode(\"div\", {\n \"class\": ns.e(\"content\")\n }, [renderSlot(slots, \"default\")]);\n return createVNode(\"div\", {\n \"class\": [ns.b(), ns.m(props.tabPosition), {\n [ns.m(\"card\")]: props.type === \"card\",\n [ns.m(\"border-card\")]: props.type === \"border-card\"\n }]\n }, [...props.tabPosition !== \"bottom\" ? [header, panels] : [panels, header]]);\n };\n }\n});\n\nexport { Tabs as default, tabsEmits, tabsProps };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst tabPaneProps = buildProps({\n label: {\n type: String,\n default: \"\"\n },\n name: {\n type: [String, Number]\n },\n closable: Boolean,\n disabled: Boolean,\n lazy: Boolean\n});\n\nexport { tabPaneProps };\n//# sourceMappingURL=tab-pane.mjs.map\n","import { defineComponent, getCurrentInstance, useSlots, inject, ref, computed, watch, reactive, onMounted, onUnmounted, unref, withDirectives, openBlock, createElementBlock, normalizeClass, renderSlot, vShow, createCommentVNode } from 'vue';\nimport { eagerComputed } from '@vueuse/core';\nimport '../../../tokens/index.mjs';\nimport '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabPaneProps } from './tab-pane.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElTabPane\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabPaneProps,\n setup(__props) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabPane\";\n const instance = getCurrentInstance();\n const slots = useSlots();\n const tabsRoot = inject(tabsRootContextKey);\n if (!tabsRoot)\n throwError(COMPONENT_NAME, \"usage: <el-tabs><el-tab-pane /></el-tabs/>\");\n const ns = useNamespace(\"tab-pane\");\n const index = ref();\n const isClosable = computed(() => props.closable || tabsRoot.props.closable);\n const active = eagerComputed(() => {\n var _a;\n return tabsRoot.currentName.value === ((_a = props.name) != null ? _a : index.value);\n });\n const loaded = ref(active.value);\n const paneName = computed(() => {\n var _a;\n return (_a = props.name) != null ? _a : index.value;\n });\n const shouldBeRender = eagerComputed(() => !props.lazy || loaded.value || active.value);\n watch(active, (val) => {\n if (val)\n loaded.value = true;\n });\n const pane = reactive({\n uid: instance.uid,\n slots,\n props,\n paneName,\n active,\n index,\n isClosable\n });\n onMounted(() => {\n tabsRoot.registerPane(pane);\n });\n onUnmounted(() => {\n tabsRoot.unregisterPane(pane.uid);\n });\n return (_ctx, _cache) => {\n return unref(shouldBeRender) ? withDirectives((openBlock(), createElementBlock(\"div\", {\n key: 0,\n id: `pane-${unref(paneName)}`,\n class: normalizeClass(unref(ns).b()),\n role: \"tabpanel\",\n \"aria-hidden\": !unref(active),\n \"aria-labelledby\": `tab-${unref(paneName)}`\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1)), [\n [vShow, unref(active)]\n ]) : createCommentVNode(\"v-if\", true);\n };\n }\n});\nvar TabPane = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue\"]]);\n\nexport { TabPane as default };\n//# sourceMappingURL=tab-pane2.mjs.map\n","import '../../utils/index.mjs';\nimport Tabs from './src/tabs.mjs';\nexport { tabsEmits, tabsProps } from './src/tabs.mjs';\nimport TabPane from './src/tab-pane2.mjs';\nexport { tabBarProps } from './src/tab-bar.mjs';\nexport { tabNavProps } from './src/tab-nav.mjs';\nexport { tabPaneProps } from './src/tab-pane.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElTabs = withInstall(Tabs, {\n TabPane\n});\nconst ElTabPane = withNoopInstall(TabPane);\n\nexport { ElTabPane, ElTabs, ElTabs as default };\n//# sourceMappingURL=index.mjs.map\n"],"names":["tabsRootContextKey","Symbol","tabBarProps","buildProps","tabs","type","definePropType","Array","default","mutable","TabBar","_export_sfc","defineComponent","name","props","setup","__props","expose","instance","getCurrentInstance","rootTabs","inject","throwError","ns","useNamespace","barRef","ref","barStyle","update","value","getBarStyle","offset","tabSize","sizeName","includes","tabPosition","sizeDir","every","tab","_a","_b","_c","_d","$el","parent","refs","paneName","active","capitalize","position","getBoundingClientRect","parentElement","tabStyles","window","getComputedStyle","length","Number","parseFloat","paddingLeft","paddingRight","transform","watch","async","nextTick","immediate","useResizeObserver","_ctx","_cache","openBlock","createElementBlock","ref_key","class","normalizeClass","unref","e","is","style","normalizeStyle","tabNavProps","panes","currentName","String","editable","Boolean","onTabClick","Function","NOOP","onTabRemove","values","stretch","COMPONENT_NAME","TabNav","vm","visibility","useDocumentVisibility","focused","useWindowFocus","navScroll$","nav$","el$","scrollable","navOffset","isFocus","focusable","computed","navStyle","scrollPrev","containerSize","currentOffset","newOffset","scrollNext","navSize","scrollToActiveTab","nav","activeTab","querySelector","navScroll","isHorizontal","activeTabBounding","navScrollBounding","maxOffset","offsetWidth","width","offsetHeight","height","left","right","top","bottom","Math","max","min","currentOffset2","prev","next","changeTab","code","up","down","EVENT_CODE","tabList","from","currentTarget","querySelectorAll","currentIndex","indexOf","target","nextIndex","focus","click","setFocus","removeFocus","visibility2","setTimeout","focused2","onMounted","onUpdated","flush","scrollBtn","createVNode","onClick","ElIcon","ArrowLeft","ArrowRight","map","pane","index","disabled","tabName","closable","isClosable","btnClose","ev","Close","tabLabelContent","slots","label","call","tabindex","id","key","role","onFocus","onBlur","onKeydown","delete","backspace","tabsProps","activeName","addable","modelValue","beforeLeave","isPanelName","isString","isNumber","Tabs","emits","UPDATE_MODEL_EVENT","tab-click","Event","edit","action","tab-add","emit","reactive","setCurrentName","_a2","_b2","isUndefined","changeCurrentName","handleTabClick","event","handleTabRemove","stopPropagation","handleTabAdd","useDeprecated","replacement","scope","version","provide","registerPane","uid","unregisterPane","newButton","enter","Plus","header","Object","panels","renderSlot","b","m","tabPaneProps","lazy","_hoisted_1","TabPane","useSlots","tabsRoot","eagerComputed","loaded","shouldBeRender","val","onUnmounted","withDirectives","$slots","vShow","createCommentVNode","exports","withInstall","withNoopInstall"],"mappings":"w5gBAAA,MAAMA,EAAqBC,OAAO,sBCI5BC,EAAcC,EAAW,CAC7BC,KAAM,CACJC,KAAMC,EAAeC,OACrBC,QAASA,IAAMC,EAAQ,OCuE3B,IAAIC,EAAyBC,EA/DKC,EAAgB,CAFhDC,KAAM,WAINC,MAAOZ,EACPa,KAAAA,CAAMC,GAASC,OAAEA,IACf,MAAMH,EAAQE,EAERE,EAAWC,IACXC,EAAWC,EAAOrB,GACnBoB,GACHE,EAJqB,WAIM,qCAC7B,MAAMC,EAAKC,EAAa,QAClBC,EAASC,IACTC,EAAWD,IA+BXE,EAASA,IAAMD,EAASE,MA9BVC,MAClB,IAAIC,EAAS,EACTC,EAAU,EACd,MAAMC,EAAW,CAAC,MAAO,UAAUC,SAASd,EAASN,MAAMqB,aAAe,QAAU,SAC9EC,EAAuB,UAAbH,EAAuB,IAAM,IAqB7C,OApBAnB,EAAMV,KAAKiC,OAAOC,IAChB,IAAIC,EAAIC,EAAIC,EAAIC,EAChB,MAAMC,EAAkE,OAA3DH,EAA+B,OAAzBD,EAAKrB,EAAS0B,aAAkB,EAASL,EAAGM,WAAgB,EAASL,EAAG,OAAOF,EAAIQ,YACtG,IAAKH,EACH,OAAY,EACd,IAAKL,EAAIS,OACP,OAAO,EAETf,EAAUW,EAAI,SAASK,EAAWf,MAClC,MAAMgB,EAAuB,MAAZb,EAAkB,OAAS,MAC5CL,EAASY,EAAIO,wBAAwBD,IAAwG,OAA1FP,EAAiC,OAA3BD,EAAKE,EAAIQ,oBAAyB,EAASV,EAAGS,wBAAwBD,IAAqBP,EAAK,GACzJ,MAAMU,EAAYC,OAAOC,iBAAiBX,GAO1C,MANiB,UAAbV,IACEnB,EAAMV,KAAKmD,OAAS,IACtBvB,GAAWwB,OAAOC,WAAWL,EAAUM,aAAeF,OAAOC,WAAWL,EAAUO,eAEpF5B,GAAUyB,OAAOC,WAAWL,EAAUM,eAEjC,CAAK,IAEP,CACLzB,CAACA,GAAW,GAAGD,MACf4B,UAAW,YAAYZ,EAAWZ,MAAYL,OAC/C,EAEmCD,GAUtC,OATA+B,GAAM,IAAM/C,EAAMV,OAAM0D,gBAChBC,IACNnC,GAAQ,GACP,CAAEoC,WAAW,IAChBC,EAAkBxC,GAAQ,IAAMG,MAChCX,EAAO,CACLS,IAAKD,EACLG,WAEK,CAACsC,EAAMC,KACLC,IAAaC,EAAmB,MAAO,CAC5CC,QAAS,SACT5C,IAAKD,EACL8C,MAAOC,EAAe,CAACC,EAAMlD,GAAImD,EAAE,cAAeD,EAAMlD,GAAIoD,GAAGF,EAAMrD,GAAUN,MAAMqB,eACrFyC,MAAOC,EAAelD,EAASE,QAC9B,KAAM,GAEZ,IAEiD,CAAC,CAAC,SAAU,0FC7DhE,MAAMiD,EAAc3E,EAAW,CAC7B4E,MAAO,CACL1E,KAAMC,EAAeC,OACrBC,QAASA,IAAMC,EAAQ,KAEzBuE,YAAa,CACX3E,KAAM,CAAC4E,OAAQzB,QACfhD,QAAS,IAEX0E,SAAUC,QACVC,WAAY,CACV/E,KAAMC,EAAe+E,UACrB7E,QAAS8E,GAEXC,YAAa,CACXlF,KAAMC,EAAe+E,UACrB7E,QAAS8E,GAEXjF,KAAM,CACJA,KAAM4E,OACNO,OAAQ,CAAC,OAAQ,cAAe,IAChChF,QAAS,IAEXiF,QAASN,UAELO,GAAiB,WACjBC,GAAS/E,EAAgB,CAC7BC,KAAM6E,GACN5E,MAAOgE,EACP/D,KAAAA,CAAMD,GAAOG,OACXA,IAEA,MAAM2E,EAAKzE,IACLC,EAAWC,EAAOrB,GACnBoB,GACHE,EAAWoE,GAAgB,kCAC7B,MAAMnE,EAAKC,EAAa,QAClBqE,EAAaC,IACbC,EAAUC,IACVC,EAAavE,IACbwE,EAAOxE,IACPyE,EAAMzE,IACN0E,EAAa1E,GAAI,GACjB2E,EAAY3E,EAAI,GAChB4E,EAAU5E,GAAI,GACd6E,EAAY7E,GAAI,GAChBO,EAAWuE,GAAS,IAAM,CAAC,MAAO,UAAUtE,SAASd,EAASN,MAAMqB,aAAe,QAAU,WAC7FsE,EAAWD,GAAS,KAEjB,CACL5C,UAAW,YAFkB,UAAnB3B,EAASJ,MAAoB,IAAM,QAEdwE,EAAUxE,eAGvC6E,EAAaA,KACjB,IAAKT,EAAWpE,MACd,OACF,MAAM8E,EAAgBV,EAAWpE,MAAM,SAASmB,EAAWf,EAASJ,UAC9D+E,EAAgBP,EAAUxE,MAChC,IAAK+E,EACH,OACF,MAAMC,EAAYD,EAAgBD,EAAgBC,EAAgBD,EAAgB,EAClFN,EAAUxE,MAAQgF,CAAS,EAEvBC,EAAaA,KACjB,IAAKb,EAAWpE,QAAUqE,EAAKrE,MAC7B,OACF,MAAMkF,EAAUb,EAAKrE,MAAM,SAASmB,EAAWf,EAASJ,UAClD8E,EAAgBV,EAAWpE,MAAM,SAASmB,EAAWf,EAASJ,UAC9D+E,EAAgBP,EAAUxE,MAChC,GAAIkF,EAAUH,GAAiBD,EAC7B,OACF,MAAME,EAAYE,EAAUH,EAAgC,EAAhBD,EAAoBC,EAAgBD,EAAgBI,EAAUJ,EAC1GN,EAAUxE,MAAQgF,CAAS,EAEvBG,EAAoBlD,UACxB,MAAMmD,EAAMf,EAAKrE,MACjB,KAAKuE,EAAWvE,OAAUsE,EAAItE,OAAUoE,EAAWpE,OAAUoF,GAC3D,aACIlD,IACN,MAAMmD,EAAYf,EAAItE,MAAMsF,cAAc,cAC1C,IAAKD,EACH,OACF,MAAME,EAAYnB,EAAWpE,MACvBwF,EAAe,CAAC,MAAO,UAAUnF,SAASd,EAASN,MAAMqB,aACzDmF,EAAoBJ,EAAUhE,wBAC9BqE,EAAoBH,EAAUlE,wBAC9BsE,EAAYH,EAAeJ,EAAIQ,YAAcF,EAAkBG,MAAQT,EAAIU,aAAeJ,EAAkBK,OAC5GhB,EAAgBP,EAAUxE,MAChC,IAAIgF,EAAYD,EACZS,GACEC,EAAkBO,KAAON,EAAkBM,OAC7ChB,EAAYD,GAAiBW,EAAkBM,KAAOP,EAAkBO,OAEtEP,EAAkBQ,MAAQP,EAAkBO,QAC9CjB,EAAYD,EAAgBU,EAAkBQ,MAAQP,EAAkBO,SAGtER,EAAkBS,IAAMR,EAAkBQ,MAC5ClB,EAAYD,GAAiBW,EAAkBQ,IAAMT,EAAkBS,MAErET,EAAkBU,OAAST,EAAkBS,SAC/CnB,EAAYD,GAAiBU,EAAkBU,OAAST,EAAkBS,UAG9EnB,EAAYoB,KAAKC,IAAIrB,EAAW,GAChCR,EAAUxE,MAAQoG,KAAKE,IAAItB,EAAWW,EAAU,EAE5C5F,EAASA,KACb,IAAKsE,EAAKrE,QAAUoE,EAAWpE,MAC7B,OACF,MAAMkF,EAAUb,EAAKrE,MAAM,SAASmB,EAAWf,EAASJ,UAClD8E,EAAgBV,EAAWpE,MAAM,SAASmB,EAAWf,EAASJ,UAC9D+E,EAAgBP,EAAUxE,MAChC,GAAI8E,EAAgBI,EAAS,CAC3B,MAAMqB,EAAiB/B,EAAUxE,MACjCuE,EAAWvE,MAAQuE,EAAWvE,OAAS,CAAA,EACvCuE,EAAWvE,MAAMwG,KAAOD,EACxBhC,EAAWvE,MAAMyG,KAAOF,EAAiBzB,EAAgBI,EACrDA,EAAUqB,EAAiBzB,IAC7BN,EAAUxE,MAAQkF,EAAUJ,EAEtC,MACQP,EAAWvE,OAAQ,EACf+E,EAAgB,IAClBP,EAAUxE,MAAQ,EAErB,EAEG0G,EAAa7D,IACjB,MAAM8D,EAAO9D,EAAE8D,MACTC,GACJA,EAAEC,KACFA,EAAIb,KACJA,EAAIC,MACJA,GACEa,EACJ,IAAK,CAACF,EAAIC,EAAMb,EAAMC,GAAO5F,SAASsG,GACpC,OACF,MAAMI,EAAUrI,MAAMsI,KAAKnE,EAAEoE,cAAcC,iBAAiB,iCACtDC,EAAeJ,EAAQK,QAAQvE,EAAEwE,QACvC,IAAIC,EAGAA,EAFAX,IAASX,GAAQW,IAASC,EACP,IAAjBO,EACUJ,EAAQrF,OAAS,EAEjByF,EAAe,EAGzBA,EAAeJ,EAAQrF,OAAS,EACtByF,EAAe,EAEf,EAGhBJ,EAAQO,GAAWC,QACnBR,EAAQO,GAAWE,QACnBC,GAAU,EAENA,EAAWA,KACX/C,EAAU1E,QACZyE,EAAQzE,OAAQ,EAAI,EAElB0H,EAAcA,IAAMjD,EAAQzE,OAAQ,EAyB1C,OAxBAgC,EAAMgC,GAAa2D,IACG,WAAhBA,EACFjD,EAAU1E,OAAQ,EACO,YAAhB2H,GACTC,YAAW,IAAMlD,EAAU1E,OAAQ,GAAM,GAC1C,IAEHgC,EAAMkC,GAAU2D,IACVA,EACFD,YAAW,IAAMlD,EAAU1E,OAAQ,GAAM,IAEzC0E,EAAU1E,OAAQ,CACnB,IAEHoC,EAAkBkC,EAAKvE,GACvB+H,GAAU,IAAMF,YAAW,IAAMzC,KAAqB,KACtD4C,GAAU,IAAMhI,MAChBX,EAAO,CACL+F,oBACAuC,gBAEF1F,GAAM,IAAM/C,EAAMiE,QAAO,IAAMa,EAAGhE,UAAU,CAC1CiI,MAAO,SAEF,KACL,MAAMC,EAAY1D,EAAWvE,MAAQ,CAACkI,EAAY,OAAQ,CACxDxF,MAAS,CAAChD,EAAGmD,EAAE,YAAanD,EAAGoD,GAAG,YAAayB,EAAWvE,MAAMwG,OAChE2B,QAAWtD,GACV,CAACqD,EAAYE,EAAQ,KAAM,CAC5BzJ,QAASA,IAAM,CAACuJ,EAAYG,EAAW,KAAM,WACzCH,EAAY,OAAQ,CACxBxF,MAAS,CAAChD,EAAGmD,EAAE,YAAanD,EAAGoD,GAAG,YAAayB,EAAWvE,MAAMyG,OAChE0B,QAAWlD,GACV,CAACiD,EAAYE,EAAQ,KAAM,CAC5BzJ,QAASA,IAAM,CAACuJ,EAAYI,EAAY,KAAM,YACxC,KACF/J,EAAOU,EAAMiE,MAAMqF,KAAI,CAACC,EAAMC,KAClC,IAAI/H,EAAIC,EAAIC,EAAIC,EAChB,MAAM6H,EAAWF,EAAKvJ,MAAMyJ,SACtBC,EAAqE,OAA1DhI,EAA+B,OAAzBD,EAAK8H,EAAKvJ,MAAMD,MAAgB0B,EAAK8H,EAAKC,OAAiB9H,EAAK,GAAG8H,IACpFG,GAAYF,IAAaF,EAAKK,YAAc5J,EAAMoE,UACxDmF,EAAKC,MAAQ,GAAGA,IAChB,MAAMK,EAAWF,EAAWV,EAAYE,EAAQ,CAC9C1F,MAAS,gBACTyF,QAAYY,GAAO9J,EAAMyE,YAAY8E,EAAMO,IAC1C,CACDpK,QAASA,IAAM,CAACuJ,EAAYc,EAAO,KAAM,SACtC,KACCC,GAAqD,OAAjCpI,GAAMD,EAAK4H,EAAKU,OAAOC,YAAiB,EAAStI,EAAGuI,KAAKxI,KAAQ4H,EAAKvJ,MAAMkK,MAChGE,GAAYX,GAAYF,EAAKtH,OAAS,GAAK,EACjD,OAAOgH,EAAY,MAAO,CACxBrI,IAAO,OAAO8I,IACdjG,MAAS,CAAChD,EAAGmD,EAAE,QAASnD,EAAGoD,GAAGvD,EAASN,MAAMqB,aAAcZ,EAAGoD,GAAG,SAAU0F,EAAKtH,QAASxB,EAAGoD,GAAG,WAAY4F,GAAWhJ,EAAGoD,GAAG,WAAY8F,GAAWlJ,EAAGoD,GAAG,QAAS2B,EAAQzE,QAC1KsJ,GAAM,OAAOX,IACbY,IAAO,OAAOZ,IACd,gBAAiB,QAAQA,IACzBa,KAAQ,MACR,gBAAiBhB,EAAKtH,OACtBmI,SAAYA,EACZI,QAAWA,IAAMhC,IACjBiC,OAAUA,IAAMhC,IAChBS,QAAYY,IACVrB,IACAzI,EAAMsE,WAAWiF,EAAMG,EAASI,EAAG,EAErCY,UAAcZ,KACRH,GAAaG,EAAGpC,OAASG,EAAW8C,QAAUb,EAAGpC,OAASG,EAAW+C,WACvE5K,EAAMyE,YAAY8E,EAAMO,EACzB,GAEF,CAAKE,EAAiBH,GAAW,IAEtC,OAAOZ,EAAY,MAAO,CACxBrI,IAAOyE,EACP5B,MAAS,CAAChD,EAAGmD,EAAE,YAAanD,EAAGoD,GAAG,eAAgByB,EAAWvE,OAAQN,EAAGoD,GAAGvD,EAASN,MAAMqB,eACzF,CAAC2H,EAAWC,EAAY,MAAO,CAChCxF,MAAShD,EAAGmD,EAAE,cACdhD,IAAOuE,GACN,CAAC8D,EAAY,MAAO,CACrBxF,MAAS,CAAChD,EAAGmD,EAAE,OAAQnD,EAAGoD,GAAGvD,EAASN,MAAMqB,aAAcZ,EAAGoD,GAAG,UAAW7D,EAAM2E,SAAW,CAAC,MAAO,UAAUvD,SAASd,EAASN,MAAMqB,eACtIT,IAAOwE,EACPtB,MAAS6B,EAAS5E,MAClBwJ,KAAQ,UACRG,UAAajD,GACZ,CAAMzH,EAAMT,KAEJ,KAFW0J,EAAYrJ,EAAQ,CACxCN,KAAQ,IAAIU,EAAMiE,QACjB,MAAc3E,OAAW,CAE/B,IC1PGuL,GAAYxL,EAAW,CAC3BE,KAAM,CACJA,KAAM4E,OACNO,OAAQ,CAAC,OAAQ,cAAe,IAChChF,QAAS,IAEXoL,WAAY,CACVvL,KAAM,CAAC4E,OAAQzB,SAEjBiH,SAAUtF,QACV0G,QAAS1G,QACT2G,WAAY,CACVzL,KAAM,CAAC4E,OAAQzB,SAEjB0B,SAAUC,QACVhD,YAAa,CACX9B,KAAM4E,OACNO,OAAQ,CAAC,MAAO,QAAS,SAAU,QACnChF,QAAS,OAEXuL,YAAa,CACX1L,KAAMC,EAAe+E,UACrB7E,QAASA,KAAM,GAEjBiF,QAASN,UAEL6G,GAAenK,GAAUoK,EAASpK,IAAUqK,EAASrK,GAS3D,IAAIsK,GAAOvL,EAAgB,CACzBC,KAAM,SACNC,MAAO6K,GACPS,MAXgB,CAChBC,CAACA,GAAsBxL,GAASmL,GAAYnL,GAC5C,YAAayL,CAACjC,EAAMO,IAAOA,aAAc2B,MACzC,aAAe1L,GAASmL,GAAYnL,GACpC2L,KAAMA,CAAC1J,EAAU2J,IAAW,CAAC,SAAU,OAAOvK,SAASuK,GACvD,aAAe5L,GAASmL,GAAYnL,GACpC,UAAW6L,KAAM,GAMjB3L,KAAAA,CAAMD,GAAO6L,KACXA,EAAI5B,MACJA,EAAK9J,OACLA,IAEA,IAAIsB,EAAIC,EACR,MAAMjB,EAAKC,EAAa,QAClB0E,EAAOxE,IACPqD,EAAQ6H,EAAS,CAAA,GACjB5H,EAActD,EAAsE,OAAjEc,EAAgC,OAA1BD,EAAKzB,EAAMgL,YAAsBvJ,EAAKzB,EAAM8K,YAAsBpJ,EAAK,KAMhGqK,EAAiB/I,UACrB,IAAIgJ,EAAKC,EAAKtK,EACd,GAAIuC,EAAYnD,QAAUA,IAASmL,EAAYnL,GAE/C,KAEmB,UADoC,OAA5BiL,EAAMhM,EAAMiL,kBAAuB,EAASe,EAAI7B,KAAKnK,EAAOe,EAAOmD,EAAYnD,UAVjFA,KACzBmD,EAAYnD,MAAQA,EACpB8K,EAAKN,EAAoBxK,GACzB8K,EAAK,aAAc9K,EAAM,EASrBoL,CAAkBpL,GAC8C,OAA/DY,EAA2B,OAArBsK,EAAM7G,EAAKrE,YAAiB,EAASkL,EAAIxD,cAAgC9G,EAAGwI,KAAK8B,GAE3F,CAAC,MAAOrI,GACR,GAEGwI,EAAiBA,CAAC5K,EAAKkI,EAAS2C,KAChC7K,EAAIxB,MAAMyJ,WAEdsC,EAAerC,GACfmC,EAAK,YAAarK,EAAK6K,GAAM,EAEzBC,EAAkBA,CAAC/C,EAAMO,KACzBP,EAAKvJ,MAAMyJ,UAAYyC,EAAY3C,EAAKvJ,MAAMD,QAElD+J,EAAGyC,kBACHV,EAAK,OAAQtC,EAAKvJ,MAAMD,KAAM,UAC9B8L,EAAK,aAActC,EAAKvJ,MAAMD,MAAK,EAE/ByM,EAAeA,KACnBX,EAAK,YAAQ,EAAQ,OACrBA,EAAK,UAAU,EA8BjB,OA5BAY,EAAc,CACZ1E,KAAM,eACN2E,YAAa,6BACbC,MAAO,SACPC,QAAS,QACThM,IAAK,gEACLrB,KAAM,aACLmG,GAAS,MAAQ1F,EAAM8K,cAC1B/H,GAAM,IAAM/C,EAAM8K,aAAaE,GAAee,EAAef,KAC7DjI,GAAM,IAAM/C,EAAMgL,aAAaA,GAAee,EAAef,KAC7DjI,EAAMmB,GAAalB,UACjB,IAAIgJ,QACE/I,IACgB,OAArB+I,EAAM5G,EAAKrE,QAA0BiL,EAAI9F,mBAAmB,IAK7D2G,EAAQ3N,EAAoB,CAC1Bc,QACAkE,cACA4I,aALoBvD,GAAStF,EAAMsF,EAAKwD,KAAOxD,EAM/CyD,eALsBD,UAAe9I,EAAM8I,KAQ/C5M,EAAO,CACL+D,gBAEK,KACL,MAAM+I,EAAYjN,EAAMoE,UAAYpE,EAAM+K,QAAU9B,EAAY,OAAQ,CACtExF,MAAShD,EAAGmD,EAAE,WACdwG,SAAY,IACZlB,QAAWsD,EACX9B,UAAcZ,IACRA,EAAGpC,OAASG,EAAWqF,OACzBV,GAAc,GAEjB,CAACvD,EAAYE,EAAQ,CACtB1F,MAAShD,EAAGoD,GAAG,cACd,CACDnE,QAASA,IAAM,CAACuJ,EAAYkE,EAAM,KAAM,WACnC,KACDC,EAASnE,EAAY,MAAO,CAChCxF,MAAS,CAAChD,EAAGmD,EAAE,UAAWnD,EAAGoD,GAAG7D,EAAMqB,eACrC,CAAC4L,EAAWhE,EAAYpE,GAAQ,CACjCjE,IAAOwE,EACPlB,YAAeA,EAAYnD,MAC3BqD,SAAYpE,EAAMoE,SAClB7E,KAAQS,EAAMT,KACd0E,MAASoJ,OAAO3I,OAAOT,GACvBU,QAAW3E,EAAM2E,QACjBL,WAAc8H,EACd3H,YAAe6H,GACd,QACGgB,EAASrE,EAAY,MAAO,CAChCxF,MAAShD,EAAGmD,EAAE,YACb,CAAC2J,EAAWtD,EAAO,aACtB,OAAOhB,EAAY,MAAO,CACxBxF,MAAS,CAAChD,EAAG+M,IAAK/M,EAAGgN,EAAEzN,EAAMqB,aAAc,CACzC,CAACZ,EAAGgN,EAAE,SAAyB,SAAfzN,EAAMT,KACtB,CAACkB,EAAGgN,EAAE,gBAAgC,gBAAfzN,EAAMT,QAE9B,IAA0B,WAAtBS,EAAMqB,YAA2B,CAAC+L,EAAQE,GAAU,CAACA,EAAQF,IAAS,CAEhF,ICnKH,MAAMM,GAAerO,EAAW,CAC9B6K,MAAO,CACL3K,KAAM4E,OACNzE,QAAS,IAEXK,KAAM,CACJR,KAAM,CAAC4E,OAAQzB,SAEjBiH,SAAUtF,QACVoF,SAAUpF,QACVsJ,KAAMtJ,UCFFuJ,GAAa,CAAC,KAAM,cAAe,mBA+DzC,IAAIC,GAA0BhO,EA3DIC,EAAgB,CAFhDC,KAAM,YAINC,MAAO0N,GACPzN,KAAAA,CAAMC,GACJ,MAAMF,EAAQE,EAERE,EAAWC,IACX4J,EAAQ6D,IACRC,EAAWxN,EAAOrB,GACnB6O,GACHvN,EALqB,YAKM,8CAC7B,MAAMC,EAAKC,EAAa,YAClB8I,EAAQ5I,IACRgJ,EAAalE,GAAS,IAAM1F,EAAM2J,UAAYoE,EAAS/N,MAAM2J,WAC7D1H,EAAS+L,GAAc,KAC3B,IAAIvM,EACJ,OAAOsM,EAAS7J,YAAYnD,SAAgC,OAApBU,EAAKzB,EAAMD,MAAgB0B,EAAK+H,EAAMzI,MAAM,IAEhFkN,EAASrN,EAAIqB,EAAOlB,OACpBiB,EAAW0D,GAAS,KACxB,IAAIjE,EACJ,OAA4B,OAApBA,EAAKzB,EAAMD,MAAgB0B,EAAK+H,EAAMzI,KAAK,IAE/CmN,EAAiBF,GAAc,KAAOhO,EAAM2N,MAAQM,EAAOlN,OAASkB,EAAOlB,QACjFgC,EAAMd,GAASkM,IACTA,IACFF,EAAOlN,OAAQ,EAAI,IAEvB,MAAMwI,EAAOuC,EAAS,CACpBiB,IAAK3M,EAAS2M,IACd9C,QACAjK,QACAgC,WACAC,SACAuH,QACAI,eAQF,OANAf,GAAU,KACRkF,EAASjB,aAAavD,EAAK,IAE7B6E,GAAY,KACVL,EAASf,eAAezD,EAAKwD,IAAI,IAE5B,CAAC3J,EAAMC,IACLM,EAAMuK,GAAkBG,GAAgB/K,IAAaC,EAAmB,MAAO,CACpF+G,IAAK,EACLD,GAAI,QAAQ1G,EAAM3B,KAClByB,MAAOC,EAAeC,EAAMlD,GAAI+M,KAChCjD,KAAM,WACN,eAAgB5G,EAAM1B,GACtB,kBAAmB,OAAO0B,EAAM3B,MAC/B,CACDuL,EAAWnK,EAAKkL,OAAQ,YACvB,GAAIV,KAAc,CACnB,CAACW,EAAO5K,EAAM1B,MACXuM,EAAmB,QAAQ,EAEnC,IAEkD,CAAC,CAAC,SAAU,2FCjErDC,EAAA,IAAGC,EAAYrD,GAAM,CAC/BwC,cAEaY,EAAA,IAAGE,EAAgBd","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
1
+ {"version":3,"file":"el-tab-pane-legacy-CDSRCQdO.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-bar2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-nav.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tabs.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/src/tab-pane2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/tabs/index.mjs"],"sourcesContent":["const tabsRootContextKey = Symbol(\"tabsRootContextKey\");\n\nexport { tabsRootContextKey };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\n\nconst tabBarProps = buildProps({\n tabs: {\n type: definePropType(Array),\n default: () => mutable([])\n }\n});\n\nexport { tabBarProps };\n//# sourceMappingURL=tab-bar.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, watch, nextTick, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle } from 'vue';\nimport { useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabBarProps } from './tab-bar.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { capitalize } from '@vue/shared';\n\nconst __default__ = {\n name: \"ElTabBar\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabBarProps,\n setup(__props, { expose }) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabBar\";\n const instance = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, \"<el-tabs><el-tab-bar /></el-tabs>\");\n const ns = useNamespace(\"tabs\");\n const barRef = ref();\n const barStyle = ref();\n const getBarStyle = () => {\n let offset = 0;\n let tabSize = 0;\n const sizeName = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\";\n const sizeDir = sizeName === \"width\" ? \"x\" : \"y\";\n props.tabs.every((tab) => {\n var _a, _b, _c, _d;\n const $el = (_b = (_a = instance.parent) == null ? void 0 : _a.refs) == null ? void 0 : _b[`tab-${tab.paneName}`];\n if (!$el)\n return false;\n if (!tab.active) {\n return true;\n }\n tabSize = $el[`client${capitalize(sizeName)}`];\n const position = sizeDir === \"x\" ? \"left\" : \"top\";\n offset = $el.getBoundingClientRect()[position] - ((_d = (_c = $el.parentElement) == null ? void 0 : _c.getBoundingClientRect()[position]) != null ? _d : 0);\n const tabStyles = window.getComputedStyle($el);\n if (sizeName === \"width\") {\n if (props.tabs.length > 1) {\n tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);\n }\n offset += Number.parseFloat(tabStyles.paddingLeft);\n }\n return false;\n });\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`\n };\n };\n const update = () => barStyle.value = getBarStyle();\n watch(() => props.tabs, async () => {\n await nextTick();\n update();\n }, { immediate: true });\n useResizeObserver(barRef, () => update());\n expose({\n ref: barRef,\n update\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n ref_key: \"barRef\",\n ref: barRef,\n class: normalizeClass([unref(ns).e(\"active-bar\"), unref(ns).is(unref(rootTabs).props.tabPosition)]),\n style: normalizeStyle(barStyle.value)\n }, null, 6);\n };\n }\n});\nvar TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue\"]]);\n\nexport { TabBar as default };\n//# sourceMappingURL=tab-bar2.mjs.map\n","import { defineComponent, getCurrentInstance, inject, ref, computed, nextTick, watch, onMounted, onUpdated, createVNode } from 'vue';\nimport { NOOP, capitalize } from '@vue/shared';\nimport { useDocumentVisibility, useWindowFocus, useResizeObserver } from '@vueuse/core';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { ArrowLeft, ArrowRight, Close } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabBar from './tab-bar2.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { mutable } from '../../../utils/typescript.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabNavProps = buildProps({\n panes: {\n type: definePropType(Array),\n default: () => mutable([])\n },\n currentName: {\n type: [String, Number],\n default: \"\"\n },\n editable: Boolean,\n onTabClick: {\n type: definePropType(Function),\n default: NOOP\n },\n onTabRemove: {\n type: definePropType(Function),\n default: NOOP\n },\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n stretch: Boolean\n});\nconst COMPONENT_NAME = \"ElTabNav\";\nconst TabNav = defineComponent({\n name: COMPONENT_NAME,\n props: tabNavProps,\n setup(props, {\n expose\n }) {\n const vm = getCurrentInstance();\n const rootTabs = inject(tabsRootContextKey);\n if (!rootTabs)\n throwError(COMPONENT_NAME, `<el-tabs><tab-nav /></el-tabs>`);\n const ns = useNamespace(\"tabs\");\n const visibility = useDocumentVisibility();\n const focused = useWindowFocus();\n const navScroll$ = ref();\n const nav$ = ref();\n const el$ = ref();\n const scrollable = ref(false);\n const navOffset = ref(0);\n const isFocus = ref(false);\n const focusable = ref(true);\n const sizeName = computed(() => [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition) ? \"width\" : \"height\");\n const navStyle = computed(() => {\n const dir = sizeName.value === \"width\" ? \"X\" : \"Y\";\n return {\n transform: `translate${dir}(-${navOffset.value}px)`\n };\n });\n const scrollPrev = () => {\n if (!navScroll$.value)\n return;\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (!currentOffset)\n return;\n const newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;\n navOffset.value = newOffset;\n };\n const scrollNext = () => {\n if (!navScroll$.value || !nav$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (navSize - currentOffset <= containerSize)\n return;\n const newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;\n navOffset.value = newOffset;\n };\n const scrollToActiveTab = async () => {\n const nav = nav$.value;\n if (!scrollable.value || !el$.value || !navScroll$.value || !nav)\n return;\n await nextTick();\n const activeTab = el$.value.querySelector(\".is-active\");\n if (!activeTab)\n return;\n const navScroll = navScroll$.value;\n const isHorizontal = [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition);\n const activeTabBounding = activeTab.getBoundingClientRect();\n const navScrollBounding = navScroll.getBoundingClientRect();\n const maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;\n const currentOffset = navOffset.value;\n let newOffset = currentOffset;\n if (isHorizontal) {\n if (activeTabBounding.left < navScrollBounding.left) {\n newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);\n }\n if (activeTabBounding.right > navScrollBounding.right) {\n newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;\n }\n } else {\n if (activeTabBounding.top < navScrollBounding.top) {\n newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);\n }\n if (activeTabBounding.bottom > navScrollBounding.bottom) {\n newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);\n }\n }\n newOffset = Math.max(newOffset, 0);\n navOffset.value = Math.min(newOffset, maxOffset);\n };\n const update = () => {\n if (!nav$.value || !navScroll$.value)\n return;\n const navSize = nav$.value[`offset${capitalize(sizeName.value)}`];\n const containerSize = navScroll$.value[`offset${capitalize(sizeName.value)}`];\n const currentOffset = navOffset.value;\n if (containerSize < navSize) {\n const currentOffset2 = navOffset.value;\n scrollable.value = scrollable.value || {};\n scrollable.value.prev = currentOffset2;\n scrollable.value.next = currentOffset2 + containerSize < navSize;\n if (navSize - currentOffset2 < containerSize) {\n navOffset.value = navSize - containerSize;\n }\n } else {\n scrollable.value = false;\n if (currentOffset > 0) {\n navOffset.value = 0;\n }\n }\n };\n const changeTab = (e) => {\n const code = e.code;\n const {\n up,\n down,\n left,\n right\n } = EVENT_CODE;\n if (![up, down, left, right].includes(code))\n return;\n const tabList = Array.from(e.currentTarget.querySelectorAll(\"[role=tab]:not(.is-disabled)\"));\n const currentIndex = tabList.indexOf(e.target);\n let nextIndex;\n if (code === left || code === up) {\n if (currentIndex === 0) {\n nextIndex = tabList.length - 1;\n } else {\n nextIndex = currentIndex - 1;\n }\n } else {\n if (currentIndex < tabList.length - 1) {\n nextIndex = currentIndex + 1;\n } else {\n nextIndex = 0;\n }\n }\n tabList[nextIndex].focus();\n tabList[nextIndex].click();\n setFocus();\n };\n const setFocus = () => {\n if (focusable.value)\n isFocus.value = true;\n };\n const removeFocus = () => isFocus.value = false;\n watch(visibility, (visibility2) => {\n if (visibility2 === \"hidden\") {\n focusable.value = false;\n } else if (visibility2 === \"visible\") {\n setTimeout(() => focusable.value = true, 50);\n }\n });\n watch(focused, (focused2) => {\n if (focused2) {\n setTimeout(() => focusable.value = true, 50);\n } else {\n focusable.value = false;\n }\n });\n useResizeObserver(el$, update);\n onMounted(() => setTimeout(() => scrollToActiveTab(), 0));\n onUpdated(() => update());\n expose({\n scrollToActiveTab,\n removeFocus\n });\n watch(() => props.panes, () => vm.update(), {\n flush: \"post\"\n });\n return () => {\n const scrollBtn = scrollable.value ? [createVNode(\"span\", {\n \"class\": [ns.e(\"nav-prev\"), ns.is(\"disabled\", !scrollable.value.prev)],\n \"onClick\": scrollPrev\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowLeft, null, null)]\n })]), createVNode(\"span\", {\n \"class\": [ns.e(\"nav-next\"), ns.is(\"disabled\", !scrollable.value.next)],\n \"onClick\": scrollNext\n }, [createVNode(ElIcon, null, {\n default: () => [createVNode(ArrowRight, null, null)]\n })])] : null;\n const tabs = props.panes.map((pane, index) => {\n var _a, _b, _c, _d;\n const disabled = pane.props.disabled;\n const tabName = (_b = (_a = pane.props.name) != null ? _a : pane.index) != null ? _b : `${index}`;\n const closable = !disabled && (pane.isClosable || props.editable);\n pane.index = `${index}`;\n const btnClose = closable ? createVNode(ElIcon, {\n \"class\": \"is-icon-close\",\n \"onClick\": (ev) => props.onTabRemove(pane, ev)\n }, {\n default: () => [createVNode(Close, null, null)]\n }) : null;\n const tabLabelContent = ((_d = (_c = pane.slots).label) == null ? void 0 : _d.call(_c)) || pane.props.label;\n const tabindex = !disabled && pane.active ? 0 : -1;\n return createVNode(\"div\", {\n \"ref\": `tab-${tabName}`,\n \"class\": [ns.e(\"item\"), ns.is(rootTabs.props.tabPosition), ns.is(\"active\", pane.active), ns.is(\"disabled\", disabled), ns.is(\"closable\", closable), ns.is(\"focus\", isFocus.value)],\n \"id\": `tab-${tabName}`,\n \"key\": `tab-${tabName}`,\n \"aria-controls\": `pane-${tabName}`,\n \"role\": \"tab\",\n \"aria-selected\": pane.active,\n \"tabindex\": tabindex,\n \"onFocus\": () => setFocus(),\n \"onBlur\": () => removeFocus(),\n \"onClick\": (ev) => {\n removeFocus();\n props.onTabClick(pane, tabName, ev);\n },\n \"onKeydown\": (ev) => {\n if (closable && (ev.code === EVENT_CODE.delete || ev.code === EVENT_CODE.backspace)) {\n props.onTabRemove(pane, ev);\n }\n }\n }, [...[tabLabelContent, btnClose]]);\n });\n return createVNode(\"div\", {\n \"ref\": el$,\n \"class\": [ns.e(\"nav-wrap\"), ns.is(\"scrollable\", !!scrollable.value), ns.is(rootTabs.props.tabPosition)]\n }, [scrollBtn, createVNode(\"div\", {\n \"class\": ns.e(\"nav-scroll\"),\n \"ref\": navScroll$\n }, [createVNode(\"div\", {\n \"class\": [ns.e(\"nav\"), ns.is(rootTabs.props.tabPosition), ns.is(\"stretch\", props.stretch && [\"top\", \"bottom\"].includes(rootTabs.props.tabPosition))],\n \"ref\": nav$,\n \"style\": navStyle.value,\n \"role\": \"tablist\",\n \"onKeydown\": changeTab\n }, [...[!props.type ? createVNode(TabBar, {\n \"tabs\": [...props.panes]\n }, null) : null, tabs]])])]);\n };\n }\n});\n\nexport { TabNav as default, tabNavProps };\n//# sourceMappingURL=tab-nav.mjs.map\n","import { defineComponent, ref, reactive, computed, watch, nextTick, provide, createVNode, renderSlot } from 'vue';\nimport '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport { ElIcon } from '../../icon/index.mjs';\nimport { Plus } from '@element-plus/icons-vue';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport TabNav from './tab-nav.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber } from '@vueuse/core';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { isUndefined } from '../../../utils/types.mjs';\nimport { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\n\nconst tabsProps = buildProps({\n type: {\n type: String,\n values: [\"card\", \"border-card\", \"\"],\n default: \"\"\n },\n activeName: {\n type: [String, Number]\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number]\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: [\"top\", \"right\", \"bottom\", \"left\"],\n default: \"top\"\n },\n beforeLeave: {\n type: definePropType(Function),\n default: () => true\n },\n stretch: Boolean\n});\nconst isPanelName = (value) => isString(value) || isNumber(value);\nconst tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name) => isPanelName(name),\n \"tab-click\": (pane, ev) => ev instanceof Event,\n \"tab-change\": (name) => isPanelName(name),\n edit: (paneName, action) => [\"remove\", \"add\"].includes(action),\n \"tab-remove\": (name) => isPanelName(name),\n \"tab-add\": () => true\n};\nvar Tabs = defineComponent({\n name: \"ElTabs\",\n props: tabsProps,\n emits: tabsEmits,\n setup(props, {\n emit,\n slots,\n expose\n }) {\n var _a, _b;\n const ns = useNamespace(\"tabs\");\n const nav$ = ref();\n const panes = reactive({});\n const currentName = ref((_b = (_a = props.modelValue) != null ? _a : props.activeName) != null ? _b : \"0\");\n const changeCurrentName = (value) => {\n currentName.value = value;\n emit(UPDATE_MODEL_EVENT, value);\n emit(\"tab-change\", value);\n };\n const setCurrentName = async (value) => {\n var _a2, _b2, _c;\n if (currentName.value === value || isUndefined(value))\n return;\n try {\n const canLeave = await ((_a2 = props.beforeLeave) == null ? void 0 : _a2.call(props, value, currentName.value));\n if (canLeave !== false) {\n changeCurrentName(value);\n (_c = (_b2 = nav$.value) == null ? void 0 : _b2.removeFocus) == null ? void 0 : _c.call(_b2);\n }\n } catch (e) {\n }\n };\n const handleTabClick = (tab, tabName, event) => {\n if (tab.props.disabled)\n return;\n setCurrentName(tabName);\n emit(\"tab-click\", tab, event);\n };\n const handleTabRemove = (pane, ev) => {\n if (pane.props.disabled || isUndefined(pane.props.name))\n return;\n ev.stopPropagation();\n emit(\"edit\", pane.props.name, \"remove\");\n emit(\"tab-remove\", pane.props.name);\n };\n const handleTabAdd = () => {\n emit(\"edit\", void 0, \"add\");\n emit(\"tab-add\");\n };\n useDeprecated({\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: \"ElTabs\",\n version: \"2.3.0\",\n ref: \"https://element-plus.org/en-US/component/tabs.html#attributes\",\n type: \"Attribute\"\n }, computed(() => !!props.activeName));\n watch(() => props.activeName, (modelValue) => setCurrentName(modelValue));\n watch(() => props.modelValue, (modelValue) => setCurrentName(modelValue));\n watch(currentName, async () => {\n var _a2;\n await nextTick();\n (_a2 = nav$.value) == null ? void 0 : _a2.scrollToActiveTab();\n });\n {\n const registerPane = (pane) => panes[pane.uid] = pane;\n const unregisterPane = (uid) => delete panes[uid];\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane\n });\n }\n expose({\n currentName\n });\n return () => {\n const newButton = props.editable || props.addable ? createVNode(\"span\", {\n \"class\": ns.e(\"new-tab\"),\n \"tabindex\": \"0\",\n \"onClick\": handleTabAdd,\n \"onKeydown\": (ev) => {\n if (ev.code === EVENT_CODE.enter)\n handleTabAdd();\n }\n }, [createVNode(ElIcon, {\n \"class\": ns.is(\"icon-plus\")\n }, {\n default: () => [createVNode(Plus, null, null)]\n })]) : null;\n const header = createVNode(\"div\", {\n \"class\": [ns.e(\"header\"), ns.is(props.tabPosition)]\n }, [newButton, createVNode(TabNav, {\n \"ref\": nav$,\n \"currentName\": currentName.value,\n \"editable\": props.editable,\n \"type\": props.type,\n \"panes\": Object.values(panes),\n \"stretch\": props.stretch,\n \"onTabClick\": handleTabClick,\n \"onTabRemove\": handleTabRemove\n }, null)]);\n const panels = createVNode(\"div\", {\n \"class\": ns.e(\"content\")\n }, [renderSlot(slots, \"default\")]);\n return createVNode(\"div\", {\n \"class\": [ns.b(), ns.m(props.tabPosition), {\n [ns.m(\"card\")]: props.type === \"card\",\n [ns.m(\"border-card\")]: props.type === \"border-card\"\n }]\n }, [...props.tabPosition !== \"bottom\" ? [header, panels] : [panels, header]]);\n };\n }\n});\n\nexport { Tabs as default, tabsEmits, tabsProps };\n//# sourceMappingURL=tabs.mjs.map\n","import '../../../utils/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst tabPaneProps = buildProps({\n label: {\n type: String,\n default: \"\"\n },\n name: {\n type: [String, Number]\n },\n closable: Boolean,\n disabled: Boolean,\n lazy: Boolean\n});\n\nexport { tabPaneProps };\n//# sourceMappingURL=tab-pane.mjs.map\n","import { defineComponent, getCurrentInstance, useSlots, inject, ref, computed, watch, reactive, onMounted, onUnmounted, unref, withDirectives, openBlock, createElementBlock, normalizeClass, renderSlot, vShow, createCommentVNode } from 'vue';\nimport { eagerComputed } from '@vueuse/core';\nimport '../../../tokens/index.mjs';\nimport '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { tabPaneProps } from './tab-pane.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { tabsRootContextKey } from '../../../tokens/tabs.mjs';\nimport { throwError } from '../../../utils/error.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-hidden\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElTabPane\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: tabPaneProps,\n setup(__props) {\n const props = __props;\n const COMPONENT_NAME = \"ElTabPane\";\n const instance = getCurrentInstance();\n const slots = useSlots();\n const tabsRoot = inject(tabsRootContextKey);\n if (!tabsRoot)\n throwError(COMPONENT_NAME, \"usage: <el-tabs><el-tab-pane /></el-tabs/>\");\n const ns = useNamespace(\"tab-pane\");\n const index = ref();\n const isClosable = computed(() => props.closable || tabsRoot.props.closable);\n const active = eagerComputed(() => {\n var _a;\n return tabsRoot.currentName.value === ((_a = props.name) != null ? _a : index.value);\n });\n const loaded = ref(active.value);\n const paneName = computed(() => {\n var _a;\n return (_a = props.name) != null ? _a : index.value;\n });\n const shouldBeRender = eagerComputed(() => !props.lazy || loaded.value || active.value);\n watch(active, (val) => {\n if (val)\n loaded.value = true;\n });\n const pane = reactive({\n uid: instance.uid,\n slots,\n props,\n paneName,\n active,\n index,\n isClosable\n });\n onMounted(() => {\n tabsRoot.registerPane(pane);\n });\n onUnmounted(() => {\n tabsRoot.unregisterPane(pane.uid);\n });\n return (_ctx, _cache) => {\n return unref(shouldBeRender) ? withDirectives((openBlock(), createElementBlock(\"div\", {\n key: 0,\n id: `pane-${unref(paneName)}`,\n class: normalizeClass(unref(ns).b()),\n role: \"tabpanel\",\n \"aria-hidden\": !unref(active),\n \"aria-labelledby\": `tab-${unref(paneName)}`\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1)), [\n [vShow, unref(active)]\n ]) : createCommentVNode(\"v-if\", true);\n };\n }\n});\nvar TabPane = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue\"]]);\n\nexport { TabPane as default };\n//# sourceMappingURL=tab-pane2.mjs.map\n","import '../../utils/index.mjs';\nimport Tabs from './src/tabs.mjs';\nexport { tabsEmits, tabsProps } from './src/tabs.mjs';\nimport TabPane from './src/tab-pane2.mjs';\nexport { tabBarProps } from './src/tab-bar.mjs';\nexport { tabNavProps } from './src/tab-nav.mjs';\nexport { tabPaneProps } from './src/tab-pane.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElTabs = withInstall(Tabs, {\n TabPane\n});\nconst ElTabPane = withNoopInstall(TabPane);\n\nexport { ElTabPane, ElTabs, ElTabs as default };\n//# sourceMappingURL=index.mjs.map\n"],"names":["tabsRootContextKey","Symbol","tabBarProps","buildProps","tabs","type","definePropType","Array","default","mutable","TabBar","_export_sfc","defineComponent","name","props","setup","__props","expose","instance","getCurrentInstance","rootTabs","inject","throwError","ns","useNamespace","barRef","ref","barStyle","update","value","getBarStyle","offset","tabSize","sizeName","includes","tabPosition","sizeDir","every","tab","_a","_b","_c","_d","$el","parent","refs","paneName","active","capitalize","position","getBoundingClientRect","parentElement","tabStyles","window","getComputedStyle","length","Number","parseFloat","paddingLeft","paddingRight","transform","watch","async","nextTick","immediate","useResizeObserver","_ctx","_cache","openBlock","createElementBlock","ref_key","class","normalizeClass","unref","e","is","style","normalizeStyle","tabNavProps","panes","currentName","String","editable","Boolean","onTabClick","Function","NOOP","onTabRemove","values","stretch","COMPONENT_NAME","TabNav","vm","visibility","useDocumentVisibility","focused","useWindowFocus","navScroll$","nav$","el$","scrollable","navOffset","isFocus","focusable","computed","navStyle","scrollPrev","containerSize","currentOffset","newOffset","scrollNext","navSize","scrollToActiveTab","nav","activeTab","querySelector","navScroll","isHorizontal","activeTabBounding","navScrollBounding","maxOffset","offsetWidth","width","offsetHeight","height","left","right","top","bottom","Math","max","min","currentOffset2","prev","next","changeTab","code","up","down","EVENT_CODE","tabList","from","currentTarget","querySelectorAll","currentIndex","indexOf","target","nextIndex","focus","click","setFocus","removeFocus","visibility2","setTimeout","focused2","onMounted","onUpdated","flush","scrollBtn","createVNode","onClick","ElIcon","ArrowLeft","ArrowRight","map","pane","index","disabled","tabName","closable","isClosable","btnClose","ev","Close","tabLabelContent","slots","label","call","tabindex","id","key","role","onFocus","onBlur","onKeydown","delete","backspace","tabsProps","activeName","addable","modelValue","beforeLeave","isPanelName","isString","isNumber","Tabs","emits","UPDATE_MODEL_EVENT","tab-click","Event","edit","action","tab-add","emit","reactive","setCurrentName","_a2","_b2","isUndefined","changeCurrentName","handleTabClick","event","handleTabRemove","stopPropagation","handleTabAdd","useDeprecated","replacement","scope","version","provide","registerPane","uid","unregisterPane","newButton","enter","Plus","header","Object","panels","renderSlot","b","m","tabPaneProps","lazy","_hoisted_1","TabPane","useSlots","tabsRoot","eagerComputed","loaded","shouldBeRender","val","onUnmounted","withDirectives","$slots","vShow","createCommentVNode","exports","withInstall","withNoopInstall"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}