{"version":3,"file":"breadcrumb2.mjs","sources":["../../../../../../packages/components/breadcrumb/src/breadcrumb.vue"],"sourcesContent":["<template>\n  <div\n    ref=\"breadcrumb\"\n    :class=\"`${namespace}-breadcrumb`\"\n    aria-label=\"t('hl.breadcrumb.label')\"\n    role=\"navigation\"\n  >\n    <slot></slot>\n    <slot name=\"icon\"></slot>\n  </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, ref, onMounted } from 'vue'\nimport { useLocale, useNamespace } from '@hongluan-ui/hooks'\nimport { BreadcrumbKey } from '@hongluan-ui/tokens'\nimport { breadcrumbProps } from './breadcrumb'\n\nimport type { IBreadcrumbProps } from './breadcrumb'\n\nexport default defineComponent({\n  name: 'Breadcrumb',\n  props: breadcrumbProps,\n  setup(props, { slots }) {\n    const { namespace } = useNamespace()\n    const { t } = useLocale()\n\n    const breadcrumb = ref<HTMLDivElement>()\n\n    provide<IBreadcrumbProps>(BreadcrumbKey, { separator: props.separator, slots })\n\n    onMounted(() => {\n      const items = breadcrumb.value?.querySelectorAll(`.${namespace.value}-breadcrumb-item`)\n      if (items?.length) {\n        const lastItem = items[items.length - 1]\n        lastItem.setAttribute('aria-current', 'page')\n        while(slots.icon && lastItem.nextSibling) {\n          breadcrumb.value?.removeChild(lastItem.nextSibling)\n        }\n      }\n    })\n\n    return {\n      t,\n      namespace,\n      breadcrumb,\n    }\n  },\n})\n</script>\n"],"names":["_openBlock","_renderSlot"],"mappings":";;;;;;;;;AAoBA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAM,OAAO,EAAE,SAAS;AACtB,UAAM,EAAE,cAAc;AACtB,UAAM,EAAE,MAAM;AAEd,UAAM,aAAa;AAEnB,YAA0B,eAAe,EAAE,WAAW,MAAM,WAAW,OAAO;AAE9E,cAAU,MAAM;AACd,YAAM;AACN,iBAAW;AACT,+BAAuB;AACvB,8BAAsB,gBAAgB;AACtC,6BAAoB;AAClB,qBAAW,4BAA4B;AAAW;AACpD;AACF;AAGF;AAAO;AACL,MACA;AAAA,MACA;AAAA;AACF;AAEJ;;2CAvCQ;AAAA,SAPAA;AAAA,IACH;AAAmB,IACpB;AAAW,IACX;AAAK;;AAEQ,IACbC,WAAyB;AAAA;;;;;;;"}