resolver-egretimp-plus 0.1.121 → 0.1.123
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 +13 -13
- package/dist/h5/index.js.LICENSE.txt +17 -0
- package/dist/web/index.js +10 -10
- package/dist/web/index.js.LICENSE.txt +17 -0
- package/package.json +1 -1
- package/src/analysisComponent.jsx +15 -13
- package/src/components/helper/dock.js +2 -1
- package/src/components/helper/eventOrchestration.js +1 -0
- package/src/components/packages-web/CustomComponentPlain.vue +10 -2
- package/src/components/packages-web/CustomComponentTable.jsx +3 -4
- package/src/hooks/pageConfig.js +2 -0
- package/src/hooks/reactive.js +160 -0
- package/src/hooks/watchRuels.js +44 -46
- package/src/index.jsx +5 -2
- package/src/rulesOfDate/eventsSupplement.js +8 -5
- package/src/utils/cipher.js +3 -2
- package/src/utils/render.jsx +141 -73
- package/src/utils/request.js +6 -1
package/src/utils/render.jsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getCodeMapRules } from '../rules/rulesDriver.js'
|
|
2
2
|
import SimpleFormItemPc from '../components/simpleFormItemPc'
|
|
3
3
|
import { resolveAssetComponents, findComponent, compareComponet, normalPixel, isPlainObject, hasOwn, isFnStr, normalCapitalizeComponent, capitalize, camelize, formatDate, definePrivatelyProp, extend, getPathVal, cloneDeep, generateUniqueId} from './common.js'
|
|
4
|
-
import { resolveComponent, inject, watch, unref, markRaw } from 'vue'
|
|
4
|
+
import { resolveComponent, inject, watch, unref, markRaw, reactive } from 'vue'
|
|
5
5
|
import CustomComponentColH5 from '../components/packages-H5/CustomComponentColH5.vue'
|
|
6
6
|
import {
|
|
7
7
|
commonPropsType,
|
|
@@ -39,6 +39,7 @@ import loadModule from './loadModule.js'
|
|
|
39
39
|
import { h } from 'vue'
|
|
40
40
|
import dayjs from 'dayjs'
|
|
41
41
|
import { OPEN_DATA_RULES } from '../config.js'
|
|
42
|
+
import { useVmodels } from '../hooks/reactive.js'
|
|
42
43
|
|
|
43
44
|
export const COFNGI_KEY_EVENT_FLAG = /^on[A-Z]/
|
|
44
45
|
|
|
@@ -138,6 +139,7 @@ export function parsePageConfig({
|
|
|
138
139
|
const hireRelatMapRules = getCodeMapRules(config._originConfig)
|
|
139
140
|
// formConfig.pmPageMetaList = config.pmPageMetaList
|
|
140
141
|
const cbs = []
|
|
142
|
+
window?.performance?.mark('noraml_config_start')
|
|
141
143
|
let { pageConfig, mapComp } = normalConfig({
|
|
142
144
|
requestTraceId,
|
|
143
145
|
dialogReq,
|
|
@@ -159,12 +161,50 @@ export function parsePageConfig({
|
|
|
159
161
|
cbs.forEach((cb) => {
|
|
160
162
|
cb()
|
|
161
163
|
})
|
|
164
|
+
window?.performance?.mark('noraml_config_end')
|
|
165
|
+
console.log('noraml_config', window?.performance?.measure('noraml_config', 'noraml_config_start', 'noraml_config_end'))
|
|
162
166
|
return {
|
|
163
167
|
pageConfig,
|
|
164
168
|
mapComp,
|
|
165
169
|
hireRelatMapRules
|
|
166
170
|
}
|
|
167
171
|
}
|
|
172
|
+
|
|
173
|
+
// 数组中行数据位置变了,需要控制multipagemtalist中的配置对应正确的dynamicMapComp映射
|
|
174
|
+
function correctConfigDynamicMap(dynamicMapComp, dynamicHireRelat) {
|
|
175
|
+
if (dynamicMapComp[dynamicHireRelat]) {
|
|
176
|
+
// 替换倒数第二个的[idx]中的idx值
|
|
177
|
+
const existConfig = dynamicMapComp[dynamicHireRelat]
|
|
178
|
+
const changedDynamicHireRelat = dynamicHireRelat.replace(/([^->\[\]]*)(\[\d*\])(->[^->]*)$/, (_, b, c, d) => {
|
|
179
|
+
return `${b}[${existConfig.rowIndex}]${d}`
|
|
180
|
+
})
|
|
181
|
+
if (changedDynamicHireRelat !== dynamicHireRelat) {
|
|
182
|
+
correctConfigDynamicMapHandler({config: existConfig, dynamicMapComp, changedDynamicHireRelat})
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
function correctConfigDynamicMapHandler({config, dynamicMapComp, changedDynamicHireRelat}) {
|
|
188
|
+
if (changedDynamicHireRelat === config.dynamicHireRelat) {
|
|
189
|
+
return
|
|
190
|
+
}
|
|
191
|
+
config.dynamicHireRelat = changedDynamicHireRelat
|
|
192
|
+
correctConfigDynamicMap(dynamicMapComp, changedDynamicHireRelat)
|
|
193
|
+
dynamicMapComp[changedDynamicHireRelat] = config
|
|
194
|
+
if (config.pmPageMetaList && config.pmPageMetaList.length) {
|
|
195
|
+
if (isCycleConfig(config)) {
|
|
196
|
+
config.multiPmPageMetaList?.forEach((pmPageMetaList, idx) => {
|
|
197
|
+
pmPageMetaList.forEach(cg => {
|
|
198
|
+
correctConfigDynamicMapHandler({config: cg, dynamicMapComp, changedDynamicHireRelat: `${changedDynamicHireRelat}[${idx}]->${cg.metaCode}`})
|
|
199
|
+
})
|
|
200
|
+
})
|
|
201
|
+
} else {
|
|
202
|
+
config.pmPageMetaList.forEach(cg => {
|
|
203
|
+
correctConfigDynamicMapHandler({config: cg, dynamicMapComp, changedDynamicHireRelat: `${changedDynamicHireRelat}->${cg.metaCode}`})
|
|
204
|
+
})
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
168
208
|
/**
|
|
169
209
|
* {
|
|
170
210
|
* children: [], // 子元素
|
|
@@ -188,13 +228,19 @@ export function normalConfig({
|
|
|
188
228
|
parentRootValue,
|
|
189
229
|
parentDynamicMapComp,
|
|
190
230
|
noParsePageMetaList,
|
|
231
|
+
changeConfig,
|
|
232
|
+
notParseConfig,
|
|
191
233
|
}, config, hireRelat = '', mapComp = {}, needformItem = false, dynamicHireRelat = '', unWatchsList = []) {
|
|
234
|
+
|
|
192
235
|
const metaCode = config.metaCode || ''
|
|
193
|
-
hireRelat += hireRelat ? `->${metaCode}` : metaCode
|
|
194
236
|
dynamicHireRelat += dynamicHireRelat ? `->${metaCode}` : metaCode
|
|
195
|
-
|
|
237
|
+
hireRelat += hireRelat ? `->${metaCode}` : metaCode
|
|
196
238
|
const originMetaType = config.metaType
|
|
197
|
-
|
|
239
|
+
let metaType = originMetaType
|
|
240
|
+
|
|
241
|
+
if (!notParseConfig) {
|
|
242
|
+
metaType = normalMetaType(config.metaType)
|
|
243
|
+
}
|
|
198
244
|
|
|
199
245
|
// 这个对象是不可以被配置进行覆盖
|
|
200
246
|
const extendNativeObj = {
|
|
@@ -206,79 +252,80 @@ export function normalConfig({
|
|
|
206
252
|
wrapVm: null, // 当前组件的实例(也就是analysisComponent)
|
|
207
253
|
hireRelat,
|
|
208
254
|
parent: null, // 这个是执行过程中,动态获取的
|
|
209
|
-
dynamicHireRelat: '', // 这个也是执行过程中,动态获取的层级
|
|
210
255
|
}
|
|
211
256
|
|
|
212
257
|
if (OPEN_DATA_RULES) {
|
|
213
|
-
|
|
258
|
+
if (changeConfig) {
|
|
259
|
+
// 设置multiPmPageMetaList的时候,如果数组变了,如果数组中的值变换了位置,需要对dynamicMapComp设置正确的映射
|
|
260
|
+
correctConfigDynamicMap(dynamicMapComp, dynamicHireRelat)
|
|
261
|
+
}
|
|
262
|
+
config.dynamicHireRelat = dynamicHireRelat
|
|
214
263
|
dynamicMapComp[dynamicHireRelat] = config
|
|
215
|
-
// extendNativeObj._rootValue = rootValue
|
|
216
264
|
definePrivatelyProp(config, '_rootValue', rootValue)
|
|
265
|
+
definePrivatelyProp(config, 'refValue', useVmodels(config).modelValue)
|
|
217
266
|
}
|
|
218
267
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
extend(config, extendObj, true)
|
|
239
|
-
extend(config, extendAttrObj)
|
|
240
|
-
extend(config, extendNativeObj)
|
|
268
|
+
if (!notParseConfig) {
|
|
269
|
+
let extendAttrObj = parseExtendAttr(config)
|
|
270
|
+
let extendObj = {
|
|
271
|
+
removeCol: findComponent(NOT_NEED_COL_ITEM_META_TYPE, extendAttrObj.renderby) !== -1 || findComponent(NOT_NEED_COL_ITEM_META_TYPE, metaType) !== -1,
|
|
272
|
+
needformItem: (findComponent(NOT_NEED_FORM_ITEM_META_TYPE, extendAttrObj.renderby) !== -1 || findComponent(NOT_NEED_FORM_ITEM_META_TYPE, metaType) !== -1) ? false : needformItem, // 表示这个配置项对应的渲染组件是否需要formItem进行包装 移动端是cmi-form-item
|
|
273
|
+
}
|
|
274
|
+
if (config.defStyle) {
|
|
275
|
+
extendObj.style = parseDefStyle(config.defStyle)
|
|
276
|
+
}
|
|
277
|
+
// 组件是根据数据进行动态循环渲染,这边需要进行特殊处理,确保config配置项独立
|
|
278
|
+
if (isCycleConfig({renderby: extendAttrObj.renderby, metaType})) {
|
|
279
|
+
extendObj.multiPmPageMetaList = reactive([])
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
extend(config, extendObj, true)
|
|
283
|
+
extend(config, extendAttrObj)
|
|
284
|
+
extend(config, extendNativeObj)
|
|
285
|
+
}
|
|
241
286
|
|
|
242
287
|
let pageConfig = config
|
|
243
288
|
|
|
244
|
-
if (
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
if (
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
289
|
+
if (!notParseConfig) {
|
|
290
|
+
if (originMetaType == 'textarea') {
|
|
291
|
+
pageConfig.type = 'textarea'
|
|
292
|
+
}
|
|
293
|
+
if (originMetaType == 'time-range') {
|
|
294
|
+
pageConfig['isRange'] = true
|
|
295
|
+
}
|
|
296
|
+
if (originMetaType == 'date-range') {
|
|
297
|
+
pageConfig.type = 'daterange'
|
|
298
|
+
}
|
|
299
|
+
if (originMetaType == 'card' && !hasOwn(pageConfig, 'needWrap')) {
|
|
300
|
+
pageConfig.needWrap = '1'
|
|
301
|
+
}
|
|
302
|
+
// 在详情的情况下,配置组件是否显示
|
|
303
|
+
if (mode === MODE.DETAIL) {
|
|
304
|
+
if (pageConfig.detailExtendAttr) {
|
|
305
|
+
const detailExtendAttrObj = parseExtendAttr({
|
|
306
|
+
extendAttr: typeof pageConfig.detailExtendAttr === 'string' ? pageConfig.detailExtendAttr : JSON.stringify(pageConfig.detailExtendAttr),
|
|
307
|
+
metaCode: `detail-${pageConfig.metaCode}`
|
|
308
|
+
})
|
|
309
|
+
extend(pageConfig, detailExtendAttrObj)
|
|
264
310
|
|
|
311
|
+
}
|
|
312
|
+
pageConfig.hidden = pageConfig.detailHidden || pageConfig.hidden
|
|
265
313
|
}
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
}
|
|
275
|
-
|
|
314
|
+
// 在日志的情况下,配置组件是否显示
|
|
315
|
+
if (mode === MODE.LOG) {
|
|
316
|
+
if (pageConfig.logExtendAttr) {
|
|
317
|
+
const logExtendAttrObj = parseExtendAttr({
|
|
318
|
+
extendAttr: typeof pageConfig.logExtendAttr === 'string' ? pageConfig.logExtendAttr : JSON.stringify(pageConfig.logExtendAttr),
|
|
319
|
+
metaCode: `log-${pageConfig.metaCode}`
|
|
320
|
+
})
|
|
321
|
+
extend(pageConfig, logExtendAttrObj)
|
|
322
|
+
}
|
|
323
|
+
pageConfig.hidden = pageConfig.logHidden || pageConfig.hidden
|
|
276
324
|
}
|
|
277
|
-
pageConfig.hidden = pageConfig.logHidden || pageConfig.hidden
|
|
278
|
-
}
|
|
279
325
|
|
|
280
|
-
|
|
281
|
-
|
|
326
|
+
mapComp[hireRelat] = pageConfig
|
|
327
|
+
parsePolyfillConfigs({ polyfillConfigs, instance, parentRootValue, parentDynamicMapComp }, pageConfig)
|
|
328
|
+
}
|
|
282
329
|
|
|
283
330
|
if (!OPEN_DATA_RULES) {
|
|
284
331
|
// 如果有子项,需要进行递归遍历
|
|
@@ -311,13 +358,18 @@ export function normalConfig({
|
|
|
311
358
|
|
|
312
359
|
function normalPmPageMetaList(config) {
|
|
313
360
|
const isCycleFlag = isCycleConfig(config)
|
|
314
|
-
config.pmPageMetaList = simpleNormalPmPageMetaList(
|
|
361
|
+
config.pmPageMetaList = simpleNormalPmPageMetaList({
|
|
362
|
+
pmPageMetaList: config.pmPageMetaList,
|
|
363
|
+
dynamicHireRelat,
|
|
364
|
+
unWatchsList,
|
|
365
|
+
noParsePageMetaList: isCycleFlag,
|
|
366
|
+
changeConfig
|
|
367
|
+
})
|
|
315
368
|
|
|
316
369
|
definePrivatelyProp(config, '_rowColumnConfgsMap', markRaw(new Map()))
|
|
317
370
|
config._unPageMetaListWatch?.() // 删除当前的监听
|
|
318
371
|
if (isCycleFlag) {
|
|
319
372
|
const currentUnWatchsList = [...unWatchsList]
|
|
320
|
-
definePrivatelyProp(config, 'multiPmPageMetaList', [])
|
|
321
373
|
|
|
322
374
|
// 这边先执行,因为当前的_unWatchs里面只放子级的watch
|
|
323
375
|
const oldUnWatchsList = [...currentUnWatchsList]
|
|
@@ -325,11 +377,12 @@ export function normalConfig({
|
|
|
325
377
|
definePrivatelyProp(config, '_unWatchs', markRaw([]))
|
|
326
378
|
currentUnWatchsList?.push(config._unWatchs)
|
|
327
379
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
const list = getPathVal(unref(
|
|
380
|
+
|
|
381
|
+
config._unPageMetaListWatch = watch(() => getPathVal(unref(rootValue), config.dynamicHireRelat, '->'), (val) => {
|
|
382
|
+
const list = getPathVal(unref(rootValue), config.dynamicHireRelat, '->')
|
|
331
383
|
if (list && list.length) {
|
|
332
|
-
|
|
384
|
+
const cbFns = []
|
|
385
|
+
const pageMetaList = list.map((row, idx) => {
|
|
333
386
|
const columnsCgs = config._rowColumnConfgsMap.get(row)
|
|
334
387
|
if (columnsCgs) {
|
|
335
388
|
columnsCgs.forEach(config => {
|
|
@@ -355,11 +408,23 @@ export function normalConfig({
|
|
|
355
408
|
definePrivatelyProp(ret, 'parent', config) // 这边手动设置一下,防止组件复用的时候不会刷新,造成parent的丢失
|
|
356
409
|
return ret
|
|
357
410
|
})
|
|
358
|
-
|
|
411
|
+
retColumnConfigs = reactive(retColumnConfigs)
|
|
412
|
+
cbFns.push(() => {
|
|
413
|
+
simpleNormalPmPageMetaList({
|
|
414
|
+
pmPageMetaList: retColumnConfigs,
|
|
415
|
+
dynamicHireRelat: `${config.dynamicHireRelat}[${idx}]`,
|
|
416
|
+
unWatchsList: currentUnWatchsList,
|
|
417
|
+
noParsePageMetaList: false,
|
|
418
|
+
changeConfig: true,
|
|
419
|
+
notParseConfig: true,
|
|
420
|
+
})
|
|
421
|
+
})
|
|
359
422
|
config._rowColumnConfgsMap.set(row, retColumnConfigs)
|
|
360
423
|
return retColumnConfigs
|
|
361
424
|
}
|
|
362
425
|
})
|
|
426
|
+
config.multiPmPageMetaList = reactive(pageMetaList)
|
|
427
|
+
cbFns.forEach(cb => cb())
|
|
363
428
|
|
|
364
429
|
const mapKeys = config._rowColumnConfgsMap.keys()
|
|
365
430
|
Array.from(mapKeys).forEach(row => {
|
|
@@ -375,6 +440,7 @@ export function normalConfig({
|
|
|
375
440
|
}, {
|
|
376
441
|
immediate: true,
|
|
377
442
|
deep: true,
|
|
443
|
+
// flush: 'sync'
|
|
378
444
|
})
|
|
379
445
|
|
|
380
446
|
oldUnWatchsList?.forEach(list => {
|
|
@@ -382,7 +448,7 @@ export function normalConfig({
|
|
|
382
448
|
})
|
|
383
449
|
}
|
|
384
450
|
|
|
385
|
-
function simpleNormalPmPageMetaList(pmPageMetaList, dynamicHireRelat, unWatchsList, noParsePageMetaList) {
|
|
451
|
+
function simpleNormalPmPageMetaList({pmPageMetaList, dynamicHireRelat, unWatchsList, noParsePageMetaList, changeConfig, notParseConfig}) {
|
|
386
452
|
return pmPageMetaList.map(metaItem => {
|
|
387
453
|
const { pageConfig } = normalConfig({
|
|
388
454
|
requestTraceId,
|
|
@@ -400,6 +466,8 @@ export function normalConfig({
|
|
|
400
466
|
parentRootValue,
|
|
401
467
|
parentDynamicMapComp,
|
|
402
468
|
noParsePageMetaList,
|
|
469
|
+
changeConfig,
|
|
470
|
+
notParseConfig,
|
|
403
471
|
}, metaItem, hireRelat, mapComp, needformItem || [FORM_META_TYPE, FORM_META_TYPE_H5].includes(metaType), dynamicHireRelat, unWatchsList)
|
|
404
472
|
return pageConfig
|
|
405
473
|
})?.sort((a, b) => a.seqNo - b.seqNo)
|
|
@@ -500,13 +568,13 @@ export function isPlainColumn(config, disabled) {
|
|
|
500
568
|
export function canHiddenConfig(config) {
|
|
501
569
|
let retFlag = OPEN_DATA_RULES && config.hidden == '1'
|
|
502
570
|
if (!retFlag) return false
|
|
503
|
-
|
|
571
|
+
|
|
504
572
|
let travseConfigs = [config]
|
|
505
573
|
let currentConfig = null
|
|
506
574
|
while(travseConfigs.length) {
|
|
507
575
|
currentConfig = travseConfigs.shift()
|
|
508
576
|
// 如果子级别中有onVnodeMounted、onMounted中一个有值,就表示需要进行渲染
|
|
509
|
-
if (
|
|
577
|
+
if (currentConfig.onVnodeMounted || currentConfig.onMounted || currentConfig.immediateClickEvent) {
|
|
510
578
|
return false
|
|
511
579
|
}
|
|
512
580
|
if (isCycleConfig(currentConfig)) {
|
package/src/utils/request.js
CHANGED
|
@@ -2,7 +2,7 @@ import axios from 'axios'
|
|
|
2
2
|
import qs from 'qs'
|
|
3
3
|
import { AUTH_CODE, NOT_AUTH_APIS, PASSWORD, USER_NAME, USER_TYPE } from '../enums'
|
|
4
4
|
import { LCP_LOGIN, REFRESH_TOKEN } from '../api/builtIn'
|
|
5
|
-
import { HashingFactory } from './cipher'
|
|
5
|
+
import { EncryptionFactory, HashingFactory } from './cipher'
|
|
6
6
|
import dayjs from 'dayjs'
|
|
7
7
|
import { resultToast } from './respone'
|
|
8
8
|
|
|
@@ -85,8 +85,13 @@ export function initInterceptors(messageInstance) {
|
|
|
85
85
|
)
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
+
const encryptKey = '%cmi_lcp@10086#S'
|
|
88
89
|
export function buildInRequest(url, data, config = {}) {
|
|
90
|
+
const randomUuidStr = `${data.busiIdentityId}_${data.requestTraceId}`
|
|
89
91
|
const reqConfig = {
|
|
92
|
+
headers: {
|
|
93
|
+
'randomUuid': EncryptionFactory.createAesEncryption({ key: encryptKey, iv: encryptKey }).encrypt(randomUuidStr)
|
|
94
|
+
},
|
|
90
95
|
url,
|
|
91
96
|
...config
|
|
92
97
|
}
|