@element-plus/nightly 0.0.20241207 → 0.0.20241208
Sign up to get free protection for your applications and to get access to all the features.
- package/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +11 -9
- package/dist/index.full.min.js +15 -15
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +9 -9
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +11 -9
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/carousel/index.mjs +2 -2
- package/es/components/carousel/src/carousel-item.mjs +7 -69
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item2.mjs +69 -7
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.d.ts +1 -0
- package/es/components/dropdown/src/dropdown.mjs +10 -1
- package/es/components/dropdown/src/dropdown.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +3 -1
- package/es/components/dropdown/src/dropdown2.mjs +0 -8
- package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
- package/es/components/index.mjs +1 -1
- package/es/components/pagination/src/components/prev.mjs +17 -35
- package/es/components/pagination/src/components/prev.mjs.map +1 -1
- package/es/components/pagination/src/components/prev2.mjs +35 -17
- package/es/components/pagination/src/components/prev2.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +1 -1
- package/es/components/tooltip-v2/index.mjs +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
- package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
- package/es/components/tooltip-v2/src/trigger.mjs +89 -12
- package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
- package/es/components/tooltip-v2/src/trigger2.mjs +12 -89
- package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
- package/es/components/transfer/src/composables/use-check.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +130 -19
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel2.mjs +19 -130
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs +1 -1
- package/es/index.mjs +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/carousel/index.js +2 -2
- package/lib/components/carousel/src/carousel-item.js +7 -69
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item2.js +69 -7
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.d.ts +1 -0
- package/lib/components/dropdown/src/dropdown.js +10 -1
- package/lib/components/dropdown/src/dropdown.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +3 -1
- package/lib/components/dropdown/src/dropdown2.js +0 -8
- package/lib/components/dropdown/src/dropdown2.js.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/pagination/src/components/prev.js +18 -35
- package/lib/components/pagination/src/components/prev.js.map +1 -1
- package/lib/components/pagination/src/components/prev2.js +35 -18
- package/lib/components/pagination/src/components/prev2.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +1 -1
- package/lib/components/tooltip-v2/index.js +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +1 -1
- package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
- package/lib/components/tooltip-v2/src/trigger.js +89 -12
- package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
- package/lib/components/tooltip-v2/src/trigger2.js +12 -89
- package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
- package/lib/components/transfer/src/composables/use-check.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +130 -21
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel2.js +21 -130
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js +1 -1
- package/lib/index.js +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/theme-chalk/el-input.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/input.scss +1 -0
- package/web-types.json +1 -1
@@ -4,13 +4,22 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
5
5
|
var trigger = require('../../tooltip/src/trigger.js');
|
6
6
|
var runtime = require('../../../utils/vue/props/runtime.js');
|
7
|
+
var aria = require('../../../constants/aria.js');
|
7
8
|
var content = require('../../tooltip/src/content.js');
|
8
9
|
var icon = require('../../../utils/vue/icon.js');
|
9
10
|
var collection = require('../../collection/src/collection.js');
|
10
|
-
var aria = require('../../../constants/aria.js');
|
11
11
|
|
12
12
|
const dropdownProps = runtime.buildProps({
|
13
13
|
trigger: trigger.useTooltipTriggerProps.trigger,
|
14
|
+
triggerKeys: {
|
15
|
+
type: runtime.definePropType(Array),
|
16
|
+
default: () => [
|
17
|
+
aria.EVENT_CODE.enter,
|
18
|
+
aria.EVENT_CODE.numpadEnter,
|
19
|
+
aria.EVENT_CODE.space,
|
20
|
+
aria.EVENT_CODE.down
|
21
|
+
]
|
22
|
+
},
|
14
23
|
effect: {
|
15
24
|
...content.useTooltipContentProps.effect,
|
16
25
|
default: "light"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"dropdown.js","sources":["../../../../../../packages/components/dropdown/src/dropdown.ts"],"sourcesContent":["// @ts-nocheck\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { createCollectionWithScope } from '@element-plus/components/collection'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n} from '@element-plus/components/tooltip'\n\nimport type { Options } from '@popperjs/core'\nimport type { ButtonProps, ButtonType } from '@element-plus/components/button'\nimport type { Placement } from '@element-plus/components/popper'\nimport type { ComponentInternalInstance, ComputedRef } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\nexport interface IElDropdownInstance {\n instance?: ComponentInternalInstance\n dropdownSize?: ComputedRef<string>\n handleClick?: () => void\n commandHandler?: (...arg) => void\n show?: () => void\n hide?: () => void\n trigger?: ComputedRef<string>\n hideOnClick?: ComputedRef<boolean>\n triggerElm?: ComputedRef<Nullable<HTMLButtonElement>>\n}\n\nexport const dropdownProps = buildProps({\n /**\n * @description how to trigger\n */\n trigger: useTooltipTriggerProps.trigger,\n effect: {\n ...useTooltipContentProps.effect,\n default: 'light',\n },\n /**\n * @description menu button type, refer to `Button` Component, only works when `split-button` is true\n */\n type: {\n type: definePropType<ButtonType>(String),\n },\n /**\n * @description placement of pop menu\n */\n placement: {\n type: definePropType<Placement>(String),\n default: 'bottom',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n id: String,\n /**\n * @description menu size, also works on the split button\n */\n size: {\n type: String,\n default: '',\n },\n /**\n * @description whether a button group is displayed\n */\n splitButton: Boolean,\n /**\n * @description whether to hide menu after clicking menu-item\n */\n hideOnClick: {\n type: Boolean,\n default: true,\n },\n loop: {\n type: Boolean,\n default: true,\n },\n /**\n * @description delay time before show a dropdown (only works when trigger is `hover`)\n */\n showTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description delay time before hide a dropdown (only works when trigger is `hover`)\n */\n hideTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description [tabindex](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of Dropdown\n */\n tabindex: {\n type: definePropType<number | string>([Number, String]),\n default: 0,\n },\n /**\n * @description the max height of menu\n */\n maxHeight: {\n type: definePropType<number | string>([Number, String]),\n default: '',\n },\n /**\n * @description custom class name for Dropdown's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether to disable\n */\n disabled: Boolean,\n /**\n * @description the ARIA role attribute for the dropdown menu. Depending on the use case, you may want to change this to 'navigation'\n */\n role: {\n type: String,\n default: 'menu',\n },\n buttonProps: {\n type: definePropType<ButtonProps>(Object),\n },\n /**\n * @description whether the dropdown popup is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n} as const)\n\nexport const dropdownItemProps = buildProps({\n /**\n * @description a command to be dispatched to Dropdown's `command` callback\n */\n command: {\n type: [Object, String, Number],\n default: () => ({}),\n },\n /**\n * @description whether the item is disabled\n */\n disabled: Boolean,\n /**\n * @description whether a divider is displayed\n */\n divided: Boolean,\n textValue: String,\n /**\n * @description custom icon\n */\n icon: {\n type: iconPropType,\n },\n} as const)\n\nexport const dropdownMenuProps = buildProps({\n onKeydown: { type: definePropType<(e: KeyboardEvent) => void>(Function) },\n})\n\nexport const FIRST_KEYS = [\n EVENT_CODE.down,\n EVENT_CODE.pageDown,\n EVENT_CODE.home,\n]\n\nexport const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end]\n\nexport const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS]\n\nconst {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n} = createCollectionWithScope('Dropdown')\n\nexport {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY,\n}\n"],"names":["buildProps","useTooltipTriggerProps","
|
1
|
+
{"version":3,"file":"dropdown.js","sources":["../../../../../../packages/components/dropdown/src/dropdown.ts"],"sourcesContent":["// @ts-nocheck\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { createCollectionWithScope } from '@element-plus/components/collection'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n} from '@element-plus/components/tooltip'\n\nimport type { Options } from '@popperjs/core'\nimport type { ButtonProps, ButtonType } from '@element-plus/components/button'\nimport type { Placement } from '@element-plus/components/popper'\nimport type { ComponentInternalInstance, ComputedRef } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\nexport interface IElDropdownInstance {\n instance?: ComponentInternalInstance\n dropdownSize?: ComputedRef<string>\n handleClick?: () => void\n commandHandler?: (...arg) => void\n show?: () => void\n hide?: () => void\n trigger?: ComputedRef<string>\n hideOnClick?: ComputedRef<boolean>\n triggerElm?: ComputedRef<Nullable<HTMLButtonElement>>\n}\n\nexport const dropdownProps = buildProps({\n /**\n * @description how to trigger\n */\n trigger: useTooltipTriggerProps.trigger,\n triggerKeys: {\n type: definePropType<string[]>(Array),\n default: () => [\n EVENT_CODE.enter,\n EVENT_CODE.numpadEnter,\n EVENT_CODE.space,\n EVENT_CODE.down,\n ],\n },\n effect: {\n ...useTooltipContentProps.effect,\n default: 'light',\n },\n /**\n * @description menu button type, refer to `Button` Component, only works when `split-button` is true\n */\n type: {\n type: definePropType<ButtonType>(String),\n },\n /**\n * @description placement of pop menu\n */\n placement: {\n type: definePropType<Placement>(String),\n default: 'bottom',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n id: String,\n /**\n * @description menu size, also works on the split button\n */\n size: {\n type: String,\n default: '',\n },\n /**\n * @description whether a button group is displayed\n */\n splitButton: Boolean,\n /**\n * @description whether to hide menu after clicking menu-item\n */\n hideOnClick: {\n type: Boolean,\n default: true,\n },\n loop: {\n type: Boolean,\n default: true,\n },\n /**\n * @description delay time before show a dropdown (only works when trigger is `hover`)\n */\n showTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description delay time before hide a dropdown (only works when trigger is `hover`)\n */\n hideTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description [tabindex](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of Dropdown\n */\n tabindex: {\n type: definePropType<number | string>([Number, String]),\n default: 0,\n },\n /**\n * @description the max height of menu\n */\n maxHeight: {\n type: definePropType<number | string>([Number, String]),\n default: '',\n },\n /**\n * @description custom class name for Dropdown's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether to disable\n */\n disabled: Boolean,\n /**\n * @description the ARIA role attribute for the dropdown menu. Depending on the use case, you may want to change this to 'navigation'\n */\n role: {\n type: String,\n default: 'menu',\n },\n buttonProps: {\n type: definePropType<ButtonProps>(Object),\n },\n /**\n * @description whether the dropdown popup is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n} as const)\n\nexport const dropdownItemProps = buildProps({\n /**\n * @description a command to be dispatched to Dropdown's `command` callback\n */\n command: {\n type: [Object, String, Number],\n default: () => ({}),\n },\n /**\n * @description whether the item is disabled\n */\n disabled: Boolean,\n /**\n * @description whether a divider is displayed\n */\n divided: Boolean,\n textValue: String,\n /**\n * @description custom icon\n */\n icon: {\n type: iconPropType,\n },\n} as const)\n\nexport const dropdownMenuProps = buildProps({\n onKeydown: { type: definePropType<(e: KeyboardEvent) => void>(Function) },\n})\n\nexport const FIRST_KEYS = [\n EVENT_CODE.down,\n EVENT_CODE.pageDown,\n EVENT_CODE.home,\n]\n\nexport const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end]\n\nexport const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS]\n\nconst {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n} = createCollectionWithScope('Dropdown')\n\nexport {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY,\n}\n"],"names":["buildProps","useTooltipTriggerProps","definePropType","EVENT_CODE","useTooltipContentProps","iconPropType","createCollectionWithScope"],"mappings":";;;;;;;;;;;AAOY,MAAC,aAAa,GAAGA,kBAAU,CAAC;AACxC,EAAE,OAAO,EAAEC,8BAAsB,CAAC,OAAO;AACzC,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEC,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM;AACnB,MAAMC,eAAU,CAAC,KAAK;AACtB,MAAMA,eAAU,CAAC,WAAW;AAC5B,MAAMA,eAAU,CAAC,KAAK;AACtB,MAAMA,eAAU,CAAC,IAAI;AACrB,KAAK;AACL,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,GAAGC,8BAAsB,CAAC,MAAM;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEF,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE,EAAE,EAAE,MAAM;AACZ,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAEA,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEA,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,UAAU,EAAEE,8BAAsB,CAAC,UAAU;AAC/C,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAGJ,kBAAU,CAAC;AAC5C,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;AAClC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,SAAS,EAAE,MAAM;AACnB,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEK,iBAAY;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAGL,kBAAU,CAAC;AAC5C,EAAE,SAAS,EAAE,EAAE,IAAI,EAAEE,sBAAc,CAAC,QAAQ,CAAC,EAAE;AAC/C,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAEC,eAAU,CAAC,IAAI;AACjB,EAAEA,eAAU,CAAC,QAAQ;AACrB,EAAEA,eAAU,CAAC,IAAI;AACjB,EAAE;AACU,MAAC,SAAS,GAAG,CAACA,eAAU,CAAC,EAAE,EAAEA,eAAU,CAAC,MAAM,EAAEA,eAAU,CAAC,GAAG,EAAE;AAChE,MAAC,eAAe,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,SAAS,EAAE;AACxD,MAAC;AACN,EAAE,YAAY;AACd,EAAE,gBAAgB;AAClB,EAAE,wBAAwB;AAC1B,EAAE,6BAA6B;AAC/B,CAAC,GAAGG,oCAAyB,CAAC,UAAU;;;;;;;;;;;;;"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import type { CSSProperties } from 'vue';
|
2
2
|
declare const _default: import("vue").DefineComponent<{
|
3
3
|
readonly trigger: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType[]) | (() => import("@element-plus/nightly/es/utils").Arrayable<import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType>) | ((new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType[]) | (() => import("@element-plus/nightly/es/utils").Arrayable<import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType>))[], unknown, unknown, "hover", boolean>;
|
4
|
+
readonly triggerKeys: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | ((new (...args: any[]) => string[]) | (() => string[]))[], unknown, unknown, () => string[], boolean>;
|
4
5
|
readonly effect: {
|
5
6
|
readonly default: "light";
|
6
7
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string) | (() => import("@element-plus/nightly/es/element-plus").PopperEffect) | ((new (...args: any[]) => string) | (() => import("@element-plus/nightly/es/element-plus").PopperEffect))[], unknown, unknown>>;
|
@@ -60,7 +61,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
60
61
|
dropdownTriggerKls: import("vue").ComputedRef<string[]>;
|
61
62
|
dropdownSize: import("vue").ComputedRef<"" | "small" | "default" | "large">;
|
62
63
|
triggerId: import("vue").ComputedRef<string>;
|
63
|
-
triggerKeys: string[];
|
64
64
|
currentTabId: import("vue").Ref<string | null>;
|
65
65
|
handleCurrentTabIdChange: (id: string) => void;
|
66
66
|
handlerMainButtonClick: (event: MouseEvent) => void;
|
@@ -6421,6 +6421,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
6421
6421
|
referenceElementRef: import("vue").Ref<any>;
|
6422
6422
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click" | "visible-change" | "command")[], "click" | "visible-change" | "command", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
6423
6423
|
readonly trigger: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType[]) | (() => import("@element-plus/nightly/es/utils").Arrayable<import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType>) | ((new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType[]) | (() => import("@element-plus/nightly/es/utils").Arrayable<import("@element-plus/nightly/es/components/tooltip").TooltipTriggerType>))[], unknown, unknown, "hover", boolean>;
|
6424
|
+
readonly triggerKeys: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | ((new (...args: any[]) => string[]) | (() => string[]))[], unknown, unknown, () => string[], boolean>;
|
6424
6425
|
readonly effect: {
|
6425
6426
|
readonly default: "light";
|
6426
6427
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string) | (() => import("@element-plus/nightly/es/element-plus").PopperEffect) | ((new (...args: any[]) => string) | (() => import("@element-plus/nightly/es/element-plus").PopperEffect))[], unknown, unknown>>;
|
@@ -6471,6 +6472,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
6471
6472
|
readonly loop: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
6472
6473
|
readonly popperOptions: Partial<import("@popperjs/core").Options>;
|
6473
6474
|
readonly popperClass: string;
|
6475
|
+
readonly triggerKeys: string[];
|
6474
6476
|
readonly teleported: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
6475
6477
|
readonly hideOnClick: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
6476
6478
|
readonly showTimeout: number;
|
@@ -19,7 +19,6 @@ var style = require('../../../utils/dom/style.js');
|
|
19
19
|
var lodashUnified = require('lodash-unified');
|
20
20
|
var index$6 = require('../../../hooks/use-id/index.js');
|
21
21
|
var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
|
22
|
-
var aria = require('../../../constants/aria.js');
|
23
22
|
|
24
23
|
const { ButtonGroup: ElButtonGroup } = index.ElButton;
|
25
24
|
const _sfc_main = vue.defineComponent({
|
@@ -48,12 +47,6 @@ const _sfc_main = vue.defineComponent({
|
|
48
47
|
const scrollbar = vue.ref(null);
|
49
48
|
const currentTabId = vue.ref(null);
|
50
49
|
const isUsingKeyboard = vue.ref(false);
|
51
|
-
const triggerKeys = [
|
52
|
-
aria.EVENT_CODE.enter,
|
53
|
-
aria.EVENT_CODE.numpadEnter,
|
54
|
-
aria.EVENT_CODE.space,
|
55
|
-
aria.EVENT_CODE.down
|
56
|
-
];
|
57
50
|
const wrapStyle = vue.computed(() => ({
|
58
51
|
maxHeight: style.addUnit(props.maxHeight)
|
59
52
|
}));
|
@@ -159,7 +152,6 @@ const _sfc_main = vue.defineComponent({
|
|
159
152
|
dropdownTriggerKls,
|
160
153
|
dropdownSize,
|
161
154
|
triggerId,
|
162
|
-
triggerKeys,
|
163
155
|
currentTabId,
|
164
156
|
handleCurrentTabIdChange,
|
165
157
|
handlerMainButtonClick,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"dropdown2.js","sources":["../../../../../../packages/components/dropdown/src/dropdown.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('disabled', disabled)]\">\n <el-tooltip\n ref=\"popperRef\"\n :role=\"role\"\n :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"trigger === 'hover' ? hideTimeout : 0\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :trigger-keys=\"triggerKeys\"\n :trigger-target-el=\"contentRef\"\n :show-after=\"trigger === 'hover' ? showTimeout : 0\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :teleported=\"teleported\"\n pure\n persistent\n @before-show=\"handleBeforeShowTooltip\"\n @show=\"handleShowTooltip\"\n @before-hide=\"handleBeforeHideTooltip\"\n >\n <template #content>\n <el-scrollbar\n ref=\"scrollbar\"\n :wrap-style=\"wrapStyle\"\n tag=\"div\"\n :view-class=\"ns.e('list')\"\n >\n <el-roving-focus-group\n :loop=\"loop\"\n :current-tab-id=\"currentTabId\"\n orientation=\"horizontal\"\n @current-tab-id-change=\"handleCurrentTabIdChange\"\n @entry-focus=\"handleEntryFocus\"\n >\n <el-dropdown-collection>\n <slot name=\"dropdown\" />\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <el-only-child\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n role=\"button\"\n :tabindex=\"tabindex\"\n >\n <slot name=\"default\" />\n </el-only-child>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n v-bind=\"buttonProps\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n v-bind=\"buttonProps\"\n role=\"button\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n :aria-label=\"t('el.dropdown.toggleDropdown')\"\n >\n <el-icon :class=\"ns.e('icon')\"><arrow-down /></el-icon>\n </el-button>\n </el-button-group>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n ref,\n toRef,\n unref,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useFormSize } from '@element-plus/components/form'\nimport { addUnit, ensureArray } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\n ElOnlyChild,\n ElIcon,\n ArrowDown,\n },\n props: dropdownProps,\n emits: ['visible-change', 'click', 'command'],\n setup(props, { emit }) {\n const _instance = getCurrentInstance()\n const ns = useNamespace('dropdown')\n const { t } = useLocale()\n\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const contentRef = ref<HTMLElement | null>(null)\n const scrollbar = ref(null)\n const currentTabId = ref<string | null>(null)\n const isUsingKeyboard = ref(false)\n const triggerKeys = [\n EVENT_CODE.enter,\n EVENT_CODE.numpadEnter,\n EVENT_CODE.space,\n EVENT_CODE.down,\n ]\n\n const wrapStyle = computed<CSSProperties>(() => ({\n maxHeight: addUnit(props.maxHeight),\n }))\n const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)])\n const trigger = computed(() => ensureArray(props.trigger))\n\n const defaultTriggerId = useId().value\n const triggerId = computed<string>(() => props.id || defaultTriggerId)\n\n // The goal of this code is to focus on the tooltip triggering element when it is hovered.\n // This is a temporary fix for where closing the dropdown through pointerleave event focuses on a\n // completely different element. For a permanent solution, remove all calls to any \"element.focus()\"\n // that are triggered through pointer enter/leave events.\n watch(\n [triggeringElementRef, trigger],\n ([triggeringElement, trigger], [prevTriggeringElement]) => {\n if (prevTriggeringElement?.$el?.removeEventListener) {\n prevTriggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (triggeringElement?.$el?.removeEventListener) {\n triggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (\n triggeringElement?.$el?.addEventListener &&\n trigger.includes('hover')\n ) {\n triggeringElement.$el.addEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n },\n { immediate: true }\n )\n\n onBeforeUnmount(() => {\n if (triggeringElementRef.value?.$el?.removeEventListener) {\n triggeringElementRef.value.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n })\n\n function handleClick() {\n handleClose()\n }\n\n function handleClose() {\n popperRef.value?.onClose()\n }\n\n function handleOpen() {\n popperRef.value?.onOpen()\n }\n\n const dropdownSize = useFormSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onAutofocusTriggerEnter() {\n triggeringElementRef.value?.$el?.focus()\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n trigger.value.includes('hover') && contentEl?.focus()\n currentTabId.value = null\n }\n\n function handleCurrentTabIdChange(id: string) {\n currentTabId.value = id\n }\n\n function handleEntryFocus(e: Event) {\n if (!isUsingKeyboard.value) {\n e.preventDefault()\n e.stopImmediatePropagation()\n }\n }\n\n function handleBeforeShowTooltip() {\n emit('visible-change', true)\n }\n\n function handleShowTooltip(event?: Event) {\n if (event?.type === 'keydown') {\n contentRef.value.focus()\n }\n }\n\n function handleBeforeHideTooltip() {\n emit('visible-change', false)\n }\n\n provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\n role: computed(() => props.role),\n triggerId,\n isUsingKeyboard,\n onItemEnter,\n onItemLeave,\n })\n\n provide('elDropdown', {\n instance: _instance,\n dropdownSize,\n handleClick,\n commandHandler,\n trigger: toRef(props, 'trigger'),\n hideOnClick: toRef(props, 'hideOnClick'),\n })\n\n const onFocusAfterTrapped = (e: Event) => {\n e.preventDefault()\n contentRef.value?.focus?.({\n preventScroll: true,\n })\n }\n\n const handlerMainButtonClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n t,\n ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n triggerId,\n triggerKeys,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n handleBeforeShowTooltip,\n handleShowTooltip,\n handleBeforeHideTooltip,\n onFocusAfterTrapped,\n popperRef,\n contentRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElButton","defineComponent","ElScrollbar","ElDropdownCollection","ElTooltip","ElRovingFocusGroup","ElOnlyChild","ElIcon","ArrowDown","dropdownProps","getCurrentInstance","useNamespace","useLocale","ref","EVENT_CODE","computed","addUnit","ensureArray","useId","watch","onBeforeUnmount","useFormSize","unref","provide","DROPDOWN_INJECTION_KEY","toRef","_resolveComponent","_createSlots","_withCtx","_createVNode","_renderSlot","_openBlock","_createBlock","_mergeProps","_normalizeClass","_createCommentVNode","_export_sfc"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"dropdown2.js","sources":["../../../../../../packages/components/dropdown/src/dropdown.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('disabled', disabled)]\">\n <el-tooltip\n ref=\"popperRef\"\n :role=\"role\"\n :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"trigger === 'hover' ? hideTimeout : 0\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :trigger-keys=\"triggerKeys\"\n :trigger-target-el=\"contentRef\"\n :show-after=\"trigger === 'hover' ? showTimeout : 0\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :teleported=\"teleported\"\n pure\n persistent\n @before-show=\"handleBeforeShowTooltip\"\n @show=\"handleShowTooltip\"\n @before-hide=\"handleBeforeHideTooltip\"\n >\n <template #content>\n <el-scrollbar\n ref=\"scrollbar\"\n :wrap-style=\"wrapStyle\"\n tag=\"div\"\n :view-class=\"ns.e('list')\"\n >\n <el-roving-focus-group\n :loop=\"loop\"\n :current-tab-id=\"currentTabId\"\n orientation=\"horizontal\"\n @current-tab-id-change=\"handleCurrentTabIdChange\"\n @entry-focus=\"handleEntryFocus\"\n >\n <el-dropdown-collection>\n <slot name=\"dropdown\" />\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <el-only-child\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n role=\"button\"\n :tabindex=\"tabindex\"\n >\n <slot name=\"default\" />\n </el-only-child>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n v-bind=\"buttonProps\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n v-bind=\"buttonProps\"\n role=\"button\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n :aria-label=\"t('el.dropdown.toggleDropdown')\"\n >\n <el-icon :class=\"ns.e('icon')\"><arrow-down /></el-icon>\n </el-button>\n </el-button-group>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n ref,\n toRef,\n unref,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useFormSize } from '@element-plus/components/form'\nimport { addUnit, ensureArray } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\n ElOnlyChild,\n ElIcon,\n ArrowDown,\n },\n props: dropdownProps,\n emits: ['visible-change', 'click', 'command'],\n setup(props, { emit }) {\n const _instance = getCurrentInstance()\n const ns = useNamespace('dropdown')\n const { t } = useLocale()\n\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const contentRef = ref<HTMLElement | null>(null)\n const scrollbar = ref(null)\n const currentTabId = ref<string | null>(null)\n const isUsingKeyboard = ref(false)\n\n const wrapStyle = computed<CSSProperties>(() => ({\n maxHeight: addUnit(props.maxHeight),\n }))\n const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)])\n const trigger = computed(() => ensureArray(props.trigger))\n\n const defaultTriggerId = useId().value\n const triggerId = computed<string>(() => props.id || defaultTriggerId)\n\n // The goal of this code is to focus on the tooltip triggering element when it is hovered.\n // This is a temporary fix for where closing the dropdown through pointerleave event focuses on a\n // completely different element. For a permanent solution, remove all calls to any \"element.focus()\"\n // that are triggered through pointer enter/leave events.\n watch(\n [triggeringElementRef, trigger],\n ([triggeringElement, trigger], [prevTriggeringElement]) => {\n if (prevTriggeringElement?.$el?.removeEventListener) {\n prevTriggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (triggeringElement?.$el?.removeEventListener) {\n triggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (\n triggeringElement?.$el?.addEventListener &&\n trigger.includes('hover')\n ) {\n triggeringElement.$el.addEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n },\n { immediate: true }\n )\n\n onBeforeUnmount(() => {\n if (triggeringElementRef.value?.$el?.removeEventListener) {\n triggeringElementRef.value.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n })\n\n function handleClick() {\n handleClose()\n }\n\n function handleClose() {\n popperRef.value?.onClose()\n }\n\n function handleOpen() {\n popperRef.value?.onOpen()\n }\n\n const dropdownSize = useFormSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onAutofocusTriggerEnter() {\n triggeringElementRef.value?.$el?.focus()\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n trigger.value.includes('hover') && contentEl?.focus()\n currentTabId.value = null\n }\n\n function handleCurrentTabIdChange(id: string) {\n currentTabId.value = id\n }\n\n function handleEntryFocus(e: Event) {\n if (!isUsingKeyboard.value) {\n e.preventDefault()\n e.stopImmediatePropagation()\n }\n }\n\n function handleBeforeShowTooltip() {\n emit('visible-change', true)\n }\n\n function handleShowTooltip(event?: Event) {\n if (event?.type === 'keydown') {\n contentRef.value.focus()\n }\n }\n\n function handleBeforeHideTooltip() {\n emit('visible-change', false)\n }\n\n provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\n role: computed(() => props.role),\n triggerId,\n isUsingKeyboard,\n onItemEnter,\n onItemLeave,\n })\n\n provide('elDropdown', {\n instance: _instance,\n dropdownSize,\n handleClick,\n commandHandler,\n trigger: toRef(props, 'trigger'),\n hideOnClick: toRef(props, 'hideOnClick'),\n })\n\n const onFocusAfterTrapped = (e: Event) => {\n e.preventDefault()\n contentRef.value?.focus?.({\n preventScroll: true,\n })\n }\n\n const handlerMainButtonClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n t,\n ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n triggerId,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n handleBeforeShowTooltip,\n handleShowTooltip,\n handleBeforeHideTooltip,\n onFocusAfterTrapped,\n popperRef,\n contentRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElButton","defineComponent","ElScrollbar","ElDropdownCollection","ElTooltip","ElRovingFocusGroup","ElOnlyChild","ElIcon","ArrowDown","dropdownProps","getCurrentInstance","useNamespace","useLocale","ref","computed","addUnit","ensureArray","useId","watch","onBeforeUnmount","useFormSize","unref","provide","DROPDOWN_INJECTION_KEY","toRef","_resolveComponent","_createSlots","_withCtx","_createVNode","_renderSlot","_openBlock","_createBlock","_mergeProps","_normalizeClass","_createCommentVNode","_export_sfc"],"mappings":"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"}
|
package/lib/components/index.js
CHANGED
@@ -100,7 +100,7 @@ var constants$1 = require('./button/src/constants.js');
|
|
100
100
|
var calendar = require('./calendar/src/calendar.js');
|
101
101
|
var card = require('./card/src/card.js');
|
102
102
|
var carousel = require('./carousel/src/carousel.js');
|
103
|
-
var carouselItem = require('./carousel/src/carousel-
|
103
|
+
var carouselItem = require('./carousel/src/carousel-item.js');
|
104
104
|
var constants$2 = require('./carousel/src/constants.js');
|
105
105
|
var cascader = require('./cascader/src/cascader.js');
|
106
106
|
var types = require('./cascader-panel/src/types.js');
|
@@ -2,43 +2,26 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var
|
6
|
-
var
|
7
|
-
var prev = require('./prev2.js');
|
8
|
-
var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
|
9
|
-
var index = require('../../../../hooks/use-locale/index.js');
|
5
|
+
var runtime = require('../../../../utils/vue/props/runtime.js');
|
6
|
+
var icon = require('../../../../utils/vue/icon.js');
|
10
7
|
|
11
|
-
const
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
return (_ctx, _cache) => {
|
23
|
-
return vue.openBlock(), vue.createElementBlock("button", {
|
24
|
-
type: "button",
|
25
|
-
class: "btn-prev",
|
26
|
-
disabled: vue.unref(internalDisabled),
|
27
|
-
"aria-label": _ctx.prevText || vue.unref(t)("el.pagination.prev"),
|
28
|
-
"aria-disabled": vue.unref(internalDisabled),
|
29
|
-
onClick: ($event) => _ctx.$emit("click", $event)
|
30
|
-
}, [
|
31
|
-
_ctx.prevText ? (vue.openBlock(), vue.createElementBlock("span", { key: 0 }, vue.toDisplayString(_ctx.prevText), 1)) : (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 1 }, {
|
32
|
-
default: vue.withCtx(() => [
|
33
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.prevIcon)))
|
34
|
-
]),
|
35
|
-
_: 1
|
36
|
-
}))
|
37
|
-
], 8, ["disabled", "aria-label", "aria-disabled", "onClick"]);
|
38
|
-
};
|
8
|
+
const paginationPrevProps = runtime.buildProps({
|
9
|
+
disabled: Boolean,
|
10
|
+
currentPage: {
|
11
|
+
type: Number,
|
12
|
+
default: 1
|
13
|
+
},
|
14
|
+
prevText: {
|
15
|
+
type: String
|
16
|
+
},
|
17
|
+
prevIcon: {
|
18
|
+
type: icon.iconPropType
|
39
19
|
}
|
40
20
|
});
|
41
|
-
|
21
|
+
const paginationPrevEmits = {
|
22
|
+
click: (evt) => evt instanceof MouseEvent
|
23
|
+
};
|
42
24
|
|
43
|
-
exports
|
25
|
+
exports.paginationPrevEmits = paginationPrevEmits;
|
26
|
+
exports.paginationPrevProps = paginationPrevProps;
|
44
27
|
//# sourceMappingURL=prev.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prev.js","sources":["../../../../../../../packages/components/pagination/src/components/prev.
|
1
|
+
{"version":3,"file":"prev.js","sources":["../../../../../../../packages/components/pagination/src/components/prev.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type Prev from './prev.vue'\n\nexport const paginationPrevProps = buildProps({\n disabled: Boolean,\n currentPage: {\n type: Number,\n default: 1,\n },\n prevText: {\n type: String,\n },\n prevIcon: {\n type: iconPropType,\n },\n} as const)\n\nexport const paginationPrevEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\n\nexport type PaginationPrevProps = ExtractPropTypes<typeof paginationPrevProps>\n\nexport type PrevInstance = InstanceType<typeof Prev>\n"],"names":["buildProps","iconPropType"],"mappings":";;;;;;;AACY,MAAC,mBAAmB,GAAGA,kBAAU,CAAC;AAC9C,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,mBAAmB,GAAG;AACnC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;;"}
|
@@ -2,26 +2,43 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var
|
6
|
-
var
|
5
|
+
var vue = require('vue');
|
6
|
+
var index$1 = require('../../../icon/index.js');
|
7
|
+
var prev = require('./prev.js');
|
8
|
+
var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
|
9
|
+
var index = require('../../../../hooks/use-locale/index.js');
|
7
10
|
|
8
|
-
const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
11
|
+
const __default__ = vue.defineComponent({
|
12
|
+
name: "ElPaginationPrev"
|
13
|
+
});
|
14
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
15
|
+
...__default__,
|
16
|
+
props: prev.paginationPrevProps,
|
17
|
+
emits: prev.paginationPrevEmits,
|
18
|
+
setup(__props) {
|
19
|
+
const props = __props;
|
20
|
+
const { t } = index.useLocale();
|
21
|
+
const internalDisabled = vue.computed(() => props.disabled || props.currentPage <= 1);
|
22
|
+
return (_ctx, _cache) => {
|
23
|
+
return vue.openBlock(), vue.createElementBlock("button", {
|
24
|
+
type: "button",
|
25
|
+
class: "btn-prev",
|
26
|
+
disabled: vue.unref(internalDisabled),
|
27
|
+
"aria-label": _ctx.prevText || vue.unref(t)("el.pagination.prev"),
|
28
|
+
"aria-disabled": vue.unref(internalDisabled),
|
29
|
+
onClick: ($event) => _ctx.$emit("click", $event)
|
30
|
+
}, [
|
31
|
+
_ctx.prevText ? (vue.openBlock(), vue.createElementBlock("span", { key: 0 }, vue.toDisplayString(_ctx.prevText), 1)) : (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 1 }, {
|
32
|
+
default: vue.withCtx(() => [
|
33
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.prevIcon)))
|
34
|
+
]),
|
35
|
+
_: 1
|
36
|
+
}))
|
37
|
+
], 8, ["disabled", "aria-label", "aria-disabled", "onClick"]);
|
38
|
+
};
|
19
39
|
}
|
20
40
|
});
|
21
|
-
|
22
|
-
click: (evt) => evt instanceof MouseEvent
|
23
|
-
};
|
41
|
+
var Prev = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "prev.vue"]]);
|
24
42
|
|
25
|
-
exports
|
26
|
-
exports.paginationPrevProps = paginationPrevProps;
|
43
|
+
exports["default"] = Prev;
|
27
44
|
//# sourceMappingURL=prev2.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prev2.js","sources":["../../../../../../../packages/components/pagination/src/components/prev.
|
1
|
+
{"version":3,"file":"prev2.js","sources":["../../../../../../../packages/components/pagination/src/components/prev.vue"],"sourcesContent":["<template>\n <button\n type=\"button\"\n class=\"btn-prev\"\n :disabled=\"internalDisabled\"\n :aria-label=\"prevText || t('el.pagination.prev')\"\n :aria-disabled=\"internalDisabled\"\n @click=\"$emit('click', $event)\"\n >\n <span v-if=\"prevText\">{{ prevText }}</span>\n <el-icon v-else>\n <component :is=\"prevIcon\" />\n </el-icon>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useLocale } from '@element-plus/hooks'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { paginationPrevEmits, paginationPrevProps } from './prev'\n\ndefineOptions({\n name: 'ElPaginationPrev',\n})\n\nconst props = defineProps(paginationPrevProps)\ndefineEmits(paginationPrevEmits)\n\nconst { t } = useLocale()\n\nconst internalDisabled = computed(\n () => props.disabled || props.currentPage <= 1\n)\n</script>\n"],"names":["useLocale","computed","_openBlock","_createElementBlock"],"mappings":";;;;;;;;;;uCAsBc,CAAA;AAAA,EACZ,IAAM,EAAA,kBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAE,CAAE,EAAA,GAAIA,eAAU,EAAA,CAAA;AAExB,IAAA,MAAM,gBAAmB,GAAAC,YAAA,CAAA,MAAA,KAAA,CAAA,QAAA,IAAA,KAAA,CAAA,WAAA,IAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OACjB,CAAA,IAAA,EAAM,MAAY,KAAA;AAAqB,MAC/C,OAAAC,aAAA,EAAA,EAAAC,sBAAA,CAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
var vue = require('vue');
|
6
6
|
var iconsVue = require('@element-plus/icons-vue');
|
7
7
|
var constants = require('./constants.js');
|
8
|
-
var prev = require('./components/
|
8
|
+
var prev = require('./components/prev2.js');
|
9
9
|
var next = require('./components/next2.js');
|
10
10
|
var sizes = require('./components/sizes2.js');
|
11
11
|
var jumper = require('./components/jumper2.js');
|
@@ -7,7 +7,7 @@ var arrow = require('./src/arrow.js');
|
|
7
7
|
var content = require('./src/content.js');
|
8
8
|
var root = require('./src/root.js');
|
9
9
|
var tooltip = require('./src/tooltip.js');
|
10
|
-
var trigger = require('./src/
|
10
|
+
var trigger = require('./src/trigger2.js');
|
11
11
|
var constants = require('./src/constants.js');
|
12
12
|
var install = require('../../utils/vue/install.js');
|
13
13
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var root = require('./root.js');
|
6
|
-
var trigger = require('./
|
6
|
+
var trigger = require('./trigger2.js');
|
7
7
|
var arrow = require('./arrow.js');
|
8
8
|
var content = require('./content.js');
|
9
9
|
var runtime = require('../../../utils/vue/props/runtime.js');
|
@@ -9,11 +9,11 @@ var arrow = require('./arrow.js');
|
|
9
9
|
var content = require('./content.js');
|
10
10
|
var root = require('./root.js');
|
11
11
|
var tooltip = require('./tooltip.js');
|
12
|
-
var trigger = require('./
|
12
|
+
var trigger = require('./trigger2.js');
|
13
13
|
var root$1 = require('./root2.js');
|
14
14
|
var arrow$1 = require('./arrow2.js');
|
15
15
|
var content$1 = require('./content2.js');
|
16
|
-
var trigger$1 = require('./
|
16
|
+
var trigger$1 = require('./trigger.js');
|
17
17
|
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
|
18
18
|
|
19
19
|
const __default__ = vue.defineComponent({
|
@@ -2,19 +2,96 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var
|
5
|
+
var vue = require('vue');
|
6
|
+
var constants = require('./constants.js');
|
7
|
+
var forwardRef = require('./forward-ref.js');
|
8
|
+
var trigger = require('./trigger2.js');
|
9
|
+
var common = require('./common.js');
|
10
|
+
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
|
11
|
+
var event = require('../../../utils/dom/event.js');
|
6
12
|
|
7
|
-
const
|
8
|
-
|
9
|
-
};
|
10
|
-
const tooltipV2TriggerProps = runtime.buildProps({
|
11
|
-
onBlur: EventHandler,
|
12
|
-
onClick: EventHandler,
|
13
|
-
onFocus: EventHandler,
|
14
|
-
onMouseDown: EventHandler,
|
15
|
-
onMouseEnter: EventHandler,
|
16
|
-
onMouseLeave: EventHandler
|
13
|
+
const __default__ = vue.defineComponent({
|
14
|
+
name: "ElTooltipV2Trigger"
|
17
15
|
});
|
16
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
17
|
+
...__default__,
|
18
|
+
props: {
|
19
|
+
...common.tooltipV2CommonProps,
|
20
|
+
...trigger.tooltipV2TriggerProps
|
21
|
+
},
|
22
|
+
setup(__props) {
|
23
|
+
const props = __props;
|
24
|
+
const { onClose, onOpen, onDelayOpen, triggerRef, contentId } = vue.inject(constants.tooltipV2RootKey);
|
25
|
+
let isMousedown = false;
|
26
|
+
const setTriggerRef = (el) => {
|
27
|
+
triggerRef.value = el;
|
28
|
+
};
|
29
|
+
const onMouseup = () => {
|
30
|
+
isMousedown = false;
|
31
|
+
};
|
32
|
+
const onMouseenter = event.composeEventHandlers(props.onMouseEnter, onDelayOpen);
|
33
|
+
const onMouseleave = event.composeEventHandlers(props.onMouseLeave, onClose);
|
34
|
+
const onMousedown = event.composeEventHandlers(props.onMouseDown, () => {
|
35
|
+
onClose();
|
36
|
+
isMousedown = true;
|
37
|
+
document.addEventListener("mouseup", onMouseup, { once: true });
|
38
|
+
});
|
39
|
+
const onFocus = event.composeEventHandlers(props.onFocus, () => {
|
40
|
+
if (!isMousedown)
|
41
|
+
onOpen();
|
42
|
+
});
|
43
|
+
const onBlur = event.composeEventHandlers(props.onBlur, onClose);
|
44
|
+
const onClick = event.composeEventHandlers(props.onClick, (e) => {
|
45
|
+
if (e.detail === 0)
|
46
|
+
onClose();
|
47
|
+
});
|
48
|
+
const events = {
|
49
|
+
blur: onBlur,
|
50
|
+
click: onClick,
|
51
|
+
focus: onFocus,
|
52
|
+
mousedown: onMousedown,
|
53
|
+
mouseenter: onMouseenter,
|
54
|
+
mouseleave: onMouseleave
|
55
|
+
};
|
56
|
+
const setEvents = (el, events2, type) => {
|
57
|
+
if (el) {
|
58
|
+
Object.entries(events2).forEach(([name, handler]) => {
|
59
|
+
el[type](name, handler);
|
60
|
+
});
|
61
|
+
}
|
62
|
+
};
|
63
|
+
vue.watch(triggerRef, (triggerEl, previousTriggerEl) => {
|
64
|
+
setEvents(triggerEl, events, "addEventListener");
|
65
|
+
setEvents(previousTriggerEl, events, "removeEventListener");
|
66
|
+
if (triggerEl) {
|
67
|
+
triggerEl.setAttribute("aria-describedby", contentId.value);
|
68
|
+
}
|
69
|
+
});
|
70
|
+
vue.onBeforeUnmount(() => {
|
71
|
+
setEvents(triggerRef.value, events, "removeEventListener");
|
72
|
+
document.removeEventListener("mouseup", onMouseup);
|
73
|
+
});
|
74
|
+
return (_ctx, _cache) => {
|
75
|
+
return _ctx.nowrap ? (vue.openBlock(), vue.createBlock(vue.unref(forwardRef["default"]), {
|
76
|
+
key: 0,
|
77
|
+
"set-ref": setTriggerRef,
|
78
|
+
"only-child": ""
|
79
|
+
}, {
|
80
|
+
default: vue.withCtx(() => [
|
81
|
+
vue.renderSlot(_ctx.$slots, "default")
|
82
|
+
]),
|
83
|
+
_: 3
|
84
|
+
})) : (vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({
|
85
|
+
key: 1,
|
86
|
+
ref_key: "triggerRef",
|
87
|
+
ref: triggerRef
|
88
|
+
}, _ctx.$attrs), [
|
89
|
+
vue.renderSlot(_ctx.$slots, "default")
|
90
|
+
], 16));
|
91
|
+
};
|
92
|
+
}
|
93
|
+
});
|
94
|
+
var TooltipV2Trigger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "trigger.vue"]]);
|
18
95
|
|
19
|
-
exports
|
96
|
+
exports["default"] = TooltipV2Trigger;
|
20
97
|
//# sourceMappingURL=trigger.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/tooltip-v2/src/trigger.
|
1
|
+
{"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/tooltip-v2/src/trigger.vue"],"sourcesContent":["<template>\n <forward-ref v-if=\"nowrap\" :set-ref=\"setTriggerRef\" only-child>\n <slot />\n </forward-ref>\n <button v-else ref=\"triggerRef\" v-bind=\"$attrs\">\n <slot />\n </button>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, onBeforeUnmount, watch } from 'vue'\nimport { composeEventHandlers } from '@element-plus/utils'\nimport { tooltipV2RootKey } from './constants'\nimport ForwardRef from './forward-ref'\nimport { tooltipV2TriggerProps } from './trigger'\nimport { tooltipV2CommonProps } from './common'\n\ndefineOptions({\n name: 'ElTooltipV2Trigger',\n})\n\nconst props = defineProps({\n ...tooltipV2CommonProps,\n ...tooltipV2TriggerProps,\n})\n\n/**\n * onOpen opens the tooltip instantly, onTrigger acts a lil bit differently,\n * it will check if delayDuration is set to greater than 0 and based on that result,\n * if true, it opens the tooltip after delayDuration, otherwise it opens it instantly.\n */\nconst { onClose, onOpen, onDelayOpen, triggerRef, contentId } =\n inject(tooltipV2RootKey)!\n\nlet isMousedown = false\n\nconst setTriggerRef = (el: HTMLElement | null) => {\n triggerRef.value = el\n}\n\nconst onMouseup = () => {\n isMousedown = false\n}\n\nconst onMouseenter = composeEventHandlers(props.onMouseEnter, onDelayOpen)\n\nconst onMouseleave = composeEventHandlers(props.onMouseLeave, onClose)\n\nconst onMousedown = composeEventHandlers(props.onMouseDown, () => {\n onClose()\n isMousedown = true\n document.addEventListener('mouseup', onMouseup, { once: true })\n})\n\nconst onFocus = composeEventHandlers(props.onFocus, () => {\n if (!isMousedown) onOpen()\n})\n\nconst onBlur = composeEventHandlers(props.onBlur, onClose)\n\nconst onClick = composeEventHandlers(props.onClick, (e) => {\n if ((e as MouseEvent).detail === 0) onClose()\n})\n\nconst events = {\n blur: onBlur,\n click: onClick,\n focus: onFocus,\n mousedown: onMousedown,\n mouseenter: onMouseenter,\n mouseleave: onMouseleave,\n}\n\nconst setEvents = <T extends (e: Event) => void>(\n el: HTMLElement | null | undefined,\n events: Record<string, T>,\n type: 'addEventListener' | 'removeEventListener'\n) => {\n if (el) {\n Object.entries(events).forEach(([name, handler]) => {\n el[type](name, handler)\n })\n }\n}\n\nwatch(triggerRef, (triggerEl, previousTriggerEl) => {\n setEvents(triggerEl, events, 'addEventListener')\n setEvents(previousTriggerEl, events, 'removeEventListener')\n\n if (triggerEl) {\n triggerEl.setAttribute('aria-describedby', contentId.value)\n }\n})\n\nonBeforeUnmount(() => {\n setEvents(triggerRef.value, events, 'removeEventListener')\n document.removeEventListener('mouseup', onMouseup)\n})\n</script>\n"],"names":["inject","tooltipV2RootKey","composeEventHandlers","events","watch","onBeforeUnmount"],"mappings":";;;;;;;;;;;;uCAiBc,CAAA;AAAA,EACZ,IAAM,EAAA,oBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;AAYA,IAAM,MAAA,EAAE,SAAS,MAAQ,EAAA,WAAA,EAAa,YAAY,SAAU,EAAA,GAC1DA,WAAOC,0BAAgB,CAAA,CAAA;AAEzB,IAAA,IAAI,WAAc,GAAA,KAAA,CAAA;AAElB,IAAM,MAAA,aAAA,GAAgB,CAAC,EAA2B,KAAA;AAChD,MAAA,UAAA,CAAW,KAAQ,GAAA,EAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAA,MAAM,YAAY,MAAM;AACtB,MAAc,WAAA,GAAA,KAAA,CAAA;AAAA,KAChB,CAAA;AAEA,IAAA,MAAM,YAAe,GAAAC,0BAAA,CAAqB,KAAM,CAAA,YAAA,EAAc,WAAW,CAAA,CAAA;AAEzE,IAAA,MAAM,YAAe,GAAAA,0BAAA,CAAqB,KAAM,CAAA,YAAA,EAAc,OAAO,CAAA,CAAA;AAErE,IAAA,MAAM,WAAc,GAAAA,0BAAA,CAAqB,KAAM,CAAA,WAAA,EAAa,MAAM;AAChE,MAAQ,OAAA,EAAA,CAAA;AACR,MAAc,WAAA,GAAA,IAAA,CAAA;AACd,MAAA,QAAA,CAAS,iBAAiB,SAAW,EAAA,SAAA,EAAW,EAAE,IAAA,EAAM,MAAM,CAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAA,MAAM,OAAU,GAAAA,0BAAA,CAAqB,KAAM,CAAA,OAAA,EAAS,MAAM;AACxD,MAAI,IAAA,CAAC;AAAoB,QAC1B,MAAA,EAAA,CAAA;AAED,KAAA,CAAA,CAAA;AAEA,IAAA,MAAM,MAAU,GAAAA,0BAAA,CAAA,KAA2B,CAAA,MAAA,EAAA,OAAgB,CAAA,CAAA;AACzD,IAAK,MAAA,OAA4B,GAAAA,0BAAW,CAAA,KAAA,CAAA,OAAA,EAAA,CAAA,CAAA,KAAA;AAAA,MAC7C,IAAA,CAAA,CAAA,MAAA,KAAA,CAAA;AAED,QAAA,OAAe,EAAA,CAAA;AAAA,KAAA,CACb,CAAM;AAAA,IAAA,MACC,MAAA,GAAA;AAAA,MACP,IAAO,EAAA,MAAA;AAAA,MACP,KAAW,EAAA,OAAA;AAAA,MACX,KAAY,EAAA,OAAA;AAAA,MACZ,SAAY,EAAA,WAAA;AAAA,MACd,UAAA,EAAA,YAAA;AAEA,MAAA,UAAkB,EAAA,YAEhBC;AAGA,KAAA,CAAA;AACE,IAAO,MAAA,SAAA,GAAA,CAAQA,WAAQ,EAAA,IAAQ,KAAE;AAC/B,MAAG,IAAA,EAAA,EAAA;AAAmB,QACxB,MAAC,CAAA,OAAA,CAAA,OAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,IAAA,EAAA,OAAA,CAAA,KAAA;AAAA,UACH,EAAA,CAAA,IAAA,CAAA,CAAA,IAAA,EAAA,OAAA,CAAA,CAAA;AAAA,SACF,CAAA,CAAA;AAEA,OAAM;AACJ,KAAU,CAAA;AACV,IAAUC,SAAA,CAAA,UAAA,EAAA,CAAA,SAAA,EAAA,iBAAgD,KAAA;AAE1D,MAAA,SAAe,CAAA,SAAA,EAAA,MAAA,EAAA,kBAAA,CAAA,CAAA;AACb,MAAU,SAAA,CAAA,iBAAiC,EAAA,MAAA,EAAA,qBAAe,CAAA,CAAA;AAAA,MAC5D,IAAA,SAAA,EAAA;AAAA,QACD,SAAA,CAAA,YAAA,CAAA,kBAAA,EAAA,SAAA,CAAA,KAAA,CAAA,CAAA;AAED,OAAA;AACE,KAAU,CAAA,CAAA;AACV,IAASC,mBAAA,CAAA,MAAA;AAAwC,MAClD,SAAA,CAAA,UAAA,CAAA,KAAA,EAAA,MAAA,EAAA,qBAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|