@gct-paas/excel 0.1.40-beta.0 → 0.1.40-beta.3

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 (111) hide show
  1. package/dist/{BaseComponent-BTolXjlE.js → BaseComponent-B9o59n-h.js} +2 -2
  2. package/dist/{VueVideoPlayer-Dvf7Ya7H.js → VueVideoPlayer-CAWYWBHi.js} +2 -2
  3. package/dist/{align-editor-jp0NsOnT.js → align-editor-a4DQt4Un.js} +1 -1
  4. package/dist/{barcode-design-ClfdoOKn.js → barcode-design-CBqUEPYu.js} +2 -2
  5. package/dist/base/index.es.js +228 -150
  6. package/dist/{diagonal-design-Br0xpyqC.js → diagonal-design-u23896Ky.js} +2 -2
  7. package/dist/{dynamic-table-action-C-HIKtZG.js → dynamic-table-action-BWI4Gaqi.js} +241 -131
  8. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-BHExrYFJ.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-BvrrN6te.js} +428 -282
  9. package/dist/{edit.utils-CXmmCnxE-D4-n_eOM.js → edit.utils-CXmmCnxE-XxpC8ALV.js} +1 -1
  10. package/dist/excel.css +3098 -4130
  11. package/dist/{exceljs.min-BH63KI8s.js → exceljs.min-DfbB110X.js} +2 -2
  12. package/dist/{font-editor-QSpu9bjJ.js → font-editor-BtSCLMrM.js} +3 -3
  13. package/dist/{image-design-ySQAmnTF.js → image-design-CtE-Lw7N.js} +2 -2
  14. package/dist/{index-CTO4kNz9.js → index-3WwCV4xR.js} +1 -1
  15. package/dist/{index-CvDQjwre.js → index-51LtNdZ2.js} +1 -1
  16. package/dist/{index-DZGqXE3S.js → index-731OYkrc.js} +3 -3
  17. package/dist/{index-DYxskDRv.js → index-7aS5L4ot.js} +3 -3
  18. package/dist/{index-CMOvPSr6.js → index-9S48hpoJ.js} +2 -2
  19. package/dist/{index-C2RMbM6E.js → index-B0cdcIWq.js} +2 -2
  20. package/dist/{index-4_qe7Eco.js → index-BC8hQ4vo.js} +2 -2
  21. package/dist/{index-ibQys99q.js → index-BFg5eUdY.js} +1 -1
  22. package/dist/{index-CN-rY-3F.js → index-BGAcYDx-.js} +1 -1
  23. package/dist/{index-B6Bs-q34.js → index-BKXb3VJc.js} +2 -2
  24. package/dist/{index-BXXvFDgt.js → index-BMoz_QhA.js} +1 -1
  25. package/dist/{index-Cf7KwZfa.js → index-BP-LhXXV.js} +4 -4
  26. package/dist/{index-BxEjRF0o.js → index-BRQkrFQ9.js} +2 -2
  27. package/dist/{index-CUrMIr2v.js → index-Bc61F6Hm.js} +2 -2
  28. package/dist/{index-COx1-SPe.js → index-BfBuxgcp.js} +2 -2
  29. package/dist/{index-Qf8D5LdT.js → index-Bnb70qEi.js} +3 -3
  30. package/dist/{index-BOaDYNtp.js → index-CAdDeEzJ.js} +2 -2
  31. package/dist/{index-BHiNdrGr.js → index-CIa37rQm.js} +2 -2
  32. package/dist/{index-QTmeSdj9.js → index-CL9K9orM.js} +2 -2
  33. package/dist/{index-8yhxxqYM.js → index-CPTGioxl.js} +1 -1
  34. package/dist/{index-FSCxAVGq.js → index-CVsoaxTR.js} +2 -2
  35. package/dist/{index-dhaw5vxN.js → index-CYLAVQfT.js} +3 -3
  36. package/dist/{index-Cb-I6DkL.js → index-Ca9TLzUh.js} +1 -1
  37. package/dist/{index-B3mCVcXB.js → index-CdHVHaxO.js} +2 -2
  38. package/dist/{index-2FWN7Q91.js → index-CeEhYXl9.js} +2 -2
  39. package/dist/{index-C7DwXZ-K.js → index-CpPk8P3L.js} +1 -1
  40. package/dist/{index-nBc_3R3r.js → index-DNj0vFvx.js} +1 -1
  41. package/dist/{index-DbPA5PUX.js → index-DVEe11uM.js} +1 -1
  42. package/dist/{index-BJ6ZaX-f.js → index-DdWefZMa.js} +2 -2
  43. package/dist/{index-uVpJOLb3.js → index-DeHX7rte.js} +5 -4
  44. package/dist/{index-D9zBCWpE.js → index-Dyomjz3y.js} +2 -2
  45. package/dist/{index-D3IdoYWe.js → index-I1r5pfu5.js} +2 -2
  46. package/dist/{index-BJQd1G0r.js → index-IVc1dOet.js} +3 -3
  47. package/dist/{index-Ca8q7yXC.js → index-aNV9T6LI.js} +2 -2
  48. package/dist/{index-oOLbaFI8.js → index-ixQwAcB1.js} +18201 -20494
  49. package/dist/index.es.js +2 -2
  50. package/dist/{mb-render-BRejJNP-.js → mb-render-Bs9S9oFn.js} +2 -2
  51. package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-QX4lxsni.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-CRyGHP7k.js} +1 -1
  52. package/dist/{pagination-design-pTh3Fqbz.js → pagination-design-CmbsdlMe.js} +2 -2
  53. package/dist/paper-widget-design-DIhsk1I9.js +4 -0
  54. package/dist/{print-runtime-instance-CBUjws4D.js → print-runtime-instance-DQysbz5n.js} +1 -1
  55. package/dist/{print-snapshot-renderer-s0IhY_T_.js → print-snapshot-renderer-DWHjMsOC.js} +3 -3
  56. package/dist/{qrcode-design-CnKOb-s9.js → qrcode-design-CX0_2mLC.js} +1 -1
  57. package/dist/{revo-grid.entry-BqbaKcyR.js → revo-grid.entry-DbmWFi7p.js} +1 -1
  58. package/dist/{revogr-attribution_7.entry-jmN78nkb.js → revogr-attribution_7.entry-BWQDu7fq.js} +3 -3
  59. package/dist/{revogr-clipboard_3.entry-eK74i7_f.js → revogr-clipboard_3.entry-BtTYHFZi.js} +2 -2
  60. package/dist/{revogr-data_4.entry-D2lAUBEM.js → revogr-data_4.entry-CWPXyZ7g.js} +2 -2
  61. package/dist/{revogr-filter-panel.entry-C-1WXBDy.js → revogr-filter-panel.entry-5gYct0XI.js} +1 -1
  62. package/dist/seal-design-BhzgwVju.js +4 -0
  63. package/dist/{serialnumber-design-DEYD9ku_.js → serialnumber-design-aSqL4gX6.js} +1 -1
  64. package/dist/shared/index.es.js +9 -9
  65. package/dist/{single-field-drop-Bd3PcWQF.js → single-field-drop-C67wLHxK.js} +2 -2
  66. package/dist/{size-editor-DiZ8E2R6.js → size-editor-BHGTPLir.js} +1 -1
  67. package/dist/src/domain/table/business/material/material-substitution/profile/field-keys.d.ts +21 -0
  68. package/dist/src/domain/table/business/material/material-substitution/runtime/row-change-handlers.d.ts +3 -0
  69. package/dist/src/domain/table/business/sterilize/entrust-steril-batch-list/profile/field-keys.d.ts +2 -0
  70. package/dist/src/nocode-base/src/core/sub-table/pretreatment-list-table-core.d.ts +1 -0
  71. package/dist/src/nocode-base/src/core/sub-table/profile-driven-sub-table-core.d.ts +2 -2
  72. package/dist/src/nocode-base/src/core/sub-table/utils/sterilize/field-keys.d.ts +1 -2
  73. package/dist/src/nocode-base/src/hooks/formula-params-cache.d.ts +15 -0
  74. package/dist/src/nocode-base/src/hooks/render-page/sterilization-date.d.ts +3 -0
  75. package/dist/src/nocode-base/src/hooks/useCalcFunction.d.ts +8 -2
  76. package/dist/src/nocode-base/src/runtime/async-task-coordinator.d.ts +6 -2
  77. package/dist/src/nocode-base/src/runtime/multi-sheet-runtime.d.ts +2 -0
  78. package/dist/src/nocode-base/src/runtime/runtime-field-initializer.d.ts +1 -1
  79. package/dist/src/nocode-base/src/runtime/runtime-form-state-store.d.ts +6 -0
  80. package/dist/src/nocode-base/src/runtime/runtime-validation-service.d.ts +1 -0
  81. package/dist/src/nocode-base/src/runtime/table-row-identity.d.ts +11 -2
  82. package/dist/src/nocode-base/src/types/fields/i-sign.d.ts +1 -1
  83. package/dist/src/nocode-base/src/types/render/mc-render.d.ts +1 -1
  84. package/dist/src/nocode-web-render/src/render/sub-table/material-consume/mc-web-render.d.ts +1 -1
  85. package/dist/src/online-form/src/views/render/__components__/_field_/trace/utils/use-rule-props.d.ts +0 -3
  86. package/dist/src/online-form/src/views/render/sheet-tab-bar.vue.d.ts +5 -3
  87. package/dist/src/shared/components/DoubleInput/double-input.vue.d.ts +162 -2
  88. package/dist/src/shared/components/LimitedNumberInput/limited-number-input.vue.d.ts +41 -0
  89. package/dist/src/shared/components/LimitedNumberInput/number-input-rules.d.ts +16 -0
  90. package/dist/src/shared/components/Signature/logic/index.d.ts +1 -1
  91. package/dist/{sub-table-factory-B6HdlZ7-.js → sub-table-factory-DTtDvr17.js} +34 -19
  92. package/dist/{text-design-D2IwsbOW.js → text-design-Dz0Qf2O3.js} +2 -2
  93. package/dist/{throttle-Cpk1LoGk-DRpYOKiV.js → throttle-Cpk1LoGk-CgtsG2CV.js} +1 -1
  94. package/dist/{timediff-design-Cq3SADlb.js → timediff-design-D9JfNqH8.js} +1 -1
  95. package/dist/{trace-like-wrapper-Qmczl-Hz.js → trace-like-wrapper-BXgr0Uv3.js} +2 -2
  96. package/dist/{value-editor.vue_vue_type_style_index_0_lang-UXPOa0Wv.js → value-editor.vue_vue_type_style_index_0_lang-doohzADY.js} +2 -2
  97. package/dist/web-render/index.es.js +3 -3
  98. package/dist/{widget-barcode-C7wO0SFO.js → widget-barcode-XF3nCU9v.js} +4 -4
  99. package/dist/{widget-diagonal-Cbuv8o5A.js → widget-diagonal-DSym7fks.js} +3 -3
  100. package/dist/{widget-image-4AeqjwGp.js → widget-image-CmjwkVs7.js} +5 -5
  101. package/dist/{widget-line--RgXiyvO.js → widget-line-BX64xVfU.js} +2 -2
  102. package/dist/{widget-pagination-jr6bVWPW.js → widget-pagination-BV89Lvjt.js} +5 -5
  103. package/dist/{widget-power-ptilZfAF.js → widget-power-DoSfQv92.js} +3 -3
  104. package/dist/{widget-qrcode-DH-1741M.js → widget-qrcode-UGcRLC56.js} +3 -3
  105. package/dist/{widget-rangelimit-B4yv3Qw3.js → widget-rangelimit-CUHD__1H.js} +3 -3
  106. package/dist/{widget-serialnumber-AZ2IUJTg.js → widget-serialnumber-CAkZR5Xl.js} +1 -1
  107. package/dist/{widget-text-CW0A1n16.js → widget-text-DtYVTThu.js} +5 -5
  108. package/dist/{widget-timediff-C3xTGqfj.js → widget-timediff-DX_IoCMO.js} +2 -2
  109. package/package.json +2 -2
  110. package/dist/paper-widget-design-CBI-8vTV.js +0 -4
  111. package/dist/seal-design-CMJBAfIN.js +0 -4
@@ -1901,7 +1901,14 @@ function applyFillFromMaterialNoOption(row, source) {
1901
1901
  return applyFillFromMapping$1(row, source, FILL_FROM_MATERIAL_NO_OPTION);
1902
1902
  }
1903
1903
  function applyFillFromProductOption$1(row, source) {
1904
- return applyFillFromMapping$1(row, source, FILL_FROM_PRODUCT_OPTION$1);
1904
+ const defaults2 = source.__DEFAULT__;
1905
+ const product = defaults2 && typeof defaults2 === "object" ? Object.fromEntries(
1906
+ FILL_FROM_PRODUCT_OPTION$1.map(({ optionField }) => [
1907
+ optionField,
1908
+ defaults2[optionField] ?? source[optionField]
1909
+ ])
1910
+ ) : source;
1911
+ return applyFillFromMapping$1(row, product, FILL_FROM_PRODUCT_OPTION$1);
1905
1912
  }
1906
1913
  function isBlank$d(value) {
1907
1914
  return value === void 0 || value === null || value === "";
@@ -3238,6 +3245,8 @@ const F$3 = {
3238
3245
  targetMaterialNo: "target_material_no_",
3239
3246
  /** 替换物料批号 ID */
3240
3247
  targetMaterialNoId: "target_material_no__id_",
3248
+ /** 替换物料批号展示值 */
3249
+ targetMaterialNoLb: "target_material_no__lb_",
3241
3250
  /** 替换物料 */
3242
3251
  targetProduct: "target_product_id_",
3243
3252
  /** 替换物料名称 */
@@ -3291,7 +3300,30 @@ const SCAN_ROW_CONTENT_FIELDS = [
3291
3300
  F$3.targetMaterialNo,
3292
3301
  F$3.targetProduct
3293
3302
  ];
3303
+ const FILL_FROM_TARGET_PRODUCT_OPTION = [
3304
+ { optionField: "material_name_", toField: F$3.targetMaterialNo },
3305
+ { optionField: "product_id_.name_", toField: F$3.targetProductName },
3306
+ { optionField: "product_id_.code_", toField: F$3.targetProductCode },
3307
+ { optionField: "product_id_.spec_", toField: F$3.targetProductSpec },
3308
+ { optionField: "qty_consumed_", toField: F$3.targetQtyConsumed }
3309
+ ];
3310
+ const CLEAR_ON_TARGET_PRODUCT_EMPTY = [
3311
+ F$3.targetMaterialNo,
3312
+ F$3.targetMaterialNoId,
3313
+ F$3.targetMaterialNoLb,
3314
+ F$3.targetProductName,
3315
+ F$3.targetProductCode,
3316
+ F$3.targetProductSpec,
3317
+ F$3.targetQtyConsumed
3318
+ ];
3294
3319
  const fields$4 = [
3320
+ {
3321
+ match: { fieldKey: F$3.targetProduct },
3322
+ autofillTemplates: FILL_FROM_TARGET_PRODUCT_OPTION.map(({ optionField, toField }) => ({
3323
+ fromField: optionField,
3324
+ toField
3325
+ }))
3326
+ },
3295
3327
  {
3296
3328
  match: { fieldKey: F$3.sourceProduct },
3297
3329
  autofillTemplates: FILL_FROM_SOURCE_PRODUCT_OPTION.map(({ optionField, toField }) => ({
@@ -3341,6 +3373,11 @@ const profile$6 = {
3341
3373
  },
3342
3374
  fields: fields$4,
3343
3375
  rowHandlers: [
3376
+ {
3377
+ when: "onFieldChange",
3378
+ watch: [F$3.targetProduct],
3379
+ handler: "on-target-product-change"
3380
+ },
3344
3381
  {
3345
3382
  when: "onFieldChange",
3346
3383
  watch: [F$3.sourceProduct],
@@ -3382,12 +3419,19 @@ function handleTargetMaterialNoChange(ctx) {
3382
3419
  }
3383
3420
  clearFields$1(ctx.rowData, CLEAR_ON_TARGET_MATERIAL_NO_EMPTY);
3384
3421
  }
3422
+ function handleTargetProductChange(ctx) {
3423
+ if (!isBlank$3(ctx.rowData[F$3.targetProduct])) return;
3424
+ clearFields$1(ctx.rowData, CLEAR_ON_TARGET_PRODUCT_EMPTY);
3425
+ }
3385
3426
  registerRowHandler(TABLE_TYPE$5, "on-source-product-change", ({ rowData }) => {
3386
3427
  handleSourceProductChange({ rowData });
3387
3428
  });
3388
3429
  registerRowHandler(TABLE_TYPE$5, "on-target-material-no-change", ({ rowData }) => {
3389
3430
  handleTargetMaterialNoChange({ rowData });
3390
3431
  });
3432
+ registerRowHandler(TABLE_TYPE$5, "on-target-product-change", ({ rowData }) => {
3433
+ handleTargetProductChange({ rowData });
3434
+ });
3391
3435
  const F$2 = {
3392
3436
  /** 点检日期 */
3393
3437
  inspectionDate: "inspection_date_",
@@ -3478,6 +3522,14 @@ const profile$4 = {
3478
3522
  },
3479
3523
  fields: fields$2
3480
3524
  };
3525
+ const LOCKED_INPUT_FIELDS = [
3526
+ "product_id_",
3527
+ "product_id_name_",
3528
+ "product_id_code_",
3529
+ "product_id_spec_",
3530
+ "mfg_order_code_",
3531
+ "mfg_order_id_"
3532
+ ];
3481
3533
  const TABLE_TYPE$2 = "entrust-steril-batch-list";
3482
3534
  const profile$3 = {
3483
3535
  type: TABLE_TYPE$2,
@@ -3494,6 +3546,12 @@ const profile$3 = {
3494
3546
  refModelType: "PRODUCTION_CONTAINER_LIST_4_STERILIZATION",
3495
3547
  tableType: SubTableType.STERILIZE_BATCH
3496
3548
  },
3549
+ fields: [
3550
+ {
3551
+ match: { fieldKey: [...LOCKED_INPUT_FIELDS] },
3552
+ defaultProps: { required: true, disabled: true, fieldDisabled: true }
3553
+ }
3554
+ ],
3497
3555
  theme: {
3498
3556
  color: "#2196D5",
3499
3557
  background: "rgba(33,150,213,0.2)",
@@ -59483,11 +59541,54 @@ async function requestNonMedProCheckDsData(payload) {
59483
59541
  return Object.keys(byTable).length > 0 ? { byTable } : void 0;
59484
59542
  }
59485
59543
  const RUNTIME_COLUMN_ROW_KEY = "_column_row_key_";
59544
+ const MAX_FRONT_ROW_KEY_LENGTH = 255;
59545
+ const TABLE_2D_ROW_KEY_PREFIX = "2d1.";
59546
+ function encodeBase64Url(value) {
59547
+ return btoa(
59548
+ Array.from(new TextEncoder().encode(value), (byte) => String.fromCharCode(byte)).join("")
59549
+ ).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
59550
+ }
59551
+ function decodeBase64Url(value) {
59552
+ const base64 = value.replace(/-/g, "+").replace(/_/g, "/");
59553
+ const padded = base64 + "=".repeat((4 - base64.length % 4) % 4);
59554
+ return new TextDecoder().decode(Uint8Array.from(atob(padded), (char) => char.charCodeAt(0)));
59555
+ }
59556
+ function decodeTableCellRowKey(rowKey) {
59557
+ if (typeof rowKey !== "string" || !rowKey.startsWith(TABLE_2D_ROW_KEY_PREFIX)) return void 0;
59558
+ try {
59559
+ const parsed = JSON.parse(decodeBase64Url(rowKey.slice(TABLE_2D_ROW_KEY_PREFIX.length)));
59560
+ if (!Array.isArray(parsed) || parsed.length !== 2 || parsed.some((item) => typeof item !== "string" || item === ""))
59561
+ return void 0;
59562
+ return { cellRowKey: parsed[0], columnRowKey: parsed[1] };
59563
+ } catch {
59564
+ return void 0;
59565
+ }
59566
+ }
59567
+ function encodeTableCellRowKey(cellRowKey, columnRowKey) {
59568
+ const decoded = decodeTableCellRowKey(cellRowKey);
59569
+ const originalCellRowKey = decoded?.cellRowKey ?? String(cellRowKey ?? "");
59570
+ const persistedColumnRowKey = String(columnRowKey ?? "");
59571
+ if (!originalCellRowKey || !persistedColumnRowKey)
59572
+ throw new Error("二维表子行或关联列缺少 front_row_key_");
59573
+ if (decoded?.columnRowKey === persistedColumnRowKey) return String(cellRowKey);
59574
+ const encoded = `${TABLE_2D_ROW_KEY_PREFIX}${encodeBase64Url(
59575
+ JSON.stringify([originalCellRowKey, persistedColumnRowKey])
59576
+ )}`;
59577
+ if (encoded.length > MAX_FRONT_ROW_KEY_LENGTH)
59578
+ throw new Error(`二维表内置关联键长度超过 ${MAX_FRONT_ROW_KEY_LENGTH},不能提交`);
59579
+ return encoded;
59580
+ }
59581
+ function isTableRowKeyMatch(rowKey, expected) {
59582
+ if (rowKey == null || expected == null) return false;
59583
+ const actual = String(rowKey);
59584
+ const target = String(expected);
59585
+ return actual === target || decodeTableCellRowKey(actual)?.cellRowKey === target;
59586
+ }
59486
59587
  function findRuntimeTableRow(rows, rowKey) {
59487
59588
  if (!rowKey || !Array.isArray(rows)) return void 0;
59488
59589
  for (const row of rows) {
59489
59590
  if (!row || row.deleted_) continue;
59490
- if (String(row[FRONT_ROW_KEY]) === rowKey) return row;
59591
+ if (isTableRowKeyMatch(row[FRONT_ROW_KEY], rowKey)) return row;
59491
59592
  const child = findRuntimeTableRow(row._2DTABLE_, rowKey);
59492
59593
  if (child) return child;
59493
59594
  }
@@ -59496,8 +59597,8 @@ function findRuntimeTableRow(rows, rowKey) {
59496
59597
  function findRuntimeParentRow(rows, rowKey) {
59497
59598
  if (!rowKey || !Array.isArray(rows)) return void 0;
59498
59599
  return rows.find(
59499
- (row) => !row?.deleted_ && (String(row[FRONT_ROW_KEY]) === rowKey || row._2DTABLE_?.some(
59500
- (child) => !child?.deleted_ && String(child[FRONT_ROW_KEY]) === rowKey
59600
+ (row) => !row?.deleted_ && (isTableRowKeyMatch(row[FRONT_ROW_KEY], rowKey) || row._2DTABLE_?.some(
59601
+ (child) => !child?.deleted_ && isTableRowKeyMatch(child[FRONT_ROW_KEY], rowKey)
59501
59602
  ))
59502
59603
  );
59503
59604
  }
@@ -59533,8 +59634,9 @@ function bindRuntimeTableColumns(state, relations) {
59533
59634
  );
59534
59635
  for (const child of parent._2DTABLE_) {
59535
59636
  if (child[RUNTIME_COLUMN_ROW_KEY]) continue;
59637
+ const persistedIdentity = decodeTableCellRowKey(child[FRONT_ROW_KEY]);
59536
59638
  const reference = info.rowRefFieldKey ? child[info.rowRefFieldKey] : void 0;
59537
- let column;
59639
+ let businessColumn;
59538
59640
  if (reference != null && reference !== "" && info.colRefFieldKey) {
59539
59641
  const matches = columns.filter(
59540
59642
  (candidate) => String(candidate[info.colRefFieldKey]) === String(reference)
@@ -59543,14 +59645,20 @@ function bindRuntimeTableColumns(state, relations) {
59543
59645
  throw new Error(
59544
59646
  `二维表「${info.rowSubFieldKey}」的关联列引用「${reference}」无法唯一匹配`
59545
59647
  );
59546
- column = matches[0];
59547
- } else {
59548
- if (child.id_)
59549
- throw new Error(
59550
- `二维表「${info.rowSubFieldKey}」已保存子行「${child[FRONT_ROW_KEY]}」缺少关联列引用`
59551
- );
59552
- column = available.shift();
59553
- }
59648
+ businessColumn = matches[0];
59649
+ }
59650
+ const persistedColumn = persistedIdentity ? columns.find(
59651
+ (candidate) => ensureFrontRowKey(candidate) === persistedIdentity.columnRowKey
59652
+ ) : void 0;
59653
+ if (persistedIdentity && !persistedColumn)
59654
+ throw new Error(
59655
+ `二维表「${info.rowSubFieldKey}」子行「${child[FRONT_ROW_KEY]}」的内置关联列不存在`
59656
+ );
59657
+ if (businessColumn && persistedColumn && businessColumn !== persistedColumn)
59658
+ throw new Error(
59659
+ `二维表「${info.rowSubFieldKey}」子行「${child[FRONT_ROW_KEY]}」的业务引用与内置关联冲突`
59660
+ );
59661
+ const column = businessColumn ?? persistedColumn ?? available.shift();
59554
59662
  if (!column) throw new Error(`二维表「${info.rowSubFieldKey}」缺少可绑定的关联列行`);
59555
59663
  const columnKey = ensureFrontRowKey(column);
59556
59664
  if (bound.has(columnKey))
@@ -59681,7 +59789,10 @@ function setSubTableFormState(modeType, sInfo, formState) {
59681
59789
  if (is2DTable || isCheckTable) {
59682
59790
  const grouped = groupBy(subFormData.data, "group_");
59683
59791
  const restoredData = Object.entries(grouped).map(([groupKey, items]) => {
59684
- const commonFields = getCommonFields(items);
59792
+ const commonFields = omit(
59793
+ getCommonFields(items),
59794
+ ["id_", ...sInfo.crossFieldKeys ?? [], sInfo.rowRefFieldKey].filter(Boolean)
59795
+ );
59685
59796
  const _2DTABLE_ = items.map((item) => {
59686
59797
  if (!isEmpty(item.value_) && item.type_ === FIELD_TYPE.BOOLEAN) {
59687
59798
  item.value_ = [true, "true", "1", "yes", "y"].includes(item.value_);
@@ -60369,6 +60480,7 @@ const transformUtils = {
60369
60480
  materialConsumeTableList = []
60370
60481
  } = layout || {};
60371
60482
  const list2D = [...subTable2DList, ...checkTable2DList];
60483
+ bindRuntimeTableColumns(formData, list2D);
60372
60484
  const filterKeys = [
60373
60485
  "_DICT",
60374
60486
  "_OPCT",
@@ -60377,6 +60489,14 @@ const transformUtils = {
60377
60489
  CLIENT_ROW_UID_KEY,
60378
60490
  RUNTIME_COLUMN_ROW_KEY
60379
60491
  ];
60492
+ const hasBusinessData = (data) => Object.entries(data).some(([key, value]) => {
60493
+ if (key === FRONT_ROW_KEY || key === "group_") return false;
60494
+ if ((key === "deleted_" || key === "delete_") && !value) return false;
60495
+ if (isNil(value) || value === "") return false;
60496
+ if (Array.isArray(value)) return value.length > 0;
60497
+ if (isObject$1(value)) return !isEmpty(value);
60498
+ return true;
60499
+ });
60380
60500
  const realFormData = Object.keys(formData).reduce((acc, fieldKey) => {
60381
60501
  const info = list2D.find(
60382
60502
  (item) => (item.subTable2d || item.checkTable2d) && item.rowSubFieldKey === fieldKey
@@ -60393,37 +60513,46 @@ const transformUtils = {
60393
60513
  }
60394
60514
  }
60395
60515
  if (info) {
60516
+ const parentExcludedKeys = info.subTable2d ? ["id_", ...info.crossFieldKeys ?? [], info.rowRefFieldKey].filter(Boolean) : [];
60396
60517
  const columns = new Map(
60397
60518
  (formData[info.colSubFieldKey] ?? []).map((column) => [column[FRONT_ROW_KEY], column])
60398
60519
  );
60399
60520
  const arr = flatMap(
60400
60521
  formData[fieldKey],
60401
- (row) => (row._2DTABLE_ ?? []).map((child) => {
60522
+ (row) => flatMap(row._2DTABLE_ ?? [], (child) => {
60523
+ const submitRow = omit(
60524
+ merge(
60525
+ pickBy(omit(row, [...filterKeys, ...parentExcludedKeys]), (value) => !isNil(value)),
60526
+ pickBy(omit(child, filterKeys), (value) => !isNil(value))
60527
+ ),
60528
+ "_2DTABLE_"
60529
+ );
60530
+ if (info.subTable2d && (isNil(child.id_) || child.id_ === "")) delete submitRow.id_;
60531
+ if (!info.subTable2d && !hasBusinessData(submitRow)) return [];
60402
60532
  const column = columns.get(child[RUNTIME_COLUMN_ROW_KEY]);
60403
60533
  if (info.colSubFieldKey && !column) {
60404
60534
  throw new Error(
60405
60535
  `二维表「${fieldKey}」子行「${child[FRONT_ROW_KEY]}」缺少关联列行,不能提交`
60406
60536
  );
60407
60537
  }
60408
- if (column && info.rowRefFieldKey && (column[info.colRefFieldKey] == null || column[info.colRefFieldKey] === "")) {
60409
- throw new Error(
60410
- `二维表「${fieldKey}」关联列「${column[FRONT_ROW_KEY]}」缺少可保存的引用值,不能提交`
60411
- );
60412
- }
60413
- return omit(
60538
+ const businessReference = column && info.rowRefFieldKey && info.colRefFieldKey ? column[info.colRefFieldKey] : void 0;
60539
+ const canSaveBusinessReference = businessReference != null && businessReference !== "";
60540
+ const persistedSubmitRow = column && !canSaveBusinessReference ? {
60541
+ ...omit(submitRow, info.rowRefFieldKey),
60542
+ [FRONT_ROW_KEY]: encodeTableCellRowKey(
60543
+ child[FRONT_ROW_KEY],
60544
+ column[FRONT_ROW_KEY]
60545
+ )
60546
+ } : submitRow;
60547
+ return [
60414
60548
  merge(
60415
- pickBy(omit(row, filterKeys), (value) => !isNil(value)),
60416
- pickBy(omit(child, filterKeys), (value) => !isNil(value)),
60417
- column && info.rowRefFieldKey ? { [info.rowRefFieldKey]: column[info.colRefFieldKey] } : {}
60418
- ),
60419
- "_2DTABLE_"
60420
- );
60549
+ persistedSubmitRow,
60550
+ column && info.rowRefFieldKey && canSaveBusinessReference ? { [info.rowRefFieldKey]: businessReference } : {}
60551
+ )
60552
+ ];
60421
60553
  })
60422
60554
  );
60423
- acc[fieldKey] = arr.every((item) => {
60424
- const keys2 = Object.keys(item).filter((key) => key !== FRONT_ROW_KEY);
60425
- return keys2.length === 1 && has(item, "group_");
60426
- }) ? [] : arr;
60555
+ acc[fieldKey] = arr;
60427
60556
  } else if (Array.isArray(formData[fieldKey])) {
60428
60557
  acc[fieldKey] = formData[fieldKey].map(
60429
60558
  (item) => Object.fromEntries(
@@ -60443,7 +60572,7 @@ const transformUtils = {
60443
60572
  return omit(realFormData, filterKeys);
60444
60573
  },
60445
60574
  getFormDataIdsMap: (formData, preserveKeys = []) => {
60446
- const preserveKeySet = /* @__PURE__ */ new Set([FRONT_ROW_KEY, ...preserveKeys.filter(Boolean)]);
60575
+ const preserveKeySet = /* @__PURE__ */ new Set([FRONT_ROW_KEY, "group_", ...preserveKeys.filter(Boolean)]);
60447
60576
  const shouldKeepAsIs = (key, isFirstLevel) => key === "id_" || isFirstLevel && key.startsWith("record_no_") || preserveKeySet.has(key);
60448
60577
  const processEntry = (entry, isFirstLevel = false) => {
60449
60578
  if (Array.isArray(entry)) {
@@ -61257,6 +61386,17 @@ async function getRefList({
61257
61386
  totalCount: 0
61258
61387
  };
61259
61388
  }
61389
+ if ((bizType || fieldType) === FIELD_TYPE.E_SOP || refModelKey === "em_document") {
61390
+ const settings = window.NocodeAdapter.hooks?.useBusinessSetting?.();
61391
+ await settings?.ensureBusinessSettingLoaded?.();
61392
+ if (settings?.businessSetting?.enableSopDocApprove) {
61393
+ queryData = {
61394
+ ...queryData,
61395
+ operating_state_: true,
61396
+ approve_status_: "EFFECTIVE"
61397
+ };
61398
+ }
61399
+ }
61260
61400
  const params = {
61261
61401
  modelKey,
61262
61402
  fieldKey,
@@ -67081,27 +67221,27 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
67081
67221
  case "revo-grid":
67082
67222
  return import(
67083
67223
  /* webpackMode: "lazy" */
67084
- "./revo-grid.entry-BqbaKcyR.js"
67224
+ "./revo-grid.entry-DbmWFi7p.js"
67085
67225
  ).then(processMod, consoleError);
67086
67226
  case "revogr-filter-panel":
67087
67227
  return import(
67088
67228
  /* webpackMode: "lazy" */
67089
- "./revogr-filter-panel.entry-C-1WXBDy.js"
67229
+ "./revogr-filter-panel.entry-5gYct0XI.js"
67090
67230
  ).then(processMod, consoleError);
67091
67231
  case "revogr-attribution_7":
67092
67232
  return import(
67093
67233
  /* webpackMode: "lazy" */
67094
- "./revogr-attribution_7.entry-jmN78nkb.js"
67234
+ "./revogr-attribution_7.entry-BWQDu7fq.js"
67095
67235
  ).then(processMod, consoleError);
67096
67236
  case "revogr-clipboard_3":
67097
67237
  return import(
67098
67238
  /* webpackMode: "lazy" */
67099
- "./revogr-clipboard_3.entry-eK74i7_f.js"
67239
+ "./revogr-clipboard_3.entry-BtTYHFZi.js"
67100
67240
  ).then(processMod, consoleError);
67101
67241
  case "revogr-data_4":
67102
67242
  return import(
67103
67243
  /* webpackMode: "lazy" */
67104
- "./revogr-data_4.entry-D2lAUBEM.js"
67244
+ "./revogr-data_4.entry-CWPXyZ7g.js"
67105
67245
  ).then(processMod, consoleError);
67106
67246
  }
67107
67247
  }
@@ -72148,7 +72288,7 @@ function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
72148
72288
  stack["delete"](other);
72149
72289
  return result;
72150
72290
  }
72151
- var Uint8Array = root.Uint8Array;
72291
+ var Uint8Array$1 = root.Uint8Array;
72152
72292
  function mapToArray(map) {
72153
72293
  var index2 = -1, result = Array(map.size);
72154
72294
  map.forEach(function(value, key) {
@@ -72176,7 +72316,7 @@ function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
72176
72316
  object = object.buffer;
72177
72317
  other = other.buffer;
72178
72318
  case arrayBufferTag$1:
72179
- if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
72319
+ if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array$1(object), new Uint8Array$1(other))) {
72180
72320
  return false;
72181
72321
  }
72182
72322
  return true;
@@ -77338,11 +77478,11 @@ function groupFixedTableRows(rows, options) {
77338
77478
  }
77339
77479
  export {
77340
77480
  PlatformEnum as $,
77341
- ParamModelTypeEnum as A,
77481
+ isDynamicCellSubTable as A,
77342
77482
  BwipCodeType as B,
77343
77483
  ComponentTypeEnum as C,
77344
77484
  DateObjectContext as D,
77345
- api as E,
77485
+ ParamModelTypeEnum as E,
77346
77486
  FIELD_TYPE as F,
77347
77487
  FieldTypeToJs as G,
77348
77488
  CreateType as H,
@@ -77366,7 +77506,7 @@ export {
77366
77506
  mitt as Z,
77367
77507
  isDateObjectField as _,
77368
77508
  getProfile as a,
77369
- BindCmpStyleEnum as a$,
77509
+ getParseRuleValue as a$,
77370
77510
  LabelPosition as a0,
77371
77511
  BooleanShowMode as a1,
77372
77512
  SignatureImageDirectionEnum as a2,
@@ -77394,16 +77534,16 @@ export {
77394
77534
  AITooltips as aO,
77395
77535
  DenoiseMethodOptions as aP,
77396
77536
  BinarizeMethodOptions as aQ,
77397
- JoinModelTypeEum as aR,
77398
- sqlUtils as aS,
77399
- DateFormat as aT,
77400
- LOT_CONTAINER_ROLE as aU,
77401
- buildLotSnListQuery as aV,
77402
- renderUtils as aW,
77403
- resolveLotRecordByValue as aX,
77404
- materialCheck as aY,
77405
- getLotLockedReason as aZ,
77406
- validateReinspectionDate as a_,
77537
+ DateFormat as aR,
77538
+ LOT_CONTAINER_ROLE as aS,
77539
+ buildLotSnListQuery as aT,
77540
+ renderUtils as aU,
77541
+ resolveLotRecordByValue as aV,
77542
+ materialCheck as aW,
77543
+ getLotLockedReason as aX,
77544
+ validateReinspectionDate as aY,
77545
+ BindCmpStyleEnum as aZ,
77546
+ getParseRuleInfo as a_,
77407
77547
  PaperSizeMap as aa,
77408
77548
  clampSealPosition as ab,
77409
77549
  normalizeSealDiameter as ac,
@@ -77432,36 +77572,36 @@ export {
77432
77572
  ImageDisplayModeEnum as az,
77433
77573
  isBusinessSubTableProfile as b,
77434
77574
  bindRuntimeTableColumns as b$,
77435
- getParseRuleInfo as b0,
77436
- getParseRuleValue as b1,
77437
- normalizeRefLoaderResult as b2,
77438
- STOCKTAKE_DIMENSION as b3,
77439
- F$8 as b4,
77440
- resolveStocktakeSelectApi as b5,
77441
- readSealValue as b6,
77442
- isSealStamped as b7,
77443
- RenderModeEnum as b8,
77444
- stampSealValue as b9,
77445
- baseDataUtils as bA,
77446
- initializeSealFields as bB,
77447
- normalizeToArray as bC,
77448
- safeParseArray as bD,
77449
- BpmnNodeTypeEnum as bE,
77450
- mergeByMultiKey as bF,
77451
- evaluateInspectionDecisionRule as bG,
77452
- areValidationCommentsEqual as bH,
77453
- useNocodeEmitter as bI,
77454
- commonUtils as bJ,
77455
- BpmnSignatureTypeEnum as bK,
77456
- ButtonTypeEnum as bL,
77457
- CHECK_TABLE_MEDPRO_PROTOCOL_KEY as bM,
77458
- CodeRunner as bN,
77459
- Config_Fields as bO,
77460
- ControlStatusEnum as bP,
77461
- DEVICE_SEARCH_API as bQ,
77462
- DeviceStatus as bR,
77463
- EBR_PROVIDE_ENUM as bS,
77464
- EFieldBizTypeEnum as bT,
77575
+ normalizeRefLoaderResult as b0,
77576
+ STOCKTAKE_DIMENSION as b1,
77577
+ F$8 as b2,
77578
+ resolveStocktakeSelectApi as b3,
77579
+ readSealValue as b4,
77580
+ isSealStamped as b5,
77581
+ RenderModeEnum as b6,
77582
+ stampSealValue as b7,
77583
+ isValidSealValue as b8,
77584
+ clearSealValue as b9,
77585
+ normalizeToArray as bA,
77586
+ safeParseArray as bB,
77587
+ BpmnNodeTypeEnum as bC,
77588
+ mergeByMultiKey as bD,
77589
+ evaluateInspectionDecisionRule as bE,
77590
+ areValidationCommentsEqual as bF,
77591
+ useNocodeEmitter as bG,
77592
+ commonUtils as bH,
77593
+ BpmnSignatureTypeEnum as bI,
77594
+ ButtonTypeEnum as bJ,
77595
+ CHECK_TABLE_MEDPRO_PROTOCOL_KEY as bK,
77596
+ CodeRunner as bL,
77597
+ Config_Fields as bM,
77598
+ ControlStatusEnum as bN,
77599
+ DEVICE_SEARCH_API as bO,
77600
+ DeviceStatus as bP,
77601
+ EBR_PROVIDE_ENUM as bQ,
77602
+ EFieldBizTypeEnum as bR,
77603
+ JoinModelTypeEum as bS,
77604
+ MAX_FRONT_ROW_KEY_LENGTH as bT,
77465
77605
  MobileFillTypeEnum as bU,
77466
77606
  OfficeTypeEnum as bV,
77467
77607
  PosEnum as bW,
@@ -77469,202 +77609,208 @@ export {
77469
77609
  SummaryApproveHisTypeEnum as bY,
77470
77610
  applyCheckDsDataToRuntime as bZ,
77471
77611
  applyMedProCheckDsDataToRuntime as b_,
77472
- isValidSealValue as ba,
77473
- clearSealValue as bb,
77474
- normalizeProductionContainerOptions as bc,
77475
- buildProductionLotListQuery as bd,
77476
- refUtils as be,
77477
- buildInspectionLotListQuery as bf,
77478
- buildDeviceFilterQuery as bg,
77479
- DEVICE_GROUP_QUERY_KEY as bh,
77480
- getRowId as bi,
77481
- findRuntimeTableRow as bj,
77482
- calculateFormula as bk,
77483
- findRuntimeParentRow as bl,
77484
- useOnlineFormTransformField2Component as bm,
77485
- FormulaRuleFieldKeyEnum as bn,
77486
- formulaRuleFieldDict as bo,
77487
- resolveDesignPanelFeatures as bp,
77488
- BIZ_TABLE_CONFIG_SEED_TYPES as bq,
77489
- STOCKTAKE_DIMENSION_OPTIONS as br,
77490
- isRepeatingSubTablePanelType as bs,
77491
- moveSealValue as bt,
77492
- uuid2 as bu,
77493
- assembleRules as bv,
77494
- isAttachFieldActive as bw,
77495
- fetchHistoryConsume as bx,
77496
- isBomGranted as by,
77497
- parseFrontConfig as bz,
77612
+ normalizeProductionContainerOptions as ba,
77613
+ buildProductionLotListQuery as bb,
77614
+ refUtils as bc,
77615
+ buildInspectionLotListQuery as bd,
77616
+ buildDeviceFilterQuery as be,
77617
+ DEVICE_GROUP_QUERY_KEY as bf,
77618
+ getRowId as bg,
77619
+ findRuntimeTableRow as bh,
77620
+ calculateFormula as bi,
77621
+ findRuntimeParentRow as bj,
77622
+ useOnlineFormTransformField2Component as bk,
77623
+ FormulaRuleFieldKeyEnum as bl,
77624
+ formulaRuleFieldDict as bm,
77625
+ resolveDesignPanelFeatures as bn,
77626
+ BIZ_TABLE_CONFIG_SEED_TYPES as bo,
77627
+ STOCKTAKE_DIMENSION_OPTIONS as bp,
77628
+ isRepeatingSubTablePanelType as bq,
77629
+ moveSealValue as br,
77630
+ uuid2 as bs,
77631
+ assembleRules as bt,
77632
+ isAttachFieldActive as bu,
77633
+ fetchHistoryConsume as bv,
77634
+ isBomGranted as bw,
77635
+ parseFrontConfig as bx,
77636
+ baseDataUtils as by,
77637
+ initializeSealFields as bz,
77498
77638
  getProfileByTableType as c,
77499
- F$5 as c$,
77639
+ INVENTORY_BASE_FIELDS as c$,
77500
77640
  buildDeviceBaseQuery as c0,
77501
77641
  calcFillData as c1,
77502
77642
  calcUtils as c2,
77503
- ensureFrontRowKey as c3,
77504
- ensureTableRowKeys as c4,
77505
- extractKeywordFromQueryData as c5,
77506
- fetchCheckDsDataForTable as c6,
77507
- fetchCustomCheckDsData as c7,
77508
- fetchMedProCheckDsData as c8,
77509
- findRuntimeTableCell as c9,
77510
- groupFixedTableRows as cA,
77511
- processQuickFillRows as cB,
77512
- getIsGroupEmpty as cC,
77513
- getAugmentedNamespace as cD,
77514
- CardControlEnum as cE,
77515
- EntityModelTypeEnum as cF,
77516
- RecordNoGenerateEnum as cG,
77517
- TagTypeEnum as cH,
77518
- F$6 as cI,
77519
- SCAN_ROW_CONTENT_FIELDS as cJ,
77520
- F$3 as cK,
77521
- F$7 as cL,
77522
- runRowHandler as cM,
77523
- F$a as cN,
77524
- F$9 as cO,
77525
- FILL_FROM_SOURCE_PRODUCT_OPTION as cP,
77526
- FILL_FROM_TARGET_MATERIAL_NO_OPTION as cQ,
77527
- FILL_FROM_INVENTORY_OPTION$2 as cR,
77528
- FILL_FROM_PART_OPTION as cS,
77529
- FILL_FROM_INVENTORY_OPTION$3 as cT,
77530
- TABLE_TYPE$b as cU,
77531
- FILL_FROM_INVENTORY_OPTION$1 as cV,
77532
- INVENTORY_BASE_FIELDS as cW,
77533
- resolveGroupByWarehouse as cX,
77534
- AUTO_LOAD_READONLY_SELECT_FIELDS as cY,
77535
- buildFillFromInventoryOption as cZ,
77536
- resolveStocktakeInventoryApi as c_,
77537
- getCheckTableSnapshotKey as ca,
77538
- getParseRuleConfig as cb,
77539
- getReinspectionDate as cc,
77540
- getRenderedRuntimeTableCell as cd,
77541
- handleOldConfig as ce,
77542
- hasAnyCheckTableSnapshot as cf,
77543
- hasByTableCheckTableSnapshot as cg,
77544
- hasSharedCheckTableSnapshot as ch,
77545
- isMedProSuite as ci,
77546
- jsonSchemaUtils as cj,
77547
- judgeUnique as ck,
77548
- migrateDiagonalDirectionToVertex as cl,
77549
- relocateDeletedRowsToEnd as cm,
77550
- requestMedProCheckDsData as cn,
77551
- requestNonMedProCheckDsData as co,
77552
- stockCheck as cp,
77553
- useOnlineFormActionButton as cq,
77554
- getFieldPlaceholder as cr,
77555
- isReferenceOptionActive as cs,
77556
- FRONT_ROW_KEY as ct,
77557
- filterRulesByTrigger as cu,
77558
- isEmptyValue as cv,
77559
- buildError as cw,
77560
- resetTableRowIdentity as cx,
77561
- q as cy,
77562
- QUICK_FILL_ALLOWED_FIELDS as cz,
77643
+ decodeTableCellRowKey as c3,
77644
+ encodeTableCellRowKey as c4,
77645
+ ensureFrontRowKey as c5,
77646
+ ensureTableRowKeys as c6,
77647
+ extractKeywordFromQueryData as c7,
77648
+ fetchCheckDsDataForTable as c8,
77649
+ fetchCustomCheckDsData as c9,
77650
+ buildError as cA,
77651
+ resetTableRowIdentity as cB,
77652
+ q as cC,
77653
+ QUICK_FILL_ALLOWED_FIELDS as cD,
77654
+ groupFixedTableRows as cE,
77655
+ processQuickFillRows as cF,
77656
+ getIsGroupEmpty as cG,
77657
+ getAugmentedNamespace as cH,
77658
+ CardControlEnum as cI,
77659
+ EntityModelTypeEnum as cJ,
77660
+ RecordNoGenerateEnum as cK,
77661
+ TagTypeEnum as cL,
77662
+ F$6 as cM,
77663
+ SCAN_ROW_CONTENT_FIELDS as cN,
77664
+ F$3 as cO,
77665
+ FILL_FROM_TARGET_PRODUCT_OPTION as cP,
77666
+ F$7 as cQ,
77667
+ runRowHandler as cR,
77668
+ F$a as cS,
77669
+ F$9 as cT,
77670
+ FILL_FROM_SOURCE_PRODUCT_OPTION as cU,
77671
+ FILL_FROM_TARGET_MATERIAL_NO_OPTION as cV,
77672
+ FILL_FROM_INVENTORY_OPTION$2 as cW,
77673
+ FILL_FROM_PART_OPTION as cX,
77674
+ FILL_FROM_INVENTORY_OPTION$3 as cY,
77675
+ TABLE_TYPE$b as cZ,
77676
+ FILL_FROM_INVENTORY_OPTION$1 as c_,
77677
+ fetchMedProCheckDsData as ca,
77678
+ findRuntimeTableCell as cb,
77679
+ getCheckTableSnapshotKey as cc,
77680
+ getParseRuleConfig as cd,
77681
+ getReinspectionDate as ce,
77682
+ getRenderedRuntimeTableCell as cf,
77683
+ handleOldConfig as cg,
77684
+ hasAnyCheckTableSnapshot as ch,
77685
+ hasByTableCheckTableSnapshot as ci,
77686
+ hasSharedCheckTableSnapshot as cj,
77687
+ isMedProSuite as ck,
77688
+ isTableRowKeyMatch as cl,
77689
+ jsonSchemaUtils as cm,
77690
+ judgeUnique as cn,
77691
+ migrateDiagonalDirectionToVertex as co,
77692
+ relocateDeletedRowsToEnd as cp,
77693
+ requestMedProCheckDsData as cq,
77694
+ requestNonMedProCheckDsData as cr,
77695
+ sqlUtils as cs,
77696
+ stockCheck as ct,
77697
+ useOnlineFormActionButton as cu,
77698
+ getFieldPlaceholder as cv,
77699
+ isReferenceOptionActive as cw,
77700
+ FRONT_ROW_KEY as cx,
77701
+ filterRulesByTrigger as cy,
77702
+ isEmptyValue as cz,
77563
77703
  getBusinessProfileByRefModelType as d,
77564
- getCellData as d$,
77565
- FILL_FROM_INVENTORY_OPTION as d0,
77566
- composeProductionLotListQuery as d1,
77567
- F as d2,
77568
- isProductManuallyEditable as d3,
77569
- applyFillFromMfgOrderOption as d4,
77570
- applyFillFromOption as d5,
77571
- applyFillFromProductOption as d6,
77572
- MATERIAL_CONTAINER_ID as d7,
77573
- F$c as d8,
77574
- PRODUCT_QUICK_SEARCH_FIELDS as d9,
77575
- BasePlugin as dA,
77576
- reduce as dB,
77577
- columnTypes as dC,
77578
- debounce$1 as dD,
77579
- RESIZE_INTERVAL as dE,
77580
- DimensionStore as dF,
77581
- gatherTrimmedItems as dG,
77582
- getColumnSizes as dH,
77583
- getItemByIndex as dI,
77584
- DataStore as dJ,
77585
- getSourceItem as dK,
77586
- getSourceItemVirtualIndexByProp as dL,
77587
- getColumnType as dM,
77588
- setSourceByPhysicalIndex as dN,
77589
- setSourceByVirtualIndex as dO,
77590
- SelectionStore as dP,
77591
- cropCellToMax as dQ,
77592
- nextCell as dR,
77593
- isRowType as dS,
77594
- ViewportStore as dT,
77595
- AndOrButton as dU,
77596
- ReorderButton as dV,
77597
- TrashButton as dW,
77598
- isFilterBtn as dX,
77599
- ColumnService as dY,
77600
- MOBILE_CLASS as dZ,
77601
- SELECTION_BORDER_CLASS as d_,
77602
- PRODUCT_QUICK_SEARCH_EXP as da,
77603
- isProductManuallyEditable$1 as db,
77604
- applyFillFromMaterialNoOption as dc,
77605
- applyFillFromProductOption$1 as dd,
77606
- F$b as de,
77607
- FILL_FROM_INVENTORY_OPTION$4 as df,
77608
- registerInstance as dg,
77609
- createEvent as dh,
77610
- getColumnByProp as di,
77611
- timeout as dj,
77612
- getVisibleSourceItem as dk,
77613
- getColumns as dl,
77614
- rowTypes as dm,
77615
- GroupingRowPlugin as dn,
77616
- StretchColumn as dp,
77617
- isStretchPlugin as dq,
77618
- AutoSizeColumnPlugin as dr,
77619
- FilterPlugin as ds,
77620
- ExportFilePlugin as dt,
77621
- SortingPlugin as du,
77622
- ColumnMovePlugin as dv,
77623
- ThemeService as dw,
77624
- h as dx,
77625
- Host as dy,
77626
- getElement as dz,
77704
+ ReorderButton as d$,
77705
+ resolveGroupByWarehouse as d0,
77706
+ AUTO_LOAD_READONLY_SELECT_FIELDS as d1,
77707
+ buildFillFromInventoryOption as d2,
77708
+ resolveStocktakeInventoryApi as d3,
77709
+ F$5 as d4,
77710
+ FILL_FROM_INVENTORY_OPTION as d5,
77711
+ LOCKED_INPUT_FIELDS as d6,
77712
+ composeProductionLotListQuery as d7,
77713
+ F as d8,
77714
+ isProductManuallyEditable as d9,
77715
+ SortingPlugin as dA,
77716
+ ColumnMovePlugin as dB,
77717
+ ThemeService as dC,
77718
+ h as dD,
77719
+ Host as dE,
77720
+ getElement as dF,
77721
+ BasePlugin as dG,
77722
+ reduce as dH,
77723
+ columnTypes as dI,
77724
+ debounce$1 as dJ,
77725
+ RESIZE_INTERVAL as dK,
77726
+ DimensionStore as dL,
77727
+ gatherTrimmedItems as dM,
77728
+ getColumnSizes as dN,
77729
+ getItemByIndex as dO,
77730
+ DataStore as dP,
77731
+ getSourceItem as dQ,
77732
+ getSourceItemVirtualIndexByProp as dR,
77733
+ getColumnType as dS,
77734
+ setSourceByPhysicalIndex as dT,
77735
+ setSourceByVirtualIndex as dU,
77736
+ SelectionStore as dV,
77737
+ cropCellToMax as dW,
77738
+ nextCell as dX,
77739
+ isRowType as dY,
77740
+ ViewportStore as dZ,
77741
+ AndOrButton as d_,
77742
+ applyFillFromMfgOrderOption as da,
77743
+ applyFillFromOption as db,
77744
+ applyFillFromProductOption as dc,
77745
+ MATERIAL_CONTAINER_ID as dd,
77746
+ F$c as de,
77747
+ PRODUCT_QUICK_SEARCH_FIELDS as df,
77748
+ PRODUCT_QUICK_SEARCH_EXP as dg,
77749
+ isProductManuallyEditable$1 as dh,
77750
+ applyFillFromMaterialNoOption as di,
77751
+ applyFillFromProductOption$1 as dj,
77752
+ F$b as dk,
77753
+ FILL_FROM_INVENTORY_OPTION$4 as dl,
77754
+ registerInstance as dm,
77755
+ createEvent as dn,
77756
+ getColumnByProp as dp,
77757
+ timeout as dq,
77758
+ getVisibleSourceItem as dr,
77759
+ getColumns as ds,
77760
+ rowTypes as dt,
77761
+ GroupingRowPlugin as du,
77762
+ StretchColumn as dv,
77763
+ isStretchPlugin as dw,
77764
+ AutoSizeColumnPlugin as dx,
77765
+ FilterPlugin as dy,
77766
+ ExportFilePlugin as dz,
77627
77767
  expandAutofillTemplates as e,
77628
- getCellEditor as e0,
77629
- getRange as e1,
77630
- isRangeSingleCell as e2,
77631
- codesLetter as e3,
77632
- calculateRowHeaderSize as e4,
77633
- ROW_HEADER_TYPE as e5,
77634
- getScrollbarSize as e6,
77635
- FOCUS_CLASS as e7,
77636
- CELL_HANDLER_CLASS as e8,
77637
- TMP_SELECTION_BG_CLASS as e9,
77638
- MIN_COL_SIZE as eA,
77639
- FilterButton as eB,
77640
- HeaderCellRenderer as eC,
77641
- HEADER_CLASS as eD,
77642
- getItemByPosition as ea,
77643
- EDIT_INPUT_WR as eb,
77644
- keyValues as ec,
77645
- isObject as ed,
77646
- DRAGG_TEXT as ee,
77647
- PSEUDO_GROUP_ITEM as ef,
77648
- GROUP_EXPANDED as eg,
77649
- GROUP_DEPTH as eh,
77650
- GROUP_EXPAND_BTN as ei,
77651
- DATA_ROW as ej,
77652
- isGroupingColumn as ek,
77653
- GROUP_COLUMN_PROP as el,
77654
- getCellRaw as em,
77655
- DATA_COL as en,
77656
- CELL_CLASS as eo,
77657
- Build as ep,
77658
- isRowDragService as eq,
77659
- DRAG_ICON_CLASS as er,
77660
- DRAGGABLE_CLASS as es,
77661
- getCellDataParsed as et,
77662
- GROUP_EXPAND_EVENT as eu,
77663
- isGrouping as ev,
77664
- HEADER_ROW_CLASS as ew,
77665
- HEADER_ACTUAL_ROW_CLASS as ex,
77666
- ROW_FOCUSED_CLASS as ey,
77667
- HEADER_SORTABLE_CLASS as ez,
77768
+ TrashButton as e0,
77769
+ isFilterBtn as e1,
77770
+ ColumnService as e2,
77771
+ MOBILE_CLASS as e3,
77772
+ SELECTION_BORDER_CLASS as e4,
77773
+ getCellData as e5,
77774
+ getCellEditor as e6,
77775
+ getRange as e7,
77776
+ isRangeSingleCell as e8,
77777
+ codesLetter as e9,
77778
+ GROUP_EXPAND_EVENT as eA,
77779
+ isGrouping as eB,
77780
+ HEADER_ROW_CLASS as eC,
77781
+ HEADER_ACTUAL_ROW_CLASS as eD,
77782
+ ROW_FOCUSED_CLASS as eE,
77783
+ HEADER_SORTABLE_CLASS as eF,
77784
+ MIN_COL_SIZE as eG,
77785
+ FilterButton as eH,
77786
+ HeaderCellRenderer as eI,
77787
+ HEADER_CLASS as eJ,
77788
+ calculateRowHeaderSize as ea,
77789
+ ROW_HEADER_TYPE as eb,
77790
+ getScrollbarSize as ec,
77791
+ FOCUS_CLASS as ed,
77792
+ CELL_HANDLER_CLASS as ee,
77793
+ TMP_SELECTION_BG_CLASS as ef,
77794
+ getItemByPosition as eg,
77795
+ EDIT_INPUT_WR as eh,
77796
+ keyValues as ei,
77797
+ isObject as ej,
77798
+ DRAGG_TEXT as ek,
77799
+ PSEUDO_GROUP_ITEM as el,
77800
+ GROUP_EXPANDED as em,
77801
+ GROUP_DEPTH as en,
77802
+ GROUP_EXPAND_BTN as eo,
77803
+ DATA_ROW as ep,
77804
+ isGroupingColumn as eq,
77805
+ GROUP_COLUMN_PROP as er,
77806
+ getCellRaw as es,
77807
+ DATA_COL as et,
77808
+ CELL_CLASS as eu,
77809
+ Build as ev,
77810
+ isRowDragService as ew,
77811
+ DRAG_ICON_CLASS as ex,
77812
+ DRAGGABLE_CLASS as ey,
77813
+ getCellDataParsed as ez,
77668
77814
  SubTableType as f,
77669
77815
  getAllDataProfiles as g,
77670
77816
  getAllBusinessRefModelTypes as h,
@@ -77674,16 +77820,16 @@ export {
77674
77820
  runDateObjectHandler as l,
77675
77821
  companionIdKey as m,
77676
77822
  companionLabelKey as n,
77677
- PaperWidgeType as o,
77678
- PageSizeEnum as p,
77679
- BUSINESS_FIELD_TYPES as q,
77823
+ api as o,
77824
+ PaperWidgeType as p,
77825
+ PageSizeEnum as q,
77680
77826
  resolveCreateTargetByTableType as r,
77681
77827
  src as s,
77682
- resolveFieldRenderComponent as t,
77683
- parse as u,
77684
- estraverse as v,
77685
- Syntax as w,
77686
- isDynamicCreateTarget as x,
77687
- CellType as y,
77688
- isDynamicCellSubTable as z
77828
+ BUSINESS_FIELD_TYPES as t,
77829
+ resolveFieldRenderComponent as u,
77830
+ parse as v,
77831
+ estraverse as w,
77832
+ Syntax as x,
77833
+ isDynamicCreateTarget as y,
77834
+ CellType as z
77689
77835
  };