el-plus 0.0.18 → 0.0.20
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.css +1 -1
- package/dist/index.full.js +327 -200
- package/dist/index.full.min.js +1 -1
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +1 -1
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +326 -200
- 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/form/src/form-item-vue.d.ts +5 -2
- package/es/components/form/src/form-item.d.ts +2 -1
- package/es/components/form/src/form-item.mjs +2 -2
- package/es/components/form/src/form-item.mjs.map +1 -1
- package/es/components/form/src/hooks/use-form-item.mjs +3 -1
- package/es/components/form/src/hooks/use-form-item.mjs.map +1 -1
- package/es/components/header/index.d.ts +6 -6
- package/es/components/header/src/header.d.ts +1 -1
- package/es/components/header/src/header.mjs.map +1 -1
- package/es/components/header/src/header.vue.d.ts +3 -3
- package/es/components/header/src/use-header.mjs +4 -7
- package/es/components/header/src/use-header.mjs.map +1 -1
- package/es/components/index.d.ts +1 -0
- package/es/components/index.mjs +2 -0
- package/es/components/index.mjs.map +1 -1
- package/es/components/input/style/css.d.ts +1 -1
- package/es/components/input/style/css.mjs +1 -1
- package/es/components/input/style/index.d.ts +1 -1
- package/es/components/input/style/index.mjs +1 -1
- package/es/components/link/index.d.ts +118 -0
- package/es/components/link/index.mjs +8 -0
- package/es/components/link/index.mjs.map +1 -0
- package/es/components/link/src/link.d.ts +30 -0
- package/es/components/link/src/link.mjs +19 -0
- package/es/components/link/src/link.mjs.map +1 -0
- package/es/components/link/src/link.vue.d.ts +73 -0
- package/es/components/link/src/link.vue.mjs +6 -0
- package/es/components/link/src/link.vue.mjs.map +1 -0
- package/es/components/link/src/link.vue2.mjs +52 -0
- package/es/components/link/src/link.vue2.mjs.map +1 -0
- package/es/components/link/style/css.d.ts +2 -0
- package/es/components/link/style/css.mjs +5 -0
- package/es/components/link/style/css.mjs.map +1 -0
- package/es/components/link/style/index.d.ts +2 -0
- package/es/components/link/style/index.mjs +5 -0
- package/es/components/link/style/index.mjs.map +1 -0
- package/es/components/search-list-page/index.d.ts +51 -39
- package/es/components/search-list-page/src/search-list-page.d.ts +1 -4
- package/es/components/search-list-page/src/search-list-page.mjs +6 -9
- package/es/components/search-list-page/src/search-list-page.mjs.map +1 -1
- package/es/components/search-list-page/src/search-list-page.vue.d.ts +16 -17
- package/es/components/search-list-page/src/search-list-page.vue2.mjs +4 -3
- package/es/components/search-list-page/src/search-list-page.vue2.mjs.map +1 -1
- package/es/components/search-list-page/src/use-search-list-page.d.ts +15 -9
- package/es/components/search-list-page/src/use-search-list-page.mjs +22 -22
- package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
- package/es/components/table/index.d.ts +11 -6
- package/es/components/table/src/table.d.ts +2 -1
- package/es/components/table/src/table.mjs +2 -2
- package/es/components/table/src/table.mjs.map +1 -1
- package/es/components/table/src/table.vue.d.ts +4 -3
- package/es/components/table/src/table.vue2.mjs +4 -3
- package/es/components/table/src/table.vue2.mjs.map +1 -1
- package/es/components/table/src/use-table.d.ts +71 -12
- package/es/components/table/src/use-table.mjs +84 -27
- package/es/components/table/src/use-table.mjs.map +1 -1
- package/es/components.mjs +3 -1
- package/es/components.mjs.map +1 -1
- package/es/hooks/dialog/use-dialog.d.ts +2 -0
- package/es/hooks/dialog/use-dialog.mjs +4 -3
- package/es/hooks/dialog/use-dialog.mjs.map +1 -1
- package/es/hooks/use-navigation.d.ts +5 -0
- package/es/hooks/use-navigation.mjs +14 -2
- package/es/hooks/use-navigation.mjs.map +1 -1
- package/es/index.mjs +2 -0
- package/es/index.mjs.map +1 -1
- package/es/package.json.mjs +1 -1
- package/es/utils/file.d.ts +18 -0
- package/es/utils/file.mjs +133 -0
- package/es/utils/file.mjs.map +1 -0
- package/es/utils/http/core/types.d.ts +1 -0
- package/global.d.ts +6 -4
- 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/form/src/form-item-vue.d.ts +5 -2
- package/lib/components/form/src/form-item.d.ts +2 -1
- package/lib/components/form/src/form-item.js +2 -2
- package/lib/components/form/src/form-item.js.map +1 -1
- package/lib/components/form/src/hooks/use-form-item.js +3 -1
- package/lib/components/form/src/hooks/use-form-item.js.map +1 -1
- package/lib/components/header/index.d.ts +6 -6
- package/lib/components/header/src/header.d.ts +1 -1
- package/lib/components/header/src/header.js.map +1 -1
- package/lib/components/header/src/header.vue.d.ts +3 -3
- package/lib/components/header/src/use-header.js +3 -6
- package/lib/components/header/src/use-header.js.map +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/index.js +4 -0
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/style/css.d.ts +1 -1
- package/lib/components/input/style/css.js +1 -1
- package/lib/components/input/style/index.d.ts +1 -1
- package/lib/components/input/style/index.js +1 -1
- package/lib/components/link/index.d.ts +118 -0
- package/lib/components/link/index.js +14 -0
- package/lib/components/link/index.js.map +1 -0
- package/lib/components/link/src/link.d.ts +30 -0
- package/lib/components/link/src/link.js +21 -0
- package/lib/components/link/src/link.js.map +1 -0
- package/lib/components/link/src/link.vue.d.ts +73 -0
- package/lib/components/link/src/link.vue.js +10 -0
- package/lib/components/link/src/link.vue.js.map +1 -0
- package/lib/components/link/src/link.vue2.js +56 -0
- package/lib/components/link/src/link.vue2.js.map +1 -0
- package/lib/components/link/style/css.d.ts +2 -0
- package/lib/components/link/style/css.js +7 -0
- package/lib/components/link/style/css.js.map +1 -0
- package/lib/components/link/style/index.d.ts +2 -0
- package/lib/components/link/style/index.js +7 -0
- package/lib/components/link/style/index.js.map +1 -0
- package/lib/components/search-list-page/index.d.ts +51 -39
- package/lib/components/search-list-page/src/search-list-page.d.ts +1 -4
- package/lib/components/search-list-page/src/search-list-page.js +6 -9
- package/lib/components/search-list-page/src/search-list-page.js.map +1 -1
- package/lib/components/search-list-page/src/search-list-page.vue.d.ts +16 -17
- package/lib/components/search-list-page/src/search-list-page.vue2.js +3 -2
- package/lib/components/search-list-page/src/search-list-page.vue2.js.map +1 -1
- package/lib/components/search-list-page/src/use-search-list-page.d.ts +15 -9
- package/lib/components/search-list-page/src/use-search-list-page.js +22 -22
- package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
- package/lib/components/table/index.d.ts +11 -6
- package/lib/components/table/src/table.d.ts +2 -1
- package/lib/components/table/src/table.js +2 -2
- package/lib/components/table/src/table.js.map +1 -1
- package/lib/components/table/src/table.vue.d.ts +4 -3
- package/lib/components/table/src/table.vue2.js +4 -3
- package/lib/components/table/src/table.vue2.js.map +1 -1
- package/lib/components/table/src/use-table.d.ts +71 -12
- package/lib/components/table/src/use-table.js +83 -26
- package/lib/components/table/src/use-table.js.map +1 -1
- package/lib/components.js +3 -1
- package/lib/components.js.map +1 -1
- package/lib/hooks/dialog/use-dialog.d.ts +2 -0
- package/lib/hooks/dialog/use-dialog.js +4 -3
- package/lib/hooks/dialog/use-dialog.js.map +1 -1
- package/lib/hooks/use-navigation.d.ts +5 -0
- package/lib/hooks/use-navigation.js +13 -1
- package/lib/hooks/use-navigation.js.map +1 -1
- package/lib/index.js +10 -6
- package/lib/index.js.map +1 -1
- package/lib/package.json.js +1 -1
- package/lib/utils/file.d.ts +18 -0
- package/lib/utils/file.js +136 -0
- package/lib/utils/file.js.map +1 -0
- package/lib/utils/http/core/types.d.ts +1 -0
- package/package.json +1 -1
- package/theme-chalk/base.css +1 -1
- package/theme-chalk/custom-column.css +1 -1
- package/theme-chalk/header.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/link.css +1 -0
- package/theme-chalk/src/base.scss +1 -0
- package/theme-chalk/src/common/common.scss +4 -0
- package/theme-chalk/src/custom-column.scss +6 -4
- package/theme-chalk/src/header.scss +1 -0
- package/theme-chalk/src/index.scss +2 -1
- package/theme-chalk/src/link.scss +6 -0
- package/theme-chalk/src/table.scss +20 -1
- package/theme-chalk/table.css +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-dialog.mjs","sources":["../../../../../packages/hooks/dialog/use-dialog.tsx"],"sourcesContent":["import { useTemplatePromise } from '../use-template-promise'\nimport {\n h,\n getCurrentInstance,\n render as vRender,\n markRaw,\n ref,\n useTemplateRef,\n} from 'vue'\nimport { ElDialog, ElButton } from 'element-plus'\nimport type { VNode } from 'vue'\nimport type { DialogProps } from 'element-plus'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport EpForm from '@el-plus/components/form'\nimport type { FormProps } from '@el-plus/components/form'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { useLocale } from '../use-locale'\n\nexport type DialogOptions = Partial<\n DialogProps & {\n render: (props) => VNode\n scopedSlots: Record<string, (props) => VNode>\n class: string\n onCancel: (reject) => void\n onConfirm: (resolve) => void\n showFooter: boolean\n }\n>\nexport type ExpandDialogOptions = {\n title?: string\n dialogProps?: DialogOptions\n}\nconst bem = createNameSpace('dialog')\n\nexport const useDialog = (options: DialogOptions = {}) => {\n const { t } = useLocale()\n const {\n scopedSlots = {},\n render,\n destroyOnClose,\n onConfirm,\n onCancel,\n showFooter = true,\n ...dialogProps\n } = options\n\n const Dialog = useTemplatePromise({\n destroy: destroyOnClose,\n render: (promiseOptions, ctx) => {\n // 插槽参数增加promiseOptions\n for (const key in scopedSlots) {\n scopedSlots[key] = scopedSlots[key].bind(null, promiseOptions)\n }\n const { resolve, reject, isResolving } = promiseOptions\n const renderFunc = () => {\n return render\n ? render(promiseOptions)\n : ctx.slots.default?.(promiseOptions)\n }\n const slots: DialogOptions['scopedSlots'] = {}\n if (showFooter) {\n slots.footer = () => (\n <div class={bem.e('footer')}>\n {scopedSlots.footerPrepend?.(promiseOptions)}\n <ElButton\n size=\"default\"\n onClick={() => {\n if (onCancel) {\n onCancel(reject)\n } else {\n reject('cancel')\n }\n }}\n >\n {t('ep.dialog.cancel')}\n </ElButton>\n {scopedSlots.footerInner?.(promiseOptions)}\n <ElButton\n type=\"primary\"\n onClick={async () => {\n if (onConfirm) {\n onConfirm(resolve)\n } else {\n resolve('confirm')\n }\n }}\n loading={isResolving}\n >\n {t('ep.dialog.confirm')}\n </ElButton>\n {scopedSlots.footerAppend?.(promiseOptions)}\n </div>\n )\n }\n return (\n <ElDialog\n class={bem.b()}\n modelValue={true}\n {...{\n closeOnClickModal: false,\n closeOnPressEscape: false,\n title: t('ep.dialog.title'),\n center: false,\n // 'append-to-body': true,\n beforeClose: () => {\n reject('cancel')\n },\n ...prepareProps(dialogProps, ['modelValue']),\n }}\n v-slots={{\n ...slots,\n ...scopedSlots,\n }}\n >\n {renderFunc()}\n </ElDialog>\n )\n },\n })\n if (render) {\n // const app = createApp(component)\n // Object.assign(app._context, parentInstance.appContext)\n // app.mount(container)\n const container = document.createElement('div')\n // container.setAttribute('id', 'ep-dialog-container')\n const
|
|
1
|
+
{"version":3,"file":"use-dialog.mjs","sources":["../../../../../packages/hooks/dialog/use-dialog.tsx"],"sourcesContent":["import { useTemplatePromise } from '../use-template-promise'\nimport {\n h,\n getCurrentInstance,\n render as vRender,\n markRaw,\n ref,\n useTemplateRef,\n} from 'vue'\nimport type { ComponentInternalInstance } from 'vue'\nimport { ElDialog, ElButton } from 'element-plus'\nimport type { AppContext, VNode } from 'vue'\nimport type { DialogProps } from 'element-plus'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport EpForm from '@el-plus/components/form'\nimport type { FormProps } from '@el-plus/components/form'\nimport {\n prepareProps,\n prepareEvents,\n prepareClassNames,\n prepareStyles,\n} from '@el-plus/utils/props'\nimport { useLocale } from '../use-locale'\n\nexport type DialogOptions = Partial<\n DialogProps & {\n instance: ComponentInternalInstance | null\n render: (props) => VNode\n scopedSlots: Record<string, (props) => VNode>\n class: string\n onCancel: (reject) => void\n onConfirm: (resolve) => void\n showFooter: boolean\n }\n>\nexport type ExpandDialogOptions = {\n title?: string\n dialogProps?: DialogOptions\n}\nconst bem = createNameSpace('dialog')\n\nexport const useDialog = (options: DialogOptions = {}) => {\n const { t } = useLocale()\n const {\n scopedSlots = {},\n instance,\n render,\n destroyOnClose,\n onConfirm,\n onCancel,\n showFooter = true,\n ...dialogProps\n } = options\n\n const Dialog = useTemplatePromise({\n destroy: destroyOnClose,\n render: (promiseOptions, ctx) => {\n // 插槽参数增加promiseOptions\n for (const key in scopedSlots) {\n scopedSlots[key] = scopedSlots[key].bind(null, promiseOptions)\n }\n const { resolve, reject, isResolving } = promiseOptions\n const renderFunc = () => {\n return render\n ? render(promiseOptions)\n : ctx.slots.default?.(promiseOptions)\n }\n const slots: DialogOptions['scopedSlots'] = {}\n if (showFooter) {\n slots.footer = () => (\n <div class={bem.e('footer')}>\n {scopedSlots.footerPrepend?.(promiseOptions)}\n <ElButton\n size=\"default\"\n onClick={() => {\n if (onCancel) {\n onCancel(reject)\n } else {\n reject('cancel')\n }\n }}\n >\n {t('ep.dialog.cancel')}\n </ElButton>\n {scopedSlots.footerInner?.(promiseOptions)}\n <ElButton\n type=\"primary\"\n onClick={async () => {\n if (onConfirm) {\n onConfirm(resolve)\n } else {\n resolve('confirm')\n }\n }}\n loading={isResolving}\n >\n {t('ep.dialog.confirm')}\n </ElButton>\n {scopedSlots.footerAppend?.(promiseOptions)}\n </div>\n )\n }\n return (\n <ElDialog\n class={bem.b()}\n modelValue={true}\n {...{\n closeOnClickModal: false,\n closeOnPressEscape: false,\n title: t('ep.dialog.title'),\n center: false,\n // 'append-to-body': true,\n beforeClose: () => {\n reject('cancel')\n },\n ...prepareProps(dialogProps, ['modelValue']),\n }}\n v-slots={{\n ...slots,\n ...scopedSlots,\n }}\n >\n {renderFunc()}\n </ElDialog>\n )\n },\n })\n if (render) {\n // const app = createApp(component)\n // Object.assign(app._context, parentInstance.appContext)\n // app.mount(container)\n const container = document.createElement('div')\n // container.setAttribute('id', 'ep-dialog-container')\n const newInstance = instance || getCurrentInstance()\n const vnode = h(Dialog)\n if (newInstance && newInstance.appContext) {\n // 强制继承父应用的全局组件、指令和插件\n vnode.appContext = newInstance.appContext\n }\n vRender(vnode, container)\n document.body.appendChild(container)\n }\n\n return Dialog\n}\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","bem","createNameSpace","useDialog","options","t","useLocale","scopedSlots","instance","render","destroyOnClose","onConfirm","onCancel","showFooter","dialogProps","Dialog","useTemplatePromise","destroy","promiseOptions","ctx","key","bind","resolve","reject","isResolving","renderFunc","slots","default","footer","_slot","_slot2","_createVNode","e","footerPrepend","ElButton","onClick","footerInner","footerAppend","ElDialog","_mergeProps","b","closeOnClickModal","closeOnPressEscape","title","center","beforeClose","prepareProps","container","document","createElement","newInstance","getCurrentInstance","vnode","h","appContext","vRender","body","appendChild"],"mappings":"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"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { NavigationConfig } from 'el-plus/es/utils';
|
|
2
|
+
export type PageMode = 'add' | 'edit' | 'browse';
|
|
2
3
|
export declare const useNavigation: () => {
|
|
3
4
|
$goto: (r: NavigationConfig) => void;
|
|
4
5
|
$closeTag: () => void;
|
|
6
|
+
mode: import("vue").ComputedRef<PageMode>;
|
|
7
|
+
isBrowse: import("vue").ComputedRef<boolean>;
|
|
8
|
+
isEdit: import("vue").ComputedRef<boolean>;
|
|
9
|
+
isAdd: import("vue").ComputedRef<boolean>;
|
|
5
10
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { useRouter } from 'vue-router';
|
|
1
|
+
import { useRouter, useRoute } from 'vue-router';
|
|
2
|
+
import { computed } from 'vue';
|
|
2
3
|
import * as qs from 'qs';
|
|
3
4
|
|
|
4
5
|
const useNavigation = () => {
|
|
@@ -59,9 +60,20 @@ const useNavigation = () => {
|
|
|
59
60
|
window.parent?.closeTag?.(currentTag);
|
|
60
61
|
window.parent?.openMenuSelect?.(preTag);
|
|
61
62
|
};
|
|
63
|
+
const mode = computed(() => {
|
|
64
|
+
const { query } = useRoute();
|
|
65
|
+
return query.mode;
|
|
66
|
+
});
|
|
67
|
+
const isBrowse = computed(() => mode.value === "browse");
|
|
68
|
+
const isEdit = computed(() => mode.value === "edit");
|
|
69
|
+
const isAdd = computed(() => mode.value === "add");
|
|
62
70
|
return {
|
|
63
71
|
$goto,
|
|
64
|
-
$closeTag
|
|
72
|
+
$closeTag,
|
|
73
|
+
mode,
|
|
74
|
+
isBrowse,
|
|
75
|
+
isEdit,
|
|
76
|
+
isAdd
|
|
65
77
|
};
|
|
66
78
|
};
|
|
67
79
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-navigation.mjs","sources":["../../../../packages/hooks/use-navigation.ts"],"sourcesContent":["import { useRouter } from 'vue-router'\nimport type { NavigationConfig } from '@el-plus/utils'\nimport * as qs from 'qs'\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\n return {\n $goto,\n $closeTag,\n }\n}\n"],"names":["routes"],"mappings":"
|
|
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 const { query } = useRoute()\n return 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"],"mappings":"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"}
|
package/es/index.mjs
CHANGED
|
@@ -25,6 +25,8 @@ export { datePickerRangeEmits, datePickerRangeProps } from './components/date-pi
|
|
|
25
25
|
export { EpDatePickerRange } from './components/date-picker-range/index.mjs';
|
|
26
26
|
export { customColumnEmits, customColumnProps } from './components/custom-column/src/custom-column.mjs';
|
|
27
27
|
export { EpCustomColumn } from './components/custom-column/index.mjs';
|
|
28
|
+
export { linkProps } from './components/link/src/link.mjs';
|
|
29
|
+
export { EpLink } from './components/link/index.mjs';
|
|
28
30
|
export { useRequest } from './hooks/use-request.mjs';
|
|
29
31
|
export { useTemplatePromise } from './hooks/use-template-promise.mjs';
|
|
30
32
|
export { useDialog } from './hooks/dialog/use-dialog.mjs';
|
package/es/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../packages/el-plus/index.ts"],"sourcesContent":["import type { App, Plugin } from 'vue'\nimport components from './components'\nimport { version } from './package.json'\nimport * as plugins from './plugins'\n// import type { RouteRecordRaw } from 'vue-router'\n\nconst INSTALLED_KEY = Symbol('INSTALLED_KEY')\nconst provideGlobalConfig = (config, app) => {}\nexport type EpOptions = {\n // routes?: RouteRecordRaw\n}\nexport const install = (app: App, options?: EpOptions) => {\n if (app[INSTALLED_KEY]) return // 防止多次use导致重复安装注册,控制台警告\n app[INSTALLED_KEY] = true\n components.forEach((c) => app.use(c))\n Object.values(plugins).forEach((p) => app.use(p))\n if (options) {\n provideGlobalConfig(options, app)\n }\n}\n\nconst plugin: Plugin & { version: string } = {\n install,\n version,\n}\nexport default plugin\nexport * from '@el-plus/components/index'\nexport * from '@el-plus/hooks'\nexport * from '@el-plus/directives'\n"],"names":["plugins"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../packages/el-plus/index.ts"],"sourcesContent":["import type { App, Plugin } from 'vue'\nimport components from './components'\nimport { version } from './package.json'\nimport * as plugins from './plugins'\n// import type { RouteRecordRaw } from 'vue-router'\n\nconst INSTALLED_KEY = Symbol('INSTALLED_KEY')\nconst provideGlobalConfig = (config, app) => {}\nexport type EpOptions = {\n // routes?: RouteRecordRaw\n}\nexport const install = (app: App, options?: EpOptions) => {\n if (app[INSTALLED_KEY]) return // 防止多次use导致重复安装注册,控制台警告\n app[INSTALLED_KEY] = true\n components.forEach((c) => app.use(c))\n Object.values(plugins).forEach((p) => app.use(p))\n if (options) {\n provideGlobalConfig(options, app)\n }\n}\n\nconst plugin: Plugin & { version: string } = {\n install,\n version,\n}\nexport default plugin\nexport * from '@el-plus/components/index'\nexport * from '@el-plus/hooks'\nexport * from '@el-plus/directives'\n"],"names":["plugins"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM,aAAA,0BAAuB,eAAe,CAAA;AAKrC,MAAM,OAAA,GAAU,CAAC,GAAA,EAAU,OAAA,KAAwB;AACxD,EAAA,IAAI,GAAA,CAAI,aAAa,CAAA,EAAG;AACxB,EAAA,GAAA,CAAI,aAAa,CAAA,GAAI,IAAA;AACrB,EAAA,UAAA,CAAW,QAAQ,CAAC,CAAA,KAAM,GAAA,CAAI,GAAA,CAAI,CAAC,CAAC,CAAA;AACpC,EAAA,MAAA,CAAO,MAAA,CAAOA,KAAO,CAAA,CAAE,OAAA,CAAQ,CAAC,CAAA,KAAM,GAAA,CAAI,GAAA,CAAI,CAAC,CAAC,CAAA;AAIlD;AAEA,MAAM,MAAA,GAAuC;AAAA,EAC3C,OAAA;AAAA,EACA;AACF;;;;"}
|
package/es/package.json.mjs
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare function downloadFile({ api, blob, data, src, fileName, config, }: {
|
|
2
|
+
api?: string;
|
|
3
|
+
blob?: boolean;
|
|
4
|
+
data?: Record<string, any>;
|
|
5
|
+
src?: string;
|
|
6
|
+
fileName?: string;
|
|
7
|
+
config?: Record<string, any>;
|
|
8
|
+
}): Promise<void>;
|
|
9
|
+
interface ImportFileOptions {
|
|
10
|
+
accept?: string;
|
|
11
|
+
multiple?: boolean;
|
|
12
|
+
fieldName?: string;
|
|
13
|
+
api?: string;
|
|
14
|
+
failedFileName?: string;
|
|
15
|
+
extraData?: Record<string, any>;
|
|
16
|
+
}
|
|
17
|
+
export declare const importFile: ({ accept, multiple, fieldName, failedFileName, extraData, api, }: ImportFileOptions) => Promise<unknown>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { http } from './http/index.mjs';
|
|
2
|
+
import { ElMessage, ElMessageBox } from 'element-plus';
|
|
3
|
+
import { getEnv } from './env.mjs';
|
|
4
|
+
|
|
5
|
+
const downloadSrc = ({
|
|
6
|
+
src,
|
|
7
|
+
fileName,
|
|
8
|
+
blob
|
|
9
|
+
}) => {
|
|
10
|
+
if (src) {
|
|
11
|
+
fileName = fileName || src.split("/")[src.split("/").length - 1];
|
|
12
|
+
const a = document.createElement("a");
|
|
13
|
+
a.style.display = "none";
|
|
14
|
+
document.body.appendChild(a);
|
|
15
|
+
const event = new MouseEvent("click");
|
|
16
|
+
a.download = fileName;
|
|
17
|
+
a.href = blob ? src : src.indexOf("hongxinshop.com") > -1 ? src : `${getEnv() === "local" ? "//sit-hxjf.hongxinshop.com" : ""}/image/${src}`;
|
|
18
|
+
a.target = "_blank";
|
|
19
|
+
a.dispatchEvent(event);
|
|
20
|
+
document.body.removeChild(a);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
async function downloadFile({
|
|
24
|
+
api = "",
|
|
25
|
+
blob,
|
|
26
|
+
data = {},
|
|
27
|
+
src,
|
|
28
|
+
fileName = "",
|
|
29
|
+
config = {}
|
|
30
|
+
}) {
|
|
31
|
+
if (src) {
|
|
32
|
+
downloadSrc({ src, fileName });
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
http.request(api, {
|
|
36
|
+
method: config.method || "post",
|
|
37
|
+
data,
|
|
38
|
+
loading: true,
|
|
39
|
+
responseType: blob ? "blob" : void 0,
|
|
40
|
+
responseReturn: "raw",
|
|
41
|
+
...config
|
|
42
|
+
}).then((res) => {
|
|
43
|
+
const { headers } = res;
|
|
44
|
+
if (!res.data.success) {
|
|
45
|
+
return ElMessage.error(res.data.msg);
|
|
46
|
+
}
|
|
47
|
+
const data2 = res.data?.data || res.data?.data?.url || "";
|
|
48
|
+
const lowerHeaders = {};
|
|
49
|
+
for (const key in headers) {
|
|
50
|
+
lowerHeaders[key.toLowerCase()] = headers[key];
|
|
51
|
+
}
|
|
52
|
+
let src2 = "";
|
|
53
|
+
if (blob) {
|
|
54
|
+
const contentDisposition = lowerHeaders["content-disposition"] || "";
|
|
55
|
+
fileName = fileName || decodeURIComponent(contentDisposition.split("filename=")[1]);
|
|
56
|
+
const blob2 = new Blob([data2], {
|
|
57
|
+
type: headers["content-type"]
|
|
58
|
+
});
|
|
59
|
+
src2 = window.URL.createObjectURL(blob2);
|
|
60
|
+
setTimeout(() => window.URL.revokeObjectURL(src2), 100);
|
|
61
|
+
} else {
|
|
62
|
+
src2 = data2;
|
|
63
|
+
}
|
|
64
|
+
downloadSrc({ src: src2, fileName, blob });
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
const importFile = async ({
|
|
68
|
+
accept = "*",
|
|
69
|
+
multiple = false,
|
|
70
|
+
fieldName = "file",
|
|
71
|
+
failedFileName = "",
|
|
72
|
+
extraData = {},
|
|
73
|
+
api = ""
|
|
74
|
+
}) => {
|
|
75
|
+
return new Promise((resolve, reject) => {
|
|
76
|
+
const input = document.createElement("input");
|
|
77
|
+
input.type = "file";
|
|
78
|
+
input.accept = accept;
|
|
79
|
+
input.multiple = multiple;
|
|
80
|
+
const formData = new FormData();
|
|
81
|
+
Object.keys(extraData).forEach((key) => {
|
|
82
|
+
formData.append(key, extraData[key]);
|
|
83
|
+
});
|
|
84
|
+
input.onchange = async (event) => {
|
|
85
|
+
const target = event.target;
|
|
86
|
+
const files = target.files;
|
|
87
|
+
if (files && files.length > 0) {
|
|
88
|
+
if (!multiple) {
|
|
89
|
+
formData.append(fieldName, files[0]);
|
|
90
|
+
} else {
|
|
91
|
+
Array.from(files).forEach((file, index) => {
|
|
92
|
+
formData.append(`${fieldName}${index}`, file);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
try {
|
|
96
|
+
const { data } = await http.request(api, {
|
|
97
|
+
method: "post",
|
|
98
|
+
data: formData,
|
|
99
|
+
loading: true,
|
|
100
|
+
responseReturn: "raw",
|
|
101
|
+
transformRequest: [
|
|
102
|
+
function(data2) {
|
|
103
|
+
return data2;
|
|
104
|
+
}
|
|
105
|
+
]
|
|
106
|
+
});
|
|
107
|
+
if (data.success) {
|
|
108
|
+
return resolve(data.data);
|
|
109
|
+
}
|
|
110
|
+
if (data.code === -2) {
|
|
111
|
+
const fileName = failedFileName || data.data.split("/")[data.data.split("/").length - 1];
|
|
112
|
+
const url = `${window.location.origin}/image/${data.data}`;
|
|
113
|
+
const failedHtml = `<div style="word-break: break-all;">\u5931\u8D25\u8BE6\u60C5\uFF1A<a style="color:#409EFF;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap" title="${url}" href="${url}" download="${fileName}">${url}</a></div>`;
|
|
114
|
+
ElMessageBox.alert(failedHtml, "\u63D0\u793A", {
|
|
115
|
+
confirmButtonText: "\u786E\u5B9A",
|
|
116
|
+
type: "error",
|
|
117
|
+
dangerouslyUseHTMLString: true
|
|
118
|
+
});
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
return ElMessage.error(data.msg);
|
|
122
|
+
} catch (error) {
|
|
123
|
+
console.error(error);
|
|
124
|
+
}
|
|
125
|
+
input.onchange = null;
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
input.click();
|
|
129
|
+
});
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
export { downloadFile, importFile };
|
|
133
|
+
//# sourceMappingURL=file.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.mjs","sources":["../../../../packages/utils/file.ts"],"sourcesContent":["import { http, type AxiosResponse } from './http'\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport { getEnv } from './env'\nconst downloadSrc = ({\n src,\n fileName,\n blob,\n}: {\n src: string\n fileName: string\n blob?: boolean\n}) => {\n if (src) {\n fileName = fileName || src.split('/')[src.split('/').length - 1]\n const a = document.createElement('a')\n a.style.display = 'none'\n document.body.appendChild(a)\n const event = new MouseEvent('click')\n a.download = fileName\n a.href = blob\n ? src\n : src.indexOf('hongxinshop.com') > -1\n ? src\n : `${getEnv() === 'local' ? '//sit-hxjf.hongxinshop.com' : ''}/image/${src}`\n\n a.target = '_blank'\n a.dispatchEvent(event)\n document.body.removeChild(a)\n }\n}\n\n// 下载文件\nexport async function downloadFile({\n api = '',\n blob,\n data = {},\n src,\n fileName = '',\n config = {},\n}: {\n api?: string\n blob?: boolean\n data?: Record<string, any>\n src?: string\n fileName?: string\n config?: Record<string, any>\n}) {\n if (src) {\n downloadSrc({ src, fileName })\n return\n }\n http\n .request<any, AxiosResponse>(api, {\n method: config.method || 'post',\n data,\n loading: true,\n responseType: blob ? 'blob' : undefined,\n responseReturn: 'raw',\n ...config,\n })\n .then((res) => {\n const { headers } = res\n if (!res.data.success) {\n return ElMessage.error(res.data.msg)\n }\n const data = res.data?.data || res.data?.data?.url || ''\n const lowerHeaders = {}\n for (const key in headers) {\n lowerHeaders[key.toLowerCase()] = headers[key]\n }\n let src = ''\n if (blob) {\n const contentDisposition = lowerHeaders['content-disposition'] || ''\n fileName =\n fileName ||\n decodeURIComponent(contentDisposition.split('filename=')[1])\n const blob = new Blob([data], {\n type: headers['content-type'],\n })\n src = window.URL.createObjectURL(blob)\n setTimeout(() => window.URL.revokeObjectURL(src), 100) // 释放内存\n } else {\n src = data\n }\n downloadSrc({ src, fileName, blob })\n })\n}\n\n// 导入文件\ninterface ImportFileOptions {\n accept?: string\n multiple?: boolean\n fieldName?: string\n api?: string\n failedFileName?: string // 导入失败时提示的文件名\n extraData?: Record<string, any> // 随文件一同发送的其他表单数据\n}\nexport const importFile = async ({\n accept = '*',\n multiple = false,\n fieldName = 'file',\n failedFileName = '',\n extraData = {},\n api = '',\n}: ImportFileOptions) => {\n return new Promise((resolve, reject) => {\n const input = document.createElement('input')\n input.type = 'file'\n input.accept = accept\n input.multiple = multiple\n const formData = new FormData()\n Object.keys(extraData).forEach((key) => {\n formData.append(key, extraData[key])\n })\n input.onchange = async (event: Event) => {\n const target = event.target as HTMLInputElement\n const files = target.files\n if (files && files.length > 0) {\n if (!multiple) {\n formData.append(fieldName, files[0])\n } else {\n Array.from(files).forEach((file, index) => {\n formData.append(`${fieldName}${index}`, file)\n })\n }\n try {\n const { data } = await http.request<any, AxiosResponse>(api, {\n method: 'post',\n data: formData,\n loading: true,\n responseReturn: 'raw',\n transformRequest: [\n function (data) {\n return data\n },\n ],\n })\n if (data.success) {\n return resolve(data.data)\n }\n if (data.code === -2) {\n const fileName =\n failedFileName ||\n data.data.split('/')[data.data.split('/').length - 1]\n const url = `${window.location.origin}/image/${data.data}`\n const failedHtml = `<div style=\"word-break: break-all;\">失败详情:<a style=\"color:#409EFF;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap\" title=\"${url}\" href=\"${url}\" download=\"${fileName}\">${url}</a></div>`\n ElMessageBox.alert(failedHtml, '提示', {\n confirmButtonText: '确定',\n type: 'error',\n dangerouslyUseHTMLString: true,\n })\n return\n }\n return ElMessage.error(data.msg)\n } catch (error) {\n console.error(error)\n }\n input.onchange = null\n }\n }\n input.click()\n })\n}\n"],"names":["data","src","blob"],"mappings":"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"}
|
|
@@ -35,4 +35,5 @@ interface HttpSuccessResponse<T = any> extends HttpResponse<T> {
|
|
|
35
35
|
message: 'success';
|
|
36
36
|
success: true;
|
|
37
37
|
}
|
|
38
|
+
export type { AxiosResponse } from 'axios';
|
|
38
39
|
export type { HttpResponse, HttpSuccessResponse, MakeErrorMessageFn, RequestClientConfig, RequestClientOptions, RequestContentType, RequestInterceptorConfig, RequestResponse, ResponseInterceptorConfig, SseRequestOptions, };
|
package/global.d.ts
CHANGED
|
@@ -5,14 +5,16 @@ declare module 'vue' {
|
|
|
5
5
|
export interface GlobalComponents {
|
|
6
6
|
// 接口自动合并 GlobalComponents for Volar
|
|
7
7
|
EpButtons: typeof import('el-plus')['EpButtons']
|
|
8
|
+
EpCustomColumn: typeof import('el-plus')['EpCustomColumn']
|
|
9
|
+
EpDatePickerRange: typeof import('el-plus')['EpDatePickerRange']
|
|
8
10
|
EpForm: typeof import('el-plus')['EpForm']
|
|
11
|
+
EpHeader: typeof import('el-plus')['EpHeader']
|
|
9
12
|
EpInput: typeof import('el-plus')['EpInput']
|
|
10
|
-
|
|
11
|
-
EpSelect: typeof import('el-plus')['EpSelect']
|
|
13
|
+
EpLink: typeof import('el-plus')['EpLink']
|
|
12
14
|
EpSearchListPage: typeof import('el-plus')['EpSearchListPage']
|
|
15
|
+
EpSelect: typeof import('el-plus')['EpSelect']
|
|
16
|
+
EpTable: typeof import('el-plus')['EpTable']
|
|
13
17
|
EpTitle: typeof import('el-plus')['EpTitle']
|
|
14
|
-
EpHeader: typeof import('el-plus')['EpHeader']
|
|
15
|
-
EpDatePickerRange: typeof import('el-plus')['EpDatePickerRange']
|
|
16
18
|
}
|
|
17
19
|
}
|
|
18
20
|
|
|
@@ -276,6 +276,7 @@ export declare const EpDatePickerRange: {
|
|
|
276
276
|
fallbackPlacements: import("element-plus").Placement[];
|
|
277
277
|
popperOptions: Partial<import("element-plus").Options>;
|
|
278
278
|
showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
279
|
+
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
279
280
|
placeholder: string;
|
|
280
281
|
readonly: boolean;
|
|
281
282
|
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>;
|
|
@@ -293,7 +294,6 @@ export declare const EpDatePickerRange: {
|
|
|
293
294
|
showWeekNumber: boolean;
|
|
294
295
|
arrowControl: boolean;
|
|
295
296
|
unlinkPanels: boolean;
|
|
296
|
-
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
297
297
|
isRange: boolean;
|
|
298
298
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
299
299
|
P: {};
|
|
@@ -575,6 +575,7 @@ export declare const EpDatePickerRange: {
|
|
|
575
575
|
fallbackPlacements: import("element-plus").Placement[];
|
|
576
576
|
popperOptions: Partial<import("element-plus").Options>;
|
|
577
577
|
showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
578
|
+
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
578
579
|
placeholder: string;
|
|
579
580
|
readonly: boolean;
|
|
580
581
|
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>;
|
|
@@ -592,7 +593,6 @@ export declare const EpDatePickerRange: {
|
|
|
592
593
|
showWeekNumber: boolean;
|
|
593
594
|
arrowControl: boolean;
|
|
594
595
|
unlinkPanels: boolean;
|
|
595
|
-
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
596
596
|
isRange: boolean;
|
|
597
597
|
}>;
|
|
598
598
|
__isFragment?: never;
|
|
@@ -875,6 +875,7 @@ export declare const EpDatePickerRange: {
|
|
|
875
875
|
fallbackPlacements: import("element-plus").Placement[];
|
|
876
876
|
popperOptions: Partial<import("element-plus").Options>;
|
|
877
877
|
showFooter: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
878
|
+
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
878
879
|
placeholder: string;
|
|
879
880
|
readonly: boolean;
|
|
880
881
|
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>;
|
|
@@ -892,7 +893,6 @@ export declare const EpDatePickerRange: {
|
|
|
892
893
|
showWeekNumber: boolean;
|
|
893
894
|
arrowControl: boolean;
|
|
894
895
|
unlinkPanels: boolean;
|
|
895
|
-
editable: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
896
896
|
isRange: boolean;
|
|
897
897
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
|
|
898
898
|
export default EpDatePickerRange;
|
|
@@ -534,6 +534,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
534
534
|
fallbackPlacements: import("element-plus").Placement[];
|
|
535
535
|
popperOptions: Partial<import("element-plus").Options>;
|
|
536
536
|
showFooter: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
537
|
+
editable: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
537
538
|
placeholder: string;
|
|
538
539
|
readonly: boolean;
|
|
539
540
|
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>;
|
|
@@ -551,7 +552,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
551
552
|
showWeekNumber: boolean;
|
|
552
553
|
arrowControl: boolean;
|
|
553
554
|
unlinkPanels: boolean;
|
|
554
|
-
editable: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
555
555
|
isRange: boolean;
|
|
556
556
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
557
557
|
declare const _default: typeof __VLS_export;
|
|
@@ -21,9 +21,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
21
21
|
};
|
|
22
22
|
readonly type: {
|
|
23
23
|
type: StringConstructor;
|
|
24
|
+
default: string;
|
|
24
25
|
};
|
|
25
26
|
readonly col: NumberConstructor;
|
|
26
|
-
readonly render: import("vue").PropType<() => import("vue").VNode>;
|
|
27
|
+
readonly render: import("vue").PropType<(...args: any[]) => import("vue").VNode>;
|
|
27
28
|
readonly labelRender: import("vue").PropType<({ label }: {
|
|
28
29
|
label: string | undefined;
|
|
29
30
|
}) => import("vue").VNode>;
|
|
@@ -82,9 +83,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
82
83
|
};
|
|
83
84
|
readonly type: {
|
|
84
85
|
type: StringConstructor;
|
|
86
|
+
default: string;
|
|
85
87
|
};
|
|
86
88
|
readonly col: NumberConstructor;
|
|
87
|
-
readonly render: import("vue").PropType<() => import("vue").VNode>;
|
|
89
|
+
readonly render: import("vue").PropType<(...args: any[]) => import("vue").VNode>;
|
|
88
90
|
readonly labelRender: import("vue").PropType<({ label }: {
|
|
89
91
|
label: string | undefined;
|
|
90
92
|
}) => import("vue").VNode>;
|
|
@@ -121,6 +123,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
121
123
|
__epPropKey: true;
|
|
122
124
|
};
|
|
123
125
|
}>> & Readonly<{}>, {
|
|
126
|
+
readonly type: string;
|
|
124
127
|
readonly required: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
125
128
|
readonly isShowLabel: boolean;
|
|
126
129
|
readonly hideRequiredAsterisk: boolean;
|
|
@@ -23,9 +23,10 @@ export declare const formItemProps: {
|
|
|
23
23
|
};
|
|
24
24
|
readonly type: {
|
|
25
25
|
type: StringConstructor;
|
|
26
|
+
default: string;
|
|
26
27
|
};
|
|
27
28
|
readonly col: NumberConstructor;
|
|
28
|
-
readonly render: PropType<() => VNode>;
|
|
29
|
+
readonly render: PropType<(...args: any[]) => VNode>;
|
|
29
30
|
readonly labelRender: PropType<({ label }: {
|
|
30
31
|
label: string | undefined;
|
|
31
32
|
}) => VNode>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-item.js","sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { formItemProps as elFormItemProps } from 'element-plus'\nimport { visibleProps, disabledProps } from '@el-plus/utils/props'\nimport { CSSProperties } from 'vue'\nimport type {\n VNode,\n PropType,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n} from 'vue'\nconst expandFormItemProps = {\n type: {\n type: String,\n
|
|
1
|
+
{"version":3,"file":"form-item.js","sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { formItemProps as elFormItemProps } from 'element-plus'\nimport { visibleProps, disabledProps } from '@el-plus/utils/props'\nimport { CSSProperties } from 'vue'\nimport type {\n VNode,\n PropType,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n} from 'vue'\nconst expandFormItemProps = {\n type: {\n type: String,\n default: 'EpInput',\n },\n col: Number,\n render: Function as PropType<(...args: any[]) => VNode>,\n labelRender: Function as PropType<\n ({ label }: { label: string | undefined }) => VNode\n >,\n props: Object,\n ...visibleProps,\n ...disabledProps,\n class: String,\n style: {\n type: [String, Object] as PropType<string | CSSProperties>,\n },\n isShowLabel: {\n type: Boolean,\n default: true,\n },\n hideRequiredAsterisk: Boolean,\n tableProp: String, // 用于table里的表单需要绑定的prop\n}\nexport const formItemProps = {\n ...elFormItemProps,\n ...expandFormItemProps,\n prop: String,\n} as const\nexport type FormItemProps = ExtractPublicPropTypes<typeof formItemProps>\nexport const expandFormItemPropsKeys = Object.keys(expandFormItemProps)\n"],"names":["visibleProps","disabledProps","elFormItemProps"],"mappings":";;;;;AASA,MAAM,mBAAA,GAAsB;AAAA,EAC1B,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,GAAA,EAAK,MAAA;AAAA,EACL,MAAA,EAAQ,QAAA;AAAA,EACR,WAAA,EAAa,QAAA;AAAA,EAGb,KAAA,EAAO,MAAA;AAAA,EACP,GAAGA,kBAAA;AAAA,EACH,GAAGC,mBAAA;AAAA,EACH,KAAA,EAAO,MAAA;AAAA,EACP,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM;AAAA,GACvB;AAAA,EACA,WAAA,EAAa;AAAA,IACX,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,oBAAA,EAAsB,OAAA;AAAA,EACtB,SAAA,EAAW;AAAA;AACb,CAAA;AACO,MAAM,aAAA,GAAgB;AAAA,EAC3B,GAAGC,yBAAA;AAAA,EACH,GAAG,mBAAA;AAAA,EACH,IAAA,EAAM;AACR;AAEO,MAAM,uBAAA,GAA0B,MAAA,CAAO,IAAA,CAAK,mBAAmB;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-form-item.js","sources":["../../../../../../../packages/components/form/src/hooks/use-form-item.tsx"],"sourcesContent":["import { h, resolveComponent, useAttrs, ref } from 'vue'\nimport type { FormItemProps } from '../form-item'\nimport type { FormItemRule } from 'element-plus'\nimport { ElTooltip } from 'element-plus'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nexport const useFormItem = () => {\n return {}\n}\nexport const useFormItemSlots = (props: FormItemProps) => {\n const attrs = useAttrs()\n const { type, label, render, required, labelRender } = props\n const prop = props.tableProp || props.prop\n const { scopedSlots: renderScopedSlots, ...renderProps } = props.props || {}\n const events: Record<string, (...args: any[]) => void> = {}\n for (const key in attrs) {\n if (key.startsWith('on')) {\n events[key] = attrs[key] as (...args: any[]) => void\n }\n }\n\n const formData = attrs['form-data'] as Record<string, unknown>\n const isTipDisabled = ref(true) // 默认禁用提示\n const checkOverflow = (e: MouseEvent) => {\n const el = e.currentTarget as HTMLElement\n isTipDisabled.value = el.scrollWidth <= el.clientWidth\n }\n const scopedSlots = {\n default: () => {\n let disabled = props.disabled\n if (typeof props.disabled === 'function') {\n disabled = props.disabled(formData)\n }\n return type\n ? h(\n resolveComponent(type),\n {\n modelValue: formData[prop as string],\n 'onUpdate:modelValue': (value: unknown) => {\n formData[prop as string] = value\n },\n disabled,\n clearable: true,\n ...renderProps,\n ...events,\n },\n renderScopedSlots,\n )\n : formData[prop as string]\n },\n label: () => {\n return (\n <ElTooltip\n placement=\"top\"\n effect=\"dark\"\n content={label}\n disabled={!props.isShowLabel || isTipDisabled.value}\n >\n <span\n onMouseenter={checkOverflow}\n style=\"display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\"\n >\n {!props.hideRequiredAsterisk && required ? (\n <span style=\"color: var(--el-color-danger);\">*</span>\n ) : null}\n {props.isShowLabel ? <span>{label}</span> : ''}\n </span>\n </ElTooltip>\n )\n },\n }\n\n if (labelRender) {\n scopedSlots.label = () => labelRender({ label })\n }\n if (render) {\n scopedSlots.default = render\n }\n return {\n scopedSlots,\n }\n}\nexport const useFormItemRules = (props: FormItemProps) => {\n const { t } = useLocale()\n const { required, rules, label } = props\n let mergeRules: FormItemRule[] = []\n if (required) {\n const requiredDefault = { required: true }\n mergeRules.push(requiredDefault)\n }\n if (rules) {\n if (Array.isArray(rules)) {\n mergeRules = mergeRules.concat(rules)\n }\n\n if (Object.prototype.toString.call(rules) === '[object Object]') {\n mergeRules.push(rules as FormItemRule)\n }\n }\n\n if (mergeRules) {\n mergeRules.forEach((r) => {\n if (r.required && typeof r.message === 'undefined') {\n r.message = `${label || ''}${t('ep.formItem.required')}`\n }\n })\n }\n return { rules: mergeRules }\n}\n"],"names":["useFormItem","useFormItemSlots","props","attrs","useAttrs","type","label","render","required","labelRender","prop","tableProp","scopedSlots","renderScopedSlots","renderProps","events","key","startsWith","formData","isTipDisabled","ref","checkOverflow","e","el","currentTarget","value","scrollWidth","clientWidth","default","disabled","h","resolveComponent","modelValue","clearable","_createVNode","ElTooltip","isShowLabel","hideRequiredAsterisk","_createTextVNode","useFormItemRules","t","useLocale","rules","mergeRules","requiredDefault","push","Array","isArray","concat","Object","prototype","toString","call","forEach","r","message"],"mappings":";;;;;;AAKO,MAAMA,cAAcA,MAAM;AAC/B,EAAA,OAAO,EAAC;AACV;AACO,MAAMC,mBAAoBC,CAAAA,KAAAA,KAAyB;AACxD,EAAA,MAAMC,QAAQC,YAAAA,EAAS;AACvB,EAAA,MAAM;AAAA,IAAEC,IAAAA;AAAAA,IAAMC,KAAAA;AAAAA,IAAOC,MAAAA;AAAAA,IAAQC,QAAAA;AAAAA,IAAUC;AAAAA,GAAY,GAAIP,KAAAA;AACvD,EAAA,MAAMQ,IAAAA,GAAOR,KAAAA,CAAMS,SAAAA,IAAaT,KAAAA,CAAMQ,IAAAA;AACtC,EAAA,MAAM;AAAA,IAAEE,WAAAA,EAAaC,iBAAAA;AAAAA,IAAmB,GAAGC;AAAAA,GAAY,GAAIZ,KAAAA,CAAMA,KAAAA,IAAS,EAAC;AAC3E,EAAA,MAAMa,SAAmD,EAAC;AAC1D,EAAA,KAAA,MAAWC,OAAOb,KAAAA,EAAO;AACvB,IAAA,IAAIa,GAAAA,CAAIC,UAAAA,CAAW,IAAI,CAAA,EAAG;AACxBF,MAAAA,MAAAA,CAAOC,GAAG,CAAA,GAAIb,KAAAA,CAAMa,GAAG,CAAA;AAAA,IACzB;AAAA,EACF;AAEA,EAAA,MAAME,QAAAA,GAAWf,MAAM,WAAW,CAAA;AAClC,EAAA,MAAMgB,aAAAA,GAAgBC,QAAI,IAAI,CAAA;AAC9B,EAAA,MAAMC,gBAAiBC,CAAAA,CAAAA,KAAkB;AACvC,IAAA,MAAMC,KAAKD,CAAAA,CAAEE,aAAAA;AACbL,IAAAA,aAAAA,CAAcM,KAAAA,GAAQF,EAAAA,CAAGG,WAAAA,IAAeH,EAAAA,CAAGI,WAAAA;AAAAA,EAC7C,CAAA;AACA,EAAA,MAAMf,WAAAA,GAAc;AAAA,IAClBgB,SAASA,MAAM;AACb,MAAA,IAAIC,WAAW3B,KAAAA,CAAM2B,QAAAA;AACrB,MAAA,IAAI,OAAO3B,KAAAA,CAAM2B,QAAAA,KAAa,UAAA,EAAY;AACxCA,QAAAA,QAAAA,GAAW3B,KAAAA,CAAM2B,SAASX,QAAQ,CAAA;AAAA,MACpC;AACA,MAAA,OAAOb,IAAAA,GACHyB,KAAAA,CACEC,oBAAAA,CAAiB1B,IAAI,CAAA,EACrB;AAAA,QACE2B,UAAAA,EAAYd,SAASR,IAAI,CAAA;AAAA,QACzB,uBAAwBe,CAAAA,KAAAA,KAAmB;AACzCP,UAAAA,QAAAA,CAASR,IAAI,CAAA,GAAce,KAAAA;AAAAA,QAC7B,CAAA;AAAA,QACAI,QAAAA;AAAAA,QACAI,SAAAA,EAAW,IAAA;AAAA,QACX,GAAGnB,WAAAA;AAAAA,QACH,GAAGC;AAAAA,OACL,EACAF,iBACF,CAAA,GACAK,QAAAA,CAASR,IAAI,CAAA;AAAA,IACnB,CAAA;AAAA,IACAJ,OAAOA,MAAM;AACX,MAAA,OAAA4B,gBAAAC,qBAAAA,EAAA;AAAA,QAAA,WAAA,EAAA,KAAA;AAAA,QAAA,QAAA,EAAA,MAAA;AAAA,QAAA,SAAA,EAIa7B,KAAAA;AAAAA,QAAK,UAAA,EACJ,CAACJ,KAAAA,CAAMkC,WAAAA,IAAejB,aAAAA,CAAcM;AAAAA,OAAK,EAAA;AAAA,QAAAG,OAAAA,EAAAA,MAAA,CAAAM,eAAAA,CAAA,MAAA,EAAA;AAAA,UAAA,cAAA,EAGnCb,aAAAA;AAAAA,UAAa,OAAA,EAAA;AAAA,WAAA,CAG1B,CAACnB,MAAMmC,oBAAAA,IAAwB7B,QAAAA,GAAQ0B,gBAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EAAA;AAAA,WAAA,CAAAI,mBAAAA,CAAA,GAAA,CAAA,CAAA,IAEpC,IAAA,EACHpC,KAAAA,CAAMkC,cAAWF,eAAAA,CAAA,MAAA,EAAA,MAAA,CAAU5B,KAAK,CAAA,CAAA,GAAW,EAAE,CAAA,CAAA;AAAA,OAAA,CAAA;AAAA,IAItD;AAAA,GACF;AAEA,EAAA,IAAIG,WAAAA,EAAa;AACfG,IAAAA,WAAAA,CAAYN,KAAAA,GAAQ,MAAMG,WAAAA,CAAY;AAAA,MAAEH;AAAAA,KAAO,CAAA;AAAA,EACjD;AACA,EAAA,IAAIC,MAAAA,EAAQ;AACVK,IAAAA,WAAAA,CAAYgB,
|
|
1
|
+
{"version":3,"file":"use-form-item.js","sources":["../../../../../../../packages/components/form/src/hooks/use-form-item.tsx"],"sourcesContent":["import { h, resolveComponent, useAttrs, ref } from 'vue'\nimport type { FormItemProps } from '../form-item'\nimport type { FormItemRule } from 'element-plus'\nimport { ElTooltip } from 'element-plus'\nimport { useLocale } from '@el-plus/hooks/use-locale'\nexport const useFormItem = () => {\n return {}\n}\nexport const useFormItemSlots = (props: FormItemProps) => {\n const attrs = useAttrs()\n const { type, label, render, required, labelRender } = props\n const prop = props.tableProp || props.prop\n const { scopedSlots: renderScopedSlots, ...renderProps } = props.props || {}\n const events: Record<string, (...args: any[]) => void> = {}\n for (const key in attrs) {\n if (key.startsWith('on')) {\n events[key] = attrs[key] as (...args: any[]) => void\n }\n }\n\n const formData = attrs['form-data'] as Record<string, unknown>\n const isTipDisabled = ref(true) // 默认禁用提示\n const checkOverflow = (e: MouseEvent) => {\n const el = e.currentTarget as HTMLElement\n isTipDisabled.value = el.scrollWidth <= el.clientWidth\n }\n const scopedSlots = {\n default: () => {\n let disabled = props.disabled\n if (typeof props.disabled === 'function') {\n disabled = props.disabled(formData)\n }\n return type\n ? h(\n resolveComponent(type),\n {\n modelValue: formData[prop as string],\n 'onUpdate:modelValue': (value: unknown) => {\n formData[prop as string] = value\n },\n disabled,\n clearable: true,\n ...renderProps,\n ...events,\n },\n renderScopedSlots,\n )\n : formData[prop as string]\n },\n label: () => {\n return (\n <ElTooltip\n placement=\"top\"\n effect=\"dark\"\n content={label}\n disabled={!props.isShowLabel || isTipDisabled.value}\n >\n <span\n onMouseenter={checkOverflow}\n style=\"display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\"\n >\n {!props.hideRequiredAsterisk && required ? (\n <span style=\"color: var(--el-color-danger);\">*</span>\n ) : null}\n {props.isShowLabel ? <span>{label}</span> : ''}\n </span>\n </ElTooltip>\n )\n },\n }\n\n if (labelRender) {\n scopedSlots.label = () => labelRender({ label })\n }\n if (render) {\n scopedSlots.default = () => {\n return render(attrs['table-scope'])\n }\n }\n return {\n scopedSlots,\n }\n}\nexport const useFormItemRules = (props: FormItemProps) => {\n const { t } = useLocale()\n const { required, rules, label } = props\n let mergeRules: FormItemRule[] = []\n if (required) {\n const requiredDefault = { required: true }\n mergeRules.push(requiredDefault)\n }\n if (rules) {\n if (Array.isArray(rules)) {\n mergeRules = mergeRules.concat(rules)\n }\n\n if (Object.prototype.toString.call(rules) === '[object Object]') {\n mergeRules.push(rules as FormItemRule)\n }\n }\n\n if (mergeRules) {\n mergeRules.forEach((r) => {\n if (r.required && typeof r.message === 'undefined') {\n r.message = `${label || ''}${t('ep.formItem.required')}`\n }\n })\n }\n return { rules: mergeRules }\n}\n"],"names":["useFormItem","useFormItemSlots","props","attrs","useAttrs","type","label","render","required","labelRender","prop","tableProp","scopedSlots","renderScopedSlots","renderProps","events","key","startsWith","formData","isTipDisabled","ref","checkOverflow","e","el","currentTarget","value","scrollWidth","clientWidth","default","disabled","h","resolveComponent","modelValue","clearable","_createVNode","ElTooltip","isShowLabel","hideRequiredAsterisk","_createTextVNode","useFormItemRules","t","useLocale","rules","mergeRules","requiredDefault","push","Array","isArray","concat","Object","prototype","toString","call","forEach","r","message"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const EpHeader: {
|
|
2
2
|
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
|
|
3
3
|
readonly mode: {
|
|
4
|
-
readonly type: import("vue").PropType<import("
|
|
4
|
+
readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
|
|
5
5
|
readonly default: "add";
|
|
6
6
|
};
|
|
7
7
|
readonly allowBack: {
|
|
@@ -31,7 +31,7 @@ export declare const EpHeader: {
|
|
|
31
31
|
};
|
|
32
32
|
readonly workflowId: StringConstructor;
|
|
33
33
|
}>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
|
|
34
|
-
readonly mode: import("
|
|
34
|
+
readonly mode: import("packages/hooks/use-navigation.js").PageMode;
|
|
35
35
|
readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
36
36
|
name: string;
|
|
37
37
|
prop: string;
|
|
@@ -56,7 +56,7 @@ export declare const EpHeader: {
|
|
|
56
56
|
Defaults: {};
|
|
57
57
|
}, Readonly<import("vue").ExtractPropTypes<{
|
|
58
58
|
readonly mode: {
|
|
59
|
-
readonly type: import("vue").PropType<import("
|
|
59
|
+
readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
|
|
60
60
|
readonly default: "add";
|
|
61
61
|
};
|
|
62
62
|
readonly allowBack: {
|
|
@@ -86,7 +86,7 @@ export declare const EpHeader: {
|
|
|
86
86
|
};
|
|
87
87
|
readonly workflowId: StringConstructor;
|
|
88
88
|
}>> & Readonly<{}>, {}, {}, {}, {}, {
|
|
89
|
-
readonly mode: import("
|
|
89
|
+
readonly mode: import("packages/hooks/use-navigation.js").PageMode;
|
|
90
90
|
readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
91
91
|
name: string;
|
|
92
92
|
prop: string;
|
|
@@ -108,7 +108,7 @@ export declare const EpHeader: {
|
|
|
108
108
|
__isSuspense?: never;
|
|
109
109
|
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
|
|
110
110
|
readonly mode: {
|
|
111
|
-
readonly type: import("vue").PropType<import("
|
|
111
|
+
readonly type: import("vue").PropType<import("packages/hooks/use-navigation.js").PageMode>;
|
|
112
112
|
readonly default: "add";
|
|
113
113
|
};
|
|
114
114
|
readonly allowBack: {
|
|
@@ -126,7 +126,7 @@ export declare const EpHeader: {
|
|
|
126
126
|
};
|
|
127
127
|
readonly workflowId: StringConstructor;
|
|
128
128
|
}>> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
|
|
129
|
-
readonly mode: import("
|
|
129
|
+
readonly mode: import("packages/hooks/use-navigation.js").PageMode;
|
|
130
130
|
readonly buttons: Partial<Omit<import("element-plus").ButtonProps, "disabled"> & {
|
|
131
131
|
name: string;
|
|
132
132
|
prop: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
+
import type { PageMode } from 'el-plus/es/hooks/use-navigation';
|
|
2
3
|
export type defaultButtonsProps = 'modify' | 'save' | 'cancel' | 'refresh' | 'auditLog';
|
|
3
|
-
export type PageMode = 'add' | 'edit' | 'browse';
|
|
4
4
|
export declare const headerProps: {
|
|
5
5
|
readonly mode: {
|
|
6
6
|
readonly type: PropType<PageMode>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.js","sources":["../../../../../../packages/components/header/src/header.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { buttonsProps } from '@el-plus/components/buttons'\nexport type defaultButtonsProps =\n | 'modify'\n | 'save'\n | 'cancel'\n | 'refresh'\n | 'auditLog'\
|
|
1
|
+
{"version":3,"file":"header.js","sources":["../../../../../../packages/components/header/src/header.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { buttonsProps } from '@el-plus/components/buttons'\nimport type { PageMode } from '@el-plus/hooks/use-navigation'\nexport type defaultButtonsProps =\n | 'modify'\n | 'save'\n | 'cancel'\n | 'refresh'\n | 'auditLog'\n\nexport const headerProps = {\n // 页面模式\n mode: {\n type: String as PropType<PageMode>,\n default: 'add',\n },\n allowBack: {\n type: Boolean,\n default: true,\n },\n buttons: {\n ...buttonsProps.list,\n },\n name: String, // 权限前缀\n // 要展示的默认按钮\n defaultButtons: {\n type: Array as PropType<defaultButtonsProps[]>,\n default: () => [],\n },\n // 工作流id\n workflowId: String,\n} as const\nexport type HeaderProps = ExtractPropTypes<typeof headerProps>\n\nexport const headerEmits = {}\nexport type HeaderEmits = typeof headerEmits\n"],"names":["buttonsProps"],"mappings":";;;;AAUO,MAAM,WAAA,GAAc;AAAA;AAAA,EAEzB,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA,EACA,OAAA,EAAS;AAAA,IACP,GAAGA,oBAAA,CAAa;AAAA,GAClB;AAAA,EACA,IAAA,EAAM,MAAA;AAAA;AAAA;AAAA,EAEN,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,KAAA;AAAA,IACN,OAAA,EAAS,MAAM;AAAC,GAClB;AAAA;AAAA,EAEA,UAAA,EAAY;AACd;AAGO,MAAM,cAAc;;;;;"}
|