@opensig/opendesign
Version:
188 lines (187 loc) • 8.57 kB
JavaScript
;
const vue = require("vue");
require("../icon-components/OIconZoomOut/OIconZoomOut.vue2.js");
require("../icon-components/OIconZoomIn/OIconZoomIn.vue2.js");
require("../icon-components/OIconVideoPlay/OIconVideoPlay.vue2.js");
require("../icon-components/OIconTime/OIconTime.vue2.js");
require("../icon-components/OIconStar/OIconStar.vue2.js");
require("../icon-components/OIconSearch/OIconSearch.vue2.js");
require("../icon-components/OIconRefresh/OIconRefresh.vue2.js");
require("../icon-components/OIconOneToOne/OIconOneToOne.vue2.js");
require("../icon-components/OIconMinus/OIconMinus.vue2.js");
require("../icon-components/OIconLoading/OIconLoading.vue2.js");
require("../icon-components/OIconLoadingSmall/OIconLoadingSmall.vue2.js");
require("../icon-components/OIconLink/OIconLink.vue2.js");
require("../icon-components/OIconInfoTip/OIconInfoTip.vue2.js");
require("../icon-components/OIconImgError/OIconImgError.vue2.js");
require("../icon-components/OIconImageError/OIconImageError.vue2.js");
require("../icon-components/OIconFilter/OIconFilter.vue2.js");
require("../icon-components/OIconFile/OIconFile.vue2.js");
require("../icon-components/OIconEye/OIconEye.vue2.js");
require("../icon-components/OIconEyeOff/OIconEyeOff.vue2.js");
require("../icon-components/OIconEllipsis/OIconEllipsis.vue2.js");
require("../icon-components/OIconEdit/OIconEdit.vue2.js");
require("../icon-components/OIconDownload/OIconDownload.vue2.js");
require("../icon-components/OIconDoubleArrowUp/OIconDoubleArrowUp.vue2.js");
require("../icon-components/OIconDoubleArrowRight/OIconDoubleArrowRight.vue2.js");
require("../icon-components/OIconDoubleArrowLeft/OIconDoubleArrowLeft.vue2.js");
require("../icon-components/OIconDoubleArrowDown/OIconDoubleArrowDown.vue2.js");
require("../icon-components/OIconDone/OIconDone.vue2.js");
require("../icon-components/OIconDelete/OIconDelete.vue2.js");
require("../icon-components/OIconClose/OIconClose.vue2.js");
require("../icon-components/OIconChevronUp/OIconChevronUp.vue2.js");
require("../icon-components/OIconChevronRight/OIconChevronRight.vue2.js");
require("../icon-components/OIconChevronRightSmall/OIconChevronRightSmall.vue2.js");
require("../icon-components/OIconChevronLeft/OIconChevronLeft.vue2.js");
require("../icon-components/OIconChevronDown/OIconChevronDown.vue2.js");
require("../icon-components/OIconChevronDownBold/OIconChevronDownBold.vue2.js");
require("../icon-components/OIconChecked/OIconChecked.vue2.js");
require("../icon-components/OIconCaretUp/OIconCaretUp.vue2.js");
require("../icon-components/OIconCaretRight/OIconCaretRight.vue2.js");
require("../icon-components/OIconCaretLeft/OIconCaretLeft.vue2.js");
require("../icon-components/OIconCaretDown/OIconCaretDown.vue2.js");
require("../icon-components/OIconCalendar/OIconCalendar.vue2.js");
require("../icon-components/OIconAvatar/OIconAvatar.vue2.js");
require("../icon-components/OIconArrowUp/OIconArrowUp.vue2.js");
require("../icon-components/OIconArrowRight/OIconArrowRight.vue2.js");
require("../icon-components/OIconArrowLeft/OIconArrowLeft.vue2.js");
require("../icon-components/OIconArrowDown/OIconArrowDown.vue2.js");
require("../icon-components/OIconAdd/OIconAdd.vue2.js");
require("../icon-components/OIconWarning/OIconWarning.vue2.js");
require("../icon-components/OIconSun/OIconSun.vue2.js");
require("../icon-components/OIconSuccess/OIconSuccess.vue2.js");
require("../icon-components/OIconSort/OIconSort.vue2.js");
require("../icon-components/OIconSkill/OIconSkill.vue2.js");
require("../icon-components/OIconNoData/OIconNoData.vue2.js");
require("../icon-components/OIconMoon/OIconMoon.vue2.js");
require("../icon-components/OIconKunpeng/OIconKunpeng.vue2.js");
require("../icon-components/OIconInfo/OIconInfo.vue2.js");
const OIconExclamationMark = require("../icon-components/OIconExclamationMark/OIconExclamationMark.vue.js");
require("../icon-components/OIconDanger/OIconDanger.vue2.js");
const OIconCheckMark = require("../icon-components/OIconCheckMark/OIconCheckMark.vue.js");
require("../icon-components/OIconAscend/OIconAscend.vue2.js");
const index = require("../divider/index.js");
const vueUtils = require("../_utils/vue-utils.js");
const provide = require("./provide.js");
const types = require("./types.js");
const _hoisted_1 = { class: "o-step-item-main" };
const _hoisted_2 = {
key: 0,
class: "o-step-item-title"
};
const _hoisted_3 = {
key: 1,
class: "o-step-item-desc"
};
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
__name: "OStepItem",
props: types.stepItemProps,
setup(__props) {
const props = __props;
const slots = vue.useSlots();
const stepInjection = vue.inject(provide.stepInjectKey);
const stepItemHeadRef = vue.ref();
const isCustomIcon = vue.computed(() => {
return !vueUtils.isEmptySlot(slots.icon);
});
const hasTitle = vue.computed(() => {
return !vueUtils.isEmptySlot(slots.title) || props.title;
});
const hasDescription = vue.computed(() => {
return !vueUtils.isEmptySlot(slots.default) || props.description;
});
const defaultIcon = vue.computed(() => {
if (props.status === "failed") {
return OIconExclamationMark;
}
return OIconCheckMark;
});
vue.watch(stepItemHeadRef, (val) => {
if (val) {
if (!(stepInjection == null ? void 0 : stepInjection.stepItemHeadRefs)) {
return;
}
stepInjection.stepItemHeadRefs.value[props.stepIndex] = val;
}
});
return (_ctx, _cache) => {
var _a, _b, _c;
return vue.openBlock(), vue.createElementBlock(
"div",
{
class: vue.normalizeClass(["o-step-item", [`o-step-item-${(_a = vue.unref(stepInjection)) == null ? void 0 : _a.props.direction}`, `o-step-item-${props.status}`]])
},
[
vue.createElementVNode(
"div",
{
ref_key: "stepItemHeadRef",
ref: stepItemHeadRef,
class: "o-step-item-head"
},
[
vue.createVNode(vue.unref(index.ODivider), {
class: "o-step-item-line",
direction: (_b = vue.unref(stepInjection)) == null ? void 0 : _b.props.direction,
style: vue.normalizeStyle((_c = vue.unref(stepInjection)) == null ? void 0 : _c.stepItemDividerRects.value[props.stepIndex])
}, null, 8, ["direction", "style"]),
vue.createElementVNode(
"div",
{
class: vue.normalizeClass(["o-step-item-symbol", { "o-step-item-symbol-custom": isCustomIcon.value }])
},
[
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
props.icon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(typeof props.icon === "boolean" ? defaultIcon.value : props.icon), {
key: 0,
class: "o-step-item-icon"
})) : (vue.openBlock(), vue.createElementBlock(
vue.Fragment,
{ key: 1 },
[
vue.createTextVNode(
vue.toDisplayString(props.stepIndex + 1),
1
/* TEXT */
)
],
64
/* STABLE_FRAGMENT */
))
])
],
2
/* CLASS */
)
],
512
/* NEED_PATCH */
),
vue.createElementVNode("div", _hoisted_1, [
hasTitle.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
vue.renderSlot(_ctx.$slots, "title", {}, () => [
vue.createTextVNode(
vue.toDisplayString(props.title),
1
/* TEXT */
)
])
])) : vue.createCommentVNode("v-if", true),
hasDescription.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3, [
vue.renderSlot(_ctx.$slots, "default", {}, () => [
vue.createTextVNode(
vue.toDisplayString(props.description),
1
/* TEXT */
)
])
])) : vue.createCommentVNode("v-if", true)
])
],
2
/* CLASS */
);
};
}
});
module.exports = _sfc_main;