@element-plus/nightly 0.0.20220824 → 0.0.20220825

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 (296) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +16 -8
  4. package/dist/index.full.min.js +10 -10
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +11 -11
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +17 -9
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/az.js +1 -1
  18. package/dist/locale/az.min.js +1 -1
  19. package/dist/locale/az.min.mjs +1 -1
  20. package/dist/locale/az.mjs +1 -1
  21. package/dist/locale/bg.js +1 -1
  22. package/dist/locale/bg.min.js +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +1 -1
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +1 -1
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.mjs +1 -1
  32. package/dist/locale/ca.mjs +1 -1
  33. package/dist/locale/cs.js +1 -1
  34. package/dist/locale/cs.min.js +1 -1
  35. package/dist/locale/cs.min.mjs +1 -1
  36. package/dist/locale/cs.mjs +1 -1
  37. package/dist/locale/da.js +1 -1
  38. package/dist/locale/da.min.js +1 -1
  39. package/dist/locale/da.min.mjs +1 -1
  40. package/dist/locale/da.mjs +1 -1
  41. package/dist/locale/de.js +1 -1
  42. package/dist/locale/de.min.js +1 -1
  43. package/dist/locale/de.min.mjs +1 -1
  44. package/dist/locale/de.mjs +1 -1
  45. package/dist/locale/el.js +1 -1
  46. package/dist/locale/el.min.js +1 -1
  47. package/dist/locale/el.min.mjs +1 -1
  48. package/dist/locale/el.mjs +1 -1
  49. package/dist/locale/en.js +1 -1
  50. package/dist/locale/en.min.js +1 -1
  51. package/dist/locale/en.min.mjs +1 -1
  52. package/dist/locale/en.mjs +1 -1
  53. package/dist/locale/eo.js +1 -1
  54. package/dist/locale/eo.min.js +1 -1
  55. package/dist/locale/eo.min.mjs +1 -1
  56. package/dist/locale/eo.mjs +1 -1
  57. package/dist/locale/es.js +1 -1
  58. package/dist/locale/es.min.js +1 -1
  59. package/dist/locale/es.min.mjs +1 -1
  60. package/dist/locale/es.mjs +1 -1
  61. package/dist/locale/et.js +1 -1
  62. package/dist/locale/et.min.js +1 -1
  63. package/dist/locale/et.min.mjs +1 -1
  64. package/dist/locale/et.mjs +1 -1
  65. package/dist/locale/eu.js +1 -1
  66. package/dist/locale/eu.min.js +1 -1
  67. package/dist/locale/eu.min.mjs +1 -1
  68. package/dist/locale/eu.mjs +1 -1
  69. package/dist/locale/fa.js +1 -1
  70. package/dist/locale/fa.min.js +1 -1
  71. package/dist/locale/fa.min.mjs +1 -1
  72. package/dist/locale/fa.mjs +1 -1
  73. package/dist/locale/fi.js +1 -1
  74. package/dist/locale/fi.min.js +1 -1
  75. package/dist/locale/fi.min.mjs +1 -1
  76. package/dist/locale/fi.mjs +1 -1
  77. package/dist/locale/fr.js +1 -1
  78. package/dist/locale/fr.min.js +1 -1
  79. package/dist/locale/fr.min.mjs +1 -1
  80. package/dist/locale/fr.mjs +1 -1
  81. package/dist/locale/he.js +1 -1
  82. package/dist/locale/he.min.js +1 -1
  83. package/dist/locale/he.min.mjs +1 -1
  84. package/dist/locale/he.mjs +1 -1
  85. package/dist/locale/hr.js +1 -1
  86. package/dist/locale/hr.min.js +1 -1
  87. package/dist/locale/hr.min.mjs +1 -1
  88. package/dist/locale/hr.mjs +1 -1
  89. package/dist/locale/hu.js +1 -1
  90. package/dist/locale/hu.min.js +1 -1
  91. package/dist/locale/hu.min.mjs +1 -1
  92. package/dist/locale/hu.mjs +1 -1
  93. package/dist/locale/hy-am.js +1 -1
  94. package/dist/locale/hy-am.min.js +1 -1
  95. package/dist/locale/hy-am.min.mjs +1 -1
  96. package/dist/locale/hy-am.mjs +1 -1
  97. package/dist/locale/id.js +1 -1
  98. package/dist/locale/id.min.js +1 -1
  99. package/dist/locale/id.min.mjs +1 -1
  100. package/dist/locale/id.mjs +1 -1
  101. package/dist/locale/it.js +1 -1
  102. package/dist/locale/it.min.js +1 -1
  103. package/dist/locale/it.min.mjs +1 -1
  104. package/dist/locale/it.mjs +1 -1
  105. package/dist/locale/ja.js +1 -1
  106. package/dist/locale/ja.min.js +1 -1
  107. package/dist/locale/ja.min.mjs +1 -1
  108. package/dist/locale/ja.mjs +1 -1
  109. package/dist/locale/kk.js +1 -1
  110. package/dist/locale/kk.min.js +1 -1
  111. package/dist/locale/kk.min.mjs +1 -1
  112. package/dist/locale/kk.mjs +1 -1
  113. package/dist/locale/km.js +1 -1
  114. package/dist/locale/km.min.js +1 -1
  115. package/dist/locale/km.min.mjs +1 -1
  116. package/dist/locale/km.mjs +1 -1
  117. package/dist/locale/ko.js +1 -1
  118. package/dist/locale/ko.min.js +1 -1
  119. package/dist/locale/ko.min.mjs +1 -1
  120. package/dist/locale/ko.mjs +1 -1
  121. package/dist/locale/ku.js +1 -1
  122. package/dist/locale/ku.min.js +1 -1
  123. package/dist/locale/ku.min.mjs +1 -1
  124. package/dist/locale/ku.mjs +1 -1
  125. package/dist/locale/ky.js +1 -1
  126. package/dist/locale/ky.min.js +1 -1
  127. package/dist/locale/ky.min.mjs +1 -1
  128. package/dist/locale/ky.mjs +1 -1
  129. package/dist/locale/lt.js +1 -1
  130. package/dist/locale/lt.min.js +1 -1
  131. package/dist/locale/lt.min.mjs +1 -1
  132. package/dist/locale/lt.mjs +1 -1
  133. package/dist/locale/lv.js +1 -1
  134. package/dist/locale/lv.min.js +1 -1
  135. package/dist/locale/lv.min.mjs +1 -1
  136. package/dist/locale/lv.mjs +1 -1
  137. package/dist/locale/mg.js +1 -1
  138. package/dist/locale/mg.min.js +1 -1
  139. package/dist/locale/mg.min.mjs +1 -1
  140. package/dist/locale/mg.mjs +1 -1
  141. package/dist/locale/mn.js +1 -1
  142. package/dist/locale/mn.min.js +1 -1
  143. package/dist/locale/mn.min.mjs +1 -1
  144. package/dist/locale/mn.mjs +1 -1
  145. package/dist/locale/nb-no.js +1 -1
  146. package/dist/locale/nb-no.min.js +1 -1
  147. package/dist/locale/nb-no.min.mjs +1 -1
  148. package/dist/locale/nb-no.mjs +1 -1
  149. package/dist/locale/nl.js +1 -1
  150. package/dist/locale/nl.min.js +1 -1
  151. package/dist/locale/nl.min.mjs +1 -1
  152. package/dist/locale/nl.mjs +1 -1
  153. package/dist/locale/pa.js +1 -1
  154. package/dist/locale/pa.min.js +1 -1
  155. package/dist/locale/pa.min.mjs +1 -1
  156. package/dist/locale/pa.mjs +1 -1
  157. package/dist/locale/pl.js +1 -1
  158. package/dist/locale/pl.min.js +1 -1
  159. package/dist/locale/pl.min.mjs +1 -1
  160. package/dist/locale/pl.mjs +1 -1
  161. package/dist/locale/pt-br.js +1 -1
  162. package/dist/locale/pt-br.min.js +1 -1
  163. package/dist/locale/pt-br.min.mjs +1 -1
  164. package/dist/locale/pt-br.mjs +1 -1
  165. package/dist/locale/pt.js +1 -1
  166. package/dist/locale/pt.min.js +1 -1
  167. package/dist/locale/pt.min.mjs +1 -1
  168. package/dist/locale/pt.mjs +1 -1
  169. package/dist/locale/ro.js +1 -1
  170. package/dist/locale/ro.min.js +1 -1
  171. package/dist/locale/ro.min.mjs +1 -1
  172. package/dist/locale/ro.mjs +1 -1
  173. package/dist/locale/ru.js +1 -1
  174. package/dist/locale/ru.min.js +1 -1
  175. package/dist/locale/ru.min.mjs +1 -1
  176. package/dist/locale/ru.mjs +1 -1
  177. package/dist/locale/sk.js +1 -1
  178. package/dist/locale/sk.min.js +1 -1
  179. package/dist/locale/sk.min.mjs +1 -1
  180. package/dist/locale/sk.mjs +1 -1
  181. package/dist/locale/sl.js +1 -1
  182. package/dist/locale/sl.min.js +1 -1
  183. package/dist/locale/sl.min.mjs +1 -1
  184. package/dist/locale/sl.mjs +1 -1
  185. package/dist/locale/sr.js +1 -1
  186. package/dist/locale/sr.min.js +1 -1
  187. package/dist/locale/sr.min.mjs +1 -1
  188. package/dist/locale/sr.mjs +1 -1
  189. package/dist/locale/sv.js +1 -1
  190. package/dist/locale/sv.min.js +1 -1
  191. package/dist/locale/sv.min.mjs +1 -1
  192. package/dist/locale/sv.mjs +1 -1
  193. package/dist/locale/ta.js +1 -1
  194. package/dist/locale/ta.min.js +1 -1
  195. package/dist/locale/ta.min.mjs +1 -1
  196. package/dist/locale/ta.mjs +1 -1
  197. package/dist/locale/th.js +1 -1
  198. package/dist/locale/th.min.js +1 -1
  199. package/dist/locale/th.min.mjs +1 -1
  200. package/dist/locale/th.mjs +1 -1
  201. package/dist/locale/tk.js +1 -1
  202. package/dist/locale/tk.min.js +1 -1
  203. package/dist/locale/tk.min.mjs +1 -1
  204. package/dist/locale/tk.mjs +1 -1
  205. package/dist/locale/tr.js +1 -1
  206. package/dist/locale/tr.min.js +1 -1
  207. package/dist/locale/tr.min.mjs +1 -1
  208. package/dist/locale/tr.mjs +1 -1
  209. package/dist/locale/ug-cn.js +1 -1
  210. package/dist/locale/ug-cn.min.js +1 -1
  211. package/dist/locale/ug-cn.min.mjs +1 -1
  212. package/dist/locale/ug-cn.mjs +1 -1
  213. package/dist/locale/uk.js +1 -1
  214. package/dist/locale/uk.min.js +1 -1
  215. package/dist/locale/uk.min.mjs +1 -1
  216. package/dist/locale/uk.mjs +1 -1
  217. package/dist/locale/uz-uz.js +1 -1
  218. package/dist/locale/uz-uz.min.js +1 -1
  219. package/dist/locale/uz-uz.min.mjs +1 -1
  220. package/dist/locale/uz-uz.mjs +1 -1
  221. package/dist/locale/vi.js +1 -1
  222. package/dist/locale/vi.min.js +1 -1
  223. package/dist/locale/vi.min.mjs +1 -1
  224. package/dist/locale/vi.mjs +1 -1
  225. package/dist/locale/zh-cn.js +1 -1
  226. package/dist/locale/zh-cn.min.js +1 -1
  227. package/dist/locale/zh-cn.min.mjs +1 -1
  228. package/dist/locale/zh-cn.mjs +1 -1
  229. package/dist/locale/zh-tw.js +1 -1
  230. package/dist/locale/zh-tw.min.js +1 -1
  231. package/dist/locale/zh-tw.min.mjs +1 -1
  232. package/dist/locale/zh-tw.mjs +1 -1
  233. package/es/components/checkbox/src/checkbox.mjs +2 -2
  234. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  235. package/es/components/form/index.d.ts +4 -0
  236. package/es/components/form/src/form-item2.mjs +1 -0
  237. package/es/components/form/src/form-item2.mjs.map +1 -1
  238. package/es/components/form/src/form.d.ts +1 -0
  239. package/es/components/form/src/form.mjs +5 -0
  240. package/es/components/form/src/form.mjs.map +1 -1
  241. package/es/components/form/src/form.vue.d.ts +4 -0
  242. package/es/components/index.mjs +1 -1
  243. package/es/components/space/index.d.ts +3 -3
  244. package/es/components/space/src/space.d.ts +5 -4
  245. package/es/components/space/src/space.mjs.map +1 -1
  246. package/es/components/space/src/use-space.d.ts +1 -1
  247. package/es/components/table/src/table/style-helper.mjs +7 -5
  248. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  249. package/es/components/upload/index.mjs +1 -1
  250. package/es/components/upload/src/upload-content2.mjs +1 -1
  251. package/es/components/upload/src/upload-dragger.mjs +70 -11
  252. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  253. package/es/components/upload/src/upload-dragger2.mjs +11 -70
  254. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  255. package/es/index.mjs +1 -1
  256. package/es/version.d.ts +1 -1
  257. package/es/version.mjs +1 -1
  258. package/es/version.mjs.map +1 -1
  259. package/lib/components/checkbox/src/checkbox.js +1 -1
  260. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  261. package/lib/components/form/index.d.ts +4 -0
  262. package/lib/components/form/src/form-item2.js +1 -0
  263. package/lib/components/form/src/form-item2.js.map +1 -1
  264. package/lib/components/form/src/form.d.ts +1 -0
  265. package/lib/components/form/src/form.js +5 -0
  266. package/lib/components/form/src/form.js.map +1 -1
  267. package/lib/components/form/src/form.vue.d.ts +4 -0
  268. package/lib/components/index.js +1 -1
  269. package/lib/components/space/index.d.ts +3 -3
  270. package/lib/components/space/src/space.d.ts +5 -4
  271. package/lib/components/space/src/space.js.map +1 -1
  272. package/lib/components/space/src/use-space.d.ts +1 -1
  273. package/lib/components/table/src/table/style-helper.js +7 -5
  274. package/lib/components/table/src/table/style-helper.js.map +1 -1
  275. package/lib/components/upload/index.js +1 -1
  276. package/lib/components/upload/src/upload-content2.js +1 -1
  277. package/lib/components/upload/src/upload-dragger.js +70 -12
  278. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  279. package/lib/components/upload/src/upload-dragger2.js +12 -70
  280. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  281. package/lib/index.js +1 -1
  282. package/lib/version.d.ts +1 -1
  283. package/lib/version.js +1 -1
  284. package/lib/version.js.map +1 -1
  285. package/package.json +2 -2
  286. package/tags.json +1 -1
  287. package/theme-chalk/el-form.css +1 -1
  288. package/theme-chalk/el-popover.css +1 -1
  289. package/theme-chalk/el-select.css +1 -1
  290. package/theme-chalk/el-table.css +1 -1
  291. package/theme-chalk/index.css +1 -1
  292. package/theme-chalk/src/form.scss +17 -6
  293. package/theme-chalk/src/popover.scss +7 -0
  294. package/theme-chalk/src/select.scss +1 -0
  295. package/theme-chalk/src/table.scss +8 -15
  296. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"form-item2.js","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div\n ref=\"formItemRef\"\n :class=\"formItemClasses\"\n :role=\"isGroup ? 'group' : undefined\"\n :aria-labelledby=\"isGroup ? labelId : undefined\"\n >\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext?.labelWidth === 'auto'\"\n >\n <component\n :is=\"labelFor ? 'label' : 'div'\"\n v-if=\"hasLabel\"\n :id=\"labelId\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </component>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot />\n <transition :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n useSlots,\n watch,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone, isEqual } from 'lodash-unified'\nimport { refDebounced } from '@vueuse/core'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isBoolean,\n isFunction,\n isString,\n} from '@element-plus/utils'\nimport { formContextKey, formItemContextKey } from '@element-plus/tokens'\nimport { useId, useNamespace, useSize } from '@element-plus/hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\n\nimport type { CSSProperties } from 'vue'\nimport type { RuleItem } from 'async-validator'\nimport type {\n FormItemContext,\n FormItemRule,\n FormValidateFailure,\n} from '@element-plus/tokens'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemValidateState } from './form-item'\n\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey, undefined)\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst labelId = useId().value\nconst inputIds = ref<string[]>([])\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateStateDebounced = refDebounced(validateState, 100)\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\n// special inline value.\nlet initialValue: any = undefined\nlet isResettingField = false\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top' || formContext?.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext?.hideRequiredAsterisk),\n { [ns.m('feedback')]: formContext?.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext?.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst hasLabel = computed<boolean>(() => {\n return !!(props.label || slots.label)\n})\n\nconst labelFor = computed<string | undefined>(() => {\n return props.for || inputIds.value.length === 1\n ? inputIds.value[0]\n : undefined\n})\n\nconst isGroup = computed<boolean>(() => {\n return !labelFor.value && hasLabel.value\n})\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext?.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst _rules = computed(() => {\n const rules: FormItemRule[] = props.rules ? ensureArray(props.rules) : []\n\n const formRules = formContext?.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (props.required !== undefined) {\n rules.push({ required: !!props.required })\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => _rules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = _rules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n _rules.value.some((rule) => rule.required === true)\n)\n\nconst shouldShowError = computed(\n () =>\n validateStateDebounced.value === 'error' &&\n props.showMessage &&\n (formContext?.showMessage ?? true)\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext?.labelSuffix || ''}`\n)\n\nconst setValidationState = (state: FormItemValidateState) => {\n validateState.value = state\n}\n\nconst onValidationFailed = (error: FormValidateFailure) => {\n const { errors, fields } = error\n if (!errors || !fields) {\n console.error(error)\n }\n\n setValidationState('error')\n validateMessage.value = errors\n ? errors?.[0]?.message ?? `${props.prop} is required`\n : ''\n\n formContext?.emit('validate', props.prop!, false, validateMessage.value)\n}\n\nconst onValidationSucceeded = () => {\n setValidationState('success')\n formContext?.emit('validate', props.prop!, true, '')\n}\n\nconst doValidate = async (rules: RuleItem[]): Promise<true> => {\n const modelName = propString.value\n const validator = new AsyncValidator({\n [modelName]: rules,\n })\n return validator\n .validate({ [modelName]: fieldValue.value }, { firstFields: true })\n .then(() => {\n onValidationSucceeded()\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n onValidationFailed(err as FormValidateFailure)\n return Promise.reject(err)\n })\n}\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n // skip validation if its resetting\n if (isResettingField) {\n isResettingField = false\n return false\n }\n\n const hasCallback = isFunction(callback)\n if (!validateEnabled.value) {\n callback?.(false)\n return false\n }\n\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n callback?.(true)\n return true\n }\n\n setValidationState('validating')\n\n return doValidate(rules)\n .then(() => {\n callback?.(true)\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n const { fields } = err\n callback?.(false, fields)\n return hasCallback ? false : Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n setValidationState('')\n validateMessage.value = ''\n}\n\nconst resetField: FormItemContext['resetField'] = async () => {\n const model = formContext?.model\n if (!model || !props.prop) return\n\n const computedValue = getProp(model, props.prop)\n\n if (!isEqual(computedValue.value, initialValue)) {\n // prevent validation from being triggered\n isResettingField = true\n computedValue.value = clone(initialValue)\n }\n\n await nextTick()\n clearValidate()\n}\n\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\n if (!inputIds.value.includes(id)) {\n inputIds.value.push(id)\n }\n}\n\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\n inputIds.value = inputIds.value.filter((listId) => listId !== id)\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n setValidationState(val ? 'error' : '')\n },\n { immediate: true }\n)\n\nwatch(\n () => props.validateStatus,\n (val) => setValidationState(val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n labelId,\n inputIds,\n isGroup,\n addInputId,\n removeInputId,\n resetField,\n clearValidate,\n validate,\n})\n\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext?.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\n\nonBeforeUnmount(() => {\n formContext?.removeField(context)\n})\n\ndefineExpose({\n /** @description form item size */\n size: _size,\n /** @description validation message */\n validateMessage,\n /** @description validation state */\n validateState,\n /** @description validate form item */\n validate,\n /** @description clear validation status */\n clearValidate,\n /** @description reset field value */\n resetField,\n})\n</script>\n"],"names":["useSlots","inject","formContextKey","formItemContextKey","useSize","useNamespace","useId","ref","refDebounced","computed","addUnit","isBoolean","isString","getProp","ensureArray","AsyncValidator","isFunction","isEqual","clone","nextTick","watch","reactive","toRefs","provide","onMounted","onBeforeUnmount"],"mappings":"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"}
1
+ {"version":3,"file":"form-item2.js","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div\n ref=\"formItemRef\"\n :class=\"formItemClasses\"\n :role=\"isGroup ? 'group' : undefined\"\n :aria-labelledby=\"isGroup ? labelId : undefined\"\n >\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext?.labelWidth === 'auto'\"\n >\n <component\n :is=\"labelFor ? 'label' : 'div'\"\n v-if=\"hasLabel\"\n :id=\"labelId\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </component>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot />\n <transition :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n useSlots,\n watch,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone, isEqual } from 'lodash-unified'\nimport { refDebounced } from '@vueuse/core'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isBoolean,\n isFunction,\n isString,\n} from '@element-plus/utils'\nimport { formContextKey, formItemContextKey } from '@element-plus/tokens'\nimport { useId, useNamespace, useSize } from '@element-plus/hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\n\nimport type { CSSProperties } from 'vue'\nimport type { RuleItem } from 'async-validator'\nimport type {\n FormItemContext,\n FormItemRule,\n FormValidateFailure,\n} from '@element-plus/tokens'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemValidateState } from './form-item'\n\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey, undefined)\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst labelId = useId().value\nconst inputIds = ref<string[]>([])\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateStateDebounced = refDebounced(validateState, 100)\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\n// special inline value.\nlet initialValue: any = undefined\nlet isResettingField = false\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top' || formContext?.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext?.hideRequiredAsterisk),\n formContext?.requireAsteriskPosition === 'right'\n ? 'asterisk-right'\n : 'asterisk-left',\n { [ns.m('feedback')]: formContext?.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext?.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst hasLabel = computed<boolean>(() => {\n return !!(props.label || slots.label)\n})\n\nconst labelFor = computed<string | undefined>(() => {\n return props.for || inputIds.value.length === 1\n ? inputIds.value[0]\n : undefined\n})\n\nconst isGroup = computed<boolean>(() => {\n return !labelFor.value && hasLabel.value\n})\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext?.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst _rules = computed(() => {\n const rules: FormItemRule[] = props.rules ? ensureArray(props.rules) : []\n\n const formRules = formContext?.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (props.required !== undefined) {\n rules.push({ required: !!props.required })\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => _rules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = _rules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n _rules.value.some((rule) => rule.required === true)\n)\n\nconst shouldShowError = computed(\n () =>\n validateStateDebounced.value === 'error' &&\n props.showMessage &&\n (formContext?.showMessage ?? true)\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext?.labelSuffix || ''}`\n)\n\nconst setValidationState = (state: FormItemValidateState) => {\n validateState.value = state\n}\n\nconst onValidationFailed = (error: FormValidateFailure) => {\n const { errors, fields } = error\n if (!errors || !fields) {\n console.error(error)\n }\n\n setValidationState('error')\n validateMessage.value = errors\n ? errors?.[0]?.message ?? `${props.prop} is required`\n : ''\n\n formContext?.emit('validate', props.prop!, false, validateMessage.value)\n}\n\nconst onValidationSucceeded = () => {\n setValidationState('success')\n formContext?.emit('validate', props.prop!, true, '')\n}\n\nconst doValidate = async (rules: RuleItem[]): Promise<true> => {\n const modelName = propString.value\n const validator = new AsyncValidator({\n [modelName]: rules,\n })\n return validator\n .validate({ [modelName]: fieldValue.value }, { firstFields: true })\n .then(() => {\n onValidationSucceeded()\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n onValidationFailed(err as FormValidateFailure)\n return Promise.reject(err)\n })\n}\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n // skip validation if its resetting\n if (isResettingField) {\n isResettingField = false\n return false\n }\n\n const hasCallback = isFunction(callback)\n if (!validateEnabled.value) {\n callback?.(false)\n return false\n }\n\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n callback?.(true)\n return true\n }\n\n setValidationState('validating')\n\n return doValidate(rules)\n .then(() => {\n callback?.(true)\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n const { fields } = err\n callback?.(false, fields)\n return hasCallback ? false : Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n setValidationState('')\n validateMessage.value = ''\n}\n\nconst resetField: FormItemContext['resetField'] = async () => {\n const model = formContext?.model\n if (!model || !props.prop) return\n\n const computedValue = getProp(model, props.prop)\n\n if (!isEqual(computedValue.value, initialValue)) {\n // prevent validation from being triggered\n isResettingField = true\n computedValue.value = clone(initialValue)\n }\n\n await nextTick()\n clearValidate()\n}\n\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\n if (!inputIds.value.includes(id)) {\n inputIds.value.push(id)\n }\n}\n\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\n inputIds.value = inputIds.value.filter((listId) => listId !== id)\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n setValidationState(val ? 'error' : '')\n },\n { immediate: true }\n)\n\nwatch(\n () => props.validateStatus,\n (val) => setValidationState(val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n labelId,\n inputIds,\n isGroup,\n addInputId,\n removeInputId,\n resetField,\n clearValidate,\n validate,\n})\n\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext?.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\n\nonBeforeUnmount(() => {\n formContext?.removeField(context)\n})\n\ndefineExpose({\n /** @description form item size */\n size: _size,\n /** @description validation message */\n validateMessage,\n /** @description validation state */\n validateState,\n /** @description validate form item */\n validate,\n /** @description clear validation status */\n clearValidate,\n /** @description reset field value */\n resetField,\n})\n</script>\n"],"names":["useSlots","inject","formContextKey","formItemContextKey","useSize","useNamespace","useId","ref","refDebounced","computed","addUnit","isBoolean","isString","getProp","ensureArray","AsyncValidator","isFunction","isEqual","clone","nextTick","watch","reactive","toRefs","provide","onMounted","onBeforeUnmount"],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare const formProps: {
9
9
  __epPropKey: true;
10
10
  };
11
11
  readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
12
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
12
13
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
13
14
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
14
15
  readonly inline: BooleanConstructor;
@@ -19,6 +19,11 @@ const formProps = runtime.buildProps({
19
19
  values: ["left", "right", "top"],
20
20
  default: "right"
21
21
  },
22
+ requireAsteriskPosition: {
23
+ type: String,
24
+ values: ["left", "right"],
25
+ default: "left"
26
+ },
22
27
  labelWidth: {
23
28
  type: [String, Number],
24
29
  default: ""
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from '@element-plus/tokens'\n\nexport const formProps = buildProps({\n model: Object,\n rules: {\n type: definePropType<FormRules>(Object),\n },\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n labelSuffix: {\n type: String,\n default: '',\n },\n inline: Boolean,\n inlineMessage: Boolean,\n statusIcon: Boolean,\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n disabled: Boolean,\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n hideRequiredAsterisk: {\n type: Boolean,\n default: false,\n },\n scrollToError: Boolean,\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":["buildProps","definePropType","componentSizes","isArray","isString","isBoolean"],"mappings":";;;;;;;;;;;AAQY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAEC,mBAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAACC,cAAO,CAAC,IAAI,CAAC,IAAIC,eAAQ,CAAC,IAAI,CAAC,KAAKC,cAAS,CAAC,OAAO,CAAC,IAAID,eAAQ,CAAC,OAAO,CAAC;AACpH;;;;;"}
1
+ {"version":3,"file":"form.js","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from '@element-plus/tokens'\n\nexport const formProps = buildProps({\n model: Object,\n rules: {\n type: definePropType<FormRules>(Object),\n },\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n requireAsteriskPosition: {\n type: String,\n values: ['left', 'right'],\n default: 'left',\n },\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n labelSuffix: {\n type: String,\n default: '',\n },\n inline: Boolean,\n inlineMessage: Boolean,\n statusIcon: Boolean,\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n disabled: Boolean,\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n hideRequiredAsterisk: {\n type: Boolean,\n default: false,\n },\n scrollToError: Boolean,\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":["buildProps","definePropType","componentSizes","isArray","isString","isBoolean"],"mappings":";;;;;;;;;;;AAQY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,uBAAuB,EAAE;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC7B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAEC,mBAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAACC,cAAO,CAAC,IAAI,CAAC,IAAIC,eAAQ,CAAC,IAAI,CAAC,KAAKC,cAAS,CAAC,OAAO,CAAC,IAAID,eAAQ,CAAC,OAAO,CAAC;AACpH;;;;;"}
@@ -10,6 +10,7 @@ declare const _default: import("vue").DefineComponent<{
10
10
  __epPropKey: true;
11
11
  };
12
12
  readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
13
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
13
14
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
14
15
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
15
16
  readonly inline: BooleanConstructor;
@@ -37,6 +38,7 @@ declare const _default: import("vue").DefineComponent<{
37
38
  __epPropKey: true;
38
39
  };
39
40
  readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
41
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
40
42
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
41
43
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
42
44
  readonly inline: BooleanConstructor;
@@ -101,6 +103,7 @@ declare const _default: import("vue").DefineComponent<{
101
103
  __epPropKey: true;
102
104
  };
103
105
  readonly labelPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top", unknown, "right", boolean>;
106
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right", unknown, "left", boolean>;
104
107
  readonly labelWidth: import("element-plus/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
105
108
  readonly labelSuffix: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
106
109
  readonly inline: BooleanConstructor;
@@ -122,6 +125,7 @@ declare const _default: import("vue").DefineComponent<{
122
125
  }, {
123
126
  readonly disabled: boolean;
124
127
  readonly labelPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top", unknown>;
128
+ readonly requireAsteriskPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right", unknown>;
125
129
  readonly labelWidth: import("element-plus/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
126
130
  readonly labelSuffix: string;
127
131
  readonly showMessage: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -171,7 +171,7 @@ var transfer = require('./transfer/src/transfer.js');
171
171
  var upload = require('./upload/src/upload.js');
172
172
  var uploadContent = require('./upload/src/upload-content.js');
173
173
  var uploadList = require('./upload/src/upload-list.js');
174
- var uploadDragger = require('./upload/src/upload-dragger.js');
174
+ var uploadDragger = require('./upload/src/upload-dragger2.js');
175
175
  var fixedSizeList = require('./virtual-list/src/components/fixed-size-list.js');
176
176
  var dynamicSizeList = require('./virtual-list/src/components/dynamic-size-list.js');
177
177
  var fixedSizeGrid = require('./virtual-list/src/components/fixed-size-grid.js');
@@ -1,6 +1,6 @@
1
1
  export declare const ElSpace: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
2
2
  readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
3
- readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown, "", boolean>;
3
+ readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>> & {}) | (() => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>) | ((new (...args: any[]) => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>> & {}) | (() => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>))[], unknown, unknown, "", boolean>;
4
4
  readonly style: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("vue").StyleValue & {}) | (() => import("vue").StyleValue) | ((new (...args: any[]) => import("vue").StyleValue & {}) | (() => import("vue").StyleValue))[], unknown, unknown, "", boolean>;
5
5
  readonly alignment: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "center", boolean>;
6
6
  readonly prefixCls: {
@@ -26,7 +26,7 @@ export declare const ElSpace: import("element-plus/es/utils").SFCWithInstall<imp
26
26
  $stable?: boolean | undefined;
27
27
  } | null, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
28
28
  readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
29
- readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown, "", boolean>;
29
+ readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>> & {}) | (() => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>) | ((new (...args: any[]) => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>> & {}) | (() => import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>))[], unknown, unknown, "", boolean>;
30
30
  readonly style: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("vue").StyleValue & {}) | (() => import("vue").StyleValue) | ((new (...args: any[]) => import("vue").StyleValue & {}) | (() => import("vue").StyleValue))[], unknown, unknown, "", boolean>;
31
31
  readonly alignment: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "center", boolean>;
32
32
  readonly prefixCls: {
@@ -50,7 +50,7 @@ export declare const ElSpace: import("element-plus/es/utils").SFCWithInstall<imp
50
50
  readonly style: import("vue").StyleValue;
51
51
  readonly wrap: boolean;
52
52
  readonly direction: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "vertical" | "horizontal", unknown>;
53
- readonly class: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown>;
53
+ readonly class: import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>;
54
54
  readonly alignment: string;
55
55
  readonly spacer: import("vue").VNodeChild;
56
56
  readonly fillRatio: number;
@@ -1,7 +1,8 @@
1
1
  import type { ExtractPropTypes, StyleValue, VNode, VNodeChild } from 'vue';
2
+ import type { Arrayable } from 'element-plus/es/utils';
2
3
  export declare const spaceProps: {
3
4
  readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
4
- readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown, "", boolean>;
5
+ readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>) | ((new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>))[], unknown, unknown, "", boolean>;
5
6
  readonly style: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => StyleValue & {}) | (() => StyleValue) | ((new (...args: any[]) => StyleValue & {}) | (() => StyleValue))[], unknown, unknown, "", boolean>;
6
7
  readonly alignment: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "center", boolean>;
7
8
  readonly prefixCls: {
@@ -24,7 +25,7 @@ export declare const spaceProps: {
24
25
  export declare type SpaceProps = ExtractPropTypes<typeof spaceProps>;
25
26
  declare const _default: import("vue").DefineComponent<{
26
27
  readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
27
- readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown, "", boolean>;
28
+ readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>) | ((new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>))[], unknown, unknown, "", boolean>;
28
29
  readonly style: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => StyleValue & {}) | (() => StyleValue) | ((new (...args: any[]) => StyleValue & {}) | (() => StyleValue))[], unknown, unknown, "", boolean>;
29
30
  readonly alignment: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "center", boolean>;
30
31
  readonly prefixCls: {
@@ -50,7 +51,7 @@ declare const _default: import("vue").DefineComponent<{
50
51
  $stable?: boolean | undefined;
51
52
  } | null, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
52
53
  readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
53
- readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown, "", boolean>;
54
+ readonly class: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>) | ((new (...args: any[]) => Arrayable<string | Record<string, boolean>> & {}) | (() => Arrayable<string | Record<string, boolean>>))[], unknown, unknown, "", boolean>;
54
55
  readonly style: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => StyleValue & {}) | (() => StyleValue) | ((new (...args: any[]) => StyleValue & {}) | (() => StyleValue))[], unknown, unknown, "", boolean>;
55
56
  readonly alignment: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "center", boolean>;
56
57
  readonly prefixCls: {
@@ -74,7 +75,7 @@ declare const _default: import("vue").DefineComponent<{
74
75
  readonly style: StyleValue;
75
76
  readonly wrap: boolean;
76
77
  readonly direction: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "vertical" | "horizontal", unknown>;
77
- readonly class: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown>;
78
+ readonly class: Arrayable<string | Record<string, boolean>>;
78
79
  readonly alignment: string;
79
80
  readonly spacer: VNodeChild;
80
81
  readonly fillRatio: number;
@@ -1 +1 @@
1
- {"version":3,"file":"space.js","sources":["../../../../../../packages/components/space/src/space.ts"],"sourcesContent":["import {\n createTextVNode,\n createVNode,\n defineComponent,\n isVNode,\n renderSlot,\n} from 'vue'\nimport { isString } from '@vue/shared'\nimport {\n PatchFlags,\n buildProps,\n definePropType,\n isArray,\n isFragment,\n isNumber,\n isValidElementNode,\n} from '@element-plus/utils'\nimport { componentSizes } from '@element-plus/constants'\nimport Item from './item'\nimport { useSpace } from './use-space'\n\nimport type {\n ExtractPropTypes,\n StyleValue,\n VNode,\n VNodeArrayChildren,\n VNodeChild,\n} from 'vue'\nimport type { AlignItemsProperty } from 'csstype'\n\nexport const spaceProps = buildProps({\n direction: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'horizontal',\n },\n\n class: {\n type: definePropType<string | string[] | Record<string, boolean>>([\n String,\n Object,\n Array,\n ]),\n default: '',\n },\n\n style: {\n type: definePropType<StyleValue>([String, Array, Object]),\n default: '',\n },\n\n alignment: {\n type: definePropType<AlignItemsProperty>(String),\n default: 'center',\n },\n\n prefixCls: {\n type: String,\n },\n\n spacer: {\n type: definePropType<VNodeChild>([Object, String, Number, Array]),\n default: null,\n validator: (val: unknown) => isVNode(val) || isNumber(val) || isString(val),\n },\n\n wrap: Boolean,\n\n fill: Boolean,\n\n fillRatio: {\n type: Number,\n default: 100,\n },\n\n size: {\n type: [String, Array, Number],\n values: componentSizes,\n validator: (val: unknown): val is [number, number] | number => {\n return (\n isNumber(val) ||\n (isArray(val) && val.length === 2 && val.every(isNumber))\n )\n },\n },\n} as const)\nexport type SpaceProps = ExtractPropTypes<typeof spaceProps>\n\nexport default defineComponent({\n name: 'ElSpace',\n\n props: spaceProps,\n\n setup(props, { slots }) {\n const { classes, containerStyle, itemStyle } = useSpace(props)\n\n // retrieve the children out via a simple for loop\n // the edge case here is that when users uses directives like <v-for>, <v-if>\n // we need to go deeper until the child is not the Fragment type\n function extractChildren(\n children: VNodeArrayChildren,\n parentKey = '',\n extractedChildren: VNode[] = []\n ) {\n const { prefixCls } = props\n children.forEach((child, loopKey) => {\n if (isFragment(child)) {\n if (isArray(child.children)) {\n child.children.forEach((nested, key) => {\n if (isFragment(nested) && isArray(nested.children)) {\n extractChildren(\n nested.children,\n `${parentKey + key}-`,\n extractedChildren\n )\n } else {\n extractedChildren.push(\n createVNode(\n Item,\n {\n style: itemStyle.value,\n prefixCls,\n key: `nested-${parentKey + key}`,\n },\n {\n default: () => [nested],\n },\n PatchFlags.PROPS | PatchFlags.STYLE,\n ['style', 'prefixCls']\n )\n )\n }\n })\n }\n // if the current child is valid vnode, then append this current vnode\n // to item as child node.\n } else if (isValidElementNode(child)) {\n extractedChildren.push(\n createVNode(\n Item,\n {\n style: itemStyle.value,\n prefixCls,\n key: `LoopKey${parentKey + loopKey}`,\n },\n {\n default: () => [child],\n },\n PatchFlags.PROPS | PatchFlags.STYLE,\n ['style', 'prefixCls']\n )\n )\n }\n })\n\n return extractedChildren\n }\n\n return () => {\n const { spacer, direction } = props\n\n const children = renderSlot(slots, 'default', { key: 0 }, () => [])\n\n if ((children.children ?? []).length === 0) return null\n // loop the children, if current children is rendered via `renderList` or `<v-for>`\n if (isArray(children.children)) {\n let extractedChildren = extractChildren(children.children)\n\n if (spacer) {\n // track the current rendering index, when encounters the last element\n // then no need to add a spacer after it.\n const len = extractedChildren.length - 1\n extractedChildren = extractedChildren.reduce<VNode[]>(\n (acc, child, idx) => {\n const children = [...acc, child]\n if (idx !== len) {\n children.push(\n createVNode(\n 'span',\n // adding width 100% for vertical alignment,\n // when the spacer inherit the width from the\n // parent, this span's width was not set, so space\n // might disappear\n {\n style: [\n itemStyle.value,\n direction === 'vertical' ? 'width: 100%' : null,\n ],\n key: idx,\n },\n [\n // if spacer is already a valid vnode, then append it to the current\n // span element.\n // otherwise, treat it as string.\n isVNode(spacer)\n ? spacer\n : createTextVNode(spacer as string, PatchFlags.TEXT),\n ],\n PatchFlags.STYLE\n )\n )\n }\n return children\n },\n []\n )\n }\n\n // spacer container.\n return createVNode(\n 'div',\n {\n class: classes.value,\n style: containerStyle.value,\n },\n extractedChildren,\n PatchFlags.STYLE | PatchFlags.CLASS\n )\n }\n\n return children.children\n }\n },\n})\n"],"names":["buildProps","definePropType","isVNode","isNumber","isString","componentSizes","isArray","defineComponent","useSpace","isFragment","createVNode","Item","PatchFlags","isValidElementNode","renderSlot","createTextVNode"],"mappings":"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"}
1
+ {"version":3,"file":"space.js","sources":["../../../../../../packages/components/space/src/space.ts"],"sourcesContent":["import {\n createTextVNode,\n createVNode,\n defineComponent,\n isVNode,\n renderSlot,\n} from 'vue'\nimport { isString } from '@vue/shared'\nimport {\n PatchFlags,\n buildProps,\n definePropType,\n isArray,\n isFragment,\n isNumber,\n isValidElementNode,\n} from '@element-plus/utils'\nimport { componentSizes } from '@element-plus/constants'\nimport Item from './item'\nimport { useSpace } from './use-space'\n\nimport type {\n ExtractPropTypes,\n StyleValue,\n VNode,\n VNodeArrayChildren,\n VNodeChild,\n} from 'vue'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { AlignItemsProperty } from 'csstype'\n\nexport const spaceProps = buildProps({\n direction: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'horizontal',\n },\n\n class: {\n type: definePropType<Arrayable<Record<string, boolean> | string>>([\n String,\n Object,\n Array,\n ]),\n default: '',\n },\n\n style: {\n type: definePropType<StyleValue>([String, Array, Object]),\n default: '',\n },\n\n alignment: {\n type: definePropType<AlignItemsProperty>(String),\n default: 'center',\n },\n\n prefixCls: {\n type: String,\n },\n\n spacer: {\n type: definePropType<VNodeChild>([Object, String, Number, Array]),\n default: null,\n validator: (val: unknown) => isVNode(val) || isNumber(val) || isString(val),\n },\n\n wrap: Boolean,\n\n fill: Boolean,\n\n fillRatio: {\n type: Number,\n default: 100,\n },\n\n size: {\n type: [String, Array, Number],\n values: componentSizes,\n validator: (val: unknown): val is [number, number] | number => {\n return (\n isNumber(val) ||\n (isArray(val) && val.length === 2 && val.every(isNumber))\n )\n },\n },\n} as const)\nexport type SpaceProps = ExtractPropTypes<typeof spaceProps>\n\nexport default defineComponent({\n name: 'ElSpace',\n\n props: spaceProps,\n\n setup(props, { slots }) {\n const { classes, containerStyle, itemStyle } = useSpace(props)\n\n // retrieve the children out via a simple for loop\n // the edge case here is that when users uses directives like <v-for>, <v-if>\n // we need to go deeper until the child is not the Fragment type\n function extractChildren(\n children: VNodeArrayChildren,\n parentKey = '',\n extractedChildren: VNode[] = []\n ) {\n const { prefixCls } = props\n children.forEach((child, loopKey) => {\n if (isFragment(child)) {\n if (isArray(child.children)) {\n child.children.forEach((nested, key) => {\n if (isFragment(nested) && isArray(nested.children)) {\n extractChildren(\n nested.children,\n `${parentKey + key}-`,\n extractedChildren\n )\n } else {\n extractedChildren.push(\n createVNode(\n Item,\n {\n style: itemStyle.value,\n prefixCls,\n key: `nested-${parentKey + key}`,\n },\n {\n default: () => [nested],\n },\n PatchFlags.PROPS | PatchFlags.STYLE,\n ['style', 'prefixCls']\n )\n )\n }\n })\n }\n // if the current child is valid vnode, then append this current vnode\n // to item as child node.\n } else if (isValidElementNode(child)) {\n extractedChildren.push(\n createVNode(\n Item,\n {\n style: itemStyle.value,\n prefixCls,\n key: `LoopKey${parentKey + loopKey}`,\n },\n {\n default: () => [child],\n },\n PatchFlags.PROPS | PatchFlags.STYLE,\n ['style', 'prefixCls']\n )\n )\n }\n })\n\n return extractedChildren\n }\n\n return () => {\n const { spacer, direction } = props\n\n const children = renderSlot(slots, 'default', { key: 0 }, () => [])\n\n if ((children.children ?? []).length === 0) return null\n // loop the children, if current children is rendered via `renderList` or `<v-for>`\n if (isArray(children.children)) {\n let extractedChildren = extractChildren(children.children)\n\n if (spacer) {\n // track the current rendering index, when encounters the last element\n // then no need to add a spacer after it.\n const len = extractedChildren.length - 1\n extractedChildren = extractedChildren.reduce<VNode[]>(\n (acc, child, idx) => {\n const children = [...acc, child]\n if (idx !== len) {\n children.push(\n createVNode(\n 'span',\n // adding width 100% for vertical alignment,\n // when the spacer inherit the width from the\n // parent, this span's width was not set, so space\n // might disappear\n {\n style: [\n itemStyle.value,\n direction === 'vertical' ? 'width: 100%' : null,\n ],\n key: idx,\n },\n [\n // if spacer is already a valid vnode, then append it to the current\n // span element.\n // otherwise, treat it as string.\n isVNode(spacer)\n ? spacer\n : createTextVNode(spacer as string, PatchFlags.TEXT),\n ],\n PatchFlags.STYLE\n )\n )\n }\n return children\n },\n []\n )\n }\n\n // spacer container.\n return createVNode(\n 'div',\n {\n class: classes.value,\n style: containerStyle.value,\n },\n extractedChildren,\n PatchFlags.STYLE | PatchFlags.CLASS\n )\n }\n\n return children.children\n }\n },\n})\n"],"names":["buildProps","definePropType","isVNode","isNumber","isString","componentSizes","isArray","defineComponent","useSpace","isFragment","createVNode","Item","PatchFlags","isValidElementNode","renderSlot","createTextVNode"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { SpaceProps } from './space';
2
2
  import type { StyleValue } from 'vue';
3
3
  export declare function useSpace(props: SpaceProps): {
4
- classes: import("vue").ComputedRef<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>) | ((new (...args: any[]) => (string | string[] | Record<string, boolean>) & {}) | (() => string | string[] | Record<string, boolean>))[], unknown, unknown>[]>;
4
+ classes: import("vue").ComputedRef<import("element-plus/es/utils").Arrayable<string | Record<string, boolean>>[]>;
5
5
  containerStyle: import("vue").ComputedRef<StyleValue>;
6
6
  itemStyle: import("vue").ComputedRef<StyleValue>;
7
7
  };
@@ -161,6 +161,11 @@ function useStyle(props, layout, store, table) {
161
161
  } else {
162
162
  core.useEventListener(window, "resize", resizeListener);
163
163
  }
164
+ core.useResizeObserver(table.refs.bodyWrapper, () => {
165
+ var _a, _b;
166
+ resizeListener();
167
+ (_b = (_a = table.refs) == null ? void 0 : _a.scrollBarRef) == null ? void 0 : _b.update();
168
+ });
164
169
  };
165
170
  const resizeListener = () => {
166
171
  var _a, _b, _c;
@@ -187,7 +192,7 @@ function useStyle(props, layout, store, table) {
187
192
  }
188
193
  tableScrollHeight.value = ((_b = table.refs.tableWrapper) == null ? void 0 : _b.scrollHeight) || 0;
189
194
  headerScrollHeight.value = (tableHeader == null ? void 0 : tableHeader.scrollHeight) || 0;
190
- footerScrollHeight.value = ((_c = table.refs.footerWrapper) == null ? void 0 : _c.scrollHeight) || 0;
195
+ footerScrollHeight.value = ((_c = table.refs.footerWrapper) == null ? void 0 : _c.offsetHeight) || 0;
191
196
  bodyScrollHeight.value = tableScrollHeight.value - headerScrollHeight.value - footerScrollHeight.value;
192
197
  if (shouldUpdateLayout) {
193
198
  resizeState.value = {
@@ -235,7 +240,6 @@ function useStyle(props, layout, store, table) {
235
240
  return {};
236
241
  });
237
242
  const scrollbarStyle = vue.computed(() => {
238
- var _a, _b;
239
243
  if (props.height) {
240
244
  return {
241
245
  height: "100%"
@@ -243,13 +247,11 @@ function useStyle(props, layout, store, table) {
243
247
  }
244
248
  if (props.maxHeight) {
245
249
  if (!Number.isNaN(Number(props.maxHeight))) {
246
- const headerHeight = ((_a = table.refs.headerWrapper) == null ? void 0 : _a.scrollHeight) || 0;
247
- const footerHeight = ((_b = table.refs.footerWrapper) == null ? void 0 : _b.scrollHeight) || 0;
248
250
  const maxHeight = props.maxHeight;
249
251
  const reachMaxHeight = tableScrollHeight.value >= Number(maxHeight);
250
252
  if (reachMaxHeight) {
251
253
  return {
252
- maxHeight: `${tableScrollHeight.value - headerHeight - footerHeight}px`
254
+ maxHeight: `${tableScrollHeight.value - headerScrollHeight.value - footerScrollHeight.value}px`
253
255
  };
254
256
  }
255
257
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"style-helper.js","sources":["../../../../../../../packages/components/table/src/table/style-helper.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n unref,\n watch,\n watchEffect,\n} from 'vue'\nimport { useEventListener, useResizeObserver } from '@vueuse/core'\nimport { useSize } from '@element-plus/hooks'\n\nimport type { Table, TableProps } from './defaults'\nimport type { Store } from '../store'\nimport type TableLayout from '../table-layout'\nimport type { TableColumnCtx } from '../table-column/defaults'\n\nfunction useStyle<T>(\n props: TableProps<T>,\n layout: TableLayout<T>,\n store: Store<T>,\n table: Table<T>\n) {\n const isHidden = ref(false)\n const renderExpanded = ref(null)\n const resizeProxyVisible = ref(false)\n const setDragVisible = (visible: boolean) => {\n resizeProxyVisible.value = visible\n }\n const resizeState = ref<{\n width: null | number\n height: null | number\n headerHeight: null | number\n }>({\n width: null,\n height: null,\n headerHeight: null,\n })\n const isGroup = ref(false)\n const scrollbarViewStyle = {\n display: 'inline-block',\n verticalAlign: 'middle',\n }\n const tableWidth = ref()\n const tableScrollHeight = ref(0)\n const bodyScrollHeight = ref(0)\n const headerScrollHeight = ref(0)\n const footerScrollHeight = ref(0)\n\n watchEffect(() => {\n layout.setHeight(props.height)\n })\n watchEffect(() => {\n layout.setMaxHeight(props.maxHeight)\n })\n watch(\n () => [props.currentRowKey, store.states.rowKey],\n ([currentRowKey, rowKey]) => {\n if (!unref(rowKey)) return\n store.setCurrentRowKey(`${currentRowKey}`)\n },\n {\n immediate: true,\n }\n )\n watch(\n () => props.data,\n (data) => {\n table.store.commit('setData', data)\n },\n {\n immediate: true,\n deep: true,\n }\n )\n watchEffect(() => {\n if (props.expandRowKeys) {\n store.setExpandRowKeysAdapter(props.expandRowKeys)\n }\n })\n\n const handleMouseLeave = () => {\n table.store.commit('setHoverRow', null)\n if (table.hoverState) table.hoverState = null\n }\n\n const handleHeaderFooterMousewheel = (event, data) => {\n const { pixelX, pixelY } = data\n if (Math.abs(pixelX) >= Math.abs(pixelY)) {\n table.refs.bodyWrapper.scrollLeft += data.pixelX / 5\n }\n }\n\n const shouldUpdateHeight = computed(() => {\n return (\n props.height ||\n props.maxHeight ||\n store.states.fixedColumns.value.length > 0 ||\n store.states.rightFixedColumns.value.length > 0\n )\n })\n\n const tableBodyStyles = computed(() => {\n return {\n width: layout.bodyWidth.value ? `${layout.bodyWidth.value}px` : '',\n }\n })\n\n const doLayout = () => {\n if (shouldUpdateHeight.value) {\n layout.updateElsHeight()\n }\n layout.updateColumnsWidth()\n requestAnimationFrame(syncPosition)\n }\n onMounted(async () => {\n await nextTick()\n store.updateColumns()\n bindEvents()\n requestAnimationFrame(doLayout)\n\n const el: HTMLElement = table.vnode.el as HTMLElement\n const tableHeader: HTMLElement = table.refs.headerWrapper\n if (props.flexible && el && el.parentElement) {\n // Automatic minimum size of flex-items\n // Ensure that the main axis does not follow the width of the items\n el.parentElement.style.minWidth = '0'\n }\n\n resizeState.value = {\n width: (tableWidth.value = el.offsetWidth),\n height: el.offsetHeight,\n headerHeight:\n props.showHeader && tableHeader ? tableHeader.offsetHeight : null,\n }\n\n // init filters\n store.states.columns.value.forEach((column: TableColumnCtx<T>) => {\n if (column.filteredValue && column.filteredValue.length) {\n table.store.commit('filterChange', {\n column,\n values: column.filteredValue,\n silent: true,\n })\n }\n })\n table.$ready = true\n })\n const setScrollClassByEl = (el: HTMLElement, className: string) => {\n if (!el) return\n const classList = Array.from(el.classList).filter(\n (item) => !item.startsWith('is-scrolling-')\n )\n classList.push(layout.scrollX.value ? className : 'is-scrolling-none')\n el.className = classList.join(' ')\n }\n const setScrollClass = (className: string) => {\n const { tableWrapper } = table.refs\n setScrollClassByEl(tableWrapper, className)\n }\n const hasScrollClass = (className: string) => {\n const { tableWrapper } = table.refs\n return !!(tableWrapper && tableWrapper.classList.contains(className))\n }\n const syncPosition = function () {\n if (!table.refs.scrollBarRef) return\n if (!layout.scrollX.value) {\n const scrollingNoneClass = 'is-scrolling-none'\n if (!hasScrollClass(scrollingNoneClass)) {\n setScrollClass(scrollingNoneClass)\n }\n return\n }\n const scrollContainer = table.refs.scrollBarRef.wrap$\n if (!scrollContainer) return\n const { scrollLeft, offsetWidth, scrollWidth } = scrollContainer\n const { headerWrapper, footerWrapper } = table.refs\n if (headerWrapper) headerWrapper.scrollLeft = scrollLeft\n if (footerWrapper) footerWrapper.scrollLeft = scrollLeft\n const maxScrollLeftPosition = scrollWidth - offsetWidth - 1\n if (scrollLeft >= maxScrollLeftPosition) {\n setScrollClass('is-scrolling-right')\n } else if (scrollLeft === 0) {\n setScrollClass('is-scrolling-left')\n } else {\n setScrollClass('is-scrolling-middle')\n }\n }\n\n const bindEvents = () => {\n if (!table.refs.scrollBarRef) return\n if (table.refs.scrollBarRef.wrap$) {\n useEventListener(table.refs.scrollBarRef.wrap$, 'scroll', syncPosition, {\n passive: true,\n })\n }\n if (props.fit) {\n useResizeObserver(table.vnode.el as HTMLElement, resizeListener)\n } else {\n useEventListener(window, 'resize', resizeListener)\n }\n }\n const resizeListener = () => {\n const el = table.vnode.el\n if (!table.$ready || !el) return\n\n let shouldUpdateLayout = false\n const {\n width: oldWidth,\n height: oldHeight,\n headerHeight: oldHeaderHeight,\n } = resizeState.value\n\n const width = (tableWidth.value = el.offsetWidth)\n if (oldWidth !== width) {\n shouldUpdateLayout = true\n }\n\n const height = el.offsetHeight\n if ((props.height || shouldUpdateHeight.value) && oldHeight !== height) {\n shouldUpdateLayout = true\n }\n\n const tableHeader: HTMLElement =\n props.tableLayout === 'fixed'\n ? table.refs.headerWrapper\n : table.refs.tableHeaderRef?.$el\n if (props.showHeader && tableHeader?.offsetHeight !== oldHeaderHeight) {\n shouldUpdateLayout = true\n }\n\n tableScrollHeight.value = table.refs.tableWrapper?.scrollHeight || 0\n headerScrollHeight.value = tableHeader?.scrollHeight || 0\n footerScrollHeight.value = table.refs.footerWrapper?.scrollHeight || 0\n bodyScrollHeight.value =\n tableScrollHeight.value -\n headerScrollHeight.value -\n footerScrollHeight.value\n\n if (shouldUpdateLayout) {\n resizeState.value = {\n width,\n height,\n headerHeight: (props.showHeader && tableHeader?.offsetHeight) || 0,\n }\n doLayout()\n }\n }\n const tableSize = useSize()\n const bodyWidth = computed(() => {\n const { bodyWidth: bodyWidth_, scrollY, gutterWidth } = layout\n return bodyWidth_.value\n ? `${(bodyWidth_.value as number) - (scrollY.value ? gutterWidth : 0)}px`\n : ''\n })\n\n const tableLayout = computed(() => {\n if (props.maxHeight) return 'fixed'\n return props.tableLayout\n })\n\n const emptyBlockStyle = computed(() => {\n if (props.data && props.data.length) return null\n let height = '100%'\n if (props.height && bodyScrollHeight.value) {\n height = `${bodyScrollHeight.value}px`\n }\n const width = tableWidth.value\n return {\n width: width ? `${width}px` : '',\n height,\n }\n })\n\n const tableInnerStyle = computed(() => {\n if (props.height) {\n return {\n height: !Number.isNaN(Number(props.height))\n ? `${props.height}px`\n : props.height,\n }\n }\n if (props.maxHeight) {\n return {\n maxHeight: !Number.isNaN(Number(props.maxHeight))\n ? `${props.maxHeight}px`\n : props.maxHeight,\n }\n }\n return {}\n })\n\n const scrollbarStyle = computed(() => {\n if (props.height) {\n return {\n height: '100%',\n }\n }\n if (props.maxHeight) {\n if (!Number.isNaN(Number(props.maxHeight))) {\n const headerHeight = table.refs.headerWrapper?.scrollHeight || 0\n const footerHeight = table.refs.footerWrapper?.scrollHeight || 0\n const maxHeight = props.maxHeight\n const reachMaxHeight = tableScrollHeight.value >= Number(maxHeight)\n if (reachMaxHeight) {\n return {\n maxHeight: `${\n tableScrollHeight.value - headerHeight - footerHeight\n }px`,\n }\n }\n } else {\n return {\n maxHeight: `calc(${props.maxHeight} - ${\n headerScrollHeight.value + footerScrollHeight.value\n }px)`,\n }\n }\n }\n\n return {}\n })\n\n /**\n * fix layout\n */\n const handleFixedMousewheel = (event, data) => {\n const bodyWrapper = table.refs.bodyWrapper\n if (Math.abs(data.spinY) > 0) {\n const currentScrollTop = bodyWrapper.scrollTop\n if (data.pixelY < 0 && currentScrollTop !== 0) {\n event.preventDefault()\n }\n if (\n data.pixelY > 0 &&\n bodyWrapper.scrollHeight - bodyWrapper.clientHeight > currentScrollTop\n ) {\n event.preventDefault()\n }\n bodyWrapper.scrollTop += Math.ceil(data.pixelY / 5)\n } else {\n bodyWrapper.scrollLeft += Math.ceil(data.pixelX / 5)\n }\n }\n\n return {\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 }\n}\n\nexport default useStyle\n"],"names":["ref","watchEffect","watch","unref","computed","onMounted","nextTick","useEventListener","useResizeObserver","useSize"],"mappings":"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"}
1
+ {"version":3,"file":"style-helper.js","sources":["../../../../../../../packages/components/table/src/table/style-helper.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n unref,\n watch,\n watchEffect,\n} from 'vue'\nimport { useEventListener, useResizeObserver } from '@vueuse/core'\nimport { useSize } from '@element-plus/hooks'\n\nimport type { Table, TableProps } from './defaults'\nimport type { Store } from '../store'\nimport type TableLayout from '../table-layout'\nimport type { TableColumnCtx } from '../table-column/defaults'\n\nfunction useStyle<T>(\n props: TableProps<T>,\n layout: TableLayout<T>,\n store: Store<T>,\n table: Table<T>\n) {\n const isHidden = ref(false)\n const renderExpanded = ref(null)\n const resizeProxyVisible = ref(false)\n const setDragVisible = (visible: boolean) => {\n resizeProxyVisible.value = visible\n }\n const resizeState = ref<{\n width: null | number\n height: null | number\n headerHeight: null | number\n }>({\n width: null,\n height: null,\n headerHeight: null,\n })\n const isGroup = ref(false)\n const scrollbarViewStyle = {\n display: 'inline-block',\n verticalAlign: 'middle',\n }\n const tableWidth = ref()\n const tableScrollHeight = ref(0)\n const bodyScrollHeight = ref(0)\n const headerScrollHeight = ref(0)\n const footerScrollHeight = ref(0)\n\n watchEffect(() => {\n layout.setHeight(props.height)\n })\n watchEffect(() => {\n layout.setMaxHeight(props.maxHeight)\n })\n watch(\n () => [props.currentRowKey, store.states.rowKey],\n ([currentRowKey, rowKey]) => {\n if (!unref(rowKey)) return\n store.setCurrentRowKey(`${currentRowKey}`)\n },\n {\n immediate: true,\n }\n )\n watch(\n () => props.data,\n (data) => {\n table.store.commit('setData', data)\n },\n {\n immediate: true,\n deep: true,\n }\n )\n watchEffect(() => {\n if (props.expandRowKeys) {\n store.setExpandRowKeysAdapter(props.expandRowKeys)\n }\n })\n\n const handleMouseLeave = () => {\n table.store.commit('setHoverRow', null)\n if (table.hoverState) table.hoverState = null\n }\n\n const handleHeaderFooterMousewheel = (event, data) => {\n const { pixelX, pixelY } = data\n if (Math.abs(pixelX) >= Math.abs(pixelY)) {\n table.refs.bodyWrapper.scrollLeft += data.pixelX / 5\n }\n }\n\n const shouldUpdateHeight = computed(() => {\n return (\n props.height ||\n props.maxHeight ||\n store.states.fixedColumns.value.length > 0 ||\n store.states.rightFixedColumns.value.length > 0\n )\n })\n\n const tableBodyStyles = computed(() => {\n return {\n width: layout.bodyWidth.value ? `${layout.bodyWidth.value}px` : '',\n }\n })\n\n const doLayout = () => {\n if (shouldUpdateHeight.value) {\n layout.updateElsHeight()\n }\n layout.updateColumnsWidth()\n requestAnimationFrame(syncPosition)\n }\n onMounted(async () => {\n await nextTick()\n store.updateColumns()\n bindEvents()\n requestAnimationFrame(doLayout)\n\n const el: HTMLElement = table.vnode.el as HTMLElement\n const tableHeader: HTMLElement = table.refs.headerWrapper\n if (props.flexible && el && el.parentElement) {\n // Automatic minimum size of flex-items\n // Ensure that the main axis does not follow the width of the items\n el.parentElement.style.minWidth = '0'\n }\n\n resizeState.value = {\n width: (tableWidth.value = el.offsetWidth),\n height: el.offsetHeight,\n headerHeight:\n props.showHeader && tableHeader ? tableHeader.offsetHeight : null,\n }\n\n // init filters\n store.states.columns.value.forEach((column: TableColumnCtx<T>) => {\n if (column.filteredValue && column.filteredValue.length) {\n table.store.commit('filterChange', {\n column,\n values: column.filteredValue,\n silent: true,\n })\n }\n })\n table.$ready = true\n })\n const setScrollClassByEl = (el: HTMLElement, className: string) => {\n if (!el) return\n const classList = Array.from(el.classList).filter(\n (item) => !item.startsWith('is-scrolling-')\n )\n classList.push(layout.scrollX.value ? className : 'is-scrolling-none')\n el.className = classList.join(' ')\n }\n const setScrollClass = (className: string) => {\n const { tableWrapper } = table.refs\n setScrollClassByEl(tableWrapper, className)\n }\n const hasScrollClass = (className: string) => {\n const { tableWrapper } = table.refs\n return !!(tableWrapper && tableWrapper.classList.contains(className))\n }\n const syncPosition = function () {\n if (!table.refs.scrollBarRef) return\n if (!layout.scrollX.value) {\n const scrollingNoneClass = 'is-scrolling-none'\n if (!hasScrollClass(scrollingNoneClass)) {\n setScrollClass(scrollingNoneClass)\n }\n return\n }\n const scrollContainer = table.refs.scrollBarRef.wrap$\n if (!scrollContainer) return\n const { scrollLeft, offsetWidth, scrollWidth } = scrollContainer\n const { headerWrapper, footerWrapper } = table.refs\n if (headerWrapper) headerWrapper.scrollLeft = scrollLeft\n if (footerWrapper) footerWrapper.scrollLeft = scrollLeft\n const maxScrollLeftPosition = scrollWidth - offsetWidth - 1\n if (scrollLeft >= maxScrollLeftPosition) {\n setScrollClass('is-scrolling-right')\n } else if (scrollLeft === 0) {\n setScrollClass('is-scrolling-left')\n } else {\n setScrollClass('is-scrolling-middle')\n }\n }\n\n const bindEvents = () => {\n if (!table.refs.scrollBarRef) return\n if (table.refs.scrollBarRef.wrap$) {\n useEventListener(table.refs.scrollBarRef.wrap$, 'scroll', syncPosition, {\n passive: true,\n })\n }\n if (props.fit) {\n useResizeObserver(table.vnode.el as HTMLElement, resizeListener)\n } else {\n useEventListener(window, 'resize', resizeListener)\n }\n\n useResizeObserver(table.refs.bodyWrapper, () => {\n resizeListener()\n table.refs?.scrollBarRef?.update()\n })\n }\n const resizeListener = () => {\n const el = table.vnode.el\n if (!table.$ready || !el) return\n\n let shouldUpdateLayout = false\n const {\n width: oldWidth,\n height: oldHeight,\n headerHeight: oldHeaderHeight,\n } = resizeState.value\n\n const width = (tableWidth.value = el.offsetWidth)\n if (oldWidth !== width) {\n shouldUpdateLayout = true\n }\n\n const height = el.offsetHeight\n if ((props.height || shouldUpdateHeight.value) && oldHeight !== height) {\n shouldUpdateLayout = true\n }\n\n const tableHeader: HTMLElement =\n props.tableLayout === 'fixed'\n ? table.refs.headerWrapper\n : table.refs.tableHeaderRef?.$el\n if (props.showHeader && tableHeader?.offsetHeight !== oldHeaderHeight) {\n shouldUpdateLayout = true\n }\n\n tableScrollHeight.value = table.refs.tableWrapper?.scrollHeight || 0\n headerScrollHeight.value = tableHeader?.scrollHeight || 0\n footerScrollHeight.value = table.refs.footerWrapper?.offsetHeight || 0\n bodyScrollHeight.value =\n tableScrollHeight.value -\n headerScrollHeight.value -\n footerScrollHeight.value\n\n if (shouldUpdateLayout) {\n resizeState.value = {\n width,\n height,\n headerHeight: (props.showHeader && tableHeader?.offsetHeight) || 0,\n }\n doLayout()\n }\n }\n const tableSize = useSize()\n const bodyWidth = computed(() => {\n const { bodyWidth: bodyWidth_, scrollY, gutterWidth } = layout\n return bodyWidth_.value\n ? `${(bodyWidth_.value as number) - (scrollY.value ? gutterWidth : 0)}px`\n : ''\n })\n\n const tableLayout = computed(() => {\n if (props.maxHeight) return 'fixed'\n return props.tableLayout\n })\n\n const emptyBlockStyle = computed(() => {\n if (props.data && props.data.length) return null\n let height = '100%'\n if (props.height && bodyScrollHeight.value) {\n height = `${bodyScrollHeight.value}px`\n }\n const width = tableWidth.value\n return {\n width: width ? `${width}px` : '',\n height,\n }\n })\n\n const tableInnerStyle = computed(() => {\n if (props.height) {\n return {\n height: !Number.isNaN(Number(props.height))\n ? `${props.height}px`\n : props.height,\n }\n }\n if (props.maxHeight) {\n return {\n maxHeight: !Number.isNaN(Number(props.maxHeight))\n ? `${props.maxHeight}px`\n : props.maxHeight,\n }\n }\n return {}\n })\n\n const scrollbarStyle = computed(() => {\n if (props.height) {\n return {\n height: '100%',\n }\n }\n if (props.maxHeight) {\n if (!Number.isNaN(Number(props.maxHeight))) {\n const maxHeight = props.maxHeight\n const reachMaxHeight = tableScrollHeight.value >= Number(maxHeight)\n if (reachMaxHeight) {\n return {\n maxHeight: `${\n tableScrollHeight.value -\n headerScrollHeight.value -\n footerScrollHeight.value\n }px`,\n }\n }\n } else {\n return {\n maxHeight: `calc(${props.maxHeight} - ${\n headerScrollHeight.value + footerScrollHeight.value\n }px)`,\n }\n }\n }\n\n return {}\n })\n\n /**\n * fix layout\n */\n const handleFixedMousewheel = (event, data) => {\n const bodyWrapper = table.refs.bodyWrapper\n if (Math.abs(data.spinY) > 0) {\n const currentScrollTop = bodyWrapper.scrollTop\n if (data.pixelY < 0 && currentScrollTop !== 0) {\n event.preventDefault()\n }\n if (\n data.pixelY > 0 &&\n bodyWrapper.scrollHeight - bodyWrapper.clientHeight > currentScrollTop\n ) {\n event.preventDefault()\n }\n bodyWrapper.scrollTop += Math.ceil(data.pixelY / 5)\n } else {\n bodyWrapper.scrollLeft += Math.ceil(data.pixelX / 5)\n }\n }\n\n return {\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 }\n}\n\nexport default useStyle\n"],"names":["ref","watchEffect","watch","unref","computed","onMounted","nextTick","useEventListener","useResizeObserver","useSize"],"mappings":"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"}
@@ -7,7 +7,7 @@ var upload$1 = require('./src/upload2.js');
7
7
  var upload = require('./src/upload.js');
8
8
  var uploadContent = require('./src/upload-content.js');
9
9
  var uploadList = require('./src/upload-list.js');
10
- var uploadDragger = require('./src/upload-dragger.js');
10
+ var uploadDragger = require('./src/upload-dragger2.js');
11
11
  var install = require('../../utils/vue/install.js');
12
12
 
13
13
  const ElUpload = install.withInstall(upload$1["default"]);
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  require('../../../hooks/index.js');
7
7
  require('../../../utils/index.js');
8
- var uploadDragger = require('./upload-dragger2.js');
8
+ var uploadDragger = require('./upload-dragger.js');
9
9
  var uploadContent = require('./upload-content.js');
10
10
  var upload = require('./upload.js');
11
11
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
@@ -2,20 +2,78 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
7
- var shared = require('@vue/shared');
5
+ var vue = require('vue');
6
+ require('../../../hooks/index.js');
7
+ require('../../../tokens/index.js');
8
+ var error = require('../../../utils/error.js');
9
+ var uploadDragger = require('./upload-dragger2.js');
10
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
+ var upload = require('../../../tokens/upload.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
8
13
 
9
- const uploadDraggerProps = runtime.buildProps({
10
- disabled: {
11
- type: Boolean,
12
- default: false
14
+ const _hoisted_1 = ["onDrop", "onDragover"];
15
+ const __default__ = {
16
+ name: "ElUploadDrag"
17
+ };
18
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
+ ...__default__,
20
+ props: uploadDragger.uploadDraggerProps,
21
+ emits: uploadDragger.uploadDraggerEmits,
22
+ setup(__props, { emit }) {
23
+ const props = __props;
24
+ const COMPONENT_NAME = "ElUploadDrag";
25
+ const uploaderContext = vue.inject(upload.uploadContextKey);
26
+ if (!uploaderContext) {
27
+ error.throwError(COMPONENT_NAME, "usage: <el-upload><el-upload-dragger /></el-upload>");
28
+ }
29
+ const ns = index.useNamespace("upload");
30
+ const dragover = vue.ref(false);
31
+ const onDrop = (e) => {
32
+ if (props.disabled)
33
+ return;
34
+ dragover.value = false;
35
+ const files = Array.from(e.dataTransfer.files);
36
+ const accept = uploaderContext.accept.value;
37
+ if (!accept) {
38
+ emit("file", files);
39
+ return;
40
+ }
41
+ const filesFiltered = files.filter((file) => {
42
+ const { type, name } = file;
43
+ const extension = name.includes(".") ? `.${name.split(".").pop()}` : "";
44
+ const baseType = type.replace(/\/.*$/, "");
45
+ return accept.split(",").map((type2) => type2.trim()).filter((type2) => type2).some((acceptedType) => {
46
+ if (acceptedType.startsWith(".")) {
47
+ return extension === acceptedType;
48
+ }
49
+ if (/\/\*$/.test(acceptedType)) {
50
+ return baseType === acceptedType.replace(/\/\*$/, "");
51
+ }
52
+ if (/^[^/]+\/[^/]+$/.test(acceptedType)) {
53
+ return type === acceptedType;
54
+ }
55
+ return false;
56
+ });
57
+ });
58
+ emit("file", filesFiltered);
59
+ };
60
+ const onDragover = () => {
61
+ if (!props.disabled)
62
+ dragover.value = true;
63
+ };
64
+ return (_ctx, _cache) => {
65
+ return vue.openBlock(), vue.createElementBlock("div", {
66
+ class: vue.normalizeClass([vue.unref(ns).b("dragger"), vue.unref(ns).is("dragover", dragover.value)]),
67
+ onDrop: vue.withModifiers(onDrop, ["prevent"]),
68
+ onDragover: vue.withModifiers(onDragover, ["prevent"]),
69
+ onDragleave: _cache[0] || (_cache[0] = vue.withModifiers(($event) => dragover.value = false, ["prevent"]))
70
+ }, [
71
+ vue.renderSlot(_ctx.$slots, "default")
72
+ ], 42, _hoisted_1);
73
+ };
13
74
  }
14
75
  });
15
- const uploadDraggerEmits = {
16
- file: (file) => shared.isArray(file)
17
- };
76
+ var UploadDragger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-dragger.vue"]]);
18
77
 
19
- exports.uploadDraggerEmits = uploadDraggerEmits;
20
- exports.uploadDraggerProps = uploadDraggerProps;
78
+ exports["default"] = UploadDragger;
21
79
  //# sourceMappingURL=upload-dragger.js.map