@element-plus/nightly 0.0.20240908 → 0.0.20240910

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 (289) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +30 -10
  3. package/dist/index.full.min.js +11 -11
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +11 -11
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +30 -10
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hr.js +1 -1
  93. package/dist/locale/hr.min.js +1 -1
  94. package/dist/locale/hr.min.mjs +1 -1
  95. package/dist/locale/hr.mjs +1 -1
  96. package/dist/locale/hu.js +1 -1
  97. package/dist/locale/hu.min.js +1 -1
  98. package/dist/locale/hu.min.mjs +1 -1
  99. package/dist/locale/hu.mjs +1 -1
  100. package/dist/locale/hy-am.js +1 -1
  101. package/dist/locale/hy-am.min.js +1 -1
  102. package/dist/locale/hy-am.min.mjs +1 -1
  103. package/dist/locale/hy-am.mjs +1 -1
  104. package/dist/locale/id.js +1 -1
  105. package/dist/locale/id.min.js +1 -1
  106. package/dist/locale/id.min.mjs +1 -1
  107. package/dist/locale/id.mjs +1 -1
  108. package/dist/locale/it.js +1 -1
  109. package/dist/locale/it.min.js +1 -1
  110. package/dist/locale/it.min.mjs +1 -1
  111. package/dist/locale/it.mjs +1 -1
  112. package/dist/locale/ja.js +1 -1
  113. package/dist/locale/ja.min.js +1 -1
  114. package/dist/locale/ja.min.mjs +1 -1
  115. package/dist/locale/ja.mjs +1 -1
  116. package/dist/locale/kk.js +1 -1
  117. package/dist/locale/kk.min.js +1 -1
  118. package/dist/locale/kk.min.mjs +1 -1
  119. package/dist/locale/kk.mjs +1 -1
  120. package/dist/locale/km.js +1 -1
  121. package/dist/locale/km.min.js +1 -1
  122. package/dist/locale/km.min.mjs +1 -1
  123. package/dist/locale/km.mjs +1 -1
  124. package/dist/locale/ko.js +1 -1
  125. package/dist/locale/ko.min.js +1 -1
  126. package/dist/locale/ko.min.mjs +1 -1
  127. package/dist/locale/ko.mjs +1 -1
  128. package/dist/locale/ku.js +1 -1
  129. package/dist/locale/ku.min.js +1 -1
  130. package/dist/locale/ku.min.mjs +1 -1
  131. package/dist/locale/ku.mjs +1 -1
  132. package/dist/locale/ky.js +1 -1
  133. package/dist/locale/ky.min.js +1 -1
  134. package/dist/locale/ky.min.mjs +1 -1
  135. package/dist/locale/ky.mjs +1 -1
  136. package/dist/locale/lt.js +1 -1
  137. package/dist/locale/lt.min.js +1 -1
  138. package/dist/locale/lt.min.mjs +1 -1
  139. package/dist/locale/lt.mjs +1 -1
  140. package/dist/locale/lv.js +1 -1
  141. package/dist/locale/lv.min.js +1 -1
  142. package/dist/locale/lv.min.mjs +1 -1
  143. package/dist/locale/lv.mjs +1 -1
  144. package/dist/locale/mg.js +1 -1
  145. package/dist/locale/mg.min.js +1 -1
  146. package/dist/locale/mg.min.mjs +1 -1
  147. package/dist/locale/mg.mjs +1 -1
  148. package/dist/locale/mn.js +1 -1
  149. package/dist/locale/mn.min.js +1 -1
  150. package/dist/locale/mn.min.mjs +1 -1
  151. package/dist/locale/mn.mjs +1 -1
  152. package/dist/locale/my.js +1 -1
  153. package/dist/locale/my.min.js +1 -1
  154. package/dist/locale/my.min.mjs +1 -1
  155. package/dist/locale/my.mjs +1 -1
  156. package/dist/locale/nb-no.js +1 -1
  157. package/dist/locale/nb-no.min.js +1 -1
  158. package/dist/locale/nb-no.min.mjs +1 -1
  159. package/dist/locale/nb-no.mjs +1 -1
  160. package/dist/locale/nl.js +1 -1
  161. package/dist/locale/nl.min.js +1 -1
  162. package/dist/locale/nl.min.mjs +1 -1
  163. package/dist/locale/nl.mjs +1 -1
  164. package/dist/locale/pa.js +1 -1
  165. package/dist/locale/pa.min.js +1 -1
  166. package/dist/locale/pa.min.mjs +1 -1
  167. package/dist/locale/pa.mjs +1 -1
  168. package/dist/locale/pl.js +1 -1
  169. package/dist/locale/pl.min.js +1 -1
  170. package/dist/locale/pl.min.mjs +1 -1
  171. package/dist/locale/pl.mjs +1 -1
  172. package/dist/locale/pt-br.js +1 -1
  173. package/dist/locale/pt-br.min.js +1 -1
  174. package/dist/locale/pt-br.min.mjs +1 -1
  175. package/dist/locale/pt-br.mjs +1 -1
  176. package/dist/locale/pt.js +1 -1
  177. package/dist/locale/pt.min.js +1 -1
  178. package/dist/locale/pt.min.mjs +1 -1
  179. package/dist/locale/pt.mjs +1 -1
  180. package/dist/locale/ro.js +1 -1
  181. package/dist/locale/ro.min.js +1 -1
  182. package/dist/locale/ro.min.mjs +1 -1
  183. package/dist/locale/ro.mjs +1 -1
  184. package/dist/locale/ru.js +1 -1
  185. package/dist/locale/ru.min.js +1 -1
  186. package/dist/locale/ru.min.mjs +1 -1
  187. package/dist/locale/ru.mjs +1 -1
  188. package/dist/locale/sk.js +1 -1
  189. package/dist/locale/sk.min.js +1 -1
  190. package/dist/locale/sk.min.mjs +1 -1
  191. package/dist/locale/sk.mjs +1 -1
  192. package/dist/locale/sl.js +1 -1
  193. package/dist/locale/sl.min.js +1 -1
  194. package/dist/locale/sl.min.mjs +1 -1
  195. package/dist/locale/sl.mjs +1 -1
  196. package/dist/locale/sr.js +1 -1
  197. package/dist/locale/sr.min.js +1 -1
  198. package/dist/locale/sr.min.mjs +1 -1
  199. package/dist/locale/sr.mjs +1 -1
  200. package/dist/locale/sv.js +1 -1
  201. package/dist/locale/sv.min.js +1 -1
  202. package/dist/locale/sv.min.mjs +1 -1
  203. package/dist/locale/sv.mjs +1 -1
  204. package/dist/locale/sw.js +1 -1
  205. package/dist/locale/sw.min.js +1 -1
  206. package/dist/locale/sw.min.mjs +1 -1
  207. package/dist/locale/sw.mjs +1 -1
  208. package/dist/locale/ta.js +1 -1
  209. package/dist/locale/ta.min.js +1 -1
  210. package/dist/locale/ta.min.mjs +1 -1
  211. package/dist/locale/ta.mjs +1 -1
  212. package/dist/locale/th.js +1 -1
  213. package/dist/locale/th.min.js +1 -1
  214. package/dist/locale/th.min.mjs +1 -1
  215. package/dist/locale/th.mjs +1 -1
  216. package/dist/locale/tk.js +1 -1
  217. package/dist/locale/tk.min.js +1 -1
  218. package/dist/locale/tk.min.mjs +1 -1
  219. package/dist/locale/tk.mjs +1 -1
  220. package/dist/locale/tr.js +1 -1
  221. package/dist/locale/tr.min.js +1 -1
  222. package/dist/locale/tr.min.mjs +1 -1
  223. package/dist/locale/tr.mjs +1 -1
  224. package/dist/locale/ug-cn.js +1 -1
  225. package/dist/locale/ug-cn.min.js +1 -1
  226. package/dist/locale/ug-cn.min.mjs +1 -1
  227. package/dist/locale/ug-cn.mjs +1 -1
  228. package/dist/locale/uk.js +1 -1
  229. package/dist/locale/uk.min.js +1 -1
  230. package/dist/locale/uk.min.mjs +1 -1
  231. package/dist/locale/uk.mjs +1 -1
  232. package/dist/locale/uz-uz.js +1 -1
  233. package/dist/locale/uz-uz.min.js +1 -1
  234. package/dist/locale/uz-uz.min.mjs +1 -1
  235. package/dist/locale/uz-uz.mjs +1 -1
  236. package/dist/locale/vi.js +1 -1
  237. package/dist/locale/vi.min.js +1 -1
  238. package/dist/locale/vi.min.mjs +1 -1
  239. package/dist/locale/vi.mjs +1 -1
  240. package/dist/locale/zh-cn.js +1 -1
  241. package/dist/locale/zh-cn.min.js +1 -1
  242. package/dist/locale/zh-cn.min.mjs +1 -1
  243. package/dist/locale/zh-cn.mjs +1 -1
  244. package/dist/locale/zh-tw.js +1 -1
  245. package/dist/locale/zh-tw.min.js +1 -1
  246. package/dist/locale/zh-tw.min.mjs +1 -1
  247. package/dist/locale/zh-tw.mjs +1 -1
  248. package/es/components/scrollbar/src/scrollbar.d.ts +1 -0
  249. package/es/components/scrollbar/src/scrollbar.mjs +4 -0
  250. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  251. package/es/components/scrollbar/src/scrollbar.vue.d.ts +3 -0
  252. package/es/components/scrollbar/src/scrollbar2.mjs +2 -1
  253. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  254. package/es/components/select-v2/src/useSelect.mjs +9 -2
  255. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  256. package/es/components/table/src/table/defaults.d.ts +5 -0
  257. package/es/components/table/src/table/defaults.mjs +5 -1
  258. package/es/components/table/src/table/defaults.mjs.map +1 -1
  259. package/es/components/table/src/table.mjs +3 -2
  260. package/es/components/table/src/table.mjs.map +1 -1
  261. package/es/components/table/src/table.vue.d.ts +9 -0
  262. package/es/components/tooltip/src/content2.mjs +5 -2
  263. package/es/components/tooltip/src/content2.mjs.map +1 -1
  264. package/es/version.d.ts +1 -1
  265. package/es/version.mjs +1 -1
  266. package/es/version.mjs.map +1 -1
  267. package/lib/components/scrollbar/src/scrollbar.d.ts +1 -0
  268. package/lib/components/scrollbar/src/scrollbar.js +4 -0
  269. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  270. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +3 -0
  271. package/lib/components/scrollbar/src/scrollbar2.js +2 -1
  272. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  273. package/lib/components/select-v2/src/useSelect.js +9 -2
  274. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  275. package/lib/components/table/src/table/defaults.d.ts +5 -0
  276. package/lib/components/table/src/table/defaults.js +5 -1
  277. package/lib/components/table/src/table/defaults.js.map +1 -1
  278. package/lib/components/table/src/table.js +3 -2
  279. package/lib/components/table/src/table.js.map +1 -1
  280. package/lib/components/table/src/table.vue.d.ts +9 -0
  281. package/lib/components/tooltip/src/content2.js +5 -2
  282. package/lib/components/tooltip/src/content2.js.map +1 -1
  283. package/lib/version.d.ts +1 -1
  284. package/lib/version.js +1 -1
  285. package/lib/version.js.map +1 -1
  286. package/package.json +2 -2
  287. package/tags.json +1 -1
  288. package/theme-chalk/src/table-v2.scss +1 -1
  289. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useSelect.mjs","sources":["../../../../../../packages/components/select-v2/src/useSelect.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n computed,\n nextTick,\n onMounted,\n reactive,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n findLastIndex,\n get,\n isEqual,\n debounce as lodashDebounce,\n} from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport {\n ValidateComponentsMap,\n debugWarn,\n escapeStringRegexp,\n isArray,\n isFunction,\n isObject,\n} from '@element-plus/utils'\nimport {\n useComposition,\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport {\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\n\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useAllowCreate } from './useAllowCreate'\nimport { useProps } from './useProps'\n\nimport type ElTooltip from '@element-plus/components/tooltip'\nimport type { Option, OptionType } from './select.types'\nimport type { ISelectV2Props } from './token'\n\nconst MINIMUM_INPUT_WIDTH = 11\n\nconst useSelect = (props: ISelectV2Props, emit) => {\n // inject\n const { t } = useLocale()\n const nsSelect = useNamespace('select')\n const nsInput = useNamespace('input')\n const { form: elForm, formItem: elFormItem } = useFormItem()\n const { inputId } = useFormItemInputId(props, {\n formItemContext: elFormItem,\n })\n const { aliasProps, getLabel, getValue, getDisabled, getOptions } =\n useProps(props)\n const { valueOnClear, isEmptyValue } = useEmptyValues(props)\n\n const states = reactive({\n inputValue: '',\n cachedOptions: [] as Option[],\n createdOptions: [] as Option[],\n hoveringIndex: -1,\n inputHovering: false,\n selectionWidth: 0,\n calculatorWidth: 0,\n collapseItemWidth: 0,\n previousQuery: null,\n previousValue: undefined,\n selectedLabel: '',\n menuVisibleOnFocus: false,\n isBeforeHide: false,\n })\n\n // data refs\n const popperSize = ref(-1)\n\n // DOM & Component refs\n const selectRef = ref<HTMLElement>(null)\n const selectionRef = ref<HTMLElement>(null)\n const tooltipRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const tagTooltipRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const inputRef = ref<HTMLElement>(null)\n const calculatorRef = ref<HTMLElement>(null)\n const prefixRef = ref<HTMLElement>(null)\n const suffixRef = ref<HTMLElement>(null)\n const menuRef = ref<HTMLElement>(null)\n const tagMenuRef = ref<HTMLElement>(null)\n const collapseItemRef = ref<HTMLElement>(null)\n\n const {\n isComposing,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n } = useComposition({\n afterComposition: (e) => onInput(e),\n })\n\n const { wrapperRef, isFocused } = useFocusController(inputRef, {\n beforeFocus() {\n return selectDisabled.value\n },\n afterFocus() {\n if (props.automaticDropdown && !expanded.value) {\n expanded.value = true\n states.menuVisibleOnFocus = true\n }\n },\n beforeBlur(event) {\n return (\n tooltipRef.value?.isFocusInsideContent(event) ||\n tagTooltipRef.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n expanded.value = false\n states.menuVisibleOnFocus = false\n },\n })\n\n const allOptions = ref([])\n const filteredOptions = ref([])\n // the controller of the expanded popup\n const expanded = ref(false)\n\n const selectDisabled = computed(() => props.disabled || elForm?.disabled)\n\n const popupHeight = computed(() => {\n const totalHeight = filteredOptions.value.length * props.itemHeight\n return totalHeight > props.height ? props.height : totalHeight\n })\n\n const hasModelValue = computed(() => {\n return props.multiple\n ? isArray(props.modelValue) && props.modelValue.length > 0\n : !isEmptyValue(props.modelValue)\n })\n\n const showClearBtn = computed(() => {\n return (\n props.clearable &&\n !selectDisabled.value &&\n states.inputHovering &&\n hasModelValue.value\n )\n })\n\n const iconComponent = computed(() =>\n props.remote && props.filterable ? '' : ArrowDown\n )\n\n const iconReverse = computed(\n () => iconComponent.value && nsSelect.is('reverse', expanded.value)\n )\n\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n\n const debounce = computed(() => (props.remote ? 300 : 0))\n\n // filteredOptions includes flatten the data into one dimensional array.\n const emptyText = computed(() => {\n if (props.loading) {\n return props.loadingText || t('el.select.loading')\n } else {\n if (props.remote && !states.inputValue && allOptions.value.length === 0)\n return false\n if (\n props.filterable &&\n states.inputValue &&\n allOptions.value.length > 0 &&\n filteredOptions.value.length === 0\n ) {\n return props.noMatchText || t('el.select.noMatch')\n }\n if (allOptions.value.length === 0) {\n return props.noDataText || t('el.select.noData')\n }\n }\n return null\n })\n\n const filterOptions = (query) => {\n const isValidOption = (o: Option): boolean => {\n if (props.filterable && isFunction(props.filterMethod)) return true\n if (props.filterable && props.remote && isFunction(props.remoteMethod))\n return true\n // when query was given, we should test on the label see whether the label contains the given query\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n return query ? regexp.test(getLabel(o) || '') : true\n }\n if (props.loading) {\n return []\n }\n\n return [...states.createdOptions, ...props.options].reduce((all, item) => {\n const options = getOptions(item)\n\n if (isArray(options)) {\n const filtered = options.filter(isValidOption)\n\n if (filtered.length > 0) {\n all.push(\n {\n label: getLabel(item),\n type: 'Group',\n },\n ...filtered\n )\n }\n } else if (props.remote || isValidOption(item)) {\n all.push(item)\n }\n\n return all\n }, []) as OptionType[]\n }\n\n const updateOptions = () => {\n allOptions.value = filterOptions('') as OptionType[]\n filteredOptions.value = filterOptions(states.inputValue) as OptionType[]\n }\n\n const allOptionsValueMap = computed(() => {\n const valueMap = new Map()\n\n allOptions.value.forEach((option, index) => {\n valueMap.set(getValueKey(getValue(option)), { option, index })\n })\n return valueMap\n })\n\n const filteredOptionsValueMap = computed(() => {\n const valueMap = new Map()\n\n filteredOptions.value.forEach((option, index) => {\n valueMap.set(getValueKey(getValue(option)), { option, index })\n })\n return valueMap\n })\n\n const optionsAllDisabled = computed(() =>\n filteredOptions.value.every((option) => getDisabled(option))\n )\n\n const selectSize = useFormSize()\n\n const collapseTagSize = computed(() =>\n 'small' === selectSize.value ? 'small' : 'default'\n )\n\n const calculatePopperSize = () => {\n popperSize.value = selectRef.value?.offsetWidth || 200\n }\n\n const getGapWidth = () => {\n if (!selectionRef.value) return 0\n const style = window.getComputedStyle(selectionRef.value)\n return Number.parseFloat(style.gap || '6px')\n }\n\n // computed style\n const tagStyle = computed(() => {\n const gapWidth = getGapWidth()\n const maxWidth =\n collapseItemRef.value && props.maxCollapseTags === 1\n ? states.selectionWidth - states.collapseItemWidth - gapWidth\n : states.selectionWidth\n return { maxWidth: `${maxWidth}px` }\n })\n\n const collapseTagStyle = computed(() => {\n return { maxWidth: `${states.selectionWidth}px` }\n })\n\n const inputStyle = computed(() => ({\n width: `${Math.max(states.calculatorWidth, MINIMUM_INPUT_WIDTH)}px`,\n }))\n\n const shouldShowPlaceholder = computed(() => {\n if (isArray(props.modelValue)) {\n return props.modelValue.length === 0 && !states.inputValue\n }\n\n // when it's not multiple mode, we only determine this flag based on filterable and expanded\n // when filterable flag is true, which means we have input box on the screen\n return props.filterable ? !states.inputValue : true\n })\n\n const currentPlaceholder = computed(() => {\n const _placeholder = props.placeholder ?? t('el.select.placeholder')\n return props.multiple || !hasModelValue.value\n ? _placeholder\n : states.selectedLabel\n })\n\n // this obtains the actual popper DOM element.\n const popperRef = computed(() => tooltipRef.value?.popperRef?.contentRef)\n\n // the index with current value in options\n const indexRef = computed<number>(() => {\n if (props.multiple) {\n const len = (props.modelValue as []).length\n if (\n (props.modelValue as Array<any>).length > 0 &&\n filteredOptionsValueMap.value.has(props.modelValue[len - 1])\n ) {\n const { index } = filteredOptionsValueMap.value.get(\n props.modelValue[len - 1]\n )\n return index\n }\n } else {\n if (\n props.modelValue &&\n filteredOptionsValueMap.value.has(props.modelValue)\n ) {\n const { index } = filteredOptionsValueMap.value.get(props.modelValue)\n return index\n }\n }\n return -1\n })\n\n const dropdownMenuVisible = computed({\n get() {\n return expanded.value && emptyText.value !== false\n },\n set(val: boolean) {\n expanded.value = val\n },\n })\n\n const showTagList = computed(() => {\n if (!props.multiple) {\n return []\n }\n return props.collapseTags\n ? states.cachedOptions.slice(0, props.maxCollapseTags)\n : states.cachedOptions\n })\n\n const collapseTagList = computed(() => {\n if (!props.multiple) {\n return []\n }\n return props.collapseTags\n ? states.cachedOptions.slice(props.maxCollapseTags)\n : []\n })\n\n // hooks\n const {\n createNewOption,\n removeNewOption,\n selectNewOption,\n clearAllNewOption,\n } = useAllowCreate(props, states)\n\n // methods\n const toggleMenu = () => {\n if (selectDisabled.value) return\n\n if (states.menuVisibleOnFocus) {\n // controlled by automaticDropdown\n states.menuVisibleOnFocus = false\n } else {\n expanded.value = !expanded.value\n }\n }\n\n const onInputChange = () => {\n if (states.inputValue.length > 0 && !expanded.value) {\n expanded.value = true\n }\n createNewOption(states.inputValue)\n handleQueryChange(states.inputValue)\n }\n\n const debouncedOnInputChange = lodashDebounce(onInputChange, debounce.value)\n\n const handleQueryChange = (val: string) => {\n if (states.previousQuery === val || isComposing.value) {\n return\n }\n states.previousQuery = val\n if (props.filterable && isFunction(props.filterMethod)) {\n props.filterMethod(val)\n } else if (\n props.filterable &&\n props.remote &&\n isFunction(props.remoteMethod)\n ) {\n props.remoteMethod(val)\n }\n if (\n props.defaultFirstOption &&\n (props.filterable || props.remote) &&\n filteredOptions.value.length\n ) {\n nextTick(checkDefaultFirstOption)\n } else {\n nextTick(updateHoveringIndex)\n }\n }\n\n /**\n * find and highlight first option as default selected\n * @remark\n * - if the first option in dropdown list is user-created,\n * it would be at the end of the optionsArray\n * so find it and set hover.\n * (NOTE: there must be only one user-created option in dropdown list with query)\n * - if there's no user-created option in list, just find the first one as usual\n * (NOTE: exclude options that are disabled or in disabled-group)\n */\n const checkDefaultFirstOption = () => {\n const optionsInDropdown = filteredOptions.value.filter(\n (n) => !n.disabled && n.type !== 'Group'\n )\n const userCreatedOption = optionsInDropdown.find((n) => n.created)\n const firstOriginOption = optionsInDropdown[0]\n states.hoveringIndex = getValueIndex(\n filteredOptions.value,\n userCreatedOption || firstOriginOption\n )\n }\n\n const emitChange = (val: any | any[]) => {\n if (!isEqual(props.modelValue, val)) {\n emit(CHANGE_EVENT, val)\n }\n }\n\n const update = (val: any) => {\n emit(UPDATE_MODEL_EVENT, val)\n emitChange(val)\n states.previousValue = props.multiple ? String(val) : val\n }\n\n const getValueIndex = (arr = [], value: unknown) => {\n if (!isObject(value)) {\n return arr.indexOf(value)\n }\n const valueKey = props.valueKey\n let index = -1\n arr.some((item, i) => {\n if (get(item, valueKey) === get(value, valueKey)) {\n index = i\n return true\n }\n return false\n })\n return index\n }\n\n const getValueKey = (item: unknown) => {\n return isObject(item) ? get(item, props.valueKey) : item\n }\n\n const handleResize = () => {\n calculatePopperSize()\n }\n\n const resetSelectionWidth = () => {\n states.selectionWidth = selectionRef.value.getBoundingClientRect().width\n }\n\n const resetCalculatorWidth = () => {\n states.calculatorWidth = calculatorRef.value.getBoundingClientRect().width\n }\n\n const resetCollapseItemWidth = () => {\n states.collapseItemWidth =\n collapseItemRef.value.getBoundingClientRect().width\n }\n\n const updateTooltip = () => {\n tooltipRef.value?.updatePopper?.()\n }\n\n const updateTagTooltip = () => {\n tagTooltipRef.value?.updatePopper?.()\n }\n\n const onSelect = (option: Option) => {\n if (props.multiple) {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValue(option))\n if (index > -1) {\n selectedOptions = [\n ...selectedOptions.slice(0, index),\n ...selectedOptions.slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n removeNewOption(option)\n } else if (\n props.multipleLimit <= 0 ||\n selectedOptions.length < props.multipleLimit\n ) {\n selectedOptions = [...selectedOptions, getValue(option)]\n states.cachedOptions.push(option)\n selectNewOption(option)\n }\n update(selectedOptions)\n if (option.created) {\n handleQueryChange('')\n }\n if (props.filterable && !props.reserveKeyword) {\n states.inputValue = ''\n }\n } else {\n states.selectedLabel = getLabel(option)\n update(getValue(option))\n expanded.value = false\n selectNewOption(option)\n if (!option.created) {\n clearAllNewOption()\n }\n }\n focus()\n }\n\n const deleteTag = (event: MouseEvent, option: Option) => {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValue(option))\n\n if (index > -1 && !selectDisabled.value) {\n selectedOptions = [\n ...(props.modelValue as Array<unknown>).slice(0, index),\n ...(props.modelValue as Array<unknown>).slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n update(selectedOptions)\n emit('remove-tag', getValue(option))\n removeNewOption(option)\n }\n event.stopPropagation()\n focus()\n }\n\n const focus = () => {\n inputRef.value?.focus()\n }\n\n const blur = () => {\n inputRef.value?.blur()\n }\n\n // keyboard handlers\n const handleEsc = () => {\n if (states.inputValue.length > 0) {\n states.inputValue = ''\n } else {\n expanded.value = false\n }\n }\n\n const getLastNotDisabledIndex = (value) =>\n findLastIndex(\n value,\n (it) =>\n !states.cachedOptions.some(\n (option) => getValue(option) === it && getDisabled(option)\n )\n )\n\n const handleDel = (e: KeyboardEvent) => {\n if (!props.multiple) return\n if (e.code === EVENT_CODE.delete) return\n if (states.inputValue.length === 0) {\n e.preventDefault()\n const selected = (props.modelValue as Array<any>).slice()\n const lastNotDisabledIndex = getLastNotDisabledIndex(selected)\n if (lastNotDisabledIndex < 0) return\n const removeTagValue = selected[lastNotDisabledIndex]\n selected.splice(lastNotDisabledIndex, 1)\n const option = states.cachedOptions[lastNotDisabledIndex]\n states.cachedOptions.splice(lastNotDisabledIndex, 1)\n removeNewOption(option)\n update(selected)\n emit('remove-tag', removeTagValue)\n }\n }\n\n const handleClear = () => {\n let emptyValue: string | any[]\n if (isArray(props.modelValue)) {\n emptyValue = []\n } else {\n emptyValue = valueOnClear.value\n }\n\n if (props.multiple) {\n states.cachedOptions = []\n } else {\n states.selectedLabel = ''\n }\n expanded.value = false\n update(emptyValue)\n emit('clear')\n clearAllNewOption()\n focus()\n }\n\n const onKeyboardNavigate = (\n direction: 'forward' | 'backward',\n hoveringIndex: number = undefined\n ) => {\n const options = filteredOptions.value\n if (\n !['forward', 'backward'].includes(direction) ||\n selectDisabled.value ||\n options.length <= 0 ||\n optionsAllDisabled.value ||\n isComposing.value\n ) {\n return\n }\n if (!expanded.value) {\n return toggleMenu()\n }\n if (hoveringIndex === undefined) {\n hoveringIndex = states.hoveringIndex\n }\n let newIndex = -1\n if (direction === 'forward') {\n newIndex = hoveringIndex + 1\n if (newIndex >= options.length) {\n // return to the first option\n newIndex = 0\n }\n } else if (direction === 'backward') {\n newIndex = hoveringIndex - 1\n if (newIndex < 0 || newIndex >= options.length) {\n // navigate to the last one\n newIndex = options.length - 1\n }\n }\n const option = options[newIndex]\n if (getDisabled(option) || option.type === 'Group') {\n // prevent dispatching multiple nextTick callbacks.\n return onKeyboardNavigate(direction, newIndex)\n } else {\n states.hoveringIndex = newIndex\n scrollToItem(newIndex)\n }\n }\n\n const onKeyboardSelect = () => {\n if (!expanded.value) {\n return toggleMenu()\n } else if (\n ~states.hoveringIndex &&\n filteredOptions.value[states.hoveringIndex]\n ) {\n onSelect(filteredOptions.value[states.hoveringIndex])\n }\n }\n\n const onHoverOption = (idx: number) => {\n states.hoveringIndex = idx\n }\n\n const updateHoveringIndex = () => {\n if (!props.multiple) {\n states.hoveringIndex = filteredOptions.value.findIndex((item) => {\n return getValueKey(item) === getValueKey(props.modelValue)\n })\n } else {\n states.hoveringIndex = filteredOptions.value.findIndex((item) =>\n props.modelValue.some(\n (modelValue) => getValueKey(modelValue) === getValueKey(item)\n )\n )\n }\n }\n\n const onInput = (event) => {\n states.inputValue = event.target.value\n if (props.remote) {\n debouncedOnInputChange()\n } else {\n return onInputChange()\n }\n }\n\n const handleClickOutside = () => {\n expanded.value = false\n isFocused.value && blur()\n }\n\n const handleMenuEnter = () => {\n states.isBeforeHide = false\n return nextTick(() => {\n if (~indexRef.value) {\n scrollToItem(states.hoveringIndex)\n }\n })\n }\n\n const scrollToItem = (index: number) => {\n menuRef.value.scrollToItem(index)\n }\n\n const getOption = (value) => {\n // match the option with the given value, if not found, create a new option\n const selectValue = getValueKey(value)\n\n if (allOptionsValueMap.value.has(selectValue)) {\n const { option } = allOptionsValueMap.value.get(selectValue)\n\n return option\n }\n return {\n [aliasProps.value.value]: value,\n [aliasProps.value.label]: value,\n }\n }\n\n const initStates = () => {\n if (props.multiple) {\n if ((props.modelValue as Array<any>).length > 0) {\n states.cachedOptions.length = 0\n states.previousValue = props.modelValue.toString()\n\n for (const value of props.modelValue) {\n const option = getOption(value)\n states.cachedOptions.push(option)\n }\n } else {\n states.cachedOptions = []\n states.previousValue = undefined\n }\n } else {\n if (hasModelValue.value) {\n states.previousValue = props.modelValue\n const options = filteredOptions.value\n const selectedItemIndex = options.findIndex(\n (option) =>\n getValueKey(getValue(option)) === getValueKey(props.modelValue)\n )\n if (~selectedItemIndex) {\n states.selectedLabel = getLabel(options[selectedItemIndex])\n } else {\n states.selectedLabel = getValueKey(props.modelValue)\n }\n } else {\n states.selectedLabel = ''\n states.previousValue = undefined\n }\n }\n clearAllNewOption()\n calculatePopperSize()\n }\n\n // in order to track these individually, we need to turn them into refs instead of watching the entire\n // reactive object which could cause perf penalty when unnecessary field gets changed the watch method will\n // be invoked.\n\n watch(expanded, (val) => {\n if (val) {\n handleQueryChange('')\n } else {\n states.inputValue = ''\n states.previousQuery = null\n states.isBeforeHide = true\n createNewOption('')\n }\n emit('visible-change', val)\n })\n\n watch(\n () => props.modelValue,\n (val, oldVal) => {\n if (\n !val ||\n (props.multiple && val.toString() !== states.previousValue) ||\n (!props.multiple &&\n getValueKey(val) !== getValueKey(states.previousValue))\n ) {\n initStates()\n }\n if (!isEqual(val, oldVal) && props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n },\n {\n deep: true,\n }\n )\n\n watch(\n () => props.options,\n () => {\n const input = inputRef.value\n // filter or remote-search scenarios are not initialized\n if (!input || (input && document.activeElement !== input)) {\n initStates()\n }\n },\n {\n deep: true,\n flush: 'post',\n }\n )\n\n // fix the problem that scrollTop is not reset in filterable mode\n watch(\n () => filteredOptions.value,\n () => {\n return menuRef.value && nextTick(menuRef.value.resetScrollTop)\n }\n )\n\n watchEffect(() => {\n // Anything could cause options changed, then update options\n // If you want to control it by condition, write here\n if (states.isBeforeHide) return\n updateOptions()\n })\n\n watchEffect(() => {\n const { valueKey, options } = props\n const duplicateValue = new Map()\n for (const item of options) {\n const optionValue = getValue(item)\n let v = optionValue\n if (isObject(v)) {\n v = get(optionValue, valueKey)\n }\n if (duplicateValue.get(v)) {\n debugWarn(\n 'ElSelectV2',\n `The option values you provided seem to be duplicated, which may cause some problems, please check.`\n )\n break\n } else {\n duplicateValue.set(v, true)\n }\n }\n })\n\n onMounted(() => {\n initStates()\n })\n useResizeObserver(selectRef, handleResize)\n useResizeObserver(selectionRef, resetSelectionWidth)\n useResizeObserver(calculatorRef, resetCalculatorWidth)\n useResizeObserver(menuRef, updateTooltip)\n useResizeObserver(wrapperRef, updateTooltip)\n useResizeObserver(tagMenuRef, updateTagTooltip)\n useResizeObserver(collapseItemRef, resetCollapseItemWidth)\n\n return {\n // data exports\n inputId,\n collapseTagSize,\n currentPlaceholder,\n expanded,\n emptyText,\n popupHeight,\n debounce,\n allOptions,\n filteredOptions,\n iconComponent,\n iconReverse,\n tagStyle,\n collapseTagStyle,\n inputStyle,\n popperSize,\n dropdownMenuVisible,\n hasModelValue,\n shouldShowPlaceholder,\n selectDisabled,\n selectSize,\n showClearBtn,\n states,\n isFocused,\n nsSelect,\n nsInput,\n\n // refs items exports\n calculatorRef,\n inputRef,\n menuRef,\n tagMenuRef,\n tooltipRef,\n tagTooltipRef,\n selectRef,\n wrapperRef,\n selectionRef,\n prefixRef,\n suffixRef,\n collapseItemRef,\n\n popperRef,\n\n validateState,\n validateIcon,\n showTagList,\n collapseTagList,\n\n // methods exports\n debouncedOnInputChange,\n deleteTag,\n getLabel,\n getValue,\n getDisabled,\n getValueKey,\n handleClear,\n handleClickOutside,\n handleDel,\n handleEsc,\n focus,\n blur,\n handleMenuEnter,\n handleResize,\n resetSelectionWidth,\n resetCalculatorWidth,\n updateTooltip,\n updateTagTooltip,\n updateOptions,\n toggleMenu,\n scrollTo: scrollToItem,\n onInput,\n onKeyboardNavigate,\n onKeyboardSelect,\n onSelect,\n onHover: onHoverOption,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n }\n}\n\nexport default useSelect\n"],"names":["debounce","lodashDebounce"],"mappings":"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"}
1
+ {"version":3,"file":"useSelect.mjs","sources":["../../../../../../packages/components/select-v2/src/useSelect.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n computed,\n nextTick,\n onMounted,\n reactive,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n findLastIndex,\n get,\n isEqual,\n debounce as lodashDebounce,\n} from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport {\n ValidateComponentsMap,\n debugWarn,\n escapeStringRegexp,\n isArray,\n isFunction,\n isObject,\n} from '@element-plus/utils'\nimport {\n useComposition,\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport {\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\n\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useAllowCreate } from './useAllowCreate'\nimport { useProps } from './useProps'\n\nimport type ElTooltip from '@element-plus/components/tooltip'\nimport type { Option, OptionType } from './select.types'\nimport type { ISelectV2Props } from './token'\n\nconst MINIMUM_INPUT_WIDTH = 11\n\nconst useSelect = (props: ISelectV2Props, emit) => {\n // inject\n const { t } = useLocale()\n const nsSelect = useNamespace('select')\n const nsInput = useNamespace('input')\n const { form: elForm, formItem: elFormItem } = useFormItem()\n const { inputId } = useFormItemInputId(props, {\n formItemContext: elFormItem,\n })\n const { aliasProps, getLabel, getValue, getDisabled, getOptions } =\n useProps(props)\n const { valueOnClear, isEmptyValue } = useEmptyValues(props)\n\n const states = reactive({\n inputValue: '',\n cachedOptions: [] as Option[],\n createdOptions: [] as Option[],\n hoveringIndex: -1,\n inputHovering: false,\n selectionWidth: 0,\n calculatorWidth: 0,\n collapseItemWidth: 0,\n previousQuery: null,\n previousValue: undefined,\n selectedLabel: '',\n menuVisibleOnFocus: false,\n isBeforeHide: false,\n })\n\n // data refs\n const popperSize = ref(-1)\n\n // DOM & Component refs\n const selectRef = ref<HTMLElement>(null)\n const selectionRef = ref<HTMLElement>(null)\n const tooltipRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const tagTooltipRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const inputRef = ref<HTMLElement>(null)\n const calculatorRef = ref<HTMLElement>(null)\n const prefixRef = ref<HTMLElement>(null)\n const suffixRef = ref<HTMLElement>(null)\n const menuRef = ref<HTMLElement>(null)\n const tagMenuRef = ref<HTMLElement>(null)\n const collapseItemRef = ref<HTMLElement>(null)\n\n const {\n isComposing,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n } = useComposition({\n afterComposition: (e) => onInput(e),\n })\n\n const { wrapperRef, isFocused } = useFocusController(inputRef, {\n beforeFocus() {\n return selectDisabled.value\n },\n afterFocus() {\n if (props.automaticDropdown && !expanded.value) {\n expanded.value = true\n states.menuVisibleOnFocus = true\n }\n },\n beforeBlur(event) {\n return (\n tooltipRef.value?.isFocusInsideContent(event) ||\n tagTooltipRef.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n expanded.value = false\n states.menuVisibleOnFocus = false\n },\n })\n\n const allOptions = ref([])\n const filteredOptions = ref([])\n // the controller of the expanded popup\n const expanded = ref(false)\n\n const selectDisabled = computed(() => props.disabled || elForm?.disabled)\n\n const popupHeight = computed(() => {\n const totalHeight = filteredOptions.value.length * props.itemHeight\n return totalHeight > props.height ? props.height : totalHeight\n })\n\n const hasModelValue = computed(() => {\n return props.multiple\n ? isArray(props.modelValue) && props.modelValue.length > 0\n : !isEmptyValue(props.modelValue)\n })\n\n const showClearBtn = computed(() => {\n return (\n props.clearable &&\n !selectDisabled.value &&\n states.inputHovering &&\n hasModelValue.value\n )\n })\n\n const iconComponent = computed(() =>\n props.remote && props.filterable ? '' : ArrowDown\n )\n\n const iconReverse = computed(\n () => iconComponent.value && nsSelect.is('reverse', expanded.value)\n )\n\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(\n () => ValidateComponentsMap[validateState.value]\n )\n\n const debounce = computed(() => (props.remote ? 300 : 0))\n\n // filteredOptions includes flatten the data into one dimensional array.\n const emptyText = computed(() => {\n if (props.loading) {\n return props.loadingText || t('el.select.loading')\n } else {\n if (props.remote && !states.inputValue && allOptions.value.length === 0)\n return false\n if (\n props.filterable &&\n states.inputValue &&\n allOptions.value.length > 0 &&\n filteredOptions.value.length === 0\n ) {\n return props.noMatchText || t('el.select.noMatch')\n }\n if (allOptions.value.length === 0) {\n return props.noDataText || t('el.select.noData')\n }\n }\n return null\n })\n\n const filterOptions = (query) => {\n const isValidOption = (o: Option): boolean => {\n if (props.filterable && isFunction(props.filterMethod)) return true\n if (props.filterable && props.remote && isFunction(props.remoteMethod))\n return true\n // when query was given, we should test on the label see whether the label contains the given query\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n return query ? regexp.test(getLabel(o) || '') : true\n }\n if (props.loading) {\n return []\n }\n\n return [...states.createdOptions, ...props.options].reduce((all, item) => {\n const options = getOptions(item)\n\n if (isArray(options)) {\n const filtered = options.filter(isValidOption)\n\n if (filtered.length > 0) {\n all.push(\n {\n label: getLabel(item),\n type: 'Group',\n },\n ...filtered\n )\n }\n } else if (props.remote || isValidOption(item)) {\n all.push(item)\n }\n\n return all\n }, []) as OptionType[]\n }\n\n const updateOptions = () => {\n allOptions.value = filterOptions('') as OptionType[]\n filteredOptions.value = filterOptions(states.inputValue) as OptionType[]\n }\n\n const allOptionsValueMap = computed(() => {\n const valueMap = new Map()\n\n allOptions.value.forEach((option, index) => {\n valueMap.set(getValueKey(getValue(option)), { option, index })\n })\n return valueMap\n })\n\n const filteredOptionsValueMap = computed(() => {\n const valueMap = new Map()\n\n filteredOptions.value.forEach((option, index) => {\n valueMap.set(getValueKey(getValue(option)), { option, index })\n })\n return valueMap\n })\n\n const optionsAllDisabled = computed(() =>\n filteredOptions.value.every((option) => getDisabled(option))\n )\n\n const selectSize = useFormSize()\n\n const collapseTagSize = computed(() =>\n 'small' === selectSize.value ? 'small' : 'default'\n )\n\n const calculatePopperSize = () => {\n popperSize.value = selectRef.value?.offsetWidth || 200\n }\n\n const getGapWidth = () => {\n if (!selectionRef.value) return 0\n const style = window.getComputedStyle(selectionRef.value)\n return Number.parseFloat(style.gap || '6px')\n }\n\n // computed style\n const tagStyle = computed(() => {\n const gapWidth = getGapWidth()\n const maxWidth =\n collapseItemRef.value && props.maxCollapseTags === 1\n ? states.selectionWidth - states.collapseItemWidth - gapWidth\n : states.selectionWidth\n return { maxWidth: `${maxWidth}px` }\n })\n\n const collapseTagStyle = computed(() => {\n return { maxWidth: `${states.selectionWidth}px` }\n })\n\n const inputStyle = computed(() => ({\n width: `${Math.max(states.calculatorWidth, MINIMUM_INPUT_WIDTH)}px`,\n }))\n\n const shouldShowPlaceholder = computed(() => {\n if (isArray(props.modelValue)) {\n return props.modelValue.length === 0 && !states.inputValue\n }\n\n // when it's not multiple mode, we only determine this flag based on filterable and expanded\n // when filterable flag is true, which means we have input box on the screen\n return props.filterable ? !states.inputValue : true\n })\n\n const currentPlaceholder = computed(() => {\n const _placeholder = props.placeholder ?? t('el.select.placeholder')\n return props.multiple || !hasModelValue.value\n ? _placeholder\n : states.selectedLabel\n })\n\n // this obtains the actual popper DOM element.\n const popperRef = computed(() => tooltipRef.value?.popperRef?.contentRef)\n\n // the index with current value in options\n const indexRef = computed<number>(() => {\n if (props.multiple) {\n const len = (props.modelValue as []).length\n if (\n (props.modelValue as Array<any>).length > 0 &&\n filteredOptionsValueMap.value.has(props.modelValue[len - 1])\n ) {\n const { index } = filteredOptionsValueMap.value.get(\n props.modelValue[len - 1]\n )\n return index\n }\n } else {\n if (\n props.modelValue &&\n filteredOptionsValueMap.value.has(props.modelValue)\n ) {\n const { index } = filteredOptionsValueMap.value.get(props.modelValue)\n return index\n }\n }\n return -1\n })\n\n const dropdownMenuVisible = computed({\n get() {\n return expanded.value && emptyText.value !== false\n },\n set(val: boolean) {\n expanded.value = val\n },\n })\n\n const showTagList = computed(() => {\n if (!props.multiple) {\n return []\n }\n return props.collapseTags\n ? states.cachedOptions.slice(0, props.maxCollapseTags)\n : states.cachedOptions\n })\n\n const collapseTagList = computed(() => {\n if (!props.multiple) {\n return []\n }\n return props.collapseTags\n ? states.cachedOptions.slice(props.maxCollapseTags)\n : []\n })\n\n // hooks\n const {\n createNewOption,\n removeNewOption,\n selectNewOption,\n clearAllNewOption,\n } = useAllowCreate(props, states)\n\n // methods\n const toggleMenu = () => {\n if (selectDisabled.value) return\n\n if (states.menuVisibleOnFocus) {\n // controlled by automaticDropdown\n states.menuVisibleOnFocus = false\n } else {\n expanded.value = !expanded.value\n }\n }\n\n const onInputChange = () => {\n if (states.inputValue.length > 0 && !expanded.value) {\n expanded.value = true\n }\n createNewOption(states.inputValue)\n handleQueryChange(states.inputValue)\n }\n\n const debouncedOnInputChange = lodashDebounce(onInputChange, debounce.value)\n\n const handleQueryChange = (val: string) => {\n if (states.previousQuery === val || isComposing.value) {\n return\n }\n states.previousQuery = val\n if (props.filterable && isFunction(props.filterMethod)) {\n props.filterMethod(val)\n } else if (\n props.filterable &&\n props.remote &&\n isFunction(props.remoteMethod)\n ) {\n props.remoteMethod(val)\n }\n if (\n props.defaultFirstOption &&\n (props.filterable || props.remote) &&\n filteredOptions.value.length\n ) {\n nextTick(checkDefaultFirstOption)\n } else {\n nextTick(updateHoveringIndex)\n }\n }\n\n /**\n * find and highlight first option as default selected\n * @remark\n * - if the first option in dropdown list is user-created,\n * it would be at the end of the optionsArray\n * so find it and set hover.\n * (NOTE: there must be only one user-created option in dropdown list with query)\n * - if there's no user-created option in list, just find the first one as usual\n * (NOTE: exclude options that are disabled or in disabled-group)\n */\n const checkDefaultFirstOption = () => {\n const optionsInDropdown = filteredOptions.value.filter(\n (n) => !n.disabled && n.type !== 'Group'\n )\n const userCreatedOption = optionsInDropdown.find((n) => n.created)\n const firstOriginOption = optionsInDropdown[0]\n states.hoveringIndex = getValueIndex(\n filteredOptions.value,\n userCreatedOption || firstOriginOption\n )\n }\n\n const emitChange = (val: any | any[]) => {\n if (!isEqual(props.modelValue, val)) {\n emit(CHANGE_EVENT, val)\n }\n }\n\n const update = (val: any) => {\n emit(UPDATE_MODEL_EVENT, val)\n emitChange(val)\n states.previousValue = props.multiple ? String(val) : val\n }\n\n const getValueIndex = (arr = [], value: unknown) => {\n if (!isObject(value)) {\n return arr.indexOf(value)\n }\n const valueKey = props.valueKey\n let index = -1\n arr.some((item, i) => {\n if (get(item, valueKey) === get(value, valueKey)) {\n index = i\n return true\n }\n return false\n })\n return index\n }\n\n const getValueKey = (item: unknown) => {\n return isObject(item) ? get(item, props.valueKey) : item\n }\n\n const handleResize = () => {\n calculatePopperSize()\n }\n\n const resetSelectionWidth = () => {\n states.selectionWidth = selectionRef.value.getBoundingClientRect().width\n }\n\n const resetCalculatorWidth = () => {\n states.calculatorWidth = calculatorRef.value.getBoundingClientRect().width\n }\n\n const resetCollapseItemWidth = () => {\n states.collapseItemWidth =\n collapseItemRef.value.getBoundingClientRect().width\n }\n\n const updateTooltip = () => {\n tooltipRef.value?.updatePopper?.()\n }\n\n const updateTagTooltip = () => {\n tagTooltipRef.value?.updatePopper?.()\n }\n\n const onSelect = (option: Option) => {\n if (props.multiple) {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValue(option))\n if (index > -1) {\n selectedOptions = [\n ...selectedOptions.slice(0, index),\n ...selectedOptions.slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n removeNewOption(option)\n } else if (\n props.multipleLimit <= 0 ||\n selectedOptions.length < props.multipleLimit\n ) {\n selectedOptions = [...selectedOptions, getValue(option)]\n states.cachedOptions.push(option)\n selectNewOption(option)\n }\n update(selectedOptions)\n if (option.created) {\n handleQueryChange('')\n }\n if (props.filterable && !props.reserveKeyword) {\n states.inputValue = ''\n }\n } else {\n states.selectedLabel = getLabel(option)\n update(getValue(option))\n expanded.value = false\n selectNewOption(option)\n if (!option.created) {\n clearAllNewOption()\n }\n }\n focus()\n }\n\n const deleteTag = (event: MouseEvent, option: Option) => {\n let selectedOptions = (props.modelValue as any[]).slice()\n\n const index = getValueIndex(selectedOptions, getValue(option))\n\n if (index > -1 && !selectDisabled.value) {\n selectedOptions = [\n ...(props.modelValue as Array<unknown>).slice(0, index),\n ...(props.modelValue as Array<unknown>).slice(index + 1),\n ]\n states.cachedOptions.splice(index, 1)\n update(selectedOptions)\n emit('remove-tag', getValue(option))\n removeNewOption(option)\n }\n event.stopPropagation()\n focus()\n }\n\n const focus = () => {\n inputRef.value?.focus()\n }\n\n const blur = () => {\n inputRef.value?.blur()\n }\n\n // keyboard handlers\n const handleEsc = () => {\n if (states.inputValue.length > 0) {\n states.inputValue = ''\n } else {\n expanded.value = false\n }\n }\n\n const getLastNotDisabledIndex = (value) =>\n findLastIndex(\n value,\n (it) =>\n !states.cachedOptions.some(\n (option) => getValue(option) === it && getDisabled(option)\n )\n )\n\n const handleDel = (e: KeyboardEvent) => {\n if (!props.multiple) return\n if (e.code === EVENT_CODE.delete) return\n if (states.inputValue.length === 0) {\n e.preventDefault()\n const selected = (props.modelValue as Array<any>).slice()\n const lastNotDisabledIndex = getLastNotDisabledIndex(selected)\n if (lastNotDisabledIndex < 0) return\n const removeTagValue = selected[lastNotDisabledIndex]\n selected.splice(lastNotDisabledIndex, 1)\n const option = states.cachedOptions[lastNotDisabledIndex]\n states.cachedOptions.splice(lastNotDisabledIndex, 1)\n removeNewOption(option)\n update(selected)\n emit('remove-tag', removeTagValue)\n }\n }\n\n const handleClear = () => {\n let emptyValue: string | any[]\n if (isArray(props.modelValue)) {\n emptyValue = []\n } else {\n emptyValue = valueOnClear.value\n }\n\n if (props.multiple) {\n states.cachedOptions = []\n } else {\n states.selectedLabel = ''\n }\n expanded.value = false\n update(emptyValue)\n emit('clear')\n clearAllNewOption()\n focus()\n }\n\n const onKeyboardNavigate = (\n direction: 'forward' | 'backward',\n hoveringIndex: number = undefined\n ) => {\n const options = filteredOptions.value\n if (\n !['forward', 'backward'].includes(direction) ||\n selectDisabled.value ||\n options.length <= 0 ||\n optionsAllDisabled.value ||\n isComposing.value\n ) {\n return\n }\n if (!expanded.value) {\n return toggleMenu()\n }\n if (hoveringIndex === undefined) {\n hoveringIndex = states.hoveringIndex\n }\n let newIndex = -1\n if (direction === 'forward') {\n newIndex = hoveringIndex + 1\n if (newIndex >= options.length) {\n // return to the first option\n newIndex = 0\n }\n } else if (direction === 'backward') {\n newIndex = hoveringIndex - 1\n if (newIndex < 0 || newIndex >= options.length) {\n // navigate to the last one\n newIndex = options.length - 1\n }\n }\n const option = options[newIndex]\n if (getDisabled(option) || option.type === 'Group') {\n // prevent dispatching multiple nextTick callbacks.\n return onKeyboardNavigate(direction, newIndex)\n } else {\n states.hoveringIndex = newIndex\n scrollToItem(newIndex)\n }\n }\n\n const onKeyboardSelect = () => {\n if (!expanded.value) {\n return toggleMenu()\n } else if (\n ~states.hoveringIndex &&\n filteredOptions.value[states.hoveringIndex]\n ) {\n onSelect(filteredOptions.value[states.hoveringIndex])\n }\n }\n\n const onHoverOption = (idx: number) => {\n states.hoveringIndex = idx\n }\n\n const updateHoveringIndex = () => {\n if (!props.multiple) {\n states.hoveringIndex = filteredOptions.value.findIndex((item) => {\n return getValueKey(item) === getValueKey(props.modelValue)\n })\n } else {\n states.hoveringIndex = filteredOptions.value.findIndex((item) =>\n props.modelValue.some(\n (modelValue) => getValueKey(modelValue) === getValueKey(item)\n )\n )\n }\n }\n\n const onInput = (event) => {\n states.inputValue = event.target.value\n if (props.remote) {\n debouncedOnInputChange()\n } else {\n return onInputChange()\n }\n }\n\n const handleClickOutside = () => {\n expanded.value = false\n isFocused.value && blur()\n }\n\n const handleMenuEnter = () => {\n states.isBeforeHide = false\n return nextTick(() => {\n if (~indexRef.value) {\n scrollToItem(states.hoveringIndex)\n }\n })\n }\n\n const scrollToItem = (index: number) => {\n menuRef.value.scrollToItem(index)\n }\n\n const getOption = (value: any, cachedOptions?: Option[]) => {\n // match the option with the given value, if not found, create a new option\n const selectValue = getValueKey(value)\n\n if (allOptionsValueMap.value.has(selectValue)) {\n const { option } = allOptionsValueMap.value.get(selectValue)\n\n return option\n }\n if (cachedOptions && cachedOptions.length) {\n const option = cachedOptions.find(\n (option) => getValueKey(getValue(option)) === selectValue\n )\n if (option) {\n return option\n }\n }\n\n return {\n [aliasProps.value.value]: value,\n [aliasProps.value.label]: value,\n }\n }\n\n const initStates = () => {\n if (props.multiple) {\n if ((props.modelValue as Array<any>).length > 0) {\n const cachedOptions = states.cachedOptions.slice()\n states.cachedOptions.length = 0\n states.previousValue = props.modelValue.toString()\n\n for (const value of props.modelValue) {\n const option = getOption(value, cachedOptions)\n states.cachedOptions.push(option)\n }\n } else {\n states.cachedOptions = []\n states.previousValue = undefined\n }\n } else {\n if (hasModelValue.value) {\n states.previousValue = props.modelValue\n const options = filteredOptions.value\n const selectedItemIndex = options.findIndex(\n (option) =>\n getValueKey(getValue(option)) === getValueKey(props.modelValue)\n )\n if (~selectedItemIndex) {\n states.selectedLabel = getLabel(options[selectedItemIndex])\n } else {\n states.selectedLabel = getValueKey(props.modelValue)\n }\n } else {\n states.selectedLabel = ''\n states.previousValue = undefined\n }\n }\n clearAllNewOption()\n calculatePopperSize()\n }\n\n // in order to track these individually, we need to turn them into refs instead of watching the entire\n // reactive object which could cause perf penalty when unnecessary field gets changed the watch method will\n // be invoked.\n\n watch(expanded, (val) => {\n if (val) {\n handleQueryChange('')\n } else {\n states.inputValue = ''\n states.previousQuery = null\n states.isBeforeHide = true\n createNewOption('')\n }\n emit('visible-change', val)\n })\n\n watch(\n () => props.modelValue,\n (val, oldVal) => {\n if (\n !val ||\n (props.multiple && val.toString() !== states.previousValue) ||\n (!props.multiple &&\n getValueKey(val) !== getValueKey(states.previousValue))\n ) {\n initStates()\n }\n if (!isEqual(val, oldVal) && props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n },\n {\n deep: true,\n }\n )\n\n watch(\n () => props.options,\n () => {\n const input = inputRef.value\n // filter or remote-search scenarios are not initialized\n if (!input || (input && document.activeElement !== input)) {\n initStates()\n }\n },\n {\n deep: true,\n flush: 'post',\n }\n )\n\n // fix the problem that scrollTop is not reset in filterable mode\n watch(\n () => filteredOptions.value,\n () => {\n return menuRef.value && nextTick(menuRef.value.resetScrollTop)\n }\n )\n\n watchEffect(() => {\n // Anything could cause options changed, then update options\n // If you want to control it by condition, write here\n if (states.isBeforeHide) return\n updateOptions()\n })\n\n watchEffect(() => {\n const { valueKey, options } = props\n const duplicateValue = new Map()\n for (const item of options) {\n const optionValue = getValue(item)\n let v = optionValue\n if (isObject(v)) {\n v = get(optionValue, valueKey)\n }\n if (duplicateValue.get(v)) {\n debugWarn(\n 'ElSelectV2',\n `The option values you provided seem to be duplicated, which may cause some problems, please check.`\n )\n break\n } else {\n duplicateValue.set(v, true)\n }\n }\n })\n\n onMounted(() => {\n initStates()\n })\n useResizeObserver(selectRef, handleResize)\n useResizeObserver(selectionRef, resetSelectionWidth)\n useResizeObserver(calculatorRef, resetCalculatorWidth)\n useResizeObserver(menuRef, updateTooltip)\n useResizeObserver(wrapperRef, updateTooltip)\n useResizeObserver(tagMenuRef, updateTagTooltip)\n useResizeObserver(collapseItemRef, resetCollapseItemWidth)\n\n return {\n // data exports\n inputId,\n collapseTagSize,\n currentPlaceholder,\n expanded,\n emptyText,\n popupHeight,\n debounce,\n allOptions,\n filteredOptions,\n iconComponent,\n iconReverse,\n tagStyle,\n collapseTagStyle,\n inputStyle,\n popperSize,\n dropdownMenuVisible,\n hasModelValue,\n shouldShowPlaceholder,\n selectDisabled,\n selectSize,\n showClearBtn,\n states,\n isFocused,\n nsSelect,\n nsInput,\n\n // refs items exports\n calculatorRef,\n inputRef,\n menuRef,\n tagMenuRef,\n tooltipRef,\n tagTooltipRef,\n selectRef,\n wrapperRef,\n selectionRef,\n prefixRef,\n suffixRef,\n collapseItemRef,\n\n popperRef,\n\n validateState,\n validateIcon,\n showTagList,\n collapseTagList,\n\n // methods exports\n debouncedOnInputChange,\n deleteTag,\n getLabel,\n getValue,\n getDisabled,\n getValueKey,\n handleClear,\n handleClickOutside,\n handleDel,\n handleEsc,\n focus,\n blur,\n handleMenuEnter,\n handleResize,\n resetSelectionWidth,\n resetCalculatorWidth,\n updateTooltip,\n updateTagTooltip,\n updateOptions,\n toggleMenu,\n scrollTo: scrollToItem,\n onInput,\n onKeyboardNavigate,\n onKeyboardSelect,\n onSelect,\n onHover: onHoverOption,\n handleCompositionStart,\n handleCompositionEnd,\n handleCompositionUpdate,\n }\n}\n\nexport default useSelect\n"],"names":["debounce","lodashDebounce"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA4CA,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC1B,MAAC,SAAS,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK;AACnC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC;AAC5B,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC1C,EAAE,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACxC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;AAC/D,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,KAAK,EAAE;AAChD,IAAI,eAAe,EAAE,UAAU;AAC/B,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtF,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/D,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC;AAC1B,IAAI,UAAU,EAAE,EAAE;AAClB,IAAI,aAAa,EAAE,EAAE;AACrB,IAAI,cAAc,EAAE,EAAE;AACtB,IAAI,aAAa,EAAE,CAAC,CAAC;AACrB,IAAI,aAAa,EAAE,KAAK;AACxB,IAAI,cAAc,EAAE,CAAC;AACrB,IAAI,eAAe,EAAE,CAAC;AACtB,IAAI,iBAAiB,EAAE,CAAC;AACxB,IAAI,aAAa,EAAE,IAAI;AACvB,IAAI,aAAa,EAAE,KAAK,CAAC;AACzB,IAAI,aAAa,EAAE,EAAE;AACrB,IAAI,kBAAkB,EAAE,KAAK;AAC7B,IAAI,YAAY,EAAE,KAAK;AACvB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7B,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,EAAE,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,EAAE,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7B,EAAE,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5B,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,EAAE,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AACpC,EAAE,MAAM;AACR,IAAI,WAAW;AACf,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,GAAG,GAAG,cAAc,CAAC;AACrB,IAAI,gBAAgB,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC;AACvC,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,QAAQ,EAAE;AACjE,IAAI,WAAW,GAAG;AAClB,MAAM,OAAO,cAAc,CAAC,KAAK,CAAC;AAClC,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACtD,QAAQ,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;AAC9B,QAAQ,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC;AACzC,OAAO;AACP,KAAK;AACL,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,MAAM,IAAI,EAAE,EAAE,EAAE,CAAC;AACjB,MAAM,OAAO,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3K,KAAK;AACL,IAAI,SAAS,GAAG;AAChB,MAAM,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,MAAM,MAAM,CAAC,kBAAkB,GAAG,KAAK,CAAC;AACxC,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AAC7B,EAAE,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AAClC,EAAE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9B,EAAE,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvG,EAAE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM;AACrC,IAAI,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;AACxE,IAAI,OAAO,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;AACnE,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;AACvC,IAAI,OAAO,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACvH,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM;AACtC,IAAI,OAAO,KAAK,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,KAAK,CAAC;AACnG,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;AAC1F,EAAE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACpG,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;AACvG,EAAE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,qBAAqB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAClF,EAAE,MAAMA,UAAQ,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;AAC1D,EAAE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM;AACnC,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE;AACvB,MAAM,OAAO,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC;AACzD,KAAK,MAAM;AACX,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;AAC7E,QAAQ,OAAO,KAAK,CAAC;AACrB,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACtH,QAAQ,OAAO,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAC3D,OAAO;AACP,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACzC,QAAQ,OAAO,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACzD,OAAO;AACP,KAAK;AACL,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,aAAa,GAAG,CAAC,KAAK,KAAK;AACnC,IAAI,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK;AACjC,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;AAC5D,QAAQ,OAAO,IAAI,CAAC;AACpB,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;AAC5E,QAAQ,OAAO,IAAI,CAAC;AACpB,MAAM,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;AAChE,MAAM,OAAO,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;AAC3D,KAAK,CAAC;AACN,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE;AACvB,MAAM,OAAO,EAAE,CAAC;AAChB,KAAK;AACL,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK;AAC9E,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;AACvC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;AAC5B,QAAQ,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AACvD,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,UAAU,GAAG,CAAC,IAAI,CAAC;AACnB,YAAY,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;AACjC,YAAY,IAAI,EAAE,OAAO;AACzB,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC1B,SAAS;AACT,OAAO,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;AACtD,QAAQ,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvB,OAAO;AACP,MAAM,OAAO,GAAG,CAAC;AACjB,KAAK,EAAE,EAAE,CAAC,CAAC;AACX,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,UAAU,CAAC,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;AACzC,IAAI,eAAe,CAAC,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC7D,GAAG,CAAC;AACJ,EAAE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM;AAC5C,IAAI,MAAM,QAAQ,mBAAmB,IAAI,GAAG,EAAE,CAAC;AAC/C,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAK;AAChD,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACrE,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,QAAQ,CAAC;AACpB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,uBAAuB,GAAG,QAAQ,CAAC,MAAM;AACjD,IAAI,MAAM,QAAQ,mBAAmB,IAAI,GAAG,EAAE,CAAC;AAC/C,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAK;AACrD,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACrE,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,QAAQ,CAAC;AACpB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC1G,EAAE,MAAM,UAAU,GAAG,WAAW,EAAE,CAAC;AACnC,EAAE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,UAAU,CAAC,KAAK,KAAK,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;AAC7F,EAAE,MAAM,mBAAmB,GAAG,MAAM;AACpC,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,KAAK,GAAG,CAAC;AACzF,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK;AAC3B,MAAM,OAAO,CAAC,CAAC;AACf,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC9D,IAAI,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;AACjD,GAAG,CAAC;AACJ,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAClC,IAAI,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;AACnC,IAAI,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,IAAI,KAAK,CAAC,eAAe,KAAK,CAAC,GAAG,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,iBAAiB,GAAG,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC;AAChK,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AACzC,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM;AAC1C,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO;AACrC,IAAI,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC;AACvE,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM;AAC/C,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;AACnC,MAAM,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;AACjE,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;AACxD,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM;AAC5C,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,YAAY,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,KAAK,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC;AAC5F,IAAI,OAAO,KAAK,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC;AACxF,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM;AACnC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;AAC3G,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAClC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;AAC1C,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE;AACvG,QAAQ,MAAM,EAAE,KAAK,EAAE,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AACvF,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP,KAAK,MAAM;AACX,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;AACnF,QAAQ,MAAM,EAAE,KAAK,EAAE,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AAC9E,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP,KAAK;AACL,IAAI,OAAO,CAAC,CAAC,CAAC;AACd,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AACvC,IAAI,GAAG,GAAG;AACV,MAAM,OAAO,QAAQ,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,CAAC;AACzD,KAAK;AACL,IAAI,GAAG,CAAC,GAAG,EAAE;AACb,MAAM,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC;AAC3B,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM;AACrC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACzB,MAAM,OAAO,EAAE,CAAC;AAChB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;AAC5G,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM;AACzC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACzB,MAAM,OAAO,EAAE,CAAC;AAChB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;AACvF,GAAG,CAAC,CAAC;AACL,EAAE,MAAM;AACR,IAAI,eAAe;AACnB,IAAI,eAAe;AACnB,IAAI,eAAe;AACnB,IAAI,iBAAiB;AACrB,GAAG,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACpC,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,IAAI,cAAc,CAAC,KAAK;AAC5B,MAAM,OAAO;AACb,IAAI,IAAI,MAAM,CAAC,kBAAkB,EAAE;AACnC,MAAM,MAAM,CAAC,kBAAkB,GAAG,KAAK,CAAC;AACxC,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvC,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACzD,MAAM,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;AAC5B,KAAK;AACL,IAAI,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACvC,IAAI,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACzC,GAAG,CAAC;AACJ,EAAE,MAAM,sBAAsB,GAAGC,QAAc,CAAC,aAAa,EAAED,UAAQ,CAAC,KAAK,CAAC,CAAC;AAC/E,EAAE,MAAM,iBAAiB,GAAG,CAAC,GAAG,KAAK;AACrC,IAAI,IAAI,MAAM,CAAC,aAAa,KAAK,GAAG,IAAI,WAAW,CAAC,KAAK,EAAE;AAC3D,MAAM,OAAO;AACb,KAAK;AACL,IAAI,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC;AAC/B,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;AAC5D,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AAC9B,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;AACnF,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AAC9B,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,kBAAkB,KAAK,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE;AACxG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AACxC,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AACpC,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,uBAAuB,GAAG,MAAM;AACxC,IAAI,MAAM,iBAAiB,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AACrG,IAAI,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;AACvE,IAAI,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACnD,IAAI,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,iBAAiB,IAAI,iBAAiB,CAAC,CAAC;AACxG,GAAG,CAAC;AACJ,EAAE,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK;AAC9B,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;AACzC,MAAM,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;AAC9B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK;AAC1B,IAAI,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;AAClC,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AACpB,IAAI,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAC9D,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,KAAK;AAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC1B,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAChC,KAAK;AACL,IAAI,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;AACpC,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;AACnB,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK;AAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE;AACxD,QAAQ,KAAK,GAAG,CAAC,CAAC;AAClB,QAAQ,OAAO,IAAI,CAAC;AACpB,OAAO;AACP,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,CAAC,IAAI,KAAK;AAChC,IAAI,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;AAC7D,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,mBAAmB,EAAE,CAAC;AAC1B,GAAG,CAAC;AACJ,EAAE,MAAM,mBAAmB,GAAG,MAAM;AACpC,IAAI,MAAM,CAAC,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;AAC7E,GAAG,CAAC;AACJ,EAAE,MAAM,oBAAoB,GAAG,MAAM;AACrC,IAAI,MAAM,CAAC,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;AAC/E,GAAG,CAAC;AACJ,EAAE,MAAM,sBAAsB,GAAG,MAAM;AACvC,IAAI,MAAM,CAAC,iBAAiB,GAAG,eAAe,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;AACnF,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrG,GAAG,CAAC;AACJ,EAAE,MAAM,gBAAgB,GAAG,MAAM;AACjC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxG,GAAG,CAAC;AACJ,EAAE,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK;AAC/B,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,MAAM,IAAI,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;AACrD,MAAM,MAAM,KAAK,GAAG,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACrE,MAAM,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;AACtB,QAAQ,eAAe,GAAG;AAC1B,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;AAC5C,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;AAC7C,SAAS,CAAC;AACV,QAAQ,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC9C,QAAQ,eAAe,CAAC,MAAM,CAAC,CAAC;AAChC,OAAO,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE;AAC3F,QAAQ,eAAe,GAAG,CAAC,GAAG,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACjE,QAAQ,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1C,QAAQ,eAAe,CAAC,MAAM,CAAC,CAAC;AAChC,OAAO;AACP,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;AAC9B,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE;AAC1B,QAAQ,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC9B,OAAO;AACP,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;AACrD,QAAQ,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC;AAC/B,OAAO;AACP,KAAK,MAAM;AACX,MAAM,MAAM,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,MAAM,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;AAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AAC3B,QAAQ,iBAAiB,EAAE,CAAC;AAC5B,OAAO;AACP,KAAK;AACL,IAAI,KAAK,EAAE,CAAC;AACZ,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK;AACvC,IAAI,IAAI,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;AACnD,IAAI,MAAM,KAAK,GAAG,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACnE,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;AAC7C,MAAM,eAAe,GAAG;AACxB,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;AAC3C,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;AAC5C,OAAO,CAAC;AACR,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC5C,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;AAC9B,MAAM,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3C,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;AAC9B,KAAK;AACL,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;AAC5B,IAAI,KAAK,EAAE,CAAC;AACZ,GAAG,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM;AACtB,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;AACxD,GAAG,CAAC;AACJ,EAAE,MAAM,IAAI,GAAG,MAAM;AACrB,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;AACvD,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAG,MAAM;AAC1B,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACtC,MAAM,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC;AAC7B,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,uBAAuB,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAClK,EAAE,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK;AAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;AACvB,MAAM,OAAO;AACb,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM;AACpC,MAAM,OAAO;AACb,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AACxC,MAAM,CAAC,CAAC,cAAc,EAAE,CAAC;AACzB,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;AAChD,MAAM,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AACrE,MAAM,IAAI,oBAAoB,GAAG,CAAC;AAClC,QAAQ,OAAO;AACf,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAC5D,MAAM,QAAQ,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;AAC/C,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;AAChE,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;AAC3D,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;AAC9B,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;AACvB,MAAM,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;AACzC,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,IAAI,UAAU,CAAC;AACnB,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;AACnC,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,KAAK,MAAM;AACX,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,MAAM,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;AAChC,KAAK,MAAM;AACX,MAAM,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;AAChC,KAAK;AACL,IAAI,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC;AACvB,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;AAClB,IAAI,iBAAiB,EAAE,CAAC;AACxB,IAAI,KAAK,EAAE,CAAC;AACZ,GAAG,CAAC;AACJ,EAAE,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,aAAa,GAAG,KAAK,CAAC,KAAK;AACpE,IAAI,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC;AAC1C,IAAI,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,EAAE;AACtJ,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACzB,MAAM,OAAO,UAAU,EAAE,CAAC;AAC1B,KAAK;AACL,IAAI,IAAI,aAAa,KAAK,KAAK,CAAC,EAAE;AAClC,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;AAC3C,KAAK;AACL,IAAI,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;AACtB,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE;AACjC,MAAM,QAAQ,GAAG,aAAa,GAAG,CAAC,CAAC;AACnC,MAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE;AACtC,QAAQ,QAAQ,GAAG,CAAC,CAAC;AACrB,OAAO;AACP,KAAK,MAAM,IAAI,SAAS,KAAK,UAAU,EAAE;AACzC,MAAM,QAAQ,GAAG,aAAa,GAAG,CAAC,CAAC;AACnC,MAAM,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE;AACtD,QAAQ,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AACtC,OAAO;AACP,KAAK;AACL,IAAI,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,IAAI,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;AACxD,MAAM,OAAO,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACrD,KAAK,MAAM;AACX,MAAM,MAAM,CAAC,aAAa,GAAG,QAAQ,CAAC;AACtC,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC7B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,gBAAgB,GAAG,MAAM;AACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACzB,MAAM,OAAO,UAAU,EAAE,CAAC;AAC1B,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;AACrF,MAAM,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;AAC5D,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,CAAC,GAAG,KAAK;AACjC,IAAI,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC;AAC/B,GAAG,CAAC;AACJ,EAAE,MAAM,mBAAmB,GAAG,MAAM;AACpC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACzB,MAAM,MAAM,CAAC,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK;AACvE,QAAQ,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACnE,OAAO,CAAC,CAAC;AACT,KAAK,MAAM;AACX,MAAM,MAAM,CAAC,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,WAAW,CAAC,UAAU,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7J,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,OAAO,GAAG,CAAC,KAAK,KAAK;AAC7B,IAAI,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAC3C,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE;AACtB,MAAM,sBAAsB,EAAE,CAAC;AAC/B,KAAK,MAAM;AACX,MAAM,OAAO,aAAa,EAAE,CAAC;AAC7B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,kBAAkB,GAAG,MAAM;AACnC,IAAI,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;AAC9B,GAAG,CAAC;AACJ,EAAE,MAAM,eAAe,GAAG,MAAM;AAChC,IAAI,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;AAChC,IAAI,OAAO,QAAQ,CAAC,MAAM;AAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AAC3B,QAAQ,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAC3C,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK;AAClC,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACtC,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK;AAC9C,IAAI,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;AACnD,MAAM,MAAM,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACnE,MAAM,OAAO,MAAM,CAAC;AACpB,KAAK;AACL,IAAI,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;AAC/C,MAAM,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;AACrG,MAAM,IAAI,MAAM,EAAE;AAClB,QAAQ,OAAO,MAAM,CAAC;AACtB,OAAO;AACP,KAAK;AACL,IAAI,OAAO;AACX,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;AACrC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;AACrC,KAAK,CAAC;AACN,GAAG,CAAC;AACJ,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;AACxB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACvC,QAAQ,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;AAC3D,QAAQ,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;AACxC,QAAQ,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;AAC3D,QAAQ,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,UAAU,EAAE;AAC9C,UAAU,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AACzD,UAAU,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5C,SAAS;AACT,OAAO,MAAM;AACb,QAAQ,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;AAClC,QAAQ,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AACtC,OAAO;AACP,KAAK,MAAM;AACX,MAAM,IAAI,aAAa,CAAC,KAAK,EAAE;AAC/B,QAAQ,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC;AAChD,QAAQ,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC;AAC9C,QAAQ,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AACjI,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC,UAAU,MAAM,CAAC,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACtE,SAAS,MAAM;AACf,UAAU,MAAM,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AAC/D,SAAS;AACT,OAAO,MAAM;AACb,QAAQ,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;AAClC,QAAQ,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AACtC,OAAO;AACP,KAAK;AACL,IAAI,iBAAiB,EAAE,CAAC;AACxB,IAAI,mBAAmB,EAAE,CAAC;AAC1B,GAAG,CAAC;AACJ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK;AAC3B,IAAI,IAAI,GAAG,EAAE;AACb,MAAM,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC5B,KAAK,MAAM;AACX,MAAM,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC;AAC7B,MAAM,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;AAClC,MAAM,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;AAC1B,KAAK;AACL,IAAI,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;AAChC,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK;AACjD,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,MAAM,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;AACxJ,MAAM,UAAU,EAAE,CAAC;AACnB,KAAK;AACL,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE;AACtD,MAAM,CAAC,EAAE,GAAG,UAAU,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,QAAQ,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/I,KAAK;AACL,GAAG,EAAE;AACL,IAAI,IAAI,EAAE,IAAI;AACd,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,MAAM;AACnC,IAAI,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;AACjC,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,QAAQ,CAAC,aAAa,KAAK,KAAK,EAAE;AAC7D,MAAM,UAAU,EAAE,CAAC;AACnB,KAAK;AACL,GAAG,EAAE;AACL,IAAI,IAAI,EAAE,IAAI;AACd,IAAI,KAAK,EAAE,MAAM;AACjB,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM;AAC3C,IAAI,OAAO,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AACnE,GAAG,CAAC,CAAC;AACL,EAAE,WAAW,CAAC,MAAM;AACpB,IAAI,IAAI,MAAM,CAAC,YAAY;AAC3B,MAAM,OAAO;AACb,IAAI,aAAa,EAAE,CAAC;AACpB,GAAG,CAAC,CAAC;AACL,EAAE,WAAW,CAAC,MAAM;AACpB,IAAI,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACxC,IAAI,MAAM,cAAc,mBAAmB,IAAI,GAAG,EAAE,CAAC;AACrD,IAAI,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;AAChC,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzC,MAAM,IAAI,CAAC,GAAG,WAAW,CAAC;AAC1B,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE;AACvB,QAAQ,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AACvC,OAAO;AACP,MAAM,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;AACjC,QAAQ,SAAS,CAAC,YAAY,EAAE,CAAC,kGAAkG,CAAC,CAAC,CAAC;AACtI,QAAQ,MAAM;AACd,OAAO,MAAM;AACb,QAAQ,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACpC,OAAO;AACP,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,UAAU,EAAE,CAAC;AACjB,GAAG,CAAC,CAAC;AACL,EAAE,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAC7C,EAAE,iBAAiB,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;AACvD,EAAE,iBAAiB,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;AACzD,EAAE,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC5C,EAAE,iBAAiB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAC/C,EAAE,iBAAiB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AAClD,EAAE,iBAAiB,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;AAC7D,EAAE,OAAO;AACT,IAAI,OAAO;AACX,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,WAAW;AACf,cAAIA,UAAQ;AACZ,IAAI,UAAU;AACd,IAAI,eAAe;AACnB,IAAI,aAAa;AACjB,IAAI,WAAW;AACf,IAAI,QAAQ;AACZ,IAAI,gBAAgB;AACpB,IAAI,UAAU;AACd,IAAI,UAAU;AACd,IAAI,mBAAmB;AACvB,IAAI,aAAa;AACjB,IAAI,qBAAqB;AACzB,IAAI,cAAc;AAClB,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,aAAa;AACjB,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,UAAU;AACd,IAAI,UAAU;AACd,IAAI,aAAa;AACjB,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,SAAS;AACb,IAAI,SAAS;AACb,IAAI,eAAe;AACnB,IAAI,SAAS;AACb,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,eAAe;AACnB,IAAI,sBAAsB;AAC1B,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,kBAAkB;AACtB,IAAI,SAAS;AACb,IAAI,SAAS;AACb,IAAI,KAAK;AACT,IAAI,IAAI;AACR,IAAI,eAAe;AACnB,IAAI,YAAY;AAChB,IAAI,mBAAmB;AACvB,IAAI,oBAAoB;AACxB,IAAI,aAAa;AACjB,IAAI,gBAAgB;AACpB,IAAI,aAAa;AACjB,IAAI,UAAU;AACd,IAAI,QAAQ,EAAE,YAAY;AAC1B,IAAI,OAAO;AACX,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,QAAQ;AACZ,IAAI,OAAO,EAAE,aAAa;AAC1B,IAAI,sBAAsB;AAC1B,IAAI,oBAAoB;AACxB,IAAI,uBAAuB;AAC3B,GAAG,CAAC;AACJ;;;;"}
@@ -128,6 +128,7 @@ interface TableProps<T> {
128
128
  scrollbarAlwaysOn?: boolean;
129
129
  flexible?: boolean;
130
130
  showOverflowTooltip?: boolean | TableOverflowTooltipOptions;
131
+ scrollbarTabindex?: number | string;
131
132
  }
132
133
  interface Sort {
133
134
  prop: string;
@@ -357,6 +358,10 @@ declare const _default: {
357
358
  * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns
358
359
  */
359
360
  showOverflowTooltip: PropType<boolean | Partial<Pick<import("../../..").ElTooltipProps, "offset" | "transition" | "placement" | "effect" | "showAfter" | "hideAfter" | "popperOptions" | "enterable" | "popperClass" | "appendTo" | "showArrow">> | undefined>;
361
+ scrollbarTabindex: {
362
+ type: (NumberConstructor | StringConstructor)[];
363
+ default: undefined;
364
+ };
360
365
  };
361
366
  export default _default;
362
367
  export type { SummaryMethod, Table, TableProps, TableRefs, ColumnCls, ColumnStyle, CellCls, CellStyle, TreeNode, RenderRowData, Sort, Filter, TableColumnCtx, TreeProps, };
@@ -75,7 +75,11 @@ var defaultProps = {
75
75
  },
76
76
  scrollbarAlwaysOn: Boolean,
77
77
  flexible: Boolean,
78
- showOverflowTooltip: [Boolean, Object]
78
+ showOverflowTooltip: [Boolean, Object],
79
+ scrollbarTabindex: {
80
+ type: [Number, String],
81
+ default: void 0
82
+ }
79
83
  };
80
84
 
81
85
  export { defaultProps as default };
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.mjs","sources":["../../../../../../../packages/components/table/src/table/defaults.ts"],"sourcesContent":["// @ts-nocheck\nimport { useSizeProp } from '@element-plus/hooks'\nimport type {\n CSSProperties,\n ComponentInternalInstance,\n PropType,\n Ref,\n VNode,\n} from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Nullable } from '@element-plus/utils'\nimport type { Store } from '../store'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type TableLayout from '../table-layout'\nimport type { TableOverflowTooltipOptions } from '../util'\n\nexport type DefaultRow = any\n\ninterface TableRefs {\n tableWrapper: HTMLElement\n headerWrapper: HTMLElement\n footerWrapper: HTMLElement\n fixedBodyWrapper: HTMLElement\n rightFixedBodyWrapper: HTMLElement\n bodyWrapper: HTMLElement\n appendWrapper: HTMLElement\n [key: string]: any\n}\n\ninterface TableState {\n isGroup: Ref<boolean>\n resizeState: Ref<{\n width: any\n height: any\n }>\n doLayout: () => void\n debouncedUpdateLayout: () => void\n}\n\ninterface TreeProps {\n hasChildren?: string\n children?: string\n checkStrictly?: boolean\n}\n\ntype HoverState<T> = Nullable<{\n cell: HTMLElement\n column: TableColumnCtx<T>\n row: T\n}>\n\ntype RIS<T> = { row: T; $index: number; store: Store<T>; expanded: boolean }\n\ntype RenderExpanded<T> = ({\n row,\n $index,\n store,\n expanded: boolean,\n}: RIS<T>) => VNode\n\ntype SummaryMethod<T> = (data: {\n columns: TableColumnCtx<T>[]\n data: T[]\n}) => (string | VNode)[]\n\ninterface Table<T> extends ComponentInternalInstance {\n $ready: boolean\n hoverState?: HoverState<T>\n renderExpanded: RenderExpanded<T>\n store: Store<T>\n layout: TableLayout<T>\n refs: TableRefs\n tableId: string\n state: TableState\n}\n\ntype ColumnCls<T> = string | ((data: { row: T; rowIndex: number }) => string)\ntype ColumnStyle<T> =\n | CSSProperties\n | ((data: { row: T; rowIndex: number }) => CSSProperties)\ntype CellCls<T> =\n | string\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => string)\ntype CellStyle<T> =\n | CSSProperties\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => CSSProperties)\ntype Layout = 'fixed' | 'auto'\ninterface TableProps<T> {\n data: T[]\n size?: ComponentSize\n width?: string | number\n height?: string | number\n maxHeight?: string | number\n fit?: boolean\n stripe?: boolean\n border?: boolean\n rowKey?: string | ((row: T) => string)\n context?: Table<T>\n showHeader?: boolean\n showSummary?: boolean\n sumText?: string\n summaryMethod?: SummaryMethod<T>\n rowClassName?: ColumnCls<T>\n rowStyle?: ColumnStyle<T>\n cellClassName?: CellCls<T>\n cellStyle?: CellStyle<T>\n headerRowClassName?: ColumnCls<T>\n headerRowStyle?: ColumnStyle<T>\n headerCellClassName?: CellCls<T>\n headerCellStyle?: CellStyle<T>\n highlightCurrentRow?: boolean\n currentRowKey?: string | number\n emptyText?: string\n expandRowKeys?: string[]\n defaultExpandAll?: boolean\n defaultSort?: Sort\n tooltipEffect?: string\n tooltipOptions?: TableOverflowTooltipOptions\n spanMethod?: (data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) =>\n | number[]\n | {\n rowspan: number\n colspan: number\n }\n | undefined\n selectOnIndeterminate?: boolean\n indent?: number\n treeProps?: TreeProps\n lazy?: boolean\n load?: (row: T, treeNode: TreeNode, resolve: (data: T[]) => void) => void\n className?: string\n style?: CSSProperties\n tableLayout?: Layout\n scrollbarAlwaysOn?: boolean\n flexible?: boolean\n showOverflowTooltip?: boolean | TableOverflowTooltipOptions\n}\n\ninterface Sort {\n prop: string\n order: 'ascending' | 'descending'\n init?: any\n silent?: any\n}\n\ninterface Filter<T> {\n column: TableColumnCtx<T>\n values: string[]\n silent: any\n}\n\ninterface TreeNode {\n expanded?: boolean\n loading?: boolean\n noLazyChildren?: boolean\n indent?: number\n level?: number\n display?: boolean\n}\n\ninterface RenderRowData<T> {\n store: Store<T>\n _self: Table<T>\n column: TableColumnCtx<T>\n row: T\n $index: number\n treeNode?: TreeNode\n expanded: boolean\n}\n\nexport default {\n /**\n * @description table data\n */\n data: {\n type: Array as PropType<DefaultRow[]>,\n default: () => [],\n },\n /**\n * @description size of Table\n */\n size: useSizeProp,\n width: [String, Number],\n /**\n * @description table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles\n */\n height: [String, Number],\n /**\n * @description table's max-height. The legal value is a number or the height in px\n */\n maxHeight: [String, Number],\n /**\n * @description whether width of column automatically fits its container\n */\n fit: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether Table is striped\n */\n stripe: Boolean,\n /**\n * @description whether Table has vertical border\n */\n border: Boolean,\n /**\n * @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used\n */\n rowKey: [String, Function] as PropType<TableProps<DefaultRow>['rowKey']>,\n /**\n * @description whether Table header is visible\n */\n showHeader: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to display a summary row\n */\n showSummary: Boolean,\n /**\n * @description displayed text for the first column of summary row\n */\n sumText: String,\n /**\n * @description custom summary method\n */\n summaryMethod: Function as PropType<TableProps<DefaultRow>['summaryMethod']>,\n /**\n * @description function that returns custom class names for a row, or a string assigning class names for every row\n */\n rowClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['rowClassName']\n >,\n /**\n * @description function that returns custom style for a row, or an object assigning custom style for every row\n */\n rowStyle: [Object, Function] as PropType<TableProps<DefaultRow>['rowStyle']>,\n /**\n * @description function that returns custom class names for a cell, or a string assigning class names for every cell\n */\n cellClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['cellClassName']\n >,\n /**\n * @description function that returns custom style for a cell, or an object assigning custom style for every cell\n */\n cellStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['cellStyle']\n >,\n /**\n * @description function that returns custom class names for a row in table header, or a string assigning class names for every row in table header\n */\n headerRowClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['headerRowClassName']\n >,\n /**\n * @description function that returns custom style for a row in table header, or an object assigning custom style for every row in table header\n */\n headerRowStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['headerRowStyle']\n >,\n /**\n * @description function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header\n */\n headerCellClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['headerCellClassName']\n >,\n /**\n * @description function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header\n */\n headerCellStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['headerCellStyle']\n >,\n /**\n * @description whether current row is highlighted\n */\n highlightCurrentRow: Boolean,\n /**\n * @description key of current row, a set only prop\n */\n currentRowKey: [String, Number],\n /**\n * @description displayed text when data is empty. You can customize this area with `#empty`\n */\n emptyText: String,\n /**\n * @description set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop\n */\n expandRowKeys: Array as PropType<TableProps<DefaultRow>['expandRowKeys']>,\n /**\n * @description whether expand all rows by default, works when the table has a column type=\"expand\" or contains tree structure data\n */\n defaultExpandAll: Boolean,\n /**\n * @description set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order\n */\n defaultSort: Object as PropType<TableProps<DefaultRow>['defaultSort']>,\n /**\n * @description the `effect` of the overflow tooltip\n */\n tooltipEffect: String,\n /**\n * @description the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)\n */\n tooltipOptions: Object as PropType<TableProps<DefaultRow>['tooltipOptions']>,\n /**\n * @description method that returns rowspan and colspan\n */\n spanMethod: Function as PropType<TableProps<DefaultRow>['spanMethod']>,\n /**\n * @description controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected\n */\n selectOnIndeterminate: {\n type: Boolean,\n default: true,\n },\n /**\n * @description horizontal indentation of tree data\n */\n indent: {\n type: Number,\n default: 16,\n },\n /**\n * @description configuration for rendering nested data\n */\n treeProps: {\n type: Object as PropType<TableProps<DefaultRow>['treeProps']>,\n default: () => {\n return {\n hasChildren: 'hasChildren',\n children: 'children',\n checkStrictly: false,\n }\n },\n },\n /**\n * @description whether to lazy loading data\n */\n lazy: Boolean,\n /**\n * @description method for loading child row data, only works when `lazy` is true\n */\n load: Function as PropType<TableProps<DefaultRow>['load']>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n className: {\n type: String,\n default: '',\n },\n /**\n * @description sets the algorithm used to lay out table cells, rows, and columns\n */\n tableLayout: {\n type: String as PropType<Layout>,\n default: 'fixed',\n },\n /**\n * @description always show scrollbar\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description ensure main axis minimum-size doesn't follow the content\n */\n flexible: Boolean,\n /**\n * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns\n */\n showOverflowTooltip: [Boolean, Object] as PropType<\n TableProps<DefaultRow>['showOverflowTooltip']\n >,\n}\nexport type {\n SummaryMethod,\n Table,\n TableProps,\n TableRefs,\n ColumnCls,\n ColumnStyle,\n CellCls,\n CellStyle,\n TreeNode,\n RenderRowData,\n Sort,\n Filter,\n TableColumnCtx,\n TreeProps,\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.mjs","sources":["../../../../../../../packages/components/table/src/table/defaults.ts"],"sourcesContent":["// @ts-nocheck\nimport { useSizeProp } from '@element-plus/hooks'\nimport type {\n CSSProperties,\n ComponentInternalInstance,\n PropType,\n Ref,\n VNode,\n} from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Nullable } from '@element-plus/utils'\nimport type { Store } from '../store'\nimport type { TableColumnCtx } from '../table-column/defaults'\nimport type TableLayout from '../table-layout'\nimport type { TableOverflowTooltipOptions } from '../util'\n\nexport type DefaultRow = any\n\ninterface TableRefs {\n tableWrapper: HTMLElement\n headerWrapper: HTMLElement\n footerWrapper: HTMLElement\n fixedBodyWrapper: HTMLElement\n rightFixedBodyWrapper: HTMLElement\n bodyWrapper: HTMLElement\n appendWrapper: HTMLElement\n [key: string]: any\n}\n\ninterface TableState {\n isGroup: Ref<boolean>\n resizeState: Ref<{\n width: any\n height: any\n }>\n doLayout: () => void\n debouncedUpdateLayout: () => void\n}\n\ninterface TreeProps {\n hasChildren?: string\n children?: string\n checkStrictly?: boolean\n}\n\ntype HoverState<T> = Nullable<{\n cell: HTMLElement\n column: TableColumnCtx<T>\n row: T\n}>\n\ntype RIS<T> = { row: T; $index: number; store: Store<T>; expanded: boolean }\n\ntype RenderExpanded<T> = ({\n row,\n $index,\n store,\n expanded: boolean,\n}: RIS<T>) => VNode\n\ntype SummaryMethod<T> = (data: {\n columns: TableColumnCtx<T>[]\n data: T[]\n}) => (string | VNode)[]\n\ninterface Table<T> extends ComponentInternalInstance {\n $ready: boolean\n hoverState?: HoverState<T>\n renderExpanded: RenderExpanded<T>\n store: Store<T>\n layout: TableLayout<T>\n refs: TableRefs\n tableId: string\n state: TableState\n}\n\ntype ColumnCls<T> = string | ((data: { row: T; rowIndex: number }) => string)\ntype ColumnStyle<T> =\n | CSSProperties\n | ((data: { row: T; rowIndex: number }) => CSSProperties)\ntype CellCls<T> =\n | string\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => string)\ntype CellStyle<T> =\n | CSSProperties\n | ((data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) => CSSProperties)\ntype Layout = 'fixed' | 'auto'\ninterface TableProps<T> {\n data: T[]\n size?: ComponentSize\n width?: string | number\n height?: string | number\n maxHeight?: string | number\n fit?: boolean\n stripe?: boolean\n border?: boolean\n rowKey?: string | ((row: T) => string)\n context?: Table<T>\n showHeader?: boolean\n showSummary?: boolean\n sumText?: string\n summaryMethod?: SummaryMethod<T>\n rowClassName?: ColumnCls<T>\n rowStyle?: ColumnStyle<T>\n cellClassName?: CellCls<T>\n cellStyle?: CellStyle<T>\n headerRowClassName?: ColumnCls<T>\n headerRowStyle?: ColumnStyle<T>\n headerCellClassName?: CellCls<T>\n headerCellStyle?: CellStyle<T>\n highlightCurrentRow?: boolean\n currentRowKey?: string | number\n emptyText?: string\n expandRowKeys?: string[]\n defaultExpandAll?: boolean\n defaultSort?: Sort\n tooltipEffect?: string\n tooltipOptions?: TableOverflowTooltipOptions\n spanMethod?: (data: {\n row: T\n rowIndex: number\n column: TableColumnCtx<T>\n columnIndex: number\n }) =>\n | number[]\n | {\n rowspan: number\n colspan: number\n }\n | undefined\n selectOnIndeterminate?: boolean\n indent?: number\n treeProps?: TreeProps\n lazy?: boolean\n load?: (row: T, treeNode: TreeNode, resolve: (data: T[]) => void) => void\n className?: string\n style?: CSSProperties\n tableLayout?: Layout\n scrollbarAlwaysOn?: boolean\n flexible?: boolean\n showOverflowTooltip?: boolean | TableOverflowTooltipOptions\n scrollbarTabindex?: number | string\n}\n\ninterface Sort {\n prop: string\n order: 'ascending' | 'descending'\n init?: any\n silent?: any\n}\n\ninterface Filter<T> {\n column: TableColumnCtx<T>\n values: string[]\n silent: any\n}\n\ninterface TreeNode {\n expanded?: boolean\n loading?: boolean\n noLazyChildren?: boolean\n indent?: number\n level?: number\n display?: boolean\n}\n\ninterface RenderRowData<T> {\n store: Store<T>\n _self: Table<T>\n column: TableColumnCtx<T>\n row: T\n $index: number\n treeNode?: TreeNode\n expanded: boolean\n}\n\nexport default {\n /**\n * @description table data\n */\n data: {\n type: Array as PropType<DefaultRow[]>,\n default: () => [],\n },\n /**\n * @description size of Table\n */\n size: useSizeProp,\n width: [String, Number],\n /**\n * @description table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles\n */\n height: [String, Number],\n /**\n * @description table's max-height. The legal value is a number or the height in px\n */\n maxHeight: [String, Number],\n /**\n * @description whether width of column automatically fits its container\n */\n fit: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether Table is striped\n */\n stripe: Boolean,\n /**\n * @description whether Table has vertical border\n */\n border: Boolean,\n /**\n * @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used\n */\n rowKey: [String, Function] as PropType<TableProps<DefaultRow>['rowKey']>,\n /**\n * @description whether Table header is visible\n */\n showHeader: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to display a summary row\n */\n showSummary: Boolean,\n /**\n * @description displayed text for the first column of summary row\n */\n sumText: String,\n /**\n * @description custom summary method\n */\n summaryMethod: Function as PropType<TableProps<DefaultRow>['summaryMethod']>,\n /**\n * @description function that returns custom class names for a row, or a string assigning class names for every row\n */\n rowClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['rowClassName']\n >,\n /**\n * @description function that returns custom style for a row, or an object assigning custom style for every row\n */\n rowStyle: [Object, Function] as PropType<TableProps<DefaultRow>['rowStyle']>,\n /**\n * @description function that returns custom class names for a cell, or a string assigning class names for every cell\n */\n cellClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['cellClassName']\n >,\n /**\n * @description function that returns custom style for a cell, or an object assigning custom style for every cell\n */\n cellStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['cellStyle']\n >,\n /**\n * @description function that returns custom class names for a row in table header, or a string assigning class names for every row in table header\n */\n headerRowClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['headerRowClassName']\n >,\n /**\n * @description function that returns custom style for a row in table header, or an object assigning custom style for every row in table header\n */\n headerRowStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['headerRowStyle']\n >,\n /**\n * @description function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header\n */\n headerCellClassName: [String, Function] as PropType<\n TableProps<DefaultRow>['headerCellClassName']\n >,\n /**\n * @description function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header\n */\n headerCellStyle: [Object, Function] as PropType<\n TableProps<DefaultRow>['headerCellStyle']\n >,\n /**\n * @description whether current row is highlighted\n */\n highlightCurrentRow: Boolean,\n /**\n * @description key of current row, a set only prop\n */\n currentRowKey: [String, Number],\n /**\n * @description displayed text when data is empty. You can customize this area with `#empty`\n */\n emptyText: String,\n /**\n * @description set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop\n */\n expandRowKeys: Array as PropType<TableProps<DefaultRow>['expandRowKeys']>,\n /**\n * @description whether expand all rows by default, works when the table has a column type=\"expand\" or contains tree structure data\n */\n defaultExpandAll: Boolean,\n /**\n * @description set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order\n */\n defaultSort: Object as PropType<TableProps<DefaultRow>['defaultSort']>,\n /**\n * @description the `effect` of the overflow tooltip\n */\n tooltipEffect: String,\n /**\n * @description the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)\n */\n tooltipOptions: Object as PropType<TableProps<DefaultRow>['tooltipOptions']>,\n /**\n * @description method that returns rowspan and colspan\n */\n spanMethod: Function as PropType<TableProps<DefaultRow>['spanMethod']>,\n /**\n * @description controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected\n */\n selectOnIndeterminate: {\n type: Boolean,\n default: true,\n },\n /**\n * @description horizontal indentation of tree data\n */\n indent: {\n type: Number,\n default: 16,\n },\n /**\n * @description configuration for rendering nested data\n */\n treeProps: {\n type: Object as PropType<TableProps<DefaultRow>['treeProps']>,\n default: () => {\n return {\n hasChildren: 'hasChildren',\n children: 'children',\n checkStrictly: false,\n }\n },\n },\n /**\n * @description whether to lazy loading data\n */\n lazy: Boolean,\n /**\n * @description method for loading child row data, only works when `lazy` is true\n */\n load: Function as PropType<TableProps<DefaultRow>['load']>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n className: {\n type: String,\n default: '',\n },\n /**\n * @description sets the algorithm used to lay out table cells, rows, and columns\n */\n tableLayout: {\n type: String as PropType<Layout>,\n default: 'fixed',\n },\n /**\n * @description always show scrollbar\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description ensure main axis minimum-size doesn't follow the content\n */\n flexible: Boolean,\n /**\n * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns\n */\n showOverflowTooltip: [Boolean, Object] as PropType<\n TableProps<DefaultRow>['showOverflowTooltip']\n >,\n scrollbarTabindex: {\n type: [Number, String],\n default: undefined,\n },\n}\nexport type {\n SummaryMethod,\n Table,\n TableProps,\n TableRefs,\n ColumnCls,\n ColumnStyle,\n CellCls,\n CellStyle,\n TreeNode,\n RenderRowData,\n Sort,\n Filter,\n TableColumnCtx,\n TreeProps,\n}\n"],"names":[],"mappings":"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"}
@@ -247,7 +247,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
247
247
  ref: "scrollBarRef",
248
248
  "view-style": _ctx.scrollbarViewStyle,
249
249
  "wrap-style": _ctx.scrollbarStyle,
250
- always: _ctx.scrollbarAlwaysOn
250
+ always: _ctx.scrollbarAlwaysOn,
251
+ tabindex: _ctx.scrollbarTabindex
251
252
  }, {
252
253
  default: withCtx(() => [
253
254
  createElementVNode("table", {
@@ -317,7 +318,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
317
318
  ], 2)) : createCommentVNode("v-if", true)
318
319
  ]),
319
320
  _: 3
320
- }, 8, ["view-style", "wrap-style", "always"])
321
+ }, 8, ["view-style", "wrap-style", "always", "tabindex"])
321
322
  ], 2),
322
323
  _ctx.showSummary && _ctx.tableLayout === "fixed" ? withDirectives((openBlock(), createElementBlock("div", {
323
324
  key: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"table.mjs","sources":["../../../../../../packages/components/table/src/table.vue"],"sourcesContent":["<template>\n <div\n ref=\"tableWrapper\"\n :class=\"[\n {\n [ns.m('fit')]: fit,\n [ns.m('striped')]: stripe,\n [ns.m('border')]: border || isGroup,\n [ns.m('hidden')]: isHidden,\n [ns.m('group')]: isGroup,\n [ns.m('fluid-height')]: maxHeight,\n [ns.m('scrollable-x')]: layout.scrollX.value,\n [ns.m('scrollable-y')]: layout.scrollY.value,\n [ns.m('enable-row-hover')]: !store.states.isComplex.value,\n [ns.m('enable-row-transition')]:\n (store.states.data.value || []).length !== 0 &&\n (store.states.data.value || []).length < 100,\n 'has-footer': showSummary,\n },\n ns.m(tableSize),\n className,\n ns.b(),\n ns.m(`layout-${tableLayout}`),\n ]\"\n :style=\"style\"\n :data-prefix=\"ns.namespace.value\"\n @mouseleave=\"handleMouseLeave\"\n >\n <div :class=\"ns.e('inner-wrapper')\" :style=\"tableInnerStyle\">\n <div ref=\"hiddenColumns\" class=\"hidden-columns\">\n <slot />\n </div>\n <div\n v-if=\"showHeader && tableLayout === 'fixed'\"\n ref=\"headerWrapper\"\n v-mousewheel=\"handleHeaderFooterMousewheel\"\n :class=\"ns.e('header-wrapper')\"\n >\n <table\n ref=\"tableHeader\"\n :class=\"ns.e('header')\"\n :style=\"tableBodyStyles\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-header\n ref=\"tableHeaderRef\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n @set-drag-visible=\"setDragVisible\"\n />\n </table>\n </div>\n <div ref=\"bodyWrapper\" :class=\"ns.e('body-wrapper')\">\n <el-scrollbar\n ref=\"scrollBarRef\"\n :view-style=\"scrollbarViewStyle\"\n :wrap-style=\"scrollbarStyle\"\n :always=\"scrollbarAlwaysOn\"\n >\n <table\n ref=\"tableBody\"\n :class=\"ns.e('body')\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n border=\"0\"\n :style=\"{\n width: bodyWidth,\n tableLayout,\n }\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-header\n v-if=\"showHeader && tableLayout === 'auto'\"\n ref=\"tableHeaderRef\"\n :class=\"ns.e('body-header')\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n @set-drag-visible=\"setDragVisible\"\n />\n <table-body\n :context=\"context\"\n :highlight=\"highlightCurrentRow\"\n :row-class-name=\"rowClassName\"\n :tooltip-effect=\"tooltipEffect\"\n :tooltip-options=\"tooltipOptions\"\n :row-style=\"rowStyle\"\n :store=\"store\"\n :stripe=\"stripe\"\n />\n <table-footer\n v-if=\"showSummary && tableLayout === 'auto'\"\n :class=\"ns.e('body-footer')\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n :sum-text=\"computedSumText\"\n :summary-method=\"summaryMethod\"\n />\n </table>\n <div\n v-if=\"isEmpty\"\n ref=\"emptyBlock\"\n :style=\"emptyBlockStyle\"\n :class=\"ns.e('empty-block')\"\n >\n <span :class=\"ns.e('empty-text')\">\n <slot name=\"empty\">{{ computedEmptyText }}</slot>\n </span>\n </div>\n <div\n v-if=\"$slots.append\"\n ref=\"appendWrapper\"\n :class=\"ns.e('append-wrapper')\"\n >\n <slot name=\"append\" />\n </div>\n </el-scrollbar>\n </div>\n <div\n v-if=\"showSummary && tableLayout === 'fixed'\"\n v-show=\"!isEmpty\"\n ref=\"footerWrapper\"\n v-mousewheel=\"handleHeaderFooterMousewheel\"\n :class=\"ns.e('footer-wrapper')\"\n >\n <table\n :class=\"ns.e('footer')\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n border=\"0\"\n :style=\"tableBodyStyles\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-footer\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n :sum-text=\"computedSumText\"\n :summary-method=\"summaryMethod\"\n />\n </table>\n </div>\n <div v-if=\"border || isGroup\" :class=\"ns.e('border-left-patch')\" />\n </div>\n <div\n v-show=\"resizeProxyVisible\"\n ref=\"resizeProxy\"\n :class=\"ns.e('column-resize-proxy')\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\n// @ts-nocheck\nimport { computed, defineComponent, getCurrentInstance, provide } from 'vue'\nimport { debounce } from 'lodash-unified'\nimport { Mousewheel } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { createStore } from './store/helper'\nimport TableLayout from './table-layout'\nimport TableHeader from './table-header'\nimport TableBody from './table-body'\nimport TableFooter from './table-footer'\nimport useUtils from './table/utils-helper'\nimport { convertToRows } from './table-header/utils-helper'\nimport useStyle from './table/style-helper'\nimport useKeyRender from './table/key-render-helper'\nimport defaultProps from './table/defaults'\nimport { TABLE_INJECTION_KEY } from './tokens'\nimport { hColgroup } from './h-helper'\nimport { useScrollbar } from './composables/use-scrollbar'\n\nimport type { Table } from './table/defaults'\n\nlet tableIdSeed = 1\nexport default defineComponent({\n name: 'ElTable',\n directives: {\n Mousewheel,\n },\n components: {\n TableHeader,\n TableBody,\n TableFooter,\n ElScrollbar,\n hColgroup,\n },\n props: defaultProps,\n emits: [\n 'select',\n 'select-all',\n 'selection-change',\n 'cell-mouse-enter',\n 'cell-mouse-leave',\n 'cell-contextmenu',\n 'cell-click',\n 'cell-dblclick',\n 'row-click',\n 'row-contextmenu',\n 'row-dblclick',\n 'header-click',\n 'header-contextmenu',\n 'sort-change',\n 'filter-change',\n 'current-change',\n 'header-dragend',\n 'expand-change',\n ],\n setup(props) {\n type Row = typeof props.data[number]\n const { t } = useLocale()\n const ns = useNamespace('table')\n const table = getCurrentInstance() as Table<Row>\n provide(TABLE_INJECTION_KEY, table)\n const store = createStore<Row>(table, props)\n table.store = store\n const layout = new TableLayout<Row>({\n store: table.store,\n table,\n fit: props.fit,\n showHeader: props.showHeader,\n })\n table.layout = layout\n\n const isEmpty = computed(() => (store.states.data.value || []).length === 0)\n\n /**\n * open functions\n */\n const {\n setCurrentRow,\n getSelectionRows,\n toggleRowSelection,\n clearSelection,\n clearFilter,\n toggleAllSelection,\n toggleRowExpansion,\n clearSort,\n sort,\n } = useUtils<Row>(store)\n const {\n isHidden,\n renderExpanded,\n setDragVisible,\n isGroup,\n handleMouseLeave,\n handleHeaderFooterMousewheel,\n tableSize,\n emptyBlockStyle,\n handleFixedMousewheel,\n resizeProxyVisible,\n bodyWidth,\n resizeState,\n doLayout,\n tableBodyStyles,\n tableLayout,\n scrollbarViewStyle,\n tableInnerStyle,\n scrollbarStyle,\n } = useStyle<Row>(props, layout, store, table)\n\n const { scrollBarRef, scrollTo, setScrollLeft, setScrollTop } =\n useScrollbar()\n\n const debouncedUpdateLayout = debounce(doLayout, 50)\n\n const tableId = `${ns.namespace.value}-table_${tableIdSeed++}`\n table.tableId = tableId\n table.state = {\n isGroup,\n resizeState,\n doLayout,\n debouncedUpdateLayout,\n }\n const computedSumText = computed(\n () => props.sumText ?? t('el.table.sumText')\n )\n\n const computedEmptyText = computed(() => {\n return props.emptyText ?? t('el.table.emptyText')\n })\n\n const columns = computed(() => {\n return convertToRows(store.states.originColumns.value)[0]\n })\n\n useKeyRender(table)\n\n return {\n ns,\n layout,\n store,\n columns,\n handleHeaderFooterMousewheel,\n handleMouseLeave,\n tableId,\n tableSize,\n isHidden,\n isEmpty,\n renderExpanded,\n resizeProxyVisible,\n resizeState,\n isGroup,\n bodyWidth,\n tableBodyStyles,\n emptyBlockStyle,\n debouncedUpdateLayout,\n handleFixedMousewheel,\n /**\n * @description used in single selection Table, set a certain row selected. If called without any parameter, it will clear selection\n */\n setCurrentRow,\n /**\n * @description returns the currently selected rows\n */\n getSelectionRows,\n /**\n * @description used in multiple selection Table, toggle if a certain row is selected. With the second parameter, you can directly set if this row is selected\n */\n toggleRowSelection,\n /**\n * @description used in multiple selection Table, clear user selection\n */\n clearSelection,\n /**\n * @description clear filters of the columns whose `columnKey` are passed in. If no params, clear all filters\n */\n clearFilter,\n /**\n * @description used in multiple selection Table, toggle select all and deselect all\n */\n toggleAllSelection,\n /**\n * @description used in expandable Table or tree Table, toggle if a certain row is expanded. With the second parameter, you can directly set if this row is expanded or collapsed\n */\n toggleRowExpansion,\n /**\n * @description clear sorting, restore data to the original order\n */\n clearSort,\n /**\n * @description refresh the layout of Table. When the visibility of Table changes, you may need to call this method to get a correct layout\n */\n doLayout,\n /**\n * @description sort Table manually. Property `prop` is used to set sort column, property `order` is used to set sort order\n */\n sort,\n t,\n setDragVisible,\n context: table,\n computedSumText,\n computedEmptyText,\n tableLayout,\n scrollbarViewStyle,\n tableInnerStyle,\n scrollbarStyle,\n scrollBarRef,\n /**\n * @description scrolls to a particular set of coordinates\n */\n scrollTo,\n /**\n * @description set horizontal scroll position\n */\n setScrollLeft,\n /**\n * @description set vertical scroll position\n */\n setScrollTop,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_normalizeStyle","_renderSlot","_withDirectives","_createElementVNode","_createVNode","_createCommentVNode","_withCtx","_createBlock","_createTextVNode","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"table.mjs","sources":["../../../../../../packages/components/table/src/table.vue"],"sourcesContent":["<template>\n <div\n ref=\"tableWrapper\"\n :class=\"[\n {\n [ns.m('fit')]: fit,\n [ns.m('striped')]: stripe,\n [ns.m('border')]: border || isGroup,\n [ns.m('hidden')]: isHidden,\n [ns.m('group')]: isGroup,\n [ns.m('fluid-height')]: maxHeight,\n [ns.m('scrollable-x')]: layout.scrollX.value,\n [ns.m('scrollable-y')]: layout.scrollY.value,\n [ns.m('enable-row-hover')]: !store.states.isComplex.value,\n [ns.m('enable-row-transition')]:\n (store.states.data.value || []).length !== 0 &&\n (store.states.data.value || []).length < 100,\n 'has-footer': showSummary,\n },\n ns.m(tableSize),\n className,\n ns.b(),\n ns.m(`layout-${tableLayout}`),\n ]\"\n :style=\"style\"\n :data-prefix=\"ns.namespace.value\"\n @mouseleave=\"handleMouseLeave\"\n >\n <div :class=\"ns.e('inner-wrapper')\" :style=\"tableInnerStyle\">\n <div ref=\"hiddenColumns\" class=\"hidden-columns\">\n <slot />\n </div>\n <div\n v-if=\"showHeader && tableLayout === 'fixed'\"\n ref=\"headerWrapper\"\n v-mousewheel=\"handleHeaderFooterMousewheel\"\n :class=\"ns.e('header-wrapper')\"\n >\n <table\n ref=\"tableHeader\"\n :class=\"ns.e('header')\"\n :style=\"tableBodyStyles\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-header\n ref=\"tableHeaderRef\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n @set-drag-visible=\"setDragVisible\"\n />\n </table>\n </div>\n <div ref=\"bodyWrapper\" :class=\"ns.e('body-wrapper')\">\n <el-scrollbar\n ref=\"scrollBarRef\"\n :view-style=\"scrollbarViewStyle\"\n :wrap-style=\"scrollbarStyle\"\n :always=\"scrollbarAlwaysOn\"\n :tabindex=\"scrollbarTabindex\"\n >\n <table\n ref=\"tableBody\"\n :class=\"ns.e('body')\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n border=\"0\"\n :style=\"{\n width: bodyWidth,\n tableLayout,\n }\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-header\n v-if=\"showHeader && tableLayout === 'auto'\"\n ref=\"tableHeaderRef\"\n :class=\"ns.e('body-header')\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n @set-drag-visible=\"setDragVisible\"\n />\n <table-body\n :context=\"context\"\n :highlight=\"highlightCurrentRow\"\n :row-class-name=\"rowClassName\"\n :tooltip-effect=\"tooltipEffect\"\n :tooltip-options=\"tooltipOptions\"\n :row-style=\"rowStyle\"\n :store=\"store\"\n :stripe=\"stripe\"\n />\n <table-footer\n v-if=\"showSummary && tableLayout === 'auto'\"\n :class=\"ns.e('body-footer')\"\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n :sum-text=\"computedSumText\"\n :summary-method=\"summaryMethod\"\n />\n </table>\n <div\n v-if=\"isEmpty\"\n ref=\"emptyBlock\"\n :style=\"emptyBlockStyle\"\n :class=\"ns.e('empty-block')\"\n >\n <span :class=\"ns.e('empty-text')\">\n <slot name=\"empty\">{{ computedEmptyText }}</slot>\n </span>\n </div>\n <div\n v-if=\"$slots.append\"\n ref=\"appendWrapper\"\n :class=\"ns.e('append-wrapper')\"\n >\n <slot name=\"append\" />\n </div>\n </el-scrollbar>\n </div>\n <div\n v-if=\"showSummary && tableLayout === 'fixed'\"\n v-show=\"!isEmpty\"\n ref=\"footerWrapper\"\n v-mousewheel=\"handleHeaderFooterMousewheel\"\n :class=\"ns.e('footer-wrapper')\"\n >\n <table\n :class=\"ns.e('footer')\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n border=\"0\"\n :style=\"tableBodyStyles\"\n >\n <hColgroup\n :columns=\"store.states.columns.value\"\n :table-layout=\"tableLayout\"\n />\n <table-footer\n :border=\"border\"\n :default-sort=\"defaultSort\"\n :store=\"store\"\n :sum-text=\"computedSumText\"\n :summary-method=\"summaryMethod\"\n />\n </table>\n </div>\n <div v-if=\"border || isGroup\" :class=\"ns.e('border-left-patch')\" />\n </div>\n <div\n v-show=\"resizeProxyVisible\"\n ref=\"resizeProxy\"\n :class=\"ns.e('column-resize-proxy')\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\n// @ts-nocheck\nimport { computed, defineComponent, getCurrentInstance, provide } from 'vue'\nimport { debounce } from 'lodash-unified'\nimport { Mousewheel } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { createStore } from './store/helper'\nimport TableLayout from './table-layout'\nimport TableHeader from './table-header'\nimport TableBody from './table-body'\nimport TableFooter from './table-footer'\nimport useUtils from './table/utils-helper'\nimport { convertToRows } from './table-header/utils-helper'\nimport useStyle from './table/style-helper'\nimport useKeyRender from './table/key-render-helper'\nimport defaultProps from './table/defaults'\nimport { TABLE_INJECTION_KEY } from './tokens'\nimport { hColgroup } from './h-helper'\nimport { useScrollbar } from './composables/use-scrollbar'\n\nimport type { Table } from './table/defaults'\n\nlet tableIdSeed = 1\nexport default defineComponent({\n name: 'ElTable',\n directives: {\n Mousewheel,\n },\n components: {\n TableHeader,\n TableBody,\n TableFooter,\n ElScrollbar,\n hColgroup,\n },\n props: defaultProps,\n emits: [\n 'select',\n 'select-all',\n 'selection-change',\n 'cell-mouse-enter',\n 'cell-mouse-leave',\n 'cell-contextmenu',\n 'cell-click',\n 'cell-dblclick',\n 'row-click',\n 'row-contextmenu',\n 'row-dblclick',\n 'header-click',\n 'header-contextmenu',\n 'sort-change',\n 'filter-change',\n 'current-change',\n 'header-dragend',\n 'expand-change',\n ],\n setup(props) {\n type Row = typeof props.data[number]\n const { t } = useLocale()\n const ns = useNamespace('table')\n const table = getCurrentInstance() as Table<Row>\n provide(TABLE_INJECTION_KEY, table)\n const store = createStore<Row>(table, props)\n table.store = store\n const layout = new TableLayout<Row>({\n store: table.store,\n table,\n fit: props.fit,\n showHeader: props.showHeader,\n })\n table.layout = layout\n\n const isEmpty = computed(() => (store.states.data.value || []).length === 0)\n\n /**\n * open functions\n */\n const {\n setCurrentRow,\n getSelectionRows,\n toggleRowSelection,\n clearSelection,\n clearFilter,\n toggleAllSelection,\n toggleRowExpansion,\n clearSort,\n sort,\n } = useUtils<Row>(store)\n const {\n isHidden,\n renderExpanded,\n setDragVisible,\n isGroup,\n handleMouseLeave,\n handleHeaderFooterMousewheel,\n tableSize,\n emptyBlockStyle,\n handleFixedMousewheel,\n resizeProxyVisible,\n bodyWidth,\n resizeState,\n doLayout,\n tableBodyStyles,\n tableLayout,\n scrollbarViewStyle,\n tableInnerStyle,\n scrollbarStyle,\n } = useStyle<Row>(props, layout, store, table)\n\n const { scrollBarRef, scrollTo, setScrollLeft, setScrollTop } =\n useScrollbar()\n\n const debouncedUpdateLayout = debounce(doLayout, 50)\n\n const tableId = `${ns.namespace.value}-table_${tableIdSeed++}`\n table.tableId = tableId\n table.state = {\n isGroup,\n resizeState,\n doLayout,\n debouncedUpdateLayout,\n }\n const computedSumText = computed(\n () => props.sumText ?? t('el.table.sumText')\n )\n\n const computedEmptyText = computed(() => {\n return props.emptyText ?? t('el.table.emptyText')\n })\n\n const columns = computed(() => {\n return convertToRows(store.states.originColumns.value)[0]\n })\n\n useKeyRender(table)\n\n return {\n ns,\n layout,\n store,\n columns,\n handleHeaderFooterMousewheel,\n handleMouseLeave,\n tableId,\n tableSize,\n isHidden,\n isEmpty,\n renderExpanded,\n resizeProxyVisible,\n resizeState,\n isGroup,\n bodyWidth,\n tableBodyStyles,\n emptyBlockStyle,\n debouncedUpdateLayout,\n handleFixedMousewheel,\n /**\n * @description used in single selection Table, set a certain row selected. If called without any parameter, it will clear selection\n */\n setCurrentRow,\n /**\n * @description returns the currently selected rows\n */\n getSelectionRows,\n /**\n * @description used in multiple selection Table, toggle if a certain row is selected. With the second parameter, you can directly set if this row is selected\n */\n toggleRowSelection,\n /**\n * @description used in multiple selection Table, clear user selection\n */\n clearSelection,\n /**\n * @description clear filters of the columns whose `columnKey` are passed in. If no params, clear all filters\n */\n clearFilter,\n /**\n * @description used in multiple selection Table, toggle select all and deselect all\n */\n toggleAllSelection,\n /**\n * @description used in expandable Table or tree Table, toggle if a certain row is expanded. With the second parameter, you can directly set if this row is expanded or collapsed\n */\n toggleRowExpansion,\n /**\n * @description clear sorting, restore data to the original order\n */\n clearSort,\n /**\n * @description refresh the layout of Table. When the visibility of Table changes, you may need to call this method to get a correct layout\n */\n doLayout,\n /**\n * @description sort Table manually. Property `prop` is used to set sort column, property `order` is used to set sort order\n */\n sort,\n t,\n setDragVisible,\n context: table,\n computedSumText,\n computedEmptyText,\n tableLayout,\n scrollbarViewStyle,\n tableInnerStyle,\n scrollbarStyle,\n scrollBarRef,\n /**\n * @description scrolls to a particular set of coordinates\n */\n scrollTo,\n /**\n * @description set horizontal scroll position\n */\n setScrollLeft,\n /**\n * @description set vertical scroll position\n */\n setScrollTop,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_normalizeStyle","_renderSlot","_withDirectives","_createElementVNode","_createVNode","_createCommentVNode","_withCtx","_createBlock","_createTextVNode","_vShow"],"mappings":"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"}
@@ -86,6 +86,10 @@ declare const _default: import("vue").DefineComponent<{
86
86
  scrollbarAlwaysOn: BooleanConstructor;
87
87
  flexible: BooleanConstructor;
88
88
  showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("../..").ElTooltipProps, "offset" | "transition" | "placement" | "effect" | "showAfter" | "hideAfter" | "popperOptions" | "enterable" | "popperClass" | "appendTo" | "showArrow">> | undefined>;
89
+ scrollbarTabindex: {
90
+ type: (NumberConstructor | StringConstructor)[];
91
+ default: undefined;
92
+ };
89
93
  }, {
90
94
  ns: {
91
95
  namespace: import("vue").ComputedRef<string>;
@@ -301,6 +305,10 @@ declare const _default: import("vue").DefineComponent<{
301
305
  scrollbarAlwaysOn: BooleanConstructor;
302
306
  flexible: BooleanConstructor;
303
307
  showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("../..").ElTooltipProps, "offset" | "transition" | "placement" | "effect" | "showAfter" | "hideAfter" | "popperOptions" | "enterable" | "popperClass" | "appendTo" | "showArrow">> | undefined>;
308
+ scrollbarTabindex: {
309
+ type: (NumberConstructor | StringConstructor)[];
310
+ default: undefined;
311
+ };
304
312
  }>> & {
305
313
  onSelect?: ((...args: any[]) => any) | undefined;
306
314
  "onExpand-change"?: ((...args: any[]) => any) | undefined;
@@ -338,5 +346,6 @@ declare const _default: import("vue").DefineComponent<{
338
346
  highlightCurrentRow: boolean;
339
347
  selectOnIndeterminate: boolean;
340
348
  flexible: boolean;
349
+ scrollbarTabindex: string | number;
341
350
  }>;
342
351
  export default _default;
@@ -62,9 +62,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
62
62
  var _a;
63
63
  return (_a = props.style) != null ? _a : {};
64
64
  });
65
- const ariaHidden = computed(() => !unref(open));
65
+ const ariaHidden = ref(true);
66
66
  const onTransitionLeave = () => {
67
67
  onHide();
68
+ ariaHidden.value = true;
68
69
  };
69
70
  const stopWhenControlled = () => {
70
71
  if (unref(controlled))
@@ -110,6 +111,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
110
111
  watch(() => unref(open), (val) => {
111
112
  if (!val) {
112
113
  stopHandle == null ? void 0 : stopHandle();
114
+ } else {
115
+ ariaHidden.value = false;
113
116
  }
114
117
  }, {
115
118
  flush: "post"
@@ -142,7 +145,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
142
145
  ref: contentRef
143
146
  }, _ctx.$attrs, {
144
147
  "aria-label": _ctx.ariaLabel,
145
- "aria-hidden": unref(ariaHidden),
148
+ "aria-hidden": ariaHidden.value,
146
149
  "boundaries-padding": _ctx.boundariesPadding,
147
150
  "fallback-placements": _ctx.fallbackPlacements,
148
151
  "gpu-acceleration": _ctx.gpuAcceleration,