1 line
12 KiB
Plaintext
1 line
12 KiB
Plaintext
{"version":3,"file":"wd-message-box.js","sources":["../../../../../../../node_modules/wot-design-uni/components/wd-message-box/wd-message-box.vue","../../../../../../../uniComponent:/RDovQXBwL1dvcmsvYWRkci9hY2RyLXVpL25vZGVfbW9kdWxlcy93b3QtZGVzaWduLXVuaS9jb21wb25lbnRzL3dkLW1lc3NhZ2UtYm94L3dkLW1lc3NhZ2UtYm94LnZ1ZQ"],"sourcesContent":["<template>\n <view>\n <wd-popup\n transition=\"zoom-in\"\n v-model=\"show\"\n :close-on-click-modal=\"closeOnClickModal\"\n :lazy-render=\"lazyRender\"\n custom-class=\"wd-message-box\"\n @click-modal=\"toggleModal('modal')\"\n :z-index=\"zIndex\"\n :duration=\"200\"\n >\n <view :class=\"rootClass\">\n <view :class=\"bodyClass\">\n <view v-if=\"title\" class=\"wd-message-box__title\">\n {{ title }}\n </view>\n <view class=\"wd-message-box__content\">\n <template v-if=\"type === 'prompt'\">\n <wd-input v-model=\"inputValue\" :type=\"inputType\" size=\"large\" :placeholder=\"inputPlaceholder || '请输入'\" @input=\"inputValChange\" />\n <view v-if=\"showErr\" class=\"wd-message-box__input-error\">\n {{ inputError || translate('inputNoValidate') }}\n </view>\n </template>\n <slot>{{ msg }}</slot>\n </view>\n </view>\n <view :class=\"`wd-message-box__actions ${showCancelButton ? 'wd-message-box__flex' : 'wd-message-box__block'}`\">\n <wd-button type=\"info\" block v-if=\"showCancelButton\" custom-style=\"margin-right: 16px;\" @click=\"toggleModal('cancel')\">\n {{ cancelButtonText || translate('cancel') }}\n </wd-button>\n <wd-button block @click=\"toggleModal('confirm')\">\n {{ confirmButtonText || translate('confirm') }}\n </wd-button>\n </view>\n </view>\n </wd-popup>\n </view>\n</template>\n<script lang=\"ts\">\nexport default {\n name: 'wd-message-box',\n options: {\n virtualHost: true,\n addGlobalClass: true,\n styleIsolation: 'shared'\n }\n}\n</script>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, ref, watch } from 'vue'\nimport {\n messageBoxProps,\n type InputValidate,\n type MessageBeforeConfirmOption,\n type MessageOptions,\n type MessageResult,\n type MessageType\n} from './types'\nimport { defaultOptions, messageDefaultOptionKey } from '.'\nimport { isDef, isFunction } from '../common/util'\nimport { useTranslate } from '../composables/useTranslate'\n\nconst props = defineProps(messageBoxProps)\n\nconst { translate } = useTranslate('message-box')\n\nconst rootClass = computed(() => {\n return `wd-message-box__container ${props.customClass}`\n})\n\nconst bodyClass = computed(() => {\n return `wd-message-box__body ${!title.value ? 'is-no-title' : ''} ${type.value === 'prompt' ? 'is-prompt' : ''}`\n})\n\nconst messageOptionKey = props.selector ? messageDefaultOptionKey + props.selector : messageDefaultOptionKey\nconst messageOption = inject(messageOptionKey, ref<MessageOptions>(defaultOptions)) // message选项\n\n/**\n * 消息文案\n */\nconst msg = ref<string>('')\nlet onConfirm: ((res: MessageResult) => void) | null = null\nlet onCancel: ((res: MessageResult) => void) | null = null\nlet beforeConfirm: ((options: MessageBeforeConfirmOption) => void) | null = null\nconst show = ref<boolean>(false)\n/**\n * 标题\n */\nconst title = ref<string>('')\n/**\n * 是否展示取消按钮\n */\nconst showCancelButton = ref<boolean>(false)\n/**\n * 是否支持点击蒙层进行关闭,点击蒙层回调传入的action为'modal'\n */\nconst closeOnClickModal = ref<boolean>(true)\n/**\n * 确定按钮文案\n */\nconst confirmButtonText = ref<string>('')\n/**\n * 取消按钮文案\n */\nconst cancelButtonText = ref<string>('')\n\n/**\n * 弹框类型\n */\nconst type = ref<MessageType>('alert')\n\n/**\n * 当type为prompt时,输入框类型\n */\nconst inputType = ref<string>('text')\n\n/**\n * 当type为prompt时,输入框初始值\n */\nconst inputValue = ref<string | number>('')\n\n/**\n * 当type为prompt时,输入框placeholder\n */\nconst inputPlaceholder = ref<string>('')\n\n/**\n * 当type为prompt时,输入框正则校验,点击确定按钮时进行校验\n */\nconst inputPattern = ref<RegExp>()\n\n/**\n * 当type为prompt时,输入框校验函数,点击确定按钮时进行校验\n */\nlet inputValidate: InputValidate | null = null\n\n/**\n * 当type为prompt时,输入框检验不通过时的错误提示文案\n */\nconst inputError = ref<string>('')\nconst showErr = ref<boolean>(false)\n/**\n * 弹窗层级\n */\nconst zIndex = ref<number>(99)\n/**\n * 弹层内容懒渲染,触发展示时才渲染内容\n */\nconst lazyRender = ref<boolean>(true)\n\n// 监听options变化展示\nwatch(\n () => messageOption.value,\n (newVal: MessageOptions) => {\n reset(newVal)\n },\n {\n deep: true,\n immediate: true\n }\n)\n\nwatch(\n () => show.value,\n (newValue) => {\n resetErr(newValue)\n },\n {\n deep: true,\n immediate: true\n }\n)\n\n/**\n * 点击操作\n * @param action\n */\nfunction toggleModal(action: 'confirm' | 'cancel' | 'modal') {\n if (action === 'modal' && !closeOnClickModal.value) {\n return\n }\n if (type.value === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n switch (action) {\n case 'confirm':\n if (beforeConfirm) {\n beforeConfirm({\n resolve: (isPass) => {\n if (isPass) {\n handleConfirm({\n action: action,\n value: inputValue.value\n })\n }\n }\n })\n } else {\n handleConfirm({\n action: action,\n value: inputValue.value\n })\n }\n break\n case 'cancel':\n handleCancel({\n action: action\n })\n break\n default:\n handleCancel({\n action: 'modal'\n })\n break\n }\n}\n\n/**\n * 确认回调\n * @param result\n */\nfunction handleConfirm(result: MessageResult) {\n show.value = false\n if (isFunction(onConfirm)) {\n onConfirm(result)\n }\n}\n\n/**\n * 取消回调\n * @param result\n */\nfunction handleCancel(result: MessageResult) {\n show.value = false\n if (isFunction(onCancel)) {\n onCancel(result)\n }\n}\n\n/**\n * @description 如果存在校验规则行为,则进行判断校验是否通过规则。默认不存在校验直接铜鼓。\n * @return {Boolean} 是否通过校验\n */\nfunction validate() {\n if (inputPattern.value && !inputPattern.value.test(String(inputValue.value))) {\n showErr.value = true\n return false\n }\n if (typeof inputValidate === 'function') {\n const validateResult = inputValidate(inputValue.value)\n if (!validateResult) {\n showErr.value = true\n return false\n }\n }\n showErr.value = false\n return true\n}\n/**\n * @description show关闭时,销毁错误提示\n * @param val\n */\nfunction resetErr(val: boolean) {\n if (val === false) {\n showErr.value = false\n }\n}\nfunction inputValChange(value: string | number) {\n if (value === '') {\n showErr.value = false\n return\n }\n inputValue.value = value\n}\n\n/**\n * 重置message选项值\n * @param option message选项值\n */\nfunction reset(option: MessageOptions) {\n if (option) {\n title.value = isDef(option.title) ? option.title : ''\n showCancelButton.value = isDef(option.showCancelButton) ? option.showCancelButton : false\n show.value = option.show!\n closeOnClickModal.value = option.closeOnClickModal!\n confirmButtonText.value = option.confirmButtonText!\n cancelButtonText.value = option.cancelButtonText!\n msg.value = option.msg!\n type.value = option.type!\n inputType.value = option.inputType!\n inputValue.value = option.inputValue!\n inputPlaceholder.value = option.inputPlaceholder!\n inputPattern.value = option.inputPattern!\n inputValidate = option.inputValidate!\n onConfirm = (option as any).onConfirm\n onCancel = (option as any).onCancel\n beforeConfirm = option.beforeConfirm!\n inputError.value = option.inputError!\n showErr.value = option.showErr!\n zIndex.value = option.zIndex!\n lazyRender.value = option.lazyRender!\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './index.scss';\n</style>\n","import Component from 'D:/App/Work/addr/acdr-ui/node_modules/wot-design-uni/components/wd-message-box/wd-message-box.vue'\nwx.createComponent(Component)"],"names":["useTranslate","computed","messageDefaultOptionKey","inject","ref","defaultOptions","watch","isFunction","isDef"],"mappings":"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","x_google_ignoreList":[0]} |