@genesislcap/foundation-forms 14.371.0 → 14.372.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.
@@ -1435,232 +1435,6 @@
1435
1435
  }
1436
1436
  ]
1437
1437
  },
1438
- {
1439
- "kind": "javascript-module",
1440
- "path": "src/jsonforms/testers/isArray.ts",
1441
- "declarations": [
1442
- {
1443
- "kind": "function",
1444
- "name": "isArray",
1445
- "parameters": [
1446
- {
1447
- "name": "itemsType",
1448
- "type": {
1449
- "text": "ArrayItemsType"
1450
- }
1451
- }
1452
- ]
1453
- }
1454
- ],
1455
- "exports": [
1456
- {
1457
- "kind": "js",
1458
- "name": "isArray",
1459
- "declaration": {
1460
- "name": "isArray",
1461
- "module": "src/jsonforms/testers/isArray.ts"
1462
- }
1463
- }
1464
- ]
1465
- },
1466
- {
1467
- "kind": "javascript-module",
1468
- "path": "src/jsonforms/testers/isDate.ts",
1469
- "declarations": [
1470
- {
1471
- "kind": "variable",
1472
- "name": "isOneOfDate"
1473
- }
1474
- ],
1475
- "exports": [
1476
- {
1477
- "kind": "js",
1478
- "name": "isOneOfDate",
1479
- "declaration": {
1480
- "name": "isOneOfDate",
1481
- "module": "src/jsonforms/testers/isDate.ts"
1482
- }
1483
- }
1484
- ]
1485
- },
1486
- {
1487
- "kind": "javascript-module",
1488
- "path": "src/jsonforms/testers/isInvisible.ts",
1489
- "declarations": [
1490
- {
1491
- "kind": "function",
1492
- "name": "isInvisible",
1493
- "return": {
1494
- "type": {
1495
- "text": "boolean"
1496
- }
1497
- },
1498
- "parameters": [
1499
- {
1500
- "name": "uischema",
1501
- "type": {
1502
- "text": "UISchemaElement"
1503
- }
1504
- },
1505
- {
1506
- "name": "schema",
1507
- "type": {
1508
- "text": "JsonSchema"
1509
- }
1510
- },
1511
- {
1512
- "name": "context",
1513
- "type": {
1514
- "text": "TesterContext"
1515
- }
1516
- }
1517
- ]
1518
- }
1519
- ],
1520
- "exports": [
1521
- {
1522
- "kind": "js",
1523
- "name": "isInvisible",
1524
- "declaration": {
1525
- "name": "isInvisible",
1526
- "module": "src/jsonforms/testers/isInvisible.ts"
1527
- }
1528
- }
1529
- ]
1530
- },
1531
- {
1532
- "kind": "javascript-module",
1533
- "path": "src/jsonforms/testers/isOneOfBoolean.ts",
1534
- "declarations": [
1535
- {
1536
- "kind": "variable",
1537
- "name": "isOneOfBoolean"
1538
- }
1539
- ],
1540
- "exports": [
1541
- {
1542
- "kind": "js",
1543
- "name": "isOneOfBoolean",
1544
- "declaration": {
1545
- "name": "isOneOfBoolean",
1546
- "module": "src/jsonforms/testers/isOneOfBoolean.ts"
1547
- }
1548
- }
1549
- ]
1550
- },
1551
- {
1552
- "kind": "javascript-module",
1553
- "path": "src/jsonforms/testers/isOneOfEnum.ts",
1554
- "declarations": [
1555
- {
1556
- "kind": "variable",
1557
- "name": "isOneOfEnum"
1558
- }
1559
- ],
1560
- "exports": [
1561
- {
1562
- "kind": "js",
1563
- "name": "isOneOfEnum",
1564
- "declaration": {
1565
- "name": "isOneOfEnum",
1566
- "module": "src/jsonforms/testers/isOneOfEnum.ts"
1567
- }
1568
- }
1569
- ]
1570
- },
1571
- {
1572
- "kind": "javascript-module",
1573
- "path": "src/jsonforms/testers/isOneOfNumber.ts",
1574
- "declarations": [
1575
- {
1576
- "kind": "variable",
1577
- "name": "isOneOfNumber"
1578
- }
1579
- ],
1580
- "exports": [
1581
- {
1582
- "kind": "js",
1583
- "name": "isOneOfNumber",
1584
- "declaration": {
1585
- "name": "isOneOfNumber",
1586
- "module": "src/jsonforms/testers/isOneOfNumber.ts"
1587
- }
1588
- }
1589
- ]
1590
- },
1591
- {
1592
- "kind": "javascript-module",
1593
- "path": "src/jsonforms/testers/isOneOfOptionMultiselect.ts",
1594
- "declarations": [
1595
- {
1596
- "kind": "variable",
1597
- "name": "isOneOfOptionMultiselect"
1598
- }
1599
- ],
1600
- "exports": [
1601
- {
1602
- "kind": "js",
1603
- "name": "isOneOfOptionMultiselect",
1604
- "declaration": {
1605
- "name": "isOneOfOptionMultiselect",
1606
- "module": "src/jsonforms/testers/isOneOfOptionMultiselect.ts"
1607
- }
1608
- }
1609
- ]
1610
- },
1611
- {
1612
- "kind": "javascript-module",
1613
- "path": "src/jsonforms/testers/isTime.ts",
1614
- "declarations": [
1615
- {
1616
- "kind": "variable",
1617
- "name": "isOneOfTime"
1618
- }
1619
- ],
1620
- "exports": [
1621
- {
1622
- "kind": "js",
1623
- "name": "isOneOfTime",
1624
- "declaration": {
1625
- "name": "isOneOfTime",
1626
- "module": "src/jsonforms/testers/isTime.ts"
1627
- }
1628
- }
1629
- ]
1630
- },
1631
- {
1632
- "kind": "javascript-module",
1633
- "path": "src/jsonforms/testers/optionIs.ts",
1634
- "declarations": [
1635
- {
1636
- "kind": "function",
1637
- "name": "optionIs",
1638
- "return": {
1639
- "type": {
1640
- "text": "Tester"
1641
- }
1642
- },
1643
- "parameters": [
1644
- {
1645
- "name": "optionName",
1646
- "type": {
1647
- "text": "string"
1648
- }
1649
- }
1650
- ]
1651
- }
1652
- ],
1653
- "exports": [
1654
- {
1655
- "kind": "js",
1656
- "name": "optionIs",
1657
- "declaration": {
1658
- "name": "optionIs",
1659
- "module": "src/jsonforms/testers/optionIs.ts"
1660
- }
1661
- }
1662
- ]
1663
- },
1664
1438
  {
1665
1439
  "kind": "javascript-module",
1666
1440
  "path": "src/jsonforms/renderers/ArrayListWrapperRenderer.ts",
@@ -3351,6 +3125,232 @@
3351
3125
  }
3352
3126
  }
3353
3127
  ]
3128
+ },
3129
+ {
3130
+ "kind": "javascript-module",
3131
+ "path": "src/jsonforms/testers/isArray.ts",
3132
+ "declarations": [
3133
+ {
3134
+ "kind": "function",
3135
+ "name": "isArray",
3136
+ "parameters": [
3137
+ {
3138
+ "name": "itemsType",
3139
+ "type": {
3140
+ "text": "ArrayItemsType"
3141
+ }
3142
+ }
3143
+ ]
3144
+ }
3145
+ ],
3146
+ "exports": [
3147
+ {
3148
+ "kind": "js",
3149
+ "name": "isArray",
3150
+ "declaration": {
3151
+ "name": "isArray",
3152
+ "module": "src/jsonforms/testers/isArray.ts"
3153
+ }
3154
+ }
3155
+ ]
3156
+ },
3157
+ {
3158
+ "kind": "javascript-module",
3159
+ "path": "src/jsonforms/testers/isDate.ts",
3160
+ "declarations": [
3161
+ {
3162
+ "kind": "variable",
3163
+ "name": "isOneOfDate"
3164
+ }
3165
+ ],
3166
+ "exports": [
3167
+ {
3168
+ "kind": "js",
3169
+ "name": "isOneOfDate",
3170
+ "declaration": {
3171
+ "name": "isOneOfDate",
3172
+ "module": "src/jsonforms/testers/isDate.ts"
3173
+ }
3174
+ }
3175
+ ]
3176
+ },
3177
+ {
3178
+ "kind": "javascript-module",
3179
+ "path": "src/jsonforms/testers/isInvisible.ts",
3180
+ "declarations": [
3181
+ {
3182
+ "kind": "function",
3183
+ "name": "isInvisible",
3184
+ "return": {
3185
+ "type": {
3186
+ "text": "boolean"
3187
+ }
3188
+ },
3189
+ "parameters": [
3190
+ {
3191
+ "name": "uischema",
3192
+ "type": {
3193
+ "text": "UISchemaElement"
3194
+ }
3195
+ },
3196
+ {
3197
+ "name": "schema",
3198
+ "type": {
3199
+ "text": "JsonSchema"
3200
+ }
3201
+ },
3202
+ {
3203
+ "name": "context",
3204
+ "type": {
3205
+ "text": "TesterContext"
3206
+ }
3207
+ }
3208
+ ]
3209
+ }
3210
+ ],
3211
+ "exports": [
3212
+ {
3213
+ "kind": "js",
3214
+ "name": "isInvisible",
3215
+ "declaration": {
3216
+ "name": "isInvisible",
3217
+ "module": "src/jsonforms/testers/isInvisible.ts"
3218
+ }
3219
+ }
3220
+ ]
3221
+ },
3222
+ {
3223
+ "kind": "javascript-module",
3224
+ "path": "src/jsonforms/testers/isOneOfBoolean.ts",
3225
+ "declarations": [
3226
+ {
3227
+ "kind": "variable",
3228
+ "name": "isOneOfBoolean"
3229
+ }
3230
+ ],
3231
+ "exports": [
3232
+ {
3233
+ "kind": "js",
3234
+ "name": "isOneOfBoolean",
3235
+ "declaration": {
3236
+ "name": "isOneOfBoolean",
3237
+ "module": "src/jsonforms/testers/isOneOfBoolean.ts"
3238
+ }
3239
+ }
3240
+ ]
3241
+ },
3242
+ {
3243
+ "kind": "javascript-module",
3244
+ "path": "src/jsonforms/testers/isOneOfEnum.ts",
3245
+ "declarations": [
3246
+ {
3247
+ "kind": "variable",
3248
+ "name": "isOneOfEnum"
3249
+ }
3250
+ ],
3251
+ "exports": [
3252
+ {
3253
+ "kind": "js",
3254
+ "name": "isOneOfEnum",
3255
+ "declaration": {
3256
+ "name": "isOneOfEnum",
3257
+ "module": "src/jsonforms/testers/isOneOfEnum.ts"
3258
+ }
3259
+ }
3260
+ ]
3261
+ },
3262
+ {
3263
+ "kind": "javascript-module",
3264
+ "path": "src/jsonforms/testers/isOneOfNumber.ts",
3265
+ "declarations": [
3266
+ {
3267
+ "kind": "variable",
3268
+ "name": "isOneOfNumber"
3269
+ }
3270
+ ],
3271
+ "exports": [
3272
+ {
3273
+ "kind": "js",
3274
+ "name": "isOneOfNumber",
3275
+ "declaration": {
3276
+ "name": "isOneOfNumber",
3277
+ "module": "src/jsonforms/testers/isOneOfNumber.ts"
3278
+ }
3279
+ }
3280
+ ]
3281
+ },
3282
+ {
3283
+ "kind": "javascript-module",
3284
+ "path": "src/jsonforms/testers/isOneOfOptionMultiselect.ts",
3285
+ "declarations": [
3286
+ {
3287
+ "kind": "variable",
3288
+ "name": "isOneOfOptionMultiselect"
3289
+ }
3290
+ ],
3291
+ "exports": [
3292
+ {
3293
+ "kind": "js",
3294
+ "name": "isOneOfOptionMultiselect",
3295
+ "declaration": {
3296
+ "name": "isOneOfOptionMultiselect",
3297
+ "module": "src/jsonforms/testers/isOneOfOptionMultiselect.ts"
3298
+ }
3299
+ }
3300
+ ]
3301
+ },
3302
+ {
3303
+ "kind": "javascript-module",
3304
+ "path": "src/jsonforms/testers/isTime.ts",
3305
+ "declarations": [
3306
+ {
3307
+ "kind": "variable",
3308
+ "name": "isOneOfTime"
3309
+ }
3310
+ ],
3311
+ "exports": [
3312
+ {
3313
+ "kind": "js",
3314
+ "name": "isOneOfTime",
3315
+ "declaration": {
3316
+ "name": "isOneOfTime",
3317
+ "module": "src/jsonforms/testers/isTime.ts"
3318
+ }
3319
+ }
3320
+ ]
3321
+ },
3322
+ {
3323
+ "kind": "javascript-module",
3324
+ "path": "src/jsonforms/testers/optionIs.ts",
3325
+ "declarations": [
3326
+ {
3327
+ "kind": "function",
3328
+ "name": "optionIs",
3329
+ "return": {
3330
+ "type": {
3331
+ "text": "Tester"
3332
+ }
3333
+ },
3334
+ "parameters": [
3335
+ {
3336
+ "name": "optionName",
3337
+ "type": {
3338
+ "text": "string"
3339
+ }
3340
+ }
3341
+ ]
3342
+ }
3343
+ ],
3344
+ "exports": [
3345
+ {
3346
+ "kind": "js",
3347
+ "name": "optionIs",
3348
+ "declaration": {
3349
+ "name": "optionIs",
3350
+ "module": "src/jsonforms/testers/optionIs.ts"
3351
+ }
3352
+ }
3353
+ ]
3354
3354
  }
3355
3355
  ]
3356
3356
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayListWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/ArrayListWrapperRenderer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAwC,WAAW,EAAU,MAAM,yBAAyB,CAAC;AAGpG,eAAO,MAAM,gCAAgC,GAAI,SAAQ,MAAe,6DA0CvE,CAAC;AAqBF,qBAOa,gBAAiB,SAAQ,WAAW;IACnC,IAAI,MAAC;IACL,OAAO,MAAC;IACR,MAAM,MAAC;IACP,QAAQ,MAAC;IAErB,cAAc;IAcd,OAAO;IAOP,UAAU,CAAC,KAAK,EAAE,MAAM;CAGzB"}
1
+ {"version":3,"file":"ArrayListWrapperRenderer.d.ts","sourceRoot":"","sources":["../../../../src/jsonforms/renderers/ArrayListWrapperRenderer.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,WAAW,EAGZ,MAAM,yBAAyB,CAAC;AAajC,eAAO,MAAM,gCAAgC,GAAI,SAAQ,MAAe,6DA2CvE,CAAC;AAqBF,qBAOa,gBAAiB,SAAQ,WAAW;IACnC,IAAI,MAAC;IACL,OAAO,MAAC;IACR,MAAM,MAAC;IACP,QAAQ,MAAC;IAErB,cAAc;IAcd,OAAO;IAOP,UAAU,CAAC,KAAK,EAAE,MAAM;CAGzB"}
@@ -138,6 +138,25 @@ export type ArrayRendererOptions = {
138
138
  * ```
139
139
  */
140
140
  border?: boolean;
141
+ /**
142
+ * A function that determines whether the delete button should be shown for an array item.
143
+ * If not provided, the delete button will be shown by default.
144
+ * The function receives the item data and should return a boolean.
145
+ * @public
146
+ *
147
+ * @example
148
+ * ```ts
149
+ * {
150
+ * type: 'Control',
151
+ * scope: '#/properties/array',
152
+ * options: <ArrayRendererOptions>{
153
+ * canDelete: (item: any) => item.status !== 'locked',
154
+ * childUiSchema: { ... }
155
+ * }
156
+ * }
157
+ * ```
158
+ */
159
+ canDelete?: (item: any) => boolean;
141
160
  };
142
161
  /**
143
162
  * Orientation options available for stepper renderer.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,18 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { Generate, composePaths, createDefaultValue } from '@jsonforms/core';
3
3
  import { designUnit } from '@microsoft/fast-components';
4
- import { html, css, observable, customElement, FASTElement, repeat } from '@microsoft/fast-element';
4
+ import { html, css, observable, customElement, FASTElement, repeat, } from '@microsoft/fast-element';
5
5
  import { logger } from '../../utils';
6
+ const isDeleteButtonHidden = (ctx) => {
7
+ var _a, _b, _c;
8
+ const canDeleteFn = (_a = ctx.parent.control.uischema.options) === null || _a === void 0 ? void 0 : _a.canDelete;
9
+ // If no delete function return false as the button is not hidden
10
+ if (!canDeleteFn)
11
+ return false;
12
+ const formData = (_c = (_b = ctx.parent.form.jsonforms) === null || _b === void 0 ? void 0 : _b.core) === null || _c === void 0 ? void 0 : _c.data;
13
+ const controlData = formData[ctx.parent.control.path] && formData[ctx.parent.control.path][ctx.index];
14
+ return !canDeleteFn(controlData);
15
+ };
6
16
  export const ArrayListWrapperRendererTemplate = (prefix = 'zero') => html `
7
17
  <template>
8
18
  ${repeat((x) => Array(x.control.data), html `
@@ -21,6 +31,7 @@ export const ArrayListWrapperRendererTemplate = (prefix = 'zero') => html `
21
31
  })}
22
32
  ></dispatch-renderer>
23
33
  <${prefix}-button
34
+ ?hidden=${(x, ctx) => isDeleteButtonHidden(ctx)}
24
35
  appearance="lightweight"
25
36
  class="item-control-btn"
26
37
  data-test-id=${(x, ctx) => `${ctx.parent.control.path}-${ctx.index}-delete-item`}
@@ -192,7 +192,7 @@
192
192
  },
193
193
  {
194
194
  "kind": "Content",
195
- "text": ";\n addLabel?: string;\n deleteLabel?: string;\n border?: boolean;\n}"
195
+ "text": ";\n addLabel?: string;\n deleteLabel?: string;\n border?: boolean;\n canDelete?: (item: any) => boolean;\n}"
196
196
  },
197
197
  {
198
198
  "kind": "Content",
@@ -87,6 +87,25 @@ export declare type ArrayRendererOptions = {
87
87
  * ```
88
88
  */
89
89
  border?: boolean;
90
+ /**
91
+ * A function that determines whether the delete button should be shown for an array item.
92
+ * If not provided, the delete button will be shown by default.
93
+ * The function receives the item data and should return a boolean.
94
+ * @public
95
+ *
96
+ * @example
97
+ * ```ts
98
+ * {
99
+ * type: 'Control',
100
+ * scope: '#/properties/array',
101
+ * options: <ArrayRendererOptions>{
102
+ * canDelete: (item: any) => item.status !== 'locked',
103
+ * childUiSchema: { ... }
104
+ * }
105
+ * }
106
+ * ```
107
+ */
108
+ canDelete?: (item: any) => boolean;
90
109
  };
91
110
 
92
111
  /**
@@ -14,6 +14,7 @@ export type ArrayRendererOptions = {
14
14
  addLabel?: string;
15
15
  deleteLabel?: string;
16
16
  border?: boolean;
17
+ canDelete?: (item: any) => boolean;
17
18
  };
18
19
  ```
19
20
  **References:** [UiSchema](./foundation-forms.uischema.md)
@@ -35,6 +35,7 @@ export type ArrayRendererOptions = {
35
35
  addLabel?: string;
36
36
  deleteLabel?: string;
37
37
  border?: boolean;
38
+ canDelete?: (item: any) => boolean;
38
39
  };
39
40
 
40
41
  // @public
@@ -328,8 +329,8 @@ export type UiSchemaOptions = StepperOrientationOptions | LabelPlacementOptions;
328
329
 
329
330
  // Warnings were encountered during analysis:
330
331
  //
331
- // src/types.ts:348:3 - (ae-forgotten-export) The symbol "Rule" needs to be exported by the entry point index.d.ts
332
- // src/types.ts:398:3 - (ae-forgotten-export) The symbol "DispatchRenderer" needs to be exported by the entry point index.d.ts
332
+ // src/types.ts:368:3 - (ae-forgotten-export) The symbol "Rule" needs to be exported by the entry point index.d.ts
333
+ // src/types.ts:418:3 - (ae-forgotten-export) The symbol "DispatchRenderer" needs to be exported by the entry point index.d.ts
333
334
 
334
335
  // (No @packageDocumentation comment for this package)
335
336
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-forms",
3
3
  "description": "Genesis Foundation Forms",
4
- "version": "14.371.0",
4
+ "version": "14.372.0",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -48,22 +48,22 @@
48
48
  }
49
49
  },
50
50
  "devDependencies": {
51
- "@genesislcap/foundation-testing": "14.371.0",
52
- "@genesislcap/genx": "14.371.0",
53
- "@genesislcap/rollup-builder": "14.371.0",
54
- "@genesislcap/ts-builder": "14.371.0",
55
- "@genesislcap/uvu-playwright-builder": "14.371.0",
56
- "@genesislcap/vite-builder": "14.371.0",
57
- "@genesislcap/webpack-builder": "14.371.0",
51
+ "@genesislcap/foundation-testing": "14.372.0",
52
+ "@genesislcap/genx": "14.372.0",
53
+ "@genesislcap/rollup-builder": "14.372.0",
54
+ "@genesislcap/ts-builder": "14.372.0",
55
+ "@genesislcap/uvu-playwright-builder": "14.372.0",
56
+ "@genesislcap/vite-builder": "14.372.0",
57
+ "@genesislcap/webpack-builder": "14.372.0",
58
58
  "@types/json-schema": "^7.0.11"
59
59
  },
60
60
  "dependencies": {
61
- "@genesislcap/foundation-comms": "14.371.0",
62
- "@genesislcap/foundation-criteria": "14.371.0",
63
- "@genesislcap/foundation-logger": "14.371.0",
64
- "@genesislcap/foundation-notifications": "14.371.0",
65
- "@genesislcap/foundation-ui": "14.371.0",
66
- "@genesislcap/foundation-utils": "14.371.0",
61
+ "@genesislcap/foundation-comms": "14.372.0",
62
+ "@genesislcap/foundation-criteria": "14.372.0",
63
+ "@genesislcap/foundation-logger": "14.372.0",
64
+ "@genesislcap/foundation-notifications": "14.372.0",
65
+ "@genesislcap/foundation-ui": "14.372.0",
66
+ "@genesislcap/foundation-utils": "14.372.0",
67
67
  "@json-schema-tools/dereferencer": "^1.6.1",
68
68
  "@jsonforms/core": "^3.2.1",
69
69
  "@microsoft/fast-components": "2.30.6",
@@ -84,5 +84,5 @@
84
84
  "access": "public"
85
85
  },
86
86
  "customElements": "dist/custom-elements.json",
87
- "gitHead": "ea4401059f690d90b8c5ebbfdd0c9bea654fa611"
87
+ "gitHead": "5687711a57e643a627b78f773f99fad4df1062e9"
88
88
  }