@ibiz-template/runtime 0.7.26-alpha.1 → 0.7.26

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 (87) hide show
  1. package/dist/index.esm.js +962 -350
  2. package/dist/index.system.min.js +1 -1
  3. package/out/app-hub.d.ts +1 -0
  4. package/out/app-hub.d.ts.map +1 -1
  5. package/out/app-hub.js +5 -0
  6. package/out/controller/common/control/md-control.controller.js +2 -1
  7. package/out/controller/control/calendar/calendar.controller.d.ts +15 -0
  8. package/out/controller/control/calendar/calendar.controller.d.ts.map +1 -1
  9. package/out/controller/control/calendar/calendar.controller.js +85 -16
  10. package/out/controller/control/calendar/calendar.service.d.ts +10 -0
  11. package/out/controller/control/calendar/calendar.service.d.ts.map +1 -1
  12. package/out/controller/control/calendar/calendar.service.js +21 -1
  13. package/out/controller/control/chart/generator/base-series-generator.d.ts.map +1 -1
  14. package/out/controller/control/chart/generator/base-series-generator.js +3 -1
  15. package/out/controller/control/chart/generator/chart-options-generator.d.ts +39 -0
  16. package/out/controller/control/chart/generator/chart-options-generator.d.ts.map +1 -1
  17. package/out/controller/control/chart/generator/chart-options-generator.js +242 -80
  18. package/out/controller/control/chart/generator/radar-series-generator.d.ts.map +1 -1
  19. package/out/controller/control/chart/generator/radar-series-generator.js +5 -2
  20. package/out/controller/control/dashboard/custom-dashboard.controller.d.ts +1 -8
  21. package/out/controller/control/dashboard/custom-dashboard.controller.d.ts.map +1 -1
  22. package/out/controller/control/dashboard/custom-dashboard.controller.js +1 -9
  23. package/out/controller/control/dashboard/dashboard.controller.d.ts +25 -0
  24. package/out/controller/control/dashboard/dashboard.controller.d.ts.map +1 -1
  25. package/out/controller/control/dashboard/dashboard.controller.js +52 -0
  26. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts +14 -0
  27. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts.map +1 -1
  28. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.js +29 -1
  29. package/out/controller/control/grid/grid/entity-schema.d.ts.map +1 -1
  30. package/out/controller/control/grid/grid/entity-schema.js +1 -0
  31. package/out/controller/control/grid/grid/grid.controller.d.ts +15 -2
  32. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  33. package/out/controller/control/grid/grid/grid.controller.js +32 -2
  34. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.d.ts.map +1 -1
  35. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.js +2 -1
  36. package/out/controller/control/report-panel/generator/base-generator.d.ts +4 -4
  37. package/out/controller/control/report-panel/generator/base-generator.d.ts.map +1 -1
  38. package/out/controller/control/report-panel/generator/base-generator.js +4 -5
  39. package/out/controller/control/report-panel/generator/bi-generator.d.ts +14 -4
  40. package/out/controller/control/report-panel/generator/bi-generator.d.ts.map +1 -1
  41. package/out/controller/control/report-panel/generator/bi-generator.js +66 -16
  42. package/out/controller/control/report-panel/generator/user-generator.d.ts +2 -2
  43. package/out/controller/control/report-panel/generator/user-generator.d.ts.map +1 -1
  44. package/out/controller/control/report-panel/generator/user-generator.js +2 -2
  45. package/out/controller/control/report-panel/report-panel.controller.d.ts.map +1 -1
  46. package/out/controller/control/report-panel/report-panel.controller.js +3 -0
  47. package/out/controller/control/toolbar/toolbar.controllerr.d.ts.map +1 -1
  48. package/out/controller/control/toolbar/toolbar.controllerr.js +7 -0
  49. package/out/controller/notification/internal-message.controller.d.ts.map +1 -1
  50. package/out/controller/notification/internal-message.controller.js +7 -1
  51. package/out/global/global-util/global-util.d.ts +8 -1
  52. package/out/global/global-util/global-util.d.ts.map +1 -1
  53. package/out/global/global-util/global-util.js +8 -1
  54. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts +10 -0
  55. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts.map +1 -1
  56. package/out/interface/controller/controller/control/i-report-panel.controller.d.ts +8 -0
  57. package/out/interface/controller/controller/control/i-report-panel.controller.d.ts.map +1 -1
  58. package/out/interface/controller/state/control/i-calendar.state.d.ts +21 -0
  59. package/out/interface/controller/state/control/i-calendar.state.d.ts.map +1 -1
  60. package/out/interface/controller/state/control/i-grid.state.d.ts +7 -0
  61. package/out/interface/controller/state/control/i-grid.state.d.ts.map +1 -1
  62. package/out/interface/provider/model-loader.provider.d.ts +10 -0
  63. package/out/interface/provider/model-loader.provider.d.ts.map +1 -1
  64. package/out/interface/service/i-data-entity/i-data-entity.d.ts +7 -0
  65. package/out/interface/service/i-data-entity/i-data-entity.d.ts.map +1 -1
  66. package/out/service/app-data-entity/app-data-entity.d.ts +1 -0
  67. package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
  68. package/out/service/app-data-entity/app-data-entity.js +2 -0
  69. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
  70. package/out/service/vo/tree-node-data/tree-data-set-node-data.js +2 -1
  71. package/out/ui-action/provider/front-ui-action-provider.js +1 -1
  72. package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.d.ts +15 -0
  73. package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.d.ts.map +1 -1
  74. package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.js +17 -2
  75. package/out/utils/bi-report-util/bi-report-util.d.ts +59 -0
  76. package/out/utils/bi-report-util/bi-report-util.d.ts.map +1 -0
  77. package/out/utils/bi-report-util/bi-report-util.js +108 -0
  78. package/out/utils/bi-report-util/index.d.ts +2 -0
  79. package/out/utils/bi-report-util/index.d.ts.map +1 -0
  80. package/out/utils/bi-report-util/index.js +1 -0
  81. package/out/utils/index.d.ts +1 -0
  82. package/out/utils/index.d.ts.map +1 -1
  83. package/out/utils/index.js +1 -0
  84. package/out/utils/script/script-factory.d.ts +12 -0
  85. package/out/utils/script/script-factory.d.ts.map +1 -1
  86. package/out/utils/script/script-factory.js +15 -0
  87. package/package.json +5 -5
@@ -1,4 +1,4 @@
1
- import { mergeDeepRight } from 'ramda';
1
+ import { clone, mergeDeepRight } from 'ramda';
2
2
  import { isObject, isString } from 'qx-util';
3
3
  import { RuntimeError } from '@ibiz-template/core';
4
4
  import { LineSeriesGenerator } from './line-series-generator';
@@ -246,6 +246,113 @@ export class ChartOptionsGenerator {
246
246
  });
247
247
  return AxisOption;
248
248
  }
249
+ /**
250
+ * 处理轴布局位置
251
+ *
252
+ * @param {CodeListItem[]} items
253
+ * @param {number} padding
254
+ * @param {number} total
255
+ * @param {number} index
256
+ * @param {boolean} isRow 是否横向
257
+ * @return {*}
258
+ * @memberof ChartOptionsGenerator
259
+ */
260
+ handleAxisLayout(items, padding, total, index, isRow = true) {
261
+ const axisData = items.map((code) => {
262
+ if (isRow) {
263
+ return {
264
+ value: code.text,
265
+ textStyle: {
266
+ padding: [0, padding * (total - 1 - index), 0, 0],
267
+ },
268
+ };
269
+ }
270
+ return {
271
+ value: code.text,
272
+ textStyle: {
273
+ padding: [padding * (total - 1 - index), 0, 0, 0],
274
+ },
275
+ };
276
+ });
277
+ return axisData;
278
+ }
279
+ /**
280
+ * 处理轴层级
281
+ *
282
+ * @param {IData[]} tempaxis
283
+ * @param {number} index
284
+ * @param {IData[]} axisData
285
+ * @return {*}
286
+ * @memberof ChartOptionsGenerator
287
+ */
288
+ handleAxisLevel(tempaxis, index, axisData) {
289
+ const tempAxisData = [];
290
+ if (index === 0) {
291
+ return axisData;
292
+ }
293
+ let length = 1;
294
+ for (let i = 0; i < tempaxis.length; i++) {
295
+ length *= tempaxis[i].data.length;
296
+ }
297
+ for (let i = 0; i < length; i++) {
298
+ tempAxisData.push(...axisData);
299
+ }
300
+ return tempAxisData;
301
+ }
302
+ /**
303
+ * 合并轴参数
304
+ *
305
+ * @param {(IData[] | IData)} axisData
306
+ * @param {IData[]} tempAxis
307
+ * @return {*}
308
+ * @memberof ChartOptionsGenerator
309
+ */
310
+ mergeAxisData(axisData, tempAxis) {
311
+ if (axisData && Array.isArray(axisData)) {
312
+ return [...axisData, ...tempAxis];
313
+ }
314
+ return [axisData, ...tempAxis];
315
+ }
316
+ /**
317
+ * 处理分区模式下序列模型的坐标轴位置
318
+ *
319
+ * @param {IData[]} seriesModel
320
+ * @param {IData} opts
321
+ * @memberof ChartOptionsGenerator
322
+ */
323
+ handleSeriesModelCoordinateAxis(seriesModel, opts) {
324
+ const { xAxisParam, yAxisParam } = opts;
325
+ const xaxis = [];
326
+ const yaxis = [];
327
+ for (let i = 0; i < seriesModel.length; i++) {
328
+ const tempXAxis = clone(xAxisParam);
329
+ const tempYAxis = clone(yAxisParam);
330
+ Object.assign(tempXAxis, { gridIndex: i });
331
+ Object.assign(tempYAxis, { gridIndex: i });
332
+ // 需要模板支持解析数组参数
333
+ tempYAxis.axisLabel.formatter = function (_param) {
334
+ if (_param === 0) {
335
+ return `{top|${_param}}`;
336
+ }
337
+ return `{bottom|${_param}}`;
338
+ };
339
+ if (i !== seriesModel.length - 1) {
340
+ tempXAxis.name = '';
341
+ tempXAxis.axisLine.show = false;
342
+ tempXAxis.axisLabel.show = false;
343
+ tempXAxis.axisTick.show = false;
344
+ }
345
+ if (tempYAxis.showTitle) {
346
+ Object.assign(tempYAxis, {
347
+ name: seriesModel[i].serieText,
348
+ });
349
+ }
350
+ xaxis.push(tempXAxis);
351
+ yaxis.push(tempYAxis);
352
+ }
353
+ this.chartUserParam.xAxis = xaxis;
354
+ this.chartUserParam.yAxis = yaxis;
355
+ }
249
356
  /**
250
357
  * 初始化多分类的X轴配置
251
358
  *
@@ -253,78 +360,109 @@ export class ChartOptionsGenerator {
253
360
  * @memberof ChartOptionsGenerator
254
361
  */
255
362
  async initMultiCatalogxAxis(context, params) {
256
- var _a, _b, _c, _d, _e;
363
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
257
364
  const { controlParam } = this.model;
258
- if (controlParam && ((_a = controlParam.ctrlParams) === null || _a === void 0 ? void 0 : _a.CATALOGFIELDS)) {
365
+ // 分区模式 ,计算多个图表位置
366
+ if (controlParam && ((_a = controlParam.ctrlParams) === null || _a === void 0 ? void 0 : _a.ZONE)) {
367
+ const length = (_b = this.model.dechartSerieses) === null || _b === void 0 ? void 0 : _b.length;
368
+ if (length) {
369
+ const height = 90 / length;
370
+ const items = [];
371
+ for (let i = 0; i < length; i++) {
372
+ const top = i * height + 5;
373
+ const bottom = 100 - (height + top);
374
+ items.push({
375
+ top: `${top}%`,
376
+ bottom: `${bottom}%`,
377
+ containLabel: true,
378
+ });
379
+ }
380
+ if (this.chartUserParam) {
381
+ this.chartUserParam.grid = items;
382
+ this.handleSeriesModelCoordinateAxis(this.model.dechartSerieses, {
383
+ xAxisParam: ((_c = this.chartUserParam) === null || _c === void 0 ? void 0 : _c.xAxis) || {},
384
+ yAxisParam: ((_d = this.chartUserParam) === null || _d === void 0 ? void 0 : _d.yAxis) || {},
385
+ });
386
+ }
387
+ }
388
+ }
389
+ // 判断是否为多分类模式
390
+ if (controlParam && ((_e = controlParam.ctrlParams) === null || _e === void 0 ? void 0 : _e.CATALOGFIELDS)) {
259
391
  try {
260
392
  // 获取分类分层配置
261
393
  const tempCatalogFields = JSON.parse(controlParam.ctrlParams.CATALOGFIELDS);
262
394
  const tempaxis = [];
263
395
  let titleshow = true;
264
- let labelshoww = true;
396
+ let labelshow = true;
265
397
  let gridIndex = 0;
398
+ // 需要一个分类属性组成的JSON数组
266
399
  if (Array.isArray(tempCatalogFields)) {
267
400
  const app = ibiz.hub.getApp(context.srfappid);
268
- if (this.chartUserParam && this.chartUserParam.xAxis) {
269
- if (Array.isArray(this.chartUserParam.xAxis)) {
270
- const tempconfig = this.chartUserParam.xAxis[this.chartUserParam.xAxis.length - 1];
271
- titleshow =
272
- tempconfig.name === undefined ? true : !!tempconfig.name;
273
- labelshoww =
274
- ((_b = tempconfig.axisLabel) === null || _b === void 0 ? void 0 : _b.show) === undefined
275
- ? true
276
- : (_c = tempconfig.axisLabel) === null || _c === void 0 ? void 0 : _c.show;
401
+ if (this.chartUserParam) {
402
+ let tempconfig = {};
403
+ // 判断图表是否为横向条形图
404
+ if (((_f = controlParam.ctrlParams) === null || _f === void 0 ? void 0 : _f.MODE) === 'ROW') {
405
+ // 获取yAxis配置数据
406
+ if (Array.isArray(this.chartUserParam.yAxis)) {
407
+ tempconfig =
408
+ this.chartUserParam.yAxis[this.chartUserParam.yAxis.length - 1];
409
+ }
410
+ else {
411
+ // 计算轴标题和轴标签是否显示
412
+ tempconfig = this.chartUserParam.yAxis;
413
+ }
414
+ }
415
+ else if (Array.isArray(this.chartUserParam.xAxis)) {
416
+ // 获取xAxis配置数据
417
+ tempconfig =
418
+ this.chartUserParam.xAxis[this.chartUserParam.xAxis.length - 1];
277
419
  }
278
420
  else {
421
+ tempconfig = this.chartUserParam.xAxis;
422
+ }
423
+ // 计算轴标题和轴标签是否显示
424
+ if (tempconfig) {
279
425
  titleshow =
280
- this.chartUserParam.xAxis.name === undefined
281
- ? true
282
- : !!this.chartUserParam.xAxis.name;
283
- labelshoww =
284
- ((_d = this.chartUserParam.xAxis.axisLabel) === null || _d === void 0 ? void 0 : _d.show) === undefined
426
+ tempconfig.name === undefined ? true : !!tempconfig.name;
427
+ labelshow =
428
+ ((_g = tempconfig.axisLabel) === null || _g === void 0 ? void 0 : _g.show) === undefined
285
429
  ? true
286
- : (_e = this.chartUserParam.xAxis.axisLabel) === null || _e === void 0 ? void 0 : _e.show;
430
+ : (_h = tempconfig.axisLabel) === null || _h === void 0 ? void 0 : _h.show;
287
431
  }
288
432
  }
433
+ // 计算图表使用的grid配置
289
434
  if (this.chartUserParam &&
290
435
  this.chartUserParam.grid &&
291
436
  Array.isArray(this.chartUserParam.grid)) {
292
437
  gridIndex = this.chartUserParam.grid.length - 1;
293
438
  }
439
+ // 获取分类代码表,最后一个分类是作为序列分类处理的,
294
440
  await Promise.all(tempCatalogFields
295
441
  .slice(0, -1)
296
442
  .map(async (catalog, index) => {
443
+ var _a;
297
444
  if (catalog.mode === 'codelist' && catalog.codelistId) {
298
445
  const codeListItems = await app.codeList.get(catalog.codelistId, context, params);
299
446
  if (codeListItems) {
300
- const tempxAxisData = [];
301
- const xAxisData = codeListItems.map((code) => {
302
- return {
303
- value: code.text,
304
- textStyle: {
305
- lineHeight: 45 * (tempCatalogFields.length - 1 - index),
306
- },
307
- };
308
- });
309
- if (index === 0) {
447
+ if (((_a = controlParam.ctrlParams) === null || _a === void 0 ? void 0 : _a.MODE) === 'ROW') {
448
+ // 计算条形图时yAxis的配置以及图表的四周间隔
449
+ const yAxisData = this.handleAxisLayout(codeListItems, 40, tempCatalogFields.length, index);
450
+ // 开始计算每一层的标签刻度个数,并动态生成相应个数的配置数据
451
+ const tempxAxisData = this.handleAxisLevel(tempaxis, index, yAxisData);
310
452
  tempaxis.push({
311
- show: labelshoww,
453
+ show: labelshow,
312
454
  gridIndex,
313
455
  type: 'category',
314
- data: xAxisData,
315
- position: 'bottom',
456
+ data: tempxAxisData,
457
+ position: 'left',
316
458
  });
317
459
  }
318
460
  else {
319
- let length = 1;
320
- for (let i = 0; i < tempaxis.length; i++) {
321
- length *= tempaxis[i].data.length;
322
- }
323
- for (let i = 0; i < length; i++) {
324
- tempxAxisData.push(...xAxisData);
325
- }
461
+ // 计算横轴在分层下的xAxis配置以及图表四周间隔
462
+ const xAxisData = this.handleAxisLayout(codeListItems, 24, tempCatalogFields.length, index, false);
463
+ const tempxAxisData = this.handleAxisLevel(tempaxis, index, xAxisData);
326
464
  tempaxis.push({
327
- show: labelshoww,
465
+ show: labelshow,
328
466
  gridIndex,
329
467
  type: 'category',
330
468
  data: tempxAxisData,
@@ -334,63 +472,87 @@ export class ChartOptionsGenerator {
334
472
  }
335
473
  }
336
474
  }));
475
+ // 计算分类分层显示情况下的轴标题
337
476
  const mergeName = tempCatalogFields
338
477
  .map((catalog) => {
339
478
  return catalog.name;
340
479
  })
341
480
  .join('/');
342
- tempaxis.push({
343
- type: 'category',
344
- gridIndex,
345
- show: titleshow,
346
- data: [
347
- {
348
- value: mergeName,
349
- textStyle: {
350
- lineHeight: labelshoww ? 45 * tempCatalogFields.length : 45,
351
- },
352
- },
353
- ],
354
- position: 'bottom',
355
- });
481
+ let catalogLength = tempCatalogFields.length;
482
+ if (!labelshow) {
483
+ catalogLength = 1;
484
+ }
485
+ if (!titleshow) {
486
+ catalogLength -= 1;
487
+ }
356
488
  if (this.chartUserParam) {
357
- if (this.chartUserParam.xAxis &&
358
- Array.isArray(this.chartUserParam.xAxis)) {
359
- this.chartUserParam.xAxis = [
360
- ...this.chartUserParam.xAxis,
361
- ...tempaxis,
362
- ];
363
- }
364
- else if (this.chartUserParam.xAxis) {
365
- this.chartUserParam.xAxis = [
366
- this.chartUserParam.xAxis,
367
- ...tempaxis,
368
- ];
369
- }
370
489
  if (!this.chartUserParam.grid) {
371
490
  this.chartUserParam.grid = {};
372
491
  }
373
- let { length } = tempCatalogFields;
374
- if (!labelshoww) {
375
- length = 1;
376
- }
377
- if (!titleshow) {
378
- length -= 1;
379
- }
380
- if (length === 0) {
381
- Object.assign(this.chartUserParam.grid, {
382
- bottom: 45,
492
+ if (((_j = controlParam.ctrlParams) === null || _j === void 0 ? void 0 : _j.MODE) === 'ROW') {
493
+ // 动态计算条形图四周的间隙
494
+ if (catalogLength === 0) {
495
+ Object.assign(this.chartUserParam.grid, {
496
+ bottom: 45,
497
+ });
498
+ }
499
+ else {
500
+ Object.assign(this.chartUserParam.grid, {
501
+ left: (catalogLength + 1) * 40,
502
+ });
503
+ }
504
+ // 计算完纵轴分层布局数据并合并用户参数
505
+ tempaxis.push({
506
+ type: 'category',
507
+ gridIndex,
508
+ show: titleshow,
509
+ data: [
510
+ {
511
+ value: mergeName.split('').join('\n'),
512
+ textStyle: {
513
+ padding: [0, catalogLength * 40, 0, 0],
514
+ },
515
+ },
516
+ ],
517
+ position: 'left',
383
518
  });
519
+ if (this.chartUserParam.yAxis) {
520
+ this.chartUserParam.yAxis = this.mergeAxisData(this.chartUserParam.yAxis, tempaxis);
521
+ }
384
522
  }
385
523
  else {
386
- Object.assign(this.chartUserParam.grid, {
387
- bottom: (length > 2 ? length - 1 : length) * 45,
524
+ if (catalogLength === 0) {
525
+ Object.assign(this.chartUserParam.grid, {
526
+ bottom: 30,
527
+ });
528
+ }
529
+ else {
530
+ Object.assign(this.chartUserParam.grid, {
531
+ bottom: (catalogLength + 1) * 24,
532
+ });
533
+ }
534
+ tempaxis.push({
535
+ type: 'category',
536
+ gridIndex,
537
+ show: titleshow,
538
+ data: [
539
+ {
540
+ value: mergeName,
541
+ textStyle: {
542
+ padding: [24 * catalogLength, 0, 0, 0],
543
+ },
544
+ },
545
+ ],
546
+ position: 'bottom',
388
547
  });
548
+ if (this.chartUserParam.xAxis) {
549
+ this.chartUserParam.xAxis = this.mergeAxisData(this.chartUserParam.xAxis, tempaxis);
550
+ }
389
551
  }
390
552
  }
391
553
  }
392
554
  }
393
- catch (_f) {
555
+ catch (_k) {
394
556
  throw new Error(ibiz.i18n.t('runtime.control.chart.errorJson'));
395
557
  }
396
558
  }
@@ -1 +1 @@
1
- {"version":3,"file":"radar-series-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/radar-series-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAiB,MAAM,yBAAyB,CAAC;AAG7E;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,mBAAmB,CAAC,iBAAiB,CAAC;IAC9E,SAAS,CAAC,iBAAiB,IAAI,YAAY;IAM3C;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI;IAoBzC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,GAAG,YAAY,EAAE;CA4B1D"}
1
+ {"version":3,"file":"radar-series-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/radar-series-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAiB,MAAM,yBAAyB,CAAC;AAG7E;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,mBAAmB,CAAC,iBAAiB,CAAC;IAC9E,SAAS,CAAC,iBAAiB,IAAI,YAAY;IAM3C;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI;IAuBzC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,GAAG,YAAY,EAAE;CA4B1D"}
@@ -1,4 +1,4 @@
1
- import { mergeDeepRight } from 'ramda';
1
+ import { clone, mergeDeepRight } from 'ramda';
2
2
  import { BaseSeriesGenerator, DEFAULT_GROUP } from './base-series-generator';
3
3
  import { RadarCoordSystem } from './radar-coord-system';
4
4
  /**
@@ -21,7 +21,10 @@ export class RadarSeriesGenerator extends BaseSeriesGenerator {
21
21
  * @param {IData[]} data
22
22
  */
23
23
  calcRadarCoordSystem(data) {
24
- const groupData = this.calcGroupData(data);
24
+ const tempItems = data.map((item) => {
25
+ return clone(item);
26
+ });
27
+ const groupData = this.calcGroupData(tempItems);
25
28
  // 创建雷达坐标系对象
26
29
  if (!this.chartGenerator.radarMap.has(this.catalogField)) {
27
30
  this.chartGenerator.radarMap.set(this.catalogField, new RadarCoordSystem(this.chartGenerator.radarMap.size));
@@ -73,7 +73,7 @@ export declare class CustomDashboardController implements ICustomDesign {
73
73
  */
74
74
  params: IParams;
75
75
  /**
76
- * 自定义定制范围类型(public:公开,personal:个人,data:数据,默认是按照个人区分,配置了应用功能组件才生效)
76
+ * 自定义定制范围类型(public:公开,personal:个人,data:数据,dynamic: 自定义动态,默认是按照个人区分,配置了应用功能组件才生效)
77
77
  *
78
78
  * @author tony001
79
79
  * @date 2024-04-24 19:04:47
@@ -96,13 +96,6 @@ export declare class CustomDashboardController implements ICustomDesign {
96
96
  * @type {string}
97
97
  */
98
98
  ownerId: string;
99
- /**
100
- * 是否多模式
101
- *
102
- * @type {boolean}
103
- * @memberof CustomDashboardController
104
- */
105
- multiMode: boolean;
106
99
  /**
107
100
  * Creates an instance of BaseController.
108
101
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"custom-dashboard.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/dashboard/custom-dashboard.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;GAMG;AACH,qBAAa,yBAA0B,YAAW,aAAa;IA+GpD,KAAK,EAAE,UAAU;IACjB,SAAS,EAAE,mBAAmB;IA/GvC;;;;;OAKG;IACH,eAAe,EAAE,KAAK,EAAE,CAAM;IAE9B;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAM;IAExB;;;;;OAKG;IACH,aAAa,EAAE,KAAK,CAAM;IAE1B;;;;;;OAMG;IACH,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC;IAElC;;;;;;OAMG;IACH,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC;IAE9B;;;;;;OAMG;IACH,OAAO,EAAE,QAAQ,CAAC;IAElB;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;OAMG;IACH,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAc;IAE9D;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;OAMG;IACH,OAAO,EAAE,MAAM,CAAM;IAErB;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAS;IAE3B;;;;;OAKG;gBAEM,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,mBAAmB;IAOvC;;;;;;OAMG;IACH,OAAO,CAAC,IAAI;IAmCZ;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;;;OAKG;IACG,mBAAmB,IAAI,OAAO,CAAC,KAAK,CAAC;IA0B3C;;;;OAIG;IACG,oBAAoB,IAAI,OAAO,CAAC,KAAK,CAAC;IAK5C;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,GAAE,KAAU,GAAG,OAAO,CAAC,KAAK,CAAC;CA8B5E"}
1
+ {"version":3,"file":"custom-dashboard.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/dashboard/custom-dashboard.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;GAMG;AACH,qBAAa,yBAA0B,YAAW,aAAa;IAuGpD,KAAK,EAAE,UAAU;IACjB,SAAS,EAAE,mBAAmB;IAvGvC;;;;;OAKG;IACH,eAAe,EAAE,KAAK,EAAE,CAAM;IAE9B;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAM;IAExB;;;;;OAKG;IACH,aAAa,EAAE,KAAK,CAAM;IAE1B;;;;;;OAMG;IACH,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC;IAElC;;;;;;OAMG;IACH,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC;IAE9B;;;;;;OAMG;IACH,OAAO,EAAE,QAAQ,CAAC;IAElB;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;OAMG;IACH,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAc;IAE9D;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;OAMG;IACH,OAAO,EAAE,MAAM,CAAM;IAErB;;;;;OAKG;gBAEM,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,mBAAmB;IAOvC;;;;;;OAMG;IACH,OAAO,CAAC,IAAI;IAkCZ;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;;;OAKG;IACG,mBAAmB,IAAI,OAAO,CAAC,KAAK,CAAC;IA0B3C;;;;OAIG;IACG,oBAAoB,IAAI,OAAO,CAAC,KAAK,CAAC;IAK5C;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,GAAE,KAAU,GAAG,OAAO,CAAC,KAAK,CAAC;CA8B5E"}
@@ -45,7 +45,7 @@ export class CustomDashboardController {
45
45
  */
46
46
  this.portletConfig = {};
47
47
  /**
48
- * 自定义定制范围类型(public:公开,personal:个人,data:数据,默认是按照个人区分,配置了应用功能组件才生效)
48
+ * 自定义定制范围类型(public:公开,personal:个人,data:数据,dynamic: 自定义动态,默认是按照个人区分,配置了应用功能组件才生效)
49
49
  *
50
50
  * @author tony001
51
51
  * @date 2024-04-24 19:04:47
@@ -68,13 +68,6 @@ export class CustomDashboardController {
68
68
  * @type {string}
69
69
  */
70
70
  this.ownerId = '';
71
- /**
72
- * 是否多模式
73
- *
74
- * @type {boolean}
75
- * @memberof CustomDashboardController
76
- */
77
- this.multiMode = false;
78
71
  this.context = dashboard.context;
79
72
  this.params = dashboard.params;
80
73
  this.init(dashboard.controlParams);
@@ -102,7 +95,6 @@ export class CustomDashboardController {
102
95
  this.ownerId = this.context[controlParams.owner_id];
103
96
  }
104
97
  if (controlParams.multimode === 'true') {
105
- this.multiMode = true;
106
98
  this.type = 'dynamic';
107
99
  }
108
100
  // 配置了应用功能组件则走应用功能组件服务存储,否则走rt的config存储
@@ -31,6 +31,14 @@ export declare class DashboardController extends ControlController<IDashboard, I
31
31
  portlets: {
32
32
  [key: string]: IPortletController;
33
33
  };
34
+ /**
35
+ * 启用动态
36
+ *
37
+ * @author tony001
38
+ * @date 2024-06-27 11:06:24
39
+ * @type {boolean}
40
+ */
41
+ enableDynamic: boolean;
34
42
  protected initState(): void;
35
43
  protected onCreated(): Promise<void>;
36
44
  /**
@@ -58,6 +66,23 @@ export declare class DashboardController extends ControlController<IDashboard, I
58
66
  * @memberof DashboardController
59
67
  */
60
68
  resetPortlets(): Promise<void>;
69
+ /**
70
+ * 加载动态
71
+ *
72
+ * @author tony001
73
+ * @date 2024-06-27 16:06:21
74
+ * @return {*} {Promise<IData[]>}
75
+ */
76
+ loadAllDynaPortlet(): Promise<IData[]>;
77
+ /**
78
+ * 通过指定标识加载门户部件
79
+ *
80
+ * @author tony001
81
+ * @date 2024-06-27 17:06:12
82
+ * @param {string} id
83
+ * @return {*} {(Promise<IDBPortletPart | undefined>)}
84
+ */
85
+ loadDynaPortletById(id: string): Promise<IDBPortletPart | undefined>;
61
86
  /**
62
87
  * 通知所有表单成员表单操作过程中的数据变更
63
88
  *
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/dashboard/dashboard.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGjD;;;;;;;;GAQG;AACH,qBAAa,mBACX,SAAQ,iBAAiB,CAAC,UAAU,EAAE,eAAe,EAAE,eAAe,CACtE,YAAW,oBAAoB;IAE/B;;;;;;OAMG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAM;IAEpD;;;;;;OAMG;IACH,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAErD,SAAS,CAAC,SAAS,IAAI,IAAI;cAIX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB1C;;;;;;;;OAQG;IACG,YAAY,CAChB,aAAa,EAAE,cAAc,EAAE,EAC/B,MAAM,CAAC,EAAE,2BAA2B,GACnC,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;;;OAMG;IACG,kBAAkB,CAAC,MAAM,GAAE,KAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3D;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC;;;;;;OAMG;IACG,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAQnD"}
1
+ {"version":3,"file":"dashboard.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/dashboard/dashboard.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EAEV,cAAc,EACf,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGjD;;;;;;;;GAQG;AACH,qBAAa,mBACX,SAAQ,iBAAiB,CAAC,UAAU,EAAE,eAAe,EAAE,eAAe,CACtE,YAAW,oBAAoB;IAE/B;;;;;;OAMG;IACH,SAAS,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAM;IAEpD;;;;;;OAMG;IACH,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAM;IAErD;;;;;;OAMG;IACH,aAAa,EAAE,OAAO,CAAS;IAE/B,SAAS,CAAC,SAAS,IAAI,IAAI;cAIX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB1C;;;;;;;;OAQG;IACG,YAAY,CAChB,aAAa,EAAE,cAAc,EAAE,EAC/B,MAAM,CAAC,EAAE,2BAA2B,GACnC,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;;;OAMG;IACG,kBAAkB,CAAC,MAAM,GAAE,KAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3D;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC;;;;;;OAMG;IACG,kBAAkB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAkB5C;;;;;;;OAOG;IACG,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAmB1E;;;;;;OAMG;IACG,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAQnD"}
@@ -1,3 +1,4 @@
1
+ import { clone } from 'ramda';
1
2
  import { ControlType } from '../../../constant';
2
3
  import { getPortletProvider } from '../../../register';
3
4
  import { handleAllSettled } from '../../../utils';
@@ -31,13 +32,26 @@ export class DashboardController extends ControlController {
31
32
  * @type {{ [key: string]: IPortletController }}
32
33
  */
33
34
  this.portlets = {};
35
+ /**
36
+ * 启用动态
37
+ *
38
+ * @author tony001
39
+ * @date 2024-06-27 11:06:24
40
+ * @type {boolean}
41
+ */
42
+ this.enableDynamic = false;
34
43
  }
35
44
  initState() {
36
45
  super.initState();
37
46
  }
38
47
  async onCreated() {
48
+ this.model.enableCustomized = true;
39
49
  await super.onCreated();
40
50
  await this.initPortlets(this.model.controls);
51
+ // 设置启用动态
52
+ if (this.controlParams.enabledynamic === 'true') {
53
+ this.enableDynamic = true;
54
+ }
41
55
  // 实体门户视图监听视图数据变更,刷新界面行为组的状态。
42
56
  const { appDataEntityId } = this.view.model;
43
57
  if (appDataEntityId) {
@@ -117,6 +131,44 @@ export class DashboardController extends ControlController {
117
131
  });
118
132
  this.evt.emit('onResetPortlet', undefined);
119
133
  }
134
+ /**
135
+ * 加载动态
136
+ *
137
+ * @author tony001
138
+ * @date 2024-06-27 16:06:21
139
+ * @return {*} {Promise<IData[]>}
140
+ */
141
+ async loadAllDynaPortlet() {
142
+ var _a;
143
+ const app = ibiz.hub.getApp(ibiz.env.appId);
144
+ const res = await app.deService.exec('psappportlet', 'fetchdefault', this.context, {
145
+ size: 1000,
146
+ n_pssysappid_eq: app.model.codeName,
147
+ n_dynamodelflag_noteq: 0,
148
+ });
149
+ if (res && ((_a = res.data) === null || _a === void 0 ? void 0 : _a.length) > 0) {
150
+ return res.data;
151
+ }
152
+ return [];
153
+ }
154
+ /**
155
+ * 通过指定标识加载门户部件
156
+ *
157
+ * @author tony001
158
+ * @date 2024-06-27 17:06:12
159
+ * @param {string} id
160
+ * @return {*} {(Promise<IDBPortletPart | undefined>)}
161
+ */
162
+ async loadDynaPortletById(id) {
163
+ const app = ibiz.hub.getApp(ibiz.env.appId);
164
+ const tempContext = clone(this.context);
165
+ Object.assign(tempContext, { psappportlet: id });
166
+ const res = await app.deService.exec('psappportlet', 'get', tempContext, this.params);
167
+ if (res && res.data && res.data.controlmodel) {
168
+ const controlModel = JSON.parse(res.data.controlmodel);
169
+ return (await ibiz.hub.translationModelToDsl(controlModel, 'CTRL'));
170
+ }
171
+ }
120
172
  /**
121
173
  * 通知所有表单成员表单操作过程中的数据变更
122
174
  *
@@ -57,6 +57,13 @@ export declare class FormMDCtrlFormController extends FormMDCtrlController {
57
57
  * @type {string}
58
58
  */
59
59
  deName: string;
60
+ /**
61
+ * 数据集合
62
+ *
63
+ * @type {IData[]}
64
+ * @memberof FormMDCtrlFormController
65
+ */
66
+ items: IData[];
60
67
  /**
61
68
  * 初始化
62
69
  *
@@ -74,6 +81,13 @@ export declare class FormMDCtrlFormController extends FormMDCtrlController {
74
81
  * @return {*} {Promise<void>}
75
82
  */
76
83
  fetchData(): Promise<void>;
84
+ /**
85
+ * 更新数据
86
+ * - 仅支持更新临时数据
87
+ * @return {*} {Promise<void>}
88
+ * @memberof FormMDCtrlFormController
89
+ */
90
+ updateData(): Promise<void>;
77
91
  /**
78
92
  * 表单状态变更通知
79
93
  *
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl-form.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,wBAAyB,SAAQ,oBAAoB;IAChE;;;;;;OAMG;IACK,KAAK,EAAE,mBAAmB,CAAC;IAEnC;;;;OAIG;IACH,oBAAoB,UAAS;IAE7B,SAAS,CAAC,WAAW,IAAI,mBAAmB;IAI5C;;;;OAIG;IACH,OAAO,mCAA0C;IAEjD;;;;;;OAMG;IACH,YAAY,EAAG,gBAAgB,CAAC;IAEhC;;;;;OAKG;IACH,OAAO,EAAG,eAAe,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;;;;OAQG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB7B;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBhC;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IA6BpE;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IASlC;;;;;;OAMG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAkB5B,OAAO,IAAI,IAAI;IAIT,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;CAKvC"}
1
+ {"version":3,"file":"form-mdctrl-form.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,wBAAyB,SAAQ,oBAAoB;IAChE;;;;;;OAMG;IACK,KAAK,EAAE,mBAAmB,CAAC;IAEnC;;;;OAIG;IACH,oBAAoB,UAAS;IAE7B,SAAS,CAAC,WAAW,IAAI,mBAAmB;IAI5C;;;;OAIG;IACH,OAAO,mCAA0C;IAEjD;;;;;;OAMG;IACH,YAAY,EAAG,gBAAgB,CAAC;IAEhC;;;;;OAKG;IACH,OAAO,EAAG,eAAe,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,KAAK,EAAE,KAAK,EAAE,CAAM;IAEpB;;;;;;;;OAQG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB7B;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBhC;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBjC;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IA6BpE;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IASlC;;;;;;OAMG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAkB5B,OAAO,IAAI,IAAI;IAIT,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;CAKvC"}