resolver-egretimp-plus 0.1.114 → 0.1.115
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/h5/index.js +1 -1
- package/package.json +1 -1
- package/src/components/packages-H5/CustomComponentCollapseH5.vue +6 -2
- package/src-bak/analysisComponent.jsx +343 -0
- package/src-bak/api/builtIn.js +10 -0
- package/src-bak/bpm/bpmInstance.js +388 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/application.js +8 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/component.js +97 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/datasource.js +88 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/index.js +3 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/udcSdkForIframe/UdcComponent.js +76 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/udcSdkForIframe/index.js +201 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/index.js +69 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/page.js +56 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/impl/utils.js +76 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/index.js +46 -0
- package/src-bak/bpm/udc-sdk-esm/cjs/utils.js +21 -0
- package/src-bak/components/childDialog/index.js +39 -0
- package/src-bak/components/childDialog/src/index.vue +185 -0
- package/src-bak/components/cmiFormItem/index.js +1 -0
- package/src-bak/components/cmiFormItem/src/index.vue +112 -0
- package/src-bak/components/confirmInstance-H5/index.js +53 -0
- package/src-bak/components/confirmInstance-H5/src/index.vue +54 -0
- package/src-bak/components/helper/FormPolyfill.jsx +25 -0
- package/src-bak/components/helper/calcTooltip.jsx +134 -0
- package/src-bak/components/helper/dock.js +141 -0
- package/src-bak/components/helper/eventOrchestration.js +763 -0
- package/src-bak/components/helper/resolver.js +163 -0
- package/src-bak/components/helper/table.jsx +103 -0
- package/src-bak/components/icons/date.vue +33 -0
- package/src-bak/components/icons/info.vue +62 -0
- package/src-bak/components/icons/loading.vue +19 -0
- package/src-bak/components/icons/question-filled.vue +8 -0
- package/src-bak/components/loading/index.js +6 -0
- package/src-bak/components/loading/loading.js +98 -0
- package/src-bak/components/loading/loading.scss +74 -0
- package/src-bak/components/loading/loading.vue +89 -0
- package/src-bak/components/loadingComponent/LoadingComponent.vue +33 -0
- package/src-bak/components/modal/index.js +9 -0
- package/src-bak/components/modal/modal.scss +195 -0
- package/src-bak/components/modal/modal.vue +201 -0
- package/src-bak/components/options/OptionsDefault.vue +47 -0
- package/src-bak/components/packages-H5/CmiButton.vue +120 -0
- package/src-bak/components/packages-H5/CmiCalendar.vue +152 -0
- package/src-bak/components/packages-H5/CmiCell.vue +87 -0
- package/src-bak/components/packages-H5/CmiCheckbox.vue +82 -0
- package/src-bak/components/packages-H5/CmiDatetimePicker.vue +98 -0
- package/src-bak/components/packages-H5/CmiDivider.vue +30 -0
- package/src-bak/components/packages-H5/CmiDropdownMenu.vue +58 -0
- package/src-bak/components/packages-H5/CmiInput.vue +69 -0
- package/src-bak/components/packages-H5/CmiLink.vue +28 -0
- package/src-bak/components/packages-H5/CmiPicker.vue +229 -0
- package/src-bak/components/packages-H5/CmiRadio.vue +29 -0
- package/src-bak/components/packages-H5/CmiSearch.vue +39 -0
- package/src-bak/components/packages-H5/CmiSelect.vue +84 -0
- package/src-bak/components/packages-H5/CustomComponentCardH5.vue +129 -0
- package/src-bak/components/packages-H5/CustomComponentColH5.vue +8 -0
- package/src-bak/components/packages-H5/CustomComponentCollapseH5.vue +137 -0
- package/src-bak/components/packages-H5/CustomComponentFormLayoutH5.vue +54 -0
- package/src-bak/components/packages-H5/CustomComponentTabPaneH5.vue +38 -0
- package/src-bak/components/packages-H5/CustomComponentTableH5.vue +352 -0
- package/src-bak/components/packages-H5/CustomComponentTabsH5.vue +170 -0
- package/src-bak/components/packages-web/CustomComponentCard.vue +40 -0
- package/src-bak/components/packages-web/CustomComponentCol.vue +66 -0
- package/src-bak/components/packages-web/CustomComponentCollapse.vue +164 -0
- package/src-bak/components/packages-web/CustomComponentCycle.vue +95 -0
- package/src-bak/components/packages-web/CustomComponentCycleTabPane.vue +155 -0
- package/src-bak/components/packages-web/CustomComponentDialog.vue +192 -0
- package/src-bak/components/packages-web/CustomComponentEditor.vue +50 -0
- package/src-bak/components/packages-web/CustomComponentFileExport.vue +60 -0
- package/src-bak/components/packages-web/CustomComponentFileImport.vue +60 -0
- package/src-bak/components/packages-web/CustomComponentFormLayout.vue +65 -0
- package/src-bak/components/packages-web/CustomComponentGrid.vue +29 -0
- package/src-bak/components/packages-web/CustomComponentGridCol.vue +29 -0
- package/src-bak/components/packages-web/CustomComponentInputDialog.vue +144 -0
- package/src-bak/components/packages-web/CustomComponentNativeTabPane.vue +84 -0
- package/src-bak/components/packages-web/CustomComponentPlain.vue +243 -0
- package/src-bak/components/packages-web/CustomComponentRow.vue +83 -0
- package/src-bak/components/packages-web/CustomComponentSelectEmployees.vue +203 -0
- package/src-bak/components/packages-web/CustomComponentSendMail.vue +62 -0
- package/src-bak/components/packages-web/CustomComponentSteps.vue +41 -0
- package/src-bak/components/packages-web/CustomComponentTabPane.vue +20 -0
- package/src-bak/components/packages-web/CustomComponentTable.jsx +813 -0
- package/src-bak/components/packages-web/CustomComponentTabs.vue +126 -0
- package/src-bak/components/packages-web/CustomComponentTree.vue +28 -0
- package/src-bak/components/packages-web/ElButton.vue +146 -0
- package/src-bak/components/packages-web/ElCheckbox.vue +97 -0
- package/src-bak/components/packages-web/ElDatePicker.vue +93 -0
- package/src-bak/components/packages-web/ElInput copy.jsx +393 -0
- package/src-bak/components/packages-web/ElInput.jsx +312 -0
- package/src-bak/components/packages-web/ElInputNumber.vue +81 -0
- package/src-bak/components/packages-web/ElPagination.vue +61 -0
- package/src-bak/components/packages-web/ElRadio.vue +47 -0
- package/src-bak/components/packages-web/ElSelect.jsx +249 -0
- package/src-bak/components/packages-web/ElSelect_bak.vue +155 -0
- package/src-bak/components/packages-web/ElText.jsx +187 -0
- package/src-bak/components/packages-web/ElTextaa.vue +169 -0
- package/src-bak/components/packages-web/ElTimePicker.vue +39 -0
- package/src-bak/components/patchComponents-H5.js +46 -0
- package/src-bak/components/patchComponents-web.js +46 -0
- package/src-bak/components/simpleFormItemPc/index.js +1 -0
- package/src-bak/components/simpleFormItemPc/src/index.vue +94 -0
- package/src-bak/components/table/index.ts +29 -0
- package/src-bak/components/table/src/composables/use-scrollbar.ts +30 -0
- package/src-bak/components/table/src/config.ts +256 -0
- package/src-bak/components/table/src/filter-panel.vue +260 -0
- package/src-bak/components/table/src/h-helper.ts +34 -0
- package/src-bak/components/table/src/layout-observer.ts +78 -0
- package/src-bak/components/table/src/store/current.ts +85 -0
- package/src-bak/components/table/src/store/expand.ts +76 -0
- package/src-bak/components/table/src/store/helper.ts +74 -0
- package/src-bak/components/table/src/store/index.ts +246 -0
- package/src-bak/components/table/src/store/tree.ts +230 -0
- package/src-bak/components/table/src/store/watcher.ts +543 -0
- package/src-bak/components/table/src/table/defaults.ts +402 -0
- package/src-bak/components/table/src/table/key-render-helper.ts +27 -0
- package/src-bak/components/table/src/table/style-helper.ts +378 -0
- package/src-bak/components/table/src/table/utils-helper.ts +47 -0
- package/src-bak/components/table/src/table-body/defaults.ts +52 -0
- package/src-bak/components/table/src/table-body/events-helper.ts +203 -0
- package/src-bak/components/table/src/table-body/index.ts +119 -0
- package/src-bak/components/table/src/table-body/render-helper.ts +283 -0
- package/src-bak/components/table/src/table-body/styles-helper.ts +164 -0
- package/src-bak/components/table/src/table-column/defaults.ts +237 -0
- package/src-bak/components/table/src/table-column/index.ts +202 -0
- package/src-bak/components/table/src/table-column/render-helper.ts +214 -0
- package/src-bak/components/table/src/table-column/watcher-helper.ts +88 -0
- package/src-bak/components/table/src/table-footer/index.ts +128 -0
- package/src-bak/components/table/src/table-footer/mapState-helper.ts +33 -0
- package/src-bak/components/table/src/table-footer/style-helper.ts +51 -0
- package/src-bak/components/table/src/table-header/event-helper.ts +213 -0
- package/src-bak/components/table/src/table-header/index.ts +244 -0
- package/src-bak/components/table/src/table-header/style.helper.ts +119 -0
- package/src-bak/components/table/src/table-header/utils-helper.ts +94 -0
- package/src-bak/components/table/src/table-layout.ts +259 -0
- package/src-bak/components/table/src/table.vue +389 -0
- package/src-bak/components/table/src/tableColumn.ts +3 -0
- package/src-bak/components/table/src/tokens.ts +5 -0
- package/src-bak/components/table/src/util.ts +521 -0
- package/src-bak/components/table/style/css.ts +5 -0
- package/src-bak/components/table/style/index.ts +5 -0
- package/src-bak/components/tabs/index.js +8 -0
- package/src-bak/components/tabs/src/constants.js +23 -0
- package/src-bak/components/tabs/src/tab-bar.js +8 -0
- package/src-bak/components/tabs/src/tab-bar.vue +92 -0
- package/src-bak/components/tabs/src/tab-nav.jsx +424 -0
- package/src-bak/components/tabs/src/tab-pane.js +16 -0
- package/src-bak/components/tabs/src/tab-pane.vue +80 -0
- package/src-bak/components/tabs/src/tabs.jsx +223 -0
- package/src-bak/components/tabs/style/css.js +2 -0
- package/src-bak/components/tabs/style/index.js +2 -0
- package/src-bak/components/thirdPartyFrame/index.js +32 -0
- package/src-bak/components/thirdPartyFrame/src/ThirdPartyFrame.vue +125 -0
- package/src-bak/enums/index.js +16 -0
- package/src-bak/hooks/configLoad.js +45 -0
- package/src-bak/hooks/index.js +189 -0
- package/src-bak/hooks/mock.js +6960 -0
- package/src-bak/hooks/pageConfig.js +127 -0
- package/src-bak/index.jsx +440 -0
- package/src-bak/renderer.jsx +77 -0
- package/src-bak/resolver-H5.vue +88 -0
- package/src-bak/resolver-common.vue +129 -0
- package/src-bak/resolver-web.vue +91 -0
- package/src-bak/rules/eventsSupplement.js +573 -0
- package/src-bak/rules/parseCondition.js +378 -0
- package/src-bak/rules/ruleUtils.js +273 -0
- package/src-bak/rules/rulesDriver.js +118 -0
- package/src-bak/rulesImp/events.js +588 -0
- package/src-bak/rulesImp/index.js +33 -0
- package/src-bak/rulesImp/ruleInstance.js +231 -0
- package/src-bak/rulesImp/ruleUtils.js +124 -0
- package/src-bak/theme/element/components/button.scss +122 -0
- package/src-bak/theme/element/components/card.scss +8 -0
- package/src-bak/theme/element/components/checkbox.scss +19 -0
- package/src-bak/theme/element/components/collapse.scss +174 -0
- package/src-bak/theme/element/components/common.scss +30 -0
- package/src-bak/theme/element/components/cycle.scss +0 -0
- package/src-bak/theme/element/components/date.scss +13 -0
- package/src-bak/theme/element/components/dialog.scss +44 -0
- package/src-bak/theme/element/components/form.scss +104 -0
- package/src-bak/theme/element/components/index.scss +55 -0
- package/src-bak/theme/element/components/input.scss +36 -0
- package/src-bak/theme/element/components/message.scss +48 -0
- package/src-bak/theme/element/components/pagination.scss +47 -0
- package/src-bak/theme/element/components/popper.scss +3 -0
- package/src-bak/theme/element/components/radio.scss +40 -0
- package/src-bak/theme/element/components/scrollbar.scss +14 -0
- package/src-bak/theme/element/components/select.scss +82 -0
- package/src-bak/theme/element/components/steps.scss +6 -0
- package/src-bak/theme/element/components/table.scss +218 -0
- package/src-bak/theme/element/components/tabs.scss +128 -0
- package/src-bak/theme/element/components/tag.scss +6 -0
- package/src-bak/theme/element/components/text.scss +20 -0
- package/src-bak/theme/element/components/textarea.scss +3 -0
- package/src-bak/theme/element/components/tree.scss +0 -0
- package/src-bak/theme/element/index.scss +55 -0
- package/src-bak/utils/cipher.js +141 -0
- package/src-bak/utils/common.js +664 -0
- package/src-bak/utils/const.js +259 -0
- package/src-bak/utils/defaultVal.js +92 -0
- package/src-bak/utils/dom.js +36 -0
- package/src-bak/utils/format.js +19 -0
- package/src-bak/utils/index.js +4 -0
- package/src-bak/utils/is.js +74 -0
- package/src-bak/utils/loadModule.js +75 -0
- package/src-bak/utils/preserveFunc.js +33 -0
- package/src-bak/utils/render.jsx +1138 -0
- package/src-bak/utils/request.js +136 -0
- package/src-bak/utils/respone.js +70 -0
- package/src-bak/utils/valid.js +89 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import Loading from '../icons/loading.vue'
|
|
3
|
+
</script>
|
|
4
|
+
<template>
|
|
5
|
+
<i class="loading-icon">
|
|
6
|
+
<Loading></Loading>
|
|
7
|
+
</i>
|
|
8
|
+
</template>
|
|
9
|
+
<style lang="scss" scoped>
|
|
10
|
+
.loading-icon {
|
|
11
|
+
--color: inherit;
|
|
12
|
+
height: 1em;
|
|
13
|
+
width: 1em;
|
|
14
|
+
line-height: 1em;
|
|
15
|
+
display: inline-flex;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
align-items: center;
|
|
18
|
+
position: relative;
|
|
19
|
+
fill: currentColor;
|
|
20
|
+
color: var(--color);
|
|
21
|
+
// font-size: inherit;
|
|
22
|
+
|
|
23
|
+
font-size: 18px;
|
|
24
|
+
color: #606266;
|
|
25
|
+
margin: 0 auto;
|
|
26
|
+
animation: loading-rotate 2s linear infinite;
|
|
27
|
+
}
|
|
28
|
+
@keyframes loading-rotate {
|
|
29
|
+
100% {
|
|
30
|
+
transform: rotate(360deg);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
</style>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { render, createVNode } from 'vue';
|
|
2
|
+
import modalObj from './modal.vue'
|
|
3
|
+
export const copyModal = (props = {}) => {
|
|
4
|
+
const container = document.createElement('div')
|
|
5
|
+
const vnode = createVNode(modalObj, props);
|
|
6
|
+
render(vnode, container);
|
|
7
|
+
const instance = vnode.component;
|
|
8
|
+
document.body.appendChild(container);
|
|
9
|
+
}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
.warning-modal {
|
|
2
|
+
.warning-modal-backdrop {
|
|
3
|
+
position: fixed;
|
|
4
|
+
top: 0;
|
|
5
|
+
right: 0;
|
|
6
|
+
bottom: 0;
|
|
7
|
+
left: 0;
|
|
8
|
+
z-index: 106000;
|
|
9
|
+
background-color: #000;
|
|
10
|
+
transition: all .3s;
|
|
11
|
+
opacity: 0.5;
|
|
12
|
+
visibility: initial;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.warning-modal {
|
|
16
|
+
|
|
17
|
+
position: fixed;
|
|
18
|
+
top: 0;
|
|
19
|
+
right: 0;
|
|
20
|
+
bottom: 0;
|
|
21
|
+
left: 0;
|
|
22
|
+
display: block;
|
|
23
|
+
z-index: 106000;
|
|
24
|
+
outline: 0;
|
|
25
|
+
|
|
26
|
+
.warning-modal-dialog {
|
|
27
|
+
position: relative;
|
|
28
|
+
width: 900px;
|
|
29
|
+
margin: 100px auto;
|
|
30
|
+
-webkit-transform: translate(0);
|
|
31
|
+
transform: translate(0);
|
|
32
|
+
|
|
33
|
+
.warning-modal-content {
|
|
34
|
+
.warning-icon {
|
|
35
|
+
i.aid::before {
|
|
36
|
+
color: #3271FE;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.waring-btn {
|
|
41
|
+
|
|
42
|
+
span,
|
|
43
|
+
div {
|
|
44
|
+
&:first-child {
|
|
45
|
+
background-color: #D0D3D6 !important;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.yes:last-child {
|
|
50
|
+
background-color: #3271FE !important;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.warning-tips {
|
|
58
|
+
width: 400px;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.warning-modal-content {
|
|
62
|
+
height: auto;
|
|
63
|
+
position: relative;
|
|
64
|
+
display: -webkit-box;
|
|
65
|
+
display: -ms-flexbox;
|
|
66
|
+
display: flex;
|
|
67
|
+
-webkit-box-orient: vertical;
|
|
68
|
+
-webkit-box-direction: normal;
|
|
69
|
+
-ms-flex-direction: column;
|
|
70
|
+
flex-direction: column;
|
|
71
|
+
background-color: #fff;
|
|
72
|
+
background-clip: padding-box;
|
|
73
|
+
border-radius: 4px;
|
|
74
|
+
box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .1);
|
|
75
|
+
outline: 0;
|
|
76
|
+
max-width: calc(100vw - 30px*2);
|
|
77
|
+
max-height: calc(100vh - 30px*2);
|
|
78
|
+
|
|
79
|
+
.warning-icon {
|
|
80
|
+
width: 100%;
|
|
81
|
+
height: auto;
|
|
82
|
+
text-align: center;
|
|
83
|
+
padding: 40px 0px 0px 0px;
|
|
84
|
+
|
|
85
|
+
i {
|
|
86
|
+
font-size: 80px;
|
|
87
|
+
color: #3271FE;
|
|
88
|
+
padding-bottom: 10px;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
p {
|
|
92
|
+
font-size: 24px;
|
|
93
|
+
color: #3271FE;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.waring-cnt {
|
|
98
|
+
width: 100%;
|
|
99
|
+
height: auto;
|
|
100
|
+
text-align: center;
|
|
101
|
+
border-radius: 0 0 0 4px;
|
|
102
|
+
cursor: pointer;
|
|
103
|
+
|
|
104
|
+
p {
|
|
105
|
+
font-size: 18px;
|
|
106
|
+
margin-bottom: 0rem;
|
|
107
|
+
|
|
108
|
+
span:first-child {
|
|
109
|
+
color: #455155;
|
|
110
|
+
opacity: 0.6;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
span:last-child {
|
|
114
|
+
color: #455155;
|
|
115
|
+
opacity: 0.9;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.waring-btn {
|
|
121
|
+
width: 100%;
|
|
122
|
+
overflow: hidden;
|
|
123
|
+
margin-top: 20px;
|
|
124
|
+
cursor: pointer;
|
|
125
|
+
|
|
126
|
+
span {
|
|
127
|
+
display: inline-block;
|
|
128
|
+
width: 100%;
|
|
129
|
+
float: left;
|
|
130
|
+
height: 50px;
|
|
131
|
+
line-height: 50px;
|
|
132
|
+
text-align: center;
|
|
133
|
+
font-size: 18px;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.no {
|
|
137
|
+
background: #E5E8E8;
|
|
138
|
+
border-bottom-left-radius: 4px;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.yes {
|
|
142
|
+
background: #3271FE;
|
|
143
|
+
color: #fff;
|
|
144
|
+
border-bottom-right-radius: 4px;
|
|
145
|
+
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.reject-btn {
|
|
150
|
+
margin-top: 0px !important;
|
|
151
|
+
|
|
152
|
+
span {
|
|
153
|
+
width: 50%;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.warning-modal-close {
|
|
160
|
+
padding: 10px 10px 0px 0px;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
._copymodal {
|
|
165
|
+
.waring-cnt {
|
|
166
|
+
word-break: break-word;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.maxheight {
|
|
170
|
+
max-height: 500px;
|
|
171
|
+
overflow-y: auto;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.copycontent-l {
|
|
175
|
+
padding-right: 15px;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.copycontent-r {
|
|
179
|
+
color: rgb(255, 128, 0) !important;
|
|
180
|
+
max-width: 70%;
|
|
181
|
+
word-break: break-word;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.copycontent {
|
|
185
|
+
display: flex;
|
|
186
|
+
justify-content: center;
|
|
187
|
+
cursor: pointer;
|
|
188
|
+
font-size: 18px;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.yes {
|
|
193
|
+
white-space: nowrap;
|
|
194
|
+
overflow: hidden;
|
|
195
|
+
}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div v-if="modal" class="warning-modal _copymodal">
|
|
3
|
+
<div class="warning-modal-backdrop" />
|
|
4
|
+
<div class="warning-modal">
|
|
5
|
+
<div class="warning-modal-dialog warning-tips">
|
|
6
|
+
<div class="warning-modal-content">
|
|
7
|
+
<div class="warning-icon" style="padding-top: 15px">
|
|
8
|
+
<el-icon v-if="type == 'alert'"><WarningFilled /></el-icon>
|
|
9
|
+
<el-icon v-if="type == 'check'"><SuccessFilled /></el-icon>
|
|
10
|
+
<el-icon v-if="type == 'help'"><QuestionFilled /></el-icon>
|
|
11
|
+
</div>
|
|
12
|
+
<div v-if="msg" class="waring-cnt maxheight">
|
|
13
|
+
<p style="padding: 15px">
|
|
14
|
+
<span>{{ msg }}</span>
|
|
15
|
+
</p>
|
|
16
|
+
</div>
|
|
17
|
+
<div v-else class="waring-cnt" v-html="msgHtml" />
|
|
18
|
+
<div v-if="showcopy" class="copycontent">
|
|
19
|
+
<span class="copycontent-l">{{ copytype }}</span>
|
|
20
|
+
<el-tooltip :content="copytip || (lang === 'zh-CN' ? '点击复制单号' : 'Copy by clicking the order number')">
|
|
21
|
+
<span class="copycontent-r" @click="copyClicked(copymsg)" :data-clipboard-text="copymsg">{{
|
|
22
|
+
copymsg
|
|
23
|
+
}}</span>
|
|
24
|
+
</el-tooltip>
|
|
25
|
+
</div>
|
|
26
|
+
<div v-if="endMsg" class="waring-cnt">
|
|
27
|
+
<p style="padding: 15px">
|
|
28
|
+
<span>{{ endMsg }}</span>
|
|
29
|
+
</p>
|
|
30
|
+
</div>
|
|
31
|
+
<div v-if="endMsgHtml" class="waring-cnt" v-html="endMsgHtml" />
|
|
32
|
+
<div
|
|
33
|
+
v-if="messageShow"
|
|
34
|
+
class="copycontent"
|
|
35
|
+
style="display: block; padding: 0 5%"
|
|
36
|
+
>
|
|
37
|
+
<span>{{ firstMsg }} {{ copytype }}</span>
|
|
38
|
+
<el-tooltip :content="copytip || (lang === 'zh-CN' ? '点击复制单号' : 'Copy by clicking the order number')">
|
|
39
|
+
<span class="copycontent-r" @click="copyClicked(copymsg)" :data-clipboard-text="copymsg">{{
|
|
40
|
+
copymsg
|
|
41
|
+
}}</span>
|
|
42
|
+
</el-tooltip>
|
|
43
|
+
<span>{{ lastMsg }}</span>
|
|
44
|
+
</div>
|
|
45
|
+
<div v-if="showCancle" class="waring-btn">
|
|
46
|
+
<span
|
|
47
|
+
class="yes"
|
|
48
|
+
style="background-color: #999; border-bottom-right-radius: 0;width: 50%;"
|
|
49
|
+
@click="handleNo"
|
|
50
|
+
>{{ cancleText || (lang === 'zh-CN' ? '取消' : 'Cancel') }}</span>
|
|
51
|
+
<span class="yes" @click="handleYes" style="width: 50%;">{{ okText || (lang === 'zh-CN' ? '确定' : 'Confirm') }}</span>
|
|
52
|
+
</div>
|
|
53
|
+
<div v-else class="waring-btn">
|
|
54
|
+
<span class="yes" @click="handleYes">{{ okText || (lang === 'zh-CN' ? '确定' : 'Confirm') }}</span>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
</template>
|
|
61
|
+
|
|
62
|
+
<script setup >
|
|
63
|
+
import { WarningFilled, SuccessFilled, QuestionFilled } from '@element-plus/icons-vue'
|
|
64
|
+
import { ElIcon ,ElMessage } from 'element-plus'
|
|
65
|
+
</script>
|
|
66
|
+
|
|
67
|
+
<script >
|
|
68
|
+
import { ref } from 'vue'
|
|
69
|
+
import Clipboard from 'clipboard'
|
|
70
|
+
|
|
71
|
+
const customAlert = ref(null)
|
|
72
|
+
|
|
73
|
+
export default {
|
|
74
|
+
props: {
|
|
75
|
+
lang: {
|
|
76
|
+
type: String,
|
|
77
|
+
default: 'zh-CN'
|
|
78
|
+
},
|
|
79
|
+
msg: {
|
|
80
|
+
type: String,
|
|
81
|
+
default: ''
|
|
82
|
+
},
|
|
83
|
+
type: {
|
|
84
|
+
type: String,
|
|
85
|
+
default: 'alert'
|
|
86
|
+
},
|
|
87
|
+
firstMsg: {
|
|
88
|
+
type: String,
|
|
89
|
+
default: ''
|
|
90
|
+
},
|
|
91
|
+
lastMsg: {
|
|
92
|
+
type: String,
|
|
93
|
+
default: ''
|
|
94
|
+
},
|
|
95
|
+
endMsg: {
|
|
96
|
+
type: String,
|
|
97
|
+
default: ''
|
|
98
|
+
},
|
|
99
|
+
endMsgHtml: {
|
|
100
|
+
type: String,
|
|
101
|
+
default: ''
|
|
102
|
+
},
|
|
103
|
+
msgHtml: {
|
|
104
|
+
type: String,
|
|
105
|
+
default: ''
|
|
106
|
+
},
|
|
107
|
+
showCancle: {
|
|
108
|
+
type: Boolean,
|
|
109
|
+
default: true
|
|
110
|
+
},
|
|
111
|
+
cancleText: {
|
|
112
|
+
type: String,
|
|
113
|
+
default: '',
|
|
114
|
+
},
|
|
115
|
+
okText: {
|
|
116
|
+
type: String,
|
|
117
|
+
default: '',
|
|
118
|
+
},
|
|
119
|
+
copytip: {
|
|
120
|
+
type: String,
|
|
121
|
+
default: ''
|
|
122
|
+
},
|
|
123
|
+
successtext: {
|
|
124
|
+
type: String,
|
|
125
|
+
default: '',
|
|
126
|
+
},
|
|
127
|
+
handleCancle: {
|
|
128
|
+
type: Function
|
|
129
|
+
},
|
|
130
|
+
handleOk: {
|
|
131
|
+
type: Function
|
|
132
|
+
},
|
|
133
|
+
showcopy: {
|
|
134
|
+
type: Boolean,
|
|
135
|
+
default: false
|
|
136
|
+
},
|
|
137
|
+
messageShow: {
|
|
138
|
+
type: Boolean,
|
|
139
|
+
default: false
|
|
140
|
+
},
|
|
141
|
+
copytype: {
|
|
142
|
+
type: String,
|
|
143
|
+
default: ''
|
|
144
|
+
},
|
|
145
|
+
copymsg: {
|
|
146
|
+
type: String,
|
|
147
|
+
default: ''
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
data() {
|
|
151
|
+
return {
|
|
152
|
+
modal: false
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
watch: {
|
|
156
|
+
modal(val) {
|
|
157
|
+
if (!val) {
|
|
158
|
+
let parent = (customAlert.value && customAlert.value['parentNode']) || null
|
|
159
|
+
if (customAlert.value && document.body.contains(parent) && parent) {
|
|
160
|
+
document.body.removeChild(parent)
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
created() {
|
|
166
|
+
this.modal = true
|
|
167
|
+
},
|
|
168
|
+
unmounted() {
|
|
169
|
+
let parent = (customAlert.value && customAlert.value['parentNode']) || null
|
|
170
|
+
if (customAlert.value && document.body.contains(parent) && parent) {
|
|
171
|
+
document.body.removeChild(parent)
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
methods: {
|
|
175
|
+
async copyClicked(val) {
|
|
176
|
+
let clipboard = new Clipboard(".copycontent-r");
|
|
177
|
+
clipboard.on('success', e => {
|
|
178
|
+
ElMessage({
|
|
179
|
+
message: this.successtext || (this.lang === 'zh-CN' ? '复制成功' : 'Copy success'),
|
|
180
|
+
type: 'success',
|
|
181
|
+
})
|
|
182
|
+
clipboard.destroy()
|
|
183
|
+
})
|
|
184
|
+
clipboard.on('error', e => {
|
|
185
|
+
clipboard.destroy()
|
|
186
|
+
})
|
|
187
|
+
},
|
|
188
|
+
handleNo() {
|
|
189
|
+
this.handleCancle && this.handleCancle()
|
|
190
|
+
this.modal = false
|
|
191
|
+
},
|
|
192
|
+
handleYes() {
|
|
193
|
+
this.handleOk && this.handleOk()
|
|
194
|
+
this.modal = false
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
</script>
|
|
199
|
+
<style lang="scss" scoped>
|
|
200
|
+
@use "./modal.scss";
|
|
201
|
+
</style>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
const props = defineProps({
|
|
3
|
+
label: {
|
|
4
|
+
type: String,
|
|
5
|
+
default: ''
|
|
6
|
+
}
|
|
7
|
+
})
|
|
8
|
+
</script>
|
|
9
|
+
<template>
|
|
10
|
+
<div class="option-item">
|
|
11
|
+
<slot>
|
|
12
|
+
{{ label }}
|
|
13
|
+
</slot>
|
|
14
|
+
<div class="multi-checkbox box-checked">
|
|
15
|
+
<el-checkbox :checked="true"></el-checkbox>
|
|
16
|
+
<div class="check-mask"></div>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="multi-checkbox box-not-checked">
|
|
19
|
+
<el-checkbox :checked="false"></el-checkbox>
|
|
20
|
+
<div class="check-mask"></div>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<style lang="scss" scoped>
|
|
26
|
+
.option-item {
|
|
27
|
+
.multi-checkbox {
|
|
28
|
+
position: absolute;
|
|
29
|
+
top: 50%;
|
|
30
|
+
right: 4px;
|
|
31
|
+
transform: translateY(-50%);
|
|
32
|
+
height: 32px;
|
|
33
|
+
.check-mask {
|
|
34
|
+
position: absolute;
|
|
35
|
+
left: 0;
|
|
36
|
+
right: 0;
|
|
37
|
+
top: 0;
|
|
38
|
+
bottom: 0;
|
|
39
|
+
z-index: 1;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
.box-checked, .box-not-checked {
|
|
43
|
+
display: none;
|
|
44
|
+
margin-right: 0;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
</style>
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { defineProps, inject, getCurrentInstance, computed, useAttrs } from 'vue'
|
|
3
|
+
import { commonPropsType } from '../../utils/index.js'
|
|
4
|
+
import { useRoute } from 'vue-router'
|
|
5
|
+
|
|
6
|
+
const appContext = getCurrentInstance()?.appContext
|
|
7
|
+
|
|
8
|
+
defineOptions({
|
|
9
|
+
inheritAttrs: false
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
const props = defineProps({
|
|
13
|
+
...commonPropsType,
|
|
14
|
+
displayType: String,
|
|
15
|
+
widgetSize: String,
|
|
16
|
+
plain: String,
|
|
17
|
+
color: String,
|
|
18
|
+
loading: String,
|
|
19
|
+
loadtype: String,
|
|
20
|
+
loadingcolor: String,
|
|
21
|
+
})
|
|
22
|
+
const calcPorps = computed(() => {
|
|
23
|
+
return ['displayType', 'widgetSize', 'plain', 'color', 'loading', 'loadtype', 'loadingcolor', 'disabled'].reduce((ret, key) => {
|
|
24
|
+
if (['plain', 'loading', 'loadtype'].includes(key)) {
|
|
25
|
+
ret[key] = props[key] == '1' ? true : false
|
|
26
|
+
} else if (key === 'displayType') {
|
|
27
|
+
ret.type = props[key]
|
|
28
|
+
} else if (key === 'widgetSize') {
|
|
29
|
+
ret.size = props[key]?.trim()
|
|
30
|
+
} else {
|
|
31
|
+
ret[key] = props[key]
|
|
32
|
+
}
|
|
33
|
+
return ret
|
|
34
|
+
}, {})
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
const attrs = useAttrs()
|
|
38
|
+
const calcAttrs = computed(() => {
|
|
39
|
+
const props = {
|
|
40
|
+
...attrs,
|
|
41
|
+
}
|
|
42
|
+
delete props.onClick
|
|
43
|
+
return props
|
|
44
|
+
})
|
|
45
|
+
const lang = inject('lang')
|
|
46
|
+
|
|
47
|
+
const label = computed(() => {
|
|
48
|
+
return lang.value.indexOf('zh') > -1 ? (props.config?.labelZh || props.config?.metaNameZh) : (props.config?.labelEn || props.config?.metaNameEn)
|
|
49
|
+
})
|
|
50
|
+
const route = useRoute()
|
|
51
|
+
const buttonActions = inject('buttonActions', {})
|
|
52
|
+
|
|
53
|
+
const dynamicMapComp = inject('dynamicMapComp')
|
|
54
|
+
const hireRelatMapRules = inject('hireRelatMapRules')
|
|
55
|
+
const components = inject('components')
|
|
56
|
+
const selects = inject('selects')
|
|
57
|
+
const rootValue = inject('rootValue')
|
|
58
|
+
const dataLoad = inject('dataLoad')
|
|
59
|
+
const rootForm = inject('rootForm')
|
|
60
|
+
const validate = inject('_validate', () => {})
|
|
61
|
+
const parentRootValue = inject('_parentRootValue', {})
|
|
62
|
+
const parentDynamicMapComp = inject('_parentDynamicMapComp', {})
|
|
63
|
+
const rootInstance = inject('_rootInstance', {})
|
|
64
|
+
|
|
65
|
+
const routeQuery= route?.query
|
|
66
|
+
|
|
67
|
+
const buttonAction = (e, params) => {
|
|
68
|
+
const lastClick = () => {
|
|
69
|
+
attrs?.onClick?.(e, params) // 如果配置中有点击事件
|
|
70
|
+
}
|
|
71
|
+
const actionKey = props.config?.clickActionKey || props.config?.buttonActionKey || props.config?.hireRelat
|
|
72
|
+
const actionFn = buttonActions[actionKey]
|
|
73
|
+
|
|
74
|
+
let actionFnRet = null
|
|
75
|
+
if (actionFn) {
|
|
76
|
+
actionFnRet = actionFn(props, {
|
|
77
|
+
dynamicMapComp,
|
|
78
|
+
hireRelatMapRules,
|
|
79
|
+
components,
|
|
80
|
+
selects,
|
|
81
|
+
rootValue: rootValue?.value,
|
|
82
|
+
dataLoad,
|
|
83
|
+
rootForm,
|
|
84
|
+
routeQuery,
|
|
85
|
+
validate,
|
|
86
|
+
lastClick,
|
|
87
|
+
parentRootValue,
|
|
88
|
+
parentDynamicMapComp,
|
|
89
|
+
rootInstance
|
|
90
|
+
}, appContext)
|
|
91
|
+
}
|
|
92
|
+
if (actionFnRet !== null && actionFnRet !== undefined) {
|
|
93
|
+
if (isPromise(actionFnRet)) {
|
|
94
|
+
actionFnRet.then(res => {
|
|
95
|
+
if (res) {
|
|
96
|
+
lastClick()
|
|
97
|
+
}
|
|
98
|
+
})
|
|
99
|
+
} else {
|
|
100
|
+
if (actionFnRet) {
|
|
101
|
+
lastClick()
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
lastClick()
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
defineExpose({
|
|
110
|
+
click: (params) => {
|
|
111
|
+
buttonAction(null, params)
|
|
112
|
+
}
|
|
113
|
+
})
|
|
114
|
+
</script>
|
|
115
|
+
|
|
116
|
+
<template>
|
|
117
|
+
<cmi-button @click="buttonAction" v-bind="{ ...calcAttrs, ...calcPorps,}">
|
|
118
|
+
{{label}}
|
|
119
|
+
</cmi-button>
|
|
120
|
+
</template>
|