vft 0.0.507 → 0.0.511
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/dist/index.css +1 -1
- package/es/components/affix/affix.vue2.js +2 -2
- package/es/components/alert/alert.vue2.js +1 -1
- package/es/components/autocomplete/autocomplete.vue2.js +1 -1
- package/es/components/avatar/avatar.vue2.js +2 -2
- package/es/components/avatar-stack/avatar-stack.vue2.js +7 -7
- package/es/components/backtop/backtop.vue2.js +1 -1
- package/es/components/breadcrumb/breadcrumb-item.vue2.js +3 -3
- package/es/components/breadcrumb/breadcrumb.vue2.js +2 -2
- package/es/components/button/button-group.vue2.js +2 -2
- package/es/components/button/button.vue2.js +7 -7
- package/es/components/button/use-button.js +3 -3
- package/es/components/card/card.vue2.js +6 -6
- package/es/components/carousel/carousel-item.vue2.js +3 -3
- package/es/components/carousel/carousel.vue2.js +1 -1
- package/es/components/carousel/use-carousel.js +1 -1
- package/es/components/cascader/cascader.vue2.js +203 -202
- package/es/components/cascader-panel/index.vue2.js +1 -1
- package/es/components/cascader-panel/menu.vue2.js +50 -49
- package/es/components/cascader-panel/node.vue2.js +8 -8
- package/es/components/check-tag/check-tag.vue2.js +2 -2
- package/es/components/checkbox/checkbox-button.vue2.js +13 -13
- package/es/components/checkbox/checkbox-group.vue2.js +3 -3
- package/es/components/checkbox/checkbox.vue2.js +1 -1
- package/es/components/clamp/clamp.vue2.js +2 -2
- package/es/components/clamp-toggle/clamp-toggle.vue2.js +21 -17
- package/es/components/clamp-tooltip/clamp-tooltip.vue2.js +6 -6
- package/es/components/col/col.vue2.js +2 -2
- package/es/components/collapse/collapse-item.vue2.js +2 -2
- package/es/components/collapse/collapse.vue2.js +2 -2
- package/es/components/collapse-transition/collapse-transition.vue2.js +2 -2
- package/es/components/color-picker/color-picker.vue2.js +134 -133
- package/es/components/color-picker/components/alpha-slider.vue2.js +2 -2
- package/es/components/color-picker/components/hue-slider.vue.js +2 -2
- package/es/components/color-picker/components/predefine.vue.js +3 -3
- package/es/components/color-picker/components/sv-panel.vue.js +2 -2
- package/es/components/config-provider/config-provider.vue.d.ts +2 -0
- package/es/components/config-provider/config-provider.vue2.js +5 -4
- package/es/components/config-provider/constants.d.ts +1 -0
- package/es/components/config-provider/constants.js +3 -2
- package/es/components/config-provider/hooks/use-global-config.js +33 -30
- package/es/components/config-provider/index.d.ts +9 -0
- package/es/components/config-provider/index.js +6 -5
- package/es/components/container/aside.vue2.js +2 -2
- package/es/components/container/container.vue2.js +2 -2
- package/es/components/container/footer.vue2.js +2 -2
- package/es/components/container/header.vue2.js +2 -2
- package/es/components/container/main.vue2.js +2 -2
- package/es/components/context-menu/context-menu.vue2.js +1 -1
- package/es/components/countdown/countdown.vue2.js +2 -2
- package/es/components/date-picker/composables/use-basic-date-table.js +83 -82
- package/es/components/date-picker/composables/use-month-range-header.js +15 -14
- package/es/components/date-picker/composables/use-panel-date-range.js +24 -23
- package/es/components/date-picker/date-picker-com/basic-date-table.vue2.js +6 -6
- package/es/components/date-picker/date-picker-com/basic-month-table.vue2.js +40 -39
- package/es/components/date-picker/date-picker-com/basic-year-table.vue2.js +41 -40
- package/es/components/date-picker/date-picker-com/panel-date-pick.vue2.js +184 -183
- package/es/components/date-picker/date-picker-com/panel-date-range.vue2.js +225 -224
- package/es/components/date-picker/date-picker-com/panel-month-range.vue2.js +12 -12
- package/es/components/date-picker/date-picker-com/panel-year-range.vue2.js +12 -12
- package/es/components/date-picker/props/basic-date-table.js +3 -3
- package/es/components/date-picker/props/basic-month-table.js +3 -3
- package/es/components/date-picker/props/basic-year-table.js +3 -3
- package/es/components/date-time-select/date-time-select.vue2.js +39 -36
- package/es/components/descriptions/description.vue2.js +1 -1
- package/es/components/descriptions/descriptions-row.vue2.js +10 -10
- package/es/components/dialog/dialog-content.vue2.js +3 -3
- package/es/components/dialog/dialog.vue2.js +5 -5
- package/es/components/divider/divider.vue2.js +5 -5
- package/es/components/drawer/drawer.vue2.js +4 -4
- package/es/components/dropdown/dropdown-item-impl.vue.d.ts +1 -1
- package/es/components/dropdown/dropdown-item-impl.vue2.js +3 -3
- package/es/components/dropdown/dropdown-item.vue.d.ts +1 -1
- package/es/components/dropdown/dropdown-item.vue2.js +2 -2
- package/es/components/dropdown/dropdown-menu.vue2.js +2 -2
- package/es/components/dropdown/dropdown.vue.d.ts +1 -1
- package/es/components/dropdown/dropdown.vue2.js +68 -67
- package/es/components/dropdown/index.d.ts +33 -33
- package/es/components/empty/empty.vue2.js +39 -38
- package/es/components/footer-layout/footer-layout.vue2.js +2 -2
- package/es/components/form/form-item.vue2.js +16 -16
- package/es/components/form/form.vue2.js +2 -2
- package/es/components/full-screen/full-screen.vue2.js +18 -17
- package/es/components/header-layout/header-layout.vue2.js +1 -1
- package/es/components/horizontal-menu/horizontal-menu.vue2.js +3 -3
- package/es/components/icon/icon.vue2.js +3 -3
- package/es/components/icon-text/icon-text.vue2.js +1 -1
- package/es/components/iframe-layout/iframe-layout.vue2.js +4 -4
- package/es/components/iframe-layout/iframe-page.vue2.js +2 -2
- package/es/components/image/image.vue2.js +60 -59
- package/es/components/image-viewer/image-viewer.vue2.js +43 -42
- package/es/components/index.d.ts +1 -0
- package/es/components/index.js +214 -210
- package/es/components/input/input.vue2.js +2 -2
- package/es/components/input-number/input-number.vue2.js +4 -4
- package/es/components/input-tag/composables/use-input-tag.js +1 -1
- package/es/components/input-tag/input-tag.vue2.js +7 -7
- package/es/components/link/link.vue2.js +1 -1
- package/es/components/list-cell/list-cell.vue2.js +1 -1
- package/es/components/logo/logo.vue2.js +10 -10
- package/es/components/md-comment/md-comment.vue2.js +2 -2
- package/es/components/md-container/md-container.vue2.js +75 -74
- package/es/components/md-container/toc.js +37 -36
- package/es/components/menu/menu-collapse-transition.vue.js +2 -2
- package/es/components/menu/menu-item-group.vue2.js +7 -7
- package/es/components/menu/menu-item.vue2.js +1 -1
- package/es/components/message/message.vue2.js +3 -3
- package/es/components/message-box/index.d.ts +4 -0
- package/es/components/message-box/index.js +14 -0
- package/es/components/message-box/message-box.vue.d.ts +103 -0
- package/es/components/message-box/message-box.vue.js +4 -0
- package/es/components/message-box/message-box.vue2.js +358 -0
- package/es/components/message-box/method.d.ts +3 -0
- package/es/components/message-box/method.js +101 -0
- package/es/components/message-box/style/css.d.ts +2 -0
- package/es/components/message-box/style/css.js +3 -0
- package/es/components/message-box/style/index.d.ts +2 -0
- package/es/components/message-box/style/index.js +3 -0
- package/es/components/message-box/types.d.ts +202 -0
- package/es/components/message-box/types.js +1 -0
- package/es/components/modal/index.d.ts +1 -0
- package/es/components/modal/modal-footer-action.vue2.js +25 -24
- package/es/components/modal/modal.vue.d.ts +1 -0
- package/es/components/modal/modal.vue2.js +30 -28
- package/es/components/multiple-tabs/multiple-tabs.vue2.js +17 -16
- package/es/components/multiple-tabs/tab-content.vue2.js +2 -2
- package/es/components/multiple-tabs/use/use-tab-dropdown.js +54 -53
- package/es/components/notification/notification.vue2.js +1 -1
- package/es/components/overlay/overlay.vue2.js +1 -1
- package/es/components/page-wrapper/page-wrapper.vue2.js +2 -2
- package/es/components/pagination/components/jumper.vue2.js +2 -2
- package/es/components/pagination/components/next.vue2.js +4 -4
- package/es/components/pagination/components/pager.vue2.js +1 -1
- package/es/components/pagination/components/prev.vue2.js +4 -4
- package/es/components/pagination/components/sizes.vue2.js +2 -2
- package/es/components/pagination/components/total.vue2.js +2 -2
- package/es/components/popconfirm/popconfirm.vue2.js +40 -39
- package/es/components/popover/popover.vue2.js +1 -1
- package/es/components/popper/arrow.vue2.js +2 -2
- package/es/components/popper/content.vue2.js +2 -2
- package/es/components/popper/trigger.vue2.js +4 -4
- package/es/components/progress/progress.vue2.js +1 -1
- package/es/components/progress-i/progress-i.vue2.js +2 -2
- package/es/components/qrcode/qrcode.vue2.js +1 -1
- package/es/components/radio/radio-button.vue2.js +2 -2
- package/es/components/radio/radio-group.vue2.js +3 -3
- package/es/components/radio/radio.vue2.js +2 -2
- package/es/components/rate/rate.vue2.js +6 -6
- package/es/components/router-view-content/router-view-content.vue2.js +7 -7
- package/es/components/roving-focus-group/roving-focus-group.vue2.js +2 -2
- package/es/components/roving-focus-group/roving-focus-item.vue2.js +2 -2
- package/es/components/row/row.vue2.js +2 -2
- package/es/components/scrollbar/bar.vue2.js +2 -2
- package/es/components/scrollbar/scrollbar.vue2.js +7 -7
- package/es/components/scrollbar/thumb.vue2.js +2 -2
- package/es/components/search/search.vue2.js +78 -76
- package/es/components/segmented/segmented.vue2.js +7 -7
- package/es/components/select/group-item.vue.js +2 -2
- package/es/components/select/option-item.vue.js +2 -2
- package/es/components/select/select.vue.js +1 -1
- package/es/components/select/useSelect.js +232 -231
- package/es/components/skeleton/skeleton-item.vue2.js +2 -2
- package/es/components/skeleton/skeleton.vue2.js +8 -8
- package/es/components/slider/button.vue2.js +2 -2
- package/es/components/slider/slider.vue2.js +1 -1
- package/es/components/space/space.js +1 -1
- package/es/components/statistic/statistic.vue2.js +17 -17
- package/es/components/steps/item.vue2.js +11 -11
- package/es/components/steps/steps.vue2.js +2 -2
- package/es/components/super-form/super-form-action.vue2.js +11 -11
- package/es/components/super-form/super-form-item.vue2.js +5 -4
- package/es/components/super-form/super-form.vue2.js +7 -7
- package/es/components/super-form/use/helper.js +12 -12
- package/es/components/super-form/use/use-form.js +8 -8
- package/es/components/switch/switch.vue2.js +1 -1
- package/es/components/table/field.js +34 -33
- package/es/components/table/table.vue2.js +154 -157
- package/es/components/table/use/use-data-source.js +90 -90
- package/es/components/tabs/tab-bar.vue2.js +2 -2
- package/es/components/tabs/tab-pane.vue2.js +6 -6
- package/es/components/teleport/teleport.vue2.js +2 -2
- package/es/components/time-picker/common/picker-range-trigger.vue2.js +2 -2
- package/es/components/time-picker/common/picker.vue2.js +8 -8
- package/es/components/time-picker/time-picker-com/basic-time-spinner.vue2.js +1 -1
- package/es/components/time-picker/time-picker-com/panel-time-pick.vue2.js +66 -65
- package/es/components/time-picker/time-picker-com/panel-time-range.vue2.js +134 -133
- package/es/components/time-select/time-select.vue2.js +3 -3
- package/es/components/timeline/timeline-item.vue2.js +1 -1
- package/es/components/tooltip/content.vue2.js +6 -6
- package/es/components/tooltip/tooltip.vue2.js +1 -1
- package/es/components/tooltip/trigger.vue2.js +2 -2
- package/es/components/transfer/transfer-panel.vue2.js +59 -58
- package/es/components/transfer/transfer.vue2.js +70 -69
- package/es/components/tree/tree-node.vue.js +1 -1
- package/es/components/tree/tree.vue2.js +60 -59
- package/es/components/upload/index.d.ts +3 -3
- package/es/components/upload/upload-content.vue.d.ts +2 -2
- package/es/components/upload/upload-content.vue2.js +76 -73
- package/es/components/upload/upload-dragger.vue2.js +2 -2
- package/es/components/upload/upload-list.vue2.js +46 -45
- package/es/components/upload/upload.vue.d.ts +2 -2
- package/es/components/upload/upload.vue2.js +87 -85
- package/es/components/upload/utils.js +29 -29
- package/es/components/verify-code/verify-code.vue2.js +2 -2
- package/es/components/watermark/watermark.vue2.js +2 -2
- package/es/constants/date.d.ts +1 -1
- package/es/constants/date.js +9 -1
- package/es/hooks/use-id/index.js +2 -2
- package/es/hooks/use-z-index/index.js +3 -3
- package/es/index.d.ts +1 -0
- package/es/index.js +43 -38
- package/es/locale/index.d.js +1 -0
- package/es/locale/index.d.ts +26 -0
- package/es/locale/index.js +10 -0
- package/es/locale/lang/en.d.ts +183 -0
- package/es/locale/lang/en.js +241 -0
- package/es/locale/lang/zh-cn.d.ts +183 -0
- package/es/locale/lang/zh-cn.js +241 -0
- package/es/locale/lang/zh-tw.d.ts +183 -0
- package/es/locale/lang/zh-tw.js +241 -0
- package/es/locale/use-locale.d.ts +17 -0
- package/es/locale/use-locale.js +56 -0
- package/es/package.json.d.ts +1 -1
- package/es/package.json.js +1 -1
- package/es/plugin.js +5 -3
- package/es/utils/helper.js +2 -2
- package/es/utils/ns-cover.js +1 -1
- package/es/utils/vue/vnode.js +4 -4
- package/lib/components/button/use-button.cjs +1 -1
- package/lib/components/cascader/cascader.vue2.cjs +1 -1
- package/lib/components/cascader-panel/menu.vue2.cjs +4 -4
- package/lib/components/clamp-toggle/clamp-toggle.vue2.cjs +1 -1
- package/lib/components/color-picker/color-picker.vue2.cjs +1 -1
- package/lib/components/config-provider/config-provider.vue.d.ts +2 -0
- package/lib/components/config-provider/config-provider.vue2.cjs +1 -1
- package/lib/components/config-provider/constants.cjs +1 -1
- package/lib/components/config-provider/constants.d.ts +1 -0
- package/lib/components/config-provider/hooks/use-global-config.cjs +1 -1
- package/lib/components/config-provider/index.cjs +1 -1
- package/lib/components/config-provider/index.d.ts +9 -0
- package/lib/components/date-picker/composables/use-basic-date-table.cjs +1 -1
- package/lib/components/date-picker/composables/use-month-range-header.cjs +1 -1
- package/lib/components/date-picker/composables/use-panel-date-range.cjs +1 -1
- package/lib/components/date-picker/date-picker-com/basic-month-table.vue2.cjs +1 -1
- package/lib/components/date-picker/date-picker-com/basic-year-table.vue2.cjs +1 -1
- package/lib/components/date-picker/date-picker-com/panel-date-pick.vue2.cjs +1 -1
- package/lib/components/date-picker/date-picker-com/panel-date-range.vue2.cjs +1 -1
- package/lib/components/date-time-select/date-time-select.vue2.cjs +1 -1
- package/lib/components/dropdown/dropdown-item-impl.vue.d.ts +1 -1
- package/lib/components/dropdown/dropdown-item.vue.d.ts +1 -1
- package/lib/components/dropdown/dropdown.vue.d.ts +1 -1
- package/lib/components/dropdown/dropdown.vue2.cjs +1 -1
- package/lib/components/dropdown/index.d.ts +33 -33
- package/lib/components/empty/empty.vue2.cjs +1 -1
- package/lib/components/full-screen/full-screen.vue2.cjs +1 -1
- package/lib/components/image/image.vue2.cjs +1 -1
- package/lib/components/image-viewer/image-viewer.vue2.cjs +1 -1
- package/lib/components/index.cjs +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/md-container/md-container.vue2.cjs +1 -1
- package/lib/components/md-container/toc.cjs +1 -1
- package/lib/components/message-box/index.cjs +1 -0
- package/lib/components/message-box/index.d.ts +4 -0
- package/lib/components/message-box/message-box.vue.cjs +1 -0
- package/lib/components/message-box/message-box.vue.d.ts +103 -0
- package/lib/components/message-box/message-box.vue2.cjs +1 -0
- package/lib/components/message-box/method.cjs +1 -0
- package/lib/components/message-box/method.d.ts +3 -0
- package/lib/components/message-box/style/css.cjs +1 -0
- package/lib/components/message-box/style/css.d.ts +2 -0
- package/lib/components/message-box/style/index.cjs +1 -0
- package/lib/components/message-box/style/index.d.ts +2 -0
- package/lib/components/message-box/types.cjs +1 -0
- package/lib/components/message-box/types.d.ts +202 -0
- package/lib/components/modal/index.d.ts +1 -0
- package/lib/components/modal/modal-footer-action.vue2.cjs +1 -1
- package/lib/components/modal/modal.vue.d.ts +1 -0
- package/lib/components/modal/modal.vue2.cjs +1 -1
- package/lib/components/multiple-tabs/multiple-tabs.vue2.cjs +1 -1
- package/lib/components/multiple-tabs/use/use-tab-dropdown.cjs +1 -1
- package/lib/components/popconfirm/popconfirm.vue2.cjs +1 -1
- package/lib/components/search/search.vue2.cjs +1 -1
- package/lib/components/select/useSelect.cjs +1 -1
- package/lib/components/super-form/super-form-item.vue2.cjs +1 -1
- package/lib/components/super-form/use/helper.cjs +1 -1
- package/lib/components/super-form/use/use-form.cjs +1 -1
- package/lib/components/table/field.cjs +1 -1
- package/lib/components/table/table.vue2.cjs +1 -1
- package/lib/components/table/use/use-data-source.cjs +1 -1
- package/lib/components/time-picker/time-picker-com/panel-time-pick.vue2.cjs +1 -1
- package/lib/components/time-picker/time-picker-com/panel-time-range.vue2.cjs +1 -1
- package/lib/components/transfer/transfer-panel.vue2.cjs +1 -1
- package/lib/components/transfer/transfer.vue2.cjs +1 -1
- package/lib/components/tree/tree.vue2.cjs +1 -1
- package/lib/components/upload/index.d.ts +3 -3
- package/lib/components/upload/upload-content.vue.d.ts +2 -2
- package/lib/components/upload/upload-content.vue2.cjs +1 -1
- package/lib/components/upload/upload-list.vue2.cjs +1 -1
- package/lib/components/upload/upload.vue.d.ts +2 -2
- package/lib/components/upload/upload.vue2.cjs +1 -1
- package/lib/components/upload/utils.cjs +1 -1
- package/lib/constants/date.cjs +1 -1
- package/lib/constants/date.d.ts +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/locale/index.cjs +1 -0
- package/lib/locale/index.d.cjs +1 -0
- package/lib/locale/index.d.ts +26 -0
- package/lib/locale/lang/en.cjs +1 -0
- package/lib/locale/lang/en.d.ts +183 -0
- package/lib/locale/lang/zh-cn.cjs +1 -0
- package/lib/locale/lang/zh-cn.d.ts +183 -0
- package/lib/locale/lang/zh-tw.cjs +1 -0
- package/lib/locale/lang/zh-tw.d.ts +183 -0
- package/lib/locale/use-locale.cjs +1 -0
- package/lib/locale/use-locale.d.ts +17 -0
- package/lib/package.json.cjs +1 -1
- package/lib/package.json.d.ts +1 -1
- package/lib/plugin.cjs +1 -1
- package/package.json +2 -2
- package/theme-style/index.css +1 -1
- package/theme-style/src/super-form.scss +0 -1
- package/theme-style/src/table.scss +4 -0
- package/theme-style/vft-super-form.css +1 -1
- package/theme-style/vft-table.css +1 -1
- package/web-types.json +1 -1
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import type { Action, MessageBoxState, MessageBoxType } from './types';
|
|
2
|
+
interface Props {
|
|
3
|
+
/** 按钮尺寸 */
|
|
4
|
+
buttonSize?: 'large' | 'default' | 'small';
|
|
5
|
+
/** 是否显示遮罩 */
|
|
6
|
+
modal?: boolean;
|
|
7
|
+
/** 是否锁定 body 滚动 */
|
|
8
|
+
lockScroll?: boolean;
|
|
9
|
+
/** 是否显示关闭按钮 */
|
|
10
|
+
showClose?: boolean;
|
|
11
|
+
/** 点击遮罩是否关闭 */
|
|
12
|
+
closeOnClickModal?: boolean;
|
|
13
|
+
/** 按 ESC 是否关闭 */
|
|
14
|
+
closeOnPressEscape?: boolean;
|
|
15
|
+
/** hash 改变时是否关闭 */
|
|
16
|
+
closeOnHashChange?: boolean;
|
|
17
|
+
/** 内容是否居中 */
|
|
18
|
+
center?: boolean;
|
|
19
|
+
/** 是否可拖拽 */
|
|
20
|
+
draggable?: boolean;
|
|
21
|
+
/** 拖拽时是否允许溢出视口 */
|
|
22
|
+
overflow?: boolean;
|
|
23
|
+
/** 按钮是否使用圆角 */
|
|
24
|
+
roundButton?: boolean;
|
|
25
|
+
/** 自定义挂载节点 */
|
|
26
|
+
container?: string;
|
|
27
|
+
/** boxType,由 alert / confirm / prompt 内部传入 */
|
|
28
|
+
boxType?: MessageBoxType;
|
|
29
|
+
}
|
|
30
|
+
declare function doClose(): void;
|
|
31
|
+
declare function handleAction(action: Action): void;
|
|
32
|
+
declare function handleClose(): void;
|
|
33
|
+
declare function __VLS_template(): {
|
|
34
|
+
default?(_: {}): any;
|
|
35
|
+
};
|
|
36
|
+
declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>, {
|
|
37
|
+
visible: import("vue").Ref<boolean, boolean>;
|
|
38
|
+
state: {
|
|
39
|
+
autofocus: boolean;
|
|
40
|
+
title: string | undefined;
|
|
41
|
+
message: string | import("vue").VNode;
|
|
42
|
+
type: import("./types").MessageBoxMessageType;
|
|
43
|
+
icon: string;
|
|
44
|
+
closeIcon: string;
|
|
45
|
+
customClass: string;
|
|
46
|
+
customStyle: Record<string, string | number>;
|
|
47
|
+
showInput: boolean;
|
|
48
|
+
inputValue: string;
|
|
49
|
+
inputPlaceholder: string;
|
|
50
|
+
inputType: string;
|
|
51
|
+
inputPattern: RegExp | null;
|
|
52
|
+
inputValidator: import("./types").MessageBoxInputValidator;
|
|
53
|
+
inputErrorMessage: string;
|
|
54
|
+
showConfirmButton: boolean;
|
|
55
|
+
showCancelButton: boolean;
|
|
56
|
+
action: Action;
|
|
57
|
+
dangerouslyUseHTMLString: boolean;
|
|
58
|
+
confirmButtonText: string;
|
|
59
|
+
cancelButtonText: string;
|
|
60
|
+
confirmButtonType: import("./types").MessageBoxButtonType;
|
|
61
|
+
cancelButtonType: import("./types").MessageBoxButtonType;
|
|
62
|
+
confirmButtonLoading: boolean;
|
|
63
|
+
cancelButtonLoading: boolean;
|
|
64
|
+
confirmButtonLoadingIcon: string;
|
|
65
|
+
cancelButtonLoadingIcon: string;
|
|
66
|
+
confirmButtonClass: string;
|
|
67
|
+
confirmButtonDisabled: boolean;
|
|
68
|
+
cancelButtonClass: string;
|
|
69
|
+
editorErrorMessage: string;
|
|
70
|
+
beforeClose: null | ((action: Action, instance: MessageBoxState, done: () => void) => void);
|
|
71
|
+
callback: null | import("./types").Callback;
|
|
72
|
+
distinguishCancelAndClose: boolean;
|
|
73
|
+
modalFade: boolean;
|
|
74
|
+
modalClass: string;
|
|
75
|
+
validateError: boolean;
|
|
76
|
+
zIndex: number;
|
|
77
|
+
};
|
|
78
|
+
doClose: typeof doClose;
|
|
79
|
+
handleClose: typeof handleClose;
|
|
80
|
+
handleAction: typeof handleAction;
|
|
81
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
82
|
+
vanish: () => void;
|
|
83
|
+
action: (action: Action) => void;
|
|
84
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & Readonly<{
|
|
85
|
+
onAction?: ((action: Action) => any) | undefined;
|
|
86
|
+
onVanish?: (() => any) | undefined;
|
|
87
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
88
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
89
|
+
export default _default;
|
|
90
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
91
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
92
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
93
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
94
|
+
} : {
|
|
95
|
+
type: import('vue').PropType<T[K]>;
|
|
96
|
+
required: true;
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
100
|
+
new (): {
|
|
101
|
+
$slots: S;
|
|
102
|
+
};
|
|
103
|
+
};
|
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
import { defineComponent as J, ref as p, reactive as se, computed as v, watch as F, nextTick as T, onMounted as ie, onBeforeUnmount as re, openBlock as u, createBlock as y, Transition as ue, withCtx as x, withDirectives as V, createVNode as w, unref as t, createElementVNode as c, normalizeClass as i, withModifiers as E, normalizeStyle as q, createElementBlock as R, createCommentVNode as g, toDisplayString as h, withKeys as M, renderSlot as ce, resolveDynamicComponent as Z, vShow as S, createTextVNode as W } from "vue";
|
|
2
|
+
import { VftButton as j } from "../button/index.js";
|
|
3
|
+
import de from "../focus-trap/focus-trap.vue.js";
|
|
4
|
+
import "../focus-trap/utils.js";
|
|
5
|
+
import { VftIcon as z } from "../icon/index.js";
|
|
6
|
+
import { VftInput as fe } from "../input/index.js";
|
|
7
|
+
import { VftOverlay as me } from "../overlay/index.js";
|
|
8
|
+
import "@vueuse/core";
|
|
9
|
+
import { isFunction as pe, isString as ve } from "@vft/utils";
|
|
10
|
+
import "../config-provider/hooks/use-global-config.js";
|
|
11
|
+
import "lodash-es";
|
|
12
|
+
import "../form/index.js";
|
|
13
|
+
import { useDraggable as ye } from "../../hooks/use-draggable/index.js";
|
|
14
|
+
import { useId as G } from "../../hooks/use-id/index.js";
|
|
15
|
+
import { useLockscreen as ge } from "../../hooks/use-lockscreen/index.js";
|
|
16
|
+
import "../../hooks/use-model-toggle/index.js";
|
|
17
|
+
import { useNamespace as Ce } from "../../hooks/use-namespace/index.js";
|
|
18
|
+
import "@popperjs/core";
|
|
19
|
+
import { useSameTarget as Be } from "../../hooks/use-same-target/index.js";
|
|
20
|
+
import { useZIndex as be } from "../../hooks/use-z-index/index.js";
|
|
21
|
+
const xe = ["aria-label", "aria-describedby"], we = ["id"], he = J({
|
|
22
|
+
name: "VftMessageBox",
|
|
23
|
+
inheritAttrs: !1
|
|
24
|
+
}), qe = /* @__PURE__ */ J({
|
|
25
|
+
...he,
|
|
26
|
+
props: {
|
|
27
|
+
buttonSize: { default: "default" },
|
|
28
|
+
modal: { type: Boolean, default: !0 },
|
|
29
|
+
lockScroll: { type: Boolean, default: !0 },
|
|
30
|
+
showClose: { type: Boolean, default: !0 },
|
|
31
|
+
closeOnClickModal: { type: Boolean, default: !0 },
|
|
32
|
+
closeOnPressEscape: { type: Boolean, default: !0 },
|
|
33
|
+
closeOnHashChange: { type: Boolean, default: !0 },
|
|
34
|
+
center: { type: Boolean, default: !1 },
|
|
35
|
+
draggable: { type: Boolean, default: !1 },
|
|
36
|
+
overflow: { type: Boolean, default: !1 },
|
|
37
|
+
roundButton: { type: Boolean, default: !1 },
|
|
38
|
+
container: { default: "body" },
|
|
39
|
+
boxType: { default: "" }
|
|
40
|
+
},
|
|
41
|
+
emits: ["vanish", "action"],
|
|
42
|
+
setup(l, { expose: Q, emit: X }) {
|
|
43
|
+
const Y = X, L = {
|
|
44
|
+
primary: "icon-info-filled",
|
|
45
|
+
success: "icon-success-filled",
|
|
46
|
+
warning: "icon-warning-filled",
|
|
47
|
+
info: "icon-info-filled",
|
|
48
|
+
error: "icon-circle-close-filled"
|
|
49
|
+
}, a = Ce("message-box"), { nextZIndex: $ } = be(), d = p(!1), e = se({
|
|
50
|
+
autofocus: !0,
|
|
51
|
+
beforeClose: null,
|
|
52
|
+
callback: null,
|
|
53
|
+
cancelButtonText: "",
|
|
54
|
+
cancelButtonClass: "",
|
|
55
|
+
confirmButtonText: "",
|
|
56
|
+
confirmButtonClass: "",
|
|
57
|
+
cancelButtonType: "default",
|
|
58
|
+
confirmButtonType: "primary",
|
|
59
|
+
customClass: "",
|
|
60
|
+
customStyle: {},
|
|
61
|
+
dangerouslyUseHTMLString: !1,
|
|
62
|
+
distinguishCancelAndClose: !1,
|
|
63
|
+
icon: "",
|
|
64
|
+
closeIcon: "",
|
|
65
|
+
inputPattern: null,
|
|
66
|
+
inputPlaceholder: "",
|
|
67
|
+
inputType: "text",
|
|
68
|
+
inputValue: "",
|
|
69
|
+
inputValidator: void 0,
|
|
70
|
+
inputErrorMessage: "",
|
|
71
|
+
message: "",
|
|
72
|
+
modalFade: !0,
|
|
73
|
+
modalClass: "",
|
|
74
|
+
showCancelButton: !1,
|
|
75
|
+
showConfirmButton: !0,
|
|
76
|
+
type: "",
|
|
77
|
+
title: void 0,
|
|
78
|
+
showInput: !1,
|
|
79
|
+
action: "",
|
|
80
|
+
confirmButtonLoading: !1,
|
|
81
|
+
cancelButtonLoading: !1,
|
|
82
|
+
confirmButtonLoadingIcon: "icon-loading",
|
|
83
|
+
cancelButtonLoadingIcon: "icon-loading",
|
|
84
|
+
confirmButtonDisabled: !1,
|
|
85
|
+
editorErrorMessage: "",
|
|
86
|
+
validateError: !1,
|
|
87
|
+
zIndex: $()
|
|
88
|
+
}), D = G(), I = G(), O = v(() => {
|
|
89
|
+
const n = e.type;
|
|
90
|
+
return { [a.bm("icon", n)]: n && L[n] };
|
|
91
|
+
}), k = v(() => {
|
|
92
|
+
const n = e.type;
|
|
93
|
+
return e.icon || n && L[n] || "";
|
|
94
|
+
}), A = v(() => !!e.message), f = p(), H = p(), C = p(), B = p(), P = p(), K = v(() => l.buttonSize), _ = v(() => l.draggable), ee = v(() => l.overflow), { isDragging: te } = ye(
|
|
95
|
+
f,
|
|
96
|
+
H,
|
|
97
|
+
_,
|
|
98
|
+
ee
|
|
99
|
+
);
|
|
100
|
+
F(
|
|
101
|
+
() => e.inputValue,
|
|
102
|
+
async (n) => {
|
|
103
|
+
await T(), l.boxType === "prompt" && n && N();
|
|
104
|
+
},
|
|
105
|
+
{ immediate: !0 }
|
|
106
|
+
), F(
|
|
107
|
+
() => d.value,
|
|
108
|
+
(n) => {
|
|
109
|
+
n && (l.boxType !== "prompt" && (e.autofocus ? C.value = P.value?.$el ?? f.value : C.value = f.value), e.zIndex = $()), l.boxType === "prompt" && (n ? T().then(() => {
|
|
110
|
+
B.value && B.value.$el && (e.autofocus ? C.value = le() ?? f.value : C.value = f.value);
|
|
111
|
+
}) : (e.editorErrorMessage = "", e.validateError = !1));
|
|
112
|
+
}
|
|
113
|
+
), ie(async () => {
|
|
114
|
+
await T(), l.closeOnHashChange && window.addEventListener("hashchange", b);
|
|
115
|
+
}), re(() => {
|
|
116
|
+
l.closeOnHashChange && window.removeEventListener("hashchange", b);
|
|
117
|
+
});
|
|
118
|
+
function b() {
|
|
119
|
+
d.value && (d.value = !1, T(() => {
|
|
120
|
+
e.action && Y("action", e.action);
|
|
121
|
+
}));
|
|
122
|
+
}
|
|
123
|
+
function oe() {
|
|
124
|
+
l.closeOnClickModal && r(e.distinguishCancelAndClose ? "close" : "cancel");
|
|
125
|
+
}
|
|
126
|
+
const m = Be(oe);
|
|
127
|
+
function ne(n) {
|
|
128
|
+
if (e.inputType !== "textarea" && !B.value?.isComposing)
|
|
129
|
+
return n.preventDefault(), r("confirm");
|
|
130
|
+
}
|
|
131
|
+
function r(n) {
|
|
132
|
+
l.boxType === "prompt" && n === "confirm" && !N() || (e.action = n, e.beforeClose ? e.beforeClose?.(n, e, b) : b());
|
|
133
|
+
}
|
|
134
|
+
function N() {
|
|
135
|
+
if (l.boxType === "prompt") {
|
|
136
|
+
const n = e.inputPattern;
|
|
137
|
+
if (n && !n.test(e.inputValue || ""))
|
|
138
|
+
return e.editorErrorMessage = e.inputErrorMessage || "输入的数据不合法!", e.validateError = !0, !1;
|
|
139
|
+
const o = e.inputValidator;
|
|
140
|
+
if (pe(o)) {
|
|
141
|
+
const s = o(e.inputValue);
|
|
142
|
+
if (s === !1)
|
|
143
|
+
return e.editorErrorMessage = e.inputErrorMessage || "输入的数据不合法!", e.validateError = !0, !1;
|
|
144
|
+
if (ve(s))
|
|
145
|
+
return e.editorErrorMessage = s, e.validateError = !0, !1;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return e.editorErrorMessage = "", e.validateError = !1, !0;
|
|
149
|
+
}
|
|
150
|
+
function le() {
|
|
151
|
+
const n = B.value?.$refs;
|
|
152
|
+
return n?.input ?? n?.textarea;
|
|
153
|
+
}
|
|
154
|
+
function U() {
|
|
155
|
+
r("close");
|
|
156
|
+
}
|
|
157
|
+
function ae() {
|
|
158
|
+
l.closeOnPressEscape && U();
|
|
159
|
+
}
|
|
160
|
+
return l.lockScroll && ge(d, { ns: a }), Q({
|
|
161
|
+
visible: d,
|
|
162
|
+
state: e,
|
|
163
|
+
doClose: b,
|
|
164
|
+
handleClose: U,
|
|
165
|
+
handleAction: r
|
|
166
|
+
}), (n, o) => (u(), y(ue, {
|
|
167
|
+
name: "fade-in-linear",
|
|
168
|
+
onAfterLeave: o[11] || (o[11] = (s) => n.$emit("vanish"))
|
|
169
|
+
}, {
|
|
170
|
+
default: x(() => [
|
|
171
|
+
V(w(t(me), {
|
|
172
|
+
"z-index": e.zIndex,
|
|
173
|
+
"overlay-class": [t(a).is("message-box"), e.modalClass],
|
|
174
|
+
mask: l.modal
|
|
175
|
+
}, {
|
|
176
|
+
default: x(() => [
|
|
177
|
+
c("div", {
|
|
178
|
+
role: "dialog",
|
|
179
|
+
"aria-label": e.title,
|
|
180
|
+
"aria-modal": "true",
|
|
181
|
+
"aria-describedby": e.showInput ? void 0 : t(D),
|
|
182
|
+
class: i(`${t(a).namespace.value}-overlay-message-box`),
|
|
183
|
+
onClick: o[8] || (o[8] = //@ts-ignore
|
|
184
|
+
(...s) => t(m).onClick && t(m).onClick(...s)),
|
|
185
|
+
onMousedown: o[9] || (o[9] = //@ts-ignore
|
|
186
|
+
(...s) => t(m).onMousedown && t(m).onMousedown(...s)),
|
|
187
|
+
onMouseup: o[10] || (o[10] = //@ts-ignore
|
|
188
|
+
(...s) => t(m).onMouseup && t(m).onMouseup(...s))
|
|
189
|
+
}, [
|
|
190
|
+
w(t(de), {
|
|
191
|
+
loop: "",
|
|
192
|
+
trapped: d.value,
|
|
193
|
+
"focus-trap-el": f.value,
|
|
194
|
+
"focus-start-el": C.value,
|
|
195
|
+
onReleaseRequested: ae
|
|
196
|
+
}, {
|
|
197
|
+
default: x(() => [
|
|
198
|
+
c("div", {
|
|
199
|
+
ref_key: "rootRef",
|
|
200
|
+
ref: f,
|
|
201
|
+
class: i([
|
|
202
|
+
t(a).b(),
|
|
203
|
+
e.customClass,
|
|
204
|
+
t(a).is("draggable", l.draggable),
|
|
205
|
+
t(a).is("dragging", t(te)),
|
|
206
|
+
{ [t(a).m("center")]: l.center }
|
|
207
|
+
]),
|
|
208
|
+
style: q(e.customStyle),
|
|
209
|
+
tabindex: "-1",
|
|
210
|
+
onClick: o[7] || (o[7] = E(() => {
|
|
211
|
+
}, ["stop"]))
|
|
212
|
+
}, [
|
|
213
|
+
e.title !== null && e.title !== void 0 ? (u(), R("div", {
|
|
214
|
+
key: 0,
|
|
215
|
+
ref_key: "headerRef",
|
|
216
|
+
ref: H,
|
|
217
|
+
class: i([t(a).e("header"), { "show-close": l.showClose }])
|
|
218
|
+
}, [
|
|
219
|
+
c("div", {
|
|
220
|
+
class: i(t(a).e("title"))
|
|
221
|
+
}, [
|
|
222
|
+
k.value && l.center ? (u(), y(t(z), {
|
|
223
|
+
key: 0,
|
|
224
|
+
icon: k.value,
|
|
225
|
+
class: i([t(a).e("status"), O.value])
|
|
226
|
+
}, null, 8, ["icon", "class"])) : g("", !0),
|
|
227
|
+
c("span", null, h(e.title), 1)
|
|
228
|
+
], 2),
|
|
229
|
+
l.showClose ? (u(), R("button", {
|
|
230
|
+
key: 0,
|
|
231
|
+
type: "button",
|
|
232
|
+
class: i(t(a).e("headerbtn")),
|
|
233
|
+
"aria-label": "close",
|
|
234
|
+
onClick: o[0] || (o[0] = (s) => r(
|
|
235
|
+
e.distinguishCancelAndClose ? "close" : "cancel"
|
|
236
|
+
)),
|
|
237
|
+
onKeydown: o[1] || (o[1] = M(E((s) => r(
|
|
238
|
+
e.distinguishCancelAndClose ? "close" : "cancel"
|
|
239
|
+
), ["prevent"]), ["enter"]))
|
|
240
|
+
}, [
|
|
241
|
+
w(t(z), {
|
|
242
|
+
icon: e.closeIcon || "icon-close",
|
|
243
|
+
class: i(t(a).e("close"))
|
|
244
|
+
}, null, 8, ["icon", "class"])
|
|
245
|
+
], 34)) : g("", !0)
|
|
246
|
+
], 2)) : g("", !0),
|
|
247
|
+
c("div", {
|
|
248
|
+
id: t(D),
|
|
249
|
+
class: i(t(a).e("content"))
|
|
250
|
+
}, [
|
|
251
|
+
c("div", {
|
|
252
|
+
class: i(t(a).e("container"))
|
|
253
|
+
}, [
|
|
254
|
+
k.value && !l.center && A.value ? (u(), y(t(z), {
|
|
255
|
+
key: 0,
|
|
256
|
+
icon: k.value,
|
|
257
|
+
class: i([t(a).e("status"), O.value])
|
|
258
|
+
}, null, 8, ["icon", "class"])) : g("", !0),
|
|
259
|
+
A.value ? (u(), R("div", {
|
|
260
|
+
key: 1,
|
|
261
|
+
class: i(t(a).e("message"))
|
|
262
|
+
}, [
|
|
263
|
+
ce(n.$slots, "default", {}, () => [
|
|
264
|
+
e.dangerouslyUseHTMLString ? (u(), y(Z(e.showInput ? "label" : "p"), {
|
|
265
|
+
key: 1,
|
|
266
|
+
for: e.showInput ? t(I) : void 0,
|
|
267
|
+
innerHTML: e.message
|
|
268
|
+
}, null, 8, ["for", "innerHTML"])) : (u(), y(Z(e.showInput ? "label" : "p"), {
|
|
269
|
+
key: 0,
|
|
270
|
+
for: e.showInput ? t(I) : void 0,
|
|
271
|
+
textContent: h(e.message)
|
|
272
|
+
}, null, 8, ["for", "textContent"]))
|
|
273
|
+
])
|
|
274
|
+
], 2)) : g("", !0)
|
|
275
|
+
], 2),
|
|
276
|
+
V(c("div", {
|
|
277
|
+
class: i(t(a).e("input"))
|
|
278
|
+
}, [
|
|
279
|
+
w(t(fe), {
|
|
280
|
+
id: t(I),
|
|
281
|
+
ref_key: "inputRef",
|
|
282
|
+
ref: B,
|
|
283
|
+
modelValue: e.inputValue,
|
|
284
|
+
"onUpdate:modelValue": o[2] || (o[2] = (s) => e.inputValue = s),
|
|
285
|
+
type: e.inputType,
|
|
286
|
+
placeholder: e.inputPlaceholder,
|
|
287
|
+
"aria-invalid": e.validateError,
|
|
288
|
+
class: i({ invalid: e.validateError }),
|
|
289
|
+
onKeydown: M(ne, ["enter"])
|
|
290
|
+
}, null, 8, ["id", "modelValue", "type", "placeholder", "aria-invalid", "class"]),
|
|
291
|
+
c("div", {
|
|
292
|
+
class: i(t(a).e("errormsg")),
|
|
293
|
+
style: q({
|
|
294
|
+
visibility: e.editorErrorMessage ? "visible" : "hidden"
|
|
295
|
+
})
|
|
296
|
+
}, h(e.editorErrorMessage), 7)
|
|
297
|
+
], 2), [
|
|
298
|
+
[S, e.showInput]
|
|
299
|
+
])
|
|
300
|
+
], 10, we),
|
|
301
|
+
c("div", {
|
|
302
|
+
class: i(t(a).e("btns"))
|
|
303
|
+
}, [
|
|
304
|
+
e.showCancelButton ? (u(), y(t(j), {
|
|
305
|
+
key: 0,
|
|
306
|
+
type: e.cancelButtonType === "text" ? "default" : e.cancelButtonType,
|
|
307
|
+
text: e.cancelButtonType === "text",
|
|
308
|
+
loading: e.cancelButtonLoading,
|
|
309
|
+
class: i([e.cancelButtonClass]),
|
|
310
|
+
round: l.roundButton,
|
|
311
|
+
size: K.value,
|
|
312
|
+
onClick: o[3] || (o[3] = (s) => r("cancel")),
|
|
313
|
+
onKeydown: o[4] || (o[4] = M(E((s) => r("cancel"), ["prevent"]), ["enter"]))
|
|
314
|
+
}, {
|
|
315
|
+
default: x(() => [
|
|
316
|
+
W(h(e.cancelButtonText || "取消"), 1)
|
|
317
|
+
]),
|
|
318
|
+
_: 1
|
|
319
|
+
}, 8, ["type", "text", "loading", "class", "round", "size"])) : g("", !0),
|
|
320
|
+
V(w(t(j), {
|
|
321
|
+
ref_key: "confirmRef",
|
|
322
|
+
ref: P,
|
|
323
|
+
type: e.confirmButtonType === "text" ? "default" : e.confirmButtonType,
|
|
324
|
+
text: e.confirmButtonType === "text",
|
|
325
|
+
loading: e.confirmButtonLoading,
|
|
326
|
+
class: i([e.confirmButtonClass]),
|
|
327
|
+
round: l.roundButton,
|
|
328
|
+
disabled: e.confirmButtonDisabled,
|
|
329
|
+
size: K.value,
|
|
330
|
+
onClick: o[5] || (o[5] = (s) => r("confirm")),
|
|
331
|
+
onKeydown: o[6] || (o[6] = M(E((s) => r("confirm"), ["prevent"]), ["enter"]))
|
|
332
|
+
}, {
|
|
333
|
+
default: x(() => [
|
|
334
|
+
W(h(e.confirmButtonText || "确定"), 1)
|
|
335
|
+
]),
|
|
336
|
+
_: 1
|
|
337
|
+
}, 8, ["type", "text", "loading", "class", "round", "disabled", "size"]), [
|
|
338
|
+
[S, e.showConfirmButton]
|
|
339
|
+
])
|
|
340
|
+
], 2)
|
|
341
|
+
], 6)
|
|
342
|
+
]),
|
|
343
|
+
_: 3
|
|
344
|
+
}, 8, ["trapped", "focus-trap-el", "focus-start-el"])
|
|
345
|
+
], 42, xe)
|
|
346
|
+
]),
|
|
347
|
+
_: 3
|
|
348
|
+
}, 8, ["z-index", "overlay-class", "mask"]), [
|
|
349
|
+
[S, d.value]
|
|
350
|
+
])
|
|
351
|
+
]),
|
|
352
|
+
_: 3
|
|
353
|
+
}));
|
|
354
|
+
}
|
|
355
|
+
});
|
|
356
|
+
export {
|
|
357
|
+
qe as default
|
|
358
|
+
};
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { isString as g, hasOwn as u, isFunction as d, isElement as f, isObject as p, isUndefined as C } from "@vft/utils";
|
|
2
|
+
import { isClient as b } from "@vueuse/core";
|
|
3
|
+
import { debugWarn as A } from "../../utils/error.js";
|
|
4
|
+
import "../config-provider/hooks/use-global-config.js";
|
|
5
|
+
import { isVNode as h, render as E, createVNode as O } from "vue";
|
|
6
|
+
import "lodash-es";
|
|
7
|
+
import "../form/index.js";
|
|
8
|
+
import T from "./message-box.vue2.js";
|
|
9
|
+
const a = /* @__PURE__ */ new Map(), _ = (e) => {
|
|
10
|
+
let n = document.body;
|
|
11
|
+
return e.appendTo && (g(e.appendTo) && (n = document.querySelector(e.appendTo)), f(e.appendTo) && (n = e.appendTo), f(n) || (A(
|
|
12
|
+
"VftMessageBox",
|
|
13
|
+
"the appendTo option is not an HTMLElement. Falling back to document.body."
|
|
14
|
+
), n = document.body)), n;
|
|
15
|
+
}, i = (e, n) => {
|
|
16
|
+
const c = e.component?.proxy;
|
|
17
|
+
return () => c.handleAction(n);
|
|
18
|
+
}, v = (e, n, c = null) => {
|
|
19
|
+
const l = O(
|
|
20
|
+
T,
|
|
21
|
+
e,
|
|
22
|
+
d(e.message) || h(e.message) ? {
|
|
23
|
+
default: d(e.message) ? () => e.message({
|
|
24
|
+
confirm: i(l, "confirm"),
|
|
25
|
+
cancel: i(l, "cancel"),
|
|
26
|
+
close: i(l, "close")
|
|
27
|
+
}) : () => e.message
|
|
28
|
+
} : null
|
|
29
|
+
);
|
|
30
|
+
return l.appContext = c, E(l, n), _(e).appendChild(n.firstElementChild), l.component;
|
|
31
|
+
}, M = () => document.createElement("div"), w = (e, n) => {
|
|
32
|
+
const c = M();
|
|
33
|
+
e.onVanish = () => {
|
|
34
|
+
E(null, c), a.delete(s);
|
|
35
|
+
}, e.onAction = (t) => {
|
|
36
|
+
const m = a.get(s);
|
|
37
|
+
let o;
|
|
38
|
+
e.showInput ? o = { value: s.state.inputValue, action: t } : o = t, e.callback ? e.callback(o, l.proxy) : t === "cancel" || t === "close" ? e.distinguishCancelAndClose && t !== "cancel" ? m.reject("close") : m.reject("cancel") : m.resolve(o);
|
|
39
|
+
};
|
|
40
|
+
const l = v(e, c, n), s = l.proxy;
|
|
41
|
+
for (const t in e)
|
|
42
|
+
u(e, t) && !u(s.$props, t) && (s.state[t] = e[t]);
|
|
43
|
+
return s.visible = !0, s;
|
|
44
|
+
};
|
|
45
|
+
function r(e, n = null) {
|
|
46
|
+
if (!b) return Promise.reject();
|
|
47
|
+
let c;
|
|
48
|
+
return g(e) || h(e) ? e = {
|
|
49
|
+
message: e
|
|
50
|
+
} : c = e.callback, new Promise((l, s) => {
|
|
51
|
+
const t = w(
|
|
52
|
+
e,
|
|
53
|
+
n ?? r._context
|
|
54
|
+
);
|
|
55
|
+
a.set(t, {
|
|
56
|
+
options: e,
|
|
57
|
+
callback: c,
|
|
58
|
+
resolve: l,
|
|
59
|
+
reject: s
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
const x = ["alert", "confirm", "prompt"], S = {
|
|
64
|
+
alert: { closeOnPressEscape: !1, closeOnClickModal: !1 },
|
|
65
|
+
confirm: { showCancelButton: !0 },
|
|
66
|
+
prompt: { showCancelButton: !0, showInput: !0 }
|
|
67
|
+
};
|
|
68
|
+
x.forEach((e) => {
|
|
69
|
+
r[e] = y(
|
|
70
|
+
e
|
|
71
|
+
);
|
|
72
|
+
});
|
|
73
|
+
function y(e) {
|
|
74
|
+
return (n, c, l, s) => {
|
|
75
|
+
let t = "";
|
|
76
|
+
return p(c) ? (l = c, t = "") : C(c) ? t = "" : t = c, r(
|
|
77
|
+
Object.assign(
|
|
78
|
+
{
|
|
79
|
+
title: t,
|
|
80
|
+
message: n,
|
|
81
|
+
type: "",
|
|
82
|
+
...S[e]
|
|
83
|
+
},
|
|
84
|
+
l,
|
|
85
|
+
{
|
|
86
|
+
boxType: e
|
|
87
|
+
}
|
|
88
|
+
),
|
|
89
|
+
s
|
|
90
|
+
);
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
r.close = () => {
|
|
94
|
+
a.forEach((e, n) => {
|
|
95
|
+
n.doClose();
|
|
96
|
+
}), a.clear();
|
|
97
|
+
};
|
|
98
|
+
r._context = null;
|
|
99
|
+
export {
|
|
100
|
+
r as default
|
|
101
|
+
};
|