@crystaldesign/diva-backoffice 26.12.0-beta.12 → 26.12.0-beta.14

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 (107) hide show
  1. package/build/esm/index.js +47917 -41543
  2. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/index.d.ts +11 -0
  3. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/index.d.ts.map +1 -0
  4. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/plannerSemantics.d.ts +21 -0
  5. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/plannerSemantics.d.ts.map +1 -0
  6. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/primitives.d.ts +47 -0
  7. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/primitives.d.ts.map +1 -0
  8. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/recipes.d.ts +21 -0
  9. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/recipes.d.ts.map +1 -0
  10. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/render.d.ts +40 -0
  11. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/render.d.ts.map +1 -0
  12. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/style.d.ts +147 -0
  13. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/style.d.ts.map +1 -0
  14. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/templates.d.ts +20 -0
  15. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/templates.d.ts.map +1 -0
  16. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/types.d.ts +129 -0
  17. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/articleSvg/types.d.ts.map +1 -0
  18. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/mediaToolset.d.ts +6 -0
  19. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/mediaToolset.d.ts.map +1 -1
  20. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/navigationToolset.d.ts +8 -1
  21. package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/navigationToolset.d.ts.map +1 -1
  22. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsDryRun.test.d.ts +2 -0
  23. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsDryRun.test.d.ts.map +1 -0
  24. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsLookupReuse.test.d.ts +2 -0
  25. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsLookupReuse.test.d.ts.map +1 -0
  26. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsRowRule.test.d.ts +2 -0
  27. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsRowRule.test.d.ts.map +1 -0
  28. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsTsv.test.d.ts +2 -0
  29. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/addRowsTsv.test.d.ts.map +1 -0
  30. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgMatrix.test.d.ts +2 -0
  31. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgMatrix.test.d.ts.map +1 -0
  32. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgPlannerIntegration.test.d.ts +2 -0
  33. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgPlannerIntegration.test.d.ts.map +1 -0
  34. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgStyle.test.d.ts +2 -0
  35. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgStyle.test.d.ts.map +1 -0
  36. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgTemplates.test.d.ts +2 -0
  37. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgTemplates.test.d.ts.map +1 -0
  38. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/discardStagedChanges.test.d.ts +2 -0
  39. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/discardStagedChanges.test.d.ts.map +1 -0
  40. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/dryRunNeverWrites.test.d.ts +2 -0
  41. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/dryRunNeverWrites.test.d.ts.map +1 -0
  42. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/failedReceipt.test.d.ts +2 -0
  43. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/failedReceipt.test.d.ts.map +1 -0
  44. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/fakeGridEnvironment.d.ts +39 -0
  45. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/fakeGridEnvironment.d.ts.map +1 -1
  46. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/getAssetUrls.test.d.ts +2 -0
  47. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/getAssetUrls.test.d.ts.map +1 -0
  48. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/listGridsCompact.test.d.ts +2 -0
  49. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/listGridsCompact.test.d.ts.map +1 -0
  50. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/locateRowUnverified.test.d.ts +2 -0
  51. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/locateRowUnverified.test.d.ts.map +1 -0
  52. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/readColumnOptionsSearch.test.d.ts +2 -0
  53. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/readColumnOptionsSearch.test.d.ts.map +1 -0
  54. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/readGridRowsCreatorRow.test.d.ts +2 -0
  55. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/readGridRowsCreatorRow.test.d.ts.map +1 -0
  56. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/removeColumn.test.d.ts +2 -0
  57. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/removeColumn.test.d.ts.map +1 -0
  58. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/writeRowLimit.test.d.ts +2 -0
  59. package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/writeRowLimit.test.d.ts.map +1 -0
  60. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/Tables/optionCombinationColumns.test.d.ts +2 -0
  61. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/Tables/optionCombinationColumns.test.d.ts.map +1 -0
  62. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/Tables/partlistPosColumns.test.d.ts +2 -0
  63. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/Tables/partlistPosColumns.test.d.ts.map +1 -0
  64. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/components/SvgGeneratorTool.test.d.ts +2 -0
  65. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/components/SvgGeneratorTool.test.d.ts.map +1 -0
  66. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRows.test.d.ts +2 -0
  67. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRows.test.d.ts.map +1 -0
  68. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRowsJwt.test.d.ts +2 -0
  69. package/build/types/backoffice/src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRowsJwt.test.d.ts.map +1 -0
  70. package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/useHeaderProducts.d.ts.map +1 -1
  71. package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/headerSync.d.ts +12 -8
  72. package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/headerSync.d.ts.map +1 -1
  73. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/DecisionCellRenderer/index.d.ts +16 -0
  74. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/DecisionCellRenderer/index.d.ts.map +1 -0
  75. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/OptionCombinations/index.d.ts +1 -1
  76. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/OptionCombinations/index.d.ts.map +1 -1
  77. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/OptionCombinations/optionsSetRefCodec.d.ts +7 -1
  78. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/OptionCombinations/optionsSetRefCodec.d.ts.map +1 -1
  79. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PartlistPos.d.ts +1 -1
  80. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PartlistPos.d.ts.map +1 -1
  81. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupFinishes.d.ts +1 -1
  82. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupFinishes.d.ts.map +1 -1
  83. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupPercentageSurcharge.d.ts +1 -1
  84. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupPercentageSurcharge.d.ts.map +1 -1
  85. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/optionCombinationColumns.d.ts +59 -0
  86. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/optionCombinationColumns.d.ts.map +1 -0
  87. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/partlistPosColumns.d.ts +66 -0
  88. package/build/types/backoffice/src/ui/IDMCatalogEditor/Tables/partlistPosColumns.d.ts.map +1 -0
  89. package/build/types/backoffice/src/ui/IDMCatalogEditor/components/SvgGeneratorTool/index.d.ts +13 -0
  90. package/build/types/backoffice/src/ui/IDMCatalogEditor/components/SvgGeneratorTool/index.d.ts.map +1 -0
  91. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/useCatalogRows.d.ts +24 -0
  92. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/useCatalogRows.d.ts.map +1 -0
  93. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/useDecisionsOfCatalog.d.ts +8 -0
  94. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/useDecisionsOfCatalog.d.ts.map +1 -0
  95. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/useModule.d.ts.map +1 -1
  96. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/usePartlistsOfCatalog.d.ts +8 -0
  97. package/build/types/backoffice/src/ui/IDMCatalogEditor/hooks/usePartlistsOfCatalog.d.ts.map +1 -0
  98. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableAllOptionCombinations/index.d.ts +11 -0
  99. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableAllOptionCombinations/index.d.ts.map +1 -0
  100. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableAllPartlistPos/index.d.ts +11 -0
  101. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableAllPartlistPos/index.d.ts.map +1 -0
  102. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableDecisions/index.d.ts.map +1 -1
  103. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TableItems/index.d.ts.map +1 -1
  104. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TablePartlists/index.d.ts.map +1 -1
  105. package/build/types/backoffice/src/ui/IDMCatalogEditor/modules/TablePriceFeatureGroups/index.d.ts.map +1 -1
  106. package/build/types/backoffice/src/ui/IDMCatalogEditor/views.d.ts.map +1 -1
  107. package/package.json +10 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"articleSvgStyle.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgStyle.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=articleSvgTemplates.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"articleSvgTemplates.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/articleSvgTemplates.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=discardStagedChanges.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discardStagedChanges.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/discardStagedChanges.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=dryRunNeverWrites.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dryRunNeverWrites.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/dryRunNeverWrites.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=failedReceipt.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failedReceipt.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/failedReceipt.test.ts"],"names":[],"mappings":""}
@@ -27,7 +27,12 @@ export interface FakeColumnDef {
27
27
  name: string;
28
28
  }[];
29
29
  multiple?: boolean;
30
+ /** Marks the rows where this column is the position COUNT — the flat combination table's `actions`. */
31
+ isPosCount?: (data: Record<string, unknown>) => boolean;
30
32
  };
33
+ headerName?: string;
34
+ /** What the column header offers, e.g. `onRemove` for a removable feature column. */
35
+ headerComponentParams?: Record<string, unknown>;
31
36
  }
32
37
  export interface FakeGridOptions {
33
38
  /** Table label the grid is registered under (default 'items'). */
@@ -56,6 +61,10 @@ export interface FakeGridOptions {
56
61
  selectedSerie?: Record<string, unknown>;
57
62
  /** _id the server hands back for an added row. */
58
63
  addedId?: string;
64
+ /** Whether the grid can create rows — a table that can carries one trailing empty row inside its row count. */
65
+ canCreate?: boolean;
66
+ /** With canCreate: the trailing creator row is counted but NOT loaded, as past the first block of a lazy table. */
67
+ creatorRowUnloaded?: boolean;
59
68
  /** Fields the fake server drops on save: the row commits, but these values come back empty. */
60
69
  dropOnCommit?: string[];
61
70
  /** Rows the commit REPORTS as committed although the server transaction did not keep them. */
@@ -72,6 +81,8 @@ export interface FakeGridOptions {
72
81
  savedBeforeDecision?: boolean;
73
82
  /** What the user answers on the approval bar; without it the changes are approved. */
74
83
  approveDecision?: boolean;
84
+ /** Runs while the approval bar is open — what the user does to the table meanwhile (a re-render, an added column). */
85
+ duringApproval?: () => void;
75
86
  /** Adds a COMPUTED column: no field of its own, stored through cellEditToRowUpdate (the accessory matrix). */
76
87
  computedColumn?: boolean;
77
88
  /** Actions the VIEW declares on this table (runTableAction hands them the input and the approval). */
@@ -80,6 +91,14 @@ export interface FakeGridOptions {
80
91
  description: string;
81
92
  mutating?: boolean;
82
93
  run: (input: string) => Promise<string>;
94
+ /** The action's own value list, as readColumnOptions answers it. */
95
+ options?: (search: string, limit: number) => Promise<{
96
+ options: {
97
+ value: string;
98
+ label: string;
99
+ }[];
100
+ note?: string;
101
+ }>;
83
102
  }[];
84
103
  /**
85
104
  * A header-add column (the "add a feature column" lookup): `keys` are the entries the fake lookup service knows.
@@ -102,6 +121,14 @@ export interface FakeGridOptions {
102
121
  }[]>;
103
122
  /** Declares this grid a SUBTABLE bound to that parent row (`value` unset = bound to none), as its opening module does. */
104
123
  boundParent?: AgentBoundParent;
124
+ /** The table has staged, uncommitted changes (a user's half-done edit, an orphaned agent batch). */
125
+ pendingChanges?: boolean;
126
+ /** A server filter the grid never gets an answer for: the table shows one loading stub without data for as long as a filter is set. */
127
+ serverStalls?: boolean;
128
+ /** A slow server: a filter shows the loading stub for this long, then the real (filtered) rows — an empty answer included. */
129
+ serverAnswersAfterMs?: number;
130
+ /** Only filters of these types go unanswered (e.g. ['contains']) — an 'equals' filter still gets its answer. */
131
+ serverStallsOn?: string[];
105
132
  }
106
133
  /** The computed column's colId - a matrix cell is addressed by that, never by a field. */
107
134
  export declare const MATRIX_CELL = "10-T110.mandatoryQuantity";
@@ -123,6 +150,7 @@ export declare function fakeEnvironment(options?: FakeGridOptions): {
123
150
  removed: string[][];
124
151
  added: Record<string, unknown>[];
125
152
  rolledBack: () => number;
153
+ lookupFetches: () => number;
126
154
  commitCalls: () => number;
127
155
  refreshed: () => number;
128
156
  headerAdds: {
@@ -143,6 +171,14 @@ export declare function fakeEnvironment(options?: FakeGridOptions): {
143
171
  description: string;
144
172
  mutating?: boolean;
145
173
  run: (input: string) => Promise<string>;
174
+ /** The action's own value list, as readColumnOptions answers it. */
175
+ options?: (search: string, limit: number) => Promise<{
176
+ options: {
177
+ value: string;
178
+ label: string;
179
+ }[];
180
+ note?: string;
181
+ }>;
146
182
  }[];
147
183
  };
148
184
  /** The fake store, for tests that stage what the store does between calls (toolbars, grid registration). */
@@ -154,6 +190,9 @@ export declare function fakeEnvironment(options?: FakeGridOptions): {
154
190
  rows: {
155
191
  [rowId: string]: any;
156
192
  };
193
+ filterHistory: (Record<string, any> | null)[];
194
+ /** The live column list — a test removes a column from it the way a view rebuild would. */
195
+ columnDefs: FakeColumnDef[];
157
196
  };
158
197
  /** Serie 0 is the components serie the view auto-selects. */
159
198
  export declare const KOMPONENTEN: {
@@ -1 +1 @@
1
- {"version":3,"file":"fakeGridEnvironment.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/fakeGridEnvironment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fakeGridEnvironment.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/fakeGridEnvironment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=getAssetUrls.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAssetUrls.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/getAssetUrls.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=listGridsCompact.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listGridsCompact.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/listGridsCompact.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=locateRowUnverified.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locateRowUnverified.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/locateRowUnverified.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=readColumnOptionsSearch.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readColumnOptionsSearch.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/readColumnOptionsSearch.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=readGridRowsCreatorRow.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readGridRowsCreatorRow.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/readGridRowsCreatorRow.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=removeColumn.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeColumn.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/removeColumn.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=writeRowLimit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeRowLimit.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/tests/unit/layout/Toolbar/Tools/DivaAgent/writeRowLimit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=optionCombinationColumns.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optionCombinationColumns.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/tests/unit/ui/IDMCatalogEditor/Tables/optionCombinationColumns.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=partlistPosColumns.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partlistPosColumns.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/tests/unit/ui/IDMCatalogEditor/Tables/partlistPosColumns.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import '@testing-library/jest-dom';
2
+ //# sourceMappingURL=SvgGeneratorTool.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SvgGeneratorTool.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/tests/unit/ui/IDMCatalogEditor/components/SvgGeneratorTool.test.tsx"],"names":[],"mappings":"AAMA,OAAO,2BAA2B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useCatalogRows.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCatalogRows.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRows.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useCatalogRowsJwt.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCatalogRowsJwt.test.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/tests/unit/ui/IDMCatalogEditor/hooks/useCatalogRowsJwt.test.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"useHeaderProducts.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/hooks/useHeaderProducts.ts"],"names":[],"mappings":"AAGA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAuB,MAAM,qBAAqB,CAAC;AAyB1E,MAAM,WAAW,mBAAmB;IAClC,oHAAoH;IACpH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB;AA+CD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,mBAAmB,CA0B9E"}
1
+ {"version":3,"file":"useHeaderProducts.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/hooks/useHeaderProducts.ts"],"names":[],"mappings":"AAGA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAuB,MAAM,qBAAqB,CAAC;AA0B1E,MAAM,WAAW,mBAAmB;IAClC,oHAAoH;IACpH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB;AA+CD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,mBAAmB,CA0B9E"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The active header rows of the organization (`_id`, `lastUpdated`, key fields), keyed by product id and by
3
- * their supplier / EK group context ({@link headerContextKey}).
2
+ * The active header rows of the organization (`_id`, `headerHash`, `lastUpdated`, key fields), keyed by
3
+ * product id and by their supplier / EK group context ({@link headerContextKey}).
4
4
  */
5
5
  export interface HeaderProducts {
6
6
  byId: ReadonlyMap<string, Record<string, unknown>>;
@@ -15,12 +15,16 @@ export declare function headerContextKey(data: Record<string, unknown> | undefin
15
15
  /** Indexes the loaded header rows for {@link isHeaderOutdated} and {@link hasUnlinkedHeader}. */
16
16
  export declare function indexHeaderProducts(rows: Record<string, unknown>[]): HeaderProducts;
17
17
  /**
18
- * An article whose header snapshot is older than the header row it references: the header was saved after
19
- * the article last pulled its values. Compared by timestamp — `headerValues.lastUpdated` is the header's
20
- * `lastUpdated` at snapshot time — so the header rows are loaded with a few fields instead of their whole
21
- * `customData`; an organization has thousands of them. Derived from the data on both sides, a header save
22
- * writes nothing into articles. Not reported for transferred articles (they can never be refreshed), for
23
- * articles without a link, and while the header rows are not loaded or the referenced row is gone.
18
+ * An article whose header snapshot no longer holds the content of the header row it references. Compared
19
+ * by content hash — `headerValues.headerHash` is the copy of the header row's `headerHash` (the catalog's
20
+ * hash of the header `customData`, kept on every write) at snapshot time — so equal content is current
21
+ * whatever was saved in between: a header saved and reverted, or saved without a value change, marks nothing.
22
+ * The header rows are loaded with a few fields instead of their whole `customData`; an organization has
23
+ * thousands of them. While one side carries no hash yet (rows and snapshots written before it existed) the
24
+ * timestamps decide: `headerValues.lastUpdated` is the header's `lastUpdated` at snapshot time, and a header
25
+ * saved after it marks. Derived from the data on both sides, a header save writes nothing into articles. Not
26
+ * reported for transferred articles (they can never be refreshed), for articles without a link, and while
27
+ * the header rows are not loaded or the referenced row is gone.
24
28
  */
25
29
  export declare function isHeaderOutdated(data: Record<string, unknown> | undefined, headers: HeaderProducts | undefined): boolean;
26
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"headerSync.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/logic/headerSync.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACnD,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACzD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAI9F;AAED,iGAAiG;AACjG,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,cAAc,CAOnF;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAOxH;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAMzH;AAED,gHAAgH;AAChH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAExH"}
1
+ {"version":3,"file":"headerSync.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/logic/headerSync.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACnD,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACzD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAI9F;AAED,iGAAiG;AACjG,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,cAAc,CAOnF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAUxH;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAMzH;AAED,gHAAgH;AAChH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAExH"}
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { CustomCellRendererProps } from 'ag-grid-react';
3
+ import { DivaContext } from '@crystaldesign/spreadsheet';
4
+ export interface DecisionParts {
5
+ /** The decision's text; cut short with an ellipsis when the cell is too narrow. */
6
+ text: string;
7
+ /** Its number and type in brackets; always visible. */
8
+ tag: string;
9
+ }
10
+ export interface DecisionCellRendererProps extends CustomCellRendererProps<unknown, unknown, DivaContext> {
11
+ /** Splits the row's decision (by its decisionNo) into the text and the tag, in the UI language. */
12
+ decisionParts: (decisionNo: unknown, language: string) => DecisionParts;
13
+ }
14
+ /** The decision of a row: its text, cut short when the cell is narrow, and its number and type, which stay visible. */
15
+ export default function DecisionCellRenderer({ value, decisionParts, context }: DecisionCellRendererProps): React.JSX.Element | null;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/Tables/DecisionCellRenderer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGzD,MAAM,WAAW,aAAa;IAC5B,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,yBAA0B,SAAQ,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC;IACvG,mGAAmG;IACnG,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,aAAa,CAAC;CACzE;AAED,uHAAuH;AACvH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,yBAAyB,4BASxG"}
@@ -6,7 +6,7 @@ export default function OptionCombinations({ decision, catalogId, defaultLanguag
6
6
  catalogId: string;
7
7
  defaultLanguage?: string;
8
8
  apiConfig: ApiConfig;
9
- setNodeDataValue: (data: Record<string, any>) => void;
9
+ setNodeDataValue: (data: Record<string, any>) => Promise<boolean> | void;
10
10
  /** Set by the module that opens this subtable: the parent row it is bound to. */
11
11
  agentBoundParent?: AgentBoundParent;
12
12
  }): React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/Tables/OptionCombinations/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAQrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,EAAE;IACD,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACtD,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBAkNA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/Tables/OptionCombinations/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAOrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGvE,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,EAAE;IACD,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACzE,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBA4NA"}
@@ -53,7 +53,7 @@ export type ParsedOptionsSetRef = {
53
53
  refLevel?: number;
54
54
  };
55
55
  /** Stable codes from `parseOptionsSetRefString` when `ok` is false — use for i18n keys under `optionsSetRef.parseError`. */
56
- export type ParseFailureReason = 'empty' | 'invalid_operator' | 'invalid_feature_ref_op' | 'invalid_measure_value' | 'invalid_measure_interval' | 'invalid_option_interval' | 'option_key_must_not_contain_pipe';
56
+ export type ParseFailureReason = 'empty' | 'invalid_operator' | 'invalid_feature_ref_op' | 'invalid_measure_value' | 'invalid_measure_interval' | 'invalid_option_interval' | 'option_key_must_not_contain_pipe' | 'invalid_ref_level';
57
57
  export type ParseResult = {
58
58
  ok: true;
59
59
  value: ParsedOptionsSetRef;
@@ -63,4 +63,10 @@ export type ParseResult = {
63
63
  };
64
64
  export declare function parseOptionsSetRefString(contentOSR: string | null | undefined): ParseResult;
65
65
  export declare function serializeOptionsSetRef(model: ParsedOptionsSetRef): string;
66
+ /**
67
+ * One feature's condition as the expression a rule reads like: `Farbe = ROT`, `(Farbe = ROT OR Farbe = BLAU)`,
68
+ * `(Farbe ≠ ROT AND Farbe ≠ BLAU)`, `Breite ≥ 120`, `Breite IN [100..200]`. The referenced article's level stays on
69
+ * the feature as the cell writes it (`Farbe§2`). A cell the codec cannot parse keeps its stored text.
70
+ */
71
+ export declare function describeOptionsSetRef(feature: string, contentOSR: string): string;
66
72
  //# sourceMappingURL=optionsSetRefCodec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"optionsSetRefCodec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/Tables/OptionCombinations/optionsSetRefCodec.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9E,qDAAqD;AACrD,eAAO,MAAM,SAAS,EAAE,SAAS,QAAQ,EAA+D,CAAC;AAEzG,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAExD;AAED,wDAAwD;AACxD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,SAAS,QAAQ,EAAE,CAenG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ,CAIlG;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7G;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3F;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACvF;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/G,4HAA4H;AAC5H,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,kBAAkB,GAClB,wBAAwB,GACxB,uBAAuB,GACvB,0BAA0B,GAC1B,yBAAyB,GACzB,kCAAkC,CAAC;AAEvC,MAAM,MAAM,WAAW,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,CAAC;AA8B/G,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,CAsH3F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAoCzE"}
1
+ {"version":3,"file":"optionsSetRefCodec.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/Tables/OptionCombinations/optionsSetRefCodec.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9E,qDAAqD;AACrD,eAAO,MAAM,SAAS,EAAE,SAAS,QAAQ,EAA+D,CAAC;AAEzG,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAExD;AAED,wDAAwD;AACxD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,SAAS,QAAQ,EAAE,CAenG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ,CAIlG;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7G;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3F;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACvF;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/G,4HAA4H;AAC5H,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,kBAAkB,GAClB,wBAAwB,GACxB,uBAAuB,GACvB,0BAA0B,GAC1B,yBAAyB,GACzB,kCAAkC,GAClC,mBAAmB,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAgD/G,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,CA4H3F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAoCzE;AAOD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CA+BjF"}
@@ -8,7 +8,7 @@ export default function PartlistPos({ organizationId, catalog, partlist, apiConf
8
8
  partlist: any;
9
9
  apiConfig: ApiConfig;
10
10
  hooks?: DivaSpreadsheetHooks<any>;
11
- setNodeDataValue: (data: Record<string, any>) => void;
11
+ setNodeDataValue: (data: Record<string, any>) => Promise<boolean> | void;
12
12
  /** Refreshes partlists, reloads the partlist from the API (featureRefs etc.), remounts the PartlistPos grid. */
13
13
  onPartlistPosExcelImportComplete?: () => void | Promise<void>;
14
14
  /** Changing this value remounts the partlistpos Spreadsheet (e.g. after Excel import). */
@@ -1 +1 @@
1
- {"version":3,"file":"PartlistPos.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PartlistPos.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAqC,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAmD,MAAM,4BAA4B,CAAC;AAQnH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AASpE,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,cAAc,EACd,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,gCAAgC,EAChC,uBAA2B,EAC3B,gBAAgB,GACjB,EAAE;IACD,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAClC,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACtD,gHAAgH;IAChH,gCAAgC,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,0FAA0F;IAC1F,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBAqaA"}
1
+ {"version":3,"file":"PartlistPos.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PartlistPos.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAqC,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAsC,MAAM,4BAA4B,CAAC;AAMtG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAGpE,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,cAAc,EACd,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,gCAAgC,EAChC,uBAA2B,EAC3B,gBAAgB,GACjB,EAAE;IACD,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAClC,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACzE,gHAAgH;IAChH,gCAAgC,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,0FAA0F;IAC1F,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBAgNA"}
@@ -6,7 +6,7 @@ export default function PriceFeatureGroupFinishes({ priceFeatureGroup, catalogId
6
6
  catalogId: string;
7
7
  defaultLanguage?: string;
8
8
  apiConfig: ApiConfig;
9
- setNodeDataValue: (data: Record<string, any>) => void;
9
+ setNodeDataValue: (data: Record<string, any>) => Promise<boolean> | void;
10
10
  setIsPercentage: (isPercentage?: boolean) => void;
11
11
  /** Set by the module that opens this subtable: the parent row it is bound to. */
12
12
  agentBoundParent?: AgentBoundParent;
@@ -1 +1 @@
1
- {"version":3,"file":"PriceFeatureGroupFinishes.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupFinishes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAMrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,EAAE;IACD,iBAAiB,EAAE,GAAG,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBA0NA"}
1
+ {"version":3,"file":"PriceFeatureGroupFinishes.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupFinishes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAMrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,EAAE;IACD,iBAAiB,EAAE,GAAG,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACzE,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBA6NA"}
@@ -6,7 +6,7 @@ export default function PriceFeatureGroupPercentageSurcharge({ priceFeatureGroup
6
6
  catalogId: string;
7
7
  defaultLanguage?: string;
8
8
  apiConfig: ApiConfig;
9
- setNodeDataValue: (data: Record<string, any>) => void;
9
+ setNodeDataValue: (data: Record<string, any>) => Promise<boolean> | void;
10
10
  setIsPercentage: (isPercentage?: boolean) => void;
11
11
  /** Set by the module that opens this subtable: the parent row it is bound to. */
12
12
  agentBoundParent?: AgentBoundParent;
@@ -1 +1 @@
1
- {"version":3,"file":"PriceFeatureGroupPercentageSurcharge.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupPercentageSurcharge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAMrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAAC,EAC3D,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,EAAE;IACD,iBAAiB,EAAE,GAAG,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBAuNA"}
1
+ {"version":3,"file":"PriceFeatureGroupPercentageSurcharge.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/PriceFeatureGroupPercentageSurcharge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAkB,MAAM,0BAA0B,CAAC;AAMrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAAC,EAC3D,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,EAAE;IACD,iBAAiB,EAAE,GAAG,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACzE,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,qBA0NA"}
@@ -0,0 +1,59 @@
1
+ import { DivaColDef } from '@crystaldesign/spreadsheet';
2
+ import { DecisionParts } from './DecisionCellRenderer';
3
+ /** What the combination columns need to know about the catalog they are shown in. */
4
+ export interface OptionCombinationColumnContext {
5
+ idmService: string;
6
+ catalog: {
7
+ _id: string;
8
+ };
9
+ /** Translates the messages the columns show the user, e.g. why a cell is refused. */
10
+ t: (key: string, options?: {
11
+ defaultValue?: string;
12
+ }) => string;
13
+ }
14
+ /** The decision fields the catalog-wide combination table needs from every decision of the catalog. */
15
+ export interface DecisionFeatureRefs {
16
+ _id: string;
17
+ decisionNo: number;
18
+ decisionType?: number;
19
+ decisionText?: Record<string, string>;
20
+ featureRefs?: string[];
21
+ featureRefsDisplayTexts?: Record<string, string>[];
22
+ }
23
+ /**
24
+ * A decision as its cell shows it: the text in the UI language (else its first text) and, in brackets, its number
25
+ * and type — `(#12 · T2)`, the type left out when the catalog does not know the decision.
26
+ */
27
+ export declare function decisionParts(decision: DecisionFeatureRefs | undefined, decisionNo: unknown, language: string): DecisionParts;
28
+ /** The decision as one string: the cell's formatted value, which the filter, the export and the agent's reads see. */
29
+ export declare function decisionLabel(decision: DecisionFeatureRefs | undefined, decisionNo: unknown, language: string): string;
30
+ /**
31
+ * The feature columns of the flat table: every feature any decision of the catalog references, in order of first
32
+ * appearance, with the header text of the first decision that names it.
33
+ */
34
+ export declare function unionDecisionFeatureRefs(decisions: DecisionFeatureRefs[], language: string): {
35
+ featureRef: string;
36
+ headerName: string;
37
+ }[];
38
+ /**
39
+ * The decision of a row: a lookup over the catalog's decisions, shown as its text with the number and type in a tag
40
+ * that stays visible when the text is cut short, and the type itself as a hidden column — it belongs to the decision
41
+ * and says which columns the row may carry, so it is read with every row but never shown on its own.
42
+ */
43
+ export declare function decisionColumns(ctx: OptionCombinationColumnContext, decisions: DecisionFeatureRefs[]): DivaColDef<any>[];
44
+ /**
45
+ * Editability of a condition cell in the flat table: only where the row's decision references the feature, so a
46
+ * condition cannot land in a column the decision does not have — the server refuses exactly that. A new row that has
47
+ * not named its decision yet stays open; the rule takes hold as soon as the decision is known.
48
+ */
49
+ export declare function decisionConditionCellEditable(featureRef: string, decisions: DecisionFeatureRefs[]): DivaColDef<any>['editable'];
50
+ /**
51
+ * The action column of the flat table. It takes the shape the per-decision subtable gives the column per decision,
52
+ * here per row: a rule (type 2) holds an action list with the expanded action editor, a quantity decision (type 3)
53
+ * shows and takes the bare count behind its one SET_POS_COUNT_VALUE action, and a row of any other type accepts
54
+ * nothing. A new row that has not named its decision yet stays open.
55
+ */
56
+ export declare function actionsColumn(ctx: OptionCombinationColumnContext, decisions: DecisionFeatureRefs[]): DivaColDef<any>;
57
+ /** The columns every combination row shows after its conditions and actions, from the sequence to the hidden ids. */
58
+ export declare function optionCombinationColumns(): DivaColDef<any>[];
59
+ //# sourceMappingURL=optionCombinationColumns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optionCombinationColumns.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/optionCombinationColumns.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAA6B,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE7E,qFAAqF;AACrF,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACzB,qFAAqF;IACrF,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;CACjE;AAED,uGAAuG;AACvG,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CACpD;AAQD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7H;AAED,sHAAsH;AACtH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGtH;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,mBAAmB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,CASzI;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,8BAA8B,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAwCxH;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAM/H;AAUD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,8BAA8B,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CA4DpH;AAED,qHAAqH;AACrH,wBAAgB,wBAAwB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAoD5D"}
@@ -0,0 +1,66 @@
1
+ import { DivaColDef, DivaColGroupDef } from '@crystaldesign/spreadsheet';
2
+ /** Resolves a translated dictionary value (e.g. `{ DE: '...', FR: '...' }`) to a plain string for the given language, falling back to German. */
3
+ export declare function resolveTranslatedText(value: any, language: string): string;
4
+ export interface EnumEntry {
5
+ name: string;
6
+ value: number;
7
+ }
8
+ /** What the position columns need to know about the catalog they are shown in. */
9
+ export interface PartlistPosColumnContext {
10
+ idmService: string;
11
+ catalog: {
12
+ _id: string;
13
+ major?: number;
14
+ };
15
+ /** posInvisibility values (IDM 4 catalogs know two, IDM 3 catalogs three). */
16
+ visibility: EnumEntry[];
17
+ configurationMode: EnumEntry[];
18
+ }
19
+ /** The partlist fields the flat table needs from every partlist of the catalog. */
20
+ export interface PartlistFeatureRefs {
21
+ _id: string;
22
+ partlistKey: string;
23
+ featureRefs?: string[];
24
+ featureRefsDisplayTexts?: Record<string, string>[];
25
+ }
26
+ export interface ConditionColumnOptions {
27
+ /** Overrides the default of every cell being editable — the flat table's rows do not all carry the same features. */
28
+ editable?: DivaColDef<any>['editable'];
29
+ headerComponentParams?: Record<string, unknown>;
30
+ }
31
+ /**
32
+ * The condition column of one feature: the cell optionsSetRefs.<featureNo> of every row. The parent it belongs to
33
+ * does not matter - positions and option combinations carry the same cell - so it asks only for what it reads.
34
+ */
35
+ export declare function conditionColumn(featureRef: string, headerName: string, ctx: {
36
+ idmService: string;
37
+ catalog: {
38
+ _id: string;
39
+ };
40
+ }, options?: ConditionColumnOptions): DivaColDef<any>;
41
+ /** A feature of a flat table's condition union: its number and the header text of the first parent that names it. */
42
+ export interface ConditionFeature {
43
+ featureRef: string;
44
+ headerName: string;
45
+ }
46
+ /**
47
+ * The condition columns as one collapsible group: open, the column of every feature; closed, one read-only cell that
48
+ * reads the row's conditions as the rule they form - every feature's condition (`Farbe = ROT`, a list as OR in
49
+ * brackets) joined with AND, in column order - so a table with many features stays readable without losing the
50
+ * conditions from view.
51
+ */
52
+ export declare function conditionColumnGroup(headerName: string, ruleHeaderName: string, features: ConditionFeature[], columns: DivaColDef<any>[]): DivaColGroupDef<any>;
53
+ /**
54
+ * The feature columns of the flat table: every feature any partlist of the catalog carries, in order of first
55
+ * appearance, with the header text of the first partlist that names it.
56
+ */
57
+ export declare function unionFeatureRefs(partlists: PartlistFeatureRefs[], language: string): ConditionFeature[];
58
+ /**
59
+ * Editability of a condition cell in the flat table: only where the row's partlist carries the feature, so a value
60
+ * cannot land in a column the partlist does not have. The partlist is read from the row's id or its key, and a new
61
+ * row that has not named its partlist yet stays open — the rule takes hold as soon as the partlist is known.
62
+ */
63
+ export declare function conditionCellEditable(featureRef: string, partlists: PartlistFeatureRefs[]): DivaColDef<any>['editable'];
64
+ /** The position columns both the per-partlist subtable and the catalog-wide table show, from the count action to the hidden ids. */
65
+ export declare function partlistPosColumns(ctx: PartlistPosColumnContext): DivaColDef<any>[];
66
+ //# sourceMappingURL=partlistPosColumns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partlistPosColumns.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/IDMCatalogEditor/Tables/partlistPosColumns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAe,MAAM,4BAA4B,CAAC;AAKtF,iJAAiJ;AACjJ,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAI1E;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,kFAAkF;AAClF,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,8EAA8E;IAC9E,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,iBAAiB,EAAE,SAAS,EAAE,CAAC;CAChC;AAED,mFAAmF;AACnF,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CACpD;AAED,MAAM,WAAW,sBAAsB;IACrC,qHAAqH;IACrH,QAAQ,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,EACrD,OAAO,GAAE,sBAA2B,GACnC,UAAU,CAAC,GAAG,CAAC,CAkBjB;AAED,qHAAqH;AACrH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,GACzB,eAAe,CAAC,GAAG,CAAC,CAoCtB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE,CASvG;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAOvH;AAED,oIAAoI;AACpI,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,wBAAwB,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAqOnF"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ export interface SvgGeneratorToolProps {
3
+ /** The item selected in the items table — target of "upload & attach". */
4
+ item?: {
5
+ typeNo?: string | number;
6
+ };
7
+ }
8
+ /**
9
+ * Playground for the parameterized article top-view SVGs: live preview with the planner's technical
10
+ * markers made visible, plus upload & attach to the selected item's svgs.
11
+ */
12
+ export default function SvgGeneratorTool({ item }: SvgGeneratorToolProps): React.JSX.Element;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/IDMCatalogEditor/components/SvgGeneratorTool/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAkBjD,MAAM,WAAW,qBAAqB;IACpC,0EAA0E;IAC1E,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACrC;AAwCD;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EAAE,IAAI,EAAE,EAAE,qBAAqB,qBA6cvE"}