@robot-admin/naive-ui-components 0.6.4 → 0.6.6
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/dist/C_Breadcrumb-BnOGXsSX.css.map +1 -0
- package/dist/C_Breadcrumb-DKBofJky.css.map +1 -0
- package/dist/C_Breadcrumb.css +16 -3
- package/dist/C_Breadcrumb.js.map +1 -1
- package/dist/C_Breadcrumb2.js +1 -1
- package/dist/C_Breadcrumb2.js.map +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants2.d.ts +3 -3
- package/dist/constants3.d.ts +1 -1
- package/dist/constants4.d.ts +5 -5
- package/dist/constants5.d.ts +2 -2
- package/dist/data.d.ts +1 -1
- package/dist/index11.vue.d.ts +4 -4
- package/dist/index13.vue.d.ts +4 -4
- package/dist/index15.vue.d.ts +3 -3
- package/dist/index17.vue.d.ts +1 -1
- package/dist/index19.vue.d.ts +2 -2
- package/dist/index2.vue.d.ts +3 -3
- package/dist/index3.vue.d.ts +3 -1
- package/dist/index4.vue.d.ts +2 -2
- package/dist/index7.vue.d.ts +3 -3
- package/dist/index8.vue.d.ts +3 -3
- package/dist/index9.vue.d.ts +3 -3
- package/dist/style.css +17 -4
- package/dist/useCalendarEvents.d.ts +2 -2
- package/dist/useCollapsePanel.d.ts +4 -4
- package/dist/useCropperCore.d.ts +5 -5
- package/dist/useDraggableLayout.d.ts +8 -8
- package/dist/useDynamicFormState.d.ts +4 -4
- package/dist/useEdgeInteraction.d.ts +2 -2
- package/dist/useGlobalSearch.d.ts +1 -1
- package/dist/useInfiniteScroll.d.ts +2 -2
- package/dist/useModalEdit.d.ts +2 -2
- package/dist/useQRCode.d.ts +4 -4
- package/dist/useSignatureHistory.d.ts +4 -4
- package/dist/useSplitResize.d.ts +8 -8
- package/dist/useTimeSelection.d.ts +2 -2
- package/dist/useTreeOperations.d.ts +4 -4
- package/dist/useWorkflowValidation.d.ts +1 -1
- package/package.json +1 -1
- package/dist/C_Breadcrumb-D55Jd2CK.css.map +0 -1
- package/dist/C_Breadcrumb-mBL4CWps.css.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"C_Breadcrumb-BnOGXsSX.css","names":[],"sources":["../src/components/C_Breadcrumb/index.vue?vue&type=style&index=0&lang.scss"],"sourcesContent":["/* unplugin-vue-components disabled */.c-breadcrumb {\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n display: flex;\n align-items: center;\n height: 100%;\n}\n.c-breadcrumb__trigger, .c-breadcrumb__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n}\n.c-breadcrumb .c-icon {\n flex-shrink: 0;\n}"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"C_Breadcrumb-DKBofJky.css","names":[],"sources":["../src/components/C_Breadcrumb/index.vue?vue&type=style&index=0&lang.scss"],"sourcesContent":["/* unplugin-vue-components disabled */.c-breadcrumb {\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n display: flex;\n align-items: center;\n height: 100%;\n}\n.c-breadcrumb__trigger, .c-breadcrumb__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n}\n.c-breadcrumb .c-icon {\n flex-shrink: 0;\n}"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
|
package/dist/C_Breadcrumb.css
CHANGED
|
@@ -1,7 +1,20 @@
|
|
|
1
|
-
/* unplugin-vue-components disabled */.c-
|
|
1
|
+
/* unplugin-vue-components disabled */.c-breadcrumb {
|
|
2
|
+
--c-breadcrumb-icon-size: 16px;
|
|
3
|
+
--c-breadcrumb-gap: 4px;
|
|
4
|
+
--c-breadcrumb-font-size: inherit;
|
|
5
|
+
display: flex;
|
|
6
|
+
align-items: center;
|
|
7
|
+
height: 100%;
|
|
8
|
+
}
|
|
9
|
+
.c-breadcrumb__trigger, .c-breadcrumb__link {
|
|
2
10
|
display: inline-flex;
|
|
3
11
|
align-items: center;
|
|
4
|
-
gap:
|
|
12
|
+
gap: var(--c-breadcrumb-gap);
|
|
13
|
+
font-size: var(--c-breadcrumb-font-size);
|
|
14
|
+
line-height: 1;
|
|
15
|
+
}
|
|
16
|
+
.c-breadcrumb .c-icon {
|
|
17
|
+
flex-shrink: 0;
|
|
5
18
|
}
|
|
6
19
|
|
|
7
|
-
/*# sourceMappingURL=C_Breadcrumb-
|
|
20
|
+
/*# sourceMappingURL=C_Breadcrumb-BnOGXsSX.css.map*/
|
package/dist/C_Breadcrumb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"C_Breadcrumb.js","names":["showIcon"],"sources":["../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue"],"sourcesContent":["/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n","/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n","<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n"],"mappings":"+XEqEE,IAAM,EAAQ,EAoBR,EAAO,EAKP,GAAA,EAAA,EAAA,WAAiB,CAEjB,EAAe,GACnB,EAAM,eAAiB,EAAM,eAAe,EAAM,CAAG,EAGjD,GAAA,EAAA,EAAA,cACG,EAAM,QACV,OAAQ,GAAgB,EAAO,MAAM,MAAK,CAC1C,IAAK,IAAiB,CACrB,IAAK,EAAO,KACZ,MAAO,EAAa,EAAO,KAAK,OAAS,GAAc,CACvD,KAAM,EAAO,KAAK,KAClB,SAAU,EAAO,UAAU,OACvB,EAAO,SAAS,IAAK,IAAgB,CACnC,IAAK,EAAM,KACX,MAAO,EAAa,EAAM,MAAM,OAAS,GAAc,CACvD,GAAI,EAAM,UAAU,QAAU,CAC5B,SAAU,EAAM,SAAS,IAAK,IAAqB,CACjD,IAAK,EAAW,KAChB,MAAO,EAAa,EAAW,MAAM,OAAS,GAAc,CAC7D,EAAE,CACJ,CACF,EAAC,CACF,EAAE,CACP,EAAC,CACL,CAEK,GAAA,EAAA,EAAA,cACE,EAAM,OAAS,EAAe,MACtC,CAEM,EAAgB,GAAgB,CACpC,EAAK,SAAU,EAAG,uHArEd,MAhCN,EAgCM,EAAA,EAAA,EAAA,aADU,EAAA,KAAA,2BA5B8B,GAAA,EAAA,EAAA,WAAA,GAAA,EAAA,EAAA,EAAA,oBA2BxB,EAAA,SAAA,MAAA,EAAA,EAAA,YA3BQ,EAAA,OAAhB,EAAM,yCA2BE,EAAA,CA1Bf,IAAK,EAAK,CAAA,2BAiBb,CAdU,EAAK,UAAU,SAAA,EAAA,EAAA,YAAA,EAAA,EAAA,EAAA,aAWX,EAAA,OAVT,QAAS,EAAK,SACd,SAAQ,8BAQH,EAAA,EAAA,EAAA,oBAAA,MANN,EAMM,CAJIA,EAAAA,WAAAA,EAAAA,EAAAA,YAAAA,EAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,OAEN,EAAA,EAAA,CAAA,OADC,KAAM,EAAK,kFACZ,KAAA,EAAA,EAAA,iBACC,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,qEAaV,OAAA,OARL,MAAM,qBACL,QAAK,GAAE,EAAa,EAAK,IAAG,GAGrBA,EAAAA,WAAAA,EAAAA,EAAAA,YAAAA,EAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,OAEN,EAAA,EAAA,CAAA,OADC,KAAM,EAAK,kFACZ,KAAA,EAAA,EAAA,iBACC,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,EAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"C_Breadcrumb.js","names":["iconSize","showIcon"],"sources":["../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue"],"sourcesContent":["/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n","/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n","<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n"],"mappings":"6WE6EE,IAAM,EAAQ,EAuBR,EAAO,EAKP,GAAA,EAAA,EAAA,WAAiB,CAEjB,EAAe,GACnB,EAAM,eAAiB,EAAM,eAAe,EAAM,CAAG,EAGjD,GAAA,EAAA,EAAA,cACG,EAAM,QACV,OAAQ,GAAgB,EAAO,MAAM,MAAK,CAC1C,IAAK,IAAiB,CACrB,IAAK,EAAO,KACZ,MAAO,EAAa,EAAO,KAAK,OAAS,GAAc,CACvD,KAAM,EAAO,KAAK,KAClB,SAAU,EAAO,UAAU,OACvB,EAAO,SAAS,IAAK,IAAgB,CACnC,IAAK,EAAM,KACX,MAAO,EAAa,EAAM,MAAM,OAAS,GAAc,CACvD,GAAI,EAAM,UAAU,QAAU,CAC5B,SAAU,EAAM,SAAS,IAAK,IAAqB,CACjD,IAAK,EAAW,KAChB,MAAO,EAAa,EAAW,MAAM,OAAS,GAAc,CAC7D,EAAE,CACJ,CACF,EAAC,CACF,EAAE,CACP,EAAC,CACL,CAEK,GAAA,EAAA,EAAA,cACE,EAAM,OAAS,EAAe,MACtC,CAEM,EAAgB,GAAgB,CACpC,EAAK,SAAU,EAAG,uHAxEd,MAAA,CAvCJ,MAAM,8BACL,OAAA,EAAA,EAAA,gBAAK,+BAAyCA,EAAAA,SAAQ,4BAAqC,KAAK,IAAI,KAAK,MAAMA,EAAAA,SAAQ,EAAA,CAAA,EAAA,CAAA,0BAqC1G,EAAA,KAAA,2BA9B8B,GAAA,EAAA,EAAA,WAAA,GAAA,EAAA,EAAA,EAAA,oBA6BxB,EAAA,SAAA,MAAA,EAAA,EAAA,YA7BQ,EAAA,OAAhB,EAAM,yCA6BE,EAAA,CA5Bf,IAAK,EAAK,CAAA,2BAkBb,CAfU,EAAK,UAAU,SAAA,EAAA,EAAA,YAAA,EAAA,EAAA,EAAA,aAYX,EAAA,OAXT,QAAS,EAAK,SACd,SAAQ,8BASH,EAAA,EAAA,EAAA,oBAAA,MAPN,EAOM,CALIC,EAAAA,WAAAA,EAAAA,EAAAA,YAAAA,EAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,OAGN,EAAA,EAAA,CAAA,OAFC,KAAM,EAAK,KACX,KAAMD,EAAAA,6FACP,KAAA,EAAA,EAAA,iBACC,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,qEAcV,OAAA,OATL,MAAM,qBACL,QAAK,GAAE,EAAa,EAAK,IAAG,GAGrBC,EAAAA,WAAAA,EAAAA,EAAAA,YAAAA,EAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,OAGN,EAAA,EAAA,CAAA,OAFC,KAAM,EAAK,KACX,KAAMD,EAAAA,6FACP,KAAA,EAAA,EAAA,iBACC,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,EAAA,CAAA"}
|
package/dist/C_Breadcrumb2.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./C_Icon2.js";import{NBreadcrumb as t,NBreadcrumbItem as n,NDropdown as r}from"naive-ui";import{Fragment as i,computed as a,createBlock as o,createCommentVNode as s,createElementBlock as c,createElementVNode as l,createTextVNode as u,createVNode as d,defineComponent as f,
|
|
1
|
+
import{t as e}from"./C_Icon2.js";import{NBreadcrumb as t,NBreadcrumbItem as n,NDropdown as r}from"naive-ui";import{Fragment as i,computed as a,createBlock as o,createCommentVNode as s,createElementBlock as c,createElementVNode as l,createTextVNode as u,createVNode as d,defineComponent as f,normalizeStyle as p,openBlock as m,renderList as h,toDisplayString as g,unref as _,withCtx as v}from"vue";import{useRoute as y}from"vue-router";const b={class:`c-breadcrumb__trigger`},x=[`onClick`];var S=f({name:`C_Breadcrumb`,__name:`index`,props:{items:{},showIcon:{type:Boolean,default:!0},iconSize:{default:16},labelFormatter:{}},emits:[`select`],setup(f,{emit:S}){let C=f,w=S,T=y(),E=e=>C.labelFormatter?C.labelFormatter(e):e,D=a(()=>T.matched.filter(e=>e.meta?.title).map(e=>({key:e.path,label:E(e.meta.title||``),icon:e.meta.icon,children:e.children?.length?e.children.map(e=>({key:e.path,label:E(e.meta?.title||``),...e.children?.length&&{children:e.children.map(e=>({key:e.path,label:E(e.meta?.title||``)}))}})):[]}))),O=a(()=>C.items??D.value),k=e=>{w(`select`,e)};return(a,f)=>{let y=r,S=n,C=t;return m(),c(`div`,{class:`c-breadcrumb flex-1 min-w-0`,style:p({"--c-breadcrumb-icon-size":`${a.iconSize}px`,"--c-breadcrumb-gap":`${Math.max(Math.round(a.iconSize/4),2)}px`})},[d(C,null,{default:v(()=>[(m(!0),c(i,null,h(O.value,(t,n)=>(m(),o(S,{key:n},{default:v(()=>[t.children?.length?(m(),o(y,{key:0,options:t.children,onSelect:k},{default:v(()=>[l(`div`,b,[a.showIcon?(m(),o(_(e),{key:0,name:t.icon,size:a.iconSize},null,8,[`name`,`size`])):s(`v-if`,!0),u(` `+g(t.label),1)])]),_:2},1032,[`options`])):(m(),c(`span`,{key:1,class:`c-breadcrumb__link`,onClick:e=>k(t.key)},[a.showIcon?(m(),o(_(e),{key:0,name:t.icon,size:a.iconSize},null,8,[`name`,`size`])):s(`v-if`,!0),u(` `+g(t.label),1)],8,x))]),_:2},1024))),128))]),_:1})],4)}}});export{S as t};
|
|
2
2
|
//# sourceMappingURL=C_Breadcrumb2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"C_Breadcrumb2.js","names":["showIcon"],"sources":["../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue"],"sourcesContent":["/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n","/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n","<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div class=\"c-breadcrumb flex-1 min-w-0\">\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n }\n }\n</style>\n"],"mappings":"kpBEqEE,IAAM,EAAQ,EAoBR,EAAO,EAKP,EAAQ,GAAS,CAEjB,EAAe,GACnB,EAAM,eAAiB,EAAM,eAAe,EAAM,CAAG,EAGjD,EAAiB,MACd,EAAM,QACV,OAAQ,GAAgB,EAAO,MAAM,MAAK,CAC1C,IAAK,IAAiB,CACrB,IAAK,EAAO,KACZ,MAAO,EAAa,EAAO,KAAK,OAAS,GAAc,CACvD,KAAM,EAAO,KAAK,KAClB,SAAU,EAAO,UAAU,OACvB,EAAO,SAAS,IAAK,IAAgB,CACnC,IAAK,EAAM,KACX,MAAO,EAAa,EAAM,MAAM,OAAS,GAAc,CACvD,GAAI,EAAM,UAAU,QAAU,CAC5B,SAAU,EAAM,SAAS,IAAK,IAAqB,CACjD,IAAK,EAAW,KAChB,MAAO,EAAa,EAAW,MAAM,OAAS,GAAc,CAC7D,EAAE,CACJ,CACF,EAAC,CACF,EAAE,CACP,EAAC,CACL,CAEK,EAAkB,MAChB,EAAM,OAAS,EAAe,MACtC,CAEM,EAAgB,GAAgB,CACpC,EAAK,SAAU,EAAG,2CArGpB,EAgCM,MAhCN,EAgCM,CA/BJ,EA8Bc,EAAA,KAAA,eA5B8B,EAAA,EAAA,GAAA,CAD1C,EA4BkB,EAAA,KAAA,EA3BQ,EAAA,OAAhB,EAAM,SADhB,EA4BkB,EAAA,CA1Bf,IAAK,EAAK,CAAA,eAiBb,CAdU,EAAK,UAAU,QAAA,GAAA,CADvB,EAYY,EAAA,OAVT,QAAS,EAAK,SACd,SAAQ,kBAQH,CANN,EAMM,MANN,EAMM,CAJIA,EAAAA,UAAAA,GAAAA,CADR,EAGE,EAAA,EAAA,CAAA,OADC,KAAM,EAAK,uCACZ,IACF,EAAG,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,8BAGjB,EAUO,OAAA,OARL,MAAM,qBACL,QAAK,GAAE,EAAa,EAAK,IAAG,GAGrBA,EAAAA,UAAAA,GAAAA,CADR,EAGE,EAAA,EAAA,CAAA,OADC,KAAM,EAAK,uCACZ,IACF,EAAG,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,EAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"C_Breadcrumb2.js","names":["iconSize","showIcon"],"sources":["../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue","../src/components/C_Breadcrumb/index.vue"],"sourcesContent":["/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n","/* unplugin-vue-components disabled */<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n","<!--\n * @Description: 通用面包屑组件 — 基于 NBreadcrumb 的路由面包屑导航\n *\n * 支持两种模式:\n * 1. 自动模式(默认)— 从 `route.matched` 自动生成面包屑\n * 2. 手动模式 — 传入 `items` 完全自定义\n *\n * @example 自动模式(零配置)\n * ```vue\n * <C_Breadcrumb\n * :label-formatter=\"$t\"\n * @select=\"router.push\"\n * />\n * ```\n *\n * @example 手动模式\n * ```vue\n * <C_Breadcrumb\n * :items=\"customBreadcrumbs\"\n * @select=\"handleSelect\"\n * />\n * ```\n *\n * Copyright (c) 2025 by CHENY, All Rights Reserved.\n-->\n<template>\n <div\n class=\"c-breadcrumb flex-1 min-w-0\"\n :style=\"{\n '--c-breadcrumb-icon-size': `${iconSize}px`,\n '--c-breadcrumb-gap': `${Math.max(Math.round(iconSize / 4), 2)}px`,\n }\"\n >\n <NBreadcrumb>\n <NBreadcrumbItem\n v-for=\"(item, index) in breadcrumbItems\"\n :key=\"index\"\n >\n <NDropdown\n v-if=\"item.children?.length\"\n :options=\"item.children\"\n @select=\"handleSelect\"\n >\n <div class=\"c-breadcrumb__trigger\">\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </div>\n </NDropdown>\n <span\n v-else\n class=\"c-breadcrumb__link\"\n @click=\"handleSelect(item.key)\"\n >\n <C_Icon\n v-if=\"showIcon\"\n :name=\"item.icon\"\n :size=\"iconSize\"\n />\n {{ item.label }}\n </span>\n </NBreadcrumbItem>\n </NBreadcrumb>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue'\n import { useRoute } from 'vue-router'\n import { C_Icon } from '../C_Icon'\n import type { BreadcrumbItem } from '../_shared'\n\n defineOptions({ name: 'C_Breadcrumb' })\n\n const props = withDefaults(\n defineProps<{\n /**\n * 手动传入面包屑数据\n * 不传时自动从 `route.matched` 生成(零配置)\n */\n items?: BreadcrumbItem[]\n /** 是否显示图标 */\n showIcon?: boolean\n /** 图标大小 (px),默认 16 */\n iconSize?: number\n /**\n * 标签文本格式化函数(用于 i18n)\n * 仅在自动模式下生效\n */\n labelFormatter?: (label: string) => string\n }>(),\n {\n showIcon: true,\n iconSize: 16,\n }\n )\n\n const emit = defineEmits<{\n /** 面包屑项被选中(返回路径 key) */\n select: [path: string]\n }>()\n\n const route = useRoute()\n\n const formatLabel = (title: string): string =>\n props.labelFormatter ? props.labelFormatter(title) : title\n\n /** 从 route.matched 自动生成面包屑 */\n const autoBreadcrumb = computed<BreadcrumbItem[]>(() => {\n return route.matched\n .filter((record: any) => record.meta?.title)\n .map((record: any) => ({\n key: record.path,\n label: formatLabel((record.meta.title || '') as string),\n icon: record.meta.icon as string | undefined,\n children: record.children?.length\n ? record.children.map((child: any) => ({\n key: child.path,\n label: formatLabel((child.meta?.title || '') as string),\n ...(child.children?.length && {\n children: child.children.map((grandChild: any) => ({\n key: grandChild.path,\n label: formatLabel((grandChild.meta?.title || '') as string),\n })),\n }),\n }))\n : [],\n }))\n })\n\n const breadcrumbItems = computed<BreadcrumbItem[]>(\n () => props.items ?? autoBreadcrumb.value\n )\n\n const handleSelect = (key: string) => {\n emit('select', key)\n }\n</script>\n\n<style lang=\"scss\">\n .c-breadcrumb {\n // 暴露 CSS 变量,方便主项目覆盖\n --c-breadcrumb-icon-size: 16px;\n --c-breadcrumb-gap: 4px;\n --c-breadcrumb-font-size: inherit;\n\n display: flex;\n align-items: center;\n height: 100%;\n\n &__trigger,\n &__link {\n display: inline-flex;\n align-items: center;\n gap: var(--c-breadcrumb-gap);\n font-size: var(--c-breadcrumb-font-size);\n line-height: 1;\n }\n\n // 确保 C_Icon 在面包屑中尺寸一致\n .c-icon {\n flex-shrink: 0;\n }\n }\n</style>\n"],"mappings":"opBE6EE,IAAM,EAAQ,EAuBR,EAAO,EAKP,EAAQ,GAAS,CAEjB,EAAe,GACnB,EAAM,eAAiB,EAAM,eAAe,EAAM,CAAG,EAGjD,EAAiB,MACd,EAAM,QACV,OAAQ,GAAgB,EAAO,MAAM,MAAK,CAC1C,IAAK,IAAiB,CACrB,IAAK,EAAO,KACZ,MAAO,EAAa,EAAO,KAAK,OAAS,GAAc,CACvD,KAAM,EAAO,KAAK,KAClB,SAAU,EAAO,UAAU,OACvB,EAAO,SAAS,IAAK,IAAgB,CACnC,IAAK,EAAM,KACX,MAAO,EAAa,EAAM,MAAM,OAAS,GAAc,CACvD,GAAI,EAAM,UAAU,QAAU,CAC5B,SAAU,EAAM,SAAS,IAAK,IAAqB,CACjD,IAAK,EAAW,KAChB,MAAO,EAAa,EAAW,MAAM,OAAS,GAAc,CAC7D,EAAE,CACJ,CACF,EAAC,CACF,EAAE,CACP,EAAC,CACL,CAEK,EAAkB,MAChB,EAAM,OAAS,EAAe,MACtC,CAEM,EAAgB,GAAgB,CACpC,EAAK,SAAU,EAAG,2CAhHpB,EAwCM,MAAA,CAvCJ,MAAM,8BACL,MAAK,EAAA,+BAAyCA,EAAAA,SAAQ,4BAAqC,KAAK,IAAI,KAAK,MAAMA,EAAAA,SAAQ,EAAA,CAAA,EAAA,CAAA,QAKxH,EAgCc,EAAA,KAAA,eA9B8B,EAAA,EAAA,GAAA,CAD1C,EA8BkB,EAAA,KAAA,EA7BQ,EAAA,OAAhB,EAAM,SADhB,EA8BkB,EAAA,CA5Bf,IAAK,EAAK,CAAA,eAkBb,CAfU,EAAK,UAAU,QAAA,GAAA,CADvB,EAaY,EAAA,OAXT,QAAS,EAAK,SACd,SAAQ,kBASH,CAPN,EAOM,MAPN,EAOM,CALIC,EAAAA,UAAAA,GAAAA,CADR,EAIE,EAAA,EAAA,CAAA,OAFC,KAAM,EAAK,KACX,KAAMD,EAAAA,kDACP,IACF,EAAG,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,8BAGjB,EAWO,OAAA,OATL,MAAM,qBACL,QAAK,GAAE,EAAa,EAAK,IAAG,GAGrBC,EAAAA,UAAAA,GAAAA,CADR,EAIE,EAAA,EAAA,CAAA,OAFC,KAAM,EAAK,KACX,KAAMD,EAAAA,kDACP,IACF,EAAG,EAAK,MAAK,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,EAAA,CAAA"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -118,12 +118,12 @@ declare const __VLS_export: vue.DefineComponent<CronProps, {
|
|
|
118
118
|
onChange?: ((value: string) => any) | undefined;
|
|
119
119
|
"onValidation-change"?: ((result: CronValidation) => any) | undefined;
|
|
120
120
|
}>, {
|
|
121
|
-
height: string | number;
|
|
122
121
|
modelValue: string;
|
|
123
122
|
disabled: boolean;
|
|
123
|
+
height: string | number;
|
|
124
|
+
showPreview: boolean;
|
|
124
125
|
previewCount: number;
|
|
125
126
|
showTemplates: boolean;
|
|
126
|
-
showPreview: boolean;
|
|
127
127
|
showSecond: boolean;
|
|
128
128
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
129
129
|
declare const _default: typeof __VLS_export;
|
package/dist/constants2.d.ts
CHANGED
|
@@ -120,14 +120,14 @@ declare const __VLS_export: vue.DefineComponent<FormulaEditorProps, FormulaEdito
|
|
|
120
120
|
onChange?: ((value: string) => any) | undefined;
|
|
121
121
|
"onValidation-change"?: ((result: FormulaValidation) => any) | undefined;
|
|
122
122
|
}>, {
|
|
123
|
-
height: string | number;
|
|
124
123
|
modelValue: string;
|
|
125
|
-
placeholder: string;
|
|
126
124
|
disabled: boolean;
|
|
127
|
-
|
|
125
|
+
placeholder: string;
|
|
126
|
+
height: string | number;
|
|
128
127
|
variables: FormulaVariable[];
|
|
129
128
|
functions: FormulaFunction[];
|
|
130
129
|
sampleData: Record<string, number | string | boolean>;
|
|
130
|
+
showPreview: boolean;
|
|
131
131
|
showKeyboard: boolean;
|
|
132
132
|
showVariablePanel: boolean;
|
|
133
133
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
package/dist/constants3.d.ts
CHANGED
|
@@ -168,8 +168,8 @@ declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, Notific
|
|
|
168
168
|
onNewMessage?: ((message: NotificationMessage) => any) | undefined;
|
|
169
169
|
onNavigate?: ((url: string) => any) | undefined;
|
|
170
170
|
}>, {
|
|
171
|
-
storageKey: string;
|
|
172
171
|
pageSize: number;
|
|
172
|
+
storageKey: string;
|
|
173
173
|
desktopNotification: boolean;
|
|
174
174
|
maxBadgeCount: number;
|
|
175
175
|
pollingInterval: number;
|
package/dist/constants4.d.ts
CHANGED
|
@@ -196,31 +196,31 @@ type __VLS_Slots = {} & {
|
|
|
196
196
|
area?: (props: typeof __VLS_11) => any;
|
|
197
197
|
};
|
|
198
198
|
declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
199
|
+
success: (file: UploadFileItem, response: any) => any;
|
|
199
200
|
error: (file: UploadFileItem, error: Error) => any;
|
|
200
201
|
change: (fileList: UploadFileItem[]) => any;
|
|
201
|
-
success: (file: UploadFileItem, response: any) => any;
|
|
202
202
|
progress: (file: UploadFileItem, percent: number) => any;
|
|
203
203
|
remove: (file: UploadFileItem) => any;
|
|
204
204
|
finish: (fileList: UploadFileItem[]) => any;
|
|
205
205
|
exceed: (files: File[], fileList: UploadFileItem[]) => any;
|
|
206
206
|
}, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
|
|
207
|
+
onSuccess?: ((file: UploadFileItem, response: any) => any) | undefined;
|
|
207
208
|
onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
|
|
208
209
|
onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
|
|
209
|
-
onSuccess?: ((file: UploadFileItem, response: any) => any) | undefined;
|
|
210
210
|
onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
|
|
211
211
|
onRemove?: ((file: UploadFileItem) => any) | undefined;
|
|
212
212
|
onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
|
|
213
213
|
onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
|
|
214
214
|
}>, {
|
|
215
215
|
disabled: boolean;
|
|
216
|
-
multiple: boolean;
|
|
217
|
-
data: Record<string, any>;
|
|
218
216
|
draggable: boolean;
|
|
219
|
-
|
|
217
|
+
data: Record<string, any>;
|
|
218
|
+
multiple: boolean;
|
|
220
219
|
action: string;
|
|
221
220
|
headers: Record<string, string>;
|
|
222
221
|
directory: boolean;
|
|
223
222
|
accept: string;
|
|
223
|
+
maxSize: number;
|
|
224
224
|
maxCount: number;
|
|
225
225
|
pasteable: boolean;
|
|
226
226
|
chunked: boolean;
|
package/dist/constants5.d.ts
CHANGED
|
@@ -260,8 +260,8 @@ type PlayerInstance = InstanceType<typeof xgplayer.default>;
|
|
|
260
260
|
//#region src/components/C_VideoPlayer/index.vue.d.ts
|
|
261
261
|
declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
262
262
|
error: (error: Error) => any;
|
|
263
|
-
ended: () => any;
|
|
264
263
|
ready: () => any;
|
|
264
|
+
ended: () => any;
|
|
265
265
|
stateChange: (state: PlayerState) => any;
|
|
266
266
|
timeUpdate: (currentTime: number, duration: number) => any;
|
|
267
267
|
qualityChange: (quality: QualityLevel) => any;
|
|
@@ -273,8 +273,8 @@ declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExp
|
|
|
273
273
|
progressUpdate: (data: ProgressData) => any;
|
|
274
274
|
}, string, vue.PublicProps, Readonly<VideoPlayerProps> & Readonly<{
|
|
275
275
|
onError?: ((error: Error) => any) | undefined;
|
|
276
|
-
onEnded?: (() => any) | undefined;
|
|
277
276
|
onReady?: (() => any) | undefined;
|
|
277
|
+
onEnded?: (() => any) | undefined;
|
|
278
278
|
onStateChange?: ((state: PlayerState) => any) | undefined;
|
|
279
279
|
onTimeUpdate?: ((currentTime: number, duration: number) => any) | undefined;
|
|
280
280
|
onQualityChange?: ((quality: QualityLevel) => any) | undefined;
|
package/dist/data.d.ts
CHANGED
|
@@ -22,9 +22,9 @@ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue
|
|
|
22
22
|
onReady?: ((map: any) => any) | undefined;
|
|
23
23
|
onMarkerClick?: ((marker: MapMarker$1, event: any) => any) | undefined;
|
|
24
24
|
}>, {
|
|
25
|
+
center: [number, number];
|
|
25
26
|
height: string;
|
|
26
27
|
zoom: number;
|
|
27
|
-
center: [number, number];
|
|
28
28
|
markers: MapMarker$1[];
|
|
29
29
|
amapKey: string;
|
|
30
30
|
mapType: "osm" | "amap";
|
package/dist/index11.vue.d.ts
CHANGED
|
@@ -49,14 +49,13 @@ declare const __VLS_export: vue.DefineComponent<IconProps, {
|
|
|
49
49
|
onClick?: ((event: MouseEvent) => any) | undefined;
|
|
50
50
|
onLoad?: (() => any) | undefined;
|
|
51
51
|
}>, {
|
|
52
|
+
size: number | string;
|
|
52
53
|
type: "iconify" | "unocss" | "component" | "svg" | "image";
|
|
54
|
+
title: string;
|
|
53
55
|
name: string | any;
|
|
54
|
-
size: number | string;
|
|
55
56
|
color: string;
|
|
56
|
-
loading: boolean;
|
|
57
57
|
flip: "horizontal" | "vertical" | "both";
|
|
58
|
-
|
|
59
|
-
title: string;
|
|
58
|
+
loading: boolean;
|
|
60
59
|
svgPath: string;
|
|
61
60
|
viewBox: string;
|
|
62
61
|
alt: string;
|
|
@@ -64,6 +63,7 @@ declare const __VLS_export: vue.DefineComponent<IconProps, {
|
|
|
64
63
|
fallbackIcon: string;
|
|
65
64
|
ariaLabel: string;
|
|
66
65
|
customClass: string;
|
|
66
|
+
rotate: number;
|
|
67
67
|
componentProps: Record<string, any>;
|
|
68
68
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
69
69
|
declare const _default: typeof __VLS_export;
|
package/dist/index13.vue.d.ts
CHANGED
|
@@ -58,12 +58,13 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
58
58
|
"onAuto-save"?: ((text: string) => any) | undefined;
|
|
59
59
|
"onMax-length-exceeded"?: ((currentLength: number, maxLength: number) => any) | undefined;
|
|
60
60
|
}>, {
|
|
61
|
-
height: string | number;
|
|
62
61
|
modelValue: string;
|
|
63
|
-
placeholder: string;
|
|
64
62
|
disabled: boolean;
|
|
65
|
-
|
|
63
|
+
placeholder: string;
|
|
64
|
+
height: string | number;
|
|
66
65
|
mode: "edit" | "editable" | "preview";
|
|
66
|
+
autoSave: boolean;
|
|
67
|
+
isDark: boolean;
|
|
67
68
|
tocNavPosition: "left" | "right";
|
|
68
69
|
defaultFullscreen: boolean;
|
|
69
70
|
autofocus: boolean;
|
|
@@ -73,7 +74,6 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
73
74
|
maxLength: number;
|
|
74
75
|
showWordCount: boolean;
|
|
75
76
|
autoSaveInterval: number;
|
|
76
|
-
isDark: boolean;
|
|
77
77
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
78
78
|
declare const _default: typeof __VLS_export;
|
|
79
79
|
//#endregion
|
package/dist/index15.vue.d.ts
CHANGED
|
@@ -34,13 +34,13 @@ type __VLS_Slots = {} & {
|
|
|
34
34
|
indicator?: (props: typeof __VLS_9) => any;
|
|
35
35
|
};
|
|
36
36
|
declare const __VLS_base: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
37
|
-
status: "default" | "success" | "error" | "warning" | "info";
|
|
38
|
-
strokeWidth: number;
|
|
39
|
-
time: number;
|
|
40
37
|
percentage: number | number[];
|
|
41
38
|
isAnimation: boolean;
|
|
39
|
+
time: number;
|
|
42
40
|
indicatorPlacement: "inside" | "outside";
|
|
43
41
|
showIndicator: boolean;
|
|
42
|
+
status: "default" | "success" | "error" | "warning" | "info";
|
|
43
|
+
strokeWidth: number;
|
|
44
44
|
unit: string;
|
|
45
45
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
46
46
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
package/dist/index17.vue.d.ts
CHANGED
|
@@ -76,10 +76,10 @@ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {
|
|
|
76
76
|
onClose?: ((fallbackPath: string) => any) | undefined;
|
|
77
77
|
onCloseAll?: (() => any) | undefined;
|
|
78
78
|
}>, {
|
|
79
|
-
persistKey: string;
|
|
80
79
|
homePath: string;
|
|
81
80
|
homeTitle: string;
|
|
82
81
|
homeIcon: string;
|
|
82
|
+
persistKey: string;
|
|
83
83
|
contextMenuLabels: ContextMenuLabels;
|
|
84
84
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
85
85
|
declare const _default: typeof __VLS_export;
|
package/dist/index19.vue.d.ts
CHANGED
|
@@ -647,12 +647,12 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
647
647
|
onTaskClick?: ((task: GanttTask, event: Event) => any) | undefined;
|
|
648
648
|
onTaskChange?: ((task: GanttTask, changes: any) => any) | undefined;
|
|
649
649
|
}>, {
|
|
650
|
+
title: string;
|
|
650
651
|
height: string | number;
|
|
651
652
|
theme: "light" | "dark";
|
|
652
|
-
options: GanttOptions;
|
|
653
653
|
data: GanttTask[];
|
|
654
|
-
title: string;
|
|
655
654
|
showToolbar: boolean;
|
|
655
|
+
options: GanttOptions;
|
|
656
656
|
preset: GanttPreset;
|
|
657
657
|
showFullscreenButton: boolean;
|
|
658
658
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
package/dist/index2.vue.d.ts
CHANGED
|
@@ -20,16 +20,16 @@ declare const __VLS_export: vue.DefineComponent<Props, {}, {}, {}, {}, vue.Compo
|
|
|
20
20
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
21
21
|
onError?: ((error: Error) => any) | undefined;
|
|
22
22
|
}>, {
|
|
23
|
-
|
|
24
|
-
width: number;
|
|
23
|
+
label: string;
|
|
25
24
|
height: number;
|
|
25
|
+
width: number;
|
|
26
|
+
format: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
|
|
26
27
|
showText: boolean;
|
|
27
28
|
fontSize: number;
|
|
28
29
|
textPosition: "bottom" | "top";
|
|
29
30
|
lineColor: string;
|
|
30
31
|
background: string;
|
|
31
32
|
showBorder: boolean;
|
|
32
|
-
label: string;
|
|
33
33
|
showLabel: boolean;
|
|
34
34
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
35
35
|
declare const _default: typeof __VLS_export;
|
package/dist/index3.vue.d.ts
CHANGED
|
@@ -8,7 +8,8 @@ type __VLS_Props = {
|
|
|
8
8
|
* 不传时自动从 `route.matched` 生成(零配置)
|
|
9
9
|
*/
|
|
10
10
|
items?: BreadcrumbItem[]; /** 是否显示图标 */
|
|
11
|
-
showIcon?: boolean;
|
|
11
|
+
showIcon?: boolean; /** 图标大小 (px),默认 16 */
|
|
12
|
+
iconSize?: number;
|
|
12
13
|
/**
|
|
13
14
|
* 标签文本格式化函数(用于 i18n)
|
|
14
15
|
* 仅在自动模式下生效
|
|
@@ -21,6 +22,7 @@ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue
|
|
|
21
22
|
onSelect?: ((path: string) => any) | undefined;
|
|
22
23
|
}>, {
|
|
23
24
|
showIcon: boolean;
|
|
25
|
+
iconSize: number;
|
|
24
26
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
25
27
|
declare const _default: typeof __VLS_export;
|
|
26
28
|
//#endregion
|
package/dist/index4.vue.d.ts
CHANGED
|
@@ -18,19 +18,19 @@ declare const __VLS_export: vue.DefineComponent<CaptchaProps, {
|
|
|
18
18
|
reset: () => void;
|
|
19
19
|
show: () => void;
|
|
20
20
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
21
|
-
change: (valid: boolean) => any;
|
|
22
21
|
success: (data: {
|
|
23
22
|
token: string;
|
|
24
23
|
timestamp: number;
|
|
25
24
|
}) => any;
|
|
25
|
+
change: (valid: boolean) => any;
|
|
26
26
|
reset: () => any;
|
|
27
27
|
fail: (error: string) => any;
|
|
28
28
|
}, string, vue.PublicProps, Readonly<CaptchaProps> & Readonly<{
|
|
29
|
-
onChange?: ((valid: boolean) => any) | undefined;
|
|
30
29
|
onSuccess?: ((data: {
|
|
31
30
|
token: string;
|
|
32
31
|
timestamp: number;
|
|
33
32
|
}) => any) | undefined;
|
|
33
|
+
onChange?: ((valid: boolean) => any) | undefined;
|
|
34
34
|
onReset?: (() => any) | undefined;
|
|
35
35
|
onFail?: ((error: string) => any) | undefined;
|
|
36
36
|
}>, {
|
package/dist/index7.vue.d.ts
CHANGED
|
@@ -25,20 +25,20 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
25
25
|
copyCode: typeof copyCode;
|
|
26
26
|
toggleFullscreen: typeof toggleFullscreen;
|
|
27
27
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
28
|
-
copy: (code: string) => any;
|
|
29
28
|
click: (event: MouseEvent) => any;
|
|
29
|
+
copy: (code: string) => any;
|
|
30
30
|
fullscreen: (isFullscreen: boolean) => any;
|
|
31
31
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
32
|
-
onCopy?: ((code: string) => any) | undefined;
|
|
33
32
|
onClick?: ((event: MouseEvent) => any) | undefined;
|
|
33
|
+
onCopy?: ((code: string) => any) | undefined;
|
|
34
34
|
onFullscreen?: ((isFullscreen: boolean) => any) | undefined;
|
|
35
35
|
}>, {
|
|
36
36
|
trim: boolean;
|
|
37
|
-
wordWrap: boolean;
|
|
38
37
|
code: string;
|
|
39
38
|
language: string;
|
|
40
39
|
showHeader: boolean;
|
|
41
40
|
showLineNumbers: boolean;
|
|
41
|
+
wordWrap: boolean;
|
|
42
42
|
showFullscreen: boolean;
|
|
43
43
|
autoLoadLanguage: boolean;
|
|
44
44
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
package/dist/index8.vue.d.ts
CHANGED
|
@@ -25,22 +25,22 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
25
25
|
endDate: vue.Ref<DateValue, DateValue>;
|
|
26
26
|
clearAll: () => void;
|
|
27
27
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
28
|
-
change: (value: number | [number, number] | null) => any;
|
|
29
28
|
"update:singleDate": (value: DateValue) => any;
|
|
30
29
|
"update:singleDateTime": (value: DateValue) => any;
|
|
31
30
|
"update:dateRange": (value: DateRangeValue) => any;
|
|
32
31
|
"update:dateTimeRange": (value: DateRangeValue) => any;
|
|
33
32
|
"update:smartRange": (value: DateRangeValue) => any;
|
|
33
|
+
change: (value: number | [number, number] | null) => any;
|
|
34
34
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
35
|
-
onChange?: ((value: number | [number, number] | null) => any) | undefined;
|
|
36
35
|
"onUpdate:singleDate"?: ((value: DateValue) => any) | undefined;
|
|
37
36
|
"onUpdate:singleDateTime"?: ((value: DateValue) => any) | undefined;
|
|
38
37
|
"onUpdate:dateRange"?: ((value: DateRangeValue) => any) | undefined;
|
|
39
38
|
"onUpdate:dateTimeRange"?: ((value: DateRangeValue) => any) | undefined;
|
|
40
39
|
"onUpdate:smartRange"?: ((value: DateRangeValue) => any) | undefined;
|
|
40
|
+
onChange?: ((value: number | [number, number] | null) => any) | undefined;
|
|
41
41
|
}>, {
|
|
42
|
-
placeholder: string;
|
|
43
42
|
disabled: boolean;
|
|
43
|
+
placeholder: string;
|
|
44
44
|
mode: DatePickerMode;
|
|
45
45
|
startPlaceholder: string;
|
|
46
46
|
endPlaceholder: string;
|
package/dist/index9.vue.d.ts
CHANGED
|
@@ -28,12 +28,12 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
28
28
|
"onEditor-mounted"?: ((editor: any) => any) | undefined;
|
|
29
29
|
"onEditor-change"?: ((html: string) => any) | undefined;
|
|
30
30
|
}>, {
|
|
31
|
-
height: number;
|
|
32
31
|
modelValue: string;
|
|
33
|
-
placeholder: string;
|
|
34
32
|
disabled: boolean;
|
|
35
|
-
|
|
33
|
+
placeholder: string;
|
|
36
34
|
readonly: boolean;
|
|
35
|
+
height: number;
|
|
36
|
+
theme: "light" | "dark";
|
|
37
37
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
38
38
|
declare const _default: typeof __VLS_export;
|
|
39
39
|
//#endregion
|
package/dist/style.css
CHANGED
|
@@ -655,14 +655,27 @@ html.dark .action-divider[data-v-f5b5f258]:hover {
|
|
|
655
655
|
|
|
656
656
|
/*# sourceMappingURL=C_Barcode-DYDRDe2O.css.map*/
|
|
657
657
|
|
|
658
|
-
/* --- C_Breadcrumb-
|
|
659
|
-
/* unplugin-vue-components disabled */.c-
|
|
658
|
+
/* --- C_Breadcrumb-BnOGXsSX.css --- */
|
|
659
|
+
/* unplugin-vue-components disabled */.c-breadcrumb {
|
|
660
|
+
--c-breadcrumb-icon-size: 16px;
|
|
661
|
+
--c-breadcrumb-gap: 4px;
|
|
662
|
+
--c-breadcrumb-font-size: inherit;
|
|
663
|
+
display: flex;
|
|
664
|
+
align-items: center;
|
|
665
|
+
height: 100%;
|
|
666
|
+
}
|
|
667
|
+
.c-breadcrumb__trigger, .c-breadcrumb__link {
|
|
660
668
|
display: inline-flex;
|
|
661
669
|
align-items: center;
|
|
662
|
-
gap:
|
|
670
|
+
gap: var(--c-breadcrumb-gap);
|
|
671
|
+
font-size: var(--c-breadcrumb-font-size);
|
|
672
|
+
line-height: 1;
|
|
673
|
+
}
|
|
674
|
+
.c-breadcrumb .c-icon {
|
|
675
|
+
flex-shrink: 0;
|
|
663
676
|
}
|
|
664
677
|
|
|
665
|
-
/*# sourceMappingURL=C_Breadcrumb-
|
|
678
|
+
/*# sourceMappingURL=C_Breadcrumb-BnOGXsSX.css.map*/
|
|
666
679
|
|
|
667
680
|
/* --- C_Captcha-9_hk6VmY.css --- */
|
|
668
681
|
/* unplugin-vue-components disabled */.c-captcha-modern[data-v-a4319836] {
|
|
@@ -66,9 +66,9 @@ declare const __VLS_export: vue.DefineComponent<CalendarProps, CalendarExpose, {
|
|
|
66
66
|
}) => any) | undefined;
|
|
67
67
|
"onEvent-dropped"?: ((event: Partial<CalendarEvent>) => any) | undefined;
|
|
68
68
|
}>, {
|
|
69
|
-
editable: boolean;
|
|
70
|
-
initialView: CalendarViewType;
|
|
71
69
|
events: CalendarEvent[];
|
|
70
|
+
initialView: CalendarViewType;
|
|
71
|
+
editable: boolean;
|
|
72
72
|
showAddDialog: boolean;
|
|
73
73
|
showEditDialog: boolean;
|
|
74
74
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
@@ -69,22 +69,22 @@ declare var __VLS_7: `header-${string}`, __VLS_8: {
|
|
|
69
69
|
type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_7>]?: (props: typeof __VLS_8) => any } & { [K in NonNullable<typeof __VLS_16>]?: (props: typeof __VLS_17) => any } & { [K in NonNullable<typeof __VLS_31>]?: (props: typeof __VLS_32) => any };
|
|
70
70
|
declare const __VLS_base: vue.DefineComponent<Props, CollapsePanelExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
71
71
|
change: (activeKeys: string[]) => any;
|
|
72
|
-
collapse: (key: string) => any;
|
|
73
72
|
"update:activeKeys": (keys: string[]) => any;
|
|
74
73
|
expand: (key: string) => any;
|
|
74
|
+
collapse: (key: string) => any;
|
|
75
75
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
76
76
|
onChange?: ((activeKeys: string[]) => any) | undefined;
|
|
77
|
-
onCollapse?: ((key: string) => any) | undefined;
|
|
78
77
|
"onUpdate:activeKeys"?: ((keys: string[]) => any) | undefined;
|
|
79
78
|
onExpand?: ((key: string) => any) | undefined;
|
|
79
|
+
onCollapse?: ((key: string) => any) | undefined;
|
|
80
80
|
}>, {
|
|
81
|
-
|
|
81
|
+
persistKey: string;
|
|
82
82
|
activeKeys: string[];
|
|
83
83
|
defaultActiveKeys: string[];
|
|
84
84
|
accordion: boolean;
|
|
85
85
|
variant: CollapsePanelVariant;
|
|
86
86
|
expandIconPosition: ExpandIconPosition;
|
|
87
|
-
|
|
87
|
+
bordered: boolean;
|
|
88
88
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
89
89
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
90
90
|
declare const _default: typeof __VLS_export;
|
package/dist/useCropperCore.d.ts
CHANGED
|
@@ -52,22 +52,22 @@ interface ImageCropperEmits {
|
|
|
52
52
|
//#region src/components/C_ImageCropper/index.vue.d.ts
|
|
53
53
|
declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
54
54
|
error: (error: Event) => any;
|
|
55
|
-
cancel: () => any;
|
|
56
55
|
ready: () => any;
|
|
56
|
+
cancel: () => any;
|
|
57
57
|
crop: (result: any) => any;
|
|
58
58
|
confirm: (result: any) => any;
|
|
59
59
|
}, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
|
|
60
60
|
onError?: ((error: Event) => any) | undefined;
|
|
61
|
-
onCancel?: (() => any) | undefined;
|
|
62
61
|
onReady?: (() => any) | undefined;
|
|
62
|
+
onCancel?: (() => any) | undefined;
|
|
63
63
|
onCrop?: ((result: any) => any) | undefined;
|
|
64
64
|
onConfirm?: ((result: any) => any) | undefined;
|
|
65
65
|
}>, {
|
|
66
|
-
height: string | number;
|
|
67
66
|
disabled: boolean;
|
|
68
|
-
|
|
69
|
-
showPreview: boolean;
|
|
67
|
+
height: string | number;
|
|
70
68
|
showToolbar: boolean;
|
|
69
|
+
showPreview: boolean;
|
|
70
|
+
aspectRatio: number;
|
|
71
71
|
src: string;
|
|
72
72
|
outputFormat: CropOutputFormat;
|
|
73
73
|
outputQuality: number;
|
|
@@ -119,16 +119,9 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
|
|
|
119
119
|
sort: boolean;
|
|
120
120
|
modelValue: DraggableItem[];
|
|
121
121
|
disabled: boolean;
|
|
122
|
-
delay: number;
|
|
123
|
-
layout: LayoutMode;
|
|
124
122
|
group: string | GroupOptions;
|
|
125
|
-
alignItems: AlignItems;
|
|
126
|
-
direction: "vertical" | "horizontal";
|
|
127
|
-
flexWrap: boolean;
|
|
128
|
-
justifyContent: JustifyContent;
|
|
129
123
|
animation: number;
|
|
130
|
-
|
|
131
|
-
itemClass: string;
|
|
124
|
+
delay: number;
|
|
132
125
|
handle: string;
|
|
133
126
|
showHandle: boolean;
|
|
134
127
|
ghostClass: string;
|
|
@@ -136,12 +129,19 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
|
|
|
136
129
|
dragClass: string;
|
|
137
130
|
wrapperClass: string;
|
|
138
131
|
listClass: string;
|
|
132
|
+
itemClass: string;
|
|
139
133
|
showEmptyState: boolean;
|
|
140
134
|
emptyText: string;
|
|
141
135
|
swapThreshold: number;
|
|
142
136
|
invertSwap: boolean;
|
|
137
|
+
direction: "vertical" | "horizontal";
|
|
138
|
+
layout: LayoutMode;
|
|
143
139
|
gridColumns: number;
|
|
144
140
|
gridRows: number;
|
|
141
|
+
gap: string | number;
|
|
142
|
+
flexWrap: boolean;
|
|
143
|
+
justifyContent: JustifyContent;
|
|
144
|
+
alignItems: AlignItems;
|
|
145
145
|
customStyles: Record<string, string | number>;
|
|
146
146
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
147
147
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -1296,6 +1296,8 @@ declare const useDynamicFormState: () => {
|
|
|
1296
1296
|
readonly rules?: readonly {
|
|
1297
1297
|
readonly type?: RuleType | undefined;
|
|
1298
1298
|
readonly required?: boolean | undefined;
|
|
1299
|
+
readonly level?: "warning" | "error" | undefined;
|
|
1300
|
+
readonly key?: string | undefined;
|
|
1299
1301
|
readonly options?: {
|
|
1300
1302
|
readonly suppressWarning?: boolean | undefined;
|
|
1301
1303
|
readonly suppressValidatorError?: boolean | undefined;
|
|
@@ -1929,9 +1931,7 @@ declare const useDynamicFormState: () => {
|
|
|
1929
1931
|
}[] | undefined;
|
|
1930
1932
|
readonly transform?: ((value: Value) => Value) | undefined;
|
|
1931
1933
|
readonly message?: string | ((a?: string) => string) | undefined;
|
|
1932
|
-
readonly key?: string | undefined;
|
|
1933
1934
|
readonly renderMessage?: (() => vue.VNodeChild) | undefined;
|
|
1934
|
-
readonly level?: "warning" | "error" | undefined;
|
|
1935
1935
|
readonly validator: NonNullable<naive_ui0.FormItemRule["validator"]>;
|
|
1936
1936
|
}[] | undefined;
|
|
1937
1937
|
readonly attrs?: {
|
|
@@ -3573,6 +3573,8 @@ declare const useDynamicFormState: () => {
|
|
|
3573
3573
|
readonly rules?: readonly {
|
|
3574
3574
|
readonly type?: RuleType | undefined;
|
|
3575
3575
|
readonly required?: boolean | undefined;
|
|
3576
|
+
readonly level?: "warning" | "error" | undefined;
|
|
3577
|
+
readonly key?: string | undefined;
|
|
3576
3578
|
readonly options?: {
|
|
3577
3579
|
readonly suppressWarning?: boolean | undefined;
|
|
3578
3580
|
readonly suppressValidatorError?: boolean | undefined;
|
|
@@ -4206,9 +4208,7 @@ declare const useDynamicFormState: () => {
|
|
|
4206
4208
|
}[] | undefined;
|
|
4207
4209
|
readonly transform?: ((value: Value) => Value) | undefined;
|
|
4208
4210
|
readonly message?: string | ((a?: string) => string) | undefined;
|
|
4209
|
-
readonly key?: string | undefined;
|
|
4210
4211
|
readonly renderMessage?: (() => vue.VNodeChild) | undefined;
|
|
4211
|
-
readonly level?: "warning" | "error" | undefined;
|
|
4212
4212
|
readonly validator: NonNullable<naive_ui0.FormItemRule["validator"]>;
|
|
4213
4213
|
}[] | undefined;
|
|
4214
4214
|
}[];
|
|
@@ -259,10 +259,10 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
259
259
|
onReady?: ((graph: any) => any) | undefined;
|
|
260
260
|
"onData-change"?: ((data: DiagramData) => any) | undefined;
|
|
261
261
|
}>, {
|
|
262
|
-
|
|
262
|
+
readonly: boolean;
|
|
263
263
|
height: string | number;
|
|
264
264
|
theme: "light" | "dark";
|
|
265
|
-
|
|
265
|
+
width: string | number;
|
|
266
266
|
showToolbar: boolean;
|
|
267
267
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
268
268
|
declare const _default: typeof __VLS_export;
|
|
@@ -50,8 +50,8 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
50
50
|
openDialog: () => Promise<void>;
|
|
51
51
|
closeDialog: () => void;
|
|
52
52
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
53
|
-
placeholder: string;
|
|
54
53
|
emptyText: string;
|
|
54
|
+
placeholder: string;
|
|
55
55
|
resultGroupTitle: string;
|
|
56
56
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
57
57
|
declare const _default: typeof __VLS_export;
|
|
@@ -89,10 +89,10 @@ declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {
|
|
|
89
89
|
"onImage-loaded"?: ((item: WaterFallItem) => any) | undefined;
|
|
90
90
|
"onImage-error"?: ((item: WaterFallItem) => any) | undefined;
|
|
91
91
|
}>, {
|
|
92
|
+
gap: number;
|
|
93
|
+
columns: number;
|
|
92
94
|
loading: boolean;
|
|
93
95
|
animationDuration: number;
|
|
94
|
-
columns: number;
|
|
95
|
-
gap: number;
|
|
96
96
|
infinite: boolean;
|
|
97
97
|
lazy: boolean;
|
|
98
98
|
skeleton: boolean;
|
package/dist/useModalEdit.d.ts
CHANGED
|
@@ -591,7 +591,6 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
591
591
|
};
|
|
592
592
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
593
593
|
cancel: (rowData: DataRecord, rowIndex: number) => any;
|
|
594
|
-
save: (rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any;
|
|
595
594
|
"pagination-change": (...args: unknown[]) => any;
|
|
596
595
|
"row-delete": (...args: unknown[]) => any;
|
|
597
596
|
"expand-change": (expandedKeys: DataTableRowKey$1[], row?: DataRecord | undefined, expanded?: boolean | undefined) => any;
|
|
@@ -599,6 +598,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
599
598
|
"child-selection-change": (parentKey: DataTableRowKey$1, childKeys: DataTableRowKey$1[], childRows: any[]) => any;
|
|
600
599
|
"parent-child-link-change": (parentKey: DataTableRowKey$1, shouldSelect: boolean) => any;
|
|
601
600
|
"update:data": (data: DataRecord[]) => any;
|
|
601
|
+
save: (rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any;
|
|
602
602
|
"row-add": (newRow: DataRecord) => any;
|
|
603
603
|
"row-copy": (originalRow: DataRecord, newRow: DataRecord) => any;
|
|
604
604
|
"row-move": (row: DataRecord, fromIndex: number, toIndex: number) => any;
|
|
@@ -607,7 +607,6 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
607
607
|
"column-change": (columns: TableColumn[]) => any;
|
|
608
608
|
}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
609
609
|
onCancel?: ((rowData: DataRecord, rowIndex: number) => any) | undefined;
|
|
610
|
-
onSave?: ((rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any) | undefined;
|
|
611
610
|
"onPagination-change"?: ((...args: unknown[]) => any) | undefined;
|
|
612
611
|
"onRow-delete"?: ((...args: unknown[]) => any) | undefined;
|
|
613
612
|
"onExpand-change"?: ((expandedKeys: DataTableRowKey$1[], row?: DataRecord | undefined, expanded?: boolean | undefined) => any) | undefined;
|
|
@@ -615,6 +614,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
615
614
|
"onChild-selection-change"?: ((parentKey: DataTableRowKey$1, childKeys: DataTableRowKey$1[], childRows: any[]) => any) | undefined;
|
|
616
615
|
"onParent-child-link-change"?: ((parentKey: DataTableRowKey$1, shouldSelect: boolean) => any) | undefined;
|
|
617
616
|
"onUpdate:data"?: ((data: DataRecord[]) => any) | undefined;
|
|
617
|
+
onSave?: ((rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any) | undefined;
|
|
618
618
|
"onRow-add"?: ((newRow: DataRecord) => any) | undefined;
|
|
619
619
|
"onRow-copy"?: ((originalRow: DataRecord, newRow: DataRecord) => any) | undefined;
|
|
620
620
|
"onRow-move"?: ((row: DataRecord, fromIndex: number, toIndex: number) => any) | undefined;
|
package/dist/useQRCode.d.ts
CHANGED
|
@@ -50,13 +50,13 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
|
|
|
50
50
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
51
51
|
onError?: ((error: Error) => any) | undefined;
|
|
52
52
|
}>, {
|
|
53
|
-
showBorder: boolean;
|
|
54
|
-
label: string;
|
|
55
|
-
showLabel: boolean;
|
|
56
53
|
size: number;
|
|
54
|
+
label: string;
|
|
57
55
|
color: string;
|
|
58
|
-
|
|
56
|
+
showBorder: boolean;
|
|
57
|
+
showLabel: boolean;
|
|
59
58
|
mode: RenderMode;
|
|
59
|
+
margin: number;
|
|
60
60
|
bgColor: string;
|
|
61
61
|
errorCorrectionLevel: ErrorCorrectionLevel;
|
|
62
62
|
logo: LogoOptions;
|
|
@@ -91,26 +91,26 @@ interface SignatureEmits {
|
|
|
91
91
|
//#endregion
|
|
92
92
|
//#region src/components/C_Signature/index.vue.d.ts
|
|
93
93
|
declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
94
|
-
change: (data: SignatureStroke[]) => any;
|
|
95
94
|
clear: () => any;
|
|
95
|
+
change: (data: SignatureStroke[]) => any;
|
|
96
96
|
"start-draw": () => any;
|
|
97
97
|
drawing: (point: SignaturePoint) => any;
|
|
98
98
|
"end-draw": (stroke: SignatureStroke) => any;
|
|
99
99
|
undo: () => any;
|
|
100
100
|
redo: () => any;
|
|
101
101
|
}, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
|
|
102
|
-
onChange?: ((data: SignatureStroke[]) => any) | undefined;
|
|
103
102
|
onClear?: (() => any) | undefined;
|
|
103
|
+
onChange?: ((data: SignatureStroke[]) => any) | undefined;
|
|
104
104
|
"onStart-draw"?: (() => any) | undefined;
|
|
105
105
|
onDrawing?: ((point: SignaturePoint) => any) | undefined;
|
|
106
106
|
"onEnd-draw"?: ((stroke: SignatureStroke) => any) | undefined;
|
|
107
107
|
onUndo?: (() => any) | undefined;
|
|
108
108
|
onRedo?: (() => any) | undefined;
|
|
109
109
|
}>, {
|
|
110
|
-
width: number | string;
|
|
111
|
-
height: number | string;
|
|
112
110
|
disabled: boolean;
|
|
113
111
|
readonly: boolean;
|
|
112
|
+
height: number | string;
|
|
113
|
+
width: number | string;
|
|
114
114
|
showToolbar: boolean;
|
|
115
115
|
maxHistory: number;
|
|
116
116
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
package/dist/useSplitResize.d.ts
CHANGED
|
@@ -66,24 +66,24 @@ type __VLS_Slots = {} & {
|
|
|
66
66
|
second?: (props: typeof __VLS_13) => any;
|
|
67
67
|
};
|
|
68
68
|
declare const __VLS_base: vue.DefineComponent<Props, SplitPaneExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
69
|
-
resize: (firstSize: number, secondSize: number) => any;
|
|
70
|
-
collapse: (target: CollapseTarget) => any;
|
|
71
|
-
expand: (target: CollapseTarget) => any;
|
|
72
69
|
"drag-start": (size: number) => any;
|
|
73
70
|
"drag-end": (size: number) => any;
|
|
71
|
+
expand: (target: CollapseTarget) => any;
|
|
72
|
+
collapse: (target: CollapseTarget) => any;
|
|
73
|
+
resize: (firstSize: number, secondSize: number) => any;
|
|
74
74
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
75
|
-
onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
|
|
76
|
-
onCollapse?: ((target: CollapseTarget) => any) | undefined;
|
|
77
|
-
onExpand?: ((target: CollapseTarget) => any) | undefined;
|
|
78
75
|
"onDrag-start"?: ((size: number) => any) | undefined;
|
|
79
76
|
"onDrag-end"?: ((size: number) => any) | undefined;
|
|
77
|
+
onExpand?: ((target: CollapseTarget) => any) | undefined;
|
|
78
|
+
onCollapse?: ((target: CollapseTarget) => any) | undefined;
|
|
79
|
+
onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
|
|
80
80
|
}>, {
|
|
81
81
|
disabled: boolean;
|
|
82
|
-
step: number;
|
|
83
82
|
direction: SplitDirection;
|
|
83
|
+
step: number;
|
|
84
|
+
maxSize: number;
|
|
84
85
|
defaultSize: number;
|
|
85
86
|
minSize: number;
|
|
86
|
-
maxSize: number;
|
|
87
87
|
collapsible: boolean;
|
|
88
88
|
showCollapseButton: boolean;
|
|
89
89
|
gutterSize: number;
|
|
@@ -48,12 +48,12 @@ declare const __VLS_export: vue.DefineComponent<TimeProps, TimeExpose, {}, {}, {
|
|
|
48
48
|
"onChange-start"?: ((time: number | null) => any) | undefined;
|
|
49
49
|
"onChange-end"?: ((time: number | null) => any) | undefined;
|
|
50
50
|
}>, {
|
|
51
|
-
format: string;
|
|
52
51
|
placeholder: string;
|
|
53
|
-
|
|
52
|
+
format: string;
|
|
54
53
|
mode: TimeMode;
|
|
55
54
|
startPlaceholder: string;
|
|
56
55
|
endPlaceholder: string;
|
|
56
|
+
attrs: Record<string, any>;
|
|
57
57
|
useHours: boolean;
|
|
58
58
|
useMinutes: boolean;
|
|
59
59
|
useSeconds: boolean;
|
|
@@ -102,16 +102,16 @@ declare const __VLS_base: vue.DefineComponent<TreeProps, TreeExpose, {}, {}, {},
|
|
|
102
102
|
"onNode-drop"?: ((info: DropInfo) => any) | undefined;
|
|
103
103
|
onRefresh?: (() => any) | undefined;
|
|
104
104
|
}>, {
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
draggable: boolean;
|
|
106
|
+
showToolbar: boolean;
|
|
107
107
|
mode: TreeMode;
|
|
108
|
+
labelField: string;
|
|
108
109
|
keyField: string;
|
|
110
|
+
childrenField: string;
|
|
109
111
|
searchPattern: string;
|
|
110
112
|
searchable: boolean;
|
|
111
113
|
searchPlaceholder: string;
|
|
112
|
-
draggable: boolean;
|
|
113
114
|
showLine: boolean;
|
|
114
|
-
showToolbar: boolean;
|
|
115
115
|
addable: boolean;
|
|
116
116
|
addText: string;
|
|
117
117
|
refreshable: boolean;
|
|
@@ -251,8 +251,8 @@ declare const __VLS_export: vue.DefineComponent<WorkflowProps, {
|
|
|
251
251
|
"onNode-click"?: ((node: WorkflowNode) => any) | undefined;
|
|
252
252
|
"onEdge-click"?: ((edge: WorkflowEdge) => any) | undefined;
|
|
253
253
|
}>, {
|
|
254
|
-
theme: "light" | "dark";
|
|
255
254
|
readonly: boolean;
|
|
255
|
+
theme: "light" | "dark";
|
|
256
256
|
users: User[];
|
|
257
257
|
roles: Role[];
|
|
258
258
|
departments: Department[];
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"C_Breadcrumb-D55Jd2CK.css","names":[],"sources":["../src/components/C_Breadcrumb/index.vue?vue&type=style&index=0&lang.scss"],"sourcesContent":["/* unplugin-vue-components disabled */.c-breadcrumb__trigger, .c-breadcrumb__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}"],"mappings":"AAAA;AACA;AACA;AACA;AACA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"C_Breadcrumb-mBL4CWps.css","names":[],"sources":["../src/components/C_Breadcrumb/index.vue?vue&type=style&index=0&lang.scss"],"sourcesContent":["/* unplugin-vue-components disabled */.c-breadcrumb__trigger, .c-breadcrumb__link {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}"],"mappings":"AAAA;AACA;AACA;AACA;AACA"}
|