feat: initial commit - Phase 1 & 2 core features

This commit is contained in:
hiderfong
2026-04-22 17:07:33 +08:00
commit 1773bda06b
25005 changed files with 6252106 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
import { SFCWithInstall } from "../../utils/vue/typescript.js";
import "../../utils/index.js";
import { BreadcrumbProps, BreadcrumbPropsPublic, breadcrumbProps } from "./src/breadcrumb.js";
import { _default } from "./src/breadcrumb.vue.js";
import { BreadcrumbItemProps, BreadcrumbItemPropsPublic, breadcrumbItemProps } from "./src/breadcrumb-item.js";
import { _default as _default$1 } from "./src/breadcrumb-item.vue.js";
import { breadcrumbKey } from "./src/constants.js";
import { BreadcrumbInstance, BreadcrumbItemInstance } from "./src/instances.js";
//#region ../../packages/components/breadcrumb/index.d.ts
declare const ElBreadcrumb: SFCWithInstall<typeof _default> & {
BreadcrumbItem: typeof _default$1;
};
declare const ElBreadcrumbItem: SFCWithInstall<typeof _default$1>;
//#endregion
export { type BreadcrumbInstance, type BreadcrumbItemInstance, BreadcrumbItemProps, BreadcrumbItemPropsPublic, BreadcrumbProps, BreadcrumbPropsPublic, ElBreadcrumb, ElBreadcrumb as default, ElBreadcrumbItem, breadcrumbItemProps, breadcrumbKey, breadcrumbProps };
+14
View File
@@ -0,0 +1,14 @@
import { withInstall, withNoopInstall } from "../../utils/vue/install.mjs";
import { breadcrumbProps } from "./src/breadcrumb.mjs";
import { breadcrumbKey } from "./src/constants.mjs";
import breadcrumb_default from "./src/breadcrumb2.mjs";
import { breadcrumbItemProps } from "./src/breadcrumb-item.mjs";
import breadcrumb_item_default from "./src/breadcrumb-item2.mjs";
//#region ../../packages/components/breadcrumb/index.ts
const ElBreadcrumb = withInstall(breadcrumb_default, { BreadcrumbItem: breadcrumb_item_default });
const ElBreadcrumbItem = withNoopInstall(breadcrumb_item_default);
//#endregion
export { ElBreadcrumb, ElBreadcrumb as default, ElBreadcrumbItem, breadcrumbItemProps, breadcrumbKey, breadcrumbProps };
//# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"index.mjs","names":["Breadcrumb","BreadcrumbItem"],"sources":["../../../../../packages/components/breadcrumb/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from '@element-plus/utils'\nimport Breadcrumb from './src/breadcrumb.vue'\nimport BreadcrumbItem from './src/breadcrumb-item.vue'\n\nimport type { SFCWithInstall } from '@element-plus/utils'\n\nexport const ElBreadcrumb: SFCWithInstall<typeof Breadcrumb> & {\n BreadcrumbItem: typeof BreadcrumbItem\n} = withInstall(Breadcrumb, {\n BreadcrumbItem,\n})\nexport const ElBreadcrumbItem: SFCWithInstall<typeof BreadcrumbItem> =\n withNoopInstall(BreadcrumbItem)\nexport default ElBreadcrumb\n\nexport * from './src/breadcrumb'\nexport * from './src/breadcrumb-item'\nexport * from './src/constants'\nexport type {\n BreadcrumbInstance,\n BreadcrumbItemInstance,\n} from './src/instances'\n"],"mappings":";;;;;;;;AAMA,MAAa,eAET,YAAYA,oBAAY,EAC1B,yCACD,CAAC;AACF,MAAa,mBACX,gBAAgBC,wBAAe"}
@@ -0,0 +1,30 @@
import { EpPropFinalized } from "../../../utils/vue/props/types.js";
import "../../../utils/index.js";
import { ExtractPublicPropTypes } from "vue";
import * as vue_router0 from "vue-router";
import { RouteLocationRaw } from "vue-router";
//#region ../../packages/components/breadcrumb/src/breadcrumb-item.d.ts
interface BreadcrumbItemProps {
/**
* @description target route of the link, same as `to` of `vue-router`
*/
to?: RouteLocationRaw;
/**
* @description if `true`, the navigation will not leave a history record
*/
replace?: boolean;
}
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbItemProps` instead.
*/
declare const breadcrumbItemProps: {
readonly to: EpPropFinalized<(new (...args: any[]) => string | vue_router0.RouteLocationAsRelativeGeneric | vue_router0.RouteLocationAsPathGeneric) | (() => string | vue_router0.RouteLocationAsRelativeGeneric | vue_router0.RouteLocationAsPathGeneric) | (((new (...args: any[]) => string | vue_router0.RouteLocationAsRelativeGeneric | vue_router0.RouteLocationAsPathGeneric) | (() => string | vue_router0.RouteLocationAsRelativeGeneric | vue_router0.RouteLocationAsPathGeneric)) | null)[], unknown, unknown, "", boolean>;
readonly replace: BooleanConstructor;
};
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbItemProps` instead.
*/
type BreadcrumbItemPropsPublic = ExtractPublicPropTypes<typeof breadcrumbItemProps>;
//#endregion
export { BreadcrumbItemProps, BreadcrumbItemPropsPublic, breadcrumbItemProps };
@@ -0,0 +1,17 @@
import { buildProps, definePropType } from "../../../utils/vue/props/runtime.mjs";
//#region ../../packages/components/breadcrumb/src/breadcrumb-item.ts
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbItemProps` instead.
*/
const breadcrumbItemProps = buildProps({
to: {
type: definePropType([String, Object]),
default: ""
},
replace: Boolean
});
//#endregion
export { breadcrumbItemProps };
//# sourceMappingURL=breadcrumb-item.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb-item.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb-item.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\n\nexport interface BreadcrumbItemProps {\n /**\n * @description target route of the link, same as `to` of `vue-router`\n */\n to?: RouteLocationRaw\n /**\n * @description if `true`, the navigation will not leave a history record\n */\n replace?: boolean\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `BreadcrumbItemProps` instead.\n */\nexport const breadcrumbItemProps = buildProps({\n /**\n * @description target route of the link, same as `to` of `vue-router`\n */\n to: {\n type: definePropType<RouteLocationRaw>([String, Object]),\n default: '',\n },\n /**\n * @description if `true`, the navigation will not leave a history record\n */\n replace: Boolean,\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `BreadcrumbItemProps` instead.\n */\nexport type BreadcrumbItemPropsPublic = ExtractPublicPropTypes<\n typeof breadcrumbItemProps\n>\n"],"mappings":";;;;;;AAmBA,MAAa,sBAAsB,WAAW;CAI5C,IAAI;EACF,MAAM,eAAiC,CAAC,QAAQ,OAAO,CAAC;EACxD,SAAS;EACV;CAID,SAAS;CACV,CAAU"}
@@ -0,0 +1,21 @@
import { BreadcrumbItemProps } from "./breadcrumb-item.js";
import * as vue from "vue";
import * as vue_router0 from "vue-router";
//#region ../../packages/components/breadcrumb/src/breadcrumb-item.vue.d.ts
declare var __VLS_1: {};
type __VLS_Slots = {} & {
default?: (props: typeof __VLS_1) => any;
};
declare const __VLS_base: vue.DefineComponent<BreadcrumbItemProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<BreadcrumbItemProps> & Readonly<{}>, {
to: vue_router0.RouteLocationRaw;
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};
//#endregion
export { _default };
@@ -0,0 +1,44 @@
import { useNamespace } from "../../../hooks/use-namespace/index.mjs";
import { ElIcon } from "../../icon/index.mjs";
import { breadcrumbKey } from "./constants.mjs";
import { breadcrumbItemProps } from "./breadcrumb-item.mjs";
import { createBlock, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, inject, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
//#region ../../packages/components/breadcrumb/src/breadcrumb-item.vue?vue&type=script&setup=true&lang.ts
var breadcrumb_item_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
name: "ElBreadcrumbItem",
__name: "breadcrumb-item",
props: breadcrumbItemProps,
setup(__props) {
const props = __props;
const instance = getCurrentInstance();
const breadcrumbContext = inject(breadcrumbKey, void 0);
const ns = useNamespace("breadcrumb");
const router = instance.appContext.config.globalProperties.$router;
const onClick = () => {
if (!props.to || !router) return;
props.replace ? router.replace(props.to) : router.push(props.to);
};
return (_ctx, _cache) => {
return openBlock(), createElementBlock("span", { class: normalizeClass(unref(ns).e("item")) }, [createElementVNode("span", {
class: normalizeClass([unref(ns).e("inner"), unref(ns).is("link", !!__props.to)]),
role: "link",
onClick
}, [renderSlot(_ctx.$slots, "default")], 2), unref(breadcrumbContext)?.separatorIcon ? (openBlock(), createBlock(unref(ElIcon), {
key: 0,
class: normalizeClass(unref(ns).e("separator"))
}, {
default: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(unref(breadcrumbContext).separatorIcon)))]),
_: 1
}, 8, ["class"])) : (openBlock(), createElementBlock("span", {
key: 1,
class: normalizeClass(unref(ns).e("separator")),
role: "presentation"
}, toDisplayString(unref(breadcrumbContext)?.separator), 3))], 2);
};
}
});
//#endregion
export { breadcrumb_item_vue_vue_type_script_setup_true_lang_default as default };
//# sourceMappingURL=breadcrumb-item.vue_vue_type_script_setup_true_lang.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb-item.vue_vue_type_script_setup_true_lang.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb-item.vue"],"sourcesContent":["<template>\n <span :class=\"ns.e('item')\">\n <span\n :class=\"[ns.e('inner'), ns.is('link', !!to)]\"\n role=\"link\"\n @click=\"onClick\"\n >\n <slot />\n </span>\n <el-icon v-if=\"breadcrumbContext?.separatorIcon\" :class=\"ns.e('separator')\">\n <component :is=\"breadcrumbContext.separatorIcon\" />\n </el-icon>\n <span v-else :class=\"ns.e('separator')\" role=\"presentation\">\n {{ breadcrumbContext?.separator }}\n </span>\n </span>\n</template>\n\n<script lang=\"ts\" setup>\nimport { getCurrentInstance, inject } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { breadcrumbKey } from './constants'\n\nimport type { Router } from 'vue-router'\nimport type { BreadcrumbItemProps } from './breadcrumb-item'\n\ndefineOptions({\n name: 'ElBreadcrumbItem',\n})\n\nconst props = withDefaults(defineProps<BreadcrumbItemProps>(), {\n to: '',\n})\n\nconst instance = getCurrentInstance()!\nconst breadcrumbContext = inject(breadcrumbKey, undefined)\nconst ns = useNamespace('breadcrumb')\n\nconst router = instance.appContext.config.globalProperties.$router as Router\n\nconst onClick = () => {\n if (!props.to || !router) return\n props.replace ? router.replace(props.to) : router.push(props.to)\n}\n</script>\n"],"mappings":";;;;;;;;;;;;EA+BA,MAAM,QAAQ;EAId,MAAM,WAAW,oBAAoB;EACrC,MAAM,oBAAoB,OAAO,eAAe,OAAS;EACzD,MAAM,KAAK,aAAa,aAAY;EAEpC,MAAM,SAAS,SAAS,WAAW,OAAO,iBAAiB;EAE3D,MAAM,gBAAgB;AACpB,OAAI,CAAC,MAAM,MAAM,CAAC,OAAQ;AAC1B,SAAM,UAAU,OAAO,QAAQ,MAAM,GAAG,GAAG,OAAO,KAAK,MAAM,GAAE;;;uBA1C/D,mBAcO,QAAA,EAdA,OAAK,eAAE,MAAA,GAAE,CAAC,EAAC,OAAA,CAAA,KAChB,mBAMO,QAAA;IALJ,OAAK,eAAA,CAAG,MAAA,GAAE,CAAC,EAAC,QAAA,EAAW,MAAA,GAAE,CAAC,GAAE,QAAA,CAAA,CAAW,QAAA,GAAE,CAAA,CAAA;IAC1C,MAAK;IACG;OAER,WAAQ,KAAA,QAAA,UAAA,OAEK,MAAA,kBAAiB,EAAE,8BAAlC,YAEU,MAAA,OAAA,EAAA;;IAFwC,OAAK,eAAE,MAAA,GAAE,CAAC,EAAC,YAAA,CAAA;;2BACR,eAAnD,YAAmD,wBAAnC,MAAA,kBAAiB,CAAC,cAAa,CAAA;;qCAEjD,mBAEO,QAAA;;IAFO,OAAK,eAAE,MAAA,GAAE,CAAC,EAAC,YAAA,CAAA;IAAe,MAAK;sBACxC,MAAA,kBAAiB,EAAE,UAAS,EAAA,EAAA"}
@@ -0,0 +1,8 @@
import breadcrumb_item_vue_vue_type_script_setup_true_lang_default from "./breadcrumb-item.vue_vue_type_script_setup_true_lang.mjs";
//#region ../../packages/components/breadcrumb/src/breadcrumb-item.vue
var breadcrumb_item_default = breadcrumb_item_vue_vue_type_script_setup_true_lang_default;
//#endregion
export { breadcrumb_item_default as default };
//# sourceMappingURL=breadcrumb-item2.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb-item2.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb-item.vue"],"sourcesContent":["<template>\n <span :class=\"ns.e('item')\">\n <span\n :class=\"[ns.e('inner'), ns.is('link', !!to)]\"\n role=\"link\"\n @click=\"onClick\"\n >\n <slot />\n </span>\n <el-icon v-if=\"breadcrumbContext?.separatorIcon\" :class=\"ns.e('separator')\">\n <component :is=\"breadcrumbContext.separatorIcon\" />\n </el-icon>\n <span v-else :class=\"ns.e('separator')\" role=\"presentation\">\n {{ breadcrumbContext?.separator }}\n </span>\n </span>\n</template>\n\n<script lang=\"ts\" setup>\nimport { getCurrentInstance, inject } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { breadcrumbKey } from './constants'\n\nimport type { Router } from 'vue-router'\nimport type { BreadcrumbItemProps } from './breadcrumb-item'\n\ndefineOptions({\n name: 'ElBreadcrumbItem',\n})\n\nconst props = withDefaults(defineProps<BreadcrumbItemProps>(), {\n to: '',\n})\n\nconst instance = getCurrentInstance()!\nconst breadcrumbContext = inject(breadcrumbKey, undefined)\nconst ns = useNamespace('breadcrumb')\n\nconst router = instance.appContext.config.globalProperties.$router as Router\n\nconst onClick = () => {\n if (!props.to || !router) return\n props.replace ? router.replace(props.to) : router.push(props.to)\n}\n</script>\n"],"mappings":""}
@@ -0,0 +1,35 @@
import { IconPropType } from "../../../utils/vue/icon.js";
import { EpPropFinalized, EpPropMergeType } from "../../../utils/vue/props/types.js";
import "../../../utils/index.js";
import * as vue from "vue";
import { ExtractPublicPropTypes } from "vue";
//#region ../../packages/components/breadcrumb/src/breadcrumb.d.ts
interface BreadcrumbProps {
/**
* @description separator character
*/
separator?: string;
/**
* @description icon component of icon separator
*/
separatorIcon?: IconPropType;
}
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbProps` instead.
*/
declare const breadcrumbProps: {
readonly separator: EpPropFinalized<StringConstructor, unknown, unknown, "/", boolean>;
readonly separatorIcon: {
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
};
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbProps` instead.
*/
type BreadcrumbPropsPublic = ExtractPublicPropTypes<typeof breadcrumbProps>;
//#endregion
export { BreadcrumbProps, BreadcrumbPropsPublic, breadcrumbProps };
@@ -0,0 +1,18 @@
import { buildProps } from "../../../utils/vue/props/runtime.mjs";
import { iconPropType } from "../../../utils/vue/icon.mjs";
//#region ../../packages/components/breadcrumb/src/breadcrumb.ts
/**
* @deprecated Removed after 3.0.0, Use `BreadcrumbProps` instead.
*/
const breadcrumbProps = buildProps({
separator: {
type: String,
default: "/"
},
separatorIcon: { type: iconPropType }
});
//#endregion
export { breadcrumbProps };
//# sourceMappingURL=breadcrumb.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { IconPropType } from '@element-plus/utils'\n\nexport interface BreadcrumbProps {\n /**\n * @description separator character\n */\n separator?: string\n /**\n * @description icon component of icon separator\n */\n separatorIcon?: IconPropType\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `BreadcrumbProps` instead.\n */\nexport const breadcrumbProps = buildProps({\n /**\n * @description separator character\n */\n separator: {\n type: String,\n default: '/',\n },\n /**\n * @description icon component of icon separator\n */\n separatorIcon: {\n type: iconPropType,\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `BreadcrumbProps` instead.\n */\nexport type BreadcrumbPropsPublic = ExtractPublicPropTypes<\n typeof breadcrumbProps\n>\n"],"mappings":";;;;;;;AAmBA,MAAa,kBAAkB,WAAW;CAIxC,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,eAAe,EACb,MAAM,cACP;CACF,CAAU"}
@@ -0,0 +1,20 @@
import { BreadcrumbProps } from "./breadcrumb.js";
import * as vue from "vue";
//#region ../../packages/components/breadcrumb/src/breadcrumb.vue.d.ts
declare var __VLS_1: {};
type __VLS_Slots = {} & {
default?: (props: typeof __VLS_1) => any;
};
declare const __VLS_base: vue.DefineComponent<BreadcrumbProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<BreadcrumbProps> & Readonly<{}>, {
separator: string;
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};
//#endregion
export { _default };
@@ -0,0 +1,37 @@
import { useLocale } from "../../../hooks/use-locale/index.mjs";
import { useNamespace } from "../../../hooks/use-namespace/index.mjs";
import { breadcrumbProps } from "./breadcrumb.mjs";
import { breadcrumbKey } from "./constants.mjs";
import { createElementBlock, defineComponent, normalizeClass, onMounted, openBlock, provide, ref, renderSlot, unref } from "vue";
//#region ../../packages/components/breadcrumb/src/breadcrumb.vue?vue&type=script&setup=true&lang.ts
const _hoisted_1 = ["aria-label"];
var breadcrumb_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
name: "ElBreadcrumb",
__name: "breadcrumb",
props: breadcrumbProps,
setup(__props) {
const { t } = useLocale();
const props = __props;
const ns = useNamespace("breadcrumb");
const breadcrumb = ref();
provide(breadcrumbKey, props);
onMounted(() => {
const items = breadcrumb.value.querySelectorAll(`.${ns.e("item")}`);
if (items.length) items[items.length - 1].setAttribute("aria-current", "page");
});
return (_ctx, _cache) => {
return openBlock(), createElementBlock("div", {
ref_key: "breadcrumb",
ref: breadcrumb,
class: normalizeClass(unref(ns).b()),
"aria-label": unref(t)("el.breadcrumb.label"),
role: "navigation"
}, [renderSlot(_ctx.$slots, "default")], 10, _hoisted_1);
};
}
});
//#endregion
export { breadcrumb_vue_vue_type_script_setup_true_lang_default as default };
//# sourceMappingURL=breadcrumb.vue_vue_type_script_setup_true_lang.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb.vue_vue_type_script_setup_true_lang.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb.vue"],"sourcesContent":["<template>\n <div\n ref=\"breadcrumb\"\n :class=\"ns.b()\"\n :aria-label=\"t('el.breadcrumb.label')\"\n role=\"navigation\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { onMounted, provide, ref } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { breadcrumbKey } from './constants'\n\nimport type { BreadcrumbProps } from './breadcrumb'\n\ndefineOptions({\n name: 'ElBreadcrumb',\n})\n\nconst { t } = useLocale()\nconst props = withDefaults(defineProps<BreadcrumbProps>(), {\n separator: '/',\n})\n\nconst ns = useNamespace('breadcrumb')\nconst breadcrumb = ref<HTMLDivElement>()\n\nprovide(breadcrumbKey, props)\n\nonMounted(() => {\n const items = breadcrumb.value!.querySelectorAll(`.${ns.e('item')}`)\n if (items.length) {\n items[items.length - 1].setAttribute('aria-current', 'page')\n }\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;EAsBA,MAAM,EAAE,MAAM,WAAU;EACxB,MAAM,QAAQ;EAId,MAAM,KAAK,aAAa,aAAY;EACpC,MAAM,aAAa,KAAoB;AAEvC,UAAQ,eAAe,MAAK;AAE5B,kBAAgB;GACd,MAAM,QAAQ,WAAW,MAAO,iBAAiB,IAAI,GAAG,EAAE,OAAO,GAAE;AACnE,OAAI,MAAM,OACR,OAAM,MAAM,SAAS,GAAG,aAAa,gBAAgB,OAAM;IAE9D;;uBApCC,mBAOM,OAAA;aANA;IAAJ,KAAI;IACH,OAAK,eAAE,MAAA,GAAE,CAAC,GAAC,CAAA;IACX,cAAY,MAAA,EAAC,CAAA,sBAAA;IACd,MAAK;OAEL,WAAQ,KAAA,QAAA,UAAA"}
@@ -0,0 +1,8 @@
import breadcrumb_vue_vue_type_script_setup_true_lang_default from "./breadcrumb.vue_vue_type_script_setup_true_lang.mjs";
//#region ../../packages/components/breadcrumb/src/breadcrumb.vue
var breadcrumb_default = breadcrumb_vue_vue_type_script_setup_true_lang_default;
//#endregion
export { breadcrumb_default as default };
//# sourceMappingURL=breadcrumb2.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"breadcrumb2.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb.vue"],"sourcesContent":["<template>\n <div\n ref=\"breadcrumb\"\n :class=\"ns.b()\"\n :aria-label=\"t('el.breadcrumb.label')\"\n role=\"navigation\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { onMounted, provide, ref } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { breadcrumbKey } from './constants'\n\nimport type { BreadcrumbProps } from './breadcrumb'\n\ndefineOptions({\n name: 'ElBreadcrumb',\n})\n\nconst { t } = useLocale()\nconst props = withDefaults(defineProps<BreadcrumbProps>(), {\n separator: '/',\n})\n\nconst ns = useNamespace('breadcrumb')\nconst breadcrumb = ref<HTMLDivElement>()\n\nprovide(breadcrumbKey, props)\n\nonMounted(() => {\n const items = breadcrumb.value!.querySelectorAll(`.${ns.e('item')}`)\n if (items.length) {\n items[items.length - 1].setAttribute('aria-current', 'page')\n }\n})\n</script>\n"],"mappings":""}
@@ -0,0 +1,7 @@
import { BreadcrumbProps } from "./breadcrumb.js";
import { InjectionKey } from "vue";
//#region ../../packages/components/breadcrumb/src/constants.d.ts
declare const breadcrumbKey: InjectionKey<BreadcrumbProps>;
//#endregion
export { breadcrumbKey };
@@ -0,0 +1,6 @@
//#region ../../packages/components/breadcrumb/src/constants.ts
const breadcrumbKey = Symbol("breadcrumbKey");
//#endregion
export { breadcrumbKey };
//# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"constants.mjs","names":[],"sources":["../../../../../../packages/components/breadcrumb/src/constants.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { BreadcrumbProps } from './breadcrumb'\n\nexport const breadcrumbKey: InjectionKey<BreadcrumbProps> =\n Symbol('breadcrumbKey')\n"],"mappings":";AAGA,MAAa,gBACX,OAAO,gBAAgB"}
@@ -0,0 +1,8 @@
import { _default } from "./breadcrumb.vue.js";
import { _default as _default$1 } from "./breadcrumb-item.vue.js";
//#region ../../packages/components/breadcrumb/src/instances.d.ts
type BreadcrumbItemInstance = InstanceType<typeof _default$1> & unknown;
type BreadcrumbInstance = InstanceType<typeof _default> & unknown;
//#endregion
export { BreadcrumbInstance, BreadcrumbItemInstance };
@@ -0,0 +1,2 @@
import "../../base/style/css.mjs";
import "element-plus/theme-chalk/el-breadcrumb.css";
@@ -0,0 +1,2 @@
import "../../base/style/index.mjs";
import "element-plus/theme-chalk/src/breadcrumb.scss";