UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 2.78 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,eAAgB,CAAA;AAAA,EAC7B,IAAM,EAAA,aAAA;AAAA,EACN,KAAO,EAAA;AAAA,IACL,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,CAAA;AAAA,KACX;AAAA,GACF;AAAA,EACA,KAAA,EAAO,CAAC,cAAc,CAAA;AAAA,EACtB,KAAM,CAAA,KAAA,EAAO,EAAE,KAAA,EAAO,MAAQ,EAAA;AAC5B,IAAA,IAAI,UAAa,GAAA,CAAA,CAAA;AAEjB,IAAA,OAAO,MAAM;AAlBjB,MAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AAmBM,MAAM,MAAA,QAAA,GAAA,CAAW,WAAM,OAAN,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AACjB,MAAA,MAAM,SAAkB,EAAC,CAAA;AACzB,MAAA,IAAI,KAAQ,GAAA,CAAA,CAAA;AAEZ,MAAA,SAAS,YAAYA,SAA0B,EAAA;AAC7C,QAAI,IAAA,CAAC,QAAQA,SAAQ,CAAA;AAAG,UAAA,OAAA;AACvB,QAACA,SAAAA,CAAqB,OAAQ,CAAA,CAAC,IAAS,KAAA;AAzBjD,UAAAC,IAAAA,GAAAA,CAAAA;AA0BU,UAAA,MAAM,QAASA,GAAA,GAAA,CAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAM,SAAQ,EAAC,KAAf,gBAAAA,GAAiC,CAAA,IAAA,CAAA;AAEhD,UAAA,IAAI,SAAS,YAAc,EAAA;AACzB,YAAA,MAAA,CAAO,KAAK,IAAI,CAAA,CAAA;AAChB,YAAS,KAAA,IAAA,CAAA,CAAA;AAAA,WACX;AAAA,SACD,CAAA,CAAA;AAAA,OACH;AAEA,MAAA,IAAI,SAAS,MAAQ,EAAA;AACnB,QAAA,WAAA,CAAY,eAAgB,CAAA,CAAA,EAAA,GAAA,QAAA,CAAU,CAAV,CAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAc,QAAQ,CAAC,CAAA,CAAA;AAAA,OACrD;AAEA,MAAA,IAAI,eAAe,KAAO,EAAA;AACxB,QAAa,UAAA,GAAA,KAAA,CAAA;AACb,QAAA,IAAA,CAAK,gBAAgB,KAAK,CAAA,CAAA;AAAA,OAC5B;AAEA,MAAA,IAAI,OAAO,MAAQ,EAAA;AACjB,QAAA,OAAO,OAAO,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,OACtB;AACA,MAAO,OAAA,IAAA,CAAA;AAAA,KACT,CAAA;AAAA,GACF;AACF,CAAC,CAAA;;;;"}