@touchvue/ui 1.0.0-beta.34 → 1.0.0-beta.35-patch.1
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/README.md +70 -70
- package/es/components/article/index.d.ts +1 -1
- package/es/components/box/index.d.ts +1 -1
- package/es/components/breadcrumb/index.d.ts +1 -1
- package/es/components/button/index.d.ts +1 -1
- package/es/components/button/src/button.d.ts +1 -1
- package/es/components/calendar/index.d.ts +1 -1
- package/es/components/card/index.d.ts +1 -1
- package/es/components/cascader/index.d.ts +1 -1
- package/es/components/center-scroll/index.d.ts +1 -1
- package/es/components/checkbox/index.d.ts +1 -1
- package/es/components/checkboxes/index.d.ts +1 -1
- package/es/components/collapse/index.d.ts +1 -1
- package/es/components/datepicker/index.d.ts +1 -1
- package/es/components/daterange/index.d.ts +1 -1
- package/es/components/dialog/index.d.ts +1 -1
- package/es/components/divider/index.d.ts +1 -1
- package/es/components/ellipsis/index.d.ts +1 -1
- package/es/components/export/index.d.ts +1 -1
- package/es/components/export/src/export.vue.d.ts +1 -1
- package/es/components/fix/index.d.ts +1 -1
- package/es/components/float/index.d.ts +1 -1
- package/es/components/form/index.d.ts +1 -1
- package/es/components/gap/index.d.ts +1 -1
- package/es/components/grid/index.d.ts +1 -1
- package/es/components/guider/index.d.ts +1 -1
- package/es/components/header/index.d.ts +1 -1
- package/es/components/icon/index.d.ts +1 -1
- package/es/components/import/index.d.ts +1 -1
- package/es/components/index.d.ts +1 -1
- package/es/components/input/index.d.ts +1 -1
- package/es/components/input/src/input.vue.d.ts +4 -0
- package/es/components/msg/index.d.ts +1 -1
- package/es/components/padding/index.d.ts +1 -1
- package/es/components/page/index.d.ts +1 -1
- package/es/components/param/index.d.ts +7 -7
- package/es/components/param/src/Param.vue.d.ts +3 -3
- package/es/components/pic/index.d.ts +1 -1
- package/es/components/progress/index.d.ts +1 -1
- package/es/components/range/index.d.ts +1 -1
- package/es/components/scroll/index.d.ts +2 -2
- package/es/components/segment/index.d.ts +1 -1
- package/es/components/select/index.d.ts +1 -1
- package/es/components/slide/index.d.ts +1 -1
- package/es/components/step/index.d.ts +1 -1
- package/es/components/submit/index.d.ts +1 -1
- package/es/components/switch/index.d.ts +1 -1
- package/es/components/tab/index.d.ts +1 -1
- package/es/components/tab/src/tab.vue.d.ts +3 -1
- package/es/components/table/index.d.ts +1 -1
- package/es/components/tag/index.d.ts +1 -1
- package/es/components/text/index.d.ts +1 -1
- package/es/components/timeline/src/timeline.vue.d.ts +4 -4
- package/es/components/tip/index.d.ts +1 -1
- package/es/components/tooltip/index.d.ts +1 -1
- package/es/components/transfer/index.d.ts +1 -1
- package/es/components/tree/index.d.ts +1 -1
- package/es/components/upload/index.d.ts +1 -1
- package/es/index.mjs +2 -1
- package/es/index.mjs.map +1 -1
- package/es/node_modules/.pnpm/{dompurify@3.3.1 → dompurify@3.2.6}/node_modules/dompurify/dist/purify.es.mjs +25 -65
- package/es/node_modules/.pnpm/dompurify@3.2.6/node_modules/dompurify/dist/purify.es.mjs.map +1 -0
- package/es/packages/components/article/index.mjs.map +1 -1
- package/es/packages/components/article/src/article.mjs.map +1 -1
- package/es/packages/components/article/src/article.vue2.mjs.map +1 -1
- package/es/packages/components/box/index.mjs.map +1 -1
- package/es/packages/components/box/src/box.mjs.map +1 -1
- package/es/packages/components/box/src/box.vue2.mjs.map +1 -1
- package/es/packages/components/breadcrumb/index.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb-item.vue.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb-item.vue2.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb.vue.mjs.map +1 -1
- package/es/packages/components/breadcrumb/src/breadcrumb.vue2.mjs.map +1 -1
- package/es/packages/components/button/index.mjs.map +1 -1
- package/es/packages/components/button/src/button.mjs.map +1 -1
- package/es/packages/components/button/src/button.vue2.mjs +8 -8
- package/es/packages/components/button/src/button.vue2.mjs.map +1 -1
- package/es/packages/components/calendar/index.mjs.map +1 -1
- package/es/packages/components/calendar/src/calendar.mjs.map +1 -1
- package/es/packages/components/calendar/src/calendar.vue2.mjs +1 -1
- package/es/packages/components/calendar/src/calendar.vue2.mjs.map +1 -1
- package/es/packages/components/card/index.mjs.map +1 -1
- package/es/packages/components/card/src/Card.vue.mjs.map +1 -1
- package/es/packages/components/card/src/card-item.vue.mjs.map +1 -1
- package/es/packages/components/card/src/card.vue2.mjs.map +1 -1
- package/es/packages/components/cascader/index.mjs.map +1 -1
- package/es/packages/components/cascader/src/cascader-item.vue2.mjs +1 -1
- package/es/packages/components/cascader/src/cascader-item.vue2.mjs.map +1 -1
- package/es/packages/components/cascader/src/cascader.vue2.mjs +2 -2
- package/es/packages/components/cascader/src/cascader.vue2.mjs.map +1 -1
- package/es/packages/components/center-scroll/index.mjs.map +1 -1
- package/es/packages/components/center-scroll/src/CenterScroll.vue2.mjs.map +1 -1
- package/es/packages/components/center-scroll/src/center-scroll.mjs.map +1 -1
- package/es/packages/components/checkbox/index.mjs.map +1 -1
- package/es/packages/components/checkbox/src/Checkbox.vue2.mjs +2 -2
- package/es/packages/components/checkbox/src/Checkbox.vue2.mjs.map +1 -1
- package/es/packages/components/checkboxes/index.mjs.map +1 -1
- package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs +1 -1
- package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs.map +1 -1
- package/es/packages/components/collapse/index.mjs.map +1 -1
- package/es/packages/components/collapse/src/collapse-item.vue2.mjs +2 -2
- package/es/packages/components/collapse/src/collapse-item.vue2.mjs.map +1 -1
- package/es/packages/components/collapse/src/collapse.vue2.mjs.map +1 -1
- package/es/packages/components/datepicker/index.mjs.map +1 -1
- package/es/packages/components/datepicker/src/DatePicker.vue2.mjs +2 -1
- package/es/packages/components/datepicker/src/DatePicker.vue2.mjs.map +1 -1
- package/es/packages/components/datepicker/src/Picker.vue2.mjs.map +1 -1
- package/es/packages/components/datepicker/src/date-picker.mjs.map +1 -1
- package/es/packages/components/datepicker/src/use-date-picker.mjs.map +1 -1
- package/es/packages/components/daterange/index.mjs.map +1 -1
- package/es/packages/components/daterange/src/date-range.vue2.mjs +12 -12
- package/es/packages/components/daterange/src/date-range.vue2.mjs.map +1 -1
- package/es/packages/components/dialog/index.mjs.map +1 -1
- package/es/packages/components/dialog/src/Dialog.vue2.mjs.map +1 -1
- package/es/packages/components/dialog/src/dialog.mjs.map +1 -1
- package/es/packages/components/divider/index.mjs.map +1 -1
- package/es/packages/components/divider/src/divider.vue2.mjs.map +1 -1
- package/es/packages/components/ellipsis/index.mjs.map +1 -1
- package/es/packages/components/ellipsis/src/Ellipsis.vue2.mjs.map +1 -1
- package/es/packages/components/ellipsis/src/ellipsis.mjs.map +1 -1
- package/es/packages/components/export/index.mjs.map +1 -1
- package/es/packages/components/export/src/export.vue2.mjs.map +1 -1
- package/es/packages/components/fix/index.mjs.map +1 -1
- package/es/packages/components/fix/src/Fix.vue2.mjs.map +1 -1
- package/es/packages/components/fix/src/fix.mjs.map +1 -1
- package/es/packages/components/float/index.mjs.map +1 -1
- package/es/packages/components/float/src/Float.vue2.mjs.map +1 -1
- package/es/packages/components/float/src/float.mjs.map +1 -1
- package/es/packages/components/form/index.mjs.map +1 -1
- package/es/packages/components/form/src/form-item.vue2.mjs.map +1 -1
- package/es/packages/components/form/src/form.vue2.mjs.map +1 -1
- package/es/packages/components/gap/index.mjs.map +1 -1
- package/es/packages/components/gap/src/gap.vue2.mjs.map +1 -1
- package/es/packages/components/grid/index.mjs.map +1 -1
- package/es/packages/components/grid/src/grid-item.vue2.mjs.map +1 -1
- package/es/packages/components/grid/src/grid.vue2.mjs.map +1 -1
- package/es/packages/components/guider/index.mjs.map +1 -1
- package/es/packages/components/guider/src/guider.vue2.mjs +1 -1
- package/es/packages/components/guider/src/guider.vue2.mjs.map +1 -1
- package/es/packages/components/header/index.mjs.map +1 -1
- package/es/packages/components/header/src/header.vue2.mjs.map +1 -1
- package/es/packages/components/icon/index.mjs.map +1 -1
- package/es/packages/components/icon/src/icon.vue2.mjs.map +1 -1
- package/es/packages/components/import/index.mjs.map +1 -1
- package/es/packages/components/import/src/import.vue2.mjs +1 -1
- package/es/packages/components/import/src/import.vue2.mjs.map +1 -1
- package/es/packages/components/input/index.mjs.map +1 -1
- package/es/packages/components/input/src/input.vue2.mjs +59 -7
- package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
- package/es/packages/components/msg/index.mjs.map +1 -1
- package/es/packages/components/msg/src/msg.vue2.mjs +14 -14
- package/es/packages/components/msg/src/msg.vue2.mjs.map +1 -1
- package/es/packages/components/padding/index.mjs.map +1 -1
- package/es/packages/components/padding/src/padding.vue2.mjs.map +1 -1
- package/es/packages/components/page/index.mjs.map +1 -1
- package/es/packages/components/page/src/page.vue2.mjs.map +1 -1
- package/es/packages/components/param/index.mjs.map +1 -1
- package/es/packages/components/param/src/Param.vue2.mjs.map +1 -1
- package/es/packages/components/param/src/ParamItem.vue.mjs.map +1 -1
- package/es/packages/components/param/src/param-item.mjs.map +1 -1
- package/es/packages/components/param/src/param.mjs.map +1 -1
- package/es/packages/components/pic/index.mjs.map +1 -1
- package/es/packages/components/pic/src/Pic.vue2.mjs.map +1 -1
- package/es/packages/components/pic/src/PicViewer.vue2.mjs +1 -1
- package/es/packages/components/pic/src/PicViewer.vue2.mjs.map +1 -1
- package/es/packages/components/pic/src/pic.mjs.map +1 -1
- package/es/packages/components/progress/index.mjs.map +1 -1
- package/es/packages/components/progress/src/Progress.vue.mjs.map +1 -1
- package/es/packages/components/progress/src/Progress.vue2.mjs.map +1 -1
- package/es/packages/components/progress/src/progress.mjs.map +1 -1
- package/es/packages/components/range/index.mjs.map +1 -1
- package/es/packages/components/range/src/range.vue2.mjs +3 -3
- package/es/packages/components/range/src/range.vue2.mjs.map +1 -1
- package/es/packages/components/scroll/index.mjs.map +1 -1
- package/es/packages/components/scroll/src/Scroll.vue2.mjs.map +1 -1
- package/es/packages/components/scroll/src/ScrollPoint.vue2.mjs.map +1 -1
- package/es/packages/components/scroll/src/scroll-point.mjs.map +1 -1
- package/es/packages/components/scroll/src/scroll.mjs.map +1 -1
- package/es/packages/components/segment/index.mjs.map +1 -1
- package/es/packages/components/segment/src/segment.vue.mjs.map +1 -1
- package/es/packages/components/select/index.mjs.map +1 -1
- package/es/packages/components/select/src/hooks/use-select-class-style.mjs.map +1 -1
- package/es/packages/components/select/src/hooks/use-select-option-data.mjs.map +1 -1
- package/es/packages/components/select/src/select.mjs.map +1 -1
- package/es/packages/components/select/src/select.vue2.mjs.map +1 -1
- package/es/packages/components/slide/index.mjs.map +1 -1
- package/es/packages/components/slide/src/slide.vue2.mjs.map +1 -1
- package/es/packages/components/step/index.mjs.map +1 -1
- package/es/packages/components/step/src/step.vue2.mjs.map +1 -1
- package/es/packages/components/submit/index.mjs.map +1 -1
- package/es/packages/components/submit/src/submit.vue2.mjs.map +1 -1
- package/es/packages/components/switch/index.mjs.map +1 -1
- package/es/packages/components/switch/src/switch.vue2.mjs.map +1 -1
- package/es/packages/components/tab/index.mjs.map +1 -1
- package/es/packages/components/tab/src/tab-item.vue2.mjs +1 -1
- package/es/packages/components/tab/src/tab-item.vue2.mjs.map +1 -1
- package/es/packages/components/tab/src/tab.vue2.mjs +29 -20
- package/es/packages/components/tab/src/tab.vue2.mjs.map +1 -1
- package/es/packages/components/table/index.mjs.map +1 -1
- package/es/packages/components/table/src/table-body.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/table-config.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/table-head.vue2.mjs +1 -1
- package/es/packages/components/table/src/table-head.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/table.vue2.mjs +19 -19
- package/es/packages/components/table/src/table.vue2.mjs.map +1 -1
- package/es/packages/components/tag/index.mjs.map +1 -1
- package/es/packages/components/tag/src/tag.vue2.mjs +3 -3
- package/es/packages/components/tag/src/tag.vue2.mjs.map +1 -1
- package/es/packages/components/text/index.mjs.map +1 -1
- package/es/packages/components/text/src/text.vue2.mjs +7 -7
- package/es/packages/components/text/src/text.vue2.mjs.map +1 -1
- package/es/packages/components/timeline/index.mjs.map +1 -1
- package/es/packages/components/timeline/src/timeline.vue.mjs.map +1 -1
- package/es/packages/components/timeline/src/timeline.vue2.mjs.map +1 -1
- package/es/packages/components/tip/index.mjs.map +1 -1
- package/es/packages/components/tip/src/tip.mjs.map +1 -1
- package/es/packages/components/tip/src/tip.vue2.mjs.map +1 -1
- package/es/packages/components/tooltip/index.mjs.map +1 -1
- package/es/packages/components/tooltip/src/tooltip.mjs.map +1 -1
- package/es/packages/components/tooltip/src/tooltip.vue2.mjs.map +1 -1
- package/es/packages/components/transfer/index.mjs.map +1 -1
- package/es/packages/components/transfer/src/transfer.vue2.mjs +9 -9
- package/es/packages/components/transfer/src/transfer.vue2.mjs.map +1 -1
- package/es/packages/components/tree/index.mjs.map +1 -1
- package/es/packages/components/tree/src/tree-item.vue2.mjs +26 -26
- package/es/packages/components/tree/src/tree-item.vue2.mjs.map +1 -1
- package/es/packages/components/tree/src/tree.vue2.mjs +4 -4
- package/es/packages/components/tree/src/tree.vue2.mjs.map +1 -1
- package/es/packages/components/upload/index.mjs.map +1 -1
- package/es/packages/components/upload/src/upload.vue2.mjs +11 -11
- package/es/packages/components/upload/src/upload.vue2.mjs.map +1 -1
- package/es/packages/directives/align/index.mjs.map +1 -1
- package/es/packages/directives/align/src/align.mjs.map +1 -1
- package/es/packages/directives/color/index.mjs.map +1 -1
- package/es/packages/directives/color/src/color.mjs.map +1 -1
- package/es/packages/directives/dis/index.mjs.map +1 -1
- package/es/packages/directives/dis/src/dis.mjs.map +1 -1
- package/es/packages/directives/hide/src/hide.mjs.map +1 -1
- package/es/packages/directives/index.mjs.map +1 -1
- package/es/packages/directives/loading/index.mjs.map +1 -1
- package/es/packages/directives/loading/src/loading.mjs.map +1 -1
- package/es/packages/directives/longtap/src/longtap.mjs.map +1 -1
- package/es/packages/directives/size/index.mjs.map +1 -1
- package/es/packages/directives/size/src/size.mjs.map +1 -1
- package/es/packages/directives/tip/index.mjs.map +1 -1
- package/es/packages/directives/tip/src/tip.mjs.map +1 -1
- package/es/packages/hooks/useDevice.mjs.map +1 -1
- package/es/packages/hooks/useFormItem.mjs.map +1 -1
- package/es/packages/hooks/useSetClass.mjs.map +1 -1
- package/es/packages/hooks/useWidthStyle.mjs.map +1 -1
- package/es/packages/locale/format.mjs.map +1 -1
- package/es/packages/locale/index.d.mjs.map +1 -1
- package/es/packages/locale/index.mjs.map +1 -1
- package/es/packages/locale/lang/en.mjs.map +1 -1
- package/es/packages/locale/lang/zh-CN.mjs.map +1 -1
- package/es/packages/resolver/resolver.mjs.map +1 -1
- package/es/packages/utils/ajax.mjs.map +1 -1
- package/es/packages/utils/beforeChange.mjs.map +1 -1
- package/es/packages/utils/compare.mjs.map +1 -1
- package/es/packages/utils/config.mjs.map +1 -1
- package/es/packages/utils/date.mjs.map +1 -1
- package/es/packages/utils/disabledArea.mjs.map +1 -1
- package/es/packages/utils/dom.mjs.map +1 -1
- package/es/packages/utils/fileAjax.mjs.map +1 -1
- package/es/packages/utils/isModified.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/JSEncrypt.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/JSEncryptRSAKey.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/asn1js/asn1.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/asn1js/base64.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/asn1js/hex.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/asn1js/int10.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/asn1js/oids.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/base64.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/jsbn.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/prng4.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/rng.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/rsa.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsbn/util.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsrsasign/asn1-1.0.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/jselib/jsrsasign/yahoo.mjs.map +1 -1
- package/es/packages/utils/jsencrypt/util.mjs.map +1 -1
- package/es/packages/utils/md5.mjs.map +1 -1
- package/es/packages/utils/print.mjs +1 -1
- package/es/packages/utils/print.mjs.map +1 -1
- package/es/packages/utils/ratio.mjs.map +1 -1
- package/es/packages/utils/sign.mjs.map +1 -1
- package/es/packages/utils/theme.mjs.map +1 -1
- package/es/packages/utils/types.mjs.map +1 -1
- package/es/packages/utils/util.mjs.map +1 -1
- package/es/packages/utils/uuid.mjs.map +1 -1
- package/es/packages/utils/validate.mjs.map +1 -1
- package/es/ui/index.d.ts +11 -5
- package/lib/components/article/index.d.ts +1 -1
- package/lib/components/box/index.d.ts +1 -1
- package/lib/components/breadcrumb/index.d.ts +1 -1
- package/lib/components/button/index.d.ts +1 -1
- package/lib/components/button/src/button.d.ts +1 -1
- package/lib/components/calendar/index.d.ts +1 -1
- package/lib/components/card/index.d.ts +1 -1
- package/lib/components/cascader/index.d.ts +1 -1
- package/lib/components/center-scroll/index.d.ts +1 -1
- package/lib/components/checkbox/index.d.ts +1 -1
- package/lib/components/checkboxes/index.d.ts +1 -1
- package/lib/components/collapse/index.d.ts +1 -1
- package/lib/components/datepicker/index.d.ts +1 -1
- package/lib/components/daterange/index.d.ts +1 -1
- package/lib/components/dialog/index.d.ts +1 -1
- package/lib/components/divider/index.d.ts +1 -1
- package/lib/components/ellipsis/index.d.ts +1 -1
- package/lib/components/export/index.d.ts +1 -1
- package/lib/components/export/src/export.vue.d.ts +1 -1
- package/lib/components/fix/index.d.ts +1 -1
- package/lib/components/float/index.d.ts +1 -1
- package/lib/components/form/index.d.ts +1 -1
- package/lib/components/gap/index.d.ts +1 -1
- package/lib/components/grid/index.d.ts +1 -1
- package/lib/components/guider/index.d.ts +1 -1
- package/lib/components/header/index.d.ts +1 -1
- package/lib/components/icon/index.d.ts +1 -1
- package/lib/components/import/index.d.ts +1 -1
- package/lib/components/index.d.ts +1 -1
- package/lib/components/input/index.d.ts +1 -1
- package/lib/components/input/src/input.vue.d.ts +4 -0
- package/lib/components/msg/index.d.ts +1 -1
- package/lib/components/padding/index.d.ts +1 -1
- package/lib/components/page/index.d.ts +1 -1
- package/lib/components/param/index.d.ts +7 -7
- package/lib/components/param/src/Param.vue.d.ts +3 -3
- package/lib/components/pic/index.d.ts +1 -1
- package/lib/components/progress/index.d.ts +1 -1
- package/lib/components/range/index.d.ts +1 -1
- package/lib/components/scroll/index.d.ts +2 -2
- package/lib/components/segment/index.d.ts +1 -1
- package/lib/components/select/index.d.ts +1 -1
- package/lib/components/slide/index.d.ts +1 -1
- package/lib/components/step/index.d.ts +1 -1
- package/lib/components/submit/index.d.ts +1 -1
- package/lib/components/switch/index.d.ts +1 -1
- package/lib/components/tab/index.d.ts +1 -1
- package/lib/components/tab/src/tab.vue.d.ts +3 -1
- package/lib/components/table/index.d.ts +1 -1
- package/lib/components/tag/index.d.ts +1 -1
- package/lib/components/text/index.d.ts +1 -1
- package/lib/components/timeline/src/timeline.vue.d.ts +4 -4
- package/lib/components/tip/index.d.ts +1 -1
- package/lib/components/tooltip/index.d.ts +1 -1
- package/lib/components/transfer/index.d.ts +1 -1
- package/lib/components/tree/index.d.ts +1 -1
- package/lib/components/upload/index.d.ts +1 -1
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/node_modules/.pnpm/{dompurify@3.3.1 → dompurify@3.2.6}/node_modules/dompurify/dist/purify.es.js +25 -65
- package/lib/node_modules/.pnpm/dompurify@3.2.6/node_modules/dompurify/dist/purify.es.js.map +1 -0
- package/lib/packages/components/article/index.js.map +1 -1
- package/lib/packages/components/article/src/article.js.map +1 -1
- package/lib/packages/components/article/src/article.vue2.js.map +1 -1
- package/lib/packages/components/box/index.js.map +1 -1
- package/lib/packages/components/box/src/box.js.map +1 -1
- package/lib/packages/components/box/src/box.vue2.js.map +1 -1
- package/lib/packages/components/breadcrumb/index.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb-item.vue.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb-item.vue2.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb.vue.js.map +1 -1
- package/lib/packages/components/breadcrumb/src/breadcrumb.vue2.js.map +1 -1
- package/lib/packages/components/button/index.js.map +1 -1
- package/lib/packages/components/button/src/button.js.map +1 -1
- package/lib/packages/components/button/src/button.vue2.js +8 -8
- package/lib/packages/components/button/src/button.vue2.js.map +1 -1
- package/lib/packages/components/calendar/index.js.map +1 -1
- package/lib/packages/components/calendar/src/calendar.js.map +1 -1
- package/lib/packages/components/calendar/src/calendar.vue2.js +1 -1
- package/lib/packages/components/calendar/src/calendar.vue2.js.map +1 -1
- package/lib/packages/components/card/index.js.map +1 -1
- package/lib/packages/components/card/src/Card.vue.js.map +1 -1
- package/lib/packages/components/card/src/card-item.vue.js.map +1 -1
- package/lib/packages/components/card/src/card.vue2.js.map +1 -1
- package/lib/packages/components/cascader/index.js.map +1 -1
- package/lib/packages/components/cascader/src/cascader-item.vue2.js +1 -1
- package/lib/packages/components/cascader/src/cascader-item.vue2.js.map +1 -1
- package/lib/packages/components/cascader/src/cascader.vue2.js +2 -2
- package/lib/packages/components/cascader/src/cascader.vue2.js.map +1 -1
- package/lib/packages/components/center-scroll/index.js.map +1 -1
- package/lib/packages/components/center-scroll/src/CenterScroll.vue2.js.map +1 -1
- package/lib/packages/components/center-scroll/src/center-scroll.js.map +1 -1
- package/lib/packages/components/checkbox/index.js.map +1 -1
- package/lib/packages/components/checkbox/src/Checkbox.vue2.js +2 -2
- package/lib/packages/components/checkbox/src/Checkbox.vue2.js.map +1 -1
- package/lib/packages/components/checkboxes/index.js.map +1 -1
- package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js +1 -1
- package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js.map +1 -1
- package/lib/packages/components/collapse/index.js.map +1 -1
- package/lib/packages/components/collapse/src/collapse-item.vue2.js +2 -2
- package/lib/packages/components/collapse/src/collapse-item.vue2.js.map +1 -1
- package/lib/packages/components/collapse/src/collapse.vue2.js.map +1 -1
- package/lib/packages/components/datepicker/index.js.map +1 -1
- package/lib/packages/components/datepicker/src/DatePicker.vue2.js +2 -1
- package/lib/packages/components/datepicker/src/DatePicker.vue2.js.map +1 -1
- package/lib/packages/components/datepicker/src/Picker.vue2.js.map +1 -1
- package/lib/packages/components/datepicker/src/date-picker.js.map +1 -1
- package/lib/packages/components/datepicker/src/use-date-picker.js.map +1 -1
- package/lib/packages/components/daterange/index.js.map +1 -1
- package/lib/packages/components/daterange/src/date-range.vue2.js +12 -12
- package/lib/packages/components/daterange/src/date-range.vue2.js.map +1 -1
- package/lib/packages/components/dialog/index.js.map +1 -1
- package/lib/packages/components/dialog/src/Dialog.vue2.js.map +1 -1
- package/lib/packages/components/dialog/src/dialog.js.map +1 -1
- package/lib/packages/components/divider/index.js.map +1 -1
- package/lib/packages/components/divider/src/divider.vue2.js.map +1 -1
- package/lib/packages/components/ellipsis/index.js.map +1 -1
- package/lib/packages/components/ellipsis/src/Ellipsis.vue2.js.map +1 -1
- package/lib/packages/components/ellipsis/src/ellipsis.js.map +1 -1
- package/lib/packages/components/export/index.js.map +1 -1
- package/lib/packages/components/export/src/export.vue2.js.map +1 -1
- package/lib/packages/components/fix/index.js.map +1 -1
- package/lib/packages/components/fix/src/Fix.vue2.js.map +1 -1
- package/lib/packages/components/fix/src/fix.js.map +1 -1
- package/lib/packages/components/float/index.js.map +1 -1
- package/lib/packages/components/float/src/Float.vue2.js.map +1 -1
- package/lib/packages/components/float/src/float.js.map +1 -1
- package/lib/packages/components/form/index.js.map +1 -1
- package/lib/packages/components/form/src/form-item.vue2.js.map +1 -1
- package/lib/packages/components/form/src/form.vue2.js.map +1 -1
- package/lib/packages/components/gap/index.js.map +1 -1
- package/lib/packages/components/gap/src/gap.vue2.js.map +1 -1
- package/lib/packages/components/grid/index.js.map +1 -1
- package/lib/packages/components/grid/src/grid-item.vue2.js.map +1 -1
- package/lib/packages/components/grid/src/grid.vue2.js.map +1 -1
- package/lib/packages/components/guider/index.js.map +1 -1
- package/lib/packages/components/guider/src/guider.vue2.js +1 -1
- package/lib/packages/components/guider/src/guider.vue2.js.map +1 -1
- package/lib/packages/components/header/index.js.map +1 -1
- package/lib/packages/components/header/src/header.vue2.js.map +1 -1
- package/lib/packages/components/icon/index.js.map +1 -1
- package/lib/packages/components/icon/src/icon.vue2.js.map +1 -1
- package/lib/packages/components/import/index.js.map +1 -1
- package/lib/packages/components/import/src/import.vue2.js +1 -1
- package/lib/packages/components/import/src/import.vue2.js.map +1 -1
- package/lib/packages/components/input/index.js.map +1 -1
- package/lib/packages/components/input/src/input.vue2.js +58 -6
- package/lib/packages/components/input/src/input.vue2.js.map +1 -1
- package/lib/packages/components/msg/index.js.map +1 -1
- package/lib/packages/components/msg/src/msg.vue2.js +14 -14
- package/lib/packages/components/msg/src/msg.vue2.js.map +1 -1
- package/lib/packages/components/padding/index.js.map +1 -1
- package/lib/packages/components/padding/src/padding.vue2.js.map +1 -1
- package/lib/packages/components/page/index.js.map +1 -1
- package/lib/packages/components/page/src/page.vue2.js.map +1 -1
- package/lib/packages/components/param/index.js.map +1 -1
- package/lib/packages/components/param/src/Param.vue2.js.map +1 -1
- package/lib/packages/components/param/src/ParamItem.vue.js.map +1 -1
- package/lib/packages/components/param/src/param-item.js.map +1 -1
- package/lib/packages/components/param/src/param.js.map +1 -1
- package/lib/packages/components/pic/index.js.map +1 -1
- package/lib/packages/components/pic/src/Pic.vue2.js.map +1 -1
- package/lib/packages/components/pic/src/PicViewer.vue2.js +1 -1
- package/lib/packages/components/pic/src/PicViewer.vue2.js.map +1 -1
- package/lib/packages/components/pic/src/pic.js.map +1 -1
- package/lib/packages/components/progress/index.js.map +1 -1
- package/lib/packages/components/progress/src/Progress.vue.js.map +1 -1
- package/lib/packages/components/progress/src/Progress.vue2.js.map +1 -1
- package/lib/packages/components/progress/src/progress.js.map +1 -1
- package/lib/packages/components/range/index.js.map +1 -1
- package/lib/packages/components/range/src/range.vue2.js +3 -3
- package/lib/packages/components/range/src/range.vue2.js.map +1 -1
- package/lib/packages/components/scroll/index.js.map +1 -1
- package/lib/packages/components/scroll/src/Scroll.vue2.js.map +1 -1
- package/lib/packages/components/scroll/src/ScrollPoint.vue2.js.map +1 -1
- package/lib/packages/components/scroll/src/scroll-point.js.map +1 -1
- package/lib/packages/components/scroll/src/scroll.js.map +1 -1
- package/lib/packages/components/segment/index.js.map +1 -1
- package/lib/packages/components/segment/src/segment.vue.js.map +1 -1
- package/lib/packages/components/select/index.js.map +1 -1
- package/lib/packages/components/select/src/hooks/use-select-class-style.js.map +1 -1
- package/lib/packages/components/select/src/hooks/use-select-option-data.js.map +1 -1
- package/lib/packages/components/select/src/select.js.map +1 -1
- package/lib/packages/components/select/src/select.vue2.js.map +1 -1
- package/lib/packages/components/slide/index.js.map +1 -1
- package/lib/packages/components/slide/src/slide.vue2.js.map +1 -1
- package/lib/packages/components/step/index.js.map +1 -1
- package/lib/packages/components/step/src/step.vue2.js.map +1 -1
- package/lib/packages/components/submit/index.js.map +1 -1
- package/lib/packages/components/submit/src/submit.vue2.js.map +1 -1
- package/lib/packages/components/switch/index.js.map +1 -1
- package/lib/packages/components/switch/src/switch.vue2.js.map +1 -1
- package/lib/packages/components/tab/index.js.map +1 -1
- package/lib/packages/components/tab/src/tab-item.vue2.js +1 -1
- package/lib/packages/components/tab/src/tab-item.vue2.js.map +1 -1
- package/lib/packages/components/tab/src/tab.vue2.js +29 -20
- package/lib/packages/components/tab/src/tab.vue2.js.map +1 -1
- package/lib/packages/components/table/index.js.map +1 -1
- package/lib/packages/components/table/src/table-body.vue2.js.map +1 -1
- package/lib/packages/components/table/src/table-config.vue2.js.map +1 -1
- package/lib/packages/components/table/src/table-head.vue2.js +1 -1
- package/lib/packages/components/table/src/table-head.vue2.js.map +1 -1
- package/lib/packages/components/table/src/table.vue2.js +19 -19
- package/lib/packages/components/table/src/table.vue2.js.map +1 -1
- package/lib/packages/components/tag/index.js.map +1 -1
- package/lib/packages/components/tag/src/tag.vue2.js +3 -3
- package/lib/packages/components/tag/src/tag.vue2.js.map +1 -1
- package/lib/packages/components/text/index.js.map +1 -1
- package/lib/packages/components/text/src/text.vue2.js +6 -6
- package/lib/packages/components/text/src/text.vue2.js.map +1 -1
- package/lib/packages/components/timeline/index.js.map +1 -1
- package/lib/packages/components/timeline/src/timeline.vue.js.map +1 -1
- package/lib/packages/components/timeline/src/timeline.vue2.js.map +1 -1
- package/lib/packages/components/tip/index.js.map +1 -1
- package/lib/packages/components/tip/src/tip.js.map +1 -1
- package/lib/packages/components/tip/src/tip.vue2.js.map +1 -1
- package/lib/packages/components/tooltip/index.js.map +1 -1
- package/lib/packages/components/tooltip/src/tooltip.js.map +1 -1
- package/lib/packages/components/tooltip/src/tooltip.vue2.js.map +1 -1
- package/lib/packages/components/transfer/index.js.map +1 -1
- package/lib/packages/components/transfer/src/transfer.vue2.js +9 -9
- package/lib/packages/components/transfer/src/transfer.vue2.js.map +1 -1
- package/lib/packages/components/tree/index.js.map +1 -1
- package/lib/packages/components/tree/src/tree-item.vue2.js +26 -26
- package/lib/packages/components/tree/src/tree-item.vue2.js.map +1 -1
- package/lib/packages/components/tree/src/tree.vue2.js +4 -4
- package/lib/packages/components/tree/src/tree.vue2.js.map +1 -1
- package/lib/packages/components/upload/index.js.map +1 -1
- package/lib/packages/components/upload/src/upload.vue2.js +11 -11
- package/lib/packages/components/upload/src/upload.vue2.js.map +1 -1
- package/lib/packages/directives/align/index.js.map +1 -1
- package/lib/packages/directives/align/src/align.js.map +1 -1
- package/lib/packages/directives/color/index.js.map +1 -1
- package/lib/packages/directives/color/src/color.js.map +1 -1
- package/lib/packages/directives/dis/index.js.map +1 -1
- package/lib/packages/directives/dis/src/dis.js.map +1 -1
- package/lib/packages/directives/hide/src/hide.js.map +1 -1
- package/lib/packages/directives/index.js.map +1 -1
- package/lib/packages/directives/loading/index.js.map +1 -1
- package/lib/packages/directives/loading/src/loading.js.map +1 -1
- package/lib/packages/directives/longtap/src/longtap.js.map +1 -1
- package/lib/packages/directives/size/index.js.map +1 -1
- package/lib/packages/directives/size/src/size.js.map +1 -1
- package/lib/packages/directives/tip/index.js.map +1 -1
- package/lib/packages/directives/tip/src/tip.js.map +1 -1
- package/lib/packages/hooks/useDevice.js.map +1 -1
- package/lib/packages/hooks/useFormItem.js.map +1 -1
- package/lib/packages/hooks/useSetClass.js.map +1 -1
- package/lib/packages/hooks/useWidthStyle.js.map +1 -1
- package/lib/packages/locale/format.js.map +1 -1
- package/lib/packages/locale/index.d.js.map +1 -1
- package/lib/packages/locale/index.js.map +1 -1
- package/lib/packages/locale/lang/en.js.map +1 -1
- package/lib/packages/locale/lang/zh-CN.js.map +1 -1
- package/lib/packages/resolver/resolver.js.map +1 -1
- package/lib/packages/utils/ajax.js.map +1 -1
- package/lib/packages/utils/beforeChange.js.map +1 -1
- package/lib/packages/utils/compare.js.map +1 -1
- package/lib/packages/utils/config.js.map +1 -1
- package/lib/packages/utils/date.js.map +1 -1
- package/lib/packages/utils/disabledArea.js.map +1 -1
- package/lib/packages/utils/dom.js.map +1 -1
- package/lib/packages/utils/fileAjax.js.map +1 -1
- package/lib/packages/utils/isModified.js.map +1 -1
- package/lib/packages/utils/jsencrypt/JSEncrypt.js.map +1 -1
- package/lib/packages/utils/jsencrypt/JSEncryptRSAKey.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/asn1js/asn1.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/asn1js/base64.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/asn1js/hex.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/asn1js/int10.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/asn1js/oids.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/base64.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/jsbn.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/prng4.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/rng.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/rsa.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsbn/util.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsrsasign/asn1-1.0.js.map +1 -1
- package/lib/packages/utils/jsencrypt/jselib/jsrsasign/yahoo.js.map +1 -1
- package/lib/packages/utils/jsencrypt/util.js.map +1 -1
- package/lib/packages/utils/md5.js.map +1 -1
- package/lib/packages/utils/print.js +1 -1
- package/lib/packages/utils/print.js.map +1 -1
- package/lib/packages/utils/ratio.js.map +1 -1
- package/lib/packages/utils/sign.js.map +1 -1
- package/lib/packages/utils/theme.js.map +1 -1
- package/lib/packages/utils/types.js.map +1 -1
- package/lib/packages/utils/util.js.map +1 -1
- package/lib/packages/utils/uuid.js.map +1 -1
- package/lib/packages/utils/validate.js.map +1 -1
- package/lib/ui/index.d.ts +11 -5
- package/package.json +84 -84
- package/theme/components/index.css +60 -31
- package/theme/index.css +60 -31
- package/theme/skin/default.css +60 -31
- package/es/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.mjs.map +0 -1
- package/lib/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.vue2.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToSelect',\r\n\tcomponentName: 'ToSelect'\r\n});\n</script>\n<template>\r\n\t<!-- 选择器主容器 -->\r\n\t<div :id=\"id\" ref=\"$el\" v-tip=\"changed ? t('to.common.originalValue', getLabel(valueStore[0])) : ''\" class=\"to-select\" :class=\"setClass\" :style=\"setStyle\" :tabindex=\"tabindex\" @mousedown=\"layerMousedown\" @focus=\"focus\" @blur=\"blur\" @keyup.enter=\"enter\" @keyup.esc=\"closeLayer\" @click=\"click\">\r\n\t\t<div ref=\"trigger\" class=\"to-select-el\">\r\n\t\t\t<!-- 表单验证元素2(隐藏) -->\r\n\t\t\t<span v-if=\"verifiable && (rule || required || ToFormItem?.required)\" v-show=\"false\" :trim=\"trim\" :req=\"validateRequired\" class=\"to-validate\" :desc=\"validateDesc\" :rule=\"rule\" :value=\"validateValue\"></span>\r\n\r\n\t\t\t<!-- 前缀插槽 -->\r\n\t\t\t<span v-if=\"$slots.prefix\" class=\"to-select-prefix\">\r\n\t\t\t\t<slot name=\"prefix\"></slot>\r\n\t\t\t</span>\r\n\r\n\t\t\t<!-- 前缀文本 -->\r\n\t\t\t<span v-if=\"prefix\" class=\"to-select-prefix-text\">\r\n\t\t\t\t<span>{{ prefix }}</span>\r\n\t\t\t</span>\r\n\r\n\t\t\t<!-- 选择器内容区域 -->\r\n\t\t\t<span ref=\"optionLayerTrigger\" class=\"to-select-content\">\r\n\t\t\t\t<!-- 前缀图标 -->\r\n\t\t\t\t<ToIcon v-if=\"icon\" :value=\"icon\" mode=\"none\" class=\"to-select-icon\"></ToIcon>\r\n\r\n\t\t\t\t<!-- 原生select模式 -->\r\n\t\t\t\t<template v-if=\"native\">\r\n\t\t\t\t\t<span class=\"to-select-box\">\r\n\t\t\t\t\t\t<select ref=\"selector\" v-model=\"iValue\">\r\n\t\t\t\t\t\t\t<option v-if=\"clearable\" value=\"\">{{ placeholder }}</option>\r\n\t\t\t\t\t\t\t<option v-for=\"(item, index) in options\" :key=\"index\" :value=\"item[iValueText]\">\r\n\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\r\n\t\t\t\t\t\t\t</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t</span>\r\n\t\t\t\t</template>\r\n\r\n\t\t\t\t<!-- 自定义模拟选择器 -->\r\n\t\t\t\t<template v-else>\r\n\t\t\t\t\t<!-- 单选模式 -->\r\n\t\t\t\t\t<template v-if=\"!multiple\">\r\n\t\t\t\t\t\t<!-- 单选显示值(非输入模式或手机端) -->\r\n\t\t\t\t\t\t<span v-if=\"(!inputable && !filterable && !setDataFn) || $phone\" class=\"to-select-box\">\r\n\t\t\t\t\t\t\t<template v-if=\"(selected as any)[iLabelText]\">\r\n\t\t\t\t\t\t\t\t{{ (selected as any)[iLabelText] }}\r\n\t\t\t\t\t\t\t\t<template v-if=\"unit\">{{ unit }}</template>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-else>{{ placeholder }}</template>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<!-- 单选输入框区域 -->\r\n\t\t\t\t\t\t<span v-else class=\"to-select-input\">\r\n\t\t\t\t\t\t\t<!-- 可输入模式 inputable = true filterable = false 的输入框 -->\r\n\t\t\t\t\t\t\t<to-input v-if=\"inputable && !filterable && !setDataFn\" ref=\"input\" v-model=\"inputValue\" :sp-chars=\"spChars\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @focus=\"inputFocus\" @keyup=\"inputInput\" @blur=\"inputBlur\"></to-input>\r\n\t\t\t\t\t\t\t<!-- 可过滤模式 filterable = true 的输入框 -->\r\n\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"filter\" v-model=\"filterValue\" :focus-when-clear=\"focusWhenClear\" :sp-chars=\"inputable ? spChars : false\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @clear=\"filterClear\" @focus=\"filterFocus\" @keyup=\"filterInput\" @blur=\"filterBlur\"></to-input>\r\n\t\t\t\t\t\t\t<!-- 自定义数据设置模式的输入框 -->\r\n\t\t\t\t\t\t\t<to-input v-if=\"setDataFn\" v-model=\"setDataInputValue\" :sp-chars=\"inputable ? spChars : false\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @clear=\"filterClear\" @focus=\"filterFocus\" @keyup=\"filterInput\" @blur=\"filterBlur\"></to-input>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</template>\r\n\r\n\t\t\t\t\t<!-- 多选模式 -->\r\n\t\t\t\t\t<template v-else>\r\n\t\t\t\t\t\t<!-- 多选占位符(无选中项且非输入模式时显示) -->\r\n\t\t\t\t\t\t<span v-if=\"(selected as any[]).filter(item => !item.hide).length === 0 && !inputable && !filterable && !setDataFn\" class=\"to-select-box\">\r\n\t\t\t\t\t\t\t{{ placeholder }}\r\n\t\t\t\t\t\t</span>\r\n\r\n\t\t\t\t\t\t<!-- 全选状态显示文本 -->\r\n\t\t\t\t\t\t<span v-else-if=\"isAll && useAllText\" class=\"to-select-box\">{{ allText }}</span>\r\n\r\n\t\t\t\t\t\t<!-- 多选标签容器 -->\r\n\t\t\t\t\t\t<span v-else class=\"to-select-tag\">\r\n\t\t\t\t\t\t\t<!-- 已选中项的标签显示 -->\r\n\t\t\t\t\t\t\t<template v-if=\"(selected as any[]).length > 0 && !(isAll && useAllText)\">\r\n\t\t\t\t\t\t\t\t<template v-for=\"(item, index) in selected as any[]\">\r\n\t\t\t\t\t\t\t\t\t<to-tag v-if=\"!item.hide\" :key=\"index\" class=\"to-select-item\" :removable=\"removable && !disabled\" @remove=\"removeTag(item)\">\r\n\t\t\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\r\n\t\t\t\t\t\t\t\t\t</to-tag>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<!-- 多选输入框区域(非手机端或手机端无选中项时显示) -->\r\n\t\t\t\t\t\t\t<template v-if=\"!$phone || ($phone && selected.length === 0)\">\r\n\t\t\t\t\t\t\t\t<!-- 多选可输入模式的输入框 -->\r\n\t\t\t\t\t\t\t\t<to-input v-if=\"inputable && !filterable\" ref=\"input\" v-model=\"multipleInputValue\" :sp-chars=\"spChars\" :disabled=\"$phone\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleInputFocus\" @blur=\"multipleInputBlur\"></to-input>\r\n\t\t\t\t\t\t\t\t<!-- 多选可过滤模式的输入框 -->\r\n\t\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"filter\" v-model=\"multipleFilterValue\" :sp-chars=\"inputable ? spChars : false\" :disabled=\"$phone\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleFilterFocus\" @blur=\"multipleFilterBlur\"></to-input>\r\n\t\t\t\t\t\t\t\t<!-- 多选自定义数据设置模式的输入框 -->\r\n\t\t\t\t\t\t\t\t<to-input v-if=\"setDataFn\" ref=\"filter\" v-model=\"setDataInputValue\" :sp-chars=\"inputable ? spChars : false\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleFilterFocus\" @blur=\"multipleFilterBlur\"></to-input>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</template>\r\n\r\n\t\t\t\t<!-- 下拉箭头图标 -->\r\n\t\t\t\t<span class=\"to-select-arrow\" :class=\"`type-${arrowType}`\"></span>\r\n\t\t\t</span>\r\n\r\n\t\t\t<!-- 后缀文本 -->\r\n\t\t\t<span v-if=\"suffix\" class=\"to-select-suffix-text\">\r\n\t\t\t\t<span>{{ suffix }}</span>\r\n\t\t\t</span>\r\n\r\n\t\t\t<!-- 后缀插槽 -->\r\n\t\t\t<span v-if=\"$slots.suffix\" class=\"to-select-suffix\">\r\n\t\t\t\t<slot name=\"suffix\"></slot>\r\n\t\t\t</span>\r\n\r\n\t\t\t<!-- 错误提示信息 -->\r\n\t\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\r\n\t\t\t\t<template v-if=\"errorType === 'rule'\">\r\n\t\t\t\t\t<template v-if=\"inputable\">输入有误</template>\r\n\t\t\t\t\t<template v-else>选择有误</template>\r\n\t\t\t\t\t<ToIcon v-tip.danger=\"errorTip\" value=\"help\" color=\"danger\" mode=\"toast\" fillet=\"round\"></ToIcon>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-else>不能为空</template>\r\n\t\t\t</span>\r\n\t\t</div>\r\n\r\n\t\t<!-- 下拉选项面板 -->\r\n\t\t<ToFloat ref=\"optionLayer\" class=\"to-select-option\" :class=\"setOptionClass\" :align=\"optionDisplay === 'popup' ? 'center' : optionAlign\" :lazy=\"lazy\" :width=\"iOptionWidth\" :slide=\"layerSlide\" :position=\"layerPosition\" @closed=\"layerClose\" @mousedown=\"layerMousedown\" @before-open=\"layerOpen\">\r\n\t\t\t<!-- 数据加载状态 -->\r\n\t\t\t<ToPadding v-if=\"dataLoading\" v-align=\"'center'\" :value=\"2\">\r\n\t\t\t\t<ToIcon value=\"loading\"></ToIcon>\r\n\t\t\t</ToPadding>\r\n\r\n\t\t\t<!-- 选项内容区域 -->\r\n\t\t\t<template v-else>\r\n\t\t\t\t<!-- 选项数据插槽 -->\r\n\t\t\t\t<slot :data=\"options\">\r\n\t\t\t\t\t<!-- 弹窗模式 -->\r\n\t\t\t\t\t<to-grid v-if=\"optionDisplay === 'popup' || ((inputable || filterable) && $phone)\" style=\"width: 100%\" type=\"v\">\r\n\t\t\t\t\t\t<!-- 弹窗头部区域 -->\r\n\t\t\t\t\t\t<to-grid-item side width=\"full\">\r\n\t\t\t\t\t\t\t<!-- 弹窗标题栏 -->\r\n\t\t\t\t\t\t\t<ToPadding value=\"1\">\r\n\t\t\t\t\t\t\t\t<to-header level=\"0\" :title=\"validateDesc ? t('to.select.float.title', validateDesc) : t('to.select.float.titlePlaceholder', validateDesc)\" @back=\"closeLayer()\">\r\n\t\t\t\t\t\t\t\t\t<to-button fillet=\"normal\" icon=\"close\" mode=\"none\" color=\"primary\" @click=\"(clear(), closeLayer())\">\r\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.clear') }}\r\n\t\t\t\t\t\t\t\t\t</to-button>\r\n\t\t\t\t\t\t\t\t</to-header>\r\n\t\t\t\t\t\t\t</ToPadding>\r\n\r\n\t\t\t\t\t\t\t<!-- 弹窗内的搜索/输入区域 -->\r\n\t\t\t\t\t\t\t<ToPadding v-if=\"filterable || inputable\" position=\"side\" value=\"1\">\r\n\t\t\t\t\t\t\t\t<!-- 多选模式的弹窗输入区域 -->\r\n\t\t\t\t\t\t\t\t<template v-if=\"multiple\">\r\n\t\t\t\t\t\t\t\t\t<!-- 多选可输入模式 -->\r\n\t\t\t\t\t\t\t\t\t<template v-if=\"inputable\">\r\n\t\t\t\t\t\t\t\t\t\t<span class=\"to-select to-select-arrow-none\" style=\"width: 100%\" :class=\"fillet === 'normal' ? 'to-input-fillet-normal' : ''\">\r\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"to-select-content\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"to-select-tag\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内已选标签显示 -->\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<template v-if=\"(selected as any[]).length > 0 && !(isAll && useAllText)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<template v-for=\"(item, index) in selected as any[]\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-tag v-if=\"!item.hide\" :key=\"index\" color=\"fg\" mode=\"plain\" :removable=\"removable && !disabled\" @remove=\"removeTag(item)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</to-tag>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内过滤输入框 -->\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"popupFilter\" v-model=\"multipleFilterValue\" :sp-chars=\"spChars\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-button icon=\"ok\" mode=\"none\" color=\"primary\" @click=\"enter\"></to-button>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</to-input>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内输入框 -->\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupInput\" v-model=\"multipleInputValue\" prevent-focus mode=\"none\" :placeholder=\"selected.filter(item => !item.hide).length > 0 ? '' : placeholder\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-button icon=\"ok\" mode=\"none\" color=\"primary\" @click=\"enter\"></to-button>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</to-input>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t<!-- 多选仅过滤模式 -->\r\n\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupFilter\" v-model=\"multipleFilterValue\" :sp-chars=\"false\" width=\"full\" prevent-focus :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\"></to-input>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<!-- 单选模式的弹窗输入区域 -->\r\n\t\t\t\t\t\t\t\t<template v-else>\r\n\t\t\t\t\t\t\t\t\t<!-- 单选可输入模式 -->\r\n\t\t\t\t\t\t\t\t\t<to-input v-if=\"inputable\" ref=\"popupInput\" v-model=\"inputValue\" :sp-chars=\"spChars\" prevent-focus width=\"full\" :placeholder=\"placeholder\"></to-input>\r\n\t\t\t\t\t\t\t\t\t<!-- 单选过滤模式 -->\r\n\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupFilter\" v-model=\"filterValue\" :sp-chars=\"false\" prevent-focus width=\"full\" placeholder=\"筛选\" @clear=\"filterClear\"></to-input>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</ToPadding>\r\n\t\t\t\t\t\t</to-grid-item>\r\n\r\n\t\t\t\t\t\t<!-- 弹窗选项内容区域 -->\r\n\t\t\t\t\t\t<to-grid-item width=\"full\">\r\n\t\t\t\t\t\t\t<!-- 无数据提示 -->\r\n\t\t\t\t\t\t\t<ToPadding v-if=\"nodata\" v-color=\"'info'\" :value=\"2\">\r\n\t\t\t\t\t\t\t\t{{ nodataText }}\r\n\t\t\t\t\t\t\t</ToPadding>\r\n\r\n\t\t\t\t\t\t\t<!-- 无匹配项提示 -->\r\n\t\t\t\t\t\t\t<ToPadding v-else-if=\"nomatch\" v-color=\"'info'\" :value=\"2\">\r\n\t\t\t\t\t\t\t\t{{ nomatchText }}\r\n\t\t\t\t\t\t\t</ToPadding>\r\n\r\n\t\t\t\t\t\t\t<!-- 选项列表滚动区域-->\r\n\t\t\t\t\t\t\t<to-scroll v-if=\"!nodata && !nomatch\" :style=\"{ maxHeight: getDynamicHeight }\">\r\n\t\t\t\t\t\t\t\t<ToPadding :value=\"0.5\">\r\n\t\t\t\t\t\t\t\t\t<!-- 弹窗内多选选项 -->\r\n\t\t\t\t\t\t\t\t\t<template v-if=\"multiple\">\r\n\t\t\t\t\t\t\t\t\t\t<!-- 全选/反选按钮 -->\r\n\t\t\t\t\t\t\t\t\t\t<ToPadding :value=\"0.5\">\r\n\t\t\t\t\t\t\t\t\t\t\t<to-button @click=\"selectAll\">{{ t('to.common.selectAll') }}</to-button>\r\n\t\t\t\t\t\t\t\t\t\t\t<to-button @click=\"deselect\">{{ t('to.common.Deselect') }}</to-button>\r\n\t\t\t\t\t\t\t\t\t\t</ToPadding>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<!-- 多选选项网格 -->\r\n\t\t\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\">\r\n\t\t\t\t\t\t\t\t\t\t\t<to-grid-item v-for=\"item in options\" v-show=\"multipleFilter(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" width=\"full\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<to-checkbox\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t:wrap=\"optionWrap\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t:title=\"item[iLabelText]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\twidth=\"full\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t:label=\"item[iLabelText]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t:disabled=\"!!item.disabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t:value=\"Boolean((selected as any[]).find(el => el[iValueText] === item[iValueText]))\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t@change=\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn multipleItemChange(value, item)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t></to-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t\t</to-grid-item>\r\n\t\t\t\t\t\t\t\t\t\t</to-grid>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\r\n\t\t\t\t\t\t\t\t\t<!-- 弹窗内单选选项 -->\r\n\t\t\t\t\t\t\t\t\t<template v-else>\r\n\t\t\t\t\t\t\t\t\t\t<!-- 单选选项网格 -->\r\n\t\t\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\">\r\n\t\t\t\t\t\t\t\t\t\t\t<div v-for=\"item in options\" v-show=\"filterByValue(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" :class=\"{ 'is-on': (selected as any)[iValueText] === item[iValueText] }\" @click.stop=\"itemChange(item)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<template v-if=\"item[iLabelText]\">{{ item[iLabelText] }}</template>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<template v-else>{{ placeholder }}</template>\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t</to-grid>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</ToPadding>\r\n\t\t\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t\t</to-grid-item>\r\n\t\t\t\t\t\t<to-grid-item side width=\"full\">\r\n\t\t\t\t\t\t\t<to-submit width=\"full\" space=\"0\">\r\n\t\t\t\t\t\t\t\t<to-button v-size=\"'l'\" fillet=\"none\" color=\"primary\" mode=\"line\" @click=\"(phoneCloseLayer(), (iValue = ''))\">\r\n\t\t\t\t\t\t\t\t\t{{ t('to.common.clear') }}\r\n\t\t\t\t\t\t\t\t</to-button>\r\n\t\t\t\t\t\t\t\t<to-button v-size=\"'l'\" mode=\"fill\" color=\"primary\" fillet=\"none\" @click=\"phoneCloseLayer()\">\r\n\t\t\t\t\t\t\t\t\t{{ t('to.common.confirm') }}\r\n\t\t\t\t\t\t\t\t</to-button>\r\n\t\t\t\t\t\t\t</to-submit>\r\n\t\t\t\t\t\t</to-grid-item>\r\n\t\t\t\t\t</to-grid>\r\n\r\n\t\t\t\t\t<!-- 普通模式 -->\r\n\t\t\t\t\t<template v-else>\r\n\t\t\t\t\t\t<!-- 无数据提示 -->\r\n\t\t\t\t\t\t<div v-if=\"nodata\" class=\"to-select-option-tip\">\r\n\t\t\t\t\t\t\t{{ nodataText }}\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<!-- 无匹配提示 -->\r\n\t\t\t\t\t\t<div v-else-if=\"nomatch\" class=\"to-select-option-tip\">\r\n\t\t\t\t\t\t\t{{ nomatchText }}\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<!-- 普通下拉选项滚动区域-->\r\n\t\t\t\t\t\t<to-scroll v-if=\"!nodata && !nomatch\" :style=\"{ maxHeight: getDynamicHeight }\">\r\n\t\t\t\t\t\t\t<!-- 多选选项 -->\r\n\t\t\t\t\t\t\t<template v-if=\"multiple\">\r\n\t\t\t\t\t\t\t\t<!-- 全选/反选按钮 -->\r\n\t\t\t\t\t\t\t\t<div class=\"to-select-option-fn\">\r\n\t\t\t\t\t\t\t\t\t<to-button class=\"to-select-option-button value-all\" @click=\"selectAll\">\r\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.selectAll') }}\r\n\t\t\t\t\t\t\t\t\t</to-button>\r\n\t\t\t\t\t\t\t\t\t<to-button class=\"to-select-option-button value-inverse\" @click=\"deselect\">\r\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.Deselect') }}\r\n\t\t\t\t\t\t\t\t\t</to-button>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<!-- 多选选项网格 -->\r\n\t\t\t\t\t\t\t\t<to-grid class=\"to-select-list is-multiple\" :col=\"optionCol\">\r\n\t\t\t\t\t\t\t\t\t<to-checkbox\r\n\t\t\t\t\t\t\t\t\t\tv-for=\"item in options\"\r\n\t\t\t\t\t\t\t\t\t\tv-show=\"multipleFilter(item)\"\r\n\t\t\t\t\t\t\t\t\t\t:key=\"item[iValueText]\"\r\n\t\t\t\t\t\t\t\t\t\tv-dis=\"!!item.disabled\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"to-select-check\"\r\n\t\t\t\t\t\t\t\t\t\t:wrap=\"optionWrap\"\r\n\t\t\t\t\t\t\t\t\t\t:title=\"item[iLabelText]\"\r\n\t\t\t\t\t\t\t\t\t\twidth=\"full\"\r\n\t\t\t\t\t\t\t\t\t\t:label=\"item[iLabelText]\"\r\n\t\t\t\t\t\t\t\t\t\t:disabled=\"!!item.disabled\"\r\n\t\t\t\t\t\t\t\t\t\t:value=\"Boolean(selected.find(el => el[iValueText] === item[iValueText]))\"\r\n\t\t\t\t\t\t\t\t\t\t@change=\"\r\n\t\t\t\t\t\t\t\t\t\t\tvalue => {\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn multipleItemChange(value, item)\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t></to-checkbox>\r\n\t\t\t\t\t\t\t\t</to-grid>\r\n\t\t\t\t\t\t\t</template>\r\n\r\n\t\t\t\t\t\t\t<!-- 单选选项 -->\r\n\t\t\t\t\t\t\t<template v-else>\r\n\t\t\t\t\t\t\t\t<!-- 单选选项网格 -->\r\n\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\" class=\"to-select-list\">\r\n\t\t\t\t\t\t\t\t\t<div v-for=\"item in options\" v-show=\"filterByValue(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" class=\"to-select-option-item\" :class=\"{ 'is-on': (selected as any)[iValueText] === item[iValueText] }\" @click.stop=\"itemChange(item)\">\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"item[iLabelText]\" class=\"to-select-option-item-text\">{{ item[iLabelText] }}</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-else class=\"to-select-option-item-text\">{{ placeholder }}</span>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</to-grid>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</slot>\r\n\t\t\t</template>\r\n\t\t</ToFloat>\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ref, computed, watch, inject, nextTick } from 'vue'\r\nimport { t } from '@touchvue/locale'\r\nimport { selectProps, SelectValueType, SelectOptionsData } from './select'\r\nimport { useSetSelectClassStyle, useSelectOptionData } from './hooks'\r\nimport { useDevice } from '@touchvue/hooks'\r\n// import { isString } from '@touchvue/utils'\r\nimport { ToIcon, ToPadding, ToCheckbox, ToGrid, ToGridItem, ToScroll, ToButton, ToFloat, ToInput, ToSubmit, ToTag, ToHeader } from '@touchvue/components'\r\nimport { vColor, vDis } from '@touchvue/directives'\r\n\r\n/**\r\n * 【组件初始化】\r\n * created → 初始化内部变量 → setOptions() → 设置选项数据 → setValue() → 设置选中状态\r\n * 【点击选项:单选】\r\n * 点击选项 → @click.stop=\"itemChange(item)\" → itemChange() → change() → emit('update:modelValue', value)\r\n * 【点击选项:多选】\r\n * 点击选项 → @change=\"multipleItemChange(value, item)\" → multipleItemChange() → change() → emit('update:modelValue', value)\r\n * 【异步数据加载调用链】\r\n * getData() → 配置API参数 → 缓存检查 → HTTP请求 → 数据解析 → setValue() → 触发事件\r\n * 【modelValue变化监听】\r\n * watch(props.modelValue) → iValue.value更新 → setValue() → 重新设置选中状态\r\n * 【内部值iValue变化监听】\r\n * watch(iValue) → setSelected() → 触发change和update:modelValue事件 → valueChange()\r\n * 【选项过滤】\r\n * 输入框输入 → filterValue/multipleFilterValue更新 → 模板中v-show=\"filterByValue(item)\" → 动态显示/隐藏选项\r\n * 【多选批量操作】\r\n * 全选按钮点击 → selectAll() → allChange() → change() → emit('update:modelValue')\r\n * 反选按钮点击 → Deselect() → reverseChange() → change() → emit('update:modelValue')\r\n */\r\n\r\n// 定义组件名称\r\n\r\n\r\n// 定义props\r\nconst props = defineProps(selectProps)\r\n\r\n// 定义emits\r\nconst emit = defineEmits<{\r\n\tchange: [value: SelectValueType, option: any]\r\n\tselect: [value: string | number]\r\n\t'update:modelValue': [value: SelectValueType]\r\n\t'option-loaded': [options: any[]]\r\n}>()\r\n// inject\r\nconst ToForm = inject('ToForm', null) as any\r\nconst ToFormItem = inject('ToFormItem', null) as any\r\nconst $TouchUI = inject('$TouchUI', {\r\n\tcolors: ['primary', 'success', 'warning', 'danger', 'info', 'default', 'dark']\r\n}) as any\r\n\r\nconst { isPhone } = useDevice()\r\nconst $phone = isPhone.value\r\n\r\n/* ================================ 核心数据状态 ================================ */\r\n// 组件核心值状态\r\n/**\r\n * 当前值\r\n */\r\nconst iValue = ref<SelectValueType>(props.modelValue)\r\nconst valueStore = ref([])\r\nconst inited = ref(false)\r\n\r\n/* ================================ UI交互状态 ================================= */\r\n// 焦点状态\r\nconst focused = ref(false)\r\nconst blurByLayer = ref(false)\r\n\r\n// 弹层状态\r\nconst layerSlide = ref(false)\r\nconst layerPosition = ref('auto')\r\n\r\n// 组件状态\r\nconst disabled = ref(props.disabled)\r\nconst isChanging = ref(false)\r\n\r\n/* ================================ 输入状态 ================================ */\r\n// 输入框值\r\nconst filterValue = ref('')\r\nconst inputValue = ref('')\r\nconst multipleInputValue = ref('')\r\nconst multipleFilterValue = ref('')\r\nconst setDataInputValue = ref('')\r\n\r\n/* ================================ 加载状态 ================================ */\r\n// 数据加载状态\r\nconst dataLoading = ref(false)\r\n\r\n/* ================================ 验证状态 ================================ */\r\n// 错误提示状态\r\nconst errorTip = ref('')\r\nconst errorType = ref('rule')\r\n\r\n/* ================================ 配置状态 ================================ */\r\n// API配置\r\nconst iApiHeaders = ref({})\r\nconst iResPath = ref(props.resPath)\r\nconst iSuccessCode = ref(props.successCode)\r\nconst iApiParam = ref(props.apiParam)\r\nconst iApiLabel = ref(props.apiLabel)\r\nconst iErrorPath = ref(props.errorPath)\r\n\r\n// 显示配置\r\nconst iOptionWidth = ref(props.optionWidth)\r\nconst iLabelText = ref(props.labelText)\r\nconst iValueText = ref(props.valueText)\r\n\r\n/* ================================ DOM引用 ================================ */\r\n// DOM元素引用\r\nconst $el = ref(null)\r\nconst selector = ref(null)\r\nconst input = ref(null)\r\nconst filter = ref(null)\r\nconst optionLayer = ref(null)\r\nconst popupFilter = ref(null)\r\nconst popupInput = ref(null)\r\nconst trigger = ref(null)\r\n\r\n// const inputing = ref(false) // 未使用,已注释\r\n\r\n/* ================================ 选项数据状态 ================================ */\r\n// 选项数据\r\nconst options = ref<SelectOptionsData[]>([])\r\nconst anotherOptions = ref<SelectOptionsData[]>([])\r\n\r\n// 选中状态\r\nconst { selected } = useSelectOptionData({\r\n\tprops\r\n})\r\n\r\nconst filterByValue = (item: SelectOptionsData) => {\r\n\tif (!props.filterable) return true\r\n\tconst value = filterValue.value\r\n\tif (value === '') return true\r\n\treturn item[iLabelText.value].includes(value)\r\n}\r\n\r\nconst multipleFilter = (item: SelectOptionsData) => {\r\n\tif (!props.filterable) return true\r\n\tconst value = multipleFilterValue.value\r\n\tif (value === '') return true\r\n\treturn item[iLabelText.value].includes(value)\r\n}\r\n\r\nconst nomatch = computed(() => {\r\n\tlet nomatch = true\r\n\tlet value = props.multiple ? multipleFilterValue.value : filterValue.value\r\n\tif (value === '' || options.value.findIndex(option => option[iLabelText.value].includes(value)) > -1) {\r\n\t\tnomatch = false\r\n\t}\r\n\treturn nomatch\r\n})\r\n\r\nconst nodata = computed(() => {\r\n\treturn options.value.length === 0\r\n})\r\n\r\n// 选项数据处理方法\r\nconst setOptions = () => {\r\n\t// 同步选项\r\n\tif (props.data && props.data.length > 0) {\r\n\t\tsetData()\r\n\t}\r\n\r\n\t// 异步选项\r\n\tif (props.api) {\r\n\t\tgetData()\r\n\t}\r\n}\r\n\r\nconst setData = () => {\r\n\tif (props.data) {\r\n\t\tif (typeof props.data === 'string') {\r\n\t\t\t// 字符串模式传值(如::data=\"选项1, 选项2, 选项3\")\r\n\t\t\tlet arr = []\r\n\t\t\tfor (let i = 0; i < props.data.split(',').length; i++) {\r\n\t\t\t\tconst el = props.data.split(',')[i]\r\n\t\t\t\tlet obj = {}\r\n\t\t\t\tobj[iLabelText.value] = obj[iValueText.value] = el\r\n\t\t\t\tarr.push(obj)\r\n\t\t\t}\r\n\t\t\tif ($phone && props.filterable) {\r\n\t\t\t\toptions.value = arr.slice(0, 100)\r\n\t\t\t\tanotherOptions.value = arr.slice(100)\r\n\t\t\t} else {\r\n\t\t\t\toptions.value = arr\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\r\n\t\t\tif ($phone && props.filterable) {\r\n\t\t\t\toptions.value = props.data.slice(0, 100)\r\n\t\t\t\tanotherOptions.value = props.data.slice(100)\r\n\t\t\t} else {\r\n\t\t\t\t// 对象数组模式传值\r\n\t\t\t\toptions.value = [...props.data]\r\n\t\t\t}\r\n\t\t\t// 如果设置了方法,则替换为方法\r\n\t\t\tif (typeof props.setLabelFn === 'function') {\r\n\t\t\t\toptions.value.forEach(item => {\r\n\t\t\t\t\titem.label = props.setLabelFn(item)\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// 设置 selected\r\n\t\tsetValue()\r\n\t\tsetPlaceholder()\r\n\r\n\t\t// 触发选项加载完成事件\r\n\t\temit('option-loaded', options.value)\r\n\t}\r\n}\r\n\r\nconst getData = () => {\r\n\tif (props.api) {\r\n\t\t// 通过配置自动设置 labelText 与 valueText\r\n\t\tif ($TouchUI.staticDataApiConfig?.labelText && props.labelText === 'label') {\r\n\t\t\tiLabelText.value = $TouchUI.staticDataApiConfig.labelText\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.valueText && props.valueText === 'value') {\r\n\t\t\tiValueText.value = $TouchUI.staticDataApiConfig.valueText\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.resPath && !props.resPath) {\r\n\t\t\tiResPath.value = $TouchUI.staticDataApiConfig.resPath\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.apiParam && !props.apiParam) {\r\n\t\t\tiApiParam.value = $TouchUI.staticDataApiConfig.apiParam\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.apiHeaders && !props.apiHeaders) {\r\n\t\t\tiApiHeaders.value = $TouchUI.staticDataApiConfig.apiHeaders\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.apiLabel && !props.apiLabel) {\r\n\t\t\tiApiLabel.value = $TouchUI.staticDataApiConfig.apiLabel\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.errorPath && !props.errorPath) {\r\n\t\t\tiErrorPath.value = $TouchUI.staticDataApiConfig.errorPath\r\n\t\t}\r\n\t\tif ($TouchUI.staticDataApiConfig?.successCode && !props.successCode) {\r\n\t\t\tiSuccessCode.value = $TouchUI.staticDataApiConfig.successCode\r\n\t\t}\r\n\r\n\t\t// 从缓存中取数据,如果没有则异步获取\r\n\t\tif (sessionStorage.getItem('static.' + props.api)) {\r\n\t\t\toptions.value = JSON.parse(sessionStorage.getItem('static.' + props.api))\r\n\r\n\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\r\n\t\t\tif ($phone && props.filterable) {\r\n\t\t\t\tanotherOptions.value = options.value.slice(100)\r\n\t\t\t\toptions.value = options.value.slice(0, 100)\r\n\t\t\t}\r\n\r\n\t\t\t// 设置 selected\r\n\t\t\tsetValue()\r\n\t\t\tsetPlaceholder()\r\n\t\t\temit('option-loaded', options.value)\r\n\t\t} else {\r\n\t\t\tdataLoading.value = true\r\n\r\n\t\t\tlet action = ''\r\n\t\t\tlet param = { ...iApiParam.value }\r\n\r\n\t\t\tif (iApiLabel.value && props.api) {\r\n\t\t\t\tObject.assign(param, { [iApiLabel.value]: props.api })\r\n\t\t\t}\r\n\r\n\t\t\tif (props.api.indexOf('http') > -1) {\r\n\t\t\t\taction = props.api\r\n\t\t\t} else {\r\n\t\t\t\tif ($TouchUI.staticDataApiConfig?.action && $TouchUI.staticDataApiConfig.action.indexOf('=') > -1 && $TouchUI.staticDataApiConfig.action.indexOf('?') > -1) {\r\n\t\t\t\t\t// 兼容 GET 格式的 POST 请求\r\n\t\t\t\t\taction = $TouchUI.staticDataApiConfig.action + props.api\r\n\t\t\t\t} else {\r\n\t\t\t\t\taction = $TouchUI.staticDataApiConfig?.action || props.api\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tconst requestOptions = {\r\n\t\t\t\tdata: param,\r\n\t\t\t\taction,\r\n\t\t\t\theaders: Object.assign({}, iApiHeaders.value),\r\n\t\t\t\tonSuccess: res => {\r\n\t\t\t\t\tdataLoading.value = false\r\n\r\n\t\t\t\t\tif (typeof res === 'string') {\r\n\t\t\t\t\t\tres = JSON.parse(res)\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// 直接返回一个 select 所需要的 data 对象时,不需要任何解析\r\n\t\t\t\t\t// 如:[{name:'张三', id:0},{name:'李四', id:1}]\r\n\t\t\t\t\tif (Array.isArray(res)) {\r\n\t\t\t\t\t\toptions.value = res\r\n\t\t\t\t\t\tsessionStorage.setItem('static.' + props.api, JSON.stringify(res))\r\n\r\n\t\t\t\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\r\n\t\t\t\t\t\tif ($phone && props.filterable) {\r\n\t\t\t\t\t\t\tanotherOptions.value = res.slice(100)\r\n\t\t\t\t\t\t\toptions.value = res.slice(0, 100)\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// 设置 selected\r\n\t\t\t\t\t\tsetValue()\r\n\t\t\t\t\t\tsetPlaceholder()\r\n\t\t\t\t\t\temit('option-loaded', options.value)\r\n\t\t\t\t\t} else if (res.code === iSuccessCode.value) {\r\n\t\t\t\t\t\t// 按照 json 格式返回,需要根据配置路径进行解析\r\n\t\t\t\t\t\t// 如:{ code:'0', data:[{name:'张三', id:0},{name:'李四', id:1}]}\r\n\t\t\t\t\t\tlet data = res\r\n\t\t\t\t\t\tif (iResPath.value) {\r\n\t\t\t\t\t\t\tlet resPath = iResPath.value.split('/')\r\n\t\t\t\t\t\t\tresPath.forEach(el => {\r\n\t\t\t\t\t\t\t\tdata = data[el]\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\toptions.value = data\r\n\t\t\t\t\t\tsessionStorage.setItem('static.' + props.api, JSON.stringify(data))\r\n\r\n\t\t\t\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\r\n\t\t\t\t\t\tif ($phone && props.filterable) {\r\n\t\t\t\t\t\t\tanotherOptions.value = data.slice(100)\r\n\t\t\t\t\t\t\toptions.value = data.slice(0, 100)\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// 设置 selected\r\n\t\t\t\t\t\tsetValue()\r\n\t\t\t\t\t\tsetPlaceholder()\r\n\t\t\t\t\t\temit('option-loaded', options.value)\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\toptions.value = []\r\n\t\t\t\t\t\tconsole.error(t('to.select.tip.error.res', `select api(${props.api})`))\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tonError: () => {\r\n\t\t\t\t\tdataLoading.value = false\r\n\t\t\t\t\tconsole.error(t('to.select.tip.error.api', `select api(${props.api}) `))\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tconst req = props.httpRequest(requestOptions)\r\n\t\t\tif (req && req.then) {\r\n\t\t\t\treq.then(requestOptions.onSuccess, requestOptions.onError)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/**\r\n * 选项插入空选项“请选择”\r\n */\r\nconst setPlaceholder = () => {\r\n\tif (props.native) {\r\n\t\treturn\r\n\t}\r\n\t// 设置 placeholder\r\n\tif (!props.multiple && props.clearable && !props.inputable && !props.setDataFn && !props.filterable && (!props.optionDisplay || props.optionDisplay === 'float')) {\r\n\t\toptions.value.unshift({\r\n\t\t\t[iLabelText.value]: '',\r\n\t\t\t[iValueText.value]: ''\r\n\t\t})\r\n\t}\r\n}\r\n\r\nconst setValue = () => {\r\n\tif (props.multiple) {\r\n\t\tselected.value = []\r\n\t\tif (iValue.value) {\r\n\t\t\tconst arr = Array.isArray(iValue.value) ? iValue.value : iValue.value.toString().split(props.splitSymbol || ',')\r\n\t\t\tarr.forEach(item => {\r\n\t\t\t\tif (item && item.toString().trim()) {\r\n\t\t\t\t\tlet option = options.value.find(option => String(option[iValueText.value]) === String(item))\r\n\t\t\t\t\tif (option) {\r\n\t\t\t\t\t\tselected.value.push(option)\r\n\t\t\t\t\t} else if (props.inputable) {\r\n\t\t\t\t\t\t// 当输入一个不存在的值的时候,如果可自定义则显示,否则不显示\r\n\t\t\t\t\t\tselected.value.push({\r\n\t\t\t\t\t\t\t[iLabelText.value]: item,\r\n\t\t\t\t\t\t\t[iValueText.value]: item,\r\n\t\t\t\t\t\t\thide: false\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t} else {\r\n\t\tlet option = options.value.find(option => String(option[iValueText.value]) === String(iValue.value))\r\n\r\n\t\tif (option) {\r\n\t\t\tselected.value = option\r\n\t\t} else {\r\n\t\t\tif (iValue.value && props.inputable) {\r\n\t\t\t\tselected.value = {\r\n\t\t\t\t\t[iLabelText.value]: iValue.value,\r\n\t\t\t\t\t[iValueText.value]: iValue.value\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tselected.value = {\r\n\t\t\t\t\t[iLabelText.value]: iValue.value,\r\n\t\t\t\t\t[iValueText.value]: iValue.value\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tinited.value = true\r\n}\r\n\r\n// 选项变更处理方法\r\nconst itemChange = option => {\r\n\tif (option.disabled) {\r\n\t\treturn\r\n\t}\r\n\tif (props.multiple) {\r\n\t\tmultipleItemChange(true, option)\r\n\t} else {\r\n\t\tchange(option[iValueText.value], option)\r\n\t\tcloseLayer()\r\n\t}\r\n\tnextTick(() => {\r\n\t\temit('select', option)\r\n\t})\r\n}\r\n\r\n// 选择全部\r\nconst selectAll = () => {\r\n\tallChange()\r\n}\r\n\r\n// 反选\r\nconst deselect = () => {\r\n\treverseChange()\r\n}\r\n\r\n/**\r\n * 多选选项变更处理方法\r\n * @param value 选中状态\r\n * @param item 选项\r\n */\r\nconst multipleItemChange = (value: boolean, item: SelectOptionsData) => {\r\n\tif (item && item.disabled) return\r\n\r\n\tlet arr = iValue.value ? iValue.value.toString().split(props.splitSymbol || ',') : []\r\n\tlet selectedOptions = [...selected.value]\r\n\tif (value) {\r\n\t\tif (arr.indexOf(item[iValueText.value]) === -1) {\r\n\t\t\tarr.push(item[iValueText.value])\r\n\t\t\tselectedOptions.push(item)\r\n\t\t} else {\r\n\t\t\tarr = removeItem(arr, item[iValueText.value])\r\n\t\t\tselectedOptions = selectedOptions.filter(option => option[iValueText.value] !== value)\r\n\t\t}\r\n\t} else {\r\n\t\tarr = removeItem(arr, item[iValueText.value])\r\n\t\tselectedOptions = selectedOptions.filter(option => option[iValueText.value] !== value)\r\n\t}\r\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\r\n}\r\n\r\nconst resetLayer = () => {\r\n\tconst el = props.optionDisplay == 'popup' ? null : trigger.value\r\n\toptionLayer.value.set(el)\r\n}\r\n\r\nconst removeTag = (item: { [x: string]: any }) => {\r\n\tif (props.disabled || disabled.value) return\r\n\r\n\tlet arr = iValue.value.toString().split(props.splitSymbol || ',')\r\n\tarr = removeItem(arr, item[iValueText.value])\r\n\tlet selectedOptions = []\r\n\tselected.value.map(selectedItem => {\r\n\t\tif (selectedItem[iValueText.value] !== item[iValueText.value]) {\r\n\t\t\tselectedOptions.push(selectedItem)\r\n\t\t}\r\n\t})\r\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\r\n}\r\n\r\n// 工具方法\r\nconst removeItem = (arr, value) => {\r\n\tif (typeof arr === 'string') {\r\n\t\tarr = arr.split(',')\r\n\t}\r\n\tlet index = arr.indexOf(value)\r\n\tif (index > -1) {\r\n\t\tarr.splice(index, 1)\r\n\t}\r\n\treturn arr\r\n}\r\n\r\n// 选项处理相关的 watch 监听器\r\nwatch(\r\n\t() => props.data,\r\n\t() => {\r\n\t\tsetOptions()\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.api,\r\n\t() => {\r\n\t\tsetOptions()\r\n\t}\r\n)\r\n\r\n// 初始化layerSlide设置\r\nconst initLayerSlide = () => {\r\n\t// 弹出模式\r\n\tif ($phone) {\r\n\t\tlayerSlide.value = true\r\n\t\tlayerPosition.value = 'bottom'\r\n\t}\r\n\tif (props.optionDisplay === 'popup' || ($phone && (props.filterable || props.inputable))) {\r\n\t\tlayerSlide.value = true\r\n\t\tlayerPosition.value = 'right'\r\n\t\tif (!props.optionWidth) {\r\n\t\t\tiOptionWidth.value = '100%'\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst onCreated = () => {\r\n\t// 初始化内部变量\r\n\tiLabelText.value = props.labelText\r\n\tiValueText.value = props.valueText\r\n\tiResPath.value = props.resPath\r\n\tiSuccessCode.value = props.successCode\r\n\tiApiParam.value = props.apiParam\r\n\tiApiHeaders.value = props.apiHeaders\r\n\tiApiLabel.value = props.apiLabel\r\n\tiErrorPath.value = props.errorPath\r\n\tiOptionWidth.value = props.optionWidth\r\n\r\n\t// 设置选项数据\r\n\tsetOptions()\r\n\r\n\t// 初始化弹层设置\r\n\tinitLayerSlide()\r\n}\r\n\r\nonCreated()\r\n\r\nwatch(\r\n\t() => props.apiParam,\r\n\t() => {\r\n\t\tiApiParam.value = props.apiParam\r\n\t\tif (props.api) {\r\n\t\t\tgetData()\r\n\t\t}\r\n\t},\r\n\t{ deep: true }\r\n)\r\n\r\nwatch(\r\n\t() => props.labelText,\r\n\tnewVal => {\r\n\t\tiLabelText.value = newVal\r\n\t\tsetValue()\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.valueText,\r\n\tnewVal => {\r\n\t\tiValueText.value = newVal\r\n\t\tsetValue()\r\n\t}\r\n)\r\n\r\n/* ================================ 计算属性 ================================ */\r\n// 选项相关计算属性\r\nconst isAll = computed(() => {\r\n\tlet arr = []\r\n\toptions.value.map(item => {\r\n\t\t// 排除空的placeholder选项\r\n\t\tif (item[iValueText.value] !== '') {\r\n\t\t\tarr.push(item[iValueText.value])\r\n\t\t}\r\n\t})\r\n\tif (arr.sort().toString() === iValue.value.toString().split(',').sort().toString()) {\r\n\t\treturn true\r\n\t} else {\r\n\t\treturn false\r\n\t}\r\n})\r\n\r\n// 状态相关计算属性\r\nconst changed = computed(() => {\r\n\tif ((props.comparable || (ToForm && ToForm?.comparable)) && valueStore.value.length > 0 && iValue.value !== valueStore.value[0]) {\r\n\t\treturn true\r\n\t} else {\r\n\t\treturn false\r\n\t}\r\n})\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.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.label) {\r\n\t\treturn ToFormItem.label\r\n\t} else {\r\n\t\treturn ''\r\n\t}\r\n})\r\n\r\nconst validateValue = computed(() => {\r\n\tif (props.multiple) {\r\n\t\tif (selected.value.length > 0) {\r\n\t\t\treturn 'true'\r\n\t\t} else {\r\n\t\t\treturn ''\r\n\t\t}\r\n\t} else {\r\n\t\treturn selected.value[iValueText.value]\r\n\t}\r\n})\r\n\r\n/* ================================ 样式处理 ================================ */\r\nconst { setClass, setStyle } = useSetSelectClassStyle({\r\n\tprops,\r\n\tdisabled,\r\n\tselected,\r\n\tiValueText,\r\n\terrorTip,\r\n\tchanged,\r\n\tToForm\r\n})\r\n\r\nconst setOptionClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.mode) {\r\n\t\tfor (let i = 0; i < props.mode.split(' ').length; i++) {\r\n\t\t\tarr.push(`mode-${props.mode.split(' ')[i]}`)\r\n\t\t}\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst getDynamicHeight = computed(() => {\r\n\tif (!trigger.value || !optionLayer.value) return ''\r\n\r\n\tconst triggerRect = (trigger.value as HTMLElement).getBoundingClientRect()\r\n\tconst windowHeight = window.innerHeight\r\n\t// 计算下拉框到可视区域底部的距离\r\n\tconst distanceToBottom = windowHeight - triggerRect.bottom\r\n\t// 计算下拉框到可视区域顶部的距离\r\n\tconst distanceToTop = triggerRect.top\r\n\t// 选择较大的距离并取 80% 作为最大高度\r\n\tconst maxHeight = Math.max(distanceToBottom, distanceToTop) * 0.8\r\n\treturn `${maxHeight}px`\r\n})\r\n\r\n/* ================================ 事件处理函数 ================================ */\r\n// 值变更事件\r\nconst change = (value, option) => {\r\n\tif (props.beforeChange) {\r\n\t\tlet result = props.beforeChange(value, option)\r\n\t\tif (result === false) {\r\n\t\t\treturn\r\n\t\t}\r\n\t}\r\n\tisChanging.value = true\r\n\tiValue.value = value\r\n\tsetValue()\r\n\temit('change', value, option)\r\n\temit('update:modelValue', value)\r\n\tnextTick(() => {\r\n\t\tisChanging.value = false\r\n\t})\r\n}\r\n\r\n// 选项面板控制\r\nconst optionLayerTrigger = ref(null)\r\n\r\n/**\r\n * 打开选项面板\r\n */\r\nconst openOptionLayer = () => {\r\n\tconst el = props.optionDisplay == 'popup' ? null : trigger.value\r\n\toptionLayer.value.toggle(el)\r\n}\r\n\r\nconst click = () => {\r\n\tif (!props.native && !(props.disabled || disabled.value)) {\r\n\t\ttoggleLayer()\r\n\t}\r\n}\r\n\r\nconst phoneCloseLayer = () => {\r\n\toptionLayer.value.close()\r\n\tif (props.filterable && $phone) {\r\n\t\toptions.value = options.value.slice(0, 100)\r\n\t}\r\n}\r\n\r\n// 弹层交互事件\r\nconst layerMousedown = () => {\r\n\tblurByLayer.value = true\r\n}\r\n\r\n// 焦点事件处理\r\nconst focus = () => {\r\n\terrorTip.value = ''\r\n\tfocused.value = true\r\n\t// layerSlide.value = true;\r\n}\r\n\r\nconst blur = () => {\r\n\tif (!blurByLayer.value) {\r\n\t\tfocused.value = false\r\n\t\tlayerSlide.value = false\r\n\t\tlayerClose()\r\n\t}\r\n\tblurByLayer.value = false\r\n}\r\n\r\nconst inputBlur = () => {\r\n\tif (!blurByLayer.value) {\r\n\t\tfocused.value = false\r\n\t\tlayerSlide.value = false\r\n\t\tlayerClose()\r\n\t}\r\n\tblurByLayer.value = false\r\n}\r\n\r\nconst inputFocus = () => {\r\n\tfocused.value = true\r\n\t// layerSlide.value = true;\r\n}\r\n\r\nconst filterBlur = () => {\r\n\tif (!blurByLayer.value) {\r\n\t\tfocused.value = false\r\n\t\tlayerSlide.value = false\r\n\t\tlayerClose()\r\n\t}\r\n\tblurByLayer.value = false\r\n}\r\n\r\nconst filterFocus = () => {\r\n\tfocused.value = true\r\n\t// layerSlide.value = true;\r\n}\r\n\r\nconst multipleInputBlur = () => {\r\n\tif (!blurByLayer.value) {\r\n\t\tfocused.value = false\r\n\t\tlayerSlide.value = false\r\n\t\tlayerClose()\r\n\t}\r\n\tblurByLayer.value = false\r\n}\r\n\r\nconst multipleInputFocus = () => {\r\n\tfocused.value = true\r\n}\r\n\r\nconst multipleFilterBlur = () => {\r\n\tif (!blurByLayer.value) {\r\n\t\tfocused.value = false\r\n\t\tlayerSlide.value = false\r\n\t\tlayerClose()\r\n\t}\r\n\tblurByLayer.value = false\r\n}\r\n\r\nconst multipleFilterFocus = () => {\r\n\tfocused.value = true\r\n}\r\n\r\n// 输入事件处理\r\nconst inputInput = (e: { keyCode: number }) => {\r\n\tif (e.keyCode === 13) {\r\n\t\tif (props.setDataFn) {\r\n\t\t\tprops.setDataFn(setDataInputValue.value, setDataLoading)\r\n\t\t}\r\n\t}\r\n\t// layerSlide.value = true;\r\n}\r\n\r\nconst filterInput = () => {\r\n\t// layerSlide.value = true;\r\n}\r\n\r\nconst filterClear = () => {\r\n\tiValue.value = ''\r\n}\r\n\r\nconst setDataLoading = loading => {\r\n\tdataLoading.value = loading\r\n}\r\n\r\n// 键盘事件处理\r\nconst enter = () => {\r\n\tif (!(props.multiple && props.inputable)) {\r\n\t\ttoggleLayer()\r\n\t} else {\r\n\t\t// 判断重复项\r\n\t\tlet value = props.filterable ? multipleFilterValue.value : multipleInputValue.value\r\n\t\tif (selected.value.find(item => item[iLabelText.value] === value) || selected.value.find(item => item[iValueText.value] === value)) {\r\n\t\t\terrorTip.value = t('to.select.tip.error.repetition')\r\n\t\t\terrorType.value = 'rule'\r\n\t\t\treturn\r\n\t\t}\r\n\t\t// 判断空项\r\n\t\tif (!value.trim()) {\r\n\t\t\treturn\r\n\t\t}\r\n\t\tconst newOption = {\r\n\t\t\t[iLabelText.value]: value,\r\n\t\t\t[iValueText.value]: value\r\n\t\t}\r\n\t\tif (props.beforeChange) {\r\n\t\t\tconst fn = props.beforeChange(newOption)\r\n\t\t\tif (fn && fn.then) {\r\n\t\t\t\tfn.then(() => {\r\n\t\t\t\t\tselected.value.push(newOption)\r\n\t\t\t\t}).catch(() => {})\r\n\t\t\t} else {\r\n\t\t\t\tif (fn) {\r\n\t\t\t\t\tselected.value.push(newOption)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tselected.value.push(newOption)\r\n\t\t}\r\n\t\tif (props.filterable) {\r\n\t\t\tmultipleFilterValue.value = ''\r\n\t\t} else {\r\n\t\t\tmultipleInputValue.value = ''\r\n\t\t}\r\n\t\tif ($phone) {\r\n\t\t\tif (props.filterable) {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tpopupFilter.value?.focus()\r\n\t\t\t\t}, 500)\r\n\t\t\t} else {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tpopupInput.value?.focus()\r\n\t\t\t\t}, 500)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n// 清除操作\r\nconst clear = () => {\r\n\tclearChange()\r\n}\r\n\r\nconst clearChange = () => {\r\n\tif (props.multiple) {\r\n\t\tchange('', [])\r\n\t} else {\r\n\t\tchange('', null)\r\n\t}\r\n\tif (props.focusWhenClear && props.filterable) {\r\n\t\tlayerSlide.value = true\r\n\t}\r\n}\r\n\r\n// 批量选择操作\r\nconst allChange = () => {\r\n\tlet arr = []\r\n\tlet selectedOptions = []\r\n\toptions.value.forEach(item => {\r\n\t\t// 排除空的placeholder选项和禁用项\r\n\t\tif (item[iValueText.value] !== '' && !item.disabled) {\r\n\t\t\tarr.push(item[iValueText.value])\r\n\t\t\tselectedOptions.push(item)\r\n\t\t}\r\n\t})\r\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\r\n}\r\n\r\nconst reverseChange = () => {\r\n\tlet arr = []\r\n\tlet selectedOptions = []\r\n\tlet selectedArr = iValue.value ? iValue.value.toString().split(props.splitSymbol || ',') : []\r\n\toptions.value.forEach(item => {\r\n\t\t// 排除空的placeholder选项和禁用项,选择当前未选中的项\r\n\t\tif (item[iValueText.value] !== '' && !item.disabled && selectedArr.indexOf(item[iValueText.value].toString()) === -1) {\r\n\t\t\tarr.push(item[iValueText.value])\r\n\t\t\tselectedOptions.push(item)\r\n\t\t}\r\n\t})\r\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\r\n}\r\n\r\n/* ================================ 监听器 ================================ */\r\n// selected监听器(从vue2迁移)\r\nwatch(\r\n\tselected,\r\n\tval => {\r\n\t\t// 调整弹层位置(如果弹层存在且显示)\r\n\t\tif (props.optionDisplay !== 'none' && optionLayer.value?.show) {\r\n\t\t\tnextTick(() => {\r\n\t\t\t\t// Vue3中使用optionLayer的调整方法\r\n\t\t\t\tif (optionLayer.value?.set && optionLayerTrigger.value) {\r\n\t\t\t\t\toptionLayer.value.set(optionLayerTrigger.value)\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tif (props.multiple) {\r\n\t\t\tlet arr = []\r\n\t\t\tval.map(item => {\r\n\t\t\t\tarr.push(item[iValueText.value])\r\n\t\t\t})\r\n\t\t\tif (inited.value) {\r\n\t\t\t\tiValue.value = arr.join(props.splitSymbol || ',')\r\n\t\t\t}\r\n\t\t\tif (optionLayer.value) {\r\n\t\t\t\tresetLayer()\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (inited.value) {\r\n\t\t\t\tisChanging.value = true // 避免同时给 inputable 的 input 设置 inputValue 的时候触发 change 事件\r\n\t\t\t\tiValue.value = String(val[iValueText.value] || '')\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tisChanging.value = false\r\n\t\t\t\t}, 100)\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (!inited.value) {\r\n\t\t\tif (Array.isArray(props.modelValue)) {\r\n\t\t\t\tiValue.value = props.modelValue.join(',')\r\n\t\t\t} else {\r\n\t\t\t\tiValue.value = props.modelValue\r\n\t\t\t}\r\n\t\t\tnextTick(() => {\r\n\t\t\t\tinited.value = true\r\n\t\t\t})\r\n\t\t}\r\n\t},\r\n\t{ deep: true }\r\n)\r\n\r\n// 输入值监听\r\nwatch(inputValue, () => {\r\n\tif (!isChanging.value) {\r\n\t\tiValue.value = inputValue.value\r\n\t}\r\n})\r\n\r\nwatch(filterValue, val => {\r\n\tif (props.inputable) {\r\n\t\tnextTick(() => {\r\n\t\t\tiValue.value = val\r\n\t\t})\r\n\t}\r\n})\r\n\r\nwatch(setDataInputValue, val => {\r\n\tif (props.setDataFn) {\r\n\t\tprops.setDataFn(val)\r\n\t}\r\n\tif (props.inputable) {\r\n\t\tnextTick(() => {\r\n\t\t\tiValue.value = val\r\n\t\t})\r\n\t}\r\n})\r\n\r\n// 核心值监听\r\nwatch(iValue, val => {\r\n\tsetSelected(val)\r\n\t// let finalVal: SelectValueType = val\r\n\t// if (props.multiple && props.valueType === 'array' && isString(val)) {\r\n\t// \tfinalVal = val ? String(val).split(',') : []\r\n\t// }\r\n\t// emit('change', finalVal, selected.value)\r\n\temit('update:modelValue', val)\r\n\tif ($TouchUI) {\r\n\t\t// const detail = {\r\n\t\t// \tname: 'ToSelect',\r\n\t\t// \tvalue: val,\r\n\t\t// \tdesc: validateDesc.value,\r\n\t\t// \tselected: selected.value\r\n\t\t// }\r\n\t\t// $TouchUI.commitTouchReport(detail)\r\n\t}\r\n\tvalueChange(val)\r\n})\r\n\r\n// Props监听\r\nwatch(\r\n\t() => props.modelValue,\r\n\tnewVal => {\r\n\t\t// if (!isChanging.value) {\r\n\t\tiValue.value = String(newVal || '')\r\n\t\tsetValue()\r\n\t\t// }\r\n\t},\r\n\t{ immediate: true }\r\n)\r\n\r\n// 配置相关监听\r\nwatch(\r\n\t() => props.apiHeaders,\r\n\t() => {\r\n\t\tiApiHeaders.value = props.apiHeaders\r\n\t},\r\n\t{ deep: true }\r\n)\r\n\r\nwatch(\r\n\t() => props.resPath,\r\n\tnewVal => {\r\n\t\tiResPath.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.successCode,\r\n\tnewVal => {\r\n\t\tiSuccessCode.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.apiLabel,\r\n\tnewVal => {\r\n\t\tiApiLabel.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.errorPath,\r\n\tnewVal => {\r\n\t\tiErrorPath.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.optionWidth,\r\n\tnewVal => {\r\n\t\tiOptionWidth.value = newVal\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.disabled,\r\n\tnewVal => {\r\n\t\tdisabled.value = newVal\r\n\t}\r\n)\r\n\r\n/* ================================ 工具方法 ================================ */\r\nconst getLabel = val => {\r\n\tconst obj = options.value.find(item => item[iValueText.value] === val)\r\n\tif (obj && obj[iLabelText.value]) {\r\n\t\treturn obj[iLabelText.value]\r\n\t}\r\n\treturn null\r\n}\r\n\r\n// 设置选中项方法(从vue2迁移)\r\nconst setSelected = (val: any) => {\r\n\tlet selectedData = JSON.parse(JSON.stringify(selected.value))\r\n\r\n\tif (!props.multiple) {\r\n\t\t// 单选模式\r\n\t\tif (options.value.findIndex(option => option[iValueText.value] === val) === -1) {\r\n\t\t\tselectedData = {\r\n\t\t\t\t[iLabelText.value]: val,\r\n\t\t\t\t[iValueText.value]: val\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tselectedData = options.value.find(option => option[iValueText.value] === val)\r\n\t\t}\r\n\t} else {\r\n\t\t// 多选模式\r\n\t\tif (val === '') {\r\n\t\t\tselectedData = []\r\n\t\t} else {\r\n\t\t\tconst arr = Array.isArray(val) ? unique(val) : unique(val.split(props.splitSymbol || ','))\r\n\t\t\tlet selectedArr: any[] = []\r\n\t\t\tarr.map((item: string) => {\r\n\t\t\t\tif (item && item.trim()) {\r\n\t\t\t\t\tif (options.value.findIndex(option => String(option[iValueText.value]) === String(item)) === -1) {\r\n\t\t\t\t\t\tselectedArr.push({\r\n\t\t\t\t\t\t\t[iLabelText.value]: item,\r\n\t\t\t\t\t\t\t[iValueText.value]: item,\r\n\t\t\t\t\t\t\thide: !props.inputable // 当输入一个不存在的值的时候,如果可自定义则显示,否则不显示\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\toptions.value.map(option => {\r\n\t\t\t\t\t\t\tif (String(option[iValueText.value]) === String(item)) {\r\n\t\t\t\t\t\t\t\tselectedArr.push(option)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tselectedData = selectedArr\r\n\t\t}\r\n\t}\r\n\r\n\tif (props.beforeChange) {\r\n\t\tconst fn = props.beforeChange(selectedData)\r\n\t\tif (fn && fn.then) {\r\n\t\t\tfn.then(() => {\r\n\t\t\t\tselected.value = selectedData\r\n\t\t\t}).catch(() => {})\r\n\t\t} else {\r\n\t\t\tif (fn) {\r\n\t\t\t\tselected.value = selectedData\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\tselected.value = selectedData\r\n\t}\r\n}\r\n\r\n// 数组去重工具函数\r\nconst unique = arr => {\r\n\treturn [...new Set(arr)]\r\n}\r\n\r\nconst valueChange = val => {\r\n\tif (!props.multiple) {\r\n\t\tif (props.inputable) {\r\n\t\t\tinputValue.value = getLabel(val) || val\r\n\t\t}\r\n\t\tif (props.filterable && !props.inputable) {\r\n\t\t\tfilterValue.value = getLabel(val) || ''\r\n\t\t}\r\n\t\tif (props.filterable && props.inputable) {\r\n\t\t\tfilterValue.value = getLabel(val) || val\r\n\t\t}\r\n\t\tif (props.setDataFn && !props.inputable) {\r\n\t\t\tsetDataInputValue.value = getLabel(val) || ''\r\n\t\t}\r\n\t\tif (props.setDataFn && props.inputable) {\r\n\t\t\tsetDataInputValue.value = getLabel(val) || val\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* ================================ 弹层控制方法 ================================ */\r\nconst layerClose = () => {\r\n\tif (!props.multiple) {\r\n\t\tif (props.filterable && !props.inputable) {\r\n\t\t\tif (iValue.value) {\r\n\t\t\t\tconst label = getLabel(iValue.value)\r\n\t\t\t\tif (label) {\r\n\t\t\t\t\tfilterValue.value = label\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfilterValue.value = ''\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tfilterValue.value = ''\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\tif (props.inputable) {\r\n\t\t\tmultipleInputValue.value = ''\r\n\t\t}\r\n\t\tif (props.filterable) {\r\n\t\t\tmultipleFilterValue.value = ''\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst closeLayer = () => {\r\n\toptionLayer.value.close()\r\n\tlayerClose()\r\n}\r\n\r\nconst toggleLayer = () => {\r\n\topenOptionLayer()\r\n}\r\n\r\nconst layerOpen = () => {\r\n\tsetTimeout(() => {\r\n\t\tresetLayer()\r\n\t}, 10)\r\n}\r\n\r\n/* ============================ 对比方法 ========================================== */\r\n// 记录历史值,以便对比或者取值\r\nconst compare = () => {\r\n\tvalueStore.value.unshift(iValue.value)\r\n}\r\nconst setDisabled = (f: boolean) => {\r\n\tdisabled.value = f\r\n}\r\n// 撤销\r\nconst restore = () => {\r\n\tiValue.value = valueStore.value[0]\r\n\tvalueStore.value.splice(0, 1)\r\n}\r\n\r\n/* ================================ 组件暴露 ================================ */\r\ndefineExpose({\r\n\tcloseLayer,\r\n\tsetSelected,\r\n\tcompare,\r\n\tsetDisabled,\r\n\trestore,\r\n\tchanged,\r\n\terrorTip,\r\n\terrorType\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","inject","useDevice","ref","useSelectOptionData","computed","nomatch","t","option","nextTick","watch","useSetSelectClassStyle","_a","_createCommentVNode","_createElementBlock","id","_normalizeClass","_unref","tabindex","_createElementVNode","verifiable","rule","required","trim","$slots","_renderSlot","prefix","icon","_createBlock","ToIcon","native","clearable","placeholder","_openBlock","_Fragment","_renderList","_toDisplayString","multiple","inputable","filterable","setDataFn","unit","ToInput","spChars","focusWhenClear","useAllText","allText","ToTag","removable","_createTextVNode","arrowType","suffix","_createVNode","ToFloat","optionDisplay","optionAlign","lazy","ToPadding","ToGrid","ToGridItem","ToHeader","ToButton","fillet","nodataText","nomatchText","ToScroll","optionCol","ToCheckbox","optionWrap","_vShow","vDis","_withModifiers","ToSubmit"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select.vue2.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToSelect',\n\tcomponentName: 'ToSelect'\n});\n</script>\n<template>\n\t<!-- 选择器主容器 -->\n\t<div :id=\"id\" ref=\"$el\" v-tip=\"changed ? t('to.common.originalValue', getLabel(valueStore[0])) : ''\" class=\"to-select\" :class=\"setClass\" :style=\"setStyle\" :tabindex=\"tabindex\" @mousedown=\"layerMousedown\" @focus=\"focus\" @blur=\"blur\" @keyup.enter=\"enter\" @keyup.esc=\"closeLayer\" @click=\"click\">\n\t\t<div ref=\"trigger\" class=\"to-select-el\">\n\t\t\t<!-- 表单验证元素2(隐藏) -->\n\t\t\t<span v-if=\"verifiable && (rule || required || ToFormItem?.required)\" v-show=\"false\" :trim=\"trim\" :req=\"validateRequired\" class=\"to-validate\" :desc=\"validateDesc\" :rule=\"rule\" :value=\"validateValue\"></span>\n\n\t\t\t<!-- 前缀插槽 -->\n\t\t\t<span v-if=\"$slots.prefix\" class=\"to-select-prefix\">\n\t\t\t\t<slot name=\"prefix\"></slot>\n\t\t\t</span>\n\n\t\t\t<!-- 前缀文本 -->\n\t\t\t<span v-if=\"prefix\" class=\"to-select-prefix-text\">\n\t\t\t\t<span>{{ prefix }}</span>\n\t\t\t</span>\n\n\t\t\t<!-- 选择器内容区域 -->\n\t\t\t<span ref=\"optionLayerTrigger\" class=\"to-select-content\">\n\t\t\t\t<!-- 前缀图标 -->\n\t\t\t\t<ToIcon v-if=\"icon\" :value=\"icon\" mode=\"none\" class=\"to-select-icon\"></ToIcon>\n\n\t\t\t\t<!-- 原生select模式 -->\n\t\t\t\t<template v-if=\"native\">\n\t\t\t\t\t<span class=\"to-select-box\">\n\t\t\t\t\t\t<select ref=\"selector\" v-model=\"iValue\">\n\t\t\t\t\t\t\t<option v-if=\"clearable\" value=\"\">{{ placeholder }}</option>\n\t\t\t\t\t\t\t<option v-for=\"(item, index) in options\" :key=\"index\" :value=\"item[iValueText]\">\n\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</span>\n\t\t\t\t</template>\n\n\t\t\t\t<!-- 自定义模拟选择器 -->\n\t\t\t\t<template v-else>\n\t\t\t\t\t<!-- 单选模式 -->\n\t\t\t\t\t<template v-if=\"!multiple\">\n\t\t\t\t\t\t<!-- 单选显示值(非输入模式或手机端) -->\n\t\t\t\t\t\t<span v-if=\"(!inputable && !filterable && !setDataFn) || $phone\" class=\"to-select-box\">\n\t\t\t\t\t\t\t<template v-if=\"(selected as any)[iLabelText]\">\n\t\t\t\t\t\t\t\t{{ (selected as any)[iLabelText] }}\n\t\t\t\t\t\t\t\t<template v-if=\"unit\">{{ unit }}</template>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t<template v-else>{{ placeholder }}</template>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<!-- 单选输入框区域 -->\n\t\t\t\t\t\t<span v-else class=\"to-select-input\">\n\t\t\t\t\t\t\t<!-- 可输入模式 inputable = true filterable = false 的输入框 -->\n\t\t\t\t\t\t\t<to-input v-if=\"inputable && !filterable && !setDataFn\" ref=\"input\" v-model=\"inputValue\" :sp-chars=\"spChars\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @focus=\"inputFocus\" @keyup=\"inputInput\" @blur=\"inputBlur\"></to-input>\n\t\t\t\t\t\t\t<!-- 可过滤模式 filterable = true 的输入框 -->\n\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"filter\" v-model=\"filterValue\" :focus-when-clear=\"focusWhenClear\" :sp-chars=\"inputable ? spChars : false\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @clear=\"filterClear\" @focus=\"filterFocus\" @keyup=\"filterInput\" @blur=\"filterBlur\"></to-input>\n\t\t\t\t\t\t\t<!-- 自定义数据设置模式的输入框 -->\n\t\t\t\t\t\t\t<to-input v-if=\"setDataFn\" v-model=\"setDataInputValue\" :sp-chars=\"inputable ? spChars : false\" :tabindex=\"tabindex\" :clearable=\"clearable\" prevent-focus width=\"full\" mode=\"none\" :placeholder=\"placeholder\" @clear=\"filterClear\" @focus=\"filterFocus\" @keyup=\"filterInput\" @blur=\"filterBlur\"></to-input>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</template>\n\n\t\t\t\t\t<!-- 多选模式 -->\n\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t<!-- 多选占位符(无选中项且非输入模式时显示) -->\n\t\t\t\t\t\t<span v-if=\"(selected as any[]).filter(item => !item.hide).length === 0 && !inputable && !filterable && !setDataFn\" class=\"to-select-box\">\n\t\t\t\t\t\t\t{{ placeholder }}\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t<!-- 全选状态显示文本 -->\n\t\t\t\t\t\t<span v-else-if=\"isAll && useAllText\" class=\"to-select-box\">{{ allText }}</span>\n\n\t\t\t\t\t\t<!-- 多选标签容器 -->\n\t\t\t\t\t\t<span v-else class=\"to-select-tag\">\n\t\t\t\t\t\t\t<!-- 已选中项的标签显示 -->\n\t\t\t\t\t\t\t<template v-if=\"(selected as any[]).length > 0 && !(isAll && useAllText)\">\n\t\t\t\t\t\t\t\t<template v-for=\"(item, index) in selected as any[]\">\n\t\t\t\t\t\t\t\t\t<to-tag v-if=\"!item.hide\" :key=\"index\" class=\"to-select-item\" :removable=\"removable && !disabled\" @remove=\"removeTag(item)\">\n\t\t\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\n\t\t\t\t\t\t\t\t\t</to-tag>\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t<!-- 多选输入框区域(非手机端或手机端无选中项时显示) -->\n\t\t\t\t\t\t\t<template v-if=\"!$phone || ($phone && selected.length === 0)\">\n\t\t\t\t\t\t\t\t<!-- 多选可输入模式的输入框 -->\n\t\t\t\t\t\t\t\t<to-input v-if=\"inputable && !filterable\" ref=\"input\" v-model=\"multipleInputValue\" :sp-chars=\"spChars\" :disabled=\"$phone\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleInputFocus\" @blur=\"multipleInputBlur\"></to-input>\n\t\t\t\t\t\t\t\t<!-- 多选可过滤模式的输入框 -->\n\t\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"filter\" v-model=\"multipleFilterValue\" :sp-chars=\"inputable ? spChars : false\" :disabled=\"$phone\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleFilterFocus\" @blur=\"multipleFilterBlur\"></to-input>\n\t\t\t\t\t\t\t\t<!-- 多选自定义数据设置模式的输入框 -->\n\t\t\t\t\t\t\t\t<to-input v-if=\"setDataFn\" ref=\"filter\" v-model=\"setDataInputValue\" :sp-chars=\"inputable ? spChars : false\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\" @focus=\"multipleFilterFocus\" @blur=\"multipleFilterBlur\"></to-input>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</template>\n\t\t\t\t</template>\n\n\t\t\t\t<!-- 下拉箭头图标 -->\n\t\t\t\t<span class=\"to-select-arrow\" :class=\"`type-${arrowType}`\"></span>\n\t\t\t</span>\n\n\t\t\t<!-- 后缀文本 -->\n\t\t\t<span v-if=\"suffix\" class=\"to-select-suffix-text\">\n\t\t\t\t<span>{{ suffix }}</span>\n\t\t\t</span>\n\n\t\t\t<!-- 后缀插槽 -->\n\t\t\t<span v-if=\"$slots.suffix\" class=\"to-select-suffix\">\n\t\t\t\t<slot name=\"suffix\"></slot>\n\t\t\t</span>\n\n\t\t\t<!-- 错误提示信息 -->\n\t\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\n\t\t\t\t<template v-if=\"errorType === 'rule'\">\n\t\t\t\t\t<template v-if=\"inputable\">输入有误</template>\n\t\t\t\t\t<template v-else>选择有误</template>\n\t\t\t\t\t<ToIcon v-tip.danger=\"errorTip\" value=\"help\" color=\"danger\" mode=\"toast\" fillet=\"round\"></ToIcon>\n\t\t\t\t</template>\n\t\t\t\t<template v-else>不能为空</template>\n\t\t\t</span>\n\t\t</div>\n\n\t\t<!-- 下拉选项面板 -->\n\t\t<ToFloat ref=\"optionLayer\" class=\"to-select-option\" :class=\"setOptionClass\" :align=\"optionDisplay === 'popup' ? 'center' : optionAlign\" :lazy=\"lazy\" :width=\"iOptionWidth\" :slide=\"layerSlide\" :position=\"layerPosition\" @closed=\"layerClose\" @mousedown=\"layerMousedown\" @before-open=\"layerOpen\">\n\t\t\t<!-- 数据加载状态 -->\n\t\t\t<ToPadding v-if=\"dataLoading\" v-align=\"'center'\" :value=\"2\">\n\t\t\t\t<ToIcon value=\"loading\"></ToIcon>\n\t\t\t</ToPadding>\n\n\t\t\t<!-- 选项内容区域 -->\n\t\t\t<template v-else>\n\t\t\t\t<!-- 选项数据插槽 -->\n\t\t\t\t<slot :data=\"options\">\n\t\t\t\t\t<!-- 弹窗模式 -->\n\t\t\t\t\t<to-grid v-if=\"optionDisplay === 'popup' || ((inputable || filterable) && $phone)\" style=\"width: 100%\" type=\"v\">\n\t\t\t\t\t\t<!-- 弹窗头部区域 -->\n\t\t\t\t\t\t<to-grid-item side width=\"full\">\n\t\t\t\t\t\t\t<!-- 弹窗标题栏 -->\n\t\t\t\t\t\t\t<ToPadding value=\"1\">\n\t\t\t\t\t\t\t\t<to-header level=\"0\" :title=\"validateDesc ? t('to.select.float.title', validateDesc) : t('to.select.float.titlePlaceholder', validateDesc)\" @back=\"closeLayer()\">\n\t\t\t\t\t\t\t\t\t<to-button fillet=\"normal\" icon=\"close\" mode=\"none\" color=\"primary\" @click=\"(clear(), closeLayer())\">\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.clear') }}\n\t\t\t\t\t\t\t\t\t</to-button>\n\t\t\t\t\t\t\t\t</to-header>\n\t\t\t\t\t\t\t</ToPadding>\n\n\t\t\t\t\t\t\t<!-- 弹窗内的搜索/输入区域 -->\n\t\t\t\t\t\t\t<ToPadding v-if=\"filterable || inputable\" position=\"side\" value=\"1\">\n\t\t\t\t\t\t\t\t<!-- 多选模式的弹窗输入区域 -->\n\t\t\t\t\t\t\t\t<template v-if=\"multiple\">\n\t\t\t\t\t\t\t\t\t<!-- 多选可输入模式 -->\n\t\t\t\t\t\t\t\t\t<template v-if=\"inputable\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"to-select to-select-arrow-none\" style=\"width: 100%\" :class=\"fillet === 'normal' ? 'to-input-fillet-normal' : ''\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"to-select-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"to-select-tag\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内已选标签显示 -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t<template v-if=\"(selected as any[]).length > 0 && !(isAll && useAllText)\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<template v-for=\"(item, index) in selected as any[]\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-tag v-if=\"!item.hide\" :key=\"index\" color=\"fg\" mode=\"plain\" :removable=\"removable && !disabled\" @remove=\"removeTag(item)\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ item[iLabelText] }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</to-tag>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内过滤输入框 -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t<to-input v-if=\"filterable\" ref=\"popupFilter\" v-model=\"multipleFilterValue\" :sp-chars=\"spChars\" prevent-focus mode=\"none\" :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-button icon=\"ok\" mode=\"none\" color=\"primary\" @click=\"enter\"></to-button>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</to-input>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- 弹窗内输入框 -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupInput\" v-model=\"multipleInputValue\" prevent-focus mode=\"none\" :placeholder=\"selected.filter(item => !item.hide).length > 0 ? '' : placeholder\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<to-button icon=\"ok\" mode=\"none\" color=\"primary\" @click=\"enter\"></to-button>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</to-input>\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t<!-- 多选仅过滤模式 -->\n\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupFilter\" v-model=\"multipleFilterValue\" :sp-chars=\"false\" width=\"full\" prevent-focus :placeholder=\"(selected as any[]).filter(item => !item.hide).length > 0 ? '' : placeholder\"></to-input>\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t<!-- 单选模式的弹窗输入区域 -->\n\t\t\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t\t\t<!-- 单选可输入模式 -->\n\t\t\t\t\t\t\t\t\t<to-input v-if=\"inputable\" ref=\"popupInput\" v-model=\"inputValue\" :sp-chars=\"spChars\" prevent-focus width=\"full\" :placeholder=\"placeholder\"></to-input>\n\t\t\t\t\t\t\t\t\t<!-- 单选过滤模式 -->\n\t\t\t\t\t\t\t\t\t<to-input v-else ref=\"popupFilter\" v-model=\"filterValue\" :sp-chars=\"false\" prevent-focus width=\"full\" placeholder=\"筛选\" @clear=\"filterClear\"></to-input>\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t</ToPadding>\n\t\t\t\t\t\t</to-grid-item>\n\n\t\t\t\t\t\t<!-- 弹窗选项内容区域 -->\n\t\t\t\t\t\t<to-grid-item width=\"full\">\n\t\t\t\t\t\t\t<!-- 无数据提示 -->\n\t\t\t\t\t\t\t<ToPadding v-if=\"nodata\" v-color=\"'info'\" :value=\"2\">\n\t\t\t\t\t\t\t\t{{ nodataText }}\n\t\t\t\t\t\t\t</ToPadding>\n\n\t\t\t\t\t\t\t<!-- 无匹配项提示 -->\n\t\t\t\t\t\t\t<ToPadding v-else-if=\"nomatch\" v-color=\"'info'\" :value=\"2\">\n\t\t\t\t\t\t\t\t{{ nomatchText }}\n\t\t\t\t\t\t\t</ToPadding>\n\n\t\t\t\t\t\t\t<!-- 选项列表滚动区域-->\n\t\t\t\t\t\t\t<to-scroll v-if=\"!nodata && !nomatch\" :style=\"{ maxHeight: getDynamicHeight }\">\n\t\t\t\t\t\t\t\t<ToPadding :value=\"0.5\">\n\t\t\t\t\t\t\t\t\t<!-- 弹窗内多选选项 -->\n\t\t\t\t\t\t\t\t\t<template v-if=\"multiple\">\n\t\t\t\t\t\t\t\t\t\t<!-- 全选/反选按钮 -->\n\t\t\t\t\t\t\t\t\t\t<ToPadding :value=\"0.5\">\n\t\t\t\t\t\t\t\t\t\t\t<to-button @click=\"selectAll\">{{ t('to.common.selectAll') }}</to-button>\n\t\t\t\t\t\t\t\t\t\t\t<to-button @click=\"deselect\">{{ t('to.common.Deselect') }}</to-button>\n\t\t\t\t\t\t\t\t\t\t</ToPadding>\n\n\t\t\t\t\t\t\t\t\t\t<!-- 多选选项网格 -->\n\t\t\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\">\n\t\t\t\t\t\t\t\t\t\t\t<to-grid-item v-for=\"item in options\" v-show=\"multipleFilter(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" width=\"full\">\n\t\t\t\t\t\t\t\t\t\t\t\t<to-checkbox\n\t\t\t\t\t\t\t\t\t\t\t\t\t:wrap=\"optionWrap\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t:title=\"item[iLabelText]\"\n\t\t\t\t\t\t\t\t\t\t\t\t\twidth=\"full\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t:label=\"item[iLabelText]\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t:disabled=\"!!item.disabled\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t:value=\"Boolean((selected as any[]).find(el => el[iValueText] === item[iValueText]))\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t@change=\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn multipleItemChange(value, item)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\n\t\t\t\t\t\t\t\t\t\t\t\t></to-checkbox>\n\t\t\t\t\t\t\t\t\t\t\t</to-grid-item>\n\t\t\t\t\t\t\t\t\t\t</to-grid>\n\t\t\t\t\t\t\t\t\t</template>\n\n\t\t\t\t\t\t\t\t\t<!-- 弹窗内单选选项 -->\n\t\t\t\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t\t\t\t<!-- 单选选项网格 -->\n\t\t\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\">\n\t\t\t\t\t\t\t\t\t\t\t<div v-for=\"item in options\" v-show=\"filterByValue(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" :class=\"{ 'is-on': (selected as any)[iValueText] === item[iValueText] }\" @click.stop=\"itemChange(item)\">\n\t\t\t\t\t\t\t\t\t\t\t\t<template v-if=\"item[iLabelText]\">{{ item[iLabelText] }}</template>\n\t\t\t\t\t\t\t\t\t\t\t\t<template v-else>{{ placeholder }}</template>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</to-grid>\n\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t</ToPadding>\n\t\t\t\t\t\t\t</to-scroll>\n\t\t\t\t\t\t</to-grid-item>\n\t\t\t\t\t\t<to-grid-item side width=\"full\">\n\t\t\t\t\t\t\t<to-submit width=\"full\" space=\"0\">\n\t\t\t\t\t\t\t\t<to-button v-size=\"'l'\" fillet=\"none\" color=\"primary\" mode=\"line\" @click=\"(phoneCloseLayer(), (iValue = ''))\">\n\t\t\t\t\t\t\t\t\t{{ t('to.common.clear') }}\n\t\t\t\t\t\t\t\t</to-button>\n\t\t\t\t\t\t\t\t<to-button v-size=\"'l'\" mode=\"fill\" color=\"primary\" fillet=\"none\" @click=\"phoneCloseLayer()\">\n\t\t\t\t\t\t\t\t\t{{ t('to.common.confirm') }}\n\t\t\t\t\t\t\t\t</to-button>\n\t\t\t\t\t\t\t</to-submit>\n\t\t\t\t\t\t</to-grid-item>\n\t\t\t\t\t</to-grid>\n\n\t\t\t\t\t<!-- 普通模式 -->\n\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t<!-- 无数据提示 -->\n\t\t\t\t\t\t<div v-if=\"nodata\" class=\"to-select-option-tip\">\n\t\t\t\t\t\t\t{{ nodataText }}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<!-- 无匹配提示 -->\n\t\t\t\t\t\t<div v-else-if=\"nomatch\" class=\"to-select-option-tip\">\n\t\t\t\t\t\t\t{{ nomatchText }}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<!-- 普通下拉选项滚动区域-->\n\t\t\t\t\t\t<to-scroll v-if=\"!nodata && !nomatch\" :style=\"{ maxHeight: getDynamicHeight }\">\n\t\t\t\t\t\t\t<!-- 多选选项 -->\n\t\t\t\t\t\t\t<template v-if=\"multiple\">\n\t\t\t\t\t\t\t\t<!-- 全选/反选按钮 -->\n\t\t\t\t\t\t\t\t<div class=\"to-select-option-fn\">\n\t\t\t\t\t\t\t\t\t<to-button class=\"to-select-option-button value-all\" @click=\"selectAll\">\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.selectAll') }}\n\t\t\t\t\t\t\t\t\t</to-button>\n\t\t\t\t\t\t\t\t\t<to-button class=\"to-select-option-button value-inverse\" @click=\"deselect\">\n\t\t\t\t\t\t\t\t\t\t{{ t('to.common.Deselect') }}\n\t\t\t\t\t\t\t\t\t</to-button>\n\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t<!-- 多选选项网格 -->\n\t\t\t\t\t\t\t\t<to-grid class=\"to-select-list is-multiple\" :col=\"optionCol\">\n\t\t\t\t\t\t\t\t\t<to-checkbox\n\t\t\t\t\t\t\t\t\t\tv-for=\"item in options\"\n\t\t\t\t\t\t\t\t\t\tv-show=\"multipleFilter(item)\"\n\t\t\t\t\t\t\t\t\t\t:key=\"item[iValueText]\"\n\t\t\t\t\t\t\t\t\t\tv-dis=\"!!item.disabled\"\n\t\t\t\t\t\t\t\t\t\tclass=\"to-select-check\"\n\t\t\t\t\t\t\t\t\t\t:wrap=\"optionWrap\"\n\t\t\t\t\t\t\t\t\t\t:title=\"item[iLabelText]\"\n\t\t\t\t\t\t\t\t\t\twidth=\"full\"\n\t\t\t\t\t\t\t\t\t\t:label=\"item[iLabelText]\"\n\t\t\t\t\t\t\t\t\t\t:disabled=\"!!item.disabled\"\n\t\t\t\t\t\t\t\t\t\t:value=\"Boolean(selected.find(el => el[iValueText] === item[iValueText]))\"\n\t\t\t\t\t\t\t\t\t\t@change=\"\n\t\t\t\t\t\t\t\t\t\t\tvalue => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn multipleItemChange(value, item)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\"\n\t\t\t\t\t\t\t\t\t></to-checkbox>\n\t\t\t\t\t\t\t\t</to-grid>\n\t\t\t\t\t\t\t</template>\n\n\t\t\t\t\t\t\t<!-- 单选选项 -->\n\t\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t\t<!-- 单选选项网格 -->\n\t\t\t\t\t\t\t\t<to-grid :col=\"optionCol\" class=\"to-select-list\">\n\t\t\t\t\t\t\t\t\t<div v-for=\"item in options\" v-show=\"filterByValue(item)\" :key=\"item[iValueText]\" v-dis=\"!!item.disabled\" class=\"to-select-option-item\" :class=\"{ 'is-on': (selected as any)[iValueText] === item[iValueText] }\" @click.stop=\"itemChange(item)\">\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"item[iLabelText]\" class=\"to-select-option-item-text\">{{ item[iLabelText] }}</span>\n\t\t\t\t\t\t\t\t\t\t<span v-else class=\"to-select-option-item-text\">{{ placeholder }}</span>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</to-grid>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</to-scroll>\n\t\t\t\t\t</template>\n\t\t\t\t</slot>\n\t\t\t</template>\n\t\t</ToFloat>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, inject, nextTick } from 'vue'\nimport { t } from '@touchvue/locale'\nimport { selectProps, SelectValueType, SelectOptionsData } from './select'\nimport { useSetSelectClassStyle, useSelectOptionData } from './hooks'\nimport { useDevice } from '@touchvue/hooks'\n// import { isString } from '@touchvue/utils'\nimport { ToIcon, ToPadding, ToCheckbox, ToGrid, ToGridItem, ToScroll, ToButton, ToFloat, ToInput, ToSubmit, ToTag, ToHeader } from '@touchvue/components'\nimport { vColor, vDis } from '@touchvue/directives'\n\n/**\n * 【组件初始化】\n * created → 初始化内部变量 → setOptions() → 设置选项数据 → setValue() → 设置选中状态\n * 【点击选项:单选】\n * 点击选项 → @click.stop=\"itemChange(item)\" → itemChange() → change() → emit('update:modelValue', value)\n * 【点击选项:多选】\n * 点击选项 → @change=\"multipleItemChange(value, item)\" → multipleItemChange() → change() → emit('update:modelValue', value)\n * 【异步数据加载调用链】\n * getData() → 配置API参数 → 缓存检查 → HTTP请求 → 数据解析 → setValue() → 触发事件\n * 【modelValue变化监听】\n * watch(props.modelValue) → iValue.value更新 → setValue() → 重新设置选中状态\n * 【内部值iValue变化监听】\n * watch(iValue) → setSelected() → 触发change和update:modelValue事件 → valueChange()\n * 【选项过滤】\n * 输入框输入 → filterValue/multipleFilterValue更新 → 模板中v-show=\"filterByValue(item)\" → 动态显示/隐藏选项\n * 【多选批量操作】\n * 全选按钮点击 → selectAll() → allChange() → change() → emit('update:modelValue')\n * 反选按钮点击 → Deselect() → reverseChange() → change() → emit('update:modelValue')\n */\n\n// 定义组件名称\n\n\n// 定义props\nconst props = defineProps(selectProps)\n\n// 定义emits\nconst emit = defineEmits<{\n\tchange: [value: SelectValueType, option: any]\n\tselect: [value: string | number]\n\t'update:modelValue': [value: SelectValueType]\n\t'option-loaded': [options: any[]]\n}>()\n// inject\nconst ToForm = inject('ToForm', null) as any\nconst ToFormItem = inject('ToFormItem', null) as any\nconst $TouchUI = inject('$TouchUI', {\n\tcolors: ['primary', 'success', 'warning', 'danger', 'info', 'default', 'dark']\n}) as any\n\nconst { isPhone } = useDevice()\nconst $phone = isPhone.value\n\n/* ================================ 核心数据状态 ================================ */\n// 组件核心值状态\n/**\n * 当前值\n */\nconst iValue = ref<SelectValueType>(props.modelValue)\nconst valueStore = ref([])\nconst inited = ref(false)\n\n/* ================================ UI交互状态 ================================= */\n// 焦点状态\nconst focused = ref(false)\nconst blurByLayer = ref(false)\n\n// 弹层状态\nconst layerSlide = ref(false)\nconst layerPosition = ref('auto')\n\n// 组件状态\nconst disabled = ref(props.disabled)\nconst isChanging = ref(false)\n\n/* ================================ 输入状态 ================================ */\n// 输入框值\nconst filterValue = ref('')\nconst inputValue = ref('')\nconst multipleInputValue = ref('')\nconst multipleFilterValue = ref('')\nconst setDataInputValue = ref('')\n\n/* ================================ 加载状态 ================================ */\n// 数据加载状态\nconst dataLoading = ref(false)\n\n/* ================================ 验证状态 ================================ */\n// 错误提示状态\nconst errorTip = ref('')\nconst errorType = ref('rule')\n\n/* ================================ 配置状态 ================================ */\n// API配置\nconst iApiHeaders = ref({})\nconst iResPath = ref(props.resPath)\nconst iSuccessCode = ref(props.successCode)\nconst iApiParam = ref(props.apiParam)\nconst iApiLabel = ref(props.apiLabel)\nconst iErrorPath = ref(props.errorPath)\n\n// 显示配置\nconst iOptionWidth = ref(props.optionWidth)\nconst iLabelText = ref(props.labelText)\nconst iValueText = ref(props.valueText)\n\n/* ================================ DOM引用 ================================ */\n// DOM元素引用\nconst $el = ref(null)\nconst selector = ref(null)\nconst input = ref(null)\nconst filter = ref(null)\nconst optionLayer = ref(null)\nconst popupFilter = ref(null)\nconst popupInput = ref(null)\nconst trigger = ref(null)\n\n// const inputing = ref(false) // 未使用,已注释\n\n/* ================================ 选项数据状态 ================================ */\n// 选项数据\nconst options = ref<SelectOptionsData[]>([])\nconst anotherOptions = ref<SelectOptionsData[]>([])\n\n// 选中状态\nconst { selected } = useSelectOptionData({\n\tprops\n})\n\nconst filterByValue = (item: SelectOptionsData) => {\n\tif (!props.filterable) return true\n\tconst value = filterValue.value\n\tif (value === '') return true\n\treturn item[iLabelText.value].includes(value)\n}\n\nconst multipleFilter = (item: SelectOptionsData) => {\n\tif (!props.filterable) return true\n\tconst value = multipleFilterValue.value\n\tif (value === '') return true\n\treturn item[iLabelText.value].includes(value)\n}\n\nconst nomatch = computed(() => {\n\tlet nomatch = true\n\tlet value = props.multiple ? multipleFilterValue.value : filterValue.value\n\tif (value === '' || options.value.findIndex(option => option[iLabelText.value].includes(value)) > -1) {\n\t\tnomatch = false\n\t}\n\treturn nomatch\n})\n\nconst nodata = computed(() => {\n\treturn options.value.length === 0\n})\n\n// 选项数据处理方法\nconst setOptions = () => {\n\t// 同步选项\n\tif (props.data && props.data.length > 0) {\n\t\tsetData()\n\t}\n\n\t// 异步选项\n\tif (props.api) {\n\t\tgetData()\n\t}\n}\n\nconst setData = () => {\n\tif (props.data) {\n\t\tif (typeof props.data === 'string') {\n\t\t\t// 字符串模式传值(如::data=\"选项1, 选项2, 选项3\")\n\t\t\tlet arr = []\n\t\t\tfor (let i = 0; i < props.data.split(',').length; i++) {\n\t\t\t\tconst el = props.data.split(',')[i]\n\t\t\t\tlet obj = {}\n\t\t\t\tobj[iLabelText.value] = obj[iValueText.value] = el\n\t\t\t\tarr.push(obj)\n\t\t\t}\n\t\t\tif ($phone && props.filterable) {\n\t\t\t\toptions.value = arr.slice(0, 100)\n\t\t\t\tanotherOptions.value = arr.slice(100)\n\t\t\t} else {\n\t\t\t\toptions.value = arr\n\t\t\t}\n\t\t} else {\n\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\n\t\t\tif ($phone && props.filterable) {\n\t\t\t\toptions.value = props.data.slice(0, 100)\n\t\t\t\tanotherOptions.value = props.data.slice(100)\n\t\t\t} else {\n\t\t\t\t// 对象数组模式传值\n\t\t\t\toptions.value = [...props.data]\n\t\t\t}\n\t\t\t// 如果设置了方法,则替换为方法\n\t\t\tif (typeof props.setLabelFn === 'function') {\n\t\t\t\toptions.value.forEach(item => {\n\t\t\t\t\titem.label = props.setLabelFn(item)\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\t// 设置 selected\n\t\tsetValue()\n\t\tsetPlaceholder()\n\n\t\t// 触发选项加载完成事件\n\t\temit('option-loaded', options.value)\n\t}\n}\n\nconst getData = () => {\n\tif (props.api) {\n\t\t// 通过配置自动设置 labelText 与 valueText\n\t\tif ($TouchUI.staticDataApiConfig?.labelText && props.labelText === 'label') {\n\t\t\tiLabelText.value = $TouchUI.staticDataApiConfig.labelText\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.valueText && props.valueText === 'value') {\n\t\t\tiValueText.value = $TouchUI.staticDataApiConfig.valueText\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.resPath && !props.resPath) {\n\t\t\tiResPath.value = $TouchUI.staticDataApiConfig.resPath\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.apiParam && !props.apiParam) {\n\t\t\tiApiParam.value = $TouchUI.staticDataApiConfig.apiParam\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.apiHeaders && !props.apiHeaders) {\n\t\t\tiApiHeaders.value = $TouchUI.staticDataApiConfig.apiHeaders\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.apiLabel && !props.apiLabel) {\n\t\t\tiApiLabel.value = $TouchUI.staticDataApiConfig.apiLabel\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.errorPath && !props.errorPath) {\n\t\t\tiErrorPath.value = $TouchUI.staticDataApiConfig.errorPath\n\t\t}\n\t\tif ($TouchUI.staticDataApiConfig?.successCode && !props.successCode) {\n\t\t\tiSuccessCode.value = $TouchUI.staticDataApiConfig.successCode\n\t\t}\n\n\t\t// 从缓存中取数据,如果没有则异步获取\n\t\tif (sessionStorage.getItem('static.' + props.api)) {\n\t\t\toptions.value = JSON.parse(sessionStorage.getItem('static.' + props.api))\n\n\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\n\t\t\tif ($phone && props.filterable) {\n\t\t\t\tanotherOptions.value = options.value.slice(100)\n\t\t\t\toptions.value = options.value.slice(0, 100)\n\t\t\t}\n\n\t\t\t// 设置 selected\n\t\t\tsetValue()\n\t\t\tsetPlaceholder()\n\t\t\temit('option-loaded', options.value)\n\t\t} else {\n\t\t\tdataLoading.value = true\n\n\t\t\tlet action = ''\n\t\t\tlet param = { ...iApiParam.value }\n\n\t\t\tif (iApiLabel.value && props.api) {\n\t\t\t\tObject.assign(param, { [iApiLabel.value]: props.api })\n\t\t\t}\n\n\t\t\tif (props.api.indexOf('http') > -1) {\n\t\t\t\taction = props.api\n\t\t\t} else {\n\t\t\t\tif ($TouchUI.staticDataApiConfig?.action && $TouchUI.staticDataApiConfig.action.indexOf('=') > -1 && $TouchUI.staticDataApiConfig.action.indexOf('?') > -1) {\n\t\t\t\t\t// 兼容 GET 格式的 POST 请求\n\t\t\t\t\taction = $TouchUI.staticDataApiConfig.action + props.api\n\t\t\t\t} else {\n\t\t\t\t\taction = $TouchUI.staticDataApiConfig?.action || props.api\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst requestOptions = {\n\t\t\t\tdata: param,\n\t\t\t\taction,\n\t\t\t\theaders: Object.assign({}, iApiHeaders.value),\n\t\t\t\tonSuccess: res => {\n\t\t\t\t\tdataLoading.value = false\n\n\t\t\t\t\tif (typeof res === 'string') {\n\t\t\t\t\t\tres = JSON.parse(res)\n\t\t\t\t\t}\n\n\t\t\t\t\t// 直接返回一个 select 所需要的 data 对象时,不需要任何解析\n\t\t\t\t\t// 如:[{name:'张三', id:0},{name:'李四', id:1}]\n\t\t\t\t\tif (Array.isArray(res)) {\n\t\t\t\t\t\toptions.value = res\n\t\t\t\t\t\tsessionStorage.setItem('static.' + props.api, JSON.stringify(res))\n\n\t\t\t\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\n\t\t\t\t\t\tif ($phone && props.filterable) {\n\t\t\t\t\t\t\tanotherOptions.value = res.slice(100)\n\t\t\t\t\t\t\toptions.value = res.slice(0, 100)\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// 设置 selected\n\t\t\t\t\t\tsetValue()\n\t\t\t\t\t\tsetPlaceholder()\n\t\t\t\t\t\temit('option-loaded', options.value)\n\t\t\t\t\t} else if (res.code === iSuccessCode.value) {\n\t\t\t\t\t\t// 按照 json 格式返回,需要根据配置路径进行解析\n\t\t\t\t\t\t// 如:{ code:'0', data:[{name:'张三', id:0},{name:'李四', id:1}]}\n\t\t\t\t\t\tlet data = res\n\t\t\t\t\t\tif (iResPath.value) {\n\t\t\t\t\t\t\tlet resPath = iResPath.value.split('/')\n\t\t\t\t\t\t\tresPath.forEach(el => {\n\t\t\t\t\t\t\t\tdata = data[el]\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\toptions.value = data\n\t\t\t\t\t\tsessionStorage.setItem('static.' + props.api, JSON.stringify(data))\n\n\t\t\t\t\t\t// 如果是手机端,则先取前 100 项,再拼接后面的\n\t\t\t\t\t\tif ($phone && props.filterable) {\n\t\t\t\t\t\t\tanotherOptions.value = data.slice(100)\n\t\t\t\t\t\t\toptions.value = data.slice(0, 100)\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// 设置 selected\n\t\t\t\t\t\tsetValue()\n\t\t\t\t\t\tsetPlaceholder()\n\t\t\t\t\t\temit('option-loaded', options.value)\n\t\t\t\t\t} else {\n\t\t\t\t\t\toptions.value = []\n\t\t\t\t\t\tconsole.error(t('to.select.tip.error.res', `select api(${props.api})`))\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tonError: () => {\n\t\t\t\t\tdataLoading.value = false\n\t\t\t\t\tconsole.error(t('to.select.tip.error.api', `select api(${props.api}) `))\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst req = props.httpRequest(requestOptions)\n\t\t\tif (req && req.then) {\n\t\t\t\treq.then(requestOptions.onSuccess, requestOptions.onError)\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * 选项插入空选项“请选择”\n */\nconst setPlaceholder = () => {\n\tif (props.native) {\n\t\treturn\n\t}\n\t// 设置 placeholder\n\tif (!props.multiple && props.clearable && !props.inputable && !props.setDataFn && !props.filterable && (!props.optionDisplay || props.optionDisplay === 'float')) {\n\t\toptions.value.unshift({\n\t\t\t[iLabelText.value]: '',\n\t\t\t[iValueText.value]: ''\n\t\t})\n\t}\n}\n\nconst setValue = () => {\n\tif (props.multiple) {\n\t\tselected.value = []\n\t\tif (iValue.value) {\n\t\t\tconst arr = Array.isArray(iValue.value) ? iValue.value : iValue.value.toString().split(props.splitSymbol || ',')\n\t\t\tarr.forEach(item => {\n\t\t\t\tif (item && item.toString().trim()) {\n\t\t\t\t\tlet option = options.value.find(option => String(option[iValueText.value]) === String(item))\n\t\t\t\t\tif (option) {\n\t\t\t\t\t\tselected.value.push(option)\n\t\t\t\t\t} else if (props.inputable) {\n\t\t\t\t\t\t// 当输入一个不存在的值的时候,如果可自定义则显示,否则不显示\n\t\t\t\t\t\tselected.value.push({\n\t\t\t\t\t\t\t[iLabelText.value]: item,\n\t\t\t\t\t\t\t[iValueText.value]: item,\n\t\t\t\t\t\t\thide: false\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t} else {\n\t\tlet option = options.value.find(option => String(option[iValueText.value]) === String(iValue.value))\n\n\t\tif (option) {\n\t\t\tselected.value = option\n\t\t} else {\n\t\t\tif (iValue.value && props.inputable) {\n\t\t\t\tselected.value = {\n\t\t\t\t\t[iLabelText.value]: iValue.value,\n\t\t\t\t\t[iValueText.value]: iValue.value\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tselected.value = {\n\t\t\t\t\t[iLabelText.value]: iValue.value,\n\t\t\t\t\t[iValueText.value]: iValue.value\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tinited.value = true\n}\n\n// 选项变更处理方法\nconst itemChange = option => {\n\tif (option.disabled) {\n\t\treturn\n\t}\n\tif (props.multiple) {\n\t\tmultipleItemChange(true, option)\n\t} else {\n\t\tchange(option[iValueText.value], option)\n\t\tcloseLayer()\n\t}\n\tnextTick(() => {\n\t\temit('select', option)\n\t})\n}\n\n// 选择全部\nconst selectAll = () => {\n\tallChange()\n}\n\n// 反选\nconst deselect = () => {\n\treverseChange()\n}\n\n/**\n * 多选选项变更处理方法\n * @param value 选中状态\n * @param item 选项\n */\nconst multipleItemChange = (value: boolean, item: SelectOptionsData) => {\n\tif (item && item.disabled) return\n\n\tlet arr = iValue.value ? iValue.value.toString().split(props.splitSymbol || ',') : []\n\tlet selectedOptions = [...selected.value]\n\tif (value) {\n\t\tif (arr.indexOf(item[iValueText.value]) === -1) {\n\t\t\tarr.push(item[iValueText.value])\n\t\t\tselectedOptions.push(item)\n\t\t} else {\n\t\t\tarr = removeItem(arr, item[iValueText.value])\n\t\t\tselectedOptions = selectedOptions.filter(option => option[iValueText.value] !== value)\n\t\t}\n\t} else {\n\t\tarr = removeItem(arr, item[iValueText.value])\n\t\tselectedOptions = selectedOptions.filter(option => option[iValueText.value] !== value)\n\t}\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\n}\n\nconst resetLayer = () => {\n\tconst el = props.optionDisplay == 'popup' ? null : trigger.value\n\toptionLayer.value.set(el)\n}\n\nconst removeTag = (item: { [x: string]: any }) => {\n\tif (props.disabled || disabled.value) return\n\n\tlet arr = iValue.value.toString().split(props.splitSymbol || ',')\n\tarr = removeItem(arr, item[iValueText.value])\n\tlet selectedOptions = []\n\tselected.value.map(selectedItem => {\n\t\tif (selectedItem[iValueText.value] !== item[iValueText.value]) {\n\t\t\tselectedOptions.push(selectedItem)\n\t\t}\n\t})\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\n}\n\n// 工具方法\nconst removeItem = (arr, value) => {\n\tif (typeof arr === 'string') {\n\t\tarr = arr.split(',')\n\t}\n\tlet index = arr.indexOf(value)\n\tif (index > -1) {\n\t\tarr.splice(index, 1)\n\t}\n\treturn arr\n}\n\n// 选项处理相关的 watch 监听器\nwatch(\n\t() => props.data,\n\t() => {\n\t\tsetOptions()\n\t}\n)\n\nwatch(\n\t() => props.api,\n\t() => {\n\t\tsetOptions()\n\t}\n)\n\n// 初始化layerSlide设置\nconst initLayerSlide = () => {\n\t// 弹出模式\n\tif ($phone) {\n\t\tlayerSlide.value = true\n\t\tlayerPosition.value = 'bottom'\n\t}\n\tif (props.optionDisplay === 'popup' || ($phone && (props.filterable || props.inputable))) {\n\t\tlayerSlide.value = true\n\t\tlayerPosition.value = 'right'\n\t\tif (!props.optionWidth) {\n\t\t\tiOptionWidth.value = '100%'\n\t\t}\n\t}\n}\n\nconst onCreated = () => {\n\t// 初始化内部变量\n\tiLabelText.value = props.labelText\n\tiValueText.value = props.valueText\n\tiResPath.value = props.resPath\n\tiSuccessCode.value = props.successCode\n\tiApiParam.value = props.apiParam\n\tiApiHeaders.value = props.apiHeaders\n\tiApiLabel.value = props.apiLabel\n\tiErrorPath.value = props.errorPath\n\tiOptionWidth.value = props.optionWidth\n\n\t// 设置选项数据\n\tsetOptions()\n\n\t// 初始化弹层设置\n\tinitLayerSlide()\n}\n\nonCreated()\n\nwatch(\n\t() => props.apiParam,\n\t() => {\n\t\tiApiParam.value = props.apiParam\n\t\tif (props.api) {\n\t\t\tgetData()\n\t\t}\n\t},\n\t{ deep: true }\n)\n\nwatch(\n\t() => props.labelText,\n\tnewVal => {\n\t\tiLabelText.value = newVal\n\t\tsetValue()\n\t}\n)\n\nwatch(\n\t() => props.valueText,\n\tnewVal => {\n\t\tiValueText.value = newVal\n\t\tsetValue()\n\t}\n)\n\n/* ================================ 计算属性 ================================ */\n// 选项相关计算属性\nconst isAll = computed(() => {\n\tlet arr = []\n\toptions.value.map(item => {\n\t\t// 排除空的placeholder选项\n\t\tif (item[iValueText.value] !== '') {\n\t\t\tarr.push(item[iValueText.value])\n\t\t}\n\t})\n\tif (arr.sort().toString() === iValue.value.toString().split(',').sort().toString()) {\n\t\treturn true\n\t} else {\n\t\treturn false\n\t}\n})\n\n// 状态相关计算属性\nconst changed = computed(() => {\n\tif ((props.comparable || (ToForm && ToForm?.comparable)) && valueStore.value.length > 0 && iValue.value !== valueStore.value[0]) {\n\t\treturn true\n\t} else {\n\t\treturn false\n\t}\n})\n\n// 验证相关计算属性\nconst validateRequired = computed(() => {\n\tif (props.required) {\n\t\treturn 'true'\n\t} else if (ToFormItem && ToFormItem.required) {\n\t\treturn 'true'\n\t} else {\n\t\treturn 'false'\n\t}\n})\n\nconst validateDesc = computed(() => {\n\tif (props.desc) {\n\t\treturn props.desc\n\t} else if (ToFormItem && ToFormItem.label) {\n\t\treturn ToFormItem.label\n\t} else {\n\t\treturn ''\n\t}\n})\n\nconst validateValue = computed(() => {\n\tif (props.multiple) {\n\t\tif (selected.value.length > 0) {\n\t\t\treturn 'true'\n\t\t} else {\n\t\t\treturn ''\n\t\t}\n\t} else {\n\t\treturn selected.value[iValueText.value]\n\t}\n})\n\n/* ================================ 样式处理 ================================ */\nconst { setClass, setStyle } = useSetSelectClassStyle({\n\tprops,\n\tdisabled,\n\tselected,\n\tiValueText,\n\terrorTip,\n\tchanged,\n\tToForm\n})\n\nconst setOptionClass = computed(() => {\n\tlet arr: string[] = []\n\tif (props.mode) {\n\t\tfor (let i = 0; i < props.mode.split(' ').length; i++) {\n\t\t\tarr.push(`mode-${props.mode.split(' ')[i]}`)\n\t\t}\n\t}\n\treturn arr\n})\n\nconst getDynamicHeight = computed(() => {\n\tif (!trigger.value || !optionLayer.value) return ''\n\n\tconst triggerRect = (trigger.value as HTMLElement).getBoundingClientRect()\n\tconst windowHeight = window.innerHeight\n\t// 计算下拉框到可视区域底部的距离\n\tconst distanceToBottom = windowHeight - triggerRect.bottom\n\t// 计算下拉框到可视区域顶部的距离\n\tconst distanceToTop = triggerRect.top\n\t// 选择较大的距离并取 80% 作为最大高度\n\tconst maxHeight = Math.max(distanceToBottom, distanceToTop) * 0.8\n\treturn `${maxHeight}px`\n})\n\n/* ================================ 事件处理函数 ================================ */\n// 值变更事件\nconst change = (value, option) => {\n\tif (props.beforeChange) {\n\t\tlet result = props.beforeChange(value, option)\n\t\tif (result === false) {\n\t\t\treturn\n\t\t}\n\t}\n\tisChanging.value = true\n\tiValue.value = value\n\tsetValue()\n\temit('change', value, option)\n\temit('update:modelValue', value)\n\tnextTick(() => {\n\t\tisChanging.value = false\n\t})\n}\n\n// 选项面板控制\nconst optionLayerTrigger = ref(null)\n\n/**\n * 打开选项面板\n */\nconst openOptionLayer = () => {\n\tconst el = props.optionDisplay == 'popup' ? null : trigger.value\n\toptionLayer.value.toggle(el)\n}\n\nconst click = () => {\n\tif (!props.native && !(props.disabled || disabled.value)) {\n\t\ttoggleLayer()\n\t}\n}\n\nconst phoneCloseLayer = () => {\n\toptionLayer.value.close()\n\tif (props.filterable && $phone) {\n\t\toptions.value = options.value.slice(0, 100)\n\t}\n}\n\n// 弹层交互事件\nconst layerMousedown = () => {\n\tblurByLayer.value = true\n}\n\n// 焦点事件处理\nconst focus = () => {\n\terrorTip.value = ''\n\tfocused.value = true\n\t// layerSlide.value = true;\n}\n\nconst blur = () => {\n\tif (!blurByLayer.value) {\n\t\tfocused.value = false\n\t\tlayerSlide.value = false\n\t\tlayerClose()\n\t}\n\tblurByLayer.value = false\n}\n\nconst inputBlur = () => {\n\tif (!blurByLayer.value) {\n\t\tfocused.value = false\n\t\tlayerSlide.value = false\n\t\tlayerClose()\n\t}\n\tblurByLayer.value = false\n}\n\nconst inputFocus = () => {\n\tfocused.value = true\n\t// layerSlide.value = true;\n}\n\nconst filterBlur = () => {\n\tif (!blurByLayer.value) {\n\t\tfocused.value = false\n\t\tlayerSlide.value = false\n\t\tlayerClose()\n\t}\n\tblurByLayer.value = false\n}\n\nconst filterFocus = () => {\n\tfocused.value = true\n\t// layerSlide.value = true;\n}\n\nconst multipleInputBlur = () => {\n\tif (!blurByLayer.value) {\n\t\tfocused.value = false\n\t\tlayerSlide.value = false\n\t\tlayerClose()\n\t}\n\tblurByLayer.value = false\n}\n\nconst multipleInputFocus = () => {\n\tfocused.value = true\n}\n\nconst multipleFilterBlur = () => {\n\tif (!blurByLayer.value) {\n\t\tfocused.value = false\n\t\tlayerSlide.value = false\n\t\tlayerClose()\n\t}\n\tblurByLayer.value = false\n}\n\nconst multipleFilterFocus = () => {\n\tfocused.value = true\n}\n\n// 输入事件处理\nconst inputInput = (e: { keyCode: number }) => {\n\tif (e.keyCode === 13) {\n\t\tif (props.setDataFn) {\n\t\t\tprops.setDataFn(setDataInputValue.value, setDataLoading)\n\t\t}\n\t}\n\t// layerSlide.value = true;\n}\n\nconst filterInput = () => {\n\t// layerSlide.value = true;\n}\n\nconst filterClear = () => {\n\tiValue.value = ''\n}\n\nconst setDataLoading = loading => {\n\tdataLoading.value = loading\n}\n\n// 键盘事件处理\nconst enter = () => {\n\tif (!(props.multiple && props.inputable)) {\n\t\ttoggleLayer()\n\t} else {\n\t\t// 判断重复项\n\t\tlet value = props.filterable ? multipleFilterValue.value : multipleInputValue.value\n\t\tif (selected.value.find(item => item[iLabelText.value] === value) || selected.value.find(item => item[iValueText.value] === value)) {\n\t\t\terrorTip.value = t('to.select.tip.error.repetition')\n\t\t\terrorType.value = 'rule'\n\t\t\treturn\n\t\t}\n\t\t// 判断空项\n\t\tif (!value.trim()) {\n\t\t\treturn\n\t\t}\n\t\tconst newOption = {\n\t\t\t[iLabelText.value]: value,\n\t\t\t[iValueText.value]: value\n\t\t}\n\t\tif (props.beforeChange) {\n\t\t\tconst fn = props.beforeChange(newOption)\n\t\t\tif (fn && fn.then) {\n\t\t\t\tfn.then(() => {\n\t\t\t\t\tselected.value.push(newOption)\n\t\t\t\t}).catch(() => {})\n\t\t\t} else {\n\t\t\t\tif (fn) {\n\t\t\t\t\tselected.value.push(newOption)\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tselected.value.push(newOption)\n\t\t}\n\t\tif (props.filterable) {\n\t\t\tmultipleFilterValue.value = ''\n\t\t} else {\n\t\t\tmultipleInputValue.value = ''\n\t\t}\n\t\tif ($phone) {\n\t\t\tif (props.filterable) {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tpopupFilter.value?.focus()\n\t\t\t\t}, 500)\n\t\t\t} else {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tpopupInput.value?.focus()\n\t\t\t\t}, 500)\n\t\t\t}\n\t\t}\n\t}\n}\n\n// 清除操作\nconst clear = () => {\n\tclearChange()\n}\n\nconst clearChange = () => {\n\tif (props.multiple) {\n\t\tchange('', [])\n\t} else {\n\t\tchange('', null)\n\t}\n\tif (props.focusWhenClear && props.filterable) {\n\t\tlayerSlide.value = true\n\t}\n}\n\n// 批量选择操作\nconst allChange = () => {\n\tlet arr = []\n\tlet selectedOptions = []\n\toptions.value.forEach(item => {\n\t\t// 排除空的placeholder选项和禁用项\n\t\tif (item[iValueText.value] !== '' && !item.disabled) {\n\t\t\tarr.push(item[iValueText.value])\n\t\t\tselectedOptions.push(item)\n\t\t}\n\t})\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\n}\n\nconst reverseChange = () => {\n\tlet arr = []\n\tlet selectedOptions = []\n\tlet selectedArr = iValue.value ? iValue.value.toString().split(props.splitSymbol || ',') : []\n\toptions.value.forEach(item => {\n\t\t// 排除空的placeholder选项和禁用项,选择当前未选中的项\n\t\tif (item[iValueText.value] !== '' && !item.disabled && selectedArr.indexOf(item[iValueText.value].toString()) === -1) {\n\t\t\tarr.push(item[iValueText.value])\n\t\t\tselectedOptions.push(item)\n\t\t}\n\t})\n\tchange(arr.join(props.splitSymbol || ','), selectedOptions)\n}\n\n/* ================================ 监听器 ================================ */\n// selected监听器(从vue2迁移)\nwatch(\n\tselected,\n\tval => {\n\t\t// 调整弹层位置(如果弹层存在且显示)\n\t\tif (props.optionDisplay !== 'none' && optionLayer.value?.show) {\n\t\t\tnextTick(() => {\n\t\t\t\t// Vue3中使用optionLayer的调整方法\n\t\t\t\tif (optionLayer.value?.set && optionLayerTrigger.value) {\n\t\t\t\t\toptionLayer.value.set(optionLayerTrigger.value)\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (props.multiple) {\n\t\t\tlet arr = []\n\t\t\tval.map(item => {\n\t\t\t\tarr.push(item[iValueText.value])\n\t\t\t})\n\t\t\tif (inited.value) {\n\t\t\t\tiValue.value = arr.join(props.splitSymbol || ',')\n\t\t\t}\n\t\t\tif (optionLayer.value) {\n\t\t\t\tresetLayer()\n\t\t\t}\n\t\t} else {\n\t\t\tif (inited.value) {\n\t\t\t\tisChanging.value = true // 避免同时给 inputable 的 input 设置 inputValue 的时候触发 change 事件\n\t\t\t\tiValue.value = String(val[iValueText.value] || '')\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tisChanging.value = false\n\t\t\t\t}, 100)\n\t\t\t}\n\t\t}\n\n\t\tif (!inited.value) {\n\t\t\tif (Array.isArray(props.modelValue)) {\n\t\t\t\tiValue.value = props.modelValue.join(',')\n\t\t\t} else {\n\t\t\t\tiValue.value = props.modelValue\n\t\t\t}\n\t\t\tnextTick(() => {\n\t\t\t\tinited.value = true\n\t\t\t})\n\t\t}\n\t},\n\t{ deep: true }\n)\n\n// 输入值监听\nwatch(inputValue, () => {\n\tif (!isChanging.value) {\n\t\tiValue.value = inputValue.value\n\t}\n})\n\nwatch(filterValue, val => {\n\tif (props.inputable) {\n\t\tnextTick(() => {\n\t\t\tiValue.value = val\n\t\t})\n\t}\n})\n\nwatch(setDataInputValue, val => {\n\tif (props.setDataFn) {\n\t\tprops.setDataFn(val)\n\t}\n\tif (props.inputable) {\n\t\tnextTick(() => {\n\t\t\tiValue.value = val\n\t\t})\n\t}\n})\n\n// 核心值监听\nwatch(iValue, val => {\n\tsetSelected(val)\n\t// let finalVal: SelectValueType = val\n\t// if (props.multiple && props.valueType === 'array' && isString(val)) {\n\t// \tfinalVal = val ? String(val).split(',') : []\n\t// }\n\t// emit('change', finalVal, selected.value)\n\temit('update:modelValue', val)\n\tif ($TouchUI) {\n\t\t// const detail = {\n\t\t// \tname: 'ToSelect',\n\t\t// \tvalue: val,\n\t\t// \tdesc: validateDesc.value,\n\t\t// \tselected: selected.value\n\t\t// }\n\t\t// $TouchUI.commitTouchReport(detail)\n\t}\n\tvalueChange(val)\n})\n\n// Props监听\nwatch(\n\t() => props.modelValue,\n\tnewVal => {\n\t\t// if (!isChanging.value) {\n\t\tiValue.value = String(newVal || '')\n\t\tsetValue()\n\t\t// }\n\t},\n\t{ immediate: true }\n)\n\n// 配置相关监听\nwatch(\n\t() => props.apiHeaders,\n\t() => {\n\t\tiApiHeaders.value = props.apiHeaders\n\t},\n\t{ deep: true }\n)\n\nwatch(\n\t() => props.resPath,\n\tnewVal => {\n\t\tiResPath.value = newVal\n\t}\n)\n\nwatch(\n\t() => props.successCode,\n\tnewVal => {\n\t\tiSuccessCode.value = newVal\n\t}\n)\n\nwatch(\n\t() => props.apiLabel,\n\tnewVal => {\n\t\tiApiLabel.value = newVal\n\t}\n)\n\nwatch(\n\t() => props.errorPath,\n\tnewVal => {\n\t\tiErrorPath.value = newVal\n\t}\n)\n\nwatch(\n\t() => props.optionWidth,\n\tnewVal => {\n\t\tiOptionWidth.value = newVal\n\t}\n)\n\nwatch(\n\t() => props.disabled,\n\tnewVal => {\n\t\tdisabled.value = newVal\n\t}\n)\n\n/* ================================ 工具方法 ================================ */\nconst getLabel = val => {\n\tconst obj = options.value.find(item => item[iValueText.value] === val)\n\tif (obj && obj[iLabelText.value]) {\n\t\treturn obj[iLabelText.value]\n\t}\n\treturn null\n}\n\n// 设置选中项方法(从vue2迁移)\nconst setSelected = (val: any) => {\n\tlet selectedData = JSON.parse(JSON.stringify(selected.value))\n\n\tif (!props.multiple) {\n\t\t// 单选模式\n\t\tif (options.value.findIndex(option => option[iValueText.value] === val) === -1) {\n\t\t\tselectedData = {\n\t\t\t\t[iLabelText.value]: val,\n\t\t\t\t[iValueText.value]: val\n\t\t\t}\n\t\t} else {\n\t\t\tselectedData = options.value.find(option => option[iValueText.value] === val)\n\t\t}\n\t} else {\n\t\t// 多选模式\n\t\tif (val === '') {\n\t\t\tselectedData = []\n\t\t} else {\n\t\t\tconst arr = Array.isArray(val) ? unique(val) : unique(val.split(props.splitSymbol || ','))\n\t\t\tlet selectedArr: any[] = []\n\t\t\tarr.map((item: string) => {\n\t\t\t\tif (item && item.trim()) {\n\t\t\t\t\tif (options.value.findIndex(option => String(option[iValueText.value]) === String(item)) === -1) {\n\t\t\t\t\t\tselectedArr.push({\n\t\t\t\t\t\t\t[iLabelText.value]: item,\n\t\t\t\t\t\t\t[iValueText.value]: item,\n\t\t\t\t\t\t\thide: !props.inputable // 当输入一个不存在的值的时候,如果可自定义则显示,否则不显示\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\toptions.value.map(option => {\n\t\t\t\t\t\t\tif (String(option[iValueText.value]) === String(item)) {\n\t\t\t\t\t\t\t\tselectedArr.push(option)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\tselectedData = selectedArr\n\t\t}\n\t}\n\n\tif (props.beforeChange) {\n\t\tconst fn = props.beforeChange(selectedData)\n\t\tif (fn && fn.then) {\n\t\t\tfn.then(() => {\n\t\t\t\tselected.value = selectedData\n\t\t\t}).catch(() => {})\n\t\t} else {\n\t\t\tif (fn) {\n\t\t\t\tselected.value = selectedData\n\t\t\t}\n\t\t}\n\t} else {\n\t\tselected.value = selectedData\n\t}\n}\n\n// 数组去重工具函数\nconst unique = arr => {\n\treturn [...new Set(arr)]\n}\n\nconst valueChange = val => {\n\tif (!props.multiple) {\n\t\tif (props.inputable) {\n\t\t\tinputValue.value = getLabel(val) || val\n\t\t}\n\t\tif (props.filterable && !props.inputable) {\n\t\t\tfilterValue.value = getLabel(val) || ''\n\t\t}\n\t\tif (props.filterable && props.inputable) {\n\t\t\tfilterValue.value = getLabel(val) || val\n\t\t}\n\t\tif (props.setDataFn && !props.inputable) {\n\t\t\tsetDataInputValue.value = getLabel(val) || ''\n\t\t}\n\t\tif (props.setDataFn && props.inputable) {\n\t\t\tsetDataInputValue.value = getLabel(val) || val\n\t\t}\n\t}\n}\n\n/* ================================ 弹层控制方法 ================================ */\nconst layerClose = () => {\n\tif (!props.multiple) {\n\t\tif (props.filterable && !props.inputable) {\n\t\t\tif (iValue.value) {\n\t\t\t\tconst label = getLabel(iValue.value)\n\t\t\t\tif (label) {\n\t\t\t\t\tfilterValue.value = label\n\t\t\t\t} else {\n\t\t\t\t\tfilterValue.value = ''\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfilterValue.value = ''\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif (props.inputable) {\n\t\t\tmultipleInputValue.value = ''\n\t\t}\n\t\tif (props.filterable) {\n\t\t\tmultipleFilterValue.value = ''\n\t\t}\n\t}\n}\n\nconst closeLayer = () => {\n\toptionLayer.value.close()\n\tlayerClose()\n}\n\nconst toggleLayer = () => {\n\topenOptionLayer()\n}\n\nconst layerOpen = () => {\n\tsetTimeout(() => {\n\t\tresetLayer()\n\t}, 10)\n}\n\n/* ============================ 对比方法 ========================================== */\n// 记录历史值,以便对比或者取值\nconst compare = () => {\n\tvalueStore.value.unshift(iValue.value)\n}\nconst setDisabled = (f: boolean) => {\n\tdisabled.value = f\n}\n// 撤销\nconst restore = () => {\n\tiValue.value = valueStore.value[0]\n\tvalueStore.value.splice(0, 1)\n}\n\n/* ================================ 组件暴露 ================================ */\ndefineExpose({\n\tcloseLayer,\n\tsetSelected,\n\tcompare,\n\tsetDisabled,\n\trestore,\n\tchanged,\n\terrorTip,\n\terrorType\n})\n</script>\n"],"names":["DO_defineComponent","inject","useDevice","ref","useSelectOptionData","computed","nomatch","t","option","nextTick","watch","useSetSelectClassStyle","_a","_createCommentVNode","_createElementBlock","id","_normalizeClass","_unref","tabindex","_createElementVNode","verifiable","rule","required","trim","$slots","_renderSlot","prefix","icon","_createBlock","ToIcon","native","clearable","placeholder","_openBlock","_Fragment","_renderList","_toDisplayString","multiple","inputable","filterable","setDataFn","unit","ToInput","spChars","focusWhenClear","useAllText","allText","ToTag","removable","_createTextVNode","arrowType","suffix","_createVNode","ToFloat","optionDisplay","optionAlign","lazy","ToPadding","ToGrid","ToGridItem","ToHeader","ToButton","fillet","nodataText","nomatchText","ToScroll","optionCol","ToCheckbox","optionWrap","_vShow","vDis","_withModifiers","ToSubmit"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../packages/components/slide/index.ts"],"sourcesContent":["import Slide from './src/slide.vue'\
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../packages/components/slide/index.ts"],"sourcesContent":["import Slide from './src/slide.vue'\nimport { SFCWithInstall, withInstall } from '@touchvue/utils'\n\nexport const ToSlide: SFCWithInstall<typeof Slide> = withInstall(Slide)\n\nexport * from './src/instance'\n"],"names":["withInstall","Slide"],"mappings":";;;;;AAGa,MAAA,OAAA,GAAwCA,kBAAYC,aAAK;;;;"}
|