resolver-egretimp-plus 0.1.113 → 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.
Files changed (219) hide show
  1. package/dist/h5/index.js +1 -1
  2. package/dist/theme/element/index.css +1 -1
  3. package/dist/theme/element/src/components/common.scss +4 -0
  4. package/dist/theme/element/src/components/text.scss +17 -0
  5. package/dist/web/index.js +2 -2
  6. package/package.json +1 -1
  7. package/src/analysisComponent.jsx +2 -1
  8. package/src/components/helper/table.jsx +26 -23
  9. package/src/components/packages-H5/CustomComponentCollapseH5.vue +6 -2
  10. package/src/components/packages-web/ElText.jsx +0 -1
  11. package/src/theme/element/components/common.scss +4 -0
  12. package/src/theme/element/components/text.scss +17 -0
  13. package/src-bak/analysisComponent.jsx +343 -0
  14. package/src-bak/api/builtIn.js +10 -0
  15. package/src-bak/bpm/bpmInstance.js +388 -0
  16. package/src-bak/bpm/udc-sdk-esm/cjs/impl/application.js +8 -0
  17. package/src-bak/bpm/udc-sdk-esm/cjs/impl/component.js +97 -0
  18. package/src-bak/bpm/udc-sdk-esm/cjs/impl/datasource.js +88 -0
  19. package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/index.js +3 -0
  20. package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/udcSdkForIframe/UdcComponent.js +76 -0
  21. package/src-bak/bpm/udc-sdk-esm/cjs/impl/iframe/udcSdkForIframe/index.js +201 -0
  22. package/src-bak/bpm/udc-sdk-esm/cjs/impl/index.js +69 -0
  23. package/src-bak/bpm/udc-sdk-esm/cjs/impl/page.js +56 -0
  24. package/src-bak/bpm/udc-sdk-esm/cjs/impl/utils.js +76 -0
  25. package/src-bak/bpm/udc-sdk-esm/cjs/index.js +46 -0
  26. package/src-bak/bpm/udc-sdk-esm/cjs/utils.js +21 -0
  27. package/src-bak/components/childDialog/index.js +39 -0
  28. package/src-bak/components/childDialog/src/index.vue +185 -0
  29. package/src-bak/components/cmiFormItem/index.js +1 -0
  30. package/src-bak/components/cmiFormItem/src/index.vue +112 -0
  31. package/src-bak/components/confirmInstance-H5/index.js +53 -0
  32. package/src-bak/components/confirmInstance-H5/src/index.vue +54 -0
  33. package/src-bak/components/helper/FormPolyfill.jsx +25 -0
  34. package/src-bak/components/helper/calcTooltip.jsx +134 -0
  35. package/src-bak/components/helper/dock.js +141 -0
  36. package/src-bak/components/helper/eventOrchestration.js +763 -0
  37. package/src-bak/components/helper/resolver.js +163 -0
  38. package/src-bak/components/helper/table.jsx +103 -0
  39. package/src-bak/components/icons/date.vue +33 -0
  40. package/src-bak/components/icons/info.vue +62 -0
  41. package/src-bak/components/icons/loading.vue +19 -0
  42. package/src-bak/components/icons/question-filled.vue +8 -0
  43. package/src-bak/components/loading/index.js +6 -0
  44. package/src-bak/components/loading/loading.js +98 -0
  45. package/src-bak/components/loading/loading.scss +74 -0
  46. package/src-bak/components/loading/loading.vue +89 -0
  47. package/src-bak/components/loadingComponent/LoadingComponent.vue +33 -0
  48. package/src-bak/components/modal/index.js +9 -0
  49. package/src-bak/components/modal/modal.scss +195 -0
  50. package/src-bak/components/modal/modal.vue +201 -0
  51. package/src-bak/components/options/OptionsDefault.vue +47 -0
  52. package/src-bak/components/packages-H5/CmiButton.vue +120 -0
  53. package/src-bak/components/packages-H5/CmiCalendar.vue +152 -0
  54. package/src-bak/components/packages-H5/CmiCell.vue +87 -0
  55. package/src-bak/components/packages-H5/CmiCheckbox.vue +82 -0
  56. package/src-bak/components/packages-H5/CmiDatetimePicker.vue +98 -0
  57. package/src-bak/components/packages-H5/CmiDivider.vue +30 -0
  58. package/src-bak/components/packages-H5/CmiDropdownMenu.vue +58 -0
  59. package/src-bak/components/packages-H5/CmiInput.vue +69 -0
  60. package/src-bak/components/packages-H5/CmiLink.vue +28 -0
  61. package/src-bak/components/packages-H5/CmiPicker.vue +229 -0
  62. package/src-bak/components/packages-H5/CmiRadio.vue +29 -0
  63. package/src-bak/components/packages-H5/CmiSearch.vue +39 -0
  64. package/src-bak/components/packages-H5/CmiSelect.vue +84 -0
  65. package/src-bak/components/packages-H5/CustomComponentCardH5.vue +129 -0
  66. package/src-bak/components/packages-H5/CustomComponentColH5.vue +8 -0
  67. package/src-bak/components/packages-H5/CustomComponentCollapseH5.vue +137 -0
  68. package/src-bak/components/packages-H5/CustomComponentFormLayoutH5.vue +54 -0
  69. package/src-bak/components/packages-H5/CustomComponentTabPaneH5.vue +38 -0
  70. package/src-bak/components/packages-H5/CustomComponentTableH5.vue +352 -0
  71. package/src-bak/components/packages-H5/CustomComponentTabsH5.vue +170 -0
  72. package/src-bak/components/packages-web/CustomComponentCard.vue +40 -0
  73. package/src-bak/components/packages-web/CustomComponentCol.vue +66 -0
  74. package/src-bak/components/packages-web/CustomComponentCollapse.vue +164 -0
  75. package/src-bak/components/packages-web/CustomComponentCycle.vue +95 -0
  76. package/src-bak/components/packages-web/CustomComponentCycleTabPane.vue +155 -0
  77. package/src-bak/components/packages-web/CustomComponentDialog.vue +192 -0
  78. package/src-bak/components/packages-web/CustomComponentEditor.vue +50 -0
  79. package/src-bak/components/packages-web/CustomComponentFileExport.vue +60 -0
  80. package/src-bak/components/packages-web/CustomComponentFileImport.vue +60 -0
  81. package/src-bak/components/packages-web/CustomComponentFormLayout.vue +65 -0
  82. package/src-bak/components/packages-web/CustomComponentGrid.vue +29 -0
  83. package/src-bak/components/packages-web/CustomComponentGridCol.vue +29 -0
  84. package/src-bak/components/packages-web/CustomComponentInputDialog.vue +144 -0
  85. package/src-bak/components/packages-web/CustomComponentNativeTabPane.vue +84 -0
  86. package/src-bak/components/packages-web/CustomComponentPlain.vue +243 -0
  87. package/src-bak/components/packages-web/CustomComponentRow.vue +83 -0
  88. package/src-bak/components/packages-web/CustomComponentSelectEmployees.vue +203 -0
  89. package/src-bak/components/packages-web/CustomComponentSendMail.vue +62 -0
  90. package/src-bak/components/packages-web/CustomComponentSteps.vue +41 -0
  91. package/src-bak/components/packages-web/CustomComponentTabPane.vue +20 -0
  92. package/src-bak/components/packages-web/CustomComponentTable.jsx +813 -0
  93. package/src-bak/components/packages-web/CustomComponentTabs.vue +126 -0
  94. package/src-bak/components/packages-web/CustomComponentTree.vue +28 -0
  95. package/src-bak/components/packages-web/ElButton.vue +146 -0
  96. package/src-bak/components/packages-web/ElCheckbox.vue +97 -0
  97. package/src-bak/components/packages-web/ElDatePicker.vue +93 -0
  98. package/src-bak/components/packages-web/ElInput copy.jsx +393 -0
  99. package/src-bak/components/packages-web/ElInput.jsx +312 -0
  100. package/src-bak/components/packages-web/ElInputNumber.vue +81 -0
  101. package/src-bak/components/packages-web/ElPagination.vue +61 -0
  102. package/src-bak/components/packages-web/ElRadio.vue +47 -0
  103. package/src-bak/components/packages-web/ElSelect.jsx +249 -0
  104. package/src-bak/components/packages-web/ElSelect_bak.vue +155 -0
  105. package/src-bak/components/packages-web/ElText.jsx +187 -0
  106. package/src-bak/components/packages-web/ElTextaa.vue +169 -0
  107. package/src-bak/components/packages-web/ElTimePicker.vue +39 -0
  108. package/src-bak/components/patchComponents-H5.js +46 -0
  109. package/src-bak/components/patchComponents-web.js +46 -0
  110. package/src-bak/components/simpleFormItemPc/index.js +1 -0
  111. package/src-bak/components/simpleFormItemPc/src/index.vue +94 -0
  112. package/src-bak/components/table/index.ts +29 -0
  113. package/src-bak/components/table/src/composables/use-scrollbar.ts +30 -0
  114. package/src-bak/components/table/src/config.ts +256 -0
  115. package/src-bak/components/table/src/filter-panel.vue +260 -0
  116. package/src-bak/components/table/src/h-helper.ts +34 -0
  117. package/src-bak/components/table/src/layout-observer.ts +78 -0
  118. package/src-bak/components/table/src/store/current.ts +85 -0
  119. package/src-bak/components/table/src/store/expand.ts +76 -0
  120. package/src-bak/components/table/src/store/helper.ts +74 -0
  121. package/src-bak/components/table/src/store/index.ts +246 -0
  122. package/src-bak/components/table/src/store/tree.ts +230 -0
  123. package/src-bak/components/table/src/store/watcher.ts +543 -0
  124. package/src-bak/components/table/src/table/defaults.ts +402 -0
  125. package/src-bak/components/table/src/table/key-render-helper.ts +27 -0
  126. package/src-bak/components/table/src/table/style-helper.ts +378 -0
  127. package/src-bak/components/table/src/table/utils-helper.ts +47 -0
  128. package/src-bak/components/table/src/table-body/defaults.ts +52 -0
  129. package/src-bak/components/table/src/table-body/events-helper.ts +203 -0
  130. package/src-bak/components/table/src/table-body/index.ts +119 -0
  131. package/src-bak/components/table/src/table-body/render-helper.ts +283 -0
  132. package/src-bak/components/table/src/table-body/styles-helper.ts +164 -0
  133. package/src-bak/components/table/src/table-column/defaults.ts +237 -0
  134. package/src-bak/components/table/src/table-column/index.ts +202 -0
  135. package/src-bak/components/table/src/table-column/render-helper.ts +214 -0
  136. package/src-bak/components/table/src/table-column/watcher-helper.ts +88 -0
  137. package/src-bak/components/table/src/table-footer/index.ts +128 -0
  138. package/src-bak/components/table/src/table-footer/mapState-helper.ts +33 -0
  139. package/src-bak/components/table/src/table-footer/style-helper.ts +51 -0
  140. package/src-bak/components/table/src/table-header/event-helper.ts +213 -0
  141. package/src-bak/components/table/src/table-header/index.ts +244 -0
  142. package/src-bak/components/table/src/table-header/style.helper.ts +119 -0
  143. package/src-bak/components/table/src/table-header/utils-helper.ts +94 -0
  144. package/src-bak/components/table/src/table-layout.ts +259 -0
  145. package/src-bak/components/table/src/table.vue +389 -0
  146. package/src-bak/components/table/src/tableColumn.ts +3 -0
  147. package/src-bak/components/table/src/tokens.ts +5 -0
  148. package/src-bak/components/table/src/util.ts +521 -0
  149. package/src-bak/components/table/style/css.ts +5 -0
  150. package/src-bak/components/table/style/index.ts +5 -0
  151. package/src-bak/components/tabs/index.js +8 -0
  152. package/src-bak/components/tabs/src/constants.js +23 -0
  153. package/src-bak/components/tabs/src/tab-bar.js +8 -0
  154. package/src-bak/components/tabs/src/tab-bar.vue +92 -0
  155. package/src-bak/components/tabs/src/tab-nav.jsx +424 -0
  156. package/src-bak/components/tabs/src/tab-pane.js +16 -0
  157. package/src-bak/components/tabs/src/tab-pane.vue +80 -0
  158. package/src-bak/components/tabs/src/tabs.jsx +223 -0
  159. package/src-bak/components/tabs/style/css.js +2 -0
  160. package/src-bak/components/tabs/style/index.js +2 -0
  161. package/src-bak/components/thirdPartyFrame/index.js +32 -0
  162. package/src-bak/components/thirdPartyFrame/src/ThirdPartyFrame.vue +125 -0
  163. package/src-bak/enums/index.js +16 -0
  164. package/src-bak/hooks/configLoad.js +45 -0
  165. package/src-bak/hooks/index.js +189 -0
  166. package/src-bak/hooks/mock.js +6960 -0
  167. package/src-bak/hooks/pageConfig.js +127 -0
  168. package/src-bak/index.jsx +440 -0
  169. package/src-bak/renderer.jsx +77 -0
  170. package/src-bak/resolver-H5.vue +88 -0
  171. package/src-bak/resolver-common.vue +129 -0
  172. package/src-bak/resolver-web.vue +91 -0
  173. package/src-bak/rules/eventsSupplement.js +573 -0
  174. package/src-bak/rules/parseCondition.js +378 -0
  175. package/src-bak/rules/ruleUtils.js +273 -0
  176. package/src-bak/rules/rulesDriver.js +118 -0
  177. package/src-bak/rulesImp/events.js +588 -0
  178. package/src-bak/rulesImp/index.js +33 -0
  179. package/src-bak/rulesImp/ruleInstance.js +231 -0
  180. package/src-bak/rulesImp/ruleUtils.js +124 -0
  181. package/src-bak/theme/element/components/button.scss +122 -0
  182. package/src-bak/theme/element/components/card.scss +8 -0
  183. package/src-bak/theme/element/components/checkbox.scss +19 -0
  184. package/src-bak/theme/element/components/collapse.scss +174 -0
  185. package/src-bak/theme/element/components/common.scss +30 -0
  186. package/src-bak/theme/element/components/cycle.scss +0 -0
  187. package/src-bak/theme/element/components/date.scss +13 -0
  188. package/src-bak/theme/element/components/dialog.scss +44 -0
  189. package/src-bak/theme/element/components/form.scss +104 -0
  190. package/src-bak/theme/element/components/index.scss +55 -0
  191. package/src-bak/theme/element/components/input.scss +36 -0
  192. package/src-bak/theme/element/components/message.scss +48 -0
  193. package/src-bak/theme/element/components/pagination.scss +47 -0
  194. package/src-bak/theme/element/components/popper.scss +3 -0
  195. package/src-bak/theme/element/components/radio.scss +40 -0
  196. package/src-bak/theme/element/components/scrollbar.scss +14 -0
  197. package/src-bak/theme/element/components/select.scss +82 -0
  198. package/src-bak/theme/element/components/steps.scss +6 -0
  199. package/{src/components/styles/CustomComponenTable.scss → src-bak/theme/element/components/table.scss} +90 -13
  200. package/src-bak/theme/element/components/tabs.scss +128 -0
  201. package/src-bak/theme/element/components/tag.scss +6 -0
  202. package/{src/components/styles → src-bak/theme/element/components}/text.scss +3 -3
  203. package/src-bak/theme/element/components/textarea.scss +3 -0
  204. package/src-bak/theme/element/components/tree.scss +0 -0
  205. package/src-bak/theme/element/index.scss +55 -0
  206. package/src-bak/utils/cipher.js +141 -0
  207. package/src-bak/utils/common.js +664 -0
  208. package/src-bak/utils/const.js +259 -0
  209. package/src-bak/utils/defaultVal.js +92 -0
  210. package/src-bak/utils/dom.js +36 -0
  211. package/src-bak/utils/format.js +19 -0
  212. package/src-bak/utils/index.js +4 -0
  213. package/src-bak/utils/is.js +74 -0
  214. package/src-bak/utils/loadModule.js +75 -0
  215. package/src-bak/utils/preserveFunc.js +33 -0
  216. package/src-bak/utils/render.jsx +1138 -0
  217. package/src-bak/utils/request.js +136 -0
  218. package/src-bak/utils/respone.js +70 -0
  219. 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>