@gct-paas/excel 0.1.40-beta.21 → 0.1.40-beta.24

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 (91) hide show
  1. package/dist/{BaseComponent-CWYhEmYn.js → BaseComponent-9hkBjQjp.js} +2 -2
  2. package/dist/{VueVideoPlayer-D5zE_mXQ.js → VueVideoPlayer-yISI5amX.js} +2 -2
  3. package/dist/{align-editor-C2fibWP5.js → align-editor-ssy7gJsD.js} +1 -1
  4. package/dist/{barcode-design-l3rdfj4B.js → barcode-design-CHbO1c-N.js} +2 -2
  5. package/dist/base/index.es.js +83 -83
  6. package/dist/{diagonal-design-BPLxs9ji.js → diagonal-design-CwaKPsqR.js} +2 -2
  7. package/dist/{dynamic-table-action-D-e5iLib.js → dynamic-table-action-JR8LU5WT.js} +19 -17
  8. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_8710052f_lang-DqGN_0-g.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_8710052f_lang-BsyVWing.js} +375 -290
  9. package/dist/{edit.utils-CXmmCnxE-BNPHbukz.js → edit.utils-CXmmCnxE-CwPcGg-f.js} +1 -1
  10. package/dist/excel.css +176 -111
  11. package/dist/{exceljs.min-CyjI4C57.js → exceljs.min-wPuo8a9q.js} +2 -2
  12. package/dist/{font-editor-CGSk5kFM.js → font-editor-CGJQio2h.js} +3 -3
  13. package/dist/{image-design-D0wFVrcv.js → image-design-g9R_z-IY.js} +2 -2
  14. package/dist/{index-CxthKExE.js → index-37J1K1W1.js} +2 -2
  15. package/dist/{index-Ddsrowty.js → index-9ipSNY71.js} +2 -2
  16. package/dist/{index-17hYBH0H.js → index-B9hIqELW.js} +1 -1
  17. package/dist/{index-BBnCJHvC.js → index-BCpitZ3H.js} +368 -206
  18. package/dist/{index-SsQpzWJV.js → index-BIitBpK7.js} +3 -3
  19. package/dist/{index-_lobWWTu.js → index-BX8xuu9v.js} +3 -3
  20. package/dist/{index-Cbfa0l4P.js → index-B_95dIym.js} +2 -2
  21. package/dist/{index-WGbD1Pm6.js → index-Bk67ggPI.js} +2 -2
  22. package/dist/{index-v-rdo6ME.js → index-BoZN_3QI.js} +2 -2
  23. package/dist/{index-CrNQ4fzl.js → index-BxaqeEUh.js} +3 -3
  24. package/dist/{index-BCl6C48o.js → index-C1b5ADFV.js} +2 -2
  25. package/dist/{index-4b7WInws.js → index-C5izC2Mm.js} +3 -3
  26. package/dist/{index-DpCJBo9U.js → index-C6oivLbu.js} +1 -1
  27. package/dist/{index-CCAULEff.js → index-CX2lK91Y.js} +2 -2
  28. package/dist/{index-C03h1mdc.js → index-Cg8xpa-X.js} +4 -4
  29. package/dist/{index-CKCRmqHx.js → index-Cmr9DRpz.js} +1 -1
  30. package/dist/{index-CToveeX8.js → index-CpQiCEe7.js} +1 -1
  31. package/dist/{index-DNODemiT.js → index-CpdA5MDE.js} +2 -2
  32. package/dist/{index--BSSsMvy.js → index-D-WSp3EA.js} +1 -1
  33. package/dist/{index-DK_goJxq.js → index-D3cPbNne.js} +1 -1
  34. package/dist/{index-C4cVVxUT.js → index-DEMinegB.js} +1 -1
  35. package/dist/{index-DU5m20W6.js → index-DUma1ZGa.js} +3 -3
  36. package/dist/{index-D6YZXtdZ.js → index-DZb9l6Gw.js} +2 -2
  37. package/dist/{index-CjK1DtkT.js → index-DozFqpk2.js} +1 -1
  38. package/dist/{index-BTvFf_Od.js → index-Ds8UpdFP.js} +2 -2
  39. package/dist/{index-D9jgkb7e.js → index-KMB2TBbZ.js} +2 -2
  40. package/dist/{index-CJZP3Y8A.js → index-LiOm5nws.js} +2 -2
  41. package/dist/{index-DHBkzfbv.js → index-PUFY8idd.js} +1 -1
  42. package/dist/{index-8ar-Bsw7.js → index-PVGqEoN1.js} +2 -2
  43. package/dist/{index-DOKlk-Nf.js → index-Pgworj4S.js} +2 -2
  44. package/dist/{index-BOOwVQlO.js → index-YteSvWxT.js} +1 -1
  45. package/dist/{index-DgcqMrSq.js → index-eLwoxKzH.js} +6 -3
  46. package/dist/{index-DphJXlye.js → index-sIW7hZFQ.js} +2 -2
  47. package/dist/{index-DSTGDFEt.js → index-up8dW1VW.js} +2 -2
  48. package/dist/index.es.js +2 -2
  49. package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DcYth63e.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DjI5GeWt.js} +1 -1
  50. package/dist/{pagination-design-DGqFvJxx.js → pagination-design-BasHtAud.js} +2 -2
  51. package/dist/paper-widget-design-BWJtqIvf.js +4 -0
  52. package/dist/{print-runtime-instance-D4Pj5Qhr.js → print-runtime-instance-OTdo3422.js} +1 -1
  53. package/dist/{print-snapshot-renderer-De-pf1K_.js → print-snapshot-renderer-ByiTyPun.js} +3 -3
  54. package/dist/{qrcode-design-Ck2_tB4Q.js → qrcode-design-hSEE0IFK.js} +1 -1
  55. package/dist/{revo-grid.entry-C-HyVU26.js → revo-grid.entry-Bh8ebL13.js} +1 -1
  56. package/dist/{revogr-attribution_7.entry-ZdEPNmCh.js → revogr-attribution_7.entry-CsJaMH68.js} +3 -3
  57. package/dist/{revogr-clipboard_3.entry-DtDqwzVE.js → revogr-clipboard_3.entry-DgmZ8Pc0.js} +2 -2
  58. package/dist/{revogr-data_4.entry-CUTBFvV5.js → revogr-data_4.entry-CPW7BILy.js} +2 -2
  59. package/dist/{revogr-filter-panel.entry-uExDl-fd.js → revogr-filter-panel.entry-BpIcSbuR.js} +1 -1
  60. package/dist/seal-design-BRJgX3Fr.js +4 -0
  61. package/dist/{serialnumber-design-BvJSmeFY.js → serialnumber-design-C92sT5qW.js} +1 -1
  62. package/dist/shared/index.es.js +12 -12
  63. package/dist/{single-field-drop-Q1xjuTpb.js → single-field-drop-MFIjdRrG.js} +2 -2
  64. package/dist/{size-editor-CeB5cXTJ.js → size-editor-JdHGylGx.js} +1 -1
  65. package/dist/src/nocode-base/src/hooks/material-consume/bom-validator.d.ts +2 -2
  66. package/dist/src/online-form/src/views/__cell_widgets__/cell-widget-design.vue.d.ts +1 -0
  67. package/dist/src/online-form/src/views/designer/modules/xlsx-import-summary.vue.d.ts +11 -0
  68. package/dist/src/online-form/src/views/designer/utils/cell-field-placements.d.ts +12 -0
  69. package/dist/src/online-form/src/views/designer/utils/xlsx-parser.d.ts +9 -3
  70. package/dist/src/shared/utils/lot2sn.d.ts +14 -1
  71. package/dist/src/shared/utils/query-filter.d.ts +24 -0
  72. package/dist/{sub-table-factory-DFQip2cb.js → sub-table-factory-D6MHOXzJ.js} +9 -13
  73. package/dist/{text-design-CPMzgWXN.js → text-design-DaxQodcl.js} +2 -2
  74. package/dist/{throttle-Cpk1LoGk-DL2Yq0cn.js → throttle-Cpk1LoGk-DQh0IPeE.js} +1 -1
  75. package/dist/{timediff-design-CWiKmA7W.js → timediff-design-D84T_Isx.js} +1 -1
  76. package/dist/{trace-like-wrapper-DIsU2-KV.js → trace-like-wrapper-Dc2qmQo_.js} +5 -2
  77. package/dist/{value-editor.vue_vue_type_style_index_0_lang-Dv47SN2Z.js → value-editor.vue_vue_type_style_index_0_lang-yM2HYifj.js} +2 -2
  78. package/dist/{widget-barcode-CHBw2stC.js → widget-barcode-CN13ewGl.js} +4 -4
  79. package/dist/{widget-diagonal-NClGO5Rn.js → widget-diagonal-DMki09VI.js} +3 -3
  80. package/dist/{widget-image-_Nb1X3Xz.js → widget-image-BP_4rlRW.js} +4 -4
  81. package/dist/{widget-line-Bipjn0YA.js → widget-line-BkbZEHCt.js} +2 -2
  82. package/dist/{widget-pagination-B_Pse1Fh.js → widget-pagination-Bo31Q_F-.js} +5 -5
  83. package/dist/{widget-power-DKccfSH2.js → widget-power-DNaqREkx.js} +3 -3
  84. package/dist/{widget-qrcode-D-9tBxgw.js → widget-qrcode-DLGoKdnQ.js} +3 -3
  85. package/dist/{widget-rangelimit-BpOZXTEa.js → widget-rangelimit-CwI-0gsT.js} +3 -3
  86. package/dist/{widget-serialnumber-zGQ-Z_UV.js → widget-serialnumber-4TPNnZeQ.js} +1 -1
  87. package/dist/{widget-text-CVJ1-3y3.js → widget-text-kjnijcMF.js} +5 -5
  88. package/dist/{widget-timediff-CBonTDnJ.js → widget-timediff-CZAMM1f0.js} +2 -2
  89. package/package.json +1 -1
  90. package/dist/paper-widget-design-DrRVelBu.js +0 -4
  91. package/dist/seal-design-DjQNPduq.js +0 -4
@@ -1,13 +1,13 @@
1
1
  import * as Vue from "vue";
2
2
  import { createVNode, computed, unref, ref as ref$1, defineComponent, onMounted, resolveComponent, openBlock, createElementBlock, withCtx, watch, toRaw, inject, reactive, createBlock, Fragment, renderList, createTextVNode, toDisplayString as toDisplayString$1, createCommentVNode, createElementVNode, normalizeClass, h, normalizeStyle, watchEffect, renderSlot, shallowRef, defineAsyncComponent, resolveDynamicComponent, mergeProps, normalizeProps, guardReactiveProps, onUnmounted, Text, nextTick, onBeforeUnmount, withModifiers, withDirectives, vShow, Teleport, getCurrentScope, onScopeDispose, getCurrentInstance as getCurrentInstance$1, withKeys, vModelText, isRef, provide, isVNode as isVNode$1, createApp, render, TransitionGroup, toRefs, useAttrs, createSlots, useCssVars, onBeforeMount, toRef, mergeDefaults, toHandlers, Transition, useModel, mergeModels as mergeModels$1, onErrorCaptured, markRaw } from "vue";
3
- import { g as getAllDataProfiles, i as isDataTableProfile, a as getProfile, b as isBusinessSubTableProfile, c as getProfileByTableType, r as resolveCreateTargetByTableType, d as getBusinessProfileByRefModelType, S as SUB_TABLE_PANEL_TYPE_NAME, e as expandAutofillTemplates, f as resolveAutofillToField, h as SubTableType, j as getAllBusinessRefModelTypes, D as DateObjectContext, k as isBlank$1, F as FIELD_TYPE, l as isSameFieldValue$1, m as runDateObjectHandler, n as companionIdKey, o as companionLabelKey, p as api, I as Icon$1, w as warning, u as useInsertStyles, s as svgBaseProps, P as PaginationFormat, q as PaperWidgeType, B as BwipCodeType, L as LineType, t as PageSizeEnum, O as Orientation, v as src, T as TRACE_FIELD_TYPES, x as BUSINESS_FIELD_TYPES, y as resolveFieldRenderComponent, C as ComponentTypeEnum, z as parse$2, A as estraverse, E as Syntax, G as isDynamicCreateTarget, H as CellType, J as isDynamicCellSubTable, K as ParamModelTypeEnum, M as FieldTypeToJs, N as CreateType, Q as uuid2, R as useModal, U as requireEstraverse, V as commonjsGlobal, W as getDefaultExportFromCjs, X as PaperWidgeValueType, Y as onlineFormMasterModelTypeEnum, Z as WAREHOUSE_FIELD_TYPES, _ as UniqueConstraintType, $ as FieldDefaultValueTypeEnum, a0 as FormTypeEnum, a1 as mitt, a2 as isDateObjectField, a3 as PlatformEnum, a4 as LabelPosition, a5 as BooleanShowMode, a6 as SignatureImageDirectionEnum, a7 as FallbackSignTypeEnum, a8 as SignatureNumberTypeEnum, a9 as SignatureTimeTypeEnum, aa as SignShowTypeEnum, ab as SignatureTypeEnum, ac as useNamespace, ad as _export_sfc, ae as normalizeFieldType, af as PaperSizeMap, ag as getFieldMain, ah as buildUUID, ai as FieldIconMap, aj as BigNumber, ak as FieldSysVarDefaultValueEnum, al as CellWidgetViewState, am as DiagonalDirection, an as WidgetImageSizeMode, ao as LineDirection, ap as TimeDiffFormat, aq as DiagonalVertex, ar as resolveDiagonalVertex, as as getThemeColorByTableType, at as ViewTypeEnum, au as isDynamicSubTablePanelType, av as isFixedSubTablePanelType, aw as ExpressionModeEnum, ax as ReturnTypeEnum, ay as ExpressionTabEnum, az as RangeValidateMode, aA as RangeCompareOp, aB as getExclusiveBusinessTypeTokens, aC as getSubTableTypeByRefModelType, aD as findFieldMain, aE as DecimalDisplayMode$1, aF as ImageDisplayModeEnum, aG as FormDesignEnum, aH as BASIC_FIELD_TYPES, aI as getAllTableProfiles, aJ as getAugmentedNamespace, aK as transformUtils, aL as EmptySymbol, aM as ASSIGNMENTSTRATEGY_ENUM, aN as Dependency_ENUM, aO as EntityModelCategoryEnum, aP as resolveLotDisplayLabel, aQ as CheckDsTypeEnum, aR as DeviceLink, aS as DeviceParamsTypeTitle, aT as AITooltips, aU as DenoiseMethodOptions, aV as BinarizeMethodOptions, aW as JoinModelTypeEum, aX as sqlUtils, aY as DateFormat, aZ as withRequestCache, a_ as LOT_CONTAINER_ROLE, a$ as buildLotSnListQuery, b0 as renderUtils, b1 as resolveLotRecordByValue, b2 as materialCheck, b3 as getLotLockedReason, b4 as validateReinspectionDate, b5 as ProductionIdentificationTypeEnum, b6 as BindCmpStyleEnum, b7 as getParseRuleInfo, b8 as getParseRuleValue, b9 as normalizeRefLoaderResult, ba as STOCKTAKE_DIMENSION, bb as F, bc as resolveStocktakeSelectApi, bd as normalizeProductionContainerOptions, be as buildProductionLotListQuery, bf as refUtils, bg as buildInspectionLotListQuery, bh as buildDeviceFilterQuery, bi as DEVICE_GROUP_QUERY_KEY, bj as getRowId, bk as findRuntimeTableRow, bl as RenderModeEnum, bm as findRuntimeParentRow, bn as useOnlineFormTransformField2Component, bo as FormulaRuleFieldKeyEnum, bp as formulaRuleFieldDict, bq as resolveDesignPanelFeatures, br as BIZ_TABLE_CONFIG_SEED_TYPES, bs as STOCKTAKE_DIMENSION_OPTIONS, bt as isRepeatingSubTablePanelType, bu as uuid2$1 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_8710052f_lang-DqGN_0-g.js";
3
+ import { g as getAllDataProfiles, i as isDataTableProfile, a as getProfile, b as isBusinessSubTableProfile, c as getProfileByTableType, r as resolveCreateTargetByTableType, d as getBusinessProfileByRefModelType, S as SUB_TABLE_PANEL_TYPE_NAME, e as expandAutofillTemplates, f as resolveAutofillToField, h as SubTableType, j as getAllBusinessRefModelTypes, D as DateObjectContext, k as isBlank$1, F as FIELD_TYPE, l as isSameFieldValue$1, m as runDateObjectHandler, n as companionIdKey, o as companionLabelKey, p as api, I as Icon$1, w as warning, u as useInsertStyles, s as svgBaseProps, P as PaginationFormat, q as PaperWidgeType, B as BwipCodeType, L as LineType, t as PageSizeEnum, O as Orientation, v as src, T as TRACE_FIELD_TYPES, x as BUSINESS_FIELD_TYPES, y as resolveFieldRenderComponent, C as ComponentTypeEnum, z as parse$2, A as estraverse, E as Syntax, G as isDynamicCreateTarget, H as CellType, J as isDynamicCellSubTable, K as ParamModelTypeEnum, M as FieldTypeToJs, N as CreateType, Q as uuid2, R as useModal, U as requireEstraverse, V as commonjsGlobal, W as getDefaultExportFromCjs, X as PaperWidgeValueType, Y as onlineFormMasterModelTypeEnum, Z as WAREHOUSE_FIELD_TYPES, _ as UniqueConstraintType, $ as FieldDefaultValueTypeEnum, a0 as FormTypeEnum, a1 as mitt, a2 as isDateObjectField, a3 as PlatformEnum, a4 as LabelPosition, a5 as BooleanShowMode, a6 as SignatureImageDirectionEnum, a7 as FallbackSignTypeEnum, a8 as SignatureNumberTypeEnum, a9 as SignatureTimeTypeEnum, aa as SignShowTypeEnum, ab as SignatureTypeEnum, ac as useNamespace, ad as _export_sfc, ae as normalizeFieldType, af as PaperSizeMap, ag as getFieldMain, ah as buildUUID, ai as FieldIconMap, aj as BigNumber, ak as FieldSysVarDefaultValueEnum, al as CellWidgetViewState, am as DiagonalDirection, an as WidgetImageSizeMode, ao as LineDirection, ap as TimeDiffFormat, aq as DiagonalVertex, ar as resolveDiagonalVertex, as as getThemeColorByTableType, at as ViewTypeEnum, au as isDynamicSubTablePanelType, av as isFixedSubTablePanelType, aw as ExpressionModeEnum, ax as ReturnTypeEnum, ay as ExpressionTabEnum, az as RangeValidateMode, aA as RangeCompareOp, aB as getExclusiveBusinessTypeTokens, aC as getSubTableTypeByRefModelType, aD as findFieldMain, aE as DecimalDisplayMode$1, aF as ImageDisplayModeEnum, aG as FormDesignEnum, aH as BASIC_FIELD_TYPES, aI as buildDeviceFilterQuery, aJ as refUtils, aK as getAllTableProfiles, aL as getAugmentedNamespace, aM as transformUtils, aN as EmptySymbol, aO as ASSIGNMENTSTRATEGY_ENUM, aP as Dependency_ENUM, aQ as EntityModelCategoryEnum, aR as resolveLotDisplayLabel, aS as CheckDsTypeEnum, aT as DeviceLink, aU as DeviceParamsTypeTitle, aV as AITooltips, aW as DenoiseMethodOptions, aX as BinarizeMethodOptions, aY as JoinModelTypeEum, aZ as sqlUtils, a_ as DateFormat, a$ as withRequestCache, b0 as LOT_CONTAINER_ROLE, b1 as buildLotSnListQuery, b2 as renderUtils, b3 as resolveLotRecordByValue, b4 as materialCheck, b5 as getLotLockedReason, b6 as validateReinspectionDate, b7 as buildMaterialLotListQuery, b8 as ProductionIdentificationTypeEnum, b9 as BindCmpStyleEnum, ba as getParseRuleInfo, bb as getParseRuleValue, bc as normalizeRefLoaderResult, bd as STOCKTAKE_DIMENSION, be as F, bf as resolveStocktakeSelectApi, bg as normalizeProductionContainerOptions, bh as buildProductionLotListQuery, bi as buildInspectionLotListQuery, bj as DEVICE_GROUP_QUERY_KEY, bk as getRowId, bl as findRuntimeTableRow, bm as RenderModeEnum, bn as findRuntimeParentRow, bo as useOnlineFormTransformField2Component, bp as FormulaRuleFieldKeyEnum, bq as formulaRuleFieldDict, br as resolveDesignPanelFeatures, bs as BIZ_TABLE_CONFIG_SEED_TYPES, bt as STOCKTAKE_DIMENSION_OPTIONS, bu as isRepeatingSubTablePanelType, bv as uuid2$1 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_8710052f_lang-BsyVWing.js";
4
4
  import { range as range$1, cloneDeep, get as get$4, merge, isEmpty, zip, pick, omit, has, debounce, isNil, times, clone as clone$3, differenceBy, last, mapValues, set as set$2, hasIn, isEqual } from "lodash-es";
5
5
  import dayjs from "dayjs";
6
6
  import { useFormBaseModal, DataSourceChangeEvent, getBuiltinContextFields, DataSources, FieldFills, closeAllFormBaseModal, FormBaseModalPlugin } from "@gct-paas/form-base";
7
7
  import * as Antd from "ant-design-vue";
8
- import { message, Modal, Empty, InputSearch, Cascader, ConfigProvider, Tooltip as Tooltip$1, Input, Tree, Transfer, Select, Tag, Form, AutoComplete, TimePicker, DatePicker, Textarea, TreeSelect, CheckboxGroup, Checkbox, Radio, RadioGroup, Alert } from "ant-design-vue";
9
- import { b as bindFormulaCacheInvalidation, c as currentParamsConfig, M as MAX_RUNTIME_SHEETS, a as MAX_RUNTIME_SHEET_TITLE_LENGTH, d as MULTI_SHEET_SCHEMA_VERSION, n as normalizeGridColumnWidth, g as getParseFormulaVarInfos, e as getBusinessFieldKey, f as createRuntimeDocumentV2, h as clampSealPosition, i as normalizeSealDiameter, j as normalizeFieldWidth, D as DEFAULT_BOOLEAN_FIELD_WIDTH, k as isCellAutoLineBreak, B as BorderTD, u as useFormModel, l as useFormTmplConfig, m as findFieldProfile, o as normalizeHistoricalBusinessRow, p as DeviceLinkTmplUtil, q as normalizeAIOcrTmpl, r as useWidgetStaticAttrs, s as useRuntimeInstanceServices, t as setSelectValidatorId, v as setSelectAnnotationId, w as useRuntimeRowState, x as getObjectBomMaterialLotQuery, y as buildObjectLotExtraQuery, z as resolveObjectFieldKeys, F as FormModelController, A as MaterialConsumptionPatternEnum, C as validateObjectBomForScan, E as resolveObjectBomEntry, G as runWithFillProduct, H as useNocodeFormWidget, I as applyConsumeObjectTraceChange, J as getObjectBomProductQuery, K as EMPTY_PRODUCT_VERSION_ID, L as normalizeHistoricalAutofillRow, N as readSealValue, O as isSealStamped, P as stampSealValue, Q as isValidSealValue, R as clearSealValue, S as parseRuntimeFieldPath, T as NCB_PROVIDE, U as calculateFormula, V as useStyles, W as useDependency, X as useFieldPresentation, Y as useRuntimeEditorFlusher, Z as RuntimeFormStateStore, _ as createRuntimeInstanceContext, $ as RuntimeInstanceRegistry, a0 as ScanParamType, a1 as RequiredQtyCalcRule, a2 as MBRender, a3 as MCRender, a4 as moveSealValue, a5 as DocumentPaper, a6 as DynamicTableAction, a7 as _sfc_main$6B } from "./dynamic-table-action-D-e5iLib.js";
10
- import { S as SEARCH_SEVICE, u as useWebUpload, V as VersionSelect, C as CloseOutlined, E as EmptyImg$2, _ as _sfc_main$6A, P as ProductTypeEnum } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DcYth63e.js";
8
+ import { message, Modal, Alert, Empty, InputSearch, Cascader, ConfigProvider, Tooltip as Tooltip$1, Input, Tree, Transfer, Select, Tag, Form, AutoComplete, TimePicker, DatePicker, Textarea, TreeSelect, CheckboxGroup, Checkbox, Radio, RadioGroup } from "ant-design-vue";
9
+ import { b as bindFormulaCacheInvalidation, c as currentParamsConfig, M as MAX_RUNTIME_SHEETS, a as MAX_RUNTIME_SHEET_TITLE_LENGTH, g as getBusinessFieldKey, d as MULTI_SHEET_SCHEMA_VERSION, n as normalizeGridColumnWidth, e as getParseFormulaVarInfos, f as createRuntimeDocumentV2, h as clampSealPosition, i as normalizeSealDiameter, j as normalizeFieldWidth, D as DEFAULT_BOOLEAN_FIELD_WIDTH, k as isCellAutoLineBreak, B as BorderTD, u as useFormModel, l as useFormTmplConfig, m as findFieldProfile, o as normalizeHistoricalBusinessRow, p as DeviceLinkTmplUtil, q as normalizeAIOcrTmpl, r as useWidgetStaticAttrs, s as useRuntimeInstanceServices, t as setSelectValidatorId, v as setSelectAnnotationId, w as useRuntimeRowState, x as getObjectBomMaterialLotQuery, y as buildObjectLotExtraQuery, z as resolveObjectFieldKeys, F as FormModelController, A as MaterialConsumptionPatternEnum, C as validateObjectBomForScan, E as resolveObjectBomEntry, G as runWithFillProduct, H as useNocodeFormWidget, I as applyConsumeObjectTraceChange, J as getObjectBomProductQuery, K as EMPTY_PRODUCT_VERSION_ID, L as normalizeHistoricalAutofillRow, N as readSealValue, O as isSealStamped, P as stampSealValue, Q as isValidSealValue, R as clearSealValue, S as parseRuntimeFieldPath, T as NCB_PROVIDE, U as calculateFormula, V as useStyles, W as useDependency, X as useFieldPresentation, Y as useRuntimeEditorFlusher, Z as RuntimeFormStateStore, _ as createRuntimeInstanceContext, $ as RuntimeInstanceRegistry, a0 as ScanParamType, a1 as RequiredQtyCalcRule, a2 as MBRender, a3 as MCRender, a4 as moveSealValue, a5 as DocumentPaper, a6 as DynamicTableAction, a7 as _sfc_main$6C } from "./dynamic-table-action-JR8LU5WT.js";
10
+ import { S as SEARCH_SEVICE, u as useWebUpload, V as VersionSelect, C as CloseOutlined, E as EmptyImg$2, _ as _sfc_main$6B, P as ProductTypeEnum } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DjI5GeWt.js";
11
11
  import { HttpUtil } from "@gct-paas/api";
12
12
  import { Tooltip, Grid, Table, Column, Icon as Icon$2, Edit, Validator, VxeGrid } from "vxe-table";
13
13
  import { useModal as useModal$1, t as t$2 } from "@gct-paas/core";
@@ -2016,7 +2016,7 @@ function openWindow(url, opt) {
2016
2016
  const FieldPropLabels = Object.entries(FIELD_PROP_LABEL_MAP);
2017
2017
  const FieldTypeLabels = Object.entries(FIELD_TYPE_LABEL_MAP);
2018
2018
  async function createWorkbook() {
2019
- const ExcelJs = (await import("./exceljs.min-CyjI4C57.js").then((n) => n.e)).default;
2019
+ const ExcelJs = (await import("./exceljs.min-wPuo8a9q.js").then((n) => n.e)).default;
2020
2020
  return new ExcelJs.Workbook();
2021
2021
  }
2022
2022
  class XlsxParser {
@@ -2042,66 +2042,95 @@ class XlsxParser {
2042
2042
  });
2043
2043
  return paperFields;
2044
2044
  }
2045
- static async xlsx2Sheets(file, keyList = []) {
2045
+ static async xlsx2Sheets(file, keyList = [], options = {}) {
2046
2046
  const workbook = await createWorkbook();
2047
2047
  const xlsxData = await workbook.xlsx.load(file);
2048
+ const warnings = [];
2048
2049
  const fieldSheetName = $t("sys.onlineForm.formFields");
2049
2050
  const fieldSheet = workbook.getWorksheet(fieldSheetName);
2050
- const fields = fieldSheet ? XlsxParser.sheetToFields(fieldSheet, keyList) : null;
2051
+ const withFields = options.withFields !== false;
2052
+ const fields = withFields && fieldSheet ? XlsxParser.sheetToFields(fieldSheet, keyList, warnings) : null;
2051
2053
  const candidates = workbook.worksheets.filter((sheet) => sheet.name !== fieldSheetName);
2052
2054
  const hidden = candidates.filter(
2053
2055
  (sheet) => sheet.state === "hidden" || sheet.state === "veryHidden"
2054
2056
  );
2055
2057
  if (hidden.length) {
2056
- throw new Error(`不支持导入隐藏工作表:${hidden.map((sheet) => sheet.name).join("、")}`);
2058
+ warnings.push(`已跳过隐藏工作表:${hidden.map((sheet) => sheet.name).join("、")}。`);
2057
2059
  }
2058
- if (!candidates.length) throw new Error("Excel 中没有可导入的工作表");
2059
- if (candidates.length > MAX_RUNTIME_SHEETS) {
2060
- throw new Error(`每份表单最多支持 ${MAX_RUNTIME_SHEETS} 个工作表`);
2060
+ const visible = candidates.filter((sheet) => !hidden.includes(sheet));
2061
+ if (!visible.length) throw new Error("Excel 中没有可导入的可见工作表");
2062
+ if (visible.length > MAX_RUNTIME_SHEETS) {
2063
+ warnings.push(
2064
+ `最多导入 ${MAX_RUNTIME_SHEETS} 个工作表,已跳过:${visible.slice(MAX_RUNTIME_SHEETS).map((sheet) => sheet.name).join("、")}。`
2065
+ );
2061
2066
  }
2062
2067
  const names = /* @__PURE__ */ new Set();
2063
- const sheets = candidates.map((worksheet) => {
2064
- const title = worksheet.name.trim();
2065
- if (!title || title.length > MAX_RUNTIME_SHEET_TITLE_LENGTH) {
2066
- throw new Error(
2067
- `工作表名称必须为 1 到 ${MAX_RUNTIME_SHEET_TITLE_LENGTH} 个字符:${worksheet.name}`
2068
- );
2068
+ const fieldOwners = /* @__PURE__ */ new Map();
2069
+ const sheets = [];
2070
+ let remainingCells = 3e4;
2071
+ for (const worksheet of visible.slice(0, MAX_RUNTIME_SHEETS)) {
2072
+ if (!remainingCells) {
2073
+ warnings.push(`工作表「${worksheet.name}」未导入:整份表单已达到 30000 个单元格上限。`);
2074
+ continue;
2075
+ }
2076
+ const base = worksheet.name.trim().slice(0, MAX_RUNTIME_SHEET_TITLE_LENGTH) || "工作表";
2077
+ let title = base;
2078
+ let suffix = 2;
2079
+ while (names.has(title)) {
2080
+ const tail = ` (${suffix++})`;
2081
+ title = base.slice(0, MAX_RUNTIME_SHEET_TITLE_LENGTH - tail.length) + tail;
2082
+ }
2083
+ if (title !== worksheet.name) {
2084
+ warnings.push(`工作表「${worksheet.name}」将重命名为「${title}」。`);
2069
2085
  }
2070
- if (names.has(title)) throw new Error(`工作表名称重复:${title}`);
2071
2086
  names.add(title);
2072
- const rowCount = worksheet.dimensions?.bottom ?? worksheet.rowCount ?? 0;
2073
- const colCount = worksheet.dimensions?.right ?? worksheet.columnCount ?? 0;
2074
- if (rowCount > 300 || colCount > 75) {
2075
- throw new Error(
2076
- `工作表「${title}」超出导入限制:当前 ${rowCount} 行 × ${colCount} 列,最多 300 行 × 75 列`
2087
+ if (!worksheet.actualRowCount) {
2088
+ warnings.push(`工作表「${title}」为空,将按空白工作表导入。`);
2089
+ }
2090
+ const rowCount = Math.max(1, worksheet.dimensions?.bottom ?? worksheet.rowCount ?? 1);
2091
+ const colCount = Math.max(1, worksheet.dimensions?.right ?? worksheet.columnCount ?? 1);
2092
+ const cols = Math.min(colCount, 75, remainingCells);
2093
+ const rows = Math.min(rowCount, 300, Math.floor(remainingCells / cols));
2094
+ if (rows < rowCount || cols < colCount) {
2095
+ warnings.push(
2096
+ `工作表「${title}」原为 ${rowCount} 行 × ${colCount} 列,仅导入前 ${rows} 行 × ${cols} 列,超出范围的内容将不导入(每表最多 300 行 × 75 列,合计最多 30000 格)。`
2077
2097
  );
2078
2098
  }
2079
- let formulaCell = "";
2080
- worksheet.eachRow((row) => {
2081
- row.eachCell((cell) => {
2082
- if (!formulaCell && cell.value && typeof cell.value === "object" && "formula" in cell.value) {
2083
- formulaCell = cell.address;
2099
+ const paper2 = XlsxParser.sheetToPaper(worksheet, xlsxData, { rows, cols });
2100
+ remainingCells -= rows * cols;
2101
+ let formulaCount = 0;
2102
+ worksheet.eachRow((row, rowNumber) => {
2103
+ if (rowNumber > rows) return;
2104
+ row.eachCell((cell, colNumber) => {
2105
+ if (colNumber <= cols && cell.address === cell.master.address && cell.formula) {
2106
+ formulaCount++;
2084
2107
  }
2085
2108
  });
2086
2109
  });
2087
- if (formulaCell) throw new Error(`工作表「${title}」包含公式单元格 ${formulaCell}`);
2088
- const paper2 = XlsxParser.sheetToPaper(worksheet, xlsxData);
2089
- return {
2090
- title,
2091
- paper: paper2,
2092
- paperFields: XlsxParser.extractPaperFields(paper2, fields)
2093
- };
2094
- });
2095
- const totalCells = sheets.reduce(
2096
- (sum, sheet) => sum + sheet.paper.cells.reduce((n, row) => n + row.length, 0),
2097
- 0
2098
- );
2099
- if (totalCells > 3e4) throw new Error("整份表单最多支持 30000 个静态单元格");
2100
- return { sheets, fields };
2110
+ if (formulaCount) {
2111
+ warnings.push(
2112
+ `工作表「${title}」的 ${formulaCount} 个公式单元格将按静态文本导入,不再自动计算;图片公式不会还原为图片。`
2113
+ );
2114
+ }
2115
+ const paperFields = XlsxParser.extractPaperFields(paper2, fields).filter((field) => {
2116
+ const key = field.fieldKey || field.fieldName;
2117
+ const owner = fieldOwners.get(key);
2118
+ if (owner) {
2119
+ warnings.push(
2120
+ `字段「${field.fieldName || key}」重复出现:保留「${owner}」的首处绑定,「${title}」第 ${field.y} 行第 ${field.x} 列按静态文本导入。`
2121
+ );
2122
+ return false;
2123
+ }
2124
+ fieldOwners.set(key, title);
2125
+ return true;
2126
+ });
2127
+ sheets.push({ title, paper: paper2, paperFields });
2128
+ }
2129
+ return { sheets, fields, warnings };
2101
2130
  }
2102
- static sheetToPaper(paperSheet, xlsxData) {
2103
- const SheetRowCount = Math.min(paperSheet.dimensions?.bottom ?? 0, 300);
2104
- const SheetColCount = Math.min(paperSheet.dimensions?.right ?? 0, 75);
2131
+ static sheetToPaper(paperSheet, xlsxData, size) {
2132
+ const SheetRowCount = size?.rows ?? Math.max(1, Math.min(paperSheet.dimensions?.bottom ?? 1, 300));
2133
+ const SheetColCount = size?.cols ?? Math.max(1, Math.min(paperSheet.dimensions?.right ?? 1, 75));
2105
2134
  const paper2 = {};
2106
2135
  const { defaultRowHeight, defaultColWidth } = paperSheet.properties;
2107
2136
  const defaultRowHeightPx = parseInt(src(`${defaultRowHeight}pt`));
@@ -2115,7 +2144,7 @@ class XlsxParser {
2115
2144
  paper2.rows = rows;
2116
2145
  const cols = [];
2117
2146
  Array(SheetColCount).fill("").forEach((c, i) => {
2118
- const { width } = paperSheet.columns[i];
2147
+ const width = paperSheet.columns?.[i]?.width;
2119
2148
  const _w = width ?? defaultColWidth;
2120
2149
  cols.push({
2121
2150
  // width: _w === undefined ? 80 : Math.floor(_w * 7 + 5),
@@ -2131,7 +2160,7 @@ class XlsxParser {
2131
2160
  Array(SheetColCount).fill("").forEach((_2, colIndex) => {
2132
2161
  const cell = paperSheet._rows[rowIndex]._cells[colIndex];
2133
2162
  if (!cell) return;
2134
- const { alignment, border, fill, font } = cell.style;
2163
+ const { alignment, fill, font } = cell.style;
2135
2164
  const cellName = cell._address;
2136
2165
  const cellStyle = {
2137
2166
  "text-align": alignment?.horizontal ?? "left",
@@ -2147,7 +2176,10 @@ class XlsxParser {
2147
2176
  cells[rowIndex][colIndex].style = cellStyle;
2148
2177
  if (cellName !== cell.master.address) return;
2149
2178
  let cellValue = "";
2150
- if (typeof cell.value !== "object") {
2179
+ if (cell.formula) {
2180
+ const result = cell.result;
2181
+ cellValue = result == null ? `=${cell.formula}` : typeof result === "object" && "error" in result ? result.error : String(result);
2182
+ } else if (typeof cell.value !== "object") {
2151
2183
  cellValue = cell.value;
2152
2184
  } else if (typeof cell.text !== "object") {
2153
2185
  cellValue = cell.text;
@@ -2174,10 +2206,10 @@ class XlsxParser {
2174
2206
  const cell = paperSheet._rows[rowIndex]._cells[colIndex];
2175
2207
  if (!cell) return;
2176
2208
  const { border } = cell.style;
2177
- !!border?.top && CellBorder.setTop(colIndex + 1, rowIndex + 1, paper2);
2178
- !!border?.bottom && CellBorder.setBottom(colIndex + 1, rowIndex + 1, paper2);
2179
- !!border?.left && CellBorder.setLeft(colIndex + 1, rowIndex + 1, paper2);
2180
- !!border?.right && CellBorder.setRight(colIndex + 1, rowIndex + 1, paper2);
2209
+ if (border?.top) CellBorder.setTop(colIndex + 1, rowIndex + 1, paper2);
2210
+ if (border?.bottom) CellBorder.setBottom(colIndex + 1, rowIndex + 1, paper2);
2211
+ if (border?.left) CellBorder.setLeft(colIndex + 1, rowIndex + 1, paper2);
2212
+ if (border?.right) CellBorder.setRight(colIndex + 1, rowIndex + 1, paper2);
2181
2213
  });
2182
2214
  });
2183
2215
  const medias = (xlsxData.media ?? []).map((m) => {
@@ -2199,6 +2231,7 @@ class XlsxParser {
2199
2231
  const tlNativeCol = range2?.tl?.nativeCol ?? 0;
2200
2232
  const brNativeRow = range2?.br?.nativeRow ?? tlNativeRow;
2201
2233
  const brNativeCol = range2?.br?.nativeCol ?? tlNativeCol;
2234
+ if (tlNativeRow >= SheetRowCount || tlNativeCol >= SheetColCount) return;
2202
2235
  const rowSpan = Math.max(0, brNativeRow - tlNativeRow);
2203
2236
  const colSpan = Math.max(0, brNativeCol - tlNativeCol);
2204
2237
  const imageLayout = {
@@ -2245,12 +2278,12 @@ class XlsxParser {
2245
2278
  * @param sheet
2246
2279
  * @returns
2247
2280
  */
2248
- static sheetToFields(sheet, keyList) {
2281
+ static sheetToFields(sheet, keyList, warnings = []) {
2249
2282
  const SheetRowCount = Math.min(sheet.rowCount, 300);
2250
2283
  const SheetColCount = Math.min(sheet.columnCount, 10);
2251
2284
  const colFieldPropMap = /* @__PURE__ */ new Map();
2252
2285
  Array(SheetColCount).fill("").forEach((_, colIndex) => {
2253
- const cell = sheet._rows[0]._cells[colIndex];
2286
+ const cell = sheet._rows[0]?._cells[colIndex];
2254
2287
  const fieldProp = FieldPropLabels.find(
2255
2288
  (f) => f[1] === (cell?.text ?? "").replaceAll("*", "").trim()
2256
2289
  );
@@ -2258,6 +2291,12 @@ class XlsxParser {
2258
2291
  colFieldPropMap.set(colIndex, fieldProp[0]);
2259
2292
  }
2260
2293
  });
2294
+ if (![...colFieldPropMap.values()].includes("key") || ![...colFieldPropMap.values()].includes("name")) {
2295
+ warnings.push(
2296
+ `工作表「${sheet.name}」缺少字段标识或名称表头,已忽略字段配置,保留表单文本。`
2297
+ );
2298
+ return [];
2299
+ }
2261
2300
  const fields = [];
2262
2301
  Array(SheetRowCount).fill("").forEach((_, rowIndex) => {
2263
2302
  if (rowIndex === 0) return;
@@ -2269,6 +2308,10 @@ class XlsxParser {
2269
2308
  field[colFieldPropMap.get(colIndex)] = cell?.text ?? "";
2270
2309
  }
2271
2310
  });
2311
+ if (!field.key || !field.name) {
2312
+ warnings.push(`字段配置第 ${rowIndex + 1} 行缺少字段标识或名称,已跳过该行。`);
2313
+ return;
2314
+ }
2272
2315
  fields.push(field);
2273
2316
  });
2274
2317
  const cloneKeyList = [...keyList];
@@ -2344,39 +2387,39 @@ class XlsxParser {
2344
2387
  }
2345
2388
  function asyncImportClassModules() {
2346
2389
  const modules = /* @__PURE__ */ Object.assign({
2347
- "./_field_/auto-complete/index.ts": () => import("./index-SsQpzWJV.js").then((m) => m["default"]),
2348
- "./_field_/datepicker/index.ts": () => import("./index-BTvFf_Od.js").then((m) => m["default"]),
2349
- "./_field_/datetimepicker/index.ts": () => import("./index-CJZP3Y8A.js").then((m) => m["default"]),
2350
- "./_field_/department/index.ts": () => import("./index-Cbfa0l4P.js").then((m) => m["default"]),
2351
- "./_field_/enum-select/index.ts": () => import("./index-_lobWWTu.js").then((m) => m["default"]),
2352
- "./_field_/input/index.ts": () => import("./index-WGbD1Pm6.js").then((m) => m["default"]),
2353
- "./_field_/inputdouble/index.ts": () => import("./index-CxthKExE.js").then((m) => m["default"]),
2354
- "./_field_/inputnumber/index.ts": () => import("./index-v-rdo6ME.js").then((m) => m["default"]),
2355
- "./_field_/rdo-select/index.ts": () => import("./index-4b7WInws.js").then((m) => m["default"]),
2356
- "./_field_/seal/index.ts": () => import("./index-CrNQ4fzl.js").then((m) => m["default"]),
2357
- "./_field_/select/index.ts": () => import("./index-DgcqMrSq.js").then((m) => m["default"]),
2358
- "./_field_/sign/index.ts": () => import("./index-DphJXlye.js").then((m) => m["default"]),
2359
- "./_field_/switch/index.ts": () => import("./index-C03h1mdc.js").then((m) => m["default"]),
2360
- "./_field_/textarea/index.ts": () => import("./index-DNODemiT.js").then((m) => m["default"]),
2361
- "./_field_/timepicker/index.ts": () => import("./index-Ddsrowty.js").then((m) => m["default"]),
2362
- "./_field_/upload-file/index.ts": () => import("./index-D9jgkb7e.js").then((m) => m["default"]),
2363
- "./_field_/upload-image/index.ts": () => import("./index-CCAULEff.js").then((m) => m["default"]),
2364
- "./_field_/userpicker/index.ts": () => import("./index-BCl6C48o.js").then((m) => m["default"]),
2365
- "./_widget_/barcode/index.ts": () => import("./index-DK_goJxq.js").then((m) => m["default"]),
2366
- "./_widget_/combine-fields/index.ts": () => import("./index-DSTGDFEt.js").then((m) => m["default"]),
2367
- "./_widget_/diagonal/index.ts": () => import("./index-8ar-Bsw7.js").then((m) => m["default"]),
2368
- "./_widget_/dyn-value/index.ts": () => import("./index-DOKlk-Nf.js").then((m) => m["default"]),
2369
- "./_widget_/image/index.ts": () => import("./index--BSSsMvy.js").then((m) => m["default"]),
2370
- "./_widget_/line/index.ts": () => import("./index-DpCJBo9U.js").then((m) => m["default"]),
2371
- "./_widget_/power/index.ts": () => import("./index-CjK1DtkT.js").then((m) => m["default"]),
2372
- "./_widget_/qrcode/index.ts": () => import("./index-C4cVVxUT.js").then((m) => m["default"]),
2373
- "./_widget_/ro/index.ts": () => import("./index-17hYBH0H.js").then((m) => m["default"]),
2374
- "./_widget_/serialnumber/index.ts": () => import("./index-BOOwVQlO.js").then((m) => m["default"]),
2375
- "./_widget_/sub-table/index.ts": () => import("./index-CToveeX8.js").then((m) => m["default"]),
2376
- "./_widget_/timediff/index.ts": () => import("./index-DHBkzfbv.js").then((m) => m["default"]),
2377
- "./paper/index.ts": () => import("./index-CKCRmqHx.js").then((m) => m["default"]),
2378
- "./td/index.ts": () => import("./index-DU5m20W6.js").then((m) => m["default"]),
2379
- "./tr/index.ts": () => import("./index-D6YZXtdZ.js").then((m) => m["default"])
2390
+ "./_field_/auto-complete/index.ts": () => import("./index-BIitBpK7.js").then((m) => m["default"]),
2391
+ "./_field_/datepicker/index.ts": () => import("./index-Ds8UpdFP.js").then((m) => m["default"]),
2392
+ "./_field_/datetimepicker/index.ts": () => import("./index-LiOm5nws.js").then((m) => m["default"]),
2393
+ "./_field_/department/index.ts": () => import("./index-B_95dIym.js").then((m) => m["default"]),
2394
+ "./_field_/enum-select/index.ts": () => import("./index-BX8xuu9v.js").then((m) => m["default"]),
2395
+ "./_field_/input/index.ts": () => import("./index-Bk67ggPI.js").then((m) => m["default"]),
2396
+ "./_field_/inputdouble/index.ts": () => import("./index-37J1K1W1.js").then((m) => m["default"]),
2397
+ "./_field_/inputnumber/index.ts": () => import("./index-BoZN_3QI.js").then((m) => m["default"]),
2398
+ "./_field_/rdo-select/index.ts": () => import("./index-C5izC2Mm.js").then((m) => m["default"]),
2399
+ "./_field_/seal/index.ts": () => import("./index-BxaqeEUh.js").then((m) => m["default"]),
2400
+ "./_field_/select/index.ts": () => import("./index-eLwoxKzH.js").then((m) => m["default"]),
2401
+ "./_field_/sign/index.ts": () => import("./index-sIW7hZFQ.js").then((m) => m["default"]),
2402
+ "./_field_/switch/index.ts": () => import("./index-Cg8xpa-X.js").then((m) => m["default"]),
2403
+ "./_field_/textarea/index.ts": () => import("./index-CpdA5MDE.js").then((m) => m["default"]),
2404
+ "./_field_/timepicker/index.ts": () => import("./index-9ipSNY71.js").then((m) => m["default"]),
2405
+ "./_field_/upload-file/index.ts": () => import("./index-KMB2TBbZ.js").then((m) => m["default"]),
2406
+ "./_field_/upload-image/index.ts": () => import("./index-CX2lK91Y.js").then((m) => m["default"]),
2407
+ "./_field_/userpicker/index.ts": () => import("./index-C1b5ADFV.js").then((m) => m["default"]),
2408
+ "./_widget_/barcode/index.ts": () => import("./index-D3cPbNne.js").then((m) => m["default"]),
2409
+ "./_widget_/combine-fields/index.ts": () => import("./index-up8dW1VW.js").then((m) => m["default"]),
2410
+ "./_widget_/diagonal/index.ts": () => import("./index-PVGqEoN1.js").then((m) => m["default"]),
2411
+ "./_widget_/dyn-value/index.ts": () => import("./index-Pgworj4S.js").then((m) => m["default"]),
2412
+ "./_widget_/image/index.ts": () => import("./index-D-WSp3EA.js").then((m) => m["default"]),
2413
+ "./_widget_/line/index.ts": () => import("./index-C6oivLbu.js").then((m) => m["default"]),
2414
+ "./_widget_/power/index.ts": () => import("./index-DozFqpk2.js").then((m) => m["default"]),
2415
+ "./_widget_/qrcode/index.ts": () => import("./index-DEMinegB.js").then((m) => m["default"]),
2416
+ "./_widget_/ro/index.ts": () => import("./index-B9hIqELW.js").then((m) => m["default"]),
2417
+ "./_widget_/serialnumber/index.ts": () => import("./index-YteSvWxT.js").then((m) => m["default"]),
2418
+ "./_widget_/sub-table/index.ts": () => import("./index-CpQiCEe7.js").then((m) => m["default"]),
2419
+ "./_widget_/timediff/index.ts": () => import("./index-PUFY8idd.js").then((m) => m["default"]),
2420
+ "./paper/index.ts": () => import("./index-Cmr9DRpz.js").then((m) => m["default"]),
2421
+ "./td/index.ts": () => import("./index-DUma1ZGa.js").then((m) => m["default"]),
2422
+ "./tr/index.ts": () => import("./index-DZb9l6Gw.js").then((m) => m["default"])
2380
2423
  });
2381
2424
  return modules;
2382
2425
  }
@@ -3592,6 +3635,45 @@ class ImgParser {
3592
3635
  });
3593
3636
  }
3594
3637
  }
3638
+ function getCellFieldPlacements(paper2) {
3639
+ const placements = [];
3640
+ (paper2.cells ?? []).forEach((row, rowIndex) => {
3641
+ row.forEach((cell, colIndex) => {
3642
+ if (!cell) return;
3643
+ const x = colIndex + 1;
3644
+ const y = rowIndex + 1;
3645
+ const hidden = (paper2.mergedCells ?? []).some(
3646
+ (range2) => range2.l <= x && range2.r >= x && range2.t <= y && range2.b >= y && (range2.l !== x || range2.t !== y)
3647
+ );
3648
+ for (const content of [cell, ...cell.multiFieldsContent ?? []]) {
3649
+ if (content.type && content.type !== CellType.Field) continue;
3650
+ if (content.fieldMeta?.field) placements.push({ cell, content, hidden });
3651
+ }
3652
+ });
3653
+ });
3654
+ return placements;
3655
+ }
3656
+ function clearHiddenCellFieldPlacements(paper2, field) {
3657
+ const key = getBusinessFieldKey({
3658
+ modelKey: field.model ?? field.modelLink,
3659
+ fieldId: field.field
3660
+ });
3661
+ for (const { cell, content, hidden } of getCellFieldPlacements(paper2)) {
3662
+ if (!hidden) continue;
3663
+ const meta = content.fieldMeta;
3664
+ if (getBusinessFieldKey({ modelKey: meta.model ?? meta.modelLink, fieldId: meta.field }) !== key) {
3665
+ continue;
3666
+ }
3667
+ if (content === cell) {
3668
+ cell.type = CellType.Default;
3669
+ cell.fieldMeta = void 0;
3670
+ cell.fieldWidget = void 0;
3671
+ } else {
3672
+ const contents = cell.multiFieldsContent;
3673
+ contents.splice(contents.indexOf(content), 1);
3674
+ }
3675
+ }
3676
+ }
3595
3677
  const Default_Apis = {
3596
3678
  getFieldMetaList: api.apaas.fieldMeta.getList,
3597
3679
  getModelMetaSubModelList: api.apaas.modelComprehensive.getSubModelList,
@@ -4111,8 +4193,8 @@ function normalizePaperGrid(paper2) {
4111
4193
  paper2.fixedTables = (Array.isArray(paper2.fixedTables) ? paper2.fixedTables : []).map((table) => normalizeTable(table, rowCount, colCount)).filter((table) => !!table);
4112
4194
  return paper2;
4113
4195
  }
4114
- const _hoisted_1$3C = { class: "p24px" };
4115
- const _sfc_main$6z = /* @__PURE__ */ defineComponent({
4196
+ const _hoisted_1$3D = { class: "p24px" };
4197
+ const _sfc_main$6A = /* @__PURE__ */ defineComponent({
4116
4198
  __name: "add-sheet",
4117
4199
  props: {
4118
4200
  modal: {},
@@ -4138,7 +4220,7 @@ const _sfc_main$6z = /* @__PURE__ */ defineComponent({
4138
4220
  const _component_a_input = resolveComponent("a-input");
4139
4221
  const _component_a_form_item = resolveComponent("a-form-item");
4140
4222
  const _component_a_form = resolveComponent("a-form");
4141
- return openBlock(), createElementBlock("div", _hoisted_1$3C, [
4223
+ return openBlock(), createElementBlock("div", _hoisted_1$3D, [
4142
4224
  createVNode(_component_a_form, {
4143
4225
  ref_key: "formRef",
4144
4226
  ref: formRef,
@@ -10033,21 +10115,18 @@ const designerSheetsSnapshot = () => sheetsData$1.value.map(({ sheetId, title, p
10033
10115
  title,
10034
10116
  paper: cloneDeep(paper2)
10035
10117
  }));
10036
- function getPlacedFieldCounts(sheets) {
10118
+ function getPlacedFieldCounts(sheets, includeHidden = false) {
10037
10119
  const counts = /* @__PURE__ */ new Map();
10038
10120
  sheets.forEach((sheet) => {
10039
- (sheet.paper.cells ?? []).flat().forEach((cell) => {
10040
- for (const content of [cell, ...cell?.multiFieldsContent ?? []]) {
10041
- if (content?.type && content.type !== CellType.Field) continue;
10042
- const meta = content?.fieldMeta;
10043
- if (!meta?.field) continue;
10044
- const key = getBusinessFieldKey({
10045
- modelKey: meta.model ?? meta.modelLink,
10046
- fieldId: meta.field
10047
- });
10048
- counts.set(key, (counts.get(key) ?? 0) + 1);
10049
- }
10050
- });
10121
+ for (const { content, hidden } of getCellFieldPlacements(sheet.paper)) {
10122
+ if (hidden && !includeHidden) continue;
10123
+ const meta = content.fieldMeta;
10124
+ const key = getBusinessFieldKey({
10125
+ modelKey: meta.model ?? meta.modelLink,
10126
+ fieldId: meta.field
10127
+ });
10128
+ counts.set(key, (counts.get(key) ?? 0) + 1);
10129
+ }
10051
10130
  });
10052
10131
  return counts;
10053
10132
  }
@@ -10192,7 +10271,7 @@ const useAllSpreadSheets = () => {
10192
10271
  return;
10193
10272
  }
10194
10273
  const res = await window.NocodeAdapter.utils.overlay.modal(
10195
- _sfc_main$6z,
10274
+ _sfc_main$6A,
10196
10275
  {
10197
10276
  data,
10198
10277
  validator: (rule, value) => {
@@ -10315,7 +10394,7 @@ const useAllSpreadSheets = () => {
10315
10394
  }
10316
10395
  const names = /* @__PURE__ */ new Set();
10317
10396
  let staticCellCount = 0;
10318
- const savedFieldCounts = getPlacedFieldCounts(cloneSheetsData.value);
10397
+ const savedFieldCounts = getPlacedFieldCounts(cloneSheetsData.value, true);
10319
10398
  const fieldOwners = /* @__PURE__ */ new Map();
10320
10399
  const subTables = /* @__PURE__ */ new Map();
10321
10400
  sheetsData$1.value.forEach((sheet) => {
@@ -10343,10 +10422,9 @@ const useAllSpreadSheets = () => {
10343
10422
  }
10344
10423
  fieldOwners.set(key, { sheetTitle: previous?.sheetTitle ?? sheet.title, count });
10345
10424
  };
10346
- (sheet.paper.cells ?? []).flat().forEach((cell) => {
10347
- registerField(cell);
10348
- cell?.multiFieldsContent?.forEach(registerField);
10349
- });
10425
+ for (const { content, hidden } of getCellFieldPlacements(sheet.paper)) {
10426
+ if (!hidden) registerField(content);
10427
+ }
10350
10428
  [...sheet.paper.dynamicTables ?? [], ...sheet.paper.fixedTables ?? []].forEach(
10351
10429
  (table) => {
10352
10430
  if (!table.field) return;
@@ -10617,7 +10695,7 @@ const useAllSpreadSheets = () => {
10617
10695
  removeField: removeField2
10618
10696
  };
10619
10697
  };
10620
- const _sfc_main$6y = /* @__PURE__ */ defineComponent({
10698
+ const _sfc_main$6z = /* @__PURE__ */ defineComponent({
10621
10699
  __name: "table-modal",
10622
10700
  props: {
10623
10701
  type: { default: SubTableType.DEFAULT }
@@ -10821,7 +10899,7 @@ const _sfc_main$6y = /* @__PURE__ */ defineComponent({
10821
10899
  };
10822
10900
  }
10823
10901
  });
10824
- const _sfc_main$6x = /* @__PURE__ */ defineComponent({
10902
+ const _sfc_main$6y = /* @__PURE__ */ defineComponent({
10825
10903
  __name: "thead-modal",
10826
10904
  setup(__props) {
10827
10905
  const { selection: selection2, paper: paper2, platformType: platformType2, isTextOnlineForm: isTextOnlineForm2 } = useSpreadSheet();
@@ -11372,7 +11450,7 @@ function parseHtml(html) {
11372
11450
  mergedCells
11373
11451
  };
11374
11452
  }
11375
- const _sfc_main$6w = /* @__PURE__ */ defineComponent({
11453
+ const _sfc_main$6x = /* @__PURE__ */ defineComponent({
11376
11454
  __name: "field-edit-modal",
11377
11455
  props: {
11378
11456
  field: {}
@@ -11462,7 +11540,54 @@ const _sfc_main$6w = /* @__PURE__ */ defineComponent({
11462
11540
  };
11463
11541
  }
11464
11542
  });
11465
- const FieldEditModal = /* @__PURE__ */ _export_sfc(_sfc_main$6w, [["__scopeId", "data-v-1eaa22cd"]]);
11543
+ const FieldEditModal = /* @__PURE__ */ _export_sfc(_sfc_main$6x, [["__scopeId", "data-v-1eaa22cd"]]);
11544
+ const _hoisted_1$3C = { class: "xlsx-import-summary" };
11545
+ const _hoisted_2$2x = { class: "xlsx-import-summary__warnings" };
11546
+ const _hoisted_3$1U = { class: "xlsx-import-summary__heading" };
11547
+ const _hoisted_4$1l = { class: "xlsx-import-summary__sheets" };
11548
+ const _sfc_main$6w = /* @__PURE__ */ defineComponent({
11549
+ __name: "xlsx-import-summary",
11550
+ props: {
11551
+ sheets: {},
11552
+ warnings: {}
11553
+ },
11554
+ setup(__props) {
11555
+ return (_ctx, _cache) => {
11556
+ return openBlock(), createElementBlock("div", _hoisted_1$3C, [
11557
+ __props.warnings.length ? (openBlock(), createBlock(unref(Alert), {
11558
+ key: 0,
11559
+ type: "warning",
11560
+ "show-icon": ""
11561
+ }, {
11562
+ message: withCtx(() => [..._cache[0] || (_cache[0] = [
11563
+ createTextVNode("以下内容已做兼容处理,可以继续导入", -1)
11564
+ ])]),
11565
+ description: withCtx(() => [
11566
+ createElementVNode("ul", _hoisted_2$2x, [
11567
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.warnings, (warning2, index2) => {
11568
+ return openBlock(), createElementBlock("li", { key: index2 }, toDisplayString$1(warning2), 1);
11569
+ }), 128))
11570
+ ])
11571
+ ]),
11572
+ _: 1
11573
+ })) : createCommentVNode("", true),
11574
+ createElementVNode("div", _hoisted_3$1U, "将导入 " + toDisplayString$1(__props.sheets.length) + " 个工作表", 1),
11575
+ createElementVNode("ul", _hoisted_4$1l, [
11576
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.sheets, (sheet) => {
11577
+ return openBlock(), createElementBlock("li", {
11578
+ key: sheet.title
11579
+ }, [
11580
+ createElementVNode("span", null, toDisplayString$1(sheet.title), 1),
11581
+ createElementVNode("span", null, toDisplayString$1(sheet.rows) + " 行 × " + toDisplayString$1(sheet.cols) + " 列 · " + toDisplayString$1(sheet.fields) + " 个字段绑定", 1)
11582
+ ]);
11583
+ }), 128))
11584
+ ]),
11585
+ _cache[1] || (_cache[1] = createElementVNode("p", { class: "xlsx-import-summary__replace" }, "导入后将替换当前设计稿,请确认以上处理结果。", -1))
11586
+ ]);
11587
+ };
11588
+ }
11589
+ });
11590
+ const XlsxImportSummary = /* @__PURE__ */ _export_sfc(_sfc_main$6w, [["__scopeId", "data-v-e66e3c0e"]]);
11466
11591
  let doc$1;
11467
11592
  const topPublishVersions = ref$1([]);
11468
11593
  const currentVersion = ref$1();
@@ -12454,7 +12579,7 @@ function useSpreadSheet() {
12454
12579
  }
12455
12580
  if (checkSelectionConflict(selection$1)) return;
12456
12581
  const { ok, data } = await window.NocodeAdapter.utils.overlay.modal(
12457
- _sfc_main$6y,
12582
+ _sfc_main$6z,
12458
12583
  { type: type2 },
12459
12584
  { title: `添加${$t("sys.onlineForm.subTableType." + type2)}`, width: "640px" }
12460
12585
  );
@@ -12526,7 +12651,7 @@ function useSpreadSheet() {
12526
12651
  return;
12527
12652
  }
12528
12653
  const { ok, data } = await window.NocodeAdapter.utils.overlay.modal(
12529
- _sfc_main$6x,
12654
+ _sfc_main$6y,
12530
12655
  {},
12531
12656
  {
12532
12657
  title: $t("sys.onlineForm.addHeader"),
@@ -12783,22 +12908,24 @@ function useSpreadSheet() {
12783
12908
  const size = [w - padding.l - padding.r + "mm", paperHeight - padding.t - padding.b + "mm"];
12784
12909
  const { modelMetaMap: modelMetaMap2, refreshModelFields: refreshModelFields2 } = useModelFields();
12785
12910
  const keyList = (modelMetaMap2.value[doc.value.modelKey]?.fields ?? []).map((i) => i.key);
12786
- const imported = await XlsxParser.xlsx2Sheets(file, payload?.withFields ? keyList : []);
12911
+ const imported = await XlsxParser.xlsx2Sheets(file, payload?.withFields ? keyList : [], {
12912
+ withFields: !!payload?.withFields
12913
+ });
12787
12914
  imported.sheets.forEach((sheet) => XlsxParser.contentFitToPaper(sheet.paper, size));
12788
12915
  const confirmed = await new Promise((resolve) => {
12789
12916
  Modal.confirm({
12790
12917
  title: `确认替换为 ${imported.sheets.length} 个工作表`,
12791
- content: h(
12792
- "div",
12793
- imported.sheets.map(
12794
- (sheet) => h(
12795
- "div",
12796
- { style: "margin: 4px 0;" },
12797
- `${sheet.title}:${sheet.paper.rows.length} 行 × ${sheet.paper.cols.length} 列,${sheet.paperFields.length} 个字段绑定`
12798
- )
12799
- )
12800
- ),
12801
- okText: $t("sys.okText"),
12918
+ width: 680,
12919
+ content: h(XlsxImportSummary, {
12920
+ sheets: imported.sheets.map((sheet) => ({
12921
+ title: sheet.title,
12922
+ rows: sheet.paper.rows.length,
12923
+ cols: sheet.paper.cols.length,
12924
+ fields: sheet.paperFields.length
12925
+ })),
12926
+ warnings: imported.warnings
12927
+ }),
12928
+ okText: imported.warnings.length ? "继续导入" : "导入",
12802
12929
  cancelText: $t("sys.cancel"),
12803
12930
  zIndex: 2e3,
12804
12931
  onOk: () => resolve(true),
@@ -12817,20 +12944,6 @@ function useSpreadSheet() {
12817
12944
  }
12818
12945
  return result;
12819
12946
  };
12820
- const importedFieldOwners = /* @__PURE__ */ new Map();
12821
- imported.sheets.forEach((sheet) => {
12822
- sheet.paperFields.forEach((field) => {
12823
- const key = field.fieldKey || field.fieldName;
12824
- if (!key) return;
12825
- const owner = importedFieldOwners.get(key);
12826
- if (owner) {
12827
- throw new Error(
12828
- `字段「${key}」重复出现(${owner}、${sheet.title}),同一字段只能导入一次`
12829
- );
12830
- }
12831
- importedFieldOwners.set(key, sheet.title);
12832
- });
12833
- });
12834
12947
  imported.fields?.forEach((item) => {
12835
12948
  const { type: type2, key, name: rawName, required, uniqueConstraint, disabled } = item;
12836
12949
  if (!key || !rawName) {
@@ -13244,6 +13357,7 @@ function useSpreadSheet() {
13244
13357
  }
13245
13358
  }
13246
13359
  const fieldWidget = getFieldWidget2(bindField);
13360
+ sheetsData.value.forEach((sheet) => clearHiddenCellFieldPlacements(sheet.paper, bindField));
13247
13361
  const content = {
13248
13362
  type: CellType.Field,
13249
13363
  fieldMeta: bindField,
@@ -14650,15 +14764,15 @@ const _sfc_main$6m = /* @__PURE__ */ defineComponent({
14650
14764
  const value = computed(() => {
14651
14765
  const dateWidget = props2.fieldWidget;
14652
14766
  if (dateWidget.defaultSystemDate) {
14653
- const fallback = iconType.value === "time" ? "HH:mm:ss" : iconType.value === "datetime" ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD";
14654
- return dayjs().format(dateWidget.format || fallback);
14767
+ iconType.value === "time" ? "HH:mm:ss" : iconType.value === "datetime" ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD";
14768
+ return void 0;
14655
14769
  }
14656
14770
  const defaultValue = props2.fieldWidget.defaultValue;
14657
14771
  if (defaultValue === FieldSysVarDefaultValueEnum.CURRENT_USER) {
14658
- return $t("sys.sysCurrentUser");
14772
+ return void 0;
14659
14773
  }
14660
14774
  if (defaultValue === FieldSysVarDefaultValueEnum.CURRENT_ORG) {
14661
- return $t("sys.sysCurrentOrg");
14775
+ return void 0;
14662
14776
  }
14663
14777
  if (["fw:select", "fw:tree-select", "fw:rdo-select"].includes(props2.design ?? "fw:select")) {
14664
14778
  return void 0;
@@ -14684,7 +14798,7 @@ const _sfc_main$6m = /* @__PURE__ */ defineComponent({
14684
14798
  };
14685
14799
  }
14686
14800
  });
14687
- const FakeSelect = /* @__PURE__ */ _export_sfc(_sfc_main$6m, [["__scopeId", "data-v-34a104c8"]]);
14801
+ const FakeSelect = /* @__PURE__ */ _export_sfc(_sfc_main$6m, [["__scopeId", "data-v-a6a3e9c6"]]);
14688
14802
  const _sfc_main$6l = /* @__PURE__ */ defineComponent({
14689
14803
  __name: "radio-icon",
14690
14804
  props: {
@@ -14790,6 +14904,12 @@ const _sfc_main$6j = /* @__PURE__ */ defineComponent({
14790
14904
  }));
14791
14905
  });
14792
14906
  const selectedValues = computed(() => {
14907
+ const fieldType = props2.fieldMeta?.fieldType;
14908
+ if ([FIELD_TYPE.ENUM, FIELD_TYPE.ENUM_MULTI, FIELD_TYPE.OPTION, FIELD_TYPE.OPTION_MULTI].includes(
14909
+ fieldType
14910
+ )) {
14911
+ return [];
14912
+ }
14793
14913
  if (isBoolean2.value) {
14794
14914
  return [booleanWidget.value.defaultValue];
14795
14915
  }
@@ -14885,7 +15005,7 @@ const _sfc_main$6j = /* @__PURE__ */ defineComponent({
14885
15005
  };
14886
15006
  }
14887
15007
  });
14888
- const FakeOptionSelect = /* @__PURE__ */ _export_sfc(_sfc_main$6j, [["__scopeId", "data-v-2b593d5a"]]);
15008
+ const FakeOptionSelect = /* @__PURE__ */ _export_sfc(_sfc_main$6j, [["__scopeId", "data-v-d12ad167"]]);
14889
15009
  const FieldDesignComponents = {
14890
15010
  "fw:input": FakeInput,
14891
15011
  "fw:number": FakeNumberInput,
@@ -14917,7 +15037,8 @@ const _sfc_main$6i = /* @__PURE__ */ defineComponent({
14917
15037
  props: {
14918
15038
  fieldWidget: {},
14919
15039
  fieldMeta: {},
14920
- autoLineBreak: { type: Boolean }
15040
+ autoLineBreak: { type: Boolean },
15041
+ inCombinedFields: { type: Boolean }
14921
15042
  },
14922
15043
  setup(__props) {
14923
15044
  const ns = useNamespace("cell");
@@ -14972,6 +15093,11 @@ const _sfc_main$6i = /* @__PURE__ */ defineComponent({
14972
15093
  const preserveAffixWidth = computed(
14973
15094
  () => !readonly.value && hasAnyAffix.value && !wrapAffix.value
14974
15095
  );
15096
+ const preserveOptionWidth = computed(
15097
+ () => props2.inCombinedFields && !props2.autoLineBreak && !readonly.value && props2.fieldWidget.category === CellWidgetCategory.Enum && [CellWidgetRenderComp.Radio, CellWidgetRenderComp.Checkbox].includes(
15098
+ props2.fieldWidget.renderComp
15099
+ )
15100
+ );
14975
15101
  const wrapperSizeStyle = computed(() => ({
14976
15102
  width: wrapAffix.value ? "fit-content" : readonly.value ? void 0 : preserveAffixWidth.value ? "max-content" : `${normalizedCompWidth.value}px`
14977
15103
  }));
@@ -15009,7 +15135,8 @@ const _sfc_main$6i = /* @__PURE__ */ defineComponent({
15009
15135
  "cell-widget-design--with-prefix": hasOuterPrefix.value,
15010
15136
  "cell-widget-design--with-suffix": hasOuterSuffix.value,
15011
15137
  "cell-widget-design--fixed-affix": preserveAffixWidth.value,
15012
- "cell-widget-design--wrap-affix": wrapAffix.value
15138
+ "cell-widget-design--wrap-affix": wrapAffix.value,
15139
+ "cell-widget-design--unwrapped-options": preserveOptionWidth.value
15013
15140
  }
15014
15141
  ]),
15015
15142
  style: normalizeStyle([styleVars.value, wrapperSizeStyle.value])
@@ -15029,7 +15156,7 @@ const _sfc_main$6i = /* @__PURE__ */ defineComponent({
15029
15156
  };
15030
15157
  }
15031
15158
  });
15032
- const CellWidgetDesign = /* @__PURE__ */ _export_sfc(_sfc_main$6i, [["__scopeId", "data-v-e83b495f"]]);
15159
+ const CellWidgetDesign = /* @__PURE__ */ _export_sfc(_sfc_main$6i, [["__scopeId", "data-v-0c318157"]]);
15033
15160
  const cellWidgetDesign = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
15034
15161
  __proto__: null,
15035
15162
  default: CellWidgetDesign
@@ -16063,7 +16190,7 @@ function asyncImportWidgetConfigList() {
16063
16190
  return widgetConfigList;
16064
16191
  }
16065
16192
  function asyncImportWidgetDesign() {
16066
- const modules = /* @__PURE__ */ Object.assign({ "../__cell_widgets__/cell-widget-design.vue": () => Promise.resolve().then(() => cellWidgetDesign), "../__cell_widgets__/seal/seal-design.vue": () => import("./seal-design-DjQNPduq.js"), "./barcode/barcode-design.vue": () => import("./barcode-design-l3rdfj4B.js"), "./diagonal/diagonal-design.vue": () => import("./diagonal-design-BPLxs9ji.js"), "./image/image-design.vue": () => import("./image-design-D0wFVrcv.js"), "./line/line-design.vue": () => Promise.resolve().then(() => lineDesign), "./pagination/pagination-design.vue": () => import("./pagination-design-DGqFvJxx.js"), "./paper-widget-design.vue": () => import("./paper-widget-design-DrRVelBu.js"), "./power/power-design.vue": () => Promise.resolve().then(() => powerDesign), "./qrcode/qrcode-design.vue": () => import("./qrcode-design-Ck2_tB4Q.js"), "./rangelimit/rangelimit-design.vue": () => Promise.resolve().then(() => rangelimitDesign), "./serialnumber/serialnumber-design.vue": () => import("./serialnumber-design-BvJSmeFY.js"), "./text/text-design.vue": () => import("./text-design-CPMzgWXN.js"), "./timediff/timediff-design.vue": () => import("./timediff-design-CWiKmA7W.js") });
16193
+ const modules = /* @__PURE__ */ Object.assign({ "../__cell_widgets__/cell-widget-design.vue": () => Promise.resolve().then(() => cellWidgetDesign), "../__cell_widgets__/seal/seal-design.vue": () => import("./seal-design-BRJgX3Fr.js"), "./barcode/barcode-design.vue": () => import("./barcode-design-CHbO1c-N.js"), "./diagonal/diagonal-design.vue": () => import("./diagonal-design-CwaKPsqR.js"), "./image/image-design.vue": () => import("./image-design-g9R_z-IY.js"), "./line/line-design.vue": () => Promise.resolve().then(() => lineDesign), "./pagination/pagination-design.vue": () => import("./pagination-design-BasHtAud.js"), "./paper-widget-design.vue": () => import("./paper-widget-design-BWJtqIvf.js"), "./power/power-design.vue": () => Promise.resolve().then(() => powerDesign), "./qrcode/qrcode-design.vue": () => import("./qrcode-design-hSEE0IFK.js"), "./rangelimit/rangelimit-design.vue": () => Promise.resolve().then(() => rangelimitDesign), "./serialnumber/serialnumber-design.vue": () => import("./serialnumber-design-C92sT5qW.js"), "./text/text-design.vue": () => import("./text-design-DaxQodcl.js"), "./timediff/timediff-design.vue": () => import("./timediff-design-D84T_Isx.js") });
16067
16194
  const widgetDesignMap = Object.keys(modules).reduce((map2, path) => {
16068
16195
  const mKey = path.match(/\/([a-z]+)-design\.vue$/)?.[1];
16069
16196
  if (mKey) {
@@ -22006,7 +22133,8 @@ const _sfc_main$5$ = /* @__PURE__ */ defineComponent({
22006
22133
  key: 1,
22007
22134
  "field-widget": item.fieldWidget,
22008
22135
  "field-meta": item.fieldMeta,
22009
- "auto-line-break": isAutoLineBreak.value
22136
+ "auto-line-break": isAutoLineBreak.value,
22137
+ "in-combined-fields": ""
22010
22138
  }, null, 8, ["field-widget", "field-meta", "auto-line-break"])) : createCommentVNode("", true)
22011
22139
  ], 64);
22012
22140
  }), 128))
@@ -22051,7 +22179,7 @@ const _sfc_main$5$ = /* @__PURE__ */ defineComponent({
22051
22179
  };
22052
22180
  }
22053
22181
  });
22054
- const SpreadSheetCell = /* @__PURE__ */ _export_sfc(_sfc_main$5$, [["__scopeId", "data-v-f8007289"]]);
22182
+ const SpreadSheetCell = /* @__PURE__ */ _export_sfc(_sfc_main$5$, [["__scopeId", "data-v-38a0d106"]]);
22055
22183
  const ThresholdValue = 8;
22056
22184
  function getOffsetValue(left, width, points) {
22057
22185
  let offset2 = left;
@@ -39389,13 +39517,28 @@ function useDefaultValueOptions({ source, getFields, fetchPage }) {
39389
39517
  const searchKeys = ["code_", "name_"].filter((key) => keys2.includes(key));
39390
39518
  if (!searchKeys.length) keyword2.value = "";
39391
39519
  const conditions = keyword2.value ? searchKeys.map((key) => `${key}.like`) : [];
39392
- const page = await fetchPage(modelKey, {
39520
+ if (modelKey === "em_device") {
39521
+ conditions.push("asset_number_.like");
39522
+ }
39523
+ let bodyData = {
39393
39524
  pageNo: currentPage,
39394
39525
  pageSize: PAGE_SIZE,
39395
39526
  sorts: SORTS,
39396
39527
  query: Object.fromEntries(conditions.map((key) => [key, keyword2.value])),
39397
39528
  ...conditions.length > 1 ? { exp: `OR(${conditions.join(",")})` } : {}
39398
- });
39529
+ };
39530
+ if (modelKey === "em_device") {
39531
+ const { queryData, exp: deviceExp } = buildDeviceFilterQuery();
39532
+ bodyData = {
39533
+ ...bodyData,
39534
+ query: {
39535
+ ...queryData,
39536
+ ...bodyData.query
39537
+ },
39538
+ exp: keyword2.value ? refUtils.splicingExp(deviceExp, bodyData.exp) : deviceExp
39539
+ };
39540
+ }
39541
+ const page = await fetchPage(modelKey, bodyData);
39399
39542
  if (!isCurrent()) return;
39400
39543
  if (!Array.isArray(page?.data)) throw new Error("Invalid default value page");
39401
39544
  const merged = new Map(options.value.map((option2) => [option2.value, option2]));
@@ -39604,11 +39747,11 @@ const _sfc_main$4v = /* @__PURE__ */ defineComponent({
39604
39747
  FIELD_TYPE.SHOPFLOOR,
39605
39748
  FIELD_TYPE.WAREHOUSE,
39606
39749
  FIELD_TYPE.TARGET_WAREHOUSE,
39607
- FIELD_TYPE.ROUTING_OPERATION,
39608
- FIELD_TYPE.NOT_GOOD_GROUP,
39609
- FIELD_TYPE.NOT_GOOD_REASON,
39610
- FIELD_TYPE.SCRAP_GROUP,
39611
- FIELD_TYPE.SCRAP_REASON
39750
+ FIELD_TYPE.ROUTING_OPERATION
39751
+ // FIELD_TYPE.NOT_GOOD_GROUP,
39752
+ // FIELD_TYPE.NOT_GOOD_REASON,
39753
+ // FIELD_TYPE.SCRAP_GROUP,
39754
+ // FIELD_TYPE.SCRAP_REASON,
39612
39755
  ];
39613
39756
  const defaultValueVisible = useDefaultValueVisibility(() => props2.fieldMeta);
39614
39757
  const showType = computed(() => {
@@ -39618,6 +39761,19 @@ const _sfc_main$4v = /* @__PURE__ */ defineComponent({
39618
39761
  const isShowBizType = showTypes.includes(bizType);
39619
39762
  return isShowType || isShowBizType;
39620
39763
  });
39764
+ const typeBizMaps = {
39765
+ [FIELD_TYPE.ROUTING_OPERATION]: {
39766
+ bsKey: "biz_list_available_operations",
39767
+ body: {
39768
+ query: {
39769
+ type_: "NODE_SPEC"
39770
+ }
39771
+ }
39772
+ },
39773
+ [FIELD_TYPE.DEVICE]: {
39774
+ bsKey: "biz_form_device_search"
39775
+ }
39776
+ };
39621
39777
  const { modelMetaMap: modelMetaMap2 } = useModelFields();
39622
39778
  const {
39623
39779
  options,
@@ -39649,10 +39805,22 @@ const _sfc_main$4v = /* @__PURE__ */ defineComponent({
39649
39805
  return fields.map((field) => field.key).filter((key) => !!key);
39650
39806
  },
39651
39807
  async fetchPage(modelKey, body) {
39808
+ const { fieldType, bizType } = props2.fieldMeta;
39809
+ const cusBiz = typeBizMaps[bizType || fieldType];
39652
39810
  return await api.apaas.modelComprehensive.postBizServiceModelCategoryModelKeyBsKey(
39653
- { modelCategory: "entity", modelKey, bsKey: "listByPage" },
39811
+ {
39812
+ modelCategory: "entity",
39813
+ modelKey,
39814
+ bsKey: cusBiz?.bsKey || "listByPage"
39815
+ },
39654
39816
  {},
39655
- body
39817
+ {
39818
+ ...body,
39819
+ query: {
39820
+ ...body.query || {},
39821
+ ...cusBiz?.body?.query || {}
39822
+ }
39823
+ }
39656
39824
  );
39657
39825
  }
39658
39826
  });
@@ -39701,6 +39869,7 @@ const _sfc_main$4v = /* @__PURE__ */ defineComponent({
39701
39869
  "default-active-first-option": false,
39702
39870
  "label-in-value": "",
39703
39871
  style: { "width": "100%" },
39872
+ allowClear: "",
39704
39873
  onChange: handleChange,
39705
39874
  onDropdownVisibleChange: unref(handleOpen),
39706
39875
  onPopupScroll: unref(handleScroll),
@@ -39750,7 +39919,7 @@ const _sfc_main$4v = /* @__PURE__ */ defineComponent({
39750
39919
  };
39751
39920
  }
39752
39921
  });
39753
- const DefaultValueSelectEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4v, [["__scopeId", "data-v-c4be7b0d"]]);
39922
+ const DefaultValueSelectEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4v, [["__scopeId", "data-v-43b7850e"]]);
39754
39923
  const _hoisted_1$2w = { class: "flex justify-between items-center" };
39755
39924
  const _sfc_main$4u = /* @__PURE__ */ defineComponent({
39756
39925
  __name: "ref-props",
@@ -55660,15 +55829,14 @@ const _sfc_main$3C = /* @__PURE__ */ defineComponent({
55660
55829
  示例:PROCESSPARAMCHECK('gycs',灭菌参数) 返回 true`,
55661
55830
  definition: "declare function PROCESSPARAMCHECK(key:string; value: number): Promise<boolean | null>;"
55662
55831
  },
55663
- {
55664
- id: "DEVICEPARAMCHECK",
55665
- returnType: "boolean",
55666
- args: ["id", "key", "value"],
55667
- desc: `DEVICEPARAMCHECK(设备字段,参数字段KEY,参数字段)
55668
- 根据表单填报的设备参数实际值,与该参数配置的上限和下限进行比较,判断参数是否合格。
55669
- 示例:DEVICEPARAMCHECK(设备字段,'sbcs',运行转速) 返回 true`,
55670
- definition: "declare function DEVICEPARAMCHECK(id:string; key:string, value: number): Promise<boolean | null>;"
55671
- },
55832
+ // {
55833
+ // id: 'DEVICEPARAMCHECK',
55834
+ // returnType: 'boolean',
55835
+ // args: ['id', 'key', 'value'],
55836
+ // desc: `DEVICEPARAMCHECK(设备字段,参数字段KEY,参数字段)\n根据表单填报的设备参数实际值,与该参数配置的上限和下限进行比较,判断参数是否合格。\n示例:DEVICEPARAMCHECK(设备字段,'sbcs',运行转速) 返回 true`,
55837
+ // definition:
55838
+ // 'declare function DEVICEPARAMCHECK(id:string; key:string, value: number): Promise<boolean | null>;',
55839
+ // },
55672
55840
  {
55673
55841
  id: "INSPECTIONPARAMCHECK",
55674
55842
  returnType: "boolean",
@@ -55876,7 +56044,7 @@ const _sfc_main$3C = /* @__PURE__ */ defineComponent({
55876
56044
  };
55877
56045
  }
55878
56046
  });
55879
- const addDependencyModal = /* @__PURE__ */ _export_sfc(_sfc_main$3C, [["__scopeId", "data-v-d15f9081"]]);
56047
+ const addDependencyModal = /* @__PURE__ */ _export_sfc(_sfc_main$3C, [["__scopeId", "data-v-eec1bc1b"]]);
55880
56048
  const _hoisted_1$29 = { class: "text-[#C3C3C3] text-12px mb8px" };
55881
56049
  const _hoisted_2$1y = { class: "ks-row" };
55882
56050
  const _hoisted_3$1c = { class: "mr-auto" };
@@ -56641,7 +56809,7 @@ const _sfc_main$3v = /* @__PURE__ */ defineComponent({
56641
56809
  }
56642
56810
  });
56643
56811
  function asyncImportWidgetProp() {
56644
- const modules = /* @__PURE__ */ Object.assign({ "./widget-barcode.vue": () => import("./widget-barcode-CHBw2stC.js"), "./widget-diagonal.vue": () => import("./widget-diagonal-NClGO5Rn.js"), "./widget-image.vue": () => import("./widget-image-_Nb1X3Xz.js"), "./widget-line.vue": () => import("./widget-line-Bipjn0YA.js"), "./widget-pagination.vue": () => import("./widget-pagination-B_Pse1Fh.js"), "./widget-power.vue": () => import("./widget-power-DKccfSH2.js"), "./widget-qrcode.vue": () => import("./widget-qrcode-D-9tBxgw.js"), "./widget-rangelimit.vue": () => import("./widget-rangelimit-BpOZXTEa.js"), "./widget-serialnumber.vue": () => import("./widget-serialnumber-zGQ-Z_UV.js"), "./widget-text.vue": () => import("./widget-text-CVJ1-3y3.js"), "./widget-timediff.vue": () => import("./widget-timediff-CBonTDnJ.js") });
56812
+ const modules = /* @__PURE__ */ Object.assign({ "./widget-barcode.vue": () => import("./widget-barcode-CN13ewGl.js"), "./widget-diagonal.vue": () => import("./widget-diagonal-DMki09VI.js"), "./widget-image.vue": () => import("./widget-image-BP_4rlRW.js"), "./widget-line.vue": () => import("./widget-line-BkbZEHCt.js"), "./widget-pagination.vue": () => import("./widget-pagination-Bo31Q_F-.js"), "./widget-power.vue": () => import("./widget-power-DNaqREkx.js"), "./widget-qrcode.vue": () => import("./widget-qrcode-DLGoKdnQ.js"), "./widget-rangelimit.vue": () => import("./widget-rangelimit-CwI-0gsT.js"), "./widget-serialnumber.vue": () => import("./widget-serialnumber-4TPNnZeQ.js"), "./widget-text.vue": () => import("./widget-text-kjnijcMF.js"), "./widget-timediff.vue": () => import("./widget-timediff-CZAMM1f0.js") });
56645
56813
  const widgetPropMap = Object.keys(modules).reduce((map2, path) => {
56646
56814
  const mKey = path.match(/\/widget-([a-z]+)\.vue$/)?.[1];
56647
56815
  if (mKey) {
@@ -66240,7 +66408,7 @@ const _sfc_main$2y = /* @__PURE__ */ defineComponent({
66240
66408
  onSelect: onClearAll
66241
66409
  }, null, 8, ["value"]),
66242
66410
  _cache[9] || (_cache[9] = createElementVNode("div", { class: "split" }, null, -1)),
66243
- joinModelType.value === unref(JoinModelTypeEum).FormModel ? (openBlock(), createBlock(unref(_sfc_main$6A), {
66411
+ joinModelType.value === unref(JoinModelTypeEum).FormModel ? (openBlock(), createBlock(unref(_sfc_main$6B), {
66244
66412
  key: 0,
66245
66413
  class: "custom-select",
66246
66414
  placeholder: _ctx.$t("sys.cardDesign.form.modelRequired"),
@@ -69669,23 +69837,11 @@ const _sfc_main$2e = /* @__PURE__ */ defineComponent({
69669
69837
  keyword: void 0
69670
69838
  });
69671
69839
  const manualInputValue = computed(() => String(searchForm.value.keyword ?? "").trim());
69672
- const searchField = [
69673
- "name_.like",
69674
- "product_id_code_.like",
69675
- "product_id_name_.like",
69676
- "spec_.like"
69677
- ];
69678
69840
  const fetcher = async ({ keyword: keyword2 = "", pageNo, pageSize: pageSize2 }) => {
69679
- const queryData = keyword2 && String(keyword2).trim() ? searchField.reduce((total, fieldKey) => {
69680
- total[fieldKey.includes(".") ? fieldKey : `${fieldKey}.like`] = keyword2;
69681
- return total;
69682
- }, {}) : {};
69841
+ const { queryData, exp } = buildMaterialLotListQuery(keyword2, props2.extraQuery);
69683
69842
  const res = await renderUtils.requestMaterialLotOptions({
69684
- exp: keyword2 ? `OR(${searchField.join(",")})` : void 0,
69685
- queryData: {
69686
- ...queryData,
69687
- ...props2.extraQuery
69688
- },
69843
+ exp,
69844
+ queryData,
69689
69845
  pageNo,
69690
69846
  pageSize: pageSize2
69691
69847
  });
@@ -69813,7 +69969,7 @@ const _sfc_main$2e = /* @__PURE__ */ defineComponent({
69813
69969
  };
69814
69970
  }
69815
69971
  });
69816
- const MaterialLotSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$2e, [["__scopeId", "data-v-d5b1328d"]]);
69972
+ const MaterialLotSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$2e, [["__scopeId", "data-v-be7eefec"]]);
69817
69973
  const _sfc_main$2d = /* @__PURE__ */ defineComponent({
69818
69974
  __name: "trace-material-lot-select",
69819
69975
  props: {
@@ -70732,6 +70888,9 @@ const _sfc_main$28 = /* @__PURE__ */ defineComponent({
70732
70888
  const emit2 = __emit;
70733
70889
  const currentValue = computed({
70734
70890
  get() {
70891
+ if (props2.value === void 0 || props2.value === null || props2.value === "") {
70892
+ return [];
70893
+ }
70735
70894
  if (props2.value && !Array.isArray(props2.value) && props2.mode !== "multiple") {
70736
70895
  return [props2.value];
70737
70896
  }
@@ -70772,7 +70931,7 @@ const _sfc_main$28 = /* @__PURE__ */ defineComponent({
70772
70931
  };
70773
70932
  }
70774
70933
  });
70775
- const CheckboxSwitch$1 = /* @__PURE__ */ _export_sfc(_sfc_main$28, [["__scopeId", "data-v-4c31c26d"]]);
70934
+ const CheckboxSwitch$1 = /* @__PURE__ */ _export_sfc(_sfc_main$28, [["__scopeId", "data-v-784964bd"]]);
70776
70935
  const _sfc_main$27 = /* @__PURE__ */ defineComponent({
70777
70936
  __name: "radio-enum",
70778
70937
  props: {
@@ -74299,7 +74458,7 @@ const VuePdf = /* @__PURE__ */ defineComponent({
74299
74458
  }
74300
74459
  });
74301
74460
  const VueVideoPlayer = defineAsyncComponent(
74302
- () => import("./VueVideoPlayer-D5zE_mXQ.js")
74461
+ () => import("./VueVideoPlayer-yISI5amX.js")
74303
74462
  );
74304
74463
  const _hoisted_1$18 = {
74305
74464
  key: 0,
@@ -77896,12 +78055,8 @@ const _sfc_main$1F = /* @__PURE__ */ defineComponent({
77896
78055
  ...props2.widget,
77897
78056
  props: {
77898
78057
  ...props2.widget.props,
77899
- displayFields: [
77900
- { key: "code_", name: $t("sys.edhr.field.code") },
77901
- { key: "product_id_name_", name: "产品名称" },
77902
- { key: "product_id_code_", name: "产品编码" },
77903
- { key: "product_id_spec_", name: "产品规格" },
77904
- { key: "qty_", name: "数量" }
78058
+ displayFields: props2.widget.props.displayFields ?? [
78059
+ { key: "code_", name: $t("sys.edhr.field.code") }
77905
78060
  ],
77906
78061
  quickSearchable: true,
77907
78062
  quickSearchField,
@@ -78154,7 +78309,7 @@ const _sfc_main$1F = /* @__PURE__ */ defineComponent({
78154
78309
  };
78155
78310
  }
78156
78311
  });
78157
- const selectRender = /* @__PURE__ */ _export_sfc(_sfc_main$1F, [["__scopeId", "data-v-b59a242d"]]);
78312
+ const selectRender = /* @__PURE__ */ _export_sfc(_sfc_main$1F, [["__scopeId", "data-v-b2337210"]]);
78158
78313
  const __vite_glob_0_10 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
78159
78314
  __proto__: null,
78160
78315
  default: selectRender
@@ -84534,6 +84689,8 @@ const _sfc_main$1u = /* @__PURE__ */ defineComponent({
84534
84689
  default: withCtx(() => [
84535
84690
  createVNode(unref(CellMedia), {
84536
84691
  class: normalizeClass([
84692
+ "image-cell-content",
84693
+ images.value.length && isAdaptive.value && "is-adaptive",
84537
84694
  !images.value.length && unref(showRequired) && "is-show-required",
84538
84695
  unref(realFieldId),
84539
84696
  unref(showDisplayStatus),
@@ -84594,7 +84751,7 @@ const _sfc_main$1u = /* @__PURE__ */ defineComponent({
84594
84751
  };
84595
84752
  }
84596
84753
  });
84597
- const uploadImageRender = /* @__PURE__ */ _export_sfc(_sfc_main$1u, [["__scopeId", "data-v-e83e65ec"]]);
84754
+ const uploadImageRender = /* @__PURE__ */ _export_sfc(_sfc_main$1u, [["__scopeId", "data-v-8a9e24fe"]]);
84598
84755
  const __vite_glob_0_16 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
84599
84756
  __proto__: null,
84600
84757
  default: uploadImageRender
@@ -84931,6 +85088,7 @@ const _sfc_main$1q = /* @__PURE__ */ defineComponent({
84931
85088
  const { fields } = reactive(props2.widget.props);
84932
85089
  const dataRelationShip = inject(NCB_PROVIDE.DATA_RELATION_SHIP);
84933
85090
  const isPreview = computed(() => dataRelationShip?.renderModeType === RenderModeEnum.ViewMode);
85091
+ const preserveOptionWidth = (fieldWidget) => fieldWidget.component === ComponentTypeEnum.EnumSelect && "bindCompStyleType" in fieldWidget.props && (fieldWidget.props.bindCompStyleType === BindCmpStyleEnum.CMP_RADIO || fieldWidget.props.bindCompStyleType === BindCmpStyleEnum.CMP_CHECKBOX) && !isCellAutoLineBreak(fieldWidget.style);
84934
85092
  const wrapFields = computed(() => isCellAutoLineBreak(props2.widget.style));
84935
85093
  const layoutStyle = computed(() => {
84936
85094
  const { textAlign, verticalAlign } = props2.widget.style ?? {};
@@ -84965,6 +85123,9 @@ const _sfc_main$1q = /* @__PURE__ */ defineComponent({
84965
85123
  style: normalizeStyle({ width: `${unref(normalizeSpacerWidth)(fieldWidget.props.spacerWidth)}px` })
84966
85124
  }, null, 4)) : (openBlock(), createBlock(_sfc_main$1c, {
84967
85125
  key: 1,
85126
+ class: normalizeClass({
85127
+ "combine-fields-item--unwrapped-options": preserveOptionWidth(fieldWidget)
85128
+ }),
84968
85129
  widget: fieldWidget,
84969
85130
  formData: __props.formData,
84970
85131
  subtableFieldId: __props.subtableFieldId,
@@ -84972,14 +85133,14 @@ const _sfc_main$1q = /* @__PURE__ */ defineComponent({
84972
85133
  realColIndex: __props.realColIndex,
84973
85134
  pageRowIndex: __props.pageRowIndex,
84974
85135
  childSubTableDataIndex: __props.childSubTableDataIndex
84975
- }, null, 8, ["widget", "formData", "subtableFieldId", "realRowIndex", "realColIndex", "pageRowIndex", "childSubTableDataIndex"]))
85136
+ }, null, 8, ["class", "widget", "formData", "subtableFieldId", "realRowIndex", "realColIndex", "pageRowIndex", "childSubTableDataIndex"]))
84976
85137
  ], 64);
84977
85138
  }), 128))
84978
85139
  ], 6);
84979
85140
  };
84980
85141
  }
84981
85142
  });
84982
- const combineFieldsRender = /* @__PURE__ */ _export_sfc(_sfc_main$1q, [["__scopeId", "data-v-fdb6cdd3"]]);
85143
+ const combineFieldsRender = /* @__PURE__ */ _export_sfc(_sfc_main$1q, [["__scopeId", "data-v-fdb7c6dd"]]);
84983
85144
  const __vite_glob_0_19 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
84984
85145
  __proto__: null,
84985
85146
  default: combineFieldsRender
@@ -86690,6 +86851,7 @@ function useObjectInitModal() {
86690
86851
  );
86691
86852
  const bomEntry = {
86692
86853
  ...pick(result, bomKeys),
86854
+ force_loading_enabled_: false,
86693
86855
  id_: existing?.objectBomConfig?.entries_?.[0]?.id_
86694
86856
  };
86695
86857
  result.objectBomConfig = {
@@ -95815,8 +95977,8 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
95815
95977
  printTask = (async () => {
95816
95978
  if (document.activeElement instanceof HTMLElement) document.activeElement.blur();
95817
95979
  await nextTick();
95818
- const { printRuntimeInstance } = await import("./print-runtime-instance-D4Pj5Qhr.js");
95819
- const { default: renderer } = await import("./print-snapshot-renderer-De-pf1K_.js");
95980
+ const { printRuntimeInstance } = await import("./print-runtime-instance-OTdo3422.js");
95981
+ const { default: renderer } = await import("./print-snapshot-renderer-ByiTyPun.js");
95820
95982
  if (abort.signal.aborted) throw new Error("打印已取消");
95821
95983
  printRenderer.value = markRaw(renderer);
95822
95984
  await printRuntimeInstance(
@@ -95963,7 +96125,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
95963
96125
  provide(NCB_PROVIDE.RUNTIME_INSTANCE_REGISTRY, runtimeRegistry);
95964
96126
  initWebPaasUploadApis();
95965
96127
  return (_ctx, _cache) => {
95966
- return openBlock(), createBlock(unref(_sfc_main$6B), {
96128
+ return openBlock(), createBlock(unref(_sfc_main$6C), {
95967
96129
  loading: __props.loading,
95968
96130
  "has-data": __props.hasData,
95969
96131
  error: unref(runtimeRegistry).loadState.error?.message