{"version":3,"sources":["../src/steps/step-item.ts"],"names":[],"mappings":"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","file":"step-item.js","sourcesContent":["import { wxComponent, SuperComponent, RelationsOptions } from '../common/src/index';\nimport config from '../common/config';\nimport props from './step-item-props';\n\nconst { prefix } = config;\n\n@wxComponent()\nexport default class StepItem extends SuperComponent {\n options = {\n multipleSlots: true,\n };\n\n relations: RelationsOptions = {\n './steps': {\n type: 'ancestor',\n },\n };\n\n externalClasses = [\n `${prefix}-class`,\n `${prefix}-class-content`,\n `${prefix}-class-title`,\n `${prefix}-class-description`,\n `${prefix}-class-extra`,\n ];\n\n properties = props;\n\n // 组件的内部数据\n data = {\n classPrefix: `${prefix}-steps-item`,\n prefix,\n rootClassName: '',\n parent: null,\n index: 0,\n isDot: false,\n curStatus: '',\n curSubStepItems: [],\n layout: 'vertical',\n type: 'default',\n isLastChild: false,\n isLarge: false,\n readonly: false,\n computedIcon: '',\n };\n\n observers = {\n icon(val) {\n this.setData({\n computedIcon: val,\n });\n },\n };\n\n lifetimes = {\n ready() {\n const [parent] = this.getRelationNodes('./steps') || [];\n\n if (parent) {\n this.setData({\n parent,\n });\n }\n },\n };\n\n methods = {\n updateStatus(current, currentStatus, index, theme, layout, steps, readonly) {\n const { status } = this.data;\n const _current = String(current);\n const firstStep = Number(_current.split('-')[0]);\n const secondStep = _current.split('-')[1] ? Number(_current.split('-')[1]) : undefined;\n\n // 判断对象的attr属性存在 && attr数组长度不为0\n const judgeObjAttr = (data, attr: string) => {\n return data[attr] && data[attr].length;\n };\n\n const judgeStepStatus = (itemIndex: number, current: number, status: string) => {\n if (itemIndex < current) return 'finish';\n if (itemIndex === current) return status;\n return 'default';\n };\n\n const changeStatus = (\n data,\n attr: string,\n itemAttr: string,\n status: string,\n value: number = data[attr].length,\n ) => {\n data[attr].forEach((item, index) => {\n item[itemAttr] = judgeStepStatus(index, value, status);\n });\n };\n\n const isLastChild = (data, index) => index === data.length - 1;\n\n // 1. 拷贝一份 substep\n if (judgeObjAttr(this.data, 'subStepItems')) {\n const _subStepItems = JSON.parse(JSON.stringify(this.data.subStepItems));\n this.data._subStepItems = _subStepItems;\n }\n\n // 2. 优先step的statue && 判断step及subStep状态\n if (status !== 'default') {\n this.data._status = status;\n } else if (status === 'default') {\n if (index < firstStep) {\n this.data._status = 'finish';\n judgeObjAttr(this.data, '_subStepItems') && changeStatus(this.data, '_subStepItems', '_status', 'finish');\n } else if (index === firstStep) {\n this.data._status = currentStatus;\n if (secondStep !== undefined && judgeObjAttr(this.data, '_subStepItems')) {\n changeStatus(this.data, '_subStepItems', '_status', currentStatus, secondStep);\n }\n\n // secondStep存在,子步骤条为default时,其stepItem状态应为process\n if (\n secondStep !== undefined &&\n currentStatus === 'finish' &&\n judgeObjAttr(this.data, '_subStepItems') &&\n !isLastChild(this.data._subStepItems, secondStep)\n ) {\n this.data._status = 'process';\n }\n\n // secondStep存在,子步骤条为finish且不为最后一个子步骤时,其stepItem状态应为proces\n if (secondStep !== undefined && currentStatus === 'default') {\n this.data._status = 'process';\n }\n } else if (index > firstStep) {\n this.data._status = 'default';\n judgeObjAttr(this.data, '_subStepItems') && changeStatus(this.data, '_subStepItems', '_status', 'default');\n }\n }\n\n // update icon\n let iconStatus = '';\n if (readonly) {\n if (this.data._status === 'finish') {\n iconStatus = 'check';\n } else if (this.data._status === 'error') {\n iconStatus = 'close';\n }\n }\n\n this.setData({\n curStatus: this.data._status || this.data.status,\n curSubStepItems: this.data._subStepItems || [],\n computedIcon: iconStatus || this.data.icon,\n index,\n isDot: theme === 'dot' && layout === 'vertical',\n layout,\n theme,\n isLastChild: steps.length - 1 === index,\n });\n },\n click() {\n this.data.parent.handleClick(this.data.index);\n },\n };\n}\n"]}