@rytass/bpm-core-shared 0.21.4 → 0.23.0

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.
@@ -3,24 +3,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FIELD_ACCESS_CHOICES = void 0;
4
4
  exports.readFieldAccessChoice = readFieldAccessChoice;
5
5
  exports.readFieldAccessEntryForChoice = readFieldAccessEntryForChoice;
6
+ exports.updateFieldAccessColumnFill = updateFieldAccessColumnFill;
7
+ exports.readTableColumns = readTableColumns;
6
8
  exports.readFieldAccessMatrix = readFieldAccessMatrix;
7
9
  const field_access_lint_1 = require("./field-access-lint");
8
10
  const field_access_1 = require("./field-access");
11
+ const form_1 = require("./form");
9
12
  exports.FIELD_ACCESS_CHOICES = [
10
13
  'DEFAULT',
11
14
  'SHOW',
12
15
  'HIDE',
13
16
  'FILL_OPTIONAL',
14
17
  'FILL_REQUIRED',
18
+ 'COLUMNS',
15
19
  ];
16
- const FILL_CHOICES = [
20
+ /** Every fill choice, whole or per column, a cell cannot take. */
21
+ const BLOCKED_FILL_CHOICES = [
17
22
  'FILL_OPTIONAL',
18
23
  'FILL_REQUIRED',
24
+ 'COLUMNS',
19
25
  ];
26
+ /** Per-column fill exists only on a table field, so every other field blocks it. */
27
+ const NON_TABLE_DISABLED_CHOICES = ['COLUMNS'];
20
28
  function readFieldAccessChoice(entry) {
21
29
  if (entry === null) {
22
30
  return 'DEFAULT';
23
31
  }
32
+ if (entry.columns !== undefined) {
33
+ return 'COLUMNS';
34
+ }
24
35
  if (entry.fill === 'REQUIRED') {
25
36
  return 'FILL_REQUIRED';
26
37
  }
@@ -35,15 +46,43 @@ const CHOICE_FILLS = {
35
46
  HIDE: 'NONE',
36
47
  SHOW: 'NONE',
37
48
  };
38
- /** The entry a choice writes for the field, or `null` for `DEFAULT`. */
49
+ /**
50
+ * The entry a choice writes for the field, or `null` for `DEFAULT`. `COLUMNS`
51
+ * writes an empty column list, which the publish lint rejects until a column
52
+ * is checked, so the drawer must not apply it on its own.
53
+ */
39
54
  function readFieldAccessEntryForChoice(fieldKey, choice) {
40
- return choice === 'DEFAULT'
41
- ? null
42
- : {
43
- display: choice === 'HIDE' ? 'HIDE' : 'SHOW',
44
- fieldKey,
45
- fill: CHOICE_FILLS[choice],
46
- };
55
+ if (choice === 'DEFAULT') {
56
+ return null;
57
+ }
58
+ if (choice === 'COLUMNS') {
59
+ return { display: 'SHOW', fieldKey, fill: 'NONE', columns: [] };
60
+ }
61
+ return {
62
+ display: choice === 'HIDE' ? 'HIDE' : 'SHOW',
63
+ fieldKey,
64
+ fill: CHOICE_FILLS[choice],
65
+ };
66
+ }
67
+ /**
68
+ * The entry after one column of a table field is set to `fill`, or cleared
69
+ * when `fill` is `NONE`. The other columns keep their fill and order; a
70
+ * whole-field entry (no `columns`) starts from an empty column list.
71
+ */
72
+ function updateFieldAccessColumnFill(entry, fieldKey, columnKey, fill) {
73
+ var _a;
74
+ const others = ((_a = entry === null || entry === void 0 ? void 0 : entry.columns) !== null && _a !== void 0 ? _a : []).filter((column) => column.columnKey !== columnKey);
75
+ const columns = fill === 'NONE' ? others : [...others, { columnKey, fill }];
76
+ return { display: 'SHOW', fieldKey, fill: 'NONE', columns };
77
+ }
78
+ /** The table columns a field offers per-column access for; none for other fields. */
79
+ function readTableColumns(field) {
80
+ return (0, form_1.isTableFieldDefinition)(field)
81
+ ? field.columns.map((column) => ({
82
+ columnKey: column.fieldKey,
83
+ label: column.label,
84
+ }))
85
+ : [];
47
86
  }
48
87
  /**
49
88
  * The user tasks in flow order: a topological walk from the nodes nothing
@@ -89,6 +128,13 @@ function readBranchLabel(definition, nodeId) {
89
128
  return label !== null && label !== void 0 ? label : null;
90
129
  }
91
130
  function readExplicitEffective(entry) {
131
+ if (entry.columns !== undefined) {
132
+ // Column mode ignores `fill`; an empty list opens nothing.
133
+ if (entry.columns.length > 0) {
134
+ return 'FILL_COLUMNS';
135
+ }
136
+ return entry.display === 'HIDE' ? 'HIDDEN' : 'READ_ONLY';
137
+ }
92
138
  if (entry.fill === 'REQUIRED') {
93
139
  return 'FILL_REQUIRED';
94
140
  }
@@ -153,17 +199,18 @@ function readFieldAccessMatrix(definition, schema) {
153
199
  const rows = ((_a = schema === null || schema === void 0 ? void 0 : schema.fields) !== null && _a !== void 0 ? _a : []).map((field) => {
154
200
  const { fieldKey } = field;
155
201
  const fillNodeIds = userTasks
156
- .filter((node) => (0, field_access_1.readNodeFillableFieldKeys)(node).has(fieldKey))
202
+ .filter((node) => (0, field_access_1.readNodeFillGrantFieldKeys)(node).has(fieldKey))
157
203
  .map((node) => node.id);
158
204
  const isApproverFilled = fillNodeIds.length > 0;
159
205
  const fillBlockers = (0, field_access_lint_1.readFormFieldFillIssues)(field);
206
+ const tableColumns = readTableColumns(field);
160
207
  const fieldDisabledChoices = fillBlockers.length > 0
161
- ? FILL_CHOICES
162
- : field.type === 'boolean'
163
- ? ['FILL_REQUIRED']
164
- : [];
208
+ ? BLOCKED_FILL_CHOICES
209
+ : tableColumns.length > 0
210
+ ? []
211
+ : NON_TABLE_DISABLED_CHOICES;
165
212
  const cells = userTasks.map((node, index) => {
166
- var _a, _b;
213
+ var _a, _b, _c;
167
214
  const explicit = (_b = (_a = accessByNode.get(node.id)) === null || _a === void 0 ? void 0 : _a.get(fieldKey)) !== null && _b !== void 0 ? _b : null;
168
215
  const filledBefore = isFilledBefore(fillNodeIds, index);
169
216
  const reason = explicit !== null
@@ -175,8 +222,9 @@ function readFieldAccessMatrix(definition, schema) {
175
222
  : 'NOT_YET_FILLED';
176
223
  return {
177
224
  choice: readFieldAccessChoice(explicit),
225
+ columnFills: (_c = explicit === null || explicit === void 0 ? void 0 : explicit.columns) !== null && _c !== void 0 ? _c : [],
178
226
  disabledChoices: columns[index].fillConflicts.length > 0
179
- ? FILL_CHOICES
227
+ ? BLOCKED_FILL_CHOICES
180
228
  : fieldDisabledChoices,
181
229
  effective: explicit !== null
182
230
  ? readExplicitEffective(explicit)
@@ -206,6 +254,7 @@ function readFieldAccessMatrix(definition, schema) {
206
254
  fieldKey,
207
255
  nodeId: cell.nodeId,
208
256
  })),
257
+ tableColumns,
209
258
  };
210
259
  });
211
260
  return { columns, issues, rows };
@@ -1 +1 @@
1
- {"version":3,"file":"field-access-matrix.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/field-access-matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-access-matrix.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/field-access-matrix.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,13 @@
1
- import type { FieldAccessEntry, UserTaskNode, WorkflowDefinition } from './workflow';
1
+ import type { FieldAccessEntry, FieldAccessFill, UserTaskNode, WorkflowDefinition } from './workflow';
2
+ /**
3
+ * One unit an approver may fill at a user task: a whole top-level field
4
+ * (`columnKey: null`) or one column of a table field (ADR 27 §4(a)).
5
+ */
6
+ export interface FieldAccessFillUnit {
7
+ readonly fieldKey: string;
8
+ readonly columnKey: string | null;
9
+ readonly fill: Exclude<FieldAccessFill, 'NONE'>;
10
+ }
2
11
  /** What a viewer may do with one top-level form field (`resolveFieldAccess`). */
3
12
  export interface ResolvedFieldAccess {
4
13
  readonly editable: boolean;
@@ -12,8 +21,19 @@ export interface ResolvedFieldAccess {
12
21
  * wins, so every reader agrees on which one counts. An unknown `fill` reads as
13
22
  * `NONE`, so a malformed entry never lets anyone write, and an unknown
14
23
  * `display` reads as `SHOW`. The deprecated `fieldPermissions` is never read.
24
+ *
25
+ * `columns` (ADR 27 §4(a)) is read the same way, per column: an entry without a
26
+ * non-empty `columnKey` or with an unknown `fill` is skipped, and the first
27
+ * entry for a `columnKey` wins. Once `columns` is an array it stays in column
28
+ * mode even when every column was skipped, so a malformed list opens nothing.
15
29
  */
16
30
  export declare const readNodeFieldAccess: (node: UserTaskNode) => readonly FieldAccessEntry[];
31
+ /**
32
+ * Every fill unit a user task grants. An entry in column mode contributes one
33
+ * unit per open column and its own `fill` is ignored; otherwise it contributes
34
+ * one whole-field unit unless `fill` is `NONE`.
35
+ */
36
+ export declare const readNodeFillUnits: (node: UserTaskNode) => readonly FieldAccessFillUnit[];
17
37
  /**
18
38
  * The top-level form field a field path addresses: `items.price` and
19
39
  * `items[0]` both address `items`.
@@ -25,7 +45,23 @@ export declare const readTopLevelFieldKey: (fieldPath: string) => string;
25
45
  * segment, so `form.amount` and ` amount ` both write `amount`.
26
46
  */
27
47
  export declare const readFormFieldPathTopLevelKey: (fieldPath: string) => string;
48
+ /**
49
+ * Top-level fields this node lets its approver write, as a whole field. A field
50
+ * granted only per column (ADR 27 §4(a)) is not in this set: the decide path
51
+ * merges column-mode fills per cell through `readNodeFillUnits` and its own
52
+ * column map, so no whole-field write path accepts it.
53
+ */
28
54
  export declare const readNodeFillableFieldKeys: (node: UserTaskNode) => ReadonlySet<string>;
55
+ /**
56
+ * Top-level fields with at least one fill unit at this node, whole or per
57
+ * column. For "does this node grant anything" and visibility, never for
58
+ * writes; use `readNodeFillableFieldKeys` to decide what is writable.
59
+ */
60
+ export declare const readNodeFillGrantFieldKeys: (node: UserTaskNode) => ReadonlySet<string>;
61
+ /**
62
+ * Top-level fields granted whole at `REQUIRED`. Per-column REQUIRED is not in
63
+ * this set; the engine projects it onto the open cells on APPROVED instead.
64
+ */
29
65
  export declare const readNodeRequiredFieldKeys: (node: UserTaskNode) => ReadonlySet<string>;
30
66
  /** Every field some user task lets its approver fill in. */
31
67
  export declare const readApproverFilledFieldKeys: (definition: WorkflowDefinition) => ReadonlySet<string>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isFormDataValueEmpty = exports.overlayStoredFormDataKeys = exports.omitFormDataKeys = exports.resolveFieldAccess = exports.readRevealedFieldKeys = exports.readApproverFilledFieldKeys = exports.readNodeRequiredFieldKeys = exports.readNodeFillableFieldKeys = exports.readFormFieldPathTopLevelKey = exports.readTopLevelFieldKey = exports.readNodeFieldAccess = void 0;
3
+ exports.isFormDataValueEmpty = exports.overlayStoredFormDataKeys = exports.omitFormDataKeys = exports.resolveFieldAccess = exports.readRevealedFieldKeys = exports.readApproverFilledFieldKeys = exports.readNodeRequiredFieldKeys = exports.readNodeFillGrantFieldKeys = exports.readNodeFillableFieldKeys = exports.readFormFieldPathTopLevelKey = exports.readTopLevelFieldKey = exports.readNodeFillUnits = exports.readNodeFieldAccess = void 0;
4
4
  const hasOwn = (target, key) => Object.prototype.hasOwnProperty.call(target, key);
5
5
  const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
6
6
  const isUserTaskNode = (node) => node.type === 'userTask';
@@ -13,6 +13,11 @@ const findUserTaskNode = (definition, nodeId) => definition.nodes.find((node) =>
13
13
  * wins, so every reader agrees on which one counts. An unknown `fill` reads as
14
14
  * `NONE`, so a malformed entry never lets anyone write, and an unknown
15
15
  * `display` reads as `SHOW`. The deprecated `fieldPermissions` is never read.
16
+ *
17
+ * `columns` (ADR 27 §4(a)) is read the same way, per column: an entry without a
18
+ * non-empty `columnKey` or with an unknown `fill` is skipped, and the first
19
+ * entry for a `columnKey` wins. Once `columns` is an array it stays in column
20
+ * mode even when every column was skipped, so a malformed list opens nothing.
16
21
  */
17
22
  const readNodeFieldAccess = (node) => {
18
23
  const raw = node.data.fieldAccess;
@@ -27,17 +32,50 @@ const readNodeFieldAccess = (node) => {
27
32
  return collected;
28
33
  }
29
34
  const fill = entry['fill'];
35
+ const columns = readFieldAccessColumns(entry['columns']);
30
36
  return [
31
37
  ...collected,
32
- {
33
- display: entry['display'] === 'HIDE' ? 'HIDE' : 'SHOW',
34
- fieldKey: entry['fieldKey'],
35
- fill: fill === 'OPTIONAL' || fill === 'REQUIRED' ? fill : 'NONE',
36
- },
38
+ Object.assign({ display: entry['display'] === 'HIDE' ? 'HIDE' : 'SHOW', fieldKey: entry['fieldKey'], fill: fill === 'OPTIONAL' || fill === 'REQUIRED' ? fill : 'NONE' }, (columns === undefined ? {} : { columns })),
37
39
  ];
38
40
  }, []);
39
41
  };
40
42
  exports.readNodeFieldAccess = readNodeFieldAccess;
43
+ const readFieldAccessColumns = (raw) => {
44
+ if (!Array.isArray(raw)) {
45
+ return undefined;
46
+ }
47
+ return raw.reduce((collected, column) => {
48
+ if (!isRecord(column) ||
49
+ typeof column['columnKey'] !== 'string' ||
50
+ column['columnKey'] === '' ||
51
+ (column['fill'] !== 'OPTIONAL' && column['fill'] !== 'REQUIRED') ||
52
+ collected.some((existing) => existing.columnKey === column['columnKey'])) {
53
+ return collected;
54
+ }
55
+ return [
56
+ ...collected,
57
+ { columnKey: column['columnKey'], fill: column['fill'] },
58
+ ];
59
+ }, []);
60
+ };
61
+ /**
62
+ * Every fill unit a user task grants. An entry in column mode contributes one
63
+ * unit per open column and its own `fill` is ignored; otherwise it contributes
64
+ * one whole-field unit unless `fill` is `NONE`.
65
+ */
66
+ const readNodeFillUnits = (node) => (0, exports.readNodeFieldAccess)(node).flatMap((entry) => {
67
+ if (entry.columns !== undefined) {
68
+ return entry.columns.map((column) => ({
69
+ fieldKey: entry.fieldKey,
70
+ columnKey: column.columnKey,
71
+ fill: column.fill,
72
+ }));
73
+ }
74
+ return entry.fill === 'NONE'
75
+ ? []
76
+ : [{ fieldKey: entry.fieldKey, columnKey: null, fill: entry.fill }];
77
+ });
78
+ exports.readNodeFillUnits = readNodeFillUnits;
41
79
  /**
42
80
  * The top-level form field a field path addresses: `items.price` and
43
81
  * `items[0]` both address `items`.
@@ -60,18 +98,35 @@ const readFormFieldPathTopLevelKey = (fieldPath) => {
60
98
  return (0, exports.readTopLevelFieldKey)(fieldSegments.join('.'));
61
99
  };
62
100
  exports.readFormFieldPathTopLevelKey = readFormFieldPathTopLevelKey;
63
- const readNodeFillableFieldKeys = (node) => new Set((0, exports.readNodeFieldAccess)(node)
64
- .filter((entry) => entry.fill !== 'NONE')
65
- .map((entry) => entry.fieldKey));
101
+ /**
102
+ * Top-level fields this node lets its approver write, as a whole field. A field
103
+ * granted only per column (ADR 27 §4(a)) is not in this set: the decide path
104
+ * merges column-mode fills per cell through `readNodeFillUnits` and its own
105
+ * column map, so no whole-field write path accepts it.
106
+ */
107
+ const readNodeFillableFieldKeys = (node) => new Set((0, exports.readNodeFillUnits)(node)
108
+ .filter((unit) => unit.columnKey === null)
109
+ .map((unit) => unit.fieldKey));
66
110
  exports.readNodeFillableFieldKeys = readNodeFillableFieldKeys;
67
- const readNodeRequiredFieldKeys = (node) => new Set((0, exports.readNodeFieldAccess)(node)
68
- .filter((entry) => entry.fill === 'REQUIRED')
69
- .map((entry) => entry.fieldKey));
111
+ /**
112
+ * Top-level fields with at least one fill unit at this node, whole or per
113
+ * column. For "does this node grant anything" and visibility, never for
114
+ * writes; use `readNodeFillableFieldKeys` to decide what is writable.
115
+ */
116
+ const readNodeFillGrantFieldKeys = (node) => new Set((0, exports.readNodeFillUnits)(node).map((unit) => unit.fieldKey));
117
+ exports.readNodeFillGrantFieldKeys = readNodeFillGrantFieldKeys;
118
+ /**
119
+ * Top-level fields granted whole at `REQUIRED`. Per-column REQUIRED is not in
120
+ * this set; the engine projects it onto the open cells on APPROVED instead.
121
+ */
122
+ const readNodeRequiredFieldKeys = (node) => new Set((0, exports.readNodeFillUnits)(node)
123
+ .filter((unit) => unit.columnKey === null && unit.fill === 'REQUIRED')
124
+ .map((unit) => unit.fieldKey));
70
125
  exports.readNodeRequiredFieldKeys = readNodeRequiredFieldKeys;
71
126
  /** Every field some user task lets its approver fill in. */
72
127
  const readApproverFilledFieldKeys = (definition) => new Set(definition.nodes
73
128
  .filter(isUserTaskNode)
74
- .flatMap((node) => [...(0, exports.readNodeFillableFieldKeys)(node)]));
129
+ .flatMap((node) => [...(0, exports.readNodeFillGrantFieldKeys)(node)]));
75
130
  exports.readApproverFilledFieldKeys = readApproverFilledFieldKeys;
76
131
  /**
77
132
  * The approver-filled fields that have been revealed to the applicant: those a
@@ -80,7 +135,7 @@ exports.readApproverFilledFieldKeys = readApproverFilledFieldKeys;
80
135
  */
81
136
  const readRevealedFieldKeys = (definition, nodeIdsWithNonAdhocTask) => new Set([...new Set(nodeIdsWithNonAdhocTask)].flatMap((nodeId) => {
82
137
  const node = findUserTaskNode(definition, nodeId);
83
- return node === undefined ? [] : [...(0, exports.readNodeFillableFieldKeys)(node)];
138
+ return node === undefined ? [] : [...(0, exports.readNodeFillGrantFieldKeys)(node)];
84
139
  }));
85
140
  exports.readRevealedFieldKeys = readRevealedFieldKeys;
86
141
  /**
@@ -99,13 +154,14 @@ const resolveFieldAccess = (input) => {
99
154
  : findUserTaskNode(input.definition, input.nodeId);
100
155
  const listed = new Map((node === undefined ? [] : (0, exports.readNodeFieldAccess)(node)).map((entry) => [entry.fieldKey, entry]));
101
156
  const approverFilled = (0, exports.readApproverFilledFieldKeys)(input.definition);
157
+ const fillable = node === undefined ? new Set() : (0, exports.readNodeFillableFieldKeys)(node);
102
158
  return Object.fromEntries(input.fieldKeys.map((fieldKey) => {
103
159
  const entry = listed.get(fieldKey);
104
160
  if (entry !== undefined) {
105
161
  return [
106
162
  fieldKey,
107
163
  {
108
- editable: !input.isAdhocTask && entry.fill !== 'NONE',
164
+ editable: !input.isAdhocTask && fillable.has(fieldKey),
109
165
  visible: entry.display === 'SHOW',
110
166
  },
111
167
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"field-access.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/field-access.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-access.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/field-access.ts"],"names":[],"mappings":"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"}
package/src/lib/form.d.ts CHANGED
@@ -349,19 +349,23 @@ export type FormStaticOptionFieldDefinition = (SelectFieldDefinition & {
349
349
  * Why a form data value was refused. Machine-readable: the Chinese `message`
350
350
  * of an issue is for display, the reason and `path` are what a client keys on.
351
351
  */
352
- export declare const FORM_DATA_ISSUE_REASONS: readonly ["REQUIRED", "TYPE", "MIN_LENGTH", "MAX_LENGTH", "PATTERN", "PATTERN_TIMEOUT", "MIN_ROWS", "MAX_ROWS", "UNKNOWN_COLUMN", "MAX_FILES"];
352
+ export declare const FORM_DATA_ISSUE_REASONS: readonly ["REQUIRED", "TYPE", "MIN_LENGTH", "MAX_LENGTH", "PATTERN", "PATTERN_TIMEOUT", "MIN_ROWS", "MAX_ROWS", "UNKNOWN_COLUMN", "MAX_FILES", "HOST_RULE", "VALUE_NOT_RESOLVED"];
353
353
  export type FormDataIssueReason = (typeof FORM_DATA_ISSUE_REASONS)[number];
354
354
  /**
355
355
  * One refused form data value. `path` addresses it the way the form renderer
356
356
  * keys its errors: a top-level field key (`note`), a table row (`items[1]`),
357
357
  * or a table cell (`items[1].qty`). Rows are 0-based. `limit` is set for
358
- * MIN_LENGTH / MAX_LENGTH / MIN_ROWS / MAX_ROWS / MAX_FILES.
358
+ * MIN_LENGTH / MAX_LENGTH / MIN_ROWS / MAX_ROWS / MAX_FILES. `code` is set
359
+ * for HOST_RULE (the host's own machine-readable reason, passed through
360
+ * unchanged from the decision guard) and for VALUE_NOT_RESOLVED (the
361
+ * `FORM_DATA_SOURCE_VALUE_NOT_RESOLVED` error code).
359
362
  */
360
363
  export interface FormDataIssue {
361
364
  readonly path: string;
362
365
  readonly reason: FormDataIssueReason;
363
366
  readonly message: string;
364
367
  readonly limit?: number;
368
+ readonly code?: string;
365
369
  }
366
370
  export declare function isFormDataIssue(value: unknown): value is FormDataIssue;
367
371
  export {};
package/src/lib/form.js CHANGED
@@ -370,16 +370,19 @@ exports.FORM_DATA_ISSUE_REASONS = [
370
370
  'MAX_ROWS',
371
371
  'UNKNOWN_COLUMN',
372
372
  'MAX_FILES',
373
+ 'HOST_RULE',
374
+ 'VALUE_NOT_RESOLVED',
373
375
  ];
374
376
  function isFormDataIssue(value) {
375
377
  if (typeof value !== 'object' || value === null) {
376
378
  return false;
377
379
  }
378
- const { path, message, reason, limit } = value;
380
+ const { path, message, reason, limit, code } = value;
379
381
  return (typeof path === 'string' &&
380
382
  typeof message === 'string' &&
381
383
  typeof reason === 'string' &&
382
384
  exports.FORM_DATA_ISSUE_REASONS.includes(reason) &&
383
- (limit === undefined || typeof limit === 'number'));
385
+ (limit === undefined || typeof limit === 'number') &&
386
+ (code === undefined || typeof code === 'string'));
384
387
  }
385
388
  //# sourceMappingURL=form.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/form.ts"],"names":[],"mappings":";;;AA+SA,kEASC;AAED,0DAIC;AAED,4DAIC;AAGD,gDAEC;AAQD,8CASC;AAMD,8CAaC;AA2CD,0DAqBC;AAiFD,4EA2BC;AAeD,0DA4CC;AAED,wDAIC;AAED,wDAMC;AAED,oDAUC;AAED,kDASC;AASD,oDAIC;AAOD,wDAIC;AAQD,kDAEC;AAED,0EAQC;AAED,8EAQC;AAED,gEAYC;AAED,sEAOC;AAuFD,0CAmBC;AAjrBD,yEAAyE;AAC5D,QAAA,8BAA8B,GAAG;IAC5C,UAAU;IACV,YAAY;IACZ,OAAO;IACP,WAAW;CACsD,CAAC;AAKpE;;;;GAIG;AACI,MAAM,2BAA2B,GAAG,CACzC,IAAa,EACsB,EAAE,CACrC,OAAO,IAAI,KAAK,QAAQ;IACvB,sCAAoD,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAJ1D,QAAA,2BAA2B,+BAI+B;AAmEvE;;;;;GAKG;AACU,QAAA,kCAAkC,GAAG,yBAAyB,CAAC;AAsC5E;;;;GAIG;AACU,QAAA,wBAAwB,GACnC;IACE,cAAc;IACd,SAAS;IACT,MAAM;IACN,UAAU;IACV,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,MAAM;CACP,CAAC;AAEJ;;;GAGG;AACU,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAwBvC,SAAgB,2BAA2B,CACzC,KAA0B;IAE1B,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,QAAQ;QACvB,KAAK,CAAC,IAAI,KAAK,cAAc;QAC7B,KAAK,CAAC,IAAI,KAAK,OAAO;QACtB,KAAK,CAAC,IAAI,KAAK,UAAU,CAC1B,CAAC;AACJ,CAAC;AAED,SAAgB,uBAAuB,CACrC,KAA0B;IAE1B,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjC,CAAC;AAED,SAAgB,wBAAwB,CACtC,KAA0B;IAE1B,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,kFAAkF;AAClF,SAAgB,kBAAkB,CAAC,KAAc;IAC/C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,KAAc,EAAE,QAAiB;IACjE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACpB,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAC/B,KAAiC;IAEjC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,CAAC;IAED,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,KAAK,CAAC,MAAM,CACV,CAAC,IAAI,EAAkB,EAAE,CACvB,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CACrD;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AASD,SAAS,wBAAwB,CAC/B,OAAe,EACf,KAAa,EACb,WAAiC;IAEjC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAElD,OAAO,QAAQ,KAAK,IAAI,IAAI,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAQD,wEAAwE;AACxE,MAAM,sCAAsC,GAAG,GAAG,CAAC;AAEnD,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEnE;;;;;;;;;;;;GAYG;AACH,SAAgB,uBAAuB,CAAC,OAAe;IACrD,MAAM,MAAM,GAAG,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAC;IAE1D,IACE,yBAAyB,CAAC,IAAI,IAAI,sCAAsC,EACxE,CAAC;QACD,2EAA2E;QAC3E,yBAAyB,CAAC,MAAM,CAC9B,yBAAyB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAe,CACxD,CAAC;IACJ,CAAC;IAED,yBAAyB,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEjD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,+BAA+B,CAAC,OAAe;IACtD,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEzB,OAAO,IAAI,MAAM,CAAC,OAAO,OAAO,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACU,QAAA,iCAAiC,GAAG,EAAE,CAAC;AAEpD,iDAAiD;AACpC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AAEjD,6DAA6D;AAChD,QAAA,2CAA2C,GAAG,GAAG,CAAC;AAE/D,MAAM,oBAAoB,GAAG,mCAAmC,CAAC;AACjE,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAC1C,MAAM,YAAY,GAAG,2DAA2D,CAAC;AAEjF;;;;GAIG;AACH,SAAS,6BAA6B,CAAC,OAAe,EAAE,KAAa;IACnE,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAE9D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC;IAChE,MAAM,OAAO,GAAG,UAAU;QACxB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,KAAK,KAAK,SAAS;YACnB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;YACrB,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5C,OAAO,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,mFAAmF;AACnF,SAAS,gBAAgB,CAAC,OAAe,EAAE,KAAa;;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,gCAAgC,CAAC,OAAe;IAC9D,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,OAAgB,EAAW,EAAE;QACxD,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAE5B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CACL,CAAC,IAAI,KAAK,GAAG,IAAI,6BAA6B,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACvE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CACvB,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,uBAAuB,CACrC,KAGC,EACD,KAAc,EACd,EACE,WAAW,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MACA,EAAE;;IAEvD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACxC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACnC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YACtB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAClB,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;IAExC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACpE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACvD,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACpE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACvD,CAAC;IAED,IACE,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;QACjC,KAAK,CAAC,OAAO,KAAK,EAAE;QACpB,CAAC,wBAAwB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,EAC5D,CAAC;QACD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAA,MAAA,KAAK,CAAC,mBAAmB,0CAAE,IAAI,EAAE,KAAI,IAAI;SACnD,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,sBAAsB,CACpC,KAA0B;IAE1B,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;AAChC,CAAC;AAED,SAAgB,sBAAsB,CACpC,IAAiC;IAEjC,OAAO,gCAAwB,CAAC,QAAQ,CACtC,IAAqC,CACtC,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAClC,KAAc;IAEd,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,SAAS;QAC1B,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CACjC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CACjD,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAClC,KAAc;IAEd,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CACpC,KAAiC;IAEjC,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAa;IAC/C,OAAO,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,SAAgB,+BAA+B,CAC7C,KAA0B;IAE1B,OAAO,CACL,2BAA2B,CAAC,KAAK,CAAC;QAClC,YAAY,IAAI,KAAK;QACrB,OAAO,KAAK,CAAC,UAAU,KAAK,WAAW,CACxC,CAAC;AACJ,CAAC;AAED,SAAgB,iCAAiC,CAC/C,KAA0B;IAE1B,OAAO,CACL,2BAA2B,CAAC,KAAK,CAAC;QAClC,SAAS,IAAI,KAAK;QAClB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,SAAgB,0BAA0B,CACxC,KAAgC;;IAEhC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,MAAA,KAAK,CAAC,IAAI,mCAAI,QAAQ,CAAC;AAChC,CAAC;AAED,SAAgB,6BAA6B,CAC3C,MAA4B;IAE5B,uCACK,MAAM,KACT,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,IACvD;AACJ,CAAC;AAsBD,SAAS,4BAA4B,CACnC,KAA0B;;IAE1B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,uCACK,KAAK,KACR,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,IAC1D;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAC7D,uCACK,KAAK,KACR,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,QAAQ,IAC5B;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,8BAA8B,CACrC,MAA6B;;IAE7B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAC/D,uCACK,MAAM,KACT,IAAI,EAAE,MAAA,MAAM,CAAC,IAAI,mCAAI,QAAQ,IAC7B;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACU,QAAA,uBAAuB,GAAG;IACrC,UAAU;IACV,MAAM;IACN,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,iBAAiB;IACjB,UAAU;IACV,UAAU;IACV,gBAAgB;IAChB,WAAW;CACH,CAAC;AAiBX,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAKxC,CAAC;IAEF,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,MAAM,KAAK,QAAQ;QACzB,+BAA6C,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC/D,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CACnD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../libs/shared/src/lib/form.ts"],"names":[],"mappings":"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"}
@@ -335,11 +335,16 @@ function applySetFieldAccessMatrix(state, command) {
335
335
  }
336
336
  const fieldAccess = command.entries
337
337
  .filter((entry) => entry.nodeId === node.id)
338
- .map(({ display, fieldKey, fill }) => ({
339
- display,
338
+ .map(({ columns, display, fieldKey, fill }) => (Object.assign({ display,
340
339
  fieldKey,
341
- fill,
342
- }));
340
+ fill }, (columns === undefined
341
+ ? {}
342
+ : {
343
+ columns: columns.map(({ columnKey, fill: columnFill }) => ({
344
+ columnKey,
345
+ fill: columnFill,
346
+ })),
347
+ }))));
343
348
  return fieldAccess.length
344
349
  ? Object.assign(Object.assign({}, node), { data: Object.assign(Object.assign({}, node.data), { fieldAccess }) }) : Object.assign(Object.assign({}, node), { data: omitKey(node.data, 'fieldAccess') });
345
350
  }) });