UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 2.68 kB
{"version":3,"file":"steps.mjs","sources":["../../../../../../packages/components/tour/src/steps.ts"],"sourcesContent":["import { defineComponent } from 'vue'\nimport { flattedChildren, isArray } from '@element-plus/utils'\n\nimport type { FlattenVNodes } from '@element-plus/utils'\nimport type { Component, VNode } from 'vue'\n\nexport default defineComponent({\n name: 'ElTourSteps',\n props: {\n current: {\n type: Number,\n default: 0,\n },\n },\n emits: ['update-total'],\n setup(props, { slots, emit }) {\n let cacheTotal = 0\n\n return () => {\n const children = slots.default?.()!\n const result: VNode[] = []\n let total = 0\n\n function filterSteps(children?: FlattenVNodes) {\n if (!isArray(children)) return\n ;(children as VNode[]).forEach((item) => {\n const name = ((item?.type || {}) as Component)?.name\n\n if (name === 'ElTourStep') {\n result.push(item)\n total += 1\n }\n })\n }\n\n if (children.length) {\n filterSteps(flattedChildren(children![0]?.children))\n }\n\n if (cacheTotal !== total) {\n cacheTotal = total\n emit('update-total', total)\n }\n\n if (result.length) {\n return result[props.current]\n }\n return null\n }\n },\n})\n"],"names":["children","_a"],"mappings":";;;;AAMA,kBAAe,eAAA,CAAgB;AAAA,EAC7B,IAAA,EAAM,aAAA;AAAA,EACN,KAAA,EAAO;AAAA,IACL,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,MAAA;AAAA,MACN,OAAA,EAAS;AAAA;AACX,GACF;AAAA,EACA,KAAA,EAAO,CAAC,cAAc,CAAA;AAAA,EACtB,KAAA,CAAM,KAAA,EAAO,EAAE,KAAA,EAAO,MAAK,EAAG;AAC5B,IAAA,IAAI,UAAA,GAAa,CAAA;AAEjB,IAAA,OAAO,MAAM;AAlBjB,MAAA,IAAA,EAAA,EAAA,EAAA;AAmBM,MAAA,MAAM,QAAA,GAAA,CAAW,WAAM,OAAA,KAAN,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA;AACjB,MAAA,MAAM,SAAkB,EAAC;AACzB,MAAA,IAAI,KAAA,GAAQ,CAAA;AAEZ,MAAA,SAAS,YAAYA,SAAAA,EAA0B;AAC7C,QAAA,IAAI,CAAC,OAAA,CAAQA,SAAQ,CAAA,EAAG;AACvB,QAACA,SAAAA,CAAqB,OAAA,CAAQ,CAAC,IAAA,KAAS;AAzBjD,UAAA,IAAAC,GAAAA;AA0BU,UAAA,MAAM,QAASA,GAAAA,GAAAA,CAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,SAAQ,EAAC,KAAf,gBAAAA,GAAAA,CAAiC,IAAA;AAEhD,UAAA,IAAI,SAAS,YAAA,EAAc;AACzB,YAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAChB,YAAA,KAAA,IAAS,CAAA;AAAA,UACX;AAAA,QACF,CAAC,CAAA;AAAA,MACH;AAEA,MAAA,IAAI,SAAS,MAAA,EAAQ;AACnB,QAAA,WAAA,CAAY,iBAAgB,EAAA,GAAA,QAAA,CAAU,CAAC,CAAA,KAAX,IAAA,GAAA,MAAA,GAAA,EAAA,CAAc,QAAQ,CAAC,CAAA;AAAA,MACrD;AAEA,MAAA,IAAI,eAAe,KAAA,EAAO;AACxB,QAAA,UAAA,GAAa,KAAA;AACb,QAAA,IAAA,CAAK,gBAAgB,KAAK,CAAA;AAAA,MAC5B;AAEA,MAAA,IAAI,OAAO,MAAA,EAAQ;AACjB,QAAA,OAAO,MAAA,CAAO,MAAM,OAAO,CAAA;AAAA,MAC7B;AACA,MAAA,OAAO,IAAA;AAAA,IACT,CAAA;AAAA,EACF;AACF,CAAC,CAAA;;;;"}