@genesislcap/foundation-forms 14.427.2-alpha-e0ffaad.0 → 14.428.1-alpha-035cbdd.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.
Files changed (88) hide show
  1. package/dist/custom-elements.json +428 -346
  2. package/dist/dts/filters/filters.template.d.ts.map +1 -1
  3. package/dist/dts/form.d.ts +10 -4
  4. package/dist/dts/form.d.ts.map +1 -1
  5. package/dist/dts/form.styles.d.ts.map +1 -1
  6. package/dist/dts/form.template.d.ts.map +1 -1
  7. package/dist/dts/index.d.ts +0 -2
  8. package/dist/dts/index.d.ts.map +1 -1
  9. package/dist/dts/jsonforms/json-forms.d.ts.map +1 -1
  10. package/dist/dts/jsonforms/renderers/ArrayListWrapperRenderer.d.ts.map +1 -1
  11. package/dist/dts/jsonforms/renderers/BooleanControlRenderer.d.ts.map +1 -1
  12. package/dist/dts/jsonforms/renderers/CategorizationWrapperRenderer.d.ts.map +1 -1
  13. package/dist/dts/jsonforms/renderers/ConnectedMultiselectControlRenderer.d.ts.map +1 -1
  14. package/dist/dts/jsonforms/renderers/ConnectedSelectControlRenderer.d.ts.map +1 -1
  15. package/dist/dts/jsonforms/renderers/ControlWrapperRenderer.d.ts +11 -31
  16. package/dist/dts/jsonforms/renderers/ControlWrapperRenderer.d.ts.map +1 -1
  17. package/dist/dts/jsonforms/renderers/DateControlRenderer.d.ts +1 -2
  18. package/dist/dts/jsonforms/renderers/DateControlRenderer.d.ts.map +1 -1
  19. package/dist/dts/jsonforms/renderers/EnumControlRenderer.d.ts +1 -2
  20. package/dist/dts/jsonforms/renderers/EnumControlRenderer.d.ts.map +1 -1
  21. package/dist/dts/jsonforms/renderers/EnumRadioGroupControlRenderer.d.ts.map +1 -1
  22. package/dist/dts/jsonforms/renderers/FilterDateControlRenderer.d.ts +1 -2
  23. package/dist/dts/jsonforms/renderers/FilterDateControlRenderer.d.ts.map +1 -1
  24. package/dist/dts/jsonforms/renderers/FilterNumberControlRenderer.d.ts +1 -2
  25. package/dist/dts/jsonforms/renderers/FilterNumberControlRenderer.d.ts.map +1 -1
  26. package/dist/dts/jsonforms/renderers/FilterTimeControlRenderer.d.ts +1 -2
  27. package/dist/dts/jsonforms/renderers/FilterTimeControlRenderer.d.ts.map +1 -1
  28. package/dist/dts/jsonforms/renderers/LayoutArrayRenderer.d.ts +1 -2
  29. package/dist/dts/jsonforms/renderers/LayoutArrayRenderer.d.ts.map +1 -1
  30. package/dist/dts/jsonforms/renderers/LayoutFormGridRenderer.d.ts +1 -2
  31. package/dist/dts/jsonforms/renderers/LayoutFormGridRenderer.d.ts.map +1 -1
  32. package/dist/dts/jsonforms/renderers/LayoutGroupRenderer.d.ts +1 -2
  33. package/dist/dts/jsonforms/renderers/LayoutGroupRenderer.d.ts.map +1 -1
  34. package/dist/dts/jsonforms/renderers/LayoutHorizontalRenderer.d.ts +1 -2
  35. package/dist/dts/jsonforms/renderers/LayoutHorizontalRenderer.d.ts.map +1 -1
  36. package/dist/dts/jsonforms/renderers/LayoutRenderer.d.ts +5 -21
  37. package/dist/dts/jsonforms/renderers/LayoutRenderer.d.ts.map +1 -1
  38. package/dist/dts/jsonforms/renderers/LayoutVertical2ColumnsRenderer.d.ts +1 -2
  39. package/dist/dts/jsonforms/renderers/LayoutVertical2ColumnsRenderer.d.ts.map +1 -1
  40. package/dist/dts/jsonforms/renderers/MulticolumnDropdownControlRenderer.d.ts.map +1 -1
  41. package/dist/dts/jsonforms/renderers/NumberControlRenderer.d.ts +1 -2
  42. package/dist/dts/jsonforms/renderers/NumberControlRenderer.d.ts.map +1 -1
  43. package/dist/dts/jsonforms/renderers/SegmentedControlRenderer.d.ts.map +1 -1
  44. package/dist/dts/jsonforms/renderers/StepperWrapperRenderer.d.ts.map +1 -1
  45. package/dist/dts/jsonforms/renderers/StringArrayControlRenderer.d.ts.map +1 -1
  46. package/dist/dts/jsonforms/renderers/StringControlRenderer.d.ts.map +1 -1
  47. package/dist/dts/jsonforms/renderers/VerticalCategorizationWrapperRenderer.d.ts.map +1 -1
  48. package/dist/dts/jsonforms/renderers/dispatch-renderer.d.ts.map +1 -1
  49. package/dist/dts/react.d.ts +20 -0
  50. package/dist/dts/types.d.ts +0 -12
  51. package/dist/dts/types.d.ts.map +1 -1
  52. package/dist/esm/filters/filters.template.js +2 -1
  53. package/dist/esm/form.js +1 -2
  54. package/dist/esm/form.styles.js +40 -14
  55. package/dist/esm/form.template.js +2 -1
  56. package/dist/esm/index.js +0 -2
  57. package/dist/esm/jsonforms/json-forms.js +1 -27
  58. package/dist/esm/jsonforms/renderers/ArrayListWrapperRenderer.js +46 -48
  59. package/dist/esm/jsonforms/renderers/BooleanControlRenderer.js +20 -19
  60. package/dist/esm/jsonforms/renderers/CategorizationWrapperRenderer.js +4 -9
  61. package/dist/esm/jsonforms/renderers/ConnectedMultiselectControlRenderer.js +40 -38
  62. package/dist/esm/jsonforms/renderers/ConnectedSelectControlRenderer.js +39 -39
  63. package/dist/esm/jsonforms/renderers/ControlWrapperRenderer.js +131 -102
  64. package/dist/esm/jsonforms/renderers/DateControlRenderer.js +43 -41
  65. package/dist/esm/jsonforms/renderers/EnumControlRenderer.js +27 -27
  66. package/dist/esm/jsonforms/renderers/EnumRadioGroupControlRenderer.js +32 -30
  67. package/dist/esm/jsonforms/renderers/FilterDateControlRenderer.js +77 -81
  68. package/dist/esm/jsonforms/renderers/FilterNumberControlRenderer.js +51 -54
  69. package/dist/esm/jsonforms/renderers/FilterTimeControlRenderer.js +69 -69
  70. package/dist/esm/jsonforms/renderers/LayoutArrayRenderer.js +8 -7
  71. package/dist/esm/jsonforms/renderers/LayoutFormGridRenderer.js +26 -27
  72. package/dist/esm/jsonforms/renderers/LayoutGroupRenderer.js +32 -36
  73. package/dist/esm/jsonforms/renderers/LayoutHorizontalRenderer.js +26 -27
  74. package/dist/esm/jsonforms/renderers/LayoutRenderer.js +44 -36
  75. package/dist/esm/jsonforms/renderers/LayoutVertical2ColumnsRenderer.js +17 -18
  76. package/dist/esm/jsonforms/renderers/MulticolumnDropdownControlRenderer.js +41 -39
  77. package/dist/esm/jsonforms/renderers/NumberControlRenderer.js +30 -30
  78. package/dist/esm/jsonforms/renderers/SegmentedControlRenderer.js +27 -25
  79. package/dist/esm/jsonforms/renderers/StepperWrapperRenderer.js +1 -2
  80. package/dist/esm/jsonforms/renderers/StringArrayControlRenderer.js +20 -18
  81. package/dist/esm/jsonforms/renderers/StringControlRenderer.js +42 -41
  82. package/dist/esm/jsonforms/renderers/VerticalCategorizationWrapperRenderer.js +9 -13
  83. package/dist/esm/jsonforms/renderers/dispatch-renderer.js +0 -1
  84. package/dist/foundation-forms.api.json +2 -114
  85. package/dist/foundation-forms.d.ts +10 -69
  86. package/dist/react.cjs +14 -0
  87. package/dist/react.mjs +12 -0
  88. package/package.json +15 -15
@@ -706,30 +706,6 @@
706
706
  "module": "./jsonforms/renderers/LayoutVerticalCategorizationRenderer"
707
707
  }
708
708
  },
709
- {
710
- "kind": "js",
711
- "name": "controlWrapperTemplate",
712
- "declaration": {
713
- "name": "controlWrapperTemplate",
714
- "module": "./jsonforms/renderers/ControlWrapperRenderer"
715
- }
716
- },
717
- {
718
- "kind": "js",
719
- "name": "controlWrapperStyles",
720
- "declaration": {
721
- "name": "controlWrapperStyles",
722
- "module": "./jsonforms/renderers/ControlWrapperRenderer"
723
- }
724
- },
725
- {
726
- "kind": "js",
727
- "name": "layoutWrapperTemplate",
728
- "declaration": {
729
- "name": "layoutWrapperTemplate",
730
- "module": "./jsonforms/renderers/LayoutRenderer"
731
- }
732
- },
733
709
  {
734
710
  "kind": "js",
735
711
  "name": "*",
@@ -1315,6 +1291,234 @@
1315
1291
  }
1316
1292
  ]
1317
1293
  },
1294
+ {
1295
+ "kind": "javascript-module",
1296
+ "path": "src/jsonforms/json-forms.ts",
1297
+ "declarations": [
1298
+ {
1299
+ "kind": "class",
1300
+ "description": "JSON Forms host element for schema-driven UI.",
1301
+ "name": "JSONForms",
1302
+ "members": [
1303
+ {
1304
+ "kind": "field",
1305
+ "name": "submitted",
1306
+ "type": {
1307
+ "text": "boolean"
1308
+ }
1309
+ },
1310
+ {
1311
+ "kind": "field",
1312
+ "name": "prefix"
1313
+ },
1314
+ {
1315
+ "kind": "method",
1316
+ "name": "prefixChanged"
1317
+ },
1318
+ {
1319
+ "kind": "field",
1320
+ "name": "jsonforms"
1321
+ },
1322
+ {
1323
+ "kind": "field",
1324
+ "name": "i18n"
1325
+ },
1326
+ {
1327
+ "kind": "field",
1328
+ "name": "uichemaToUse"
1329
+ },
1330
+ {
1331
+ "kind": "field",
1332
+ "name": "schema"
1333
+ },
1334
+ {
1335
+ "kind": "method",
1336
+ "name": "schemaChanged"
1337
+ },
1338
+ {
1339
+ "kind": "field",
1340
+ "name": "uischema",
1341
+ "type": {
1342
+ "text": "UISchemaElement"
1343
+ }
1344
+ },
1345
+ {
1346
+ "kind": "method",
1347
+ "name": "uischemaChanged"
1348
+ },
1349
+ {
1350
+ "kind": "field",
1351
+ "name": "data"
1352
+ },
1353
+ {
1354
+ "kind": "method",
1355
+ "name": "dataChanged"
1356
+ },
1357
+ {
1358
+ "kind": "field",
1359
+ "name": "renderers",
1360
+ "type": {
1361
+ "text": "JsonFormsRendererRegistryEntry[]"
1362
+ }
1363
+ },
1364
+ {
1365
+ "kind": "method",
1366
+ "name": "renderersChanged"
1367
+ },
1368
+ {
1369
+ "kind": "field",
1370
+ "name": "validationMode",
1371
+ "type": {
1372
+ "text": "ValidationMode"
1373
+ }
1374
+ },
1375
+ {
1376
+ "kind": "method",
1377
+ "name": "validationModeChanged"
1378
+ },
1379
+ {
1380
+ "kind": "field",
1381
+ "name": "ajv",
1382
+ "type": {
1383
+ "text": "Ajv"
1384
+ }
1385
+ },
1386
+ {
1387
+ "kind": "method",
1388
+ "name": "ajvChanged"
1389
+ },
1390
+ {
1391
+ "kind": "field",
1392
+ "name": "readonly",
1393
+ "type": {
1394
+ "text": "boolean"
1395
+ }
1396
+ },
1397
+ {
1398
+ "kind": "method",
1399
+ "name": "readonlyChanged"
1400
+ },
1401
+ {
1402
+ "kind": "field",
1403
+ "name": "config",
1404
+ "type": {
1405
+ "text": "any"
1406
+ }
1407
+ },
1408
+ {
1409
+ "kind": "method",
1410
+ "name": "configChanged"
1411
+ },
1412
+ {
1413
+ "kind": "field",
1414
+ "name": "rowSubmitStatuses",
1415
+ "type": {
1416
+ "text": "Map<number, BulkRowStatus>"
1417
+ },
1418
+ "default": "new Map()",
1419
+ "description": "Row submit statuses for bulk insert mode.\nPassed from the parent foundation-form."
1420
+ },
1421
+ {
1422
+ "kind": "method",
1423
+ "name": "rowSubmitStatusesChanged"
1424
+ },
1425
+ {
1426
+ "kind": "field",
1427
+ "name": "bulkInsert",
1428
+ "type": {
1429
+ "text": "boolean"
1430
+ },
1431
+ "default": "false",
1432
+ "description": "Whether the form is in bulk insert mode.\nPassed from the parent foundation-form."
1433
+ },
1434
+ {
1435
+ "kind": "method",
1436
+ "name": "bulkInsertChanged"
1437
+ },
1438
+ {
1439
+ "kind": "field",
1440
+ "name": "props",
1441
+ "type": {
1442
+ "text": "RendererProps"
1443
+ },
1444
+ "readonly": true
1445
+ },
1446
+ {
1447
+ "kind": "field",
1448
+ "name": "dispatch"
1449
+ },
1450
+ {
1451
+ "kind": "field",
1452
+ "name": "validate",
1453
+ "description": "Performs client-side validation by running the validator defined in the UI schema.",
1454
+ "parameters": [
1455
+ {
1456
+ "description": "the UI schema",
1457
+ "name": "uischema"
1458
+ }
1459
+ ],
1460
+ "return": {
1461
+ "type": {
1462
+ "text": ""
1463
+ }
1464
+ }
1465
+ },
1466
+ {
1467
+ "kind": "method",
1468
+ "name": "copyUISchemaToClipboard"
1469
+ }
1470
+ ],
1471
+ "events": [
1472
+ {
1473
+ "description": "Bubbles from nested dispatch-renderer when a control emits change (e.g. multiselect)",
1474
+ "name": "change"
1475
+ },
1476
+ {
1477
+ "description": "Fired when bound form data changes",
1478
+ "name": "data-change"
1479
+ }
1480
+ ],
1481
+ "attributes": [
1482
+ {
1483
+ "type": {
1484
+ "text": "boolean"
1485
+ },
1486
+ "fieldName": "submitted"
1487
+ },
1488
+ {
1489
+ "type": {
1490
+ "text": "boolean"
1491
+ },
1492
+ "fieldName": "readonly"
1493
+ }
1494
+ ],
1495
+ "superclass": {
1496
+ "name": "FASTElement",
1497
+ "package": "@microsoft/fast-element"
1498
+ },
1499
+ "tagName": "json-forms",
1500
+ "customElement": true
1501
+ }
1502
+ ],
1503
+ "exports": [
1504
+ {
1505
+ "kind": "js",
1506
+ "name": "JSONForms",
1507
+ "declaration": {
1508
+ "name": "JSONForms",
1509
+ "module": "src/jsonforms/json-forms.ts"
1510
+ }
1511
+ },
1512
+ {
1513
+ "kind": "custom-element-definition",
1514
+ "name": "json-forms",
1515
+ "declaration": {
1516
+ "name": "JSONForms",
1517
+ "module": "src/jsonforms/json-forms.ts"
1518
+ }
1519
+ }
1520
+ ]
1521
+ },
1318
1522
  {
1319
1523
  "kind": "javascript-module",
1320
1524
  "path": "src/utils/confirmation-dialog-utils.ts",
@@ -1609,318 +1813,90 @@
1609
1813
  "declarations": [],
1610
1814
  "exports": []
1611
1815
  },
1612
- {
1613
- "kind": "javascript-module",
1614
- "path": "src/utils/types.ts",
1615
- "declarations": [],
1616
- "exports": []
1617
- },
1618
- {
1619
- "kind": "javascript-module",
1620
- "path": "src/utils/validation.ts",
1621
- "declarations": [
1622
- {
1623
- "kind": "function",
1624
- "name": "mustMatch",
1625
- "parameters": [
1626
- {
1627
- "name": "target",
1628
- "type": {
1629
- "text": "string"
1630
- },
1631
- "description": "any other field"
1632
- }
1633
- ],
1634
- "description": "Ensures the value of the current field (the one the validator is on) matches the one of the target field.",
1635
- "return": {
1636
- "type": {
1637
- "text": ""
1638
- }
1639
- },
1640
- "privacy": "public"
1641
- },
1642
- {
1643
- "kind": "function",
1644
- "name": "getAnyOfErrorMessage",
1645
- "return": {
1646
- "type": {
1647
- "text": "string"
1648
- }
1649
- },
1650
- "parameters": [
1651
- {
1652
- "name": "errors",
1653
- "type": {
1654
- "text": "Array<any> | undefined"
1655
- }
1656
- },
1657
- {
1658
- "name": "schema",
1659
- "type": {
1660
- "text": "any"
1661
- }
1662
- },
1663
- {
1664
- "name": "controlPath",
1665
- "type": {
1666
- "text": "string | undefined"
1667
- }
1668
- },
1669
- {
1670
- "name": "uiCustomMsg",
1671
- "optional": true,
1672
- "type": {
1673
- "text": "string"
1674
- }
1675
- }
1676
- ],
1677
- "description": "Computes a human-friendly anyOf error message for a given control path.\nPrefers UI schema custom message, then JSON schema errorMessage.anyOf, then a constructed fallback.",
1678
- "privacy": "public"
1679
- }
1680
- ],
1681
- "exports": [
1682
- {
1683
- "kind": "js",
1684
- "name": "mustMatch",
1685
- "declaration": {
1686
- "name": "mustMatch",
1687
- "module": "src/utils/validation.ts"
1688
- }
1689
- },
1690
- {
1691
- "kind": "js",
1692
- "name": "getAnyOfErrorMessage",
1693
- "declaration": {
1694
- "name": "getAnyOfErrorMessage",
1695
- "module": "src/utils/validation.ts"
1696
- }
1697
- }
1698
- ]
1699
- },
1700
- {
1701
- "kind": "javascript-module",
1702
- "path": "src/jsonforms/json-forms.ts",
1703
- "declarations": [
1704
- {
1705
- "kind": "class",
1706
- "description": "JSON Forms host element for schema-driven UI.",
1707
- "name": "JSONForms",
1708
- "members": [
1709
- {
1710
- "kind": "field",
1711
- "name": "submitted",
1712
- "type": {
1713
- "text": "boolean"
1714
- }
1715
- },
1716
- {
1717
- "kind": "field",
1718
- "name": "prefix"
1719
- },
1720
- {
1721
- "kind": "method",
1722
- "name": "prefixChanged"
1723
- },
1724
- {
1725
- "kind": "field",
1726
- "name": "jsonforms"
1727
- },
1728
- {
1729
- "kind": "field",
1730
- "name": "i18n"
1731
- },
1732
- {
1733
- "kind": "field",
1734
- "name": "uichemaToUse"
1735
- },
1736
- {
1737
- "kind": "field",
1738
- "name": "schema"
1739
- },
1740
- {
1741
- "kind": "method",
1742
- "name": "schemaChanged"
1743
- },
1744
- {
1745
- "kind": "field",
1746
- "name": "uischema",
1747
- "type": {
1748
- "text": "UISchemaElement"
1749
- }
1750
- },
1751
- {
1752
- "kind": "method",
1753
- "name": "uischemaChanged"
1754
- },
1755
- {
1756
- "kind": "field",
1757
- "name": "data"
1758
- },
1759
- {
1760
- "kind": "method",
1761
- "name": "dataChanged"
1762
- },
1763
- {
1764
- "kind": "field",
1765
- "name": "renderers",
1766
- "type": {
1767
- "text": "JsonFormsRendererRegistryEntry[]"
1768
- }
1769
- },
1770
- {
1771
- "kind": "method",
1772
- "name": "renderersChanged"
1773
- },
1774
- {
1775
- "kind": "field",
1776
- "name": "validationMode",
1777
- "type": {
1778
- "text": "ValidationMode"
1779
- }
1780
- },
1781
- {
1782
- "kind": "method",
1783
- "name": "validationModeChanged"
1784
- },
1785
- {
1786
- "kind": "field",
1787
- "name": "ajv",
1788
- "type": {
1789
- "text": "Ajv"
1790
- }
1791
- },
1792
- {
1793
- "kind": "method",
1794
- "name": "ajvChanged"
1795
- },
1796
- {
1797
- "kind": "field",
1798
- "name": "readonly",
1799
- "type": {
1800
- "text": "boolean"
1801
- }
1802
- },
1803
- {
1804
- "kind": "method",
1805
- "name": "readonlyChanged"
1806
- },
1807
- {
1808
- "kind": "field",
1809
- "name": "config",
1810
- "type": {
1811
- "text": "any"
1812
- }
1813
- },
1814
- {
1815
- "kind": "method",
1816
- "name": "configChanged"
1817
- },
1816
+ {
1817
+ "kind": "javascript-module",
1818
+ "path": "src/utils/types.ts",
1819
+ "declarations": [],
1820
+ "exports": []
1821
+ },
1822
+ {
1823
+ "kind": "javascript-module",
1824
+ "path": "src/utils/validation.ts",
1825
+ "declarations": [
1826
+ {
1827
+ "kind": "function",
1828
+ "name": "mustMatch",
1829
+ "parameters": [
1818
1830
  {
1819
- "kind": "field",
1820
- "name": "rowSubmitStatuses",
1831
+ "name": "target",
1821
1832
  "type": {
1822
- "text": "Map<number, BulkRowStatus>"
1833
+ "text": "string"
1823
1834
  },
1824
- "default": "new Map()",
1825
- "description": "Row submit statuses for bulk insert mode.\nPassed from the parent foundation-form."
1826
- },
1827
- {
1828
- "kind": "method",
1829
- "name": "rowSubmitStatusesChanged"
1830
- },
1835
+ "description": "any other field"
1836
+ }
1837
+ ],
1838
+ "description": "Ensures the value of the current field (the one the validator is on) matches the one of the target field.",
1839
+ "return": {
1840
+ "type": {
1841
+ "text": ""
1842
+ }
1843
+ },
1844
+ "privacy": "public"
1845
+ },
1846
+ {
1847
+ "kind": "function",
1848
+ "name": "getAnyOfErrorMessage",
1849
+ "return": {
1850
+ "type": {
1851
+ "text": "string"
1852
+ }
1853
+ },
1854
+ "parameters": [
1831
1855
  {
1832
- "kind": "field",
1833
- "name": "bulkInsert",
1856
+ "name": "errors",
1834
1857
  "type": {
1835
- "text": "boolean"
1836
- },
1837
- "default": "false",
1838
- "description": "Whether the form is in bulk insert mode.\nPassed from the parent foundation-form."
1839
- },
1840
- {
1841
- "kind": "method",
1842
- "name": "bulkInsertChanged"
1858
+ "text": "Array<any> | undefined"
1859
+ }
1843
1860
  },
1844
1861
  {
1845
- "kind": "field",
1846
- "name": "props",
1862
+ "name": "schema",
1847
1863
  "type": {
1848
- "text": "RendererProps"
1849
- },
1850
- "readonly": true
1851
- },
1852
- {
1853
- "kind": "field",
1854
- "name": "dispatch"
1855
- },
1856
- {
1857
- "kind": "field",
1858
- "name": "validate",
1859
- "description": "Performs client-side validation by running the validator defined in the UI schema.",
1860
- "parameters": [
1861
- {
1862
- "description": "the UI schema",
1863
- "name": "uischema"
1864
- }
1865
- ],
1866
- "return": {
1867
- "type": {
1868
- "text": ""
1869
- }
1864
+ "text": "any"
1870
1865
  }
1871
1866
  },
1872
1867
  {
1873
- "kind": "method",
1874
- "name": "copyUISchemaToClipboard"
1875
- }
1876
- ],
1877
- "events": [
1878
- {
1879
- "description": "Bubbles from nested dispatch-renderer when a control emits change (e.g. multiselect)",
1880
- "name": "change"
1881
- },
1882
- {
1883
- "description": "Fired when bound form data changes",
1884
- "name": "data-change"
1885
- }
1886
- ],
1887
- "attributes": [
1888
- {
1868
+ "name": "controlPath",
1889
1869
  "type": {
1890
- "text": "boolean"
1891
- },
1892
- "fieldName": "submitted"
1870
+ "text": "string | undefined"
1871
+ }
1893
1872
  },
1894
1873
  {
1874
+ "name": "uiCustomMsg",
1875
+ "optional": true,
1895
1876
  "type": {
1896
- "text": "boolean"
1897
- },
1898
- "fieldName": "readonly"
1877
+ "text": "string"
1878
+ }
1899
1879
  }
1900
1880
  ],
1901
- "superclass": {
1902
- "name": "FASTElement",
1903
- "package": "@microsoft/fast-element"
1904
- },
1905
- "tagName": "json-forms",
1906
- "customElement": true
1881
+ "description": "Computes a human-friendly anyOf error message for a given control path.\nPrefers UI schema custom message, then JSON schema errorMessage.anyOf, then a constructed fallback.",
1882
+ "privacy": "public"
1907
1883
  }
1908
1884
  ],
1909
1885
  "exports": [
1910
1886
  {
1911
1887
  "kind": "js",
1912
- "name": "JSONForms",
1888
+ "name": "mustMatch",
1913
1889
  "declaration": {
1914
- "name": "JSONForms",
1915
- "module": "src/jsonforms/json-forms.ts"
1890
+ "name": "mustMatch",
1891
+ "module": "src/utils/validation.ts"
1916
1892
  }
1917
1893
  },
1918
1894
  {
1919
- "kind": "custom-element-definition",
1920
- "name": "json-forms",
1895
+ "kind": "js",
1896
+ "name": "getAnyOfErrorMessage",
1921
1897
  "declaration": {
1922
- "name": "JSONForms",
1923
- "module": "src/jsonforms/json-forms.ts"
1898
+ "name": "getAnyOfErrorMessage",
1899
+ "module": "src/utils/validation.ts"
1924
1900
  }
1925
1901
  }
1926
1902
  ]
@@ -2290,31 +2266,113 @@
2290
2266
  "path": "src/jsonforms/renderers/ControlWrapperRenderer.ts",
2291
2267
  "declarations": [
2292
2268
  {
2293
- "kind": "function",
2294
- "name": "controlWrapperTemplate",
2295
- "return": {
2296
- "type": {
2297
- "text": "ViewTemplate<DispatchRenderer>"
2298
- }
2299
- },
2300
- "parameters": [
2269
+ "kind": "variable",
2270
+ "name": "ControlWrapperRendererTemplate",
2271
+ "default": "html`\n <template>\n ${when(\n (x) => x.control?.visible,\n html`\n <div\n class=${(x) =>\n classNames(\n ['wrapperRoot', true],\n ['labelLeft', x.jsonForms?.core?.uischema?.options?.labelPlacement === 'left'],\n )}\n id=${(x) => x.control.path + '-wrapper'}\n data-test-id=${(x) => x.control.path + '-wrapper'}\n role=\"group\"\n aria-labelledby=${(x) => (x.computedLabel ? x.control.path + '-label' : null)}\n >\n ${when(\n (x) => x.computedLabel,\n html`\n <label\n id=\"${(x) => x.control.path + '-label'}\"\n for=\"${(x) => x.control.path}\"\n class=\"${(x) => classNames('label', ['visually-hidden', x.hideLabel])}\"\n >\n <span>\n ${(x) => x.computedLabel}${when(\n (x) => x.control.uischema?.options?.tooltip,\n (x) => x.getPrefixedTooltip,\n )}\n </span>\n </label>\n `,\n )}\n\n <div class=\"wrapper\" part=\"wrapper\">\n <slot></slot>\n </div>\n <div\n class=\"${(x) =>\n (x.control.errors || x.anyOfError) && x.touched ? 'error' : 'description'}\"\n >\n ${(x) =>\n x.touched && (x.control.errors || x.anyOfError)\n ? [x.control.errors, x.anyOfError].filter(Boolean).join(' ')\n : x.showDescription\n ? x.control.description\n : ''}\n </div>\n </div>\n `,\n )}\n </template>\n`"
2272
+ },
2273
+ {
2274
+ "kind": "class",
2275
+ "description": "",
2276
+ "name": "ControlWrapper",
2277
+ "members": [
2278
+ {
2279
+ "kind": "field",
2280
+ "name": "control"
2281
+ },
2282
+ {
2283
+ "kind": "field",
2284
+ "name": "jsonForms"
2285
+ },
2286
+ {
2287
+ "kind": "field",
2288
+ "name": "touched",
2289
+ "type": {
2290
+ "text": "boolean"
2291
+ }
2292
+ },
2293
+ {
2294
+ "kind": "field",
2295
+ "name": "hideLabel",
2296
+ "type": {
2297
+ "text": "boolean"
2298
+ },
2299
+ "default": "false"
2300
+ },
2301
2301
  {
2302
- "name": "options",
2302
+ "kind": "field",
2303
+ "name": "prefix",
2303
2304
  "type": {
2304
- "text": "ControlWrapperOptions"
2305
+ "text": "string"
2305
2306
  }
2307
+ },
2308
+ {
2309
+ "kind": "field",
2310
+ "name": "showDescription",
2311
+ "readonly": true
2312
+ },
2313
+ {
2314
+ "kind": "field",
2315
+ "name": "computedLabel",
2316
+ "readonly": true
2317
+ },
2318
+ {
2319
+ "kind": "field",
2320
+ "name": "getPrefixedTooltip",
2321
+ "readonly": true
2322
+ },
2323
+ {
2324
+ "kind": "field",
2325
+ "name": "anyOfError",
2326
+ "readonly": true
2306
2327
  }
2307
2328
  ],
2308
- "description": "Light-DOM-friendly control wrapper that replaces the former `<control-wrapper>`\ncustom element. Renders label, error/description slots, and composes a provided\ninner control template inline within the renderer's template so that bindings\nstay on the `DispatchRenderer` source.",
2309
- "privacy": "public"
2329
+ "attributes": [
2330
+ {
2331
+ "name": "hide-label",
2332
+ "type": {
2333
+ "text": "boolean"
2334
+ },
2335
+ "default": "false",
2336
+ "fieldName": "hideLabel"
2337
+ },
2338
+ {
2339
+ "name": "prefix",
2340
+ "type": {
2341
+ "text": "string"
2342
+ },
2343
+ "fieldName": "prefix"
2344
+ }
2345
+ ],
2346
+ "superclass": {
2347
+ "name": "FASTElement",
2348
+ "package": "@microsoft/fast-element"
2349
+ },
2350
+ "tagName": "control-wrapper",
2351
+ "customElement": true
2310
2352
  }
2311
2353
  ],
2312
2354
  "exports": [
2313
2355
  {
2314
2356
  "kind": "js",
2315
- "name": "controlWrapperTemplate",
2357
+ "name": "ControlWrapperRendererTemplate",
2316
2358
  "declaration": {
2317
- "name": "controlWrapperTemplate",
2359
+ "name": "ControlWrapperRendererTemplate",
2360
+ "module": "src/jsonforms/renderers/ControlWrapperRenderer.ts"
2361
+ }
2362
+ },
2363
+ {
2364
+ "kind": "js",
2365
+ "name": "ControlWrapper",
2366
+ "declaration": {
2367
+ "name": "ControlWrapper",
2368
+ "module": "src/jsonforms/renderers/ControlWrapperRenderer.ts"
2369
+ }
2370
+ },
2371
+ {
2372
+ "kind": "custom-element-definition",
2373
+ "name": "control-wrapper",
2374
+ "declaration": {
2375
+ "name": "ControlWrapper",
2318
2376
  "module": "src/jsonforms/renderers/ControlWrapperRenderer.ts"
2319
2377
  }
2320
2378
  }
@@ -2343,7 +2401,7 @@
2343
2401
  "type": {
2344
2402
  "text": "RendererEntry"
2345
2403
  },
2346
- "default": "{\n renderer: html`\n ${(x) => DateControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(DATE_CONTROL_RANK, isOneOfDate),\n mapper: mapStateToControlProps,\n}"
2404
+ "default": "{\n renderer: html`\n ${(x) => DateControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(DATE_CONTROL_RANK, isOneOfDate),\n mapper: mapStateToControlProps, // TODO: change mapper to handle dates instead of doing it in the template\n}"
2347
2405
  }
2348
2406
  ],
2349
2407
  "exports": [
@@ -2556,7 +2614,7 @@
2556
2614
  "type": {
2557
2615
  "text": "RendererEntry"
2558
2616
  },
2559
- "default": "{\n renderer: html`\n ${(x) => DateControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(DATE_CONTROL_RANK, isOneOfDate),\n mapper: mapStateToControlProps,\n}"
2617
+ "default": "{\n renderer: html`\n ${(x) => DateControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(DATE_CONTROL_RANK, isOneOfDate),\n mapper: mapStateToControlProps, // TODO: change mapper to handle dates instead of doing it in the template\n}"
2560
2618
  }
2561
2619
  ],
2562
2620
  "exports": [
@@ -2646,7 +2704,7 @@
2646
2704
  "type": {
2647
2705
  "text": "RendererEntry"
2648
2706
  },
2649
- "default": "{\n renderer: html`\n ${(x) => TimeControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(TIME_CONTROL_RANK, isOneOfTime),\n mapper: mapStateToControlProps,\n}"
2707
+ "default": "{\n renderer: html`\n ${(x) => TimeControlRendererTemplate(x.prefix)}\n `,\n tester: rankWith(TIME_CONTROL_RANK, isOneOfTime),\n mapper: mapStateToControlProps, // TODO: change mapper to handle dates instead of doing it in the template\n}"
2650
2708
  }
2651
2709
  ],
2652
2710
  "exports": [
@@ -2712,7 +2770,7 @@
2712
2770
  {
2713
2771
  "kind": "variable",
2714
2772
  "name": "LayoutArrayRendererTemplate",
2715
- "default": "html<DispatchRenderer>`\n <template>\n <div style=\"${(x) => (x.control.uischema.options?.border ? borderStyle : '')}\">\n ${controlWrapperTemplate({\n prefix: 'zero',\n innerTemplate: html<DispatchRenderer>`\n <array-list-wrapper :form=${(x) => x} :control=${(x) => x.control}></array-list-wrapper>\n `,\n })}\n </div>\n </template>\n`"
2773
+ "default": "html`\n <template>\n <div style=\"${(x) => (x.control.uischema.options?.border ? borderStyle : '')}\">\n <control-wrapper\n :control=${(x) => x.control}\n :jsonForms=${(x) => x.jsonforms}\n :touched=${(x) => x.touched}\n ?submitted=${(x) => x.submitted}\n >\n <array-list-wrapper :form=${(x) => x} :control=${(x) => x.control}></array-list-wrapper>\n </control-wrapper>\n </div>\n </template>\n`"
2716
2774
  },
2717
2775
  {
2718
2776
  "kind": "variable",
@@ -2786,7 +2844,7 @@
2786
2844
  {
2787
2845
  "kind": "variable",
2788
2846
  "name": "LayoutFormGridRendererTemplate",
2789
- "default": "html<DispatchRenderer>`\n <template>\n ${layoutWrapperTemplate({\n innerTemplate: html<DispatchRenderer>`\n <div\n style=\"\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 8px;\n \"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n `,\n })}\n </template>\n`"
2847
+ "default": "html`\n <template>\n <layout-wrapper :control=${(x) => x.control}>\n <div\n style=\"\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 8px;\n \"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n </layout-wrapper>\n </template>\n`"
2790
2848
  },
2791
2849
  {
2792
2850
  "kind": "variable",
@@ -2823,7 +2881,7 @@
2823
2881
  {
2824
2882
  "kind": "variable",
2825
2883
  "name": "LayoutGroupRendererTemplate",
2826
- "default": "html<DispatchRenderer>`\n <template>\n ${layoutWrapperTemplate({\n hideLabel: true,\n innerTemplate: html<DispatchRenderer>`\n <div>\n ${when(\n (x) => x.control.label,\n html<DispatchRenderer>`\n <div\n for=\"${(x) => x.control.path + '-wrapper'}\"\n style=\"color: var(--neutral-foreground-rest);\n padding-bottom: calc(var(--design-unit) * 1px);\n margin-bottom: calc(var(--design-unit) * 4px);\n font-weight: 600;\n font-size: var(--type-ramp-base-font-size);\n display: flex;\n justify-content: space-between;\"\n >\n ${(x) => x.control.label}\n </div>\n `,\n )}\n ${repeat(\n (x) => x.control.uischema.options.childElements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n `,\n })}\n </template>\n`"
2884
+ "default": "html`\n <template>\n <layout-wrapper :control=${(x) => x.control} hide-label>\n <div>\n ${when(\n (x) => x.control.label,\n html`\n <div\n for=\"${(x) => x.control.path + '-wrapper'}\"\n style=\"color: var(--neutral-foreground-rest);\n padding-bottom: calc(var(--design-unit) * 1px);\n margin-bottom: calc(var(--design-unit) * 4px);\n font-weight: 600;\n font-size: var(--type-ramp-base-font-size);\n display: flex;\n justify-content: space-between;\"\n >\n ${(x) => x.control.label}\n </div>\n `,\n )}\n ${repeat(\n (x) => x.control.uischema.options.childElements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n </layout-wrapper>\n </template>\n`"
2827
2885
  },
2828
2886
  {
2829
2887
  "kind": "variable",
@@ -2860,7 +2918,7 @@
2860
2918
  {
2861
2919
  "kind": "variable",
2862
2920
  "name": "LayoutHorizontalRendererTemplate",
2863
- "default": "html<DispatchRenderer>`\n <template>\n ${layoutWrapperTemplate({\n innerTemplate: html<DispatchRenderer>`\n <div\n style=\"\n display: flex;\n flex-direction: row;\n gap: 10px\"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n style=\"flex: 1; min-width: 0\"\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n `,\n })}\n </template>\n`"
2921
+ "default": "html`\n <template>\n <layout-wrapper :control=${(x) => x.control}>\n <div\n style=\"\n display: flex;\n flex-direction: row;\n gap: 10px\"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n style=\"flex: 1; min-width: 0\"\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n </layout-wrapper>\n </template>\n`"
2864
2922
  },
2865
2923
  {
2866
2924
  "kind": "variable",
@@ -2895,28 +2953,44 @@
2895
2953
  "path": "src/jsonforms/renderers/LayoutRenderer.ts",
2896
2954
  "declarations": [
2897
2955
  {
2898
- "kind": "function",
2899
- "name": "layoutWrapperTemplate",
2900
- "return": {
2901
- "type": {
2902
- "text": "ViewTemplate<DispatchRenderer>"
2956
+ "kind": "class",
2957
+ "description": "",
2958
+ "name": "LayoutWrapper",
2959
+ "members": [
2960
+ {
2961
+ "kind": "field",
2962
+ "name": "control"
2963
+ },
2964
+ {
2965
+ "kind": "field",
2966
+ "name": "hideLabel",
2967
+ "type": {
2968
+ "text": "boolean"
2969
+ },
2970
+ "default": "false"
2903
2971
  }
2904
- },
2905
- "parameters": [
2972
+ ],
2973
+ "attributes": [
2906
2974
  {
2907
- "name": "options",
2975
+ "name": "hide-label",
2908
2976
  "type": {
2909
- "text": "LayoutWrapperOptions"
2910
- }
2977
+ "text": "boolean"
2978
+ },
2979
+ "default": "false",
2980
+ "fieldName": "hideLabel"
2911
2981
  }
2912
2982
  ],
2913
- "description": "Light-DOM-friendly layout wrapper that replaces the former `<layout-wrapper>`\ncustom element. Renders the (optional) control label and, when the control is\nvisible, composes the provided inner template inline so that bindings stay on\nthe `DispatchRenderer` source.",
2914
- "privacy": "public"
2983
+ "superclass": {
2984
+ "name": "FASTElement",
2985
+ "package": "@microsoft/fast-element"
2986
+ },
2987
+ "tagName": "layout-wrapper",
2988
+ "customElement": true
2915
2989
  },
2916
2990
  {
2917
2991
  "kind": "variable",
2918
2992
  "name": "LayoutRendererTemplate",
2919
- "default": "html<DispatchRenderer>`\n <template>\n ${layoutWrapperTemplate({\n innerTemplate: html<DispatchRenderer>`\n <div>\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n `,\n })}\n </template>\n`"
2993
+ "default": "html`\n <template>\n <layout-wrapper :control=${(x) => x.control}>\n <div>\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n `,\n )}\n </div>\n </layout-wrapper>\n </template>\n`"
2920
2994
  },
2921
2995
  {
2922
2996
  "kind": "variable",
@@ -2930,9 +3004,17 @@
2930
3004
  "exports": [
2931
3005
  {
2932
3006
  "kind": "js",
2933
- "name": "layoutWrapperTemplate",
3007
+ "name": "LayoutWrapper",
3008
+ "declaration": {
3009
+ "name": "LayoutWrapper",
3010
+ "module": "src/jsonforms/renderers/LayoutRenderer.ts"
3011
+ }
3012
+ },
3013
+ {
3014
+ "kind": "custom-element-definition",
3015
+ "name": "layout-wrapper",
2934
3016
  "declaration": {
2935
- "name": "layoutWrapperTemplate",
3017
+ "name": "LayoutWrapper",
2936
3018
  "module": "src/jsonforms/renderers/LayoutRenderer.ts"
2937
3019
  }
2938
3020
  },
@@ -2998,7 +3080,7 @@
2998
3080
  {
2999
3081
  "kind": "variable",
3000
3082
  "name": "LayoutVertical2ColumnsRendererTemplate",
3001
- "default": "html<DispatchRenderer>`\n <template>\n ${layoutWrapperTemplate({\n innerTemplate: html<DispatchRenderer>`\n <div\n style=\"\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: space-between;\"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <div style=\"width: 49%\">\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n </div>\n `,\n )}\n </div>\n `,\n })}\n </template>\n`"
3083
+ "default": "html`\n <template>\n <layout-wrapper :control=${(x) => x.control}>\n <div\n style=\"\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: space-between;\"\n >\n ${repeat(\n (x) => x.control.uischema.elements,\n html`\n <div style=\"width: 49%\">\n <dispatch-renderer\n ?submitted=${(x, ctx) => ctx.parent.submitted}\n :dispatch=${(x, ctx) => ctx.parent.dispatch}\n :jsonforms=${(x, ctx) => ctx.parent.jsonforms}\n :prefix=${(x, ctx) => ctx.parent.prefix}\n :props=${(x, ctx) => ({\n uischema: x,\n schema: ctx.parent.control.schema,\n renderers: ctx.parent.control.renderers,\n path: ctx.parent.control.path,\n enabled: ctx.parent.control.enabled,\n })}\n ></dispatch-renderer>\n </div>\n </div>\n `,\n )}\n </layout-wrapper>\n </template>\n`"
3002
3084
  },
3003
3085
  {
3004
3086
  "kind": "variable",