@touchvue/ui 1.0.0-beta.51 → 1.0.0-beta.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/form/src/form.vue.d.ts +0 -3
- package/es/components/index.d.ts +3 -1
- package/es/components/input/src/input.vue.d.ts +1 -10
- package/es/components/rate/index.d.ts +4 -0
- package/es/components/rate/src/instance.d.ts +2 -0
- package/es/components/rate/src/rate.vue.d.ts +77 -0
- package/es/components/select/src/select.d.ts +0 -8
- package/es/components/select/src/select.vue.d.ts +0 -9
- package/es/components/slide/src/slide.vue.d.ts +4 -0
- package/es/components/switch/src/switch.vue.d.ts +3 -3
- package/es/components/tab/src/tab.d.ts +1 -1
- package/es/components/tab/src/tab.vue.d.ts +17 -4
- package/es/index.d.mjs +1 -0
- package/es/index.d.mjs.map +1 -1
- package/es/index.mjs +1 -0
- package/es/index.mjs.map +1 -1
- package/es/packages/components/cascader/src/cascader.vue2.mjs +1 -1
- package/es/packages/components/cascader/src/cascader.vue2.mjs.map +1 -1
- package/es/packages/components/checkbox/src/Checkbox.vue2.mjs +1 -1
- package/es/packages/components/checkbox/src/Checkbox.vue2.mjs.map +1 -1
- package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs.map +1 -1
- package/es/packages/components/datepicker/src/DatePicker.vue2.mjs +2 -3
- package/es/packages/components/datepicker/src/DatePicker.vue2.mjs.map +1 -1
- package/es/packages/components/daterange/src/date-range.vue2.mjs +18 -6
- package/es/packages/components/daterange/src/date-range.vue2.mjs.map +1 -1
- package/es/packages/components/form/src/form.vue2.mjs +1 -2
- package/es/packages/components/form/src/form.vue2.mjs.map +1 -1
- package/es/packages/components/index.d.mjs +1 -0
- package/es/packages/components/index.d.mjs.map +1 -1
- package/es/packages/components/index.mjs +1 -0
- package/es/packages/components/index.mjs.map +1 -1
- package/es/packages/components/input/src/input.vue2.mjs +63 -62
- package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
- package/es/packages/components/page/src/page.vue2.mjs +6 -3
- package/es/packages/components/page/src/page.vue2.mjs.map +1 -1
- package/es/packages/components/rate/index.d.mjs +2 -0
- package/es/packages/components/rate/index.d.mjs.map +1 -0
- package/es/packages/components/rate/index.mjs +7 -0
- package/es/packages/components/rate/index.mjs.map +1 -0
- package/es/packages/components/rate/src/instance.d.mjs +2 -0
- package/es/packages/components/rate/src/instance.d.mjs.map +1 -0
- package/es/packages/components/rate/src/instance.mjs +2 -0
- package/es/packages/components/rate/src/instance.mjs.map +1 -0
- package/es/packages/components/rate/src/rate.vue.mjs +7 -0
- package/es/packages/components/rate/src/rate.vue.mjs.map +1 -0
- package/es/packages/components/rate/src/rate.vue2.mjs +153 -0
- package/es/packages/components/rate/src/rate.vue2.mjs.map +1 -0
- package/es/packages/components/segment/src/segment.vue.mjs +1 -4
- package/es/packages/components/segment/src/segment.vue.mjs.map +1 -1
- package/es/packages/components/select/src/hooks/use-select-class-style.mjs +1 -1
- package/es/packages/components/select/src/hooks/use-select-class-style.mjs.map +1 -1
- package/es/packages/components/select/src/select.mjs +0 -8
- package/es/packages/components/select/src/select.mjs.map +1 -1
- package/es/packages/components/select/src/select.vue2.mjs +2 -2
- package/es/packages/components/select/src/select.vue2.mjs.map +1 -1
- package/es/packages/components/slide/src/slide.vue2.mjs +3 -1
- package/es/packages/components/slide/src/slide.vue2.mjs.map +1 -1
- package/es/packages/components/switch/src/switch.vue2.mjs +4 -4
- package/es/packages/components/switch/src/switch.vue2.mjs.map +1 -1
- package/es/packages/components/tab/src/tab.vue2.mjs +401 -47
- package/es/packages/components/tab/src/tab.vue2.mjs.map +1 -1
- package/es/packages/components/transfer/src/transfer.vue2.mjs.map +1 -1
- package/es/packages/components/tree/src/tree.vue2.mjs +2 -0
- package/es/packages/components/tree/src/tree.vue2.mjs.map +1 -1
- package/es/packages/components/upload/src/upload.vue2.mjs +2 -2
- package/es/packages/components/upload/src/upload.vue2.mjs.map +1 -1
- package/es/packages/utils/disabledArea.mjs +2 -2
- package/es/packages/utils/disabledArea.mjs.map +1 -1
- package/es/packages/utils/validate.mjs +18 -11
- package/es/packages/utils/validate.mjs.map +1 -1
- package/global.d.ts +1 -0
- package/lib/components/form/src/form.vue.d.ts +0 -3
- package/lib/components/index.d.ts +3 -1
- package/lib/components/input/src/input.vue.d.ts +1 -10
- package/lib/components/rate/index.d.ts +4 -0
- package/lib/components/rate/src/instance.d.ts +2 -0
- package/lib/components/rate/src/rate.vue.d.ts +77 -0
- package/lib/components/select/src/select.d.ts +0 -8
- package/lib/components/select/src/select.vue.d.ts +0 -9
- package/lib/components/slide/src/slide.vue.d.ts +4 -0
- package/lib/components/switch/src/switch.vue.d.ts +3 -3
- package/lib/components/tab/src/tab.d.ts +1 -1
- package/lib/components/tab/src/tab.vue.d.ts +17 -4
- package/lib/index.d.js +8 -6
- package/lib/index.d.js.map +1 -1
- package/lib/index.js +13 -11
- package/lib/index.js.map +1 -1
- package/lib/packages/components/cascader/src/cascader.vue2.js +1 -1
- package/lib/packages/components/cascader/src/cascader.vue2.js.map +1 -1
- package/lib/packages/components/checkbox/src/Checkbox.vue2.js +1 -1
- package/lib/packages/components/checkbox/src/Checkbox.vue2.js.map +1 -1
- package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js.map +1 -1
- package/lib/packages/components/datepicker/src/DatePicker.vue2.js +2 -3
- package/lib/packages/components/datepicker/src/DatePicker.vue2.js.map +1 -1
- package/lib/packages/components/daterange/src/date-range.vue2.js +18 -6
- package/lib/packages/components/daterange/src/date-range.vue2.js.map +1 -1
- package/lib/packages/components/form/src/form.vue2.js +1 -2
- package/lib/packages/components/form/src/form.vue2.js.map +1 -1
- package/lib/packages/components/index.d.js +2 -0
- package/lib/packages/components/index.d.js.map +1 -1
- package/lib/packages/components/index.js +2 -0
- package/lib/packages/components/index.js.map +1 -1
- package/lib/packages/components/input/src/input.vue2.js +63 -62
- package/lib/packages/components/input/src/input.vue2.js.map +1 -1
- package/lib/packages/components/page/src/page.vue2.js +6 -3
- package/lib/packages/components/page/src/page.vue2.js.map +1 -1
- package/lib/packages/components/rate/index.d.js +3 -0
- package/lib/packages/components/rate/index.d.js.map +1 -0
- package/lib/packages/components/rate/index.js +9 -0
- package/lib/packages/components/rate/index.js.map +1 -0
- package/lib/packages/components/rate/src/instance.d.js +3 -0
- package/lib/packages/components/rate/src/instance.d.js.map +1 -0
- package/lib/packages/components/rate/src/instance.js +3 -0
- package/lib/packages/components/rate/src/instance.js.map +1 -0
- package/lib/packages/components/rate/src/rate.vue.js +11 -0
- package/lib/packages/components/rate/src/rate.vue.js.map +1 -0
- package/lib/packages/components/rate/src/rate.vue2.js +157 -0
- package/lib/packages/components/rate/src/rate.vue2.js.map +1 -0
- package/lib/packages/components/segment/src/segment.vue.js +1 -4
- package/lib/packages/components/segment/src/segment.vue.js.map +1 -1
- package/lib/packages/components/select/src/hooks/use-select-class-style.js +1 -1
- package/lib/packages/components/select/src/hooks/use-select-class-style.js.map +1 -1
- package/lib/packages/components/select/src/select.js +0 -8
- package/lib/packages/components/select/src/select.js.map +1 -1
- package/lib/packages/components/select/src/select.vue2.js +2 -2
- package/lib/packages/components/select/src/select.vue2.js.map +1 -1
- package/lib/packages/components/slide/src/slide.vue2.js +3 -1
- package/lib/packages/components/slide/src/slide.vue2.js.map +1 -1
- package/lib/packages/components/switch/src/switch.vue2.js +4 -4
- package/lib/packages/components/switch/src/switch.vue2.js.map +1 -1
- package/lib/packages/components/tab/src/tab.vue2.js +400 -46
- package/lib/packages/components/tab/src/tab.vue2.js.map +1 -1
- package/lib/packages/components/transfer/src/transfer.vue2.js.map +1 -1
- package/lib/packages/components/tree/src/tree.vue2.js +2 -0
- package/lib/packages/components/tree/src/tree.vue2.js.map +1 -1
- package/lib/packages/components/upload/src/upload.vue2.js +2 -2
- package/lib/packages/components/upload/src/upload.vue2.js.map +1 -1
- package/lib/packages/utils/disabledArea.js +2 -2
- package/lib/packages/utils/disabledArea.js.map +1 -1
- package/lib/packages/utils/validate.js +24 -17
- package/lib/packages/utils/validate.js.map +1 -1
- package/package.json +1 -1
- package/theme/components/index.css +313 -122
- package/theme/index.css +313 -122
- package/theme/skin/default.css +313 -122
- package/types/global.d.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkboxes.vue2.mjs","sources":["../../../../../../packages/components/checkboxes/src/Checkboxes.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCheckboxes'\r\n});\n</script>\n<template>\r\n\t<div :id=\"id\" :flex=\"flex ? flex : null\">\r\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"checks.length > 0 ? 'true' : ''\"></span>\r\n\t\t<slot></slot>flex: false\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, computed, inject, onBeforeUnmount, watch, provide } from 'vue'\r\n\r\n\r\n\r\nexport interface ToCheckboxesProps {\r\n\t// 表单校验\r\n\tdesc?: string\r\n\tid?: string\r\n\trequired?: boolean\r\n\tvalue?: string\r\n\tmodelValue: string\r\n\tbeforeChange?(): boolean | Promise<boolean>\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<ToCheckboxesProps>(), {\r\n\tdesc: '',\r\n\tid: '',\r\n\trequired: false,\r\n\tvalue: '',\r\n\tmodelValue: '',\r\n\tflex: false,\r\n\tbeforeChange: () => true\r\n})\r\n\r\nconst emit = defineEmits(['change', 'update:modelValue'])\r\n\r\n// 注入表单相关\r\nconst ToFormItem = inject('ToFormItem', '')\r\n\r\n// 响应式数据\r\nconst value = ref<string>(props.modelValue)\r\nconst maxId = ref<number>(-1)\r\nconst options = ref<any[]>([])\r\nconst checks = ref<any[]>([])\r\nconst removeItems = ref<any[]>([])\r\nconst timer = ref<NodeJS.Timeout | null>(null)\r\n\r\n// 计算属性\r\nconst validateRequired = computed(() => {\r\n\tif (props.required) {\r\n\t\treturn 'true'\r\n\t} else if (ToFormItem && (ToFormItem as any).required) {\r\n\t\treturn 'true'\r\n\t} else {\r\n\t\treturn 'false'\r\n\t}\r\n})\r\n\r\nconst validateDesc = computed(() => {\r\n\tif (props.desc) {\r\n\t\treturn props.desc\r\n\t} else if (ToFormItem && (ToFormItem as any).label) {\r\n\t\treturn (ToFormItem as any).label\r\n\t} else {\r\n\t\treturn ''\r\n\t}\r\n})\r\n\r\n// 方法\r\nconst change = (checked: boolean, value: string, label: string) => {\r\n\tlet arr: string[] = []\r\n\tchecks.value = options.value.filter(item => item.checked)\r\n\tchecks.value.forEach(el => {\r\n\t\tarr.push(el.value)\r\n\t})\r\n\temit('change', arr.join(','), checked, value, label)\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst clear = () => {\r\n\temit('change', '', false)\r\n\temit('update:modelValue', '')\r\n}\r\n\r\nconst all = () => {\r\n\tlet arr: string[] = []\r\n\toptions.value.forEach(el => {\r\n\t\t// !el.readonly\r\n\t\tif (!el.disabled) {\r\n\t\t\tarr.push(el.value)\r\n\t\t}\r\n\t})\r\n\temit('change', arr.join(','))\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst observe = () => {\r\n\tlet arr: string[] = []\r\n\toptions.value\r\n\t\t.filter(item => !item.checked)\r\n\t\t.forEach(el => {\r\n\t\t\tarr.push(el.value)\r\n\t\t})\r\n\temit('change', arr.join(','))\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst removeItemValue = (itemOldValue: string) => {\r\n\tif (timer.value) {\r\n\t\tclearTimeout(timer.value)\r\n\t}\r\n\tremoveItems.value.push(itemOldValue)\r\n\r\n\ttimer.value = setTimeout(() => {\r\n\t\tlet arr = props.value.split(',')\r\n\t\tarr = arr.filter(item => !removeItems.value.includes(item))\r\n\t\toptions.value = options.value.filter(item => !removeItems.value.includes(item.value))\r\n\t\temit('change', arr.join(','))\r\n\t\temit('update:modelValue', arr.join(','))\r\n\t}, 1)\r\n}\r\n\r\nconst pushOptions = (option: { value: any; checked: boolean }) => {\r\n\tconst selectedValues = value.value.split(',').filter(v => v !== '')\r\n\tif (selectedValues.includes(String(option.value))) {\r\n\t\toption.checked = true\r\n\t}\r\n\toptions.value.push(option)\r\n\tchecks.value = options.value.filter(item => item.checked)\r\n}\r\n\r\n// 清理定时器\r\nonBeforeUnmount(() => {\r\n\tif (timer.value) {\r\n\t\tclearTimeout(timer.value)\r\n\t}\r\n})\r\n\r\n// 监听value变化,同步checkbox状态\r\nwatch(\r\n\t() => props.modelValue,\r\n\tnewVal => {\r\n\t\tif (newVal !== undefined) {\r\n\t\t\tconst selectedValues = newVal.split(',').filter(v => v !== '')\r\n\t\t\toptions.value.forEach(option => {\r\n\t\t\t\toption.checked = selectedValues.includes(String(option.value))\r\n\t\t\t})\r\n\t\t\tchecks.value = options.value.filter(item => item.checked)\r\n\t\t}\r\n\t}\r\n)\r\n\r\nexport interface ProvideType {\r\n\tvalue: import('vue').ComputedRef<string>\r\n\tprops: ToCheckboxesProps\r\n\tpushOptions: (option: { id?: number; value: any; label?: string; checked: boolean; disabled?: boolean }) => void\r\n\toptions: import('vue').Ref<\r\n\t\tArray<{\r\n\t\t\tid?: number\r\n\t\t\tvalue: any\r\n\t\t\tlabel?: string\r\n\t\t\tchecked: boolean\r\n\t\t\tdisabled?: boolean\r\n\t\t}>\r\n\t>\r\n\tremoveItemValue: (itemOldValue: any) => void\r\n\tchecks: import('vue').Ref<any[]>\r\n\tchange: (checked: boolean, value: any, label: string) => void\r\n\tmaxId: import('vue').Ref<number>\r\n}\r\n\r\nprovide<ProvideType>('ToCheckboxes', {\r\n\tvalue: computed(() => props.modelValue),\r\n\tprops,\r\n\tpushOptions,\r\n\toptions,\r\n\tremoveItemValue,\r\n\tchecks,\r\n\tchange,\r\n\tmaxId\r\n})\r\n\r\n// 暴露方法和数据给子组件\r\ndefineExpose({\r\n\tmaxId,\r\n\toptions,\r\n\tchecks,\r\n\tvalue: computed(() => props.modelValue),\r\n\tchange,\r\n\tclear,\r\n\tall,\r\n\tobserve,\r\n\tremoveItemValue,\r\n\tpushOptions\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","value","_createElementBlock","_renderSlot"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Checkboxes.vue2.mjs","sources":["../../../../../../packages/components/checkboxes/src/Checkboxes.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCheckboxes'\r\n});\n</script>\n<template>\r\n\t<div :id=\"id\" :flex=\"flex ? flex : null\">\r\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"checks.length > 0 ? 'true' : ''\"></span>\r\n\t\t<slot></slot>flex: false\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, computed, inject, onBeforeUnmount, watch, provide } from 'vue'\r\n\r\n\r\n\r\nexport interface ToCheckboxesProps {\r\n\t// 表单校验\r\n\tdesc?: string\r\n\tid?: string\r\n\trequired?: boolean\r\n\tvalue?: string\r\n\tmodelValue: string\r\n\tbeforeChange?(): boolean | Promise<boolean>\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<ToCheckboxesProps>(), {\r\n\tdesc: '',\r\n\tid: '',\r\n\trequired: false,\r\n\tvalue: '',\r\n\tmodelValue: '',\r\n\tflex: false,\r\n\tbeforeChange: () => true\r\n})\r\n\r\nconst emit = defineEmits(['change', 'update:modelValue'])\r\n\r\n// 注入表单相关\r\nconst ToFormItem = inject('ToFormItem', '')\r\n\r\n// 响应式数据\r\nconst value = ref<string>(props.modelValue)\r\nconst maxId = ref<number>(-1)\r\nconst options = ref<any[]>([])\r\nconst checks = ref<any[]>([])\r\nconst removeItems = ref<any[]>([])\r\nconst timer = ref<NodeJS.Timeout | null>(null)\r\n\r\n// 计算属性\r\nconst validateRequired = computed(() => {\r\n\tif (props.required) {\r\n\t\treturn 'true'\r\n\t} else if (ToFormItem && (ToFormItem as any).required) {\r\n\t\treturn 'true'\r\n\t} else {\r\n\t\treturn 'false'\r\n\t}\r\n})\r\n\r\nconst validateDesc = computed(() => {\r\n\tif (props.desc) {\r\n\t\treturn props.desc\r\n\t} else if (ToFormItem && (ToFormItem as any).label) {\r\n\t\treturn (ToFormItem as any).label\r\n\t} else {\r\n\t\treturn ''\r\n\t}\r\n})\r\n\r\n// 方法\r\nconst change = (checked: boolean, value: string, label: string) => {\r\n\tlet arr: string[] = []\r\n\tchecks.value = options.value.filter(item => item.checked)\r\n\tchecks.value.forEach(el => {\r\n\t\tarr.push(el.value)\r\n\t})\r\n\temit('change', arr.join(','), checked, value, label)\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst clear = () => {\r\n\temit('change', '', false)\r\n\temit('update:modelValue', '')\r\n}\r\n\r\nconst all = () => {\r\n\tlet arr: string[] = []\r\n\toptions.value.forEach(el => {\r\n\t\tif (!el.disabled) {\r\n\t\t\tarr.push(el.value)\r\n\t\t}\r\n\t})\r\n\temit('change', arr.join(','))\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst observe = () => {\r\n\tlet arr: string[] = []\r\n\toptions.value\r\n\t\t.filter(item => !item.checked)\r\n\t\t.forEach(el => {\r\n\t\t\tarr.push(el.value)\r\n\t\t})\r\n\temit('change', arr.join(','))\r\n\temit('update:modelValue', arr.join(','))\r\n}\r\n\r\nconst removeItemValue = (itemOldValue: string) => {\r\n\tif (timer.value) {\r\n\t\tclearTimeout(timer.value)\r\n\t}\r\n\tremoveItems.value.push(itemOldValue)\r\n\r\n\ttimer.value = setTimeout(() => {\r\n\t\tlet arr = props.value.split(',')\r\n\t\tarr = arr.filter(item => !removeItems.value.includes(item))\r\n\t\toptions.value = options.value.filter(item => !removeItems.value.includes(item.value))\r\n\t\temit('change', arr.join(','))\r\n\t\temit('update:modelValue', arr.join(','))\r\n\t}, 1)\r\n}\r\n\r\nconst pushOptions = (option: { value: any; checked: boolean }) => {\r\n\tconst selectedValues = value.value.split(',').filter(v => v !== '')\r\n\tif (selectedValues.includes(String(option.value))) {\r\n\t\toption.checked = true\r\n\t}\r\n\toptions.value.push(option)\r\n\tchecks.value = options.value.filter(item => item.checked)\r\n}\r\n\r\n// 清理定时器\r\nonBeforeUnmount(() => {\r\n\tif (timer.value) {\r\n\t\tclearTimeout(timer.value)\r\n\t}\r\n})\r\n\r\n// 监听value变化,同步checkbox状态\r\nwatch(\r\n\t() => props.modelValue,\r\n\tnewVal => {\r\n\t\tif (newVal !== undefined) {\r\n\t\t\tconst selectedValues = newVal.split(',').filter(v => v !== '')\r\n\t\t\toptions.value.forEach(option => {\r\n\t\t\t\toption.checked = selectedValues.includes(String(option.value))\r\n\t\t\t})\r\n\t\t\tchecks.value = options.value.filter(item => item.checked)\r\n\t\t}\r\n\t}\r\n)\r\n\r\nexport interface ProvideType {\r\n\tvalue: import('vue').ComputedRef<string>\r\n\tprops: ToCheckboxesProps\r\n\tpushOptions: (option: { id?: number; value: any; label?: string; checked: boolean; disabled?: boolean }) => void\r\n\toptions: import('vue').Ref<\r\n\t\tArray<{\r\n\t\t\tid?: number\r\n\t\t\tvalue: any\r\n\t\t\tlabel?: string\r\n\t\t\tchecked: boolean\r\n\t\t\tdisabled?: boolean\r\n\t\t}>\r\n\t>\r\n\tremoveItemValue: (itemOldValue: any) => void\r\n\tchecks: import('vue').Ref<any[]>\r\n\tchange: (checked: boolean, value: any, label: string) => void\r\n\tmaxId: import('vue').Ref<number>\r\n}\r\n\r\nprovide<ProvideType>('ToCheckboxes', {\r\n\tvalue: computed(() => props.modelValue),\r\n\tprops,\r\n\tpushOptions,\r\n\toptions,\r\n\tremoveItemValue,\r\n\tchecks,\r\n\tchange,\r\n\tmaxId\r\n})\r\n\r\n// 暴露方法和数据给子组件\r\ndefineExpose({\r\n\tmaxId,\r\n\toptions,\r\n\tchecks,\r\n\tvalue: computed(() => props.modelValue),\r\n\tchange,\r\n\tclear,\r\n\tall,\r\n\tobserve,\r\n\tremoveItemValue,\r\n\tpushOptions\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","value","_createElementBlock","_renderSlot"],"mappings":"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"}
|
|
@@ -171,7 +171,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
171
171
|
}
|
|
172
172
|
});
|
|
173
173
|
const setClass = computed(() => {
|
|
174
|
-
const arr = ["to-
|
|
174
|
+
const arr = ["to-disable-target"];
|
|
175
175
|
if (errorTip.value) {
|
|
176
176
|
arr.push("to-input-mode-line");
|
|
177
177
|
arr.push("to-input-color-danger");
|
|
@@ -255,7 +255,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
255
255
|
class: "to-date-picker",
|
|
256
256
|
flex: __props.flex ? __props.flex : null,
|
|
257
257
|
"model-value": unref(datedisplay),
|
|
258
|
-
readonly: !props.inputable,
|
|
259
258
|
required: __props.required,
|
|
260
259
|
desc: __props.desc,
|
|
261
260
|
color: __props.color,
|
|
@@ -388,7 +387,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
388
387
|
]),
|
|
389
388
|
_: 1
|
|
390
389
|
/* STABLE */
|
|
391
|
-
}, 8, ["id", "flex", "model-value", "
|
|
390
|
+
}, 8, ["id", "flex", "model-value", "required", "desc", "color", "prefix", "suffix", "mode", "prop-error-type", "prop-error-tip", "placeholder", "disabled", "sp-chars", "link", "clearable", "width", "comparable", "onClear", "onInput"]);
|
|
392
391
|
};
|
|
393
392
|
}
|
|
394
393
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.vue2.mjs","sources":["../../../../../../packages/components/datepicker/src/DatePicker.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToDatePicker',\r\n\tcomponentName: 'ToDatePicker'\r\n});\n</script>\n<template>\r\n\t<to-input :id=\"id\" :key=\"langKey\" ref=\"inputBox\" class=\"to-date-picker\" :flex=\"flex ? flex : null\" :model-value=\"datedisplay\" :readonly=\"!props.inputable\" :required=\"required\" :desc=\"desc\" :color=\"color\" :prefix=\"prefix\" :suffix=\"suffix\" :mode=\"mode\" :prop-error-type=\"errorType\" :prop-error-tip=\"errorTip\" :placeholder=\"placeholder\" :disabled=\"disabled\" :sp-chars=\"spChars\" :link=\"!inputable && !disabled\" :clearable=\"clearable && !disabled\" :width=\"width\" :comparable=\"comparable\" @focus=\"inputFocus\" @blur=\"inputBlur\" @click=\"handleClick\" @clear=\"clear()\" @input=\"handleDisplayChange\">\r\n\t\t<template #suffix>\r\n\t\t\t<to-icon v-if=\"type === 'time'\" class=\"to-date-picker-icon\" :link=\"inputable\" :class=\"disabled ? 'to-dis' : ''\" value=\"time\" @click.stop=\"showLayer\"></to-icon>\r\n\t\t\t<to-icon v-else class=\"to-date-picker-icon\" :link=\"inputable\" :class=\"disabled ? 'to-dis' : ''\" value=\"date\" @click.stop=\"showLayer\"></to-icon>\r\n\t\t</template>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-date-picker\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"layerRef\" class=\"to-date-picker-layer\" :global=\"false\" :lazy=\"lazy\" :slide=\"layerSlide\" :position=\"layerPosition\" :padding=\"0.5\" :width=\"isPc ? (type === 'datetime' ? 43 : 23) : ''\" :align=\"optionAlign ? optionAlign : isPc ? 'right' : ''\" @closed=\"handleLayerClose\">\r\n\t\t\t\t\t<!-- PC面板 -->\r\n\t\t\t\t\t<to-scroll v-if=\"isPc || showCalendar\">\r\n\t\t\t\t\t\t<to-calendar ref=\"calendar\" v-model=\"date\" class=\"to-date-picker-calendar\" :time=\"time\" :type=\"type\" :min=\"min\" :max=\"max\" :min-year=\"minYear\" :max-year=\"maxYear\" :disabled-date=\"disabledDate\" :before-change=\"beforeChange\" @change=\"select\" @close=\"layerRef?.close()\"> </to-calendar>\r\n\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t<!-- 移动端面板 -->\r\n\t\t\t\t\t<Picker v-else v-model=\"date\" :time=\"time\" :type=\"type\" :min=\"min\" :max=\"max\" @cancel=\"layerRef?.close()\" @change=\"select\" @clear=\"clear()\"></Picker>\r\n\t\t\t\t\t<div v-if=\"showCloseLayer\">\r\n\t\t\t\t\t\t<to-button @click=\"closeLayer\">{{ t('to.datepicker.confirm') }}</to-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t</to-input>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, watch, onMounted, nextTick, computed } from 'vue'\r\nimport { ToInput, ToIcon, ToFloat, ToScroll, ToCalendar } from '@touchvue/components'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\nimport Picker from './Picker.vue'\r\nimport { useDatePicker } from './use-date-picker'\r\n\r\nimport type { PropType } from 'vue'\r\nimport { useDevice } from '@touchvue/hooks'\r\n\r\nimport { getDefaultFormat, type DatePickerType, type DatePickerValue } from './date-picker'\r\n\r\n// 定义组件名称\r\n\r\n\r\n// 定义props\r\nconst props = defineProps({\r\n\tflex: Boolean,\r\n\tsuffix: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tprefix: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tshowCalendar: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: false\r\n\t},\r\n\tlazy: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t},\r\n\tdesc: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tspChars: {\r\n\t\ttype: [String, Boolean],\r\n\t\tdefault: '/,\\\\,[,],{,},\"'\r\n\t},\r\n\tid: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\trequired: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: null\r\n\t},\r\n\tmodelValue: {\r\n\t\ttype: [String, Date] as PropType<DatePickerValue>,\r\n\t\tdefault: ''\r\n\t},\r\n\tvalue: {\r\n\t\ttype: [String, Date],\r\n\t\tdefault: ''\r\n\t},\r\n\tplaceholder: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tdisabled: Boolean,\r\n\tinputable: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t},\r\n\ttype: {\r\n\t\ttype: String as PropType<DatePickerType>,\r\n\t\tdefault: 'date'\r\n\t},\r\n\tminYear: {\r\n\t\ttype: Number,\r\n\t\tdefault: 1900\r\n\t},\r\n\tmaxYear: {\r\n\t\ttype: Number,\r\n\t\tdefault: 2200\r\n\t},\r\n\tcolor: {\r\n\t\ttype: String,\r\n\t\tdefault: 'default'\r\n\t},\r\n\tmode: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\twidth: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tvalueFormat: {\r\n\t\ttype: String,\r\n\t\tdefault(rawProps: { type: DatePickerType }) {\r\n\t\t\treturn getDefaultFormat(rawProps.type)\r\n\t\t}\r\n\t},\r\n\tdisplayFormat: {\r\n\t\ttype: String,\r\n\t\tdefault(rawProps: { type: DatePickerType }) {\r\n\t\t\treturn getDefaultFormat(rawProps.type)\r\n\t\t}\r\n\t},\r\n\ttime: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tcomparable: Boolean,\r\n\tbeforeChange: {\r\n\t\ttype: Function as PropType<(value: string) => boolean | Promise<boolean>>,\r\n\t\tdefault: null\r\n\t},\r\n\toptionAlign: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tmin: {\r\n\t\ttype: [String, Date, Number],\r\n\t\tdefault: ''\r\n\t},\r\n\tmax: {\r\n\t\ttype: [String, Date, Number],\r\n\t\tdefault: ''\r\n\t},\r\n\t/**\r\n\t * 禁用日期回调,仅支持PC模式(弹出日历选择)\r\n\t */\r\n\tdisabledDate: {\r\n\t\ttype: Function as PropType<(date: Date) => boolean>,\r\n\t\tdefault: null\r\n\t},\r\n\tclearable: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t}\r\n})\r\n\r\n// 定义emits\r\nconst emit = defineEmits(['update:modelValue', 'change', 'focus', 'blur', 'beforeChange'])\r\n\r\nconst {\r\n\tdate,\r\n\tdatedisplay,\r\n\tchangeValue,\r\n\tcleanValue, // 更新为 cleanValue\r\n\thandleDisplayChange,\r\n\thandleDisplayBlur\r\n} = useDatePicker(props, emit)\r\n\r\n// 响应式数据\r\nconst errorType = ref('rule')\r\nconst errorTip = ref('')\r\n\r\nconst layerSlide = ref(false)\r\nconst layerPosition = ref('')\r\nconst disabled = ref(props.disabled)\r\n\r\n// refs\r\nconst inputBox = ref(null)\r\nconst layerRef = ref<any>(null)\r\nconst calendar = ref<any>(null)\r\n\r\n// 计算属性\r\nconst { isPc } = useDevice()\r\n\r\n// 监听器\r\nwatch(\r\n\t() => props.disabled,\r\n\tval => {\r\n\t\tdisabled.value = val\r\n\t}\r\n)\r\n\r\n// 生命周期\r\nonMounted(() => {\r\n\tif (typeof window !== 'undefined' && window.innerWidth <= 768) {\r\n\t\t// isPc.value = false\r\n\t\tlayerSlide.value = true\r\n\t\tlayerPosition.value = 'bottom'\r\n\t}\r\n})\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr = ['to-form-readonly']\r\n\tif (errorTip.value) {\r\n\t\tarr.push('to-input-mode-line')\r\n\t\tarr.push('to-input-color-danger')\r\n\t\tarr.push('to-input-tip-show')\r\n\t} else {\r\n\t\tif (props.mode) {\r\n\t\t\tfor (let i = 0; i < props.mode.split(' ').length; i++) {\r\n\t\t\t\tarr.push(`mode-${props.mode.split(' ')[i]}`)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst showCloseLayer = computed(() => {\r\n\treturn (isPc.value || props.showCalendar) && (props.type === 'months' || props.type === 'dates')\r\n})\r\n\r\nfunction handleLayerClose() {\r\n\tif (calendar.value) {\r\n\t\tcalendar.value.timeLayer = false\r\n\t\tcalendar.value.monthLayer = false\r\n\t}\r\n}\r\n\r\nfunction closeLayer() {\r\n\tlayerRef.value?.close()\r\n}\r\n\r\nfunction select(value: string) {\r\n\tchangeValue(value)\r\n\tif (showCloseLayer.value) return\r\n\tlayerRef.value?.close()\r\n}\r\n\r\nfunction inputFocus() {\r\n\terrorTip.value = ''\r\n\t// showLayer()\r\n\temit('focus', datedisplay.value)\r\n}\r\n\r\nfunction inputBlur() {\r\n\tif (props.inputable) {\r\n\t\thandleDisplayBlur()\r\n\t}\r\n\temit('blur', datedisplay.value)\r\n}\r\n\r\nfunction clear() {\r\n\tcleanValue()\r\n\tif (typeof window !== 'undefined' && window.innerWidth > 768) {\r\n\t\tlayerRef.value?.close()\r\n\t}\r\n}\r\n\r\nfunction handleClick() {\r\n\tif (!props.inputable) {\r\n\t\tshowLayer()\r\n\t}\r\n}\r\n\r\nfunction showLayer() {\r\n\t// 表单校验的提示清除\r\n\terrorTip.value = inputBox.value.errorTip = ''\r\n\tif (!disabled.value) {\r\n\t\tlayerRef.value?.toggle(inputBox.value.$el)\r\n\t\tnextTick(() => {\r\n\t\t\tif (calendar.value) {\r\n\t\t\t\t// calendar.value.initCalendar()\r\n\t\t\t\tcalendar.value.setData()\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n\r\nfunction setDisabled(f: boolean) {\r\n\tdisabled.value = f\r\n}\r\n\r\n// 暴露方法\r\ndefineExpose({\r\n\tsetDisabled\r\n})\r\n</script>\r\n\r\n<!--<style>-->\r\n<!--.to-date-picker.to-dis > .to-icon-date {-->\r\n<!-- pointer-events: none;-->\r\n<!--}-->\r\n<!--</style>-->\r\n"],"names":["DO_defineComponent","_createBlock","_unref","_normalizeClass","_Teleport","_createElementVNode","_createVNode","_createCommentVNode","_createElementBlock","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePicker.vue2.mjs","sources":["../../../../../../packages/components/datepicker/src/DatePicker.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToDatePicker',\r\n\tcomponentName: 'ToDatePicker'\r\n});\n</script>\n<template>\r\n\t<to-input :id=\"id\" :key=\"langKey\" ref=\"inputBox\" class=\"to-date-picker\" :flex=\"flex ? flex : null\" :model-value=\"datedisplay\" :required=\"required\" :desc=\"desc\" :color=\"color\" :prefix=\"prefix\" :suffix=\"suffix\" :mode=\"mode\" :prop-error-type=\"errorType\" :prop-error-tip=\"errorTip\" :placeholder=\"placeholder\" :disabled=\"disabled\" :sp-chars=\"spChars\" :link=\"!inputable && !disabled\" :clearable=\"clearable && !disabled\" :width=\"width\" :comparable=\"comparable\" @focus=\"inputFocus\" @blur=\"inputBlur\" @click=\"handleClick\" @clear=\"clear()\" @input=\"handleDisplayChange\">\r\n\t\t<template #suffix>\r\n\t\t\t<to-icon v-if=\"type === 'time'\" class=\"to-date-picker-icon\" :link=\"inputable\" :class=\"disabled ? 'to-dis' : ''\" value=\"time\" @click.stop=\"showLayer\"></to-icon>\r\n\t\t\t<to-icon v-else class=\"to-date-picker-icon\" :link=\"inputable\" :class=\"disabled ? 'to-dis' : ''\" value=\"date\" @click.stop=\"showLayer\"></to-icon>\r\n\t\t</template>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-date-picker\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"layerRef\" class=\"to-date-picker-layer\" :global=\"false\" :lazy=\"lazy\" :slide=\"layerSlide\" :position=\"layerPosition\" :padding=\"0.5\" :width=\"isPc ? (type === 'datetime' ? 43 : 23) : ''\" :align=\"optionAlign ? optionAlign : isPc ? 'right' : ''\" @closed=\"handleLayerClose\">\r\n\t\t\t\t\t<!-- PC面板 -->\r\n\t\t\t\t\t<to-scroll v-if=\"isPc || showCalendar\">\r\n\t\t\t\t\t\t<to-calendar ref=\"calendar\" v-model=\"date\" class=\"to-date-picker-calendar\" :time=\"time\" :type=\"type\" :min=\"min\" :max=\"max\" :min-year=\"minYear\" :max-year=\"maxYear\" :disabled-date=\"disabledDate\" :before-change=\"beforeChange\" @change=\"select\" @close=\"layerRef?.close()\"> </to-calendar>\r\n\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t<!-- 移动端面板 -->\r\n\t\t\t\t\t<Picker v-else v-model=\"date\" :time=\"time\" :type=\"type\" :min=\"min\" :max=\"max\" @cancel=\"layerRef?.close()\" @change=\"select\" @clear=\"clear()\"></Picker>\r\n\t\t\t\t\t<div v-if=\"showCloseLayer\">\r\n\t\t\t\t\t\t<to-button @click=\"closeLayer\">{{ t('to.datepicker.confirm') }}</to-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t</to-input>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, watch, onMounted, nextTick, computed } from 'vue'\r\nimport { ToInput, ToIcon, ToFloat, ToScroll, ToCalendar } from '@touchvue/components'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\nimport Picker from './Picker.vue'\r\nimport { useDatePicker } from './use-date-picker'\r\n\r\nimport type { PropType } from 'vue'\r\nimport { useDevice } from '@touchvue/hooks'\r\n\r\nimport { getDefaultFormat, type DatePickerType, type DatePickerValue } from './date-picker'\r\n\r\n// 定义组件名称\r\n\r\n\r\n// 定义props\r\nconst props = defineProps({\r\n\tflex: Boolean,\r\n\tsuffix: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tprefix: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tshowCalendar: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: false\r\n\t},\r\n\tlazy: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t},\r\n\tdesc: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tspChars: {\r\n\t\ttype: [String, Boolean],\r\n\t\tdefault: '/,\\\\,[,],{,},\"'\r\n\t},\r\n\tid: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\trequired: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: null\r\n\t},\r\n\tmodelValue: {\r\n\t\ttype: [String, Date] as PropType<DatePickerValue>,\r\n\t\tdefault: ''\r\n\t},\r\n\tvalue: {\r\n\t\ttype: [String, Date],\r\n\t\tdefault: ''\r\n\t},\r\n\tplaceholder: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tdisabled: Boolean,\r\n\tinputable: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t},\r\n\ttype: {\r\n\t\ttype: String as PropType<DatePickerType>,\r\n\t\tdefault: 'date'\r\n\t},\r\n\tminYear: {\r\n\t\ttype: Number,\r\n\t\tdefault: 1900\r\n\t},\r\n\tmaxYear: {\r\n\t\ttype: Number,\r\n\t\tdefault: 2200\r\n\t},\r\n\tcolor: {\r\n\t\ttype: String,\r\n\t\tdefault: 'default'\r\n\t},\r\n\tmode: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\twidth: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tvalueFormat: {\r\n\t\ttype: String,\r\n\t\tdefault(rawProps: { type: DatePickerType }) {\r\n\t\t\treturn getDefaultFormat(rawProps.type)\r\n\t\t}\r\n\t},\r\n\tdisplayFormat: {\r\n\t\ttype: String,\r\n\t\tdefault(rawProps: { type: DatePickerType }) {\r\n\t\t\treturn getDefaultFormat(rawProps.type)\r\n\t\t}\r\n\t},\r\n\ttime: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tcomparable: Boolean,\r\n\tbeforeChange: {\r\n\t\ttype: Function as PropType<(value: string) => boolean | Promise<boolean>>,\r\n\t\tdefault: null\r\n\t},\r\n\toptionAlign: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tmin: {\r\n\t\ttype: [String, Date, Number],\r\n\t\tdefault: ''\r\n\t},\r\n\tmax: {\r\n\t\ttype: [String, Date, Number],\r\n\t\tdefault: ''\r\n\t},\r\n\t/**\r\n\t * 禁用日期回调,仅支持PC模式(弹出日历选择)\r\n\t */\r\n\tdisabledDate: {\r\n\t\ttype: Function as PropType<(date: Date) => boolean>,\r\n\t\tdefault: null\r\n\t},\r\n\tclearable: {\r\n\t\ttype: Boolean,\r\n\t\tdefault: true\r\n\t}\r\n})\r\n\r\n// 定义emits\r\nconst emit = defineEmits(['update:modelValue', 'change', 'focus', 'blur', 'beforeChange'])\r\n\r\nconst {\r\n\tdate,\r\n\tdatedisplay,\r\n\tchangeValue,\r\n\tcleanValue, // 更新为 cleanValue\r\n\thandleDisplayChange,\r\n\thandleDisplayBlur\r\n} = useDatePicker(props, emit)\r\n\r\n// 响应式数据\r\nconst errorType = ref('rule')\r\nconst errorTip = ref('')\r\n\r\nconst layerSlide = ref(false)\r\nconst layerPosition = ref('')\r\nconst disabled = ref(props.disabled)\r\n\r\n// refs\r\nconst inputBox = ref(null)\r\nconst layerRef = ref<any>(null)\r\nconst calendar = ref<any>(null)\r\n\r\n// 计算属性\r\nconst { isPc } = useDevice()\r\n\r\n// 监听器\r\nwatch(\r\n\t() => props.disabled,\r\n\tval => {\r\n\t\tdisabled.value = val\r\n\t}\r\n)\r\n\r\n// 生命周期\r\nonMounted(() => {\r\n\tif (typeof window !== 'undefined' && window.innerWidth <= 768) {\r\n\t\t// isPc.value = false\r\n\t\tlayerSlide.value = true\r\n\t\tlayerPosition.value = 'bottom'\r\n\t}\r\n})\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr = ['to-disable-target']\r\n\tif (errorTip.value) {\r\n\t\tarr.push('to-input-mode-line')\r\n\t\tarr.push('to-input-color-danger')\r\n\t\tarr.push('to-input-tip-show')\r\n\t} else {\r\n\t\tif (props.mode) {\r\n\t\t\tfor (let i = 0; i < props.mode.split(' ').length; i++) {\r\n\t\t\t\tarr.push(`mode-${props.mode.split(' ')[i]}`)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst showCloseLayer = computed(() => {\r\n\treturn (isPc.value || props.showCalendar) && (props.type === 'months' || props.type === 'dates')\r\n})\r\n\r\nfunction handleLayerClose() {\r\n\tif (calendar.value) {\r\n\t\tcalendar.value.timeLayer = false\r\n\t\tcalendar.value.monthLayer = false\r\n\t}\r\n}\r\n\r\nfunction closeLayer() {\r\n\tlayerRef.value?.close()\r\n}\r\n\r\nfunction select(value: string) {\r\n\tchangeValue(value)\r\n\tif (showCloseLayer.value) return\r\n\tlayerRef.value?.close()\r\n}\r\n\r\nfunction inputFocus() {\r\n\terrorTip.value = ''\r\n\t// showLayer()\r\n\temit('focus', datedisplay.value)\r\n}\r\n\r\nfunction inputBlur() {\r\n\tif (props.inputable) {\r\n\t\thandleDisplayBlur()\r\n\t}\r\n\temit('blur', datedisplay.value)\r\n}\r\n\r\nfunction clear() {\r\n\tcleanValue()\r\n\tif (typeof window !== 'undefined' && window.innerWidth > 768) {\r\n\t\tlayerRef.value?.close()\r\n\t}\r\n}\r\n\r\nfunction handleClick() {\r\n\tif (!props.inputable) {\r\n\t\tshowLayer()\r\n\t}\r\n}\r\n\r\nfunction showLayer() {\r\n\t// 表单校验的提示清除\r\n\terrorTip.value = inputBox.value.errorTip = ''\r\n\tif (!disabled.value) {\r\n\t\tlayerRef.value?.toggle(inputBox.value.$el)\r\n\t\tnextTick(() => {\r\n\t\t\tif (calendar.value) {\r\n\t\t\t\t// calendar.value.initCalendar()\r\n\t\t\t\tcalendar.value.setData()\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n\r\nfunction setDisabled(f: boolean) {\r\n\tdisabled.value = f\r\n}\r\n\r\n// 暴露方法\r\ndefineExpose({\r\n\tsetDisabled\r\n})\r\n</script>\r\n\r\n<!--<style>-->\r\n<!--.to-date-picker.to-dis > .to-icon-date {-->\r\n<!-- pointer-events: none;-->\r\n<!--}-->\r\n<!--</style>-->\r\n"],"names":["DO_defineComponent","_createBlock","_unref","_normalizeClass","_Teleport","_createElementVNode","_createVNode","_createCommentVNode","_createElementBlock","_Fragment"],"mappings":"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"}
|
|
@@ -100,6 +100,16 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
100
100
|
emit("focus", rangeValue.value);
|
|
101
101
|
floatRef.value.open($el.value);
|
|
102
102
|
}
|
|
103
|
+
function handleInputKeydown(event) {
|
|
104
|
+
if (!props.inputable && event.key.length === 1) {
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
function handleBeforeInput(event) {
|
|
109
|
+
if (!props.inputable) {
|
|
110
|
+
event.preventDefault();
|
|
111
|
+
}
|
|
112
|
+
}
|
|
103
113
|
function handleOpen() {
|
|
104
114
|
if (props.disabled) {
|
|
105
115
|
return;
|
|
@@ -146,9 +156,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
146
156
|
class: "to-date-range-input",
|
|
147
157
|
placeholder: __props.startPlaceholder || unref(t)("to.daterange.startDate"),
|
|
148
158
|
type: "text",
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
159
|
+
onFocus: handleFocus,
|
|
160
|
+
onKeydown: handleInputKeydown,
|
|
161
|
+
onBeforeinput: handleBeforeInput
|
|
162
|
+
}, null, 40, ["onUpdate:modelValue", "placeholder"]), [
|
|
152
163
|
[vModelText, startDate.value],
|
|
153
164
|
[unref(vDis), __props.disabled]
|
|
154
165
|
]),
|
|
@@ -164,9 +175,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
164
175
|
class: "to-date-range-input",
|
|
165
176
|
placeholder: __props.endPlaceholder || unref(t)("to.daterange.endDate"),
|
|
166
177
|
type: "text",
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
178
|
+
onFocus: handleFocus,
|
|
179
|
+
onKeydown: handleInputKeydown,
|
|
180
|
+
onBeforeinput: handleBeforeInput
|
|
181
|
+
}, null, 40, ["onUpdate:modelValue", "placeholder"]), [
|
|
170
182
|
[vModelText, endDate.value],
|
|
171
183
|
[unref(vDis), __props.disabled]
|
|
172
184
|
]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-range.vue2.mjs","sources":["../../../../../../packages/components/daterange/src/date-range.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToDateRange'\r\n});\n</script>\n<template>\r\n\t<span ref=\"$el\" :key=\"langKey\" :flex=\"flex ? flex : null\" class=\"to-date-range\" :class=\"setClass\">\r\n\t\t<span v-if=\"$slots.prefix\" class=\"to-date-range-prefix\">\r\n\t\t\t<slot name=\"prefix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.prefix\" class=\"to-date-range-prefix-text\">\r\n\t\t\t<span>{{ props.prefix }}</span>\r\n\t\t</span>\r\n\t\t<input v-model=\"startDate\" v-dis=\"disabled\" class=\"to-date-range-input\" :placeholder=\"startPlaceholder || t('to.daterange.startDate')\" type=\"text\" :readonly=\"!inputable\" @focus=\"handleFocus\" />\r\n\t\t<span class=\"to-date-range-separator\">{{ props.seperatorText }}</span>\r\n\t\t<input v-model=\"endDate\" v-dis=\"disabled\" class=\"to-date-range-input\" :placeholder=\"endPlaceholder || t('to.daterange.endDate')\" type=\"text\" :readonly=\"!inputable\" @focus=\"handleFocus\" />\r\n\t\t<to-icon v-if=\"startDate && endDate && props.clearable && !props.disabled\" value=\"close\" link class=\"to-date-range-clear\" @click=\"handleClose\"></to-icon>\r\n\t\t<span v-if=\"$slots.suffix\" class=\"to-date-range-suffix\">\r\n\t\t\t<slot name=\"suffix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.suffix\" class=\"to-date-range-suffix-text\">\r\n\t\t\t<span>{{ props.suffix }}</span>\r\n\t\t</span>\r\n\t\t<to-icon :link=\"inputable\" :value=\"props.icon\" class=\"to-date-range-icon\" @click=\"handleOpen\"></to-icon>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-date-range\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"floatRef\" class=\"to-date-range-layer\" :width=\"widthComputed\" :global=\"false\">\r\n\t\t\t\t\t<div class=\"to-date-range-calendars\">\r\n\t\t\t\t\t\t<to-calendar v-model=\"rangeValue\" class=\"to-date-range-calendar\" :type=\"type\" range :min=\"min\" :max=\"max\"></to-calendar>\r\n\t\t\t\t\t\t<span class=\"to-date-range-divider\"></span>\r\n\t\t\t\t\t\t<to-calendar v-model=\"rangeValue\" class=\"to-date-range-calendar\" :type=\"type\" range range-type=\"end\" :min=\"min\" :max=\"max\"></to-calendar>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t</span>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { ToIcon, ToFloat, ToCalendar } from '@touchvue/components'\r\nimport { computed, ref, watch } from 'vue'\r\nimport { vDis } from '@touchvue/directives'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\nexport interface DateRangeProps {\r\n\tmodelValue?: string\r\n\tseperatorText?: string\r\n\tmode?: string\r\n\ticon?: string\r\n\tinputable?: boolean\r\n\tstartPlaceholder?: string\r\n\tendPlaceholder?: string\r\n\ttype?: string\r\n\tmin?: string | Date | number\r\n\tmax?: string | Date | number\r\n\tdisabled?: boolean\r\n\tclearable?: boolean\r\n\tprefix?: string\r\n\tsuffix?: string\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<DateRangeProps>(), {\r\n\tmodelValue: '',\r\n\tseperatorText: '~',\r\n\tmode: 'default',\r\n\ticon: 'date',\r\n\tinputable: true,\r\n\tstartPlaceholder: '开始时间',\r\n\tendPlaceholder: '结束时间',\r\n\ttype: 'date',\r\n\tmin: '',\r\n\tmax: '',\r\n\tdisabled: false,\r\n\tclearable: true,\r\n\tprefix: '',\r\n\tsuffix: '',\r\n\tflex: false\r\n})\r\n\r\nconst floatRef = ref(null)\r\nconst $el = ref(null)\r\nconst startDate = ref('')\r\nconst endDate = ref('')\r\nconst rangeValue = ref('')\r\n\r\nconst emit = defineEmits(['update:modelValue', 'focus', 'change'])\r\n\r\nconst setClass = computed(() => {\r\n\tlet classes = []\r\n\tif (props.mode) {\r\n\t\tclasses.push(`mode-${props.mode}`)\r\n\t}\r\n\treturn classes\r\n})\r\n\r\nconst widthComputed = computed(() => {\r\n\tif (props.type === 'datetime') {\r\n\t\treturn 80\r\n\t} else if (props.type === 'time') {\r\n\t\treturn 23\r\n\t} else {\r\n\t\treturn 50\r\n\t}\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tconsole.log('props.modelValue === 83', val)\r\n\t\tif (val && val.includes(',')) {\r\n\t\t\tlet arr = val.split(',')\r\n\t\t\tconst start = arr[0]\r\n\t\t\tconst end = arr[1]\r\n\t\t\tif (start && end) {\r\n\t\t\t\tstartDate.value = start\r\n\t\t\t\tendDate.value = end\r\n\t\t\t\trangeValue.value = val\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tstartDate.value = ''\r\n\t\t\tendDate.value = ''\r\n\t\t\trangeValue.value = ''\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\n\r\nwatch(\r\n\t() => rangeValue.value,\r\n\tval => {\r\n\t\tconsole.log('rangeValue.value === 105', val)\r\n\t\tif (val) {\r\n\t\t\tlet arr = val.split(',')\r\n\t\t\tconst start = arr[0]\r\n\t\t\tconst end = arr[1]\r\n\t\t\tif (start && end) {\r\n\t\t\t\tstartDate.value = start\r\n\t\t\t\tendDate.value = end\r\n\t\t\t\temit('change', val)\r\n\t\t\t\temit('update:modelValue', val)\r\n\t\t\t\tfloatRef.value.close()\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tstartDate.value = ''\r\n\t\t\tendDate.value = ''\r\n\t\t\temit('change', '')\r\n\t\t\temit('update:modelValue', '')\r\n\t\t}\r\n\t}\r\n)\r\nfunction handleFocus() {\r\n\temit('focus', rangeValue.value)\r\n\tfloatRef.value.open($el.value)\r\n}\r\nfunction handleOpen() {\r\n\tif (props.disabled) {\r\n\t\treturn\r\n\t}\r\n\tfloatRef.value.toggle($el.value)\r\n}\r\nfunction handleClose() {\r\n\tif (props.disabled) {\r\n\t\treturn\r\n\t}\r\n\tstartDate.value = ''\r\n\tendDate.value = ''\r\n\trangeValue.value = ''\r\n\temit('update:modelValue', '')\r\n}\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","$slots","_renderSlot","_createElementVNode","_toDisplayString","_createBlock","_createVNode","_Teleport"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"date-range.vue2.mjs","sources":["../../../../../../packages/components/daterange/src/date-range.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToDateRange'\r\n});\n</script>\n<template>\r\n\t<span ref=\"$el\" :key=\"langKey\" :flex=\"flex ? flex : null\" class=\"to-date-range\" :class=\"setClass\">\r\n\t\t<span v-if=\"$slots.prefix\" class=\"to-date-range-prefix\">\r\n\t\t\t<slot name=\"prefix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.prefix\" class=\"to-date-range-prefix-text\">\r\n\t\t\t<span>{{ props.prefix }}</span>\r\n\t\t</span>\r\n\t\t<input v-model=\"startDate\" v-dis=\"disabled\" class=\"to-date-range-input\" :placeholder=\"startPlaceholder || t('to.daterange.startDate')\" type=\"text\" @focus=\"handleFocus\" @keydown=\"handleInputKeydown\" @beforeinput=\"handleBeforeInput\" />\r\n\t\t<span class=\"to-date-range-separator\">{{ props.seperatorText }}</span>\r\n\t\t<input v-model=\"endDate\" v-dis=\"disabled\" class=\"to-date-range-input\" :placeholder=\"endPlaceholder || t('to.daterange.endDate')\" type=\"text\" @focus=\"handleFocus\" @keydown=\"handleInputKeydown\" @beforeinput=\"handleBeforeInput\" />\r\n\t\t<to-icon v-if=\"startDate && endDate && props.clearable && !props.disabled\" value=\"close\" link class=\"to-date-range-clear\" @click=\"handleClose\"></to-icon>\r\n\t\t<span v-if=\"$slots.suffix\" class=\"to-date-range-suffix\">\r\n\t\t\t<slot name=\"suffix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.suffix\" class=\"to-date-range-suffix-text\">\r\n\t\t\t<span>{{ props.suffix }}</span>\r\n\t\t</span>\r\n\t\t<to-icon :link=\"inputable\" :value=\"props.icon\" class=\"to-date-range-icon\" @click=\"handleOpen\"></to-icon>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-date-range\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"floatRef\" class=\"to-date-range-layer\" :width=\"widthComputed\" :global=\"false\">\r\n\t\t\t\t\t<div class=\"to-date-range-calendars\">\r\n\t\t\t\t\t\t<to-calendar v-model=\"rangeValue\" class=\"to-date-range-calendar\" :type=\"type\" range :min=\"min\" :max=\"max\"></to-calendar>\r\n\t\t\t\t\t\t<span class=\"to-date-range-divider\"></span>\r\n\t\t\t\t\t\t<to-calendar v-model=\"rangeValue\" class=\"to-date-range-calendar\" :type=\"type\" range range-type=\"end\" :min=\"min\" :max=\"max\"></to-calendar>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t</span>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { ToIcon, ToFloat, ToCalendar } from '@touchvue/components'\r\nimport { computed, ref, watch } from 'vue'\r\nimport { vDis } from '@touchvue/directives'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\nexport interface DateRangeProps {\r\n\tmodelValue?: string\r\n\tseperatorText?: string\r\n\tmode?: string\r\n\ticon?: string\r\n\tinputable?: boolean\r\n\tstartPlaceholder?: string\r\n\tendPlaceholder?: string\r\n\ttype?: string\r\n\tmin?: string | Date | number\r\n\tmax?: string | Date | number\r\n\tdisabled?: boolean\r\n\tclearable?: boolean\r\n\tprefix?: string\r\n\tsuffix?: string\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<DateRangeProps>(), {\r\n\tmodelValue: '',\r\n\tseperatorText: '~',\r\n\tmode: 'default',\r\n\ticon: 'date',\r\n\tinputable: true,\r\n\tstartPlaceholder: '开始时间',\r\n\tendPlaceholder: '结束时间',\r\n\ttype: 'date',\r\n\tmin: '',\r\n\tmax: '',\r\n\tdisabled: false,\r\n\tclearable: true,\r\n\tprefix: '',\r\n\tsuffix: '',\r\n\tflex: false\r\n})\r\n\r\nconst floatRef = ref(null)\r\nconst $el = ref(null)\r\nconst startDate = ref('')\r\nconst endDate = ref('')\r\nconst rangeValue = ref('')\r\n\r\nconst emit = defineEmits(['update:modelValue', 'focus', 'change'])\r\n\r\nconst setClass = computed(() => {\r\n\tlet classes = []\r\n\tif (props.mode) {\r\n\t\tclasses.push(`mode-${props.mode}`)\r\n\t}\r\n\treturn classes\r\n})\r\n\r\nconst widthComputed = computed(() => {\r\n\tif (props.type === 'datetime') {\r\n\t\treturn 80\r\n\t} else if (props.type === 'time') {\r\n\t\treturn 23\r\n\t} else {\r\n\t\treturn 50\r\n\t}\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tconsole.log('props.modelValue === 83', val)\r\n\t\tif (val && val.includes(',')) {\r\n\t\t\tlet arr = val.split(',')\r\n\t\t\tconst start = arr[0]\r\n\t\t\tconst end = arr[1]\r\n\t\t\tif (start && end) {\r\n\t\t\t\tstartDate.value = start\r\n\t\t\t\tendDate.value = end\r\n\t\t\t\trangeValue.value = val\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tstartDate.value = ''\r\n\t\t\tendDate.value = ''\r\n\t\t\trangeValue.value = ''\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\n\r\nwatch(\r\n\t() => rangeValue.value,\r\n\tval => {\r\n\t\tconsole.log('rangeValue.value === 105', val)\r\n\t\tif (val) {\r\n\t\t\tlet arr = val.split(',')\r\n\t\t\tconst start = arr[0]\r\n\t\t\tconst end = arr[1]\r\n\t\t\tif (start && end) {\r\n\t\t\t\tstartDate.value = start\r\n\t\t\t\tendDate.value = end\r\n\t\t\t\temit('change', val)\r\n\t\t\t\temit('update:modelValue', val)\r\n\t\t\t\tfloatRef.value.close()\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tstartDate.value = ''\r\n\t\t\tendDate.value = ''\r\n\t\t\temit('change', '')\r\n\t\t\temit('update:modelValue', '')\r\n\t\t}\r\n\t}\r\n)\r\nfunction handleFocus() {\r\n\temit('focus', rangeValue.value)\r\n\tfloatRef.value.open($el.value)\r\n}\r\nfunction handleInputKeydown(event: KeyboardEvent) {\r\n\tif (!props.inputable && event.key.length === 1) {\r\n\t\tevent.preventDefault()\r\n\t}\r\n}\r\nfunction handleBeforeInput(event: InputEvent) {\r\n\tif (!props.inputable) {\r\n\t\tevent.preventDefault()\r\n\t}\r\n}\r\nfunction handleOpen() {\r\n\tif (props.disabled) {\r\n\t\treturn\r\n\t}\r\n\tfloatRef.value.toggle($el.value)\r\n}\r\nfunction handleClose() {\r\n\tif (props.disabled) {\r\n\t\treturn\r\n\t}\r\n\tstartDate.value = ''\r\n\tendDate.value = ''\r\n\trangeValue.value = ''\r\n\temit('update:modelValue', '')\r\n}\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","$slots","_renderSlot","_createElementVNode","_toDisplayString","_createBlock","_createVNode","_Teleport"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.vue2.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToForm'\r\n});\n</script>\n<template>\r\n\t<div class=\"to-form\" :flex=\"flex ? flex : null\" :class=\"setClass\" :style=\"setStyle\">\r\n\t\t<div ref=\"toForm\" class=\"to-form-list\">\r\n\t\t\t<slot></slot>\r\n\t\t\t<div v-if=\"props.submitPosition === 'corner'\" class=\"to-form-item is-placeholder\"></div>\r\n\t\t\t<div v-if=\"slots.submit\" class=\"to-form-submit\" :style=\"submitStyle\">\r\n\t\t\t\t<slot name=\"submit\"></slot>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, computed, onMounted, onBeforeUnmount, provide, useSlots, watch } from 'vue'\r\n\r\n\r\nconst props = defineProps({\r\n\tflex: Boolean,\r\n\tlabelWidth: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tlabelPosition: {\r\n\t\ttype: String,\r\n\t\tdefault: 'left'\r\n\t},\r\n\tcol: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: 1\r\n\t},\r\n\tsubmitPosition: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\ttype: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tdir: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tmode: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tvalueWidth: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tspace: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tspaceX: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tspaceY: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tcomparable: Boolean,\r\n\treadonly: Boolean\r\n})\r\n\r\nconst toForm = ref<HTMLElement | null>(null)\r\nconst slots = useSlots()\r\nconst items = ref<any[]>([])\r\nconst maxLabelWidth = ref(0)\r\n\r\n// 响应式引用,用于 provide 给子组件\r\nconst labelWidthRef = ref(props.labelWidth)\r\nconst labelPositionRef = ref(props.labelPosition)\r\nconst spaceRef = ref(props.space)\r\nconst spaceXRef = ref(props.spaceX)\r\nconst spaceYRef = ref(props.spaceY)\r\nconst valueWidthRef = ref(props.valueWidth)\r\n\r\nconst adjust = () => {\r\n\tsetTimeout(() => {\r\n\t\tlet maxWidth = 0\r\n\t\titems.value.forEach(item => {\r\n\t\t\tif (item?.$refs?.label) {\r\n\t\t\t\titem.$refs.label.style.width = ''\r\n\t\t\t}\r\n\t\t})\r\n\t\titems.value.forEach(item => {\r\n\t\t\tconst label = item?.$refs?.label\r\n\t\t\tif (label && label.clientWidth > maxWidth) {\r\n\t\t\t\tmaxWidth = label.clientWidth\r\n\t\t\t}\r\n\t\t})\r\n\t\titems.value.forEach(item => {\r\n\t\t\tif (item?.$refs?.label) {\r\n\t\t\t\titem.$refs.label.style.width = `${maxWidth + 1}px`\r\n\t\t\t}\r\n\t\t})\r\n\t\tmaxLabelWidth.value = maxWidth + 1\r\n\t}, 200)\r\n}\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr: string[] = []\r\n\tif (props.col) {\r\n\t\tarr.push('is-col')\r\n\t\tarr.push(`col-${props.col}`)\r\n\t}\r\n\tif (props.submitPosition) arr.push(`submit-position-${props.submitPosition}`)\r\n\tif (props.mode) arr.push(`mode-${props.mode}`)\r\n\tif (props.dir) arr.push(`dir-${props.dir}`)\r\n\tif (props.valueWidth) arr.push(`value-width-${props.valueWidth}`)\r\n\tif (props.labelPosition) arr.push(`label-position-${props.labelPosition}`)\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tconst style: Record<string, string> = {}\r\n\tif (props.space) {\r\n\t\tstyle.gap = props.space + 'em'\r\n\t}\r\n\tif (props.spaceX) {\r\n\t\tstyle['--gap-x'] = props.spaceX + 'em'\r\n\t}\r\n\tif (props.spaceY) {\r\n\t\tstyle['--gap-y'] = props.spaceY + 'em'\r\n\t}\r\n\treturn style\r\n})\r\n\r\nconst submitStyle = computed(() => {\r\n\tif (props.submitPosition === 'item') {\r\n\t\tif (props.labelWidth === 'max') {\r\n\t\t\treturn { marginLeft: maxLabelWidth.value + 'px' }\r\n\t\t} else {\r\n\t\t\treturn { marginLeft: props.labelWidth + 'em' }\r\n\t\t}\r\n\t}\r\n\treturn {}\r\n})\r\n\r\n// 监听 props 变化,更新响应式引用\r\nwatch(\r\n\t() => props.labelWidth,\r\n\tnewVal => {\r\n\t\tlabelWidthRef.value = newVal\r\n\t\tif (newVal === 'max') {\r\n\t\t\tadjust()\r\n\t\t}\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.labelPosition,\r\n\tnewVal => {\r\n\t\tlabelPositionRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.space,\r\n\tnewVal => {\r\n\t\tspaceRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.spaceX,\r\n\tnewVal => {\r\n\t\tspaceXRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.spaceY,\r\n\tnewVal => {\r\n\t\tspaceYRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.valueWidth,\r\n\tnewVal => {\r\n\t\tvalueWidthRef.value = newVal\r\n\t}\r\n)\r\n\r\nonMounted(() => {\r\n\tif (props.labelWidth === 'max') {\r\n\t\twindow.addEventListener('resize', adjust)\r\n\t\tadjust()\r\n\t}\r\n})\r\n\r\nonBeforeUnmount(() => {\r\n\tif (props.labelWidth === 'max') {\r\n\t\twindow.removeEventListener('resize', adjust)\r\n\t}\r\n})\r\n\r\n// provide current instance\r\nprovide('ToForm', {\r\n\tlabelWidth: labelWidthRef,\r\n\tlabelPosition: labelPositionRef,\r\n\tspace: spaceRef,\r\n\tspaceX: spaceXRef,\r\n\tspaceY: spaceYRef,\r\n\tsubmitPosition: props.submitPosition,\r\n\titems: items.value,\r\n\ttype: props.type,\r\n\tcomparable: props.comparable,\r\n\tvalueWidth: valueWidthRef\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_unref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"form.vue2.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToForm'\r\n});\n</script>\n<template>\r\n\t<div class=\"to-form\" :flex=\"flex ? flex : null\" :class=\"setClass\" :style=\"setStyle\">\r\n\t\t<div ref=\"toForm\" class=\"to-form-list\">\r\n\t\t\t<slot></slot>\r\n\t\t\t<div v-if=\"props.submitPosition === 'corner'\" class=\"to-form-item is-placeholder\"></div>\r\n\t\t\t<div v-if=\"slots.submit\" class=\"to-form-submit\" :style=\"submitStyle\">\r\n\t\t\t\t<slot name=\"submit\"></slot>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { ref, computed, onMounted, onBeforeUnmount, provide, useSlots, watch } from 'vue'\r\n\r\n\r\nconst props = defineProps({\r\n\tflex: Boolean,\r\n\tlabelWidth: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tlabelPosition: {\r\n\t\ttype: String,\r\n\t\tdefault: 'left'\r\n\t},\r\n\tcol: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: 1\r\n\t},\r\n\tsubmitPosition: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\ttype: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tdir: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tmode: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tvalueWidth: {\r\n\t\ttype: String,\r\n\t\tdefault: ''\r\n\t},\r\n\tspace: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tspaceX: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tspaceY: {\r\n\t\ttype: [Number, String],\r\n\t\tdefault: ''\r\n\t},\r\n\tcomparable: Boolean\r\n})\r\n\r\nconst toForm = ref<HTMLElement | null>(null)\r\nconst slots = useSlots()\r\nconst items = ref<any[]>([])\r\nconst maxLabelWidth = ref(0)\r\n\r\n// 响应式引用,用于 provide 给子组件\r\nconst labelWidthRef = ref(props.labelWidth)\r\nconst labelPositionRef = ref(props.labelPosition)\r\nconst spaceRef = ref(props.space)\r\nconst spaceXRef = ref(props.spaceX)\r\nconst spaceYRef = ref(props.spaceY)\r\nconst valueWidthRef = ref(props.valueWidth)\r\n\r\nconst adjust = () => {\r\n\tsetTimeout(() => {\r\n\t\tlet maxWidth = 0\r\n\t\titems.value.forEach(item => {\r\n\t\t\tif (item?.$refs?.label) {\r\n\t\t\t\titem.$refs.label.style.width = ''\r\n\t\t\t}\r\n\t\t})\r\n\t\titems.value.forEach(item => {\r\n\t\t\tconst label = item?.$refs?.label\r\n\t\t\tif (label && label.clientWidth > maxWidth) {\r\n\t\t\t\tmaxWidth = label.clientWidth\r\n\t\t\t}\r\n\t\t})\r\n\t\titems.value.forEach(item => {\r\n\t\t\tif (item?.$refs?.label) {\r\n\t\t\t\titem.$refs.label.style.width = `${maxWidth + 1}px`\r\n\t\t\t}\r\n\t\t})\r\n\t\tmaxLabelWidth.value = maxWidth + 1\r\n\t}, 200)\r\n}\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr: string[] = []\r\n\tif (props.col) {\r\n\t\tarr.push('is-col')\r\n\t\tarr.push(`col-${props.col}`)\r\n\t}\r\n\tif (props.submitPosition) arr.push(`submit-position-${props.submitPosition}`)\r\n\tif (props.mode) arr.push(`mode-${props.mode}`)\r\n\tif (props.dir) arr.push(`dir-${props.dir}`)\r\n\tif (props.valueWidth) arr.push(`value-width-${props.valueWidth}`)\r\n\tif (props.labelPosition) arr.push(`label-position-${props.labelPosition}`)\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tconst style: Record<string, string> = {}\r\n\tif (props.space) {\r\n\t\tstyle.gap = props.space + 'em'\r\n\t}\r\n\tif (props.spaceX) {\r\n\t\tstyle['--gap-x'] = props.spaceX + 'em'\r\n\t}\r\n\tif (props.spaceY) {\r\n\t\tstyle['--gap-y'] = props.spaceY + 'em'\r\n\t}\r\n\treturn style\r\n})\r\n\r\nconst submitStyle = computed(() => {\r\n\tif (props.submitPosition === 'item') {\r\n\t\tif (props.labelWidth === 'max') {\r\n\t\t\treturn { marginLeft: maxLabelWidth.value + 'px' }\r\n\t\t} else {\r\n\t\t\treturn { marginLeft: props.labelWidth + 'em' }\r\n\t\t}\r\n\t}\r\n\treturn {}\r\n})\r\n\r\n// 监听 props 变化,更新响应式引用\r\nwatch(\r\n\t() => props.labelWidth,\r\n\tnewVal => {\r\n\t\tlabelWidthRef.value = newVal\r\n\t\tif (newVal === 'max') {\r\n\t\t\tadjust()\r\n\t\t}\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.labelPosition,\r\n\tnewVal => {\r\n\t\tlabelPositionRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.space,\r\n\tnewVal => {\r\n\t\tspaceRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.spaceX,\r\n\tnewVal => {\r\n\t\tspaceXRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.spaceY,\r\n\tnewVal => {\r\n\t\tspaceYRef.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.valueWidth,\r\n\tnewVal => {\r\n\t\tvalueWidthRef.value = newVal\r\n\t}\r\n)\r\n\r\nonMounted(() => {\r\n\tif (props.labelWidth === 'max') {\r\n\t\twindow.addEventListener('resize', adjust)\r\n\t\tadjust()\r\n\t}\r\n})\r\n\r\nonBeforeUnmount(() => {\r\n\tif (props.labelWidth === 'max') {\r\n\t\twindow.removeEventListener('resize', adjust)\r\n\t}\r\n})\r\n\r\n// provide current instance\r\nprovide('ToForm', {\r\n\tlabelWidth: labelWidthRef,\r\n\tlabelPosition: labelPositionRef,\r\n\tspace: spaceRef,\r\n\tspaceX: spaceXRef,\r\n\tspaceY: spaceYRef,\r\n\tsubmitPosition: props.submitPosition,\r\n\titems: items.value,\r\n\ttype: props.type,\r\n\tcomparable: props.comparable,\r\n\tvalueWidth: valueWidthRef\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_unref"],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ export { ToTransfer } from './transfer/index.mjs';
|
|
|
46
46
|
export { ToUpload } from './upload/index.mjs';
|
|
47
47
|
export { ToImport } from './import/index.mjs';
|
|
48
48
|
export { ToExport } from './export/index.mjs';
|
|
49
|
+
export { ToRate } from './rate/index.mjs';
|
|
49
50
|
export { default as vAlign } from '../directives/align/src/align.mjs';
|
|
50
51
|
export { default as vColor } from '../directives/color/src/color.mjs';
|
|
51
52
|
export { default as vDis } from '../directives/dis/src/dis.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -46,6 +46,7 @@ export { ToTransfer } from './transfer/index.mjs';
|
|
|
46
46
|
export { ToUpload } from './upload/index.mjs';
|
|
47
47
|
export { ToImport } from './import/index.mjs';
|
|
48
48
|
export { ToExport } from './export/index.mjs';
|
|
49
|
+
export { ToRate } from './rate/index.mjs';
|
|
49
50
|
export { default as vAlign } from '../directives/align/src/align.mjs';
|
|
50
51
|
export { default as vColor } from '../directives/color/src/color.mjs';
|
|
51
52
|
export { default as vDis } from '../directives/dis/src/dis.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -173,10 +173,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
173
173
|
type: [String, Number],
|
|
174
174
|
default: 0
|
|
175
175
|
},
|
|
176
|
-
readonly: {
|
|
177
|
-
type: Boolean,
|
|
178
|
-
default: false
|
|
179
|
-
},
|
|
180
176
|
count: {
|
|
181
177
|
type: Boolean,
|
|
182
178
|
default: false
|
|
@@ -336,7 +332,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
336
332
|
return (_c = (_b = (_a = ins.appContext.config.globalProperties.$TouchUI) == null ? void 0 : _a.input) == null ? void 0 : _b.spChars) != null ? _c : '/,\\,[,],{,},"';
|
|
337
333
|
});
|
|
338
334
|
const setClass = computed(() => {
|
|
339
|
-
const arr = ["to-
|
|
335
|
+
const arr = ["to-disable-target"];
|
|
340
336
|
if (errorTip.value) {
|
|
341
337
|
arr.push("to-input-mode-line");
|
|
342
338
|
arr.push("to-input-color-danger");
|
|
@@ -362,9 +358,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
362
358
|
if (props.link) {
|
|
363
359
|
arr.push("is-link");
|
|
364
360
|
}
|
|
365
|
-
if (props.type === "textarea" && (typeof props.height === "number" || Number(props.height) > 1)) {
|
|
366
|
-
arr.push(`height-${props.height}`);
|
|
367
|
-
}
|
|
368
361
|
if (props.step) {
|
|
369
362
|
arr.push("is-step");
|
|
370
363
|
}
|
|
@@ -382,6 +375,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
382
375
|
if (props.width) {
|
|
383
376
|
if (!isNaN(Number(props.width))) {
|
|
384
377
|
obj.width = props.width + "em";
|
|
378
|
+
} else {
|
|
379
|
+
obj.width = props.width;
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
if (props.height) {
|
|
383
|
+
if (!isNaN(Number(props.height))) {
|
|
384
|
+
obj.height = props.height + "em";
|
|
385
|
+
} else {
|
|
386
|
+
obj.height = props.height;
|
|
385
387
|
}
|
|
386
388
|
}
|
|
387
389
|
return obj;
|
|
@@ -550,35 +552,38 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
550
552
|
)
|
|
551
553
|
])) : createCommentVNode("v-if", true),
|
|
552
554
|
createCommentVNode(" \u8F93\u5165\u6846\u90E8\u5206 "),
|
|
553
|
-
props.type === "textarea" ?
|
|
555
|
+
props.type === "textarea" ? (openBlock(), createElementBlock("span", {
|
|
554
556
|
key: 3,
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
"
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
557
|
+
class: "to-input-content"
|
|
558
|
+
}, [
|
|
559
|
+
withDirectives(createElementVNode("textarea", {
|
|
560
|
+
ref_key: "inputRef",
|
|
561
|
+
ref: inputRef,
|
|
562
|
+
"onUpdate:modelValue": ($event) => data.value = $event,
|
|
563
|
+
class: "to-input-box",
|
|
564
|
+
autocomplete: props.autocomplete ? "on" : "new-password",
|
|
565
|
+
maxlength: props.maxlength,
|
|
566
|
+
placeholder: iPlaceholder.value,
|
|
567
|
+
disabled: props.disabled,
|
|
568
|
+
tabindex: props.tabindex,
|
|
569
|
+
onKeyup: inputKeyup,
|
|
570
|
+
onKeydown: [
|
|
571
|
+
withModifiers(inputKeydown, ["exact"]),
|
|
572
|
+
withKeys(withModifiers(inputEnter, ["exact"]), ["enter"]),
|
|
573
|
+
withKeys(withModifiers(inputCtrlEnter, ["ctrl", "exact"]), ["enter"]),
|
|
574
|
+
withKeys(withModifiers(inputCtrlEnter, ["meta", "exact"]), ["enter"])
|
|
575
|
+
],
|
|
576
|
+
onCut: inputCut,
|
|
577
|
+
onFocus: inputFocus,
|
|
578
|
+
onBlur: inputBlur,
|
|
579
|
+
onPaste: inputPaste,
|
|
580
|
+
onKeypress: inputKeyPress,
|
|
581
|
+
onChange: inputChange,
|
|
582
|
+
onInput: inputInput
|
|
583
|
+
}, null, 40, ["onUpdate:modelValue", "autocomplete", "maxlength", "placeholder", "disabled", "tabindex", "onKeydown"]), [
|
|
584
|
+
[vModelText, data.value]
|
|
585
|
+
])
|
|
586
|
+
])) : props.type === "html" ? (openBlock(), createElementBlock("span", {
|
|
582
587
|
key: 4,
|
|
583
588
|
class: "to-input-html"
|
|
584
589
|
}, [
|
|
@@ -608,7 +613,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
608
613
|
placeholder: iPlaceholder.value,
|
|
609
614
|
type: itype.value,
|
|
610
615
|
disabled: props.disabled,
|
|
611
|
-
readonly: __props.readonly,
|
|
612
616
|
onKeyup: inputKeyup,
|
|
613
617
|
onKeydown: [
|
|
614
618
|
withModifiers(inputKeydown, ["exact"]),
|
|
@@ -623,7 +627,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
623
627
|
onKeypress: inputKeyPress,
|
|
624
628
|
onChange: inputChange,
|
|
625
629
|
onInput: inputInput
|
|
626
|
-
}, null, 40, ["onUpdate:modelValue", "autocomplete", "tabindex", "maxlength", "placeholder", "type", "disabled", "
|
|
630
|
+
}, null, 40, ["onUpdate:modelValue", "autocomplete", "tabindex", "maxlength", "placeholder", "type", "disabled", "onKeydown"]), [
|
|
627
631
|
[vModelDynamic, data.value]
|
|
628
632
|
])
|
|
629
633
|
])),
|
|
@@ -667,7 +671,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
667
671
|
/* TEXT */
|
|
668
672
|
)
|
|
669
673
|
])) : createCommentVNode("v-if", true),
|
|
670
|
-
(
|
|
674
|
+
(_ctx.$slots.default || _ctx.$slots.suffix || props.step) && __props.type !== "textarea" ? (openBlock(), createElementBlock("span", {
|
|
671
675
|
key: 9,
|
|
672
676
|
class: "to-input-suffix"
|
|
673
677
|
}, [
|
|
@@ -684,36 +688,21 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
684
688
|
[unref(vDis), Number(data.value) === Number(props.max) || props.disabled]
|
|
685
689
|
]) : createCommentVNode("v-if", true)
|
|
686
690
|
]),
|
|
687
|
-
props.type === "textarea" && (props.maxlength !== Infinity && props.count || _ctx.$slots.
|
|
691
|
+
props.type === "textarea" && (props.maxlength !== Infinity && props.count || _ctx.$slots.fn || _ctx.$slots.default || props.suggestion) ? (openBlock(), createElementBlock("span", {
|
|
688
692
|
key: 1,
|
|
689
|
-
class: "to-input-
|
|
693
|
+
class: "to-input-fn"
|
|
690
694
|
}, [
|
|
691
|
-
|
|
695
|
+
_ctx.$slots.fn || _ctx.$slots.default ? (openBlock(), createElementBlock("span", {
|
|
692
696
|
key: 0,
|
|
693
|
-
class: "to-input-count"
|
|
694
|
-
}, [
|
|
695
|
-
createElementVNode(
|
|
696
|
-
"span",
|
|
697
|
-
{ class: "to-input-count-text" },
|
|
698
|
-
toDisplayString(getDataLength.value) + "/" + toDisplayString(props.maxlength),
|
|
699
|
-
1
|
|
700
|
-
/* TEXT */
|
|
701
|
-
)
|
|
702
|
-
])) : createCommentVNode("v-if", true),
|
|
703
|
-
_ctx.$slots.suffix || _ctx.$slots.default ? (openBlock(), createElementBlock("span", {
|
|
704
|
-
key: 1,
|
|
705
697
|
class: "to-input-suffix-slot"
|
|
706
698
|
}, [
|
|
707
699
|
__props.type === "textarea" ? renderSlot(_ctx.$slots, "default", { key: 0 }) : createCommentVNode("v-if", true),
|
|
708
|
-
__props.type === "textarea" ? renderSlot(_ctx.$slots, "
|
|
700
|
+
__props.type === "textarea" ? renderSlot(_ctx.$slots, "fn", { key: 1 }) : createCommentVNode("v-if", true)
|
|
709
701
|
])) : createCommentVNode("v-if", true),
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
class: "to-input-suggestion"
|
|
713
|
-
}, [
|
|
714
|
-
(openBlock(true), createElementBlock(
|
|
702
|
+
createElementVNode("span", { class: "to-input-suggestion" }, [
|
|
703
|
+
props.suggestion ? (openBlock(true), createElementBlock(
|
|
715
704
|
Fragment,
|
|
716
|
-
|
|
705
|
+
{ key: 0 },
|
|
717
706
|
renderList(props.suggestion.split(","), (item, i) => {
|
|
718
707
|
return openBlock(), createBlock(unref(ToButton), {
|
|
719
708
|
key: i,
|
|
@@ -734,7 +723,19 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
734
723
|
}),
|
|
735
724
|
128
|
|
736
725
|
/* KEYED_FRAGMENT */
|
|
737
|
-
))
|
|
726
|
+
)) : createCommentVNode("v-if", true)
|
|
727
|
+
]),
|
|
728
|
+
props.maxlength !== Infinity && props.count ? (openBlock(), createElementBlock("span", {
|
|
729
|
+
key: 1,
|
|
730
|
+
class: "to-input-count"
|
|
731
|
+
}, [
|
|
732
|
+
createElementVNode(
|
|
733
|
+
"span",
|
|
734
|
+
{ class: "to-input-count-text" },
|
|
735
|
+
toDisplayString(getDataLength.value) + "/" + toDisplayString(props.maxlength),
|
|
736
|
+
1
|
|
737
|
+
/* TEXT */
|
|
738
|
+
)
|
|
738
739
|
])) : createCommentVNode("v-if", true)
|
|
739
740
|
])) : createCommentVNode("v-if", true),
|
|
740
741
|
errorTip.value ? withDirectives((openBlock(), createElementBlock("span", {
|