el-plus 0.0.57 → 0.0.59
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.
- package/CHANGELOG.md +12 -0
- package/dist/index.full.js +93 -279
- package/dist/index.full.min.js +2 -1
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +2 -1
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +93 -279
- package/es/components/buttons/index.d.ts +6 -6
- package/es/components/buttons/src/buttons-vue.d.ts +2 -2
- package/es/components/date-picker-range/index.d.ts +3 -3
- package/es/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
- package/es/components/input/index.d.ts +3 -3
- package/es/components/input/src/input.vue.d.ts +1 -1
- package/es/components/search-list-page/index.d.ts +30 -30
- package/es/components/search-list-page/src/search-list-page.vue.d.ts +10 -10
- package/es/components/search-list-page/src/use-search-list-page.d.ts +10 -10
- package/es/components/table/index.d.ts +6 -6
- package/es/components/table/src/table.vue.d.ts +2 -2
- package/es/components/table/src/use-table.d.ts +2 -2
- package/es/components/uni-vue/src/use-uni-vue.mjs +66 -20
- package/es/components/uni-vue/src/use-uni-vue.mjs.map +1 -1
- package/es/hooks/use-locale.mjs +20 -50
- package/es/hooks/use-locale.mjs.map +1 -1
- package/es/hooks/use-navigation.mjs +6 -6
- package/es/hooks/use-navigation.mjs.map +1 -1
- package/es/package.json.mjs +1 -1
- package/es/types/global.d.ts +1 -0
- package/lib/components/buttons/index.d.ts +6 -6
- package/lib/components/buttons/src/buttons-vue.d.ts +2 -2
- package/lib/components/date-picker-range/index.d.ts +3 -3
- package/lib/components/date-picker-range/src/date-picker-range.vue.d.ts +1 -1
- package/lib/components/input/index.d.ts +3 -3
- package/lib/components/input/src/input.vue.d.ts +1 -1
- package/lib/components/search-list-page/index.d.ts +30 -30
- package/lib/components/search-list-page/src/search-list-page.vue.d.ts +10 -10
- package/lib/components/search-list-page/src/use-search-list-page.d.ts +10 -10
- package/lib/components/table/index.d.ts +6 -6
- package/lib/components/table/src/table.vue.d.ts +2 -2
- package/lib/components/table/src/use-table.d.ts +2 -2
- package/lib/components/uni-vue/src/use-uni-vue.js +65 -19
- package/lib/components/uni-vue/src/use-uni-vue.js.map +1 -1
- package/lib/hooks/use-locale.js +20 -50
- package/lib/hooks/use-locale.js.map +1 -1
- package/lib/hooks/use-navigation.js +6 -6
- package/lib/hooks/use-navigation.js.map +1 -1
- package/lib/package.json.js +1 -1
- package/lib/types/global.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useTemplateRef, ref, useAttrs, onMounted } from 'vue';
|
|
1
|
+
import { useTemplateRef, ref, useAttrs, watch, onMounted } from 'vue';
|
|
2
2
|
import { http } from '../../../utils/http/index.mjs';
|
|
3
3
|
import Vue2 from 'vue2';
|
|
4
4
|
import VueRouter3 from 'vue-router3';
|
|
@@ -38,8 +38,12 @@ const useUniVue = (props) => {
|
|
|
38
38
|
Object.keys(attrs).forEach((key) => {
|
|
39
39
|
if (key.startsWith("on")) {
|
|
40
40
|
let eventName = key.slice(2);
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
if (eventName.startsWith("Update:")) {
|
|
42
|
+
eventName = "update:" + eventName.slice(7);
|
|
43
|
+
} else {
|
|
44
|
+
eventName = eventName.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
45
|
+
eventName = eventName.slice(1);
|
|
46
|
+
}
|
|
43
47
|
events[eventName] = attrs[key];
|
|
44
48
|
} else {
|
|
45
49
|
_props[key] = attrs[key];
|
|
@@ -71,7 +75,17 @@ const useUniVue = (props) => {
|
|
|
71
75
|
return "";
|
|
72
76
|
}
|
|
73
77
|
};
|
|
74
|
-
const
|
|
78
|
+
const loadStaticJsResource = async () => {
|
|
79
|
+
const promises = [];
|
|
80
|
+
if (!isBpm && !window.ElementUIComponents) {
|
|
81
|
+
await new Promise((resolve, reject) => {
|
|
82
|
+
const script = document.createElement("script");
|
|
83
|
+
script.src = "/element-ui.js";
|
|
84
|
+
script.onload = resolve;
|
|
85
|
+
script.onerror = reject;
|
|
86
|
+
document.body.appendChild(script);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
75
89
|
let globalName;
|
|
76
90
|
if (isAddress) {
|
|
77
91
|
globalName = "hxAddress";
|
|
@@ -79,24 +93,39 @@ const useUniVue = (props) => {
|
|
|
79
93
|
if (isBpm) {
|
|
80
94
|
globalName = "index";
|
|
81
95
|
}
|
|
82
|
-
if (window[globalName])
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
96
|
+
if (globalName && !window[globalName]) {
|
|
97
|
+
promises.push(
|
|
98
|
+
new Promise((resolve, reject) => {
|
|
99
|
+
const script = document.createElement("script");
|
|
100
|
+
script.src = getStaticJsUrl();
|
|
101
|
+
script.onload = () => resolve();
|
|
102
|
+
script.onerror = reject;
|
|
103
|
+
document.body.appendChild(script);
|
|
104
|
+
})
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
return Promise.all(promises);
|
|
94
108
|
};
|
|
95
109
|
const loadStaticCssResource = async () => {
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
110
|
+
const cssPromises = [];
|
|
111
|
+
if (!isBpm) {
|
|
112
|
+
cssPromises.push(
|
|
113
|
+
http.request("/element-ui.css", {
|
|
114
|
+
responseReturn: "raw",
|
|
115
|
+
baseURL: ""
|
|
116
|
+
}).then((res) => res.data)
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
const staticCssUrl = getStaticCssUrl();
|
|
120
|
+
if (staticCssUrl) {
|
|
121
|
+
cssPromises.push(
|
|
122
|
+
http.request(staticCssUrl, {
|
|
123
|
+
responseReturn: "raw"
|
|
124
|
+
}).then((res) => res.data)
|
|
125
|
+
);
|
|
126
|
+
}
|
|
127
|
+
const cssContents = await Promise.all(cssPromises);
|
|
128
|
+
return cssContents.join("\n");
|
|
100
129
|
};
|
|
101
130
|
let instance;
|
|
102
131
|
const setupInstance = async () => {
|
|
@@ -130,6 +159,23 @@ const useUniVue = (props) => {
|
|
|
130
159
|
render: (h) => h(props.name, prepareVueAttributes())
|
|
131
160
|
});
|
|
132
161
|
};
|
|
162
|
+
watch(
|
|
163
|
+
() => attrs,
|
|
164
|
+
() => {
|
|
165
|
+
if (instance) {
|
|
166
|
+
const { props: newProps, on: newEvents } = prepareVueAttributes();
|
|
167
|
+
Object.keys(newProps).forEach((key) => {
|
|
168
|
+
instance.$props[key] = newProps[key];
|
|
169
|
+
});
|
|
170
|
+
Object.keys(newEvents).forEach((eventName) => {
|
|
171
|
+
instance.$off(eventName);
|
|
172
|
+
instance.$on(eventName, newEvents[eventName]);
|
|
173
|
+
});
|
|
174
|
+
instance.$forceUpdate();
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
{ deep: true }
|
|
178
|
+
);
|
|
133
179
|
onMounted(() => {
|
|
134
180
|
setupInstance();
|
|
135
181
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-uni-vue.mjs","sources":["../../../../../../packages/components/uni-vue/src/use-uni-vue.ts"],"sourcesContent":["import { onMounted, ref, useAttrs, useTemplateRef } from 'vue'\nimport { http } from '@el-plus/utils/http'\nimport Vue2 from 'vue2'\nimport VueRouter3 from 'vue-router3'\nimport { componentType } from './uni-vue'\nimport axios from 'axios'\nimport { ElMessage, ElLoading } from 'element-plus'\nexport const useUniVue = (props) => {\n const uniVue = useTemplateRef<HTMLElement>('uniVue')\n const { type } = props\n const loading = ref(true)\n const isAddress = type === 'address'\n const isBpm = type === 'bpm'\n // 是否需要加载静态资源\n const isLoadStatic = componentType.indexOf(type) > -1\n const attrs = useAttrs()\n const setupWindow = () => {\n Vue2.use(VueRouter3)\n if (!window.Vue) {\n window.Vue = Vue2\n }\n // 地址\n if (isAddress) {\n if (!window.axios) {\n window.axios = axios\n }\n if (!window.ElementUI) {\n window.ElementUI = {\n Message: ElMessage,\n Loading: ElLoading,\n }\n }\n }\n }\n setupWindow()\n const prepareVueAttributes = () => {\n const events = {}\n const _props = {}\n Object.keys(attrs).forEach((key) => {\n // 如果key以on开头,就是事件,转换为下划线\n if (key.startsWith('on')) {\n let eventName = key.slice(2) // 去掉 'on' 前缀\n // 将驼峰命名转换为下划线命名\n eventName = eventName.replace(/([A-Z])/g, '-$1').toLowerCase()\n // 删除第一位的-\n eventName = eventName.slice(1)\n events[eventName] = attrs[key]\n } else {\n _props[key] = attrs[key]\n }\n })\n return {\n on: events,\n props: _props,\n }\n }\n\n const cdn = '//j01.hongxinshop.com/'\n const getStaticJsUrl = () => {\n switch (type) {\n case 'bpm':\n return `${cdn}bpm-common/common/index.umd.min.js`\n case 'address':\n return `${cdn}address/static/hx-address-full.js`\n default:\n return ''\n }\n }\n const getStaticCssUrl = () => {\n switch (type) {\n case 'bpm':\n return `/bpm-common/common/index.css`\n case 'address':\n return `/address/static/hx-address.css`\n default:\n return ''\n }\n }\n const hasLoadStaticJsResource = () => {\n let globalName\n if (isAddress) {\n globalName = 'hxAddress'\n }\n if (isBpm) {\n globalName = 'index'\n }\n if (window[globalName]) return true\n return false\n }\n const loadStaticJsResource = async () => {\n return new Promise((resolve, reject) => {\n if (hasLoadStaticJsResource()) return resolve('')\n const script = document.createElement('script')\n script.src = getStaticJsUrl()\n script.onload = resolve\n script.onerror = reject\n document.body.appendChild(script)\n })\n }\n const loadStaticCssResource = async () => {\n const { data: css } = await http.request<string>(getStaticCssUrl(), {\n responseReturn: 'raw',\n })\n return css\n }\n let instance\n const setupInstance = async () => {\n if (instance) {\n return\n }\n // if (import.meta.hot) return // 每次热更新都会执行,在这里阻止,防止每次热更新页面都会重复插入组件\n const el = uniVue.value // 选择一个宿主元素\n const shadowRoot = el!.attachShadow({ mode: 'open' }) // 创建一个开放模式的 shadow root\n const container = document.createElement('div')\n if (isLoadStatic) {\n try {\n loading.value = true\n const [_res1, css] = await Promise.all([\n loadStaticJsResource(),\n loadStaticCssResource(),\n ])\n const style = document.createElement('style')\n style.textContent = css\n shadowRoot.appendChild(style)\n } catch (error) {\n console.log(error)\n } finally {\n loading.value = false\n }\n }\n shadowRoot.appendChild(container)\n instance = new Vue2({\n el: container,\n // @ts-expect-error 缺少类型定义\n router: new VueRouter3(),\n render: (h) => h(props.name, prepareVueAttributes()),\n })\n }\n onMounted(() => {\n setupInstance()\n })\n return {\n loading,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-uni-vue.mjs","sources":["../../../../../../packages/components/uni-vue/src/use-uni-vue.ts"],"sourcesContent":["import { onMounted, ref, useAttrs, useTemplateRef, watch } from 'vue'\nimport { http } from '@el-plus/utils/http'\nimport Vue2 from 'vue2'\nimport VueRouter3 from 'vue-router3'\nimport { componentType } from './uni-vue'\nimport axios from 'axios'\nimport { ElMessage, ElLoading } from 'element-plus'\nexport const useUniVue = (props) => {\n const uniVue = useTemplateRef<HTMLElement>('uniVue')\n const { type } = props\n const loading = ref(true)\n const isAddress = type === 'address'\n const isBpm = type === 'bpm'\n // 是否需要加载静态资源\n const isLoadStatic = componentType.indexOf(type) > -1\n const attrs = useAttrs()\n const setupWindow = () => {\n Vue2.use(VueRouter3)\n if (!window.Vue) {\n window.Vue = Vue2\n }\n // 地址\n if (isAddress) {\n if (!window.axios) {\n window.axios = axios\n }\n if (!window.ElementUI) {\n window.ElementUI = {\n Message: ElMessage,\n Loading: ElLoading,\n }\n }\n }\n }\n setupWindow()\n const prepareVueAttributes = () => {\n const events = {}\n const _props = {}\n Object.keys(attrs).forEach((key) => {\n if (key.startsWith('on')) {\n let eventName = key.slice(2) // 去掉 'on' 前缀\n if (eventName.startsWith('Update:')) {\n // 处理 v-model:xxx 事件,转换为 update:xxx\n // 例如:onUpdate:modelValue -> update:modelValue\n eventName = 'update:' + eventName.slice(7)\n } else {\n // 将驼峰命名转换为短横线命名\n // 例如:onClick -> click\n eventName = eventName.replace(/([A-Z])/g, '-$1').toLowerCase()\n // 删除第一位的-\n eventName = eventName.slice(1)\n }\n events[eventName] = attrs[key]\n } else {\n _props[key] = attrs[key]\n }\n })\n return {\n on: events,\n props: _props,\n }\n }\n\n const cdn = '//j01.hongxinshop.com/'\n const getStaticJsUrl = () => {\n switch (type) {\n case 'bpm':\n return `${cdn}bpm-common/common/index.umd.min.js`\n case 'address':\n return `${cdn}address/static/hx-address-full.js`\n default:\n return ''\n }\n }\n const getStaticCssUrl = () => {\n switch (type) {\n case 'bpm':\n return `/bpm-common/common/index.css`\n case 'address':\n return `/address/static/hx-address.css`\n default:\n return ''\n }\n }\n const loadStaticJsResource = async () => {\n const promises: Promise<void>[] = []\n\n // 检查并加载element-ui.js(非bpm类型)\n if (!isBpm && !window.ElementUIComponents) {\n await new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = '/element-ui.js'\n script.onload = resolve\n script.onerror = reject\n document.body.appendChild(script)\n })\n }\n\n // 检查并加载原有的JS资源\n let globalName\n if (isAddress) {\n globalName = 'hxAddress'\n }\n if (isBpm) {\n globalName = 'index'\n }\n\n if (globalName && !window[globalName]) {\n promises.push(\n new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = getStaticJsUrl()\n script.onload = () => resolve()\n script.onerror = reject\n document.body.appendChild(script)\n }),\n )\n }\n\n return Promise.all(promises)\n }\n const loadStaticCssResource = async () => {\n const cssPromises: Promise<string>[] = []\n\n // 为非bpm类型加载element-ui.css\n if (!isBpm) {\n cssPromises.push(\n http\n .request<string>('/element-ui.css', {\n responseReturn: 'raw',\n baseURL: '',\n })\n .then((res) => res.data),\n )\n }\n\n // 加载原有的CSS资源\n const staticCssUrl = getStaticCssUrl()\n if (staticCssUrl) {\n cssPromises.push(\n http\n .request<string>(staticCssUrl, {\n responseReturn: 'raw',\n })\n .then((res) => res.data),\n )\n }\n\n const cssContents = await Promise.all(cssPromises)\n return cssContents.join('\\n')\n }\n let instance\n const setupInstance = async () => {\n if (instance) {\n return\n }\n // if (import.meta.hot) return // 每次热更新都会执行,在这里阻止,防止每次热更新页面都会重复插入组件\n const el = uniVue.value // 选择一个宿主元素\n const shadowRoot = el!.attachShadow({ mode: 'open' }) // 创建一个开放模式的 shadow root\n const container = document.createElement('div')\n if (isLoadStatic) {\n try {\n loading.value = true\n const [_res1, css] = await Promise.all([\n loadStaticJsResource(),\n loadStaticCssResource(),\n ])\n const style = document.createElement('style')\n style.textContent = css\n shadowRoot.appendChild(style)\n } catch (error) {\n console.log(error)\n } finally {\n loading.value = false\n }\n }\n shadowRoot.appendChild(container)\n instance = new Vue2({\n el: container,\n // @ts-expect-error 缺少类型定义\n router: new VueRouter3(),\n render: (h) => h(props.name, prepareVueAttributes()),\n })\n }\n\n // 监听 attrs 变化,更新 Vue 2 组件\n watch(\n () => attrs,\n () => {\n if (instance) {\n const { props: newProps, on: newEvents } = prepareVueAttributes()\n // 更新 props\n Object.keys(newProps).forEach((key) => {\n instance.$props[key] = newProps[key]\n })\n // 更新事件\n Object.keys(newEvents).forEach((eventName) => {\n instance.$off(eventName)\n instance.$on(eventName, newEvents[eventName])\n })\n // 强制重新渲染\n instance.$forceUpdate()\n }\n },\n { deep: true },\n )\n onMounted(() => {\n setupInstance()\n })\n\n return {\n loading,\n }\n}\n"],"names":[],"mappings":"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"}
|
package/es/hooks/use-locale.mjs
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { getCurrentInstance, inject, provide, ref, nextTick } from 'vue';
|
|
2
2
|
import { useLocale as useLocale$1 } from 'element-plus';
|
|
3
|
-
import zhCn from '../locale/lang/zh-cn.mjs';
|
|
4
3
|
|
|
4
|
+
const elLocaleModules = import.meta.glob(
|
|
5
|
+
"/node_modules/element-plus/es/locale/lang/*.mjs"
|
|
6
|
+
);
|
|
7
|
+
const localeModules = import.meta.glob("../locale/lang/*.{mjs,ts}");
|
|
5
8
|
const TRANSLATER_KEY = /* @__PURE__ */ Symbol("TRANSLATER_KEY");
|
|
6
9
|
let cachedTranslater = null;
|
|
7
10
|
const useLocale = () => {
|
|
@@ -29,29 +32,15 @@ const useLocale = () => {
|
|
|
29
32
|
const provideFn = inSetup2 ? provide : app.provide;
|
|
30
33
|
return new Promise(async (resolve) => {
|
|
31
34
|
try {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
);
|
|
39
|
-
locale = lang;
|
|
40
|
-
} catch (e) {
|
|
41
|
-
try {
|
|
42
|
-
const { default: en } = await import(
|
|
43
|
-
/* @vite-ignore */
|
|
44
|
-
'../locale/lang/en.mjs'
|
|
45
|
-
);
|
|
46
|
-
locale = en;
|
|
47
|
-
} catch (enError) {
|
|
48
|
-
console.error(
|
|
49
|
-
"Failed to load both specified locale and English locale, using Chinese locale as fallback:",
|
|
50
|
-
enError
|
|
51
|
-
);
|
|
52
|
-
}
|
|
35
|
+
const basePath = "../locale/lang/";
|
|
36
|
+
const ext = "production" === "production" ? ".mjs" : ".ts";
|
|
37
|
+
const modulePath = basePath + localeLang + ext;
|
|
38
|
+
let loader = localeModules[modulePath];
|
|
39
|
+
if (!loader) {
|
|
40
|
+
loader = localeModules[basePath + "en" + ext];
|
|
53
41
|
}
|
|
54
|
-
const
|
|
42
|
+
const module = await loader();
|
|
43
|
+
const { t } = useLocale$1(ref(module.default));
|
|
55
44
|
provideFn(TRANSLATER_KEY, t);
|
|
56
45
|
resolve();
|
|
57
46
|
addLangClass(window.hxlang);
|
|
@@ -61,34 +50,15 @@ const useLocale = () => {
|
|
|
61
50
|
});
|
|
62
51
|
};
|
|
63
52
|
const loadElLocale = async () => {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
elLocalePath
|
|
71
|
-
);
|
|
72
|
-
elLocale = lang;
|
|
73
|
-
} catch (e) {
|
|
74
|
-
try {
|
|
75
|
-
const { default: en } = await import(
|
|
76
|
-
/* @vite-ignore */
|
|
77
|
-
'element-plus/es/locale/lang/en'
|
|
78
|
-
);
|
|
79
|
-
elLocale = en;
|
|
80
|
-
} catch (enError) {
|
|
81
|
-
console.error(
|
|
82
|
-
"Failed to load both specified locale and English locale, using Chinese locale as fallback:",
|
|
83
|
-
enError
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return elLocale;
|
|
88
|
-
} catch (error) {
|
|
89
|
-
console.error(error);
|
|
90
|
-
return zhCn;
|
|
53
|
+
const basePath = "/node_modules/element-plus/es/locale/lang/";
|
|
54
|
+
const ext = ".mjs";
|
|
55
|
+
const modulePath = basePath + localeLang + ext;
|
|
56
|
+
let loader = elLocaleModules[modulePath];
|
|
57
|
+
if (!loader) {
|
|
58
|
+
loader = elLocaleModules[basePath + "en" + ext];
|
|
91
59
|
}
|
|
60
|
+
const module = await loader();
|
|
61
|
+
return module.default;
|
|
92
62
|
};
|
|
93
63
|
return {
|
|
94
64
|
loadLocale,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-locale.mjs","sources":["../../../../packages/hooks/use-locale.ts"],"sourcesContent":["import {\n ref,\n inject,\n provide,\n getCurrentInstance,\n type App,\n nextTick,\n} from 'vue'\nimport { useLocale as useElLocale } from 'element-plus'\nimport type { Language } from 'element-plus/es/locale'\
|
|
1
|
+
{"version":3,"file":"use-locale.mjs","sources":["../../../../packages/hooks/use-locale.ts"],"sourcesContent":["import {\n ref,\n inject,\n provide,\n getCurrentInstance,\n type App,\n nextTick,\n} from 'vue'\nimport { useLocale as useElLocale } from 'element-plus'\nimport type { Language } from 'element-plus/es/locale'\nconst elLocaleModules = import.meta.glob(\n '/node_modules/element-plus/es/locale/lang/*.mjs',\n)\nconst localeModules = import.meta.glob('../locale/lang/*.{mjs,ts}')\n\nconst TRANSLATER_KEY = Symbol('TRANSLATER_KEY')\nexport type Translater = (key: string) => string\nlet cachedTranslater: Translater | null = null\nexport const useLocale = () => {\n const localeLang = window.hxlang?.toLocaleLowerCase().split('_').join('-')\n const addLangClass = async (lang: string) => {\n await nextTick()\n const el = document.querySelector('html')\n const langclass = 'no-cn'\n if (el && lang !== 'ZH_CN') {\n el.classList.add(langclass)\n }\n }\n const inSetup = !!getCurrentInstance()\n const translater = inSetup ? inject<Translater>(TRANSLATER_KEY) : null\n if (translater) {\n cachedTranslater = translater\n }\n const loadLocale = (app?: App) => {\n const inSetup = !!getCurrentInstance()\n if (!inSetup && !app) {\n return console.error(\n 'app is required when useLocale is called outside of setup',\n )\n }\n const provideFn = inSetup ? provide : app!.provide\n // eslint-disable-next-line no-async-promise-executor\n return new Promise<void>(async (resolve) => {\n try {\n const basePath = '../locale/lang/'\n const ext = process.env.NODE_ENV === 'production' ? '.mjs' : '.ts'\n const modulePath = basePath + localeLang + ext\n let loader = localeModules[modulePath]\n if (!loader) {\n loader = localeModules[basePath + 'en' + ext]\n }\n const module = (await loader()) as { default: Language }\n const { t } = useElLocale(ref(module.default as unknown as Language))\n provideFn(TRANSLATER_KEY, t)\n resolve()\n addLangClass(window.hxlang!)\n } catch (error) {\n console.error(error)\n }\n })\n }\n const loadElLocale = async () => {\n const basePath = '/node_modules/element-plus/es/locale/lang/'\n const ext = '.mjs'\n const modulePath = basePath + localeLang + ext\n let loader = elLocaleModules[modulePath]\n if (!loader) {\n loader = elLocaleModules[basePath + 'en' + ext]\n }\n const module = (await loader()) as { default: Language }\n return module.default\n }\n return {\n loadLocale,\n loadElLocale,\n t: (key) => {\n // // 如果已经有缓存的 translater,直接使用\n if (cachedTranslater) {\n return cachedTranslater(key)\n }\n // const translater = inject<Translater>(TRANSLATER_KEY)\n if (translater) {\n // cachedTranslater = translater // 缓存起来\n return translater(key)\n }\n return key\n },\n }\n}\n"],"names":["inSetup","useElLocale"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import * as qs from 'qs';
|
|
|
4
4
|
|
|
5
5
|
const useNavigation = () => {
|
|
6
6
|
const router = useRouter();
|
|
7
|
+
const route = useRoute();
|
|
7
8
|
const $goto = (r) => {
|
|
8
9
|
const item = {
|
|
9
10
|
id: Date.now(),
|
|
@@ -35,11 +36,11 @@ const useNavigation = () => {
|
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
};
|
|
38
|
-
const
|
|
39
|
-
if (
|
|
39
|
+
const route2 = findRoute(routes, r);
|
|
40
|
+
if (route2) {
|
|
40
41
|
item.id = r.id || item.id;
|
|
41
|
-
item.name = r.title || (window.$hxt ? window.$hxt(
|
|
42
|
-
item.url = `${projectRootPath}#${
|
|
42
|
+
item.name = r.title || (window.$hxt ? window.$hxt(route2.meta.title) : route2.meta.title);
|
|
43
|
+
item.url = `${projectRootPath}#${route2.path}${qs.stringify(r.query, { encode: false })}`;
|
|
43
44
|
if (openTab) {
|
|
44
45
|
openTab(item);
|
|
45
46
|
} else {
|
|
@@ -61,8 +62,7 @@ const useNavigation = () => {
|
|
|
61
62
|
window.parent?.openMenuSelect?.(preTag);
|
|
62
63
|
};
|
|
63
64
|
const mode = computed(() => {
|
|
64
|
-
|
|
65
|
-
return query.mode;
|
|
65
|
+
return route.query.mode;
|
|
66
66
|
});
|
|
67
67
|
const isBrowse = computed(() => mode.value === "browse");
|
|
68
68
|
const isEdit = computed(() => mode.value === "edit");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-navigation.mjs","sources":["../../../../packages/hooks/use-navigation.ts"],"sourcesContent":["import { useRouter, useRoute } from 'vue-router'\nimport { computed } from 'vue'\nimport type { NavigationConfig } from '@el-plus/utils'\nimport * as qs from 'qs'\nexport type PageMode = 'add' | 'edit' | 'browse'\n\nexport const useNavigation = () => {\n const router = useRouter()\n /**\n * 打开saas窗口\n * @param id 菜单id\n * @param name 路由模块name, 适用于内部跳转\n * @param title 菜单名称,适用于传外部url跳转\n * @param url 菜单url\n * @param query url参数\n */\n const $goto = (r: NavigationConfig) => {\n const item: NavigationConfig = {\n id: Date.now(),\n name: '',\n url: '',\n }\n const openTab = window.parent.openMenuSelect\n\n if (r.url) {\n item.url = r.url\n item.name = r.name\n if (openTab) {\n openTab(item)\n } else {\n window.open(item.url)\n }\n return\n }\n const routes = router.getRoutes() || []\n\n const projectRootPath = window.location.pathname\n\n const findRoute = (routes, distRoute) => {\n let queen = [...routes]\n\n while (queen.length) {\n const first = queen.shift()\n if (first.children) {\n queen = queen.concat(first.children)\n }\n\n if (first.name == distRoute.name) {\n return first\n }\n }\n }\n const route = findRoute(routes, r)\n\n if (route) {\n item.id = r.id || item.id\n\n item.name =\n r.title ||\n (window.$hxt ? window.$hxt(route.meta.title) : route.meta.title)\n\n item.url = `${projectRootPath}#${route.path}${qs.stringify(r.query, { encode: false })}`\n\n if (openTab) {\n openTab(item)\n } else {\n router.push(r)\n }\n } else {\n console.error('没有找到对应的路由')\n }\n }\n\n const $closeTag = () => {\n if (!window.parent.selectedRouterTags) {\n return\n }\n const currentRouterTagIndex = window.parent.currentRouterTagIndex!\n const preIndex = window.parent.currentRouterTagIndex! - 1\n const currentTag = window.parent.selectedRouterTags[currentRouterTagIndex]\n const preTag = window.parent.selectedRouterTags[preIndex]\n window.parent?.closeTag?.(currentTag)\n window.parent?.openMenuSelect?.(preTag)\n }\n const mode = computed(() => {\n
|
|
1
|
+
{"version":3,"file":"use-navigation.mjs","sources":["../../../../packages/hooks/use-navigation.ts"],"sourcesContent":["import { useRouter, useRoute } from 'vue-router'\nimport { computed } from 'vue'\nimport type { NavigationConfig } from '@el-plus/utils'\nimport * as qs from 'qs'\nexport type PageMode = 'add' | 'edit' | 'browse'\n\nexport const useNavigation = () => {\n const router = useRouter()\n const route = useRoute()\n /**\n * 打开saas窗口\n * @param id 菜单id\n * @param name 路由模块name, 适用于内部跳转\n * @param title 菜单名称,适用于传外部url跳转\n * @param url 菜单url\n * @param query url参数\n */\n const $goto = (r: NavigationConfig) => {\n const item: NavigationConfig = {\n id: Date.now(),\n name: '',\n url: '',\n }\n const openTab = window.parent.openMenuSelect\n\n if (r.url) {\n item.url = r.url\n item.name = r.name\n if (openTab) {\n openTab(item)\n } else {\n window.open(item.url)\n }\n return\n }\n const routes = router.getRoutes() || []\n\n const projectRootPath = window.location.pathname\n\n const findRoute = (routes, distRoute) => {\n let queen = [...routes]\n\n while (queen.length) {\n const first = queen.shift()\n if (first.children) {\n queen = queen.concat(first.children)\n }\n\n if (first.name == distRoute.name) {\n return first\n }\n }\n }\n const route = findRoute(routes, r)\n\n if (route) {\n item.id = r.id || item.id\n\n item.name =\n r.title ||\n (window.$hxt ? window.$hxt(route.meta.title) : route.meta.title)\n\n item.url = `${projectRootPath}#${route.path}${qs.stringify(r.query, { encode: false })}`\n\n if (openTab) {\n openTab(item)\n } else {\n router.push(r)\n }\n } else {\n console.error('没有找到对应的路由')\n }\n }\n\n const $closeTag = () => {\n if (!window.parent.selectedRouterTags) {\n return\n }\n const currentRouterTagIndex = window.parent.currentRouterTagIndex!\n const preIndex = window.parent.currentRouterTagIndex! - 1\n const currentTag = window.parent.selectedRouterTags[currentRouterTagIndex]\n const preTag = window.parent.selectedRouterTags[preIndex]\n window.parent?.closeTag?.(currentTag)\n window.parent?.openMenuSelect?.(preTag)\n }\n const mode = computed(() => {\n return route.query.mode as PageMode\n })\n const isBrowse = computed(() => mode.value === 'browse')\n const isEdit = computed(() => mode.value === 'edit')\n const isAdd = computed(() => mode.value === 'add')\n return {\n $goto,\n $closeTag,\n mode,\n isBrowse,\n isEdit,\n isAdd,\n }\n}\n"],"names":["routes","route"],"mappings":"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"}
|
package/es/package.json.mjs
CHANGED
package/es/types/global.d.ts
CHANGED
|
@@ -57,9 +57,8 @@ export declare const EpButtons: {
|
|
|
57
57
|
readonly link: boolean;
|
|
58
58
|
readonly circle: boolean;
|
|
59
59
|
readonly text: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
60
|
-
readonly loading: boolean;
|
|
61
|
-
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
62
60
|
readonly size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
61
|
+
readonly loading: boolean;
|
|
63
62
|
readonly type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "text" | "success" | "default" | "primary" | "warning" | "info" | "danger", unknown>;
|
|
64
63
|
readonly plain: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
65
64
|
readonly nativeType: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "button" | "reset" | "submit", unknown>;
|
|
@@ -69,6 +68,7 @@ export declare const EpButtons: {
|
|
|
69
68
|
readonly round: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
70
69
|
readonly dark: boolean;
|
|
71
70
|
readonly autoInsertSpace: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
71
|
+
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
72
72
|
readonly list: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
73
73
|
name: string;
|
|
74
74
|
prop: string;
|
|
@@ -153,9 +153,8 @@ export declare const EpButtons: {
|
|
|
153
153
|
readonly link: boolean;
|
|
154
154
|
readonly circle: boolean;
|
|
155
155
|
readonly text: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
156
|
-
readonly loading: boolean;
|
|
157
|
-
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
158
156
|
readonly size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
157
|
+
readonly loading: boolean;
|
|
159
158
|
readonly type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "text" | "success" | "default" | "primary" | "warning" | "info" | "danger", unknown>;
|
|
160
159
|
readonly plain: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
161
160
|
readonly nativeType: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "button" | "reset" | "submit", unknown>;
|
|
@@ -165,6 +164,7 @@ export declare const EpButtons: {
|
|
|
165
164
|
readonly round: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
166
165
|
readonly dark: boolean;
|
|
167
166
|
readonly autoInsertSpace: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
167
|
+
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
168
168
|
readonly list: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
169
169
|
name: string;
|
|
170
170
|
prop: string;
|
|
@@ -228,9 +228,8 @@ export declare const EpButtons: {
|
|
|
228
228
|
readonly link: boolean;
|
|
229
229
|
readonly circle: boolean;
|
|
230
230
|
readonly text: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
231
|
-
readonly loading: boolean;
|
|
232
|
-
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
233
231
|
readonly size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
232
|
+
readonly loading: boolean;
|
|
234
233
|
readonly type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "text" | "success" | "default" | "primary" | "warning" | "info" | "danger", unknown>;
|
|
235
234
|
readonly plain: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
236
235
|
readonly nativeType: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "button" | "reset" | "submit", unknown>;
|
|
@@ -240,6 +239,7 @@ export declare const EpButtons: {
|
|
|
240
239
|
readonly round: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
241
240
|
readonly dark: boolean;
|
|
242
241
|
readonly autoInsertSpace: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
242
|
+
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
243
243
|
readonly list: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
244
244
|
name: string;
|
|
245
245
|
prop: string;
|
|
@@ -87,9 +87,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
87
87
|
readonly link: boolean;
|
|
88
88
|
readonly circle: boolean;
|
|
89
89
|
readonly text: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
90
|
-
readonly loading: boolean;
|
|
91
|
-
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
92
90
|
readonly size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
91
|
+
readonly loading: boolean;
|
|
93
92
|
readonly type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "text" | "success" | "default" | "primary" | "warning" | "info" | "danger", unknown>;
|
|
94
93
|
readonly plain: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
95
94
|
readonly nativeType: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "button" | "reset" | "submit", unknown>;
|
|
@@ -99,6 +98,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
99
98
|
readonly round: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
100
99
|
readonly dark: boolean;
|
|
101
100
|
readonly autoInsertSpace: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
101
|
+
readonly tag: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
102
102
|
readonly list: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
103
103
|
name: string;
|
|
104
104
|
prop: string;
|
|
@@ -267,7 +267,6 @@ export declare const EpDatePickerRange: {
|
|
|
267
267
|
"update:start": (value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => void;
|
|
268
268
|
"update:end": (value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => void;
|
|
269
269
|
}, import("vue").PublicProps, {
|
|
270
|
-
placeholder: string;
|
|
271
270
|
size: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
272
271
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType) | ((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType))[], unknown, unknown>;
|
|
273
272
|
placement: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement) | ((new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement))[], import("element-plus").Placement, unknown>;
|
|
@@ -279,6 +278,7 @@ export declare const EpDatePickerRange: {
|
|
|
279
278
|
popperOptions: Partial<import("element-plus").Options>;
|
|
280
279
|
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
281
280
|
clearable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
281
|
+
placeholder: string;
|
|
282
282
|
readonly: boolean;
|
|
283
283
|
prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
284
284
|
tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
@@ -566,7 +566,6 @@ export declare const EpDatePickerRange: {
|
|
|
566
566
|
"onUpdate:start"?: ((value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => any) | undefined;
|
|
567
567
|
"onUpdate:end"?: ((value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => any) | undefined;
|
|
568
568
|
}>, {}, {}, {}, {}, {
|
|
569
|
-
placeholder: string;
|
|
570
569
|
size: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
571
570
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType) | ((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType))[], unknown, unknown>;
|
|
572
571
|
placement: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement) | ((new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement))[], import("element-plus").Placement, unknown>;
|
|
@@ -578,6 +577,7 @@ export declare const EpDatePickerRange: {
|
|
|
578
577
|
popperOptions: Partial<import("element-plus").Options>;
|
|
579
578
|
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
580
579
|
clearable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
580
|
+
placeholder: string;
|
|
581
581
|
readonly: boolean;
|
|
582
582
|
prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
583
583
|
tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
@@ -866,7 +866,6 @@ export declare const EpDatePickerRange: {
|
|
|
866
866
|
"update:start": (value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => void;
|
|
867
867
|
"update:end": (value: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => void;
|
|
868
868
|
}, string, {
|
|
869
|
-
placeholder: string;
|
|
870
869
|
size: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
871
870
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType) | ((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType))[], unknown, unknown>;
|
|
872
871
|
placement: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement) | ((new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement))[], import("element-plus").Placement, unknown>;
|
|
@@ -878,6 +877,7 @@ export declare const EpDatePickerRange: {
|
|
|
878
877
|
popperOptions: Partial<import("element-plus").Options>;
|
|
879
878
|
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
880
879
|
clearable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
880
|
+
placeholder: string;
|
|
881
881
|
readonly: boolean;
|
|
882
882
|
prefixIcon: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
883
883
|
tabindex: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
@@ -525,7 +525,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
525
525
|
"onUpdate:start"?: ((value: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => any) | undefined;
|
|
526
526
|
"onUpdate:end"?: ((value: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null) | ((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => import("element-plus").ModelValueType | null))[], unknown, unknown> | undefined) => any) | undefined;
|
|
527
527
|
}>, {
|
|
528
|
-
placeholder: string;
|
|
529
528
|
size: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>;
|
|
530
529
|
type: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType) | ((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange") | (() => import("element-plus").DatePickerType))[], unknown, unknown>;
|
|
531
530
|
placement: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement) | ((new (...args: any[]) => "left" | "right" | "top" | "bottom" | "auto" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => import("element-plus").Placement))[], import("element-plus").Placement, unknown>;
|
|
@@ -537,6 +536,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
537
536
|
popperOptions: Partial<import("element-plus").Options>;
|
|
538
537
|
editable: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
539
538
|
clearable: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
539
|
+
placeholder: string;
|
|
540
540
|
readonly: boolean;
|
|
541
541
|
prefixIcon: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>;
|
|
542
542
|
tabindex: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
|
|
@@ -129,7 +129,6 @@ export declare const EpInput: {
|
|
|
129
129
|
mouseleave: (evt: MouseEvent) => void;
|
|
130
130
|
"update:modelValue": (value: string) => void;
|
|
131
131
|
}, import("vue").PublicProps, {
|
|
132
|
-
placeholder: string;
|
|
133
132
|
id: string;
|
|
134
133
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType))[], unknown, unknown>;
|
|
135
134
|
disabled: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -137,6 +136,7 @@ export declare const EpInput: {
|
|
|
137
136
|
autofocus: boolean;
|
|
138
137
|
clearable: true;
|
|
139
138
|
nonzero: boolean;
|
|
139
|
+
placeholder: string;
|
|
140
140
|
thousand: boolean;
|
|
141
141
|
inputmode: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined) | ((new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined))[], unknown, unknown>;
|
|
142
142
|
modelModifiers: import("element-plus").InputModelModifiers;
|
|
@@ -275,7 +275,6 @@ export declare const EpInput: {
|
|
|
275
275
|
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
276
276
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
277
277
|
}>, {}, {}, {}, {}, {
|
|
278
|
-
placeholder: string;
|
|
279
278
|
id: string;
|
|
280
279
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType))[], unknown, unknown>;
|
|
281
280
|
disabled: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -283,6 +282,7 @@ export declare const EpInput: {
|
|
|
283
282
|
autofocus: boolean;
|
|
284
283
|
clearable: true;
|
|
285
284
|
nonzero: boolean;
|
|
285
|
+
placeholder: string;
|
|
286
286
|
thousand: boolean;
|
|
287
287
|
inputmode: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined) | ((new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined))[], unknown, unknown>;
|
|
288
288
|
modelModifiers: import("element-plus").InputModelModifiers;
|
|
@@ -431,7 +431,6 @@ export declare const EpInput: {
|
|
|
431
431
|
mouseleave: (evt: MouseEvent) => void;
|
|
432
432
|
"update:modelValue": (value: string) => void;
|
|
433
433
|
}, string, {
|
|
434
|
-
placeholder: string;
|
|
435
434
|
id: string;
|
|
436
435
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType))[], unknown, unknown>;
|
|
437
436
|
disabled: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -439,6 +438,7 @@ export declare const EpInput: {
|
|
|
439
438
|
autofocus: boolean;
|
|
440
439
|
clearable: true;
|
|
441
440
|
nonzero: boolean;
|
|
441
|
+
placeholder: string;
|
|
442
442
|
thousand: boolean;
|
|
443
443
|
inputmode: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined) | ((new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined))[], unknown, unknown>;
|
|
444
444
|
modelModifiers: import("element-plus").InputModelModifiers;
|
|
@@ -235,7 +235,6 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
235
235
|
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
236
236
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
237
237
|
}>, {
|
|
238
|
-
placeholder: string;
|
|
239
238
|
id: string;
|
|
240
239
|
type: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus").InputType) | ((new (...args: any[]) => string) | (() => import("element-plus").InputType))[], unknown, unknown>;
|
|
241
240
|
disabled: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -243,6 +242,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
243
242
|
autofocus: boolean;
|
|
244
243
|
clearable: true;
|
|
245
244
|
nonzero: boolean;
|
|
245
|
+
placeholder: string;
|
|
246
246
|
thousand: boolean;
|
|
247
247
|
inputmode: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined) | ((new (...args: any[]) => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal") | (() => "search" | "text" | "none" | "url" | "email" | "tel" | "numeric" | "decimal" | undefined))[], unknown, unknown>;
|
|
248
248
|
modelModifiers: import("element-plus").InputModelModifiers;
|