UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 9.31 kB
{"version":3,"file":"tour2.mjs","sources":["../../../../../../packages/components/tour/src/tour.vue"],"sourcesContent":["<template>\n <el-teleport :to=\"appendTo\">\n <div :class=\"kls\" v-bind=\"$attrs\">\n <el-tour-mask\n :visible=\"mergedShowMask\"\n :fill=\"mergedMaskStyle?.color\"\n :style=\"mergedMaskStyle?.style\"\n :pos=\"pos\"\n :z-index=\"mergedZIndex\"\n :target-area-clickable=\"targetAreaClickable\"\n />\n <el-tour-content\n v-if=\"modelValue\"\n :key=\"current\"\n :reference=\"triggerTarget\"\n :placement=\"mergedPlacement\"\n :show-arrow=\"mergedShowArrow\"\n :z-index=\"mergedZIndex\"\n :style=\"mergedContentStyle\"\n @close=\"onEscClose\"\n >\n <el-tour-steps :current=\"current\" @update-total=\"onUpdateTotal\">\n <slot />\n </el-tour-steps>\n </el-tour-content>\n </div>\n </el-teleport>\n <!-- just for IDE -->\n <slot v-if=\"false\" name=\"indicators\" :current=\"current + 1\" :total=\"total\" />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref, toRef, useSlots, watch } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { useNamespace, useZIndex } from '@element-plus/hooks'\nimport { isBoolean } from '@element-plus/utils'\nimport ElTeleport from '@element-plus/components/teleport'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport ElTourMask from './mask.vue'\nimport ElTourContent from './content.vue'\nimport ElTourSteps from './steps'\nimport { tourEmits, tourProps } from './tour'\nimport { tourKey, useTarget } from './helper'\n\nimport type { TourStepProps } from './step'\n\ndefineOptions({\n name: 'ElTour',\n})\n\nconst props = defineProps(tourProps)\nconst emit = defineEmits(tourEmits)\n\nconst ns = useNamespace('tour')\nconst total = ref(0)\nconst currentStep = ref<TourStepProps>()\n\nconst current = useVModel(props, 'current', emit, {\n passive: true,\n})\n\nconst currentTarget = computed(() => currentStep.value?.target)\n\nconst kls = computed(() => [\n ns.b(),\n mergedType.value === 'primary' ? ns.m('primary') : '',\n])\n\nconst mergedPlacement = computed(\n () => currentStep.value?.placement || props.placement\n)\n\nconst mergedContentStyle = computed(\n () => currentStep.value?.contentStyle ?? props.contentStyle\n)\n\nconst mergedMask = computed(() => currentStep.value?.mask ?? props.mask)\nconst mergedShowMask = computed(() => !!mergedMask.value && props.modelValue)\nconst mergedMaskStyle = computed(() =>\n isBoolean(mergedMask.value) ? undefined : mergedMask.value\n)\n\nconst mergedShowArrow = computed(\n () =>\n !!currentTarget.value && (currentStep.value?.showArrow ?? props.showArrow)\n)\n\nconst mergedScrollIntoViewOptions = computed(\n () => currentStep.value?.scrollIntoViewOptions ?? props.scrollIntoViewOptions\n)\nconst mergedType = computed(() => currentStep.value?.type ?? props.type)\n\nconst { nextZIndex } = useZIndex()\nconst nowZIndex = nextZIndex()\nconst mergedZIndex = computed(() => props.zIndex ?? nowZIndex)\n\nconst { mergedPosInfo: pos, triggerTarget } = useTarget(\n currentTarget,\n toRef(props, 'modelValue'),\n toRef(props, 'gap'),\n mergedMask,\n mergedScrollIntoViewOptions\n)\n\nwatch(\n () => props.modelValue,\n (val) => {\n if (!val) {\n current.value = 0\n }\n }\n)\n\nconst onEscClose = () => {\n if (props.closeOnPressEscape) {\n emit(UPDATE_MODEL_EVENT, false)\n emit('close', current.value)\n }\n}\n\nconst onUpdateTotal = (val: number) => {\n total.value = val\n}\n\nconst slots = useSlots()\n\nprovide(tourKey, {\n currentStep,\n current,\n total,\n showClose: toRef(props, 'showClose'),\n closeIcon: toRef(props, 'closeIcon'),\n mergedType,\n ns,\n slots,\n updateModelValue(modelValue) {\n emit(UPDATE_MODEL_EVENT, modelValue)\n },\n onClose() {\n emit('close', current.value)\n },\n onFinish() {\n emit('finish')\n },\n onChange() {\n emit(CHANGE_EVENT, current.value)\n },\n})\n</script>\n"],"names":["_createVNode","_unref","appendTo","_withCtx","_createElementVNode","_mergeProps","$attrs","_normalizeStyle","targetAreaClickable","modelValue","_createBlock","_renderSlot","_createCommentVNode"],"mappings":"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"}