@cratis/components 4.23.1 → 4.25.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 (346) hide show
  1. package/compat-manifest.json +11 -11
  2. package/dist/esm/Common/CratisComponentsProvider.d.ts +2 -0
  3. package/dist/esm/Common/CratisComponentsProvider.d.ts.map +1 -1
  4. package/dist/esm/Common/CratisComponentsProvider.js.map +1 -1
  5. package/dist/esm/ConfigurationEditor/ConfigurationDestination.d.ts +13 -0
  6. package/dist/esm/ConfigurationEditor/ConfigurationDestination.d.ts.map +1 -0
  7. package/dist/esm/ConfigurationEditor/ConfigurationDestination.js +4 -0
  8. package/dist/esm/ConfigurationEditor/ConfigurationDestination.js.map +1 -0
  9. package/dist/esm/ConfigurationEditor/ConfigurationEditor.d.ts +27 -0
  10. package/dist/esm/ConfigurationEditor/ConfigurationEditor.d.ts.map +1 -0
  11. package/dist/esm/ConfigurationEditor/ConfigurationEditor.js +13 -0
  12. package/dist/esm/ConfigurationEditor/ConfigurationEditor.js.map +1 -0
  13. package/dist/esm/ConfigurationEditor/ConfigurationEditorPartAttributes.d.ts +6 -0
  14. package/dist/esm/ConfigurationEditor/ConfigurationEditorPartAttributes.d.ts.map +1 -0
  15. package/dist/esm/ConfigurationEditor/ConfigurationEditorPartAttributes.js +4 -0
  16. package/dist/esm/ConfigurationEditor/ConfigurationEditorPartAttributes.js.map +1 -0
  17. package/dist/esm/ConfigurationEditor/ConfigurationEditorProvider.d.ts +28 -0
  18. package/dist/esm/ConfigurationEditor/ConfigurationEditorProvider.d.ts.map +1 -0
  19. package/dist/esm/ConfigurationEditor/ConfigurationEditorProvider.js +16 -0
  20. package/dist/esm/ConfigurationEditor/ConfigurationEditorProvider.js.map +1 -0
  21. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderProps.d.ts +20 -0
  22. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderProps.d.ts.map +1 -0
  23. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderProps.js +4 -0
  24. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderProps.js.map +1 -0
  25. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderer.d.ts +5 -0
  26. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderer.d.ts.map +1 -0
  27. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderer.js +4 -0
  28. package/dist/esm/ConfigurationEditor/ConfigurationEditorRenderer.js.map +1 -0
  29. package/dist/esm/ConfigurationEditor/ConfigurationIconReference.d.ts +17 -0
  30. package/dist/esm/ConfigurationEditor/ConfigurationIconReference.d.ts.map +1 -0
  31. package/dist/esm/ConfigurationEditor/ConfigurationIconReference.js +4 -0
  32. package/dist/esm/ConfigurationEditor/ConfigurationIconReference.js.map +1 -0
  33. package/dist/esm/ConfigurationEditor/OrderedItem.d.ts +16 -0
  34. package/dist/esm/ConfigurationEditor/OrderedItem.d.ts.map +1 -0
  35. package/dist/esm/ConfigurationEditor/OrderedItem.js +4 -0
  36. package/dist/esm/ConfigurationEditor/OrderedItem.js.map +1 -0
  37. package/dist/esm/ConfigurationEditor/OrderedItemCapabilities.d.ts +23 -0
  38. package/dist/esm/ConfigurationEditor/OrderedItemCapabilities.d.ts.map +1 -0
  39. package/dist/esm/ConfigurationEditor/OrderedItemCapabilities.js +4 -0
  40. package/dist/esm/ConfigurationEditor/OrderedItemCapabilities.js.map +1 -0
  41. package/dist/esm/ConfigurationEditor/OrderedItemDestinationField.d.ts +22 -0
  42. package/dist/esm/ConfigurationEditor/OrderedItemDestinationField.d.ts.map +1 -0
  43. package/dist/esm/ConfigurationEditor/OrderedItemDestinationField.js +23 -0
  44. package/dist/esm/ConfigurationEditor/OrderedItemDestinationField.js.map +1 -0
  45. package/dist/esm/ConfigurationEditor/OrderedItemEditor.d.ts +74 -0
  46. package/dist/esm/ConfigurationEditor/OrderedItemEditor.d.ts.map +1 -0
  47. package/dist/esm/ConfigurationEditor/OrderedItemEditor.js +188 -0
  48. package/dist/esm/ConfigurationEditor/OrderedItemEditor.js.map +1 -0
  49. package/dist/esm/ConfigurationEditor/OrderedItemEditorParts.d.ts +43 -0
  50. package/dist/esm/ConfigurationEditor/OrderedItemEditorParts.d.ts.map +1 -0
  51. package/dist/esm/ConfigurationEditor/OrderedItemEditorParts.js +4 -0
  52. package/dist/esm/ConfigurationEditor/OrderedItemEditorParts.js.map +1 -0
  53. package/dist/esm/ConfigurationEditor/OrderedItemField.d.ts +3 -0
  54. package/dist/esm/ConfigurationEditor/OrderedItemField.d.ts.map +1 -0
  55. package/dist/esm/ConfigurationEditor/OrderedItemField.js +4 -0
  56. package/dist/esm/ConfigurationEditor/OrderedItemField.js.map +1 -0
  57. package/dist/esm/ConfigurationEditor/OrderedItemFieldAccess.d.ts +9 -0
  58. package/dist/esm/ConfigurationEditor/OrderedItemFieldAccess.d.ts.map +1 -0
  59. package/dist/esm/ConfigurationEditor/OrderedItemFieldAccess.js +4 -0
  60. package/dist/esm/ConfigurationEditor/OrderedItemFieldAccess.js.map +1 -0
  61. package/dist/esm/ConfigurationEditor/OrderedItemIconField.d.ts +32 -0
  62. package/dist/esm/ConfigurationEditor/OrderedItemIconField.d.ts.map +1 -0
  63. package/dist/esm/ConfigurationEditor/OrderedItemIconField.js +26 -0
  64. package/dist/esm/ConfigurationEditor/OrderedItemIconField.js.map +1 -0
  65. package/dist/esm/ConfigurationEditor/OrderedItemIconFieldProps.d.ts +26 -0
  66. package/dist/esm/ConfigurationEditor/OrderedItemIconFieldProps.d.ts.map +1 -0
  67. package/dist/esm/ConfigurationEditor/OrderedItemIconFieldProps.js +4 -0
  68. package/dist/esm/ConfigurationEditor/OrderedItemIconFieldProps.js.map +1 -0
  69. package/dist/esm/ConfigurationEditor/OrderedItemLabels.d.ts +47 -0
  70. package/dist/esm/ConfigurationEditor/OrderedItemLabels.d.ts.map +1 -0
  71. package/dist/esm/ConfigurationEditor/OrderedItemLabels.js +4 -0
  72. package/dist/esm/ConfigurationEditor/OrderedItemLabels.js.map +1 -0
  73. package/dist/esm/ConfigurationEditor/OrderedItemOperation.d.ts +3 -0
  74. package/dist/esm/ConfigurationEditor/OrderedItemOperation.d.ts.map +1 -0
  75. package/dist/esm/ConfigurationEditor/OrderedItemOperation.js +4 -0
  76. package/dist/esm/ConfigurationEditor/OrderedItemOperation.js.map +1 -0
  77. package/dist/esm/ConfigurationEditor/OrderedItemProposal.d.ts +45 -0
  78. package/dist/esm/ConfigurationEditor/OrderedItemProposal.d.ts.map +1 -0
  79. package/dist/esm/ConfigurationEditor/OrderedItemProposal.js +4 -0
  80. package/dist/esm/ConfigurationEditor/OrderedItemProposal.js.map +1 -0
  81. package/dist/esm/ConfigurationEditor/OrderedItemRow.d.ts +5 -0
  82. package/dist/esm/ConfigurationEditor/OrderedItemRow.d.ts.map +1 -0
  83. package/dist/esm/ConfigurationEditor/OrderedItemRow.js +59 -0
  84. package/dist/esm/ConfigurationEditor/OrderedItemRow.js.map +1 -0
  85. package/dist/esm/ConfigurationEditor/OrderedItemRowProps.d.ts +43 -0
  86. package/dist/esm/ConfigurationEditor/OrderedItemRowProps.d.ts.map +1 -0
  87. package/dist/esm/ConfigurationEditor/OrderedItemRowProps.js +4 -0
  88. package/dist/esm/ConfigurationEditor/OrderedItemRowProps.js.map +1 -0
  89. package/dist/esm/ConfigurationEditor/OrderedItemValidation.d.ts +7 -0
  90. package/dist/esm/ConfigurationEditor/OrderedItemValidation.d.ts.map +1 -0
  91. package/dist/esm/ConfigurationEditor/OrderedItemValidation.js +4 -0
  92. package/dist/esm/ConfigurationEditor/OrderedItemValidation.js.map +1 -0
  93. package/dist/esm/ConfigurationEditor/PropertyChangeProposal.d.ts +15 -0
  94. package/dist/esm/ConfigurationEditor/PropertyChangeProposal.d.ts.map +1 -0
  95. package/dist/esm/ConfigurationEditor/PropertyChangeProposal.js +4 -0
  96. package/dist/esm/ConfigurationEditor/PropertyChangeProposal.js.map +1 -0
  97. package/dist/esm/ConfigurationEditor/PropertyChoice.d.ts +8 -0
  98. package/dist/esm/ConfigurationEditor/PropertyChoice.d.ts.map +1 -0
  99. package/dist/esm/ConfigurationEditor/PropertyChoice.js +4 -0
  100. package/dist/esm/ConfigurationEditor/PropertyChoice.js.map +1 -0
  101. package/dist/esm/ConfigurationEditor/PropertyControl.d.ts +17 -0
  102. package/dist/esm/ConfigurationEditor/PropertyControl.d.ts.map +1 -0
  103. package/dist/esm/ConfigurationEditor/PropertyControl.js +88 -0
  104. package/dist/esm/ConfigurationEditor/PropertyControl.js.map +1 -0
  105. package/dist/esm/ConfigurationEditor/PropertyControls.d.ts +40 -0
  106. package/dist/esm/ConfigurationEditor/PropertyControls.d.ts.map +1 -0
  107. package/dist/esm/ConfigurationEditor/PropertyControls.js +41 -0
  108. package/dist/esm/ConfigurationEditor/PropertyControls.js.map +1 -0
  109. package/dist/esm/ConfigurationEditor/PropertyControlsLabels.d.ts +18 -0
  110. package/dist/esm/ConfigurationEditor/PropertyControlsLabels.d.ts.map +1 -0
  111. package/dist/esm/ConfigurationEditor/PropertyControlsLabels.js +4 -0
  112. package/dist/esm/ConfigurationEditor/PropertyControlsLabels.js.map +1 -0
  113. package/dist/esm/ConfigurationEditor/PropertyControlsParts.d.ts +31 -0
  114. package/dist/esm/ConfigurationEditor/PropertyControlsParts.d.ts.map +1 -0
  115. package/dist/esm/ConfigurationEditor/PropertyControlsParts.js +4 -0
  116. package/dist/esm/ConfigurationEditor/PropertyControlsParts.js.map +1 -0
  117. package/dist/esm/ConfigurationEditor/PropertyDescriptor.d.ts +55 -0
  118. package/dist/esm/ConfigurationEditor/PropertyDescriptor.d.ts.map +1 -0
  119. package/dist/esm/ConfigurationEditor/PropertyDescriptor.js +4 -0
  120. package/dist/esm/ConfigurationEditor/PropertyDescriptor.js.map +1 -0
  121. package/dist/esm/ConfigurationEditor/PropertyGroup.d.ts +16 -0
  122. package/dist/esm/ConfigurationEditor/PropertyGroup.d.ts.map +1 -0
  123. package/dist/esm/ConfigurationEditor/PropertyGroup.js +4 -0
  124. package/dist/esm/ConfigurationEditor/PropertyGroup.js.map +1 -0
  125. package/dist/esm/ConfigurationEditor/defaultOrderedItemLabels.d.ts +4 -0
  126. package/dist/esm/ConfigurationEditor/defaultOrderedItemLabels.d.ts.map +1 -0
  127. package/dist/esm/ConfigurationEditor/defaultOrderedItemLabels.js +25 -0
  128. package/dist/esm/ConfigurationEditor/defaultOrderedItemLabels.js.map +1 -0
  129. package/dist/esm/ConfigurationEditor/defaultPropertyControlsLabels.d.ts +4 -0
  130. package/dist/esm/ConfigurationEditor/defaultPropertyControlsLabels.d.ts.map +1 -0
  131. package/dist/esm/ConfigurationEditor/defaultPropertyControlsLabels.js +12 -0
  132. package/dist/esm/ConfigurationEditor/defaultPropertyControlsLabels.js.map +1 -0
  133. package/dist/esm/ConfigurationEditor/index.d.ts +32 -0
  134. package/dist/esm/ConfigurationEditor/index.d.ts.map +1 -0
  135. package/dist/esm/ConfigurationEditor/index.js +7 -0
  136. package/dist/esm/ConfigurationEditor/index.js.map +1 -0
  137. package/dist/esm/ConfigurationEditor/moveOrderedItem.d.ts +5 -0
  138. package/dist/esm/ConfigurationEditor/moveOrderedItem.d.ts.map +1 -0
  139. package/dist/esm/ConfigurationEditor/moveOrderedItem.js +9 -0
  140. package/dist/esm/ConfigurationEditor/moveOrderedItem.js.map +1 -0
  141. package/dist/esm/ConfigurationEditor/resolveOrderedItemDropIndex.d.ts +10 -0
  142. package/dist/esm/ConfigurationEditor/resolveOrderedItemDropIndex.d.ts.map +1 -0
  143. package/dist/esm/ConfigurationEditor/resolveOrderedItemDropIndex.js +7 -0
  144. package/dist/esm/ConfigurationEditor/resolveOrderedItemDropIndex.js.map +1 -0
  145. package/dist/esm/ConfigurationEditor/resolveOrderedItemFieldAccess.d.ts +6 -0
  146. package/dist/esm/ConfigurationEditor/resolveOrderedItemFieldAccess.d.ts.map +1 -0
  147. package/dist/esm/ConfigurationEditor/resolveOrderedItemFieldAccess.js +4 -0
  148. package/dist/esm/ConfigurationEditor/resolveOrderedItemFieldAccess.js.map +1 -0
  149. package/dist/esm/ConfigurationEditor/resolveOrderedItemLabels.d.ts +4 -0
  150. package/dist/esm/ConfigurationEditor/resolveOrderedItemLabels.d.ts.map +1 -0
  151. package/dist/esm/ConfigurationEditor/resolveOrderedItemLabels.js +13 -0
  152. package/dist/esm/ConfigurationEditor/resolveOrderedItemLabels.js.map +1 -0
  153. package/dist/esm/ConfigurationEditor/validateOrderedItem.d.ts +18 -0
  154. package/dist/esm/ConfigurationEditor/validateOrderedItem.d.ts.map +1 -0
  155. package/dist/esm/ConfigurationEditor/validateOrderedItem.js +21 -0
  156. package/dist/esm/ConfigurationEditor/validateOrderedItem.js.map +1 -0
  157. package/dist/esm/IconPicker/IconPicker.d.ts +57 -0
  158. package/dist/esm/IconPicker/IconPicker.d.ts.map +1 -0
  159. package/dist/esm/IconPicker/IconPicker.js +59 -0
  160. package/dist/esm/IconPicker/IconPicker.js.map +1 -0
  161. package/dist/esm/IconPicker/IconPickerAllowed.d.ts +8 -0
  162. package/dist/esm/IconPicker/IconPickerAllowed.d.ts.map +1 -0
  163. package/dist/esm/IconPicker/IconPickerAllowed.js +4 -0
  164. package/dist/esm/IconPicker/IconPickerAllowed.js.map +1 -0
  165. package/dist/esm/IconPicker/IconPickerBrowser.d.ts +32 -0
  166. package/dist/esm/IconPicker/IconPickerBrowser.d.ts.map +1 -0
  167. package/dist/esm/IconPicker/IconPickerBrowser.js +4 -0
  168. package/dist/esm/IconPicker/IconPickerBrowser.js.map +1 -0
  169. package/dist/esm/IconPicker/IconPickerBrowserGroup.d.ts +9 -0
  170. package/dist/esm/IconPicker/IconPickerBrowserGroup.d.ts.map +1 -0
  171. package/dist/esm/IconPicker/IconPickerBrowserGroup.js +4 -0
  172. package/dist/esm/IconPicker/IconPickerBrowserGroup.js.map +1 -0
  173. package/dist/esm/IconPicker/IconPickerCatalog.d.ts +19 -0
  174. package/dist/esm/IconPicker/IconPickerCatalog.d.ts.map +1 -0
  175. package/dist/esm/IconPicker/IconPickerCatalog.js +4 -0
  176. package/dist/esm/IconPicker/IconPickerCatalog.js.map +1 -0
  177. package/dist/esm/IconPicker/IconPickerCatalogStatus.d.ts +3 -0
  178. package/dist/esm/IconPicker/IconPickerCatalogStatus.d.ts.map +1 -0
  179. package/dist/esm/IconPicker/IconPickerCatalogStatus.js +4 -0
  180. package/dist/esm/IconPicker/IconPickerCatalogStatus.js.map +1 -0
  181. package/dist/esm/IconPicker/IconPickerCategoryFilter.d.ts +25 -0
  182. package/dist/esm/IconPicker/IconPickerCategoryFilter.d.ts.map +1 -0
  183. package/dist/esm/IconPicker/IconPickerCategoryFilter.js +23 -0
  184. package/dist/esm/IconPicker/IconPickerCategoryFilter.js.map +1 -0
  185. package/dist/esm/IconPicker/IconPickerEntry.d.ts +25 -0
  186. package/dist/esm/IconPicker/IconPickerEntry.d.ts.map +1 -0
  187. package/dist/esm/IconPicker/IconPickerEntry.js +4 -0
  188. package/dist/esm/IconPicker/IconPickerEntry.js.map +1 -0
  189. package/dist/esm/IconPicker/IconPickerGrid.d.ts +29 -0
  190. package/dist/esm/IconPicker/IconPickerGrid.d.ts.map +1 -0
  191. package/dist/esm/IconPicker/IconPickerGrid.js +24 -0
  192. package/dist/esm/IconPicker/IconPickerGrid.js.map +1 -0
  193. package/dist/esm/IconPicker/IconPickerIndexEntry.d.ts +11 -0
  194. package/dist/esm/IconPicker/IconPickerIndexEntry.d.ts.map +1 -0
  195. package/dist/esm/IconPicker/IconPickerIndexEntry.js +4 -0
  196. package/dist/esm/IconPicker/IconPickerIndexEntry.js.map +1 -0
  197. package/dist/esm/IconPicker/IconPickerLabels.d.ts +76 -0
  198. package/dist/esm/IconPicker/IconPickerLabels.d.ts.map +1 -0
  199. package/dist/esm/IconPicker/IconPickerLabels.js +4 -0
  200. package/dist/esm/IconPicker/IconPickerLabels.js.map +1 -0
  201. package/dist/esm/IconPicker/IconPickerLibrary.d.ts +12 -0
  202. package/dist/esm/IconPicker/IconPickerLibrary.d.ts.map +1 -0
  203. package/dist/esm/IconPicker/IconPickerLibrary.js +4 -0
  204. package/dist/esm/IconPicker/IconPickerLibrary.js.map +1 -0
  205. package/dist/esm/IconPicker/IconPickerLibraryFilter.d.ts +20 -0
  206. package/dist/esm/IconPicker/IconPickerLibraryFilter.d.ts.map +1 -0
  207. package/dist/esm/IconPicker/IconPickerLibraryFilter.js +7 -0
  208. package/dist/esm/IconPicker/IconPickerLibraryFilter.js.map +1 -0
  209. package/dist/esm/IconPicker/IconPickerParts.d.ts +65 -0
  210. package/dist/esm/IconPicker/IconPickerParts.d.ts.map +1 -0
  211. package/dist/esm/IconPicker/IconPickerParts.js +4 -0
  212. package/dist/esm/IconPicker/IconPickerParts.js.map +1 -0
  213. package/dist/esm/IconPicker/IconPickerPlacement.d.ts +3 -0
  214. package/dist/esm/IconPicker/IconPickerPlacement.d.ts.map +1 -0
  215. package/dist/esm/IconPicker/IconPickerPlacement.js +4 -0
  216. package/dist/esm/IconPicker/IconPickerPlacement.js.map +1 -0
  217. package/dist/esm/IconPicker/IconPickerPopout.d.ts +32 -0
  218. package/dist/esm/IconPicker/IconPickerPopout.d.ts.map +1 -0
  219. package/dist/esm/IconPicker/IconPickerPopout.js +41 -0
  220. package/dist/esm/IconPicker/IconPickerPopout.js.map +1 -0
  221. package/dist/esm/IconPicker/IconPickerResults.d.ts +31 -0
  222. package/dist/esm/IconPicker/IconPickerResults.d.ts.map +1 -0
  223. package/dist/esm/IconPicker/IconPickerResults.js +21 -0
  224. package/dist/esm/IconPicker/IconPickerResults.js.map +1 -0
  225. package/dist/esm/IconPicker/IconPickerSearch.d.ts +21 -0
  226. package/dist/esm/IconPicker/IconPickerSearch.d.ts.map +1 -0
  227. package/dist/esm/IconPicker/IconPickerSearch.js +21 -0
  228. package/dist/esm/IconPicker/IconPickerSearch.js.map +1 -0
  229. package/dist/esm/IconPicker/IconPickerSummary.d.ts +12 -0
  230. package/dist/esm/IconPicker/IconPickerSummary.d.ts.map +1 -0
  231. package/dist/esm/IconPicker/IconPickerSummary.js +4 -0
  232. package/dist/esm/IconPicker/IconPickerSummary.js.map +1 -0
  233. package/dist/esm/IconPicker/IconPickerTile.d.ts +36 -0
  234. package/dist/esm/IconPicker/IconPickerTile.d.ts.map +1 -0
  235. package/dist/esm/IconPicker/IconPickerTile.js +22 -0
  236. package/dist/esm/IconPicker/IconPickerTile.js.map +1 -0
  237. package/dist/esm/IconPicker/IconPickerTrigger.d.ts +39 -0
  238. package/dist/esm/IconPicker/IconPickerTrigger.d.ts.map +1 -0
  239. package/dist/esm/IconPicker/IconPickerTrigger.js +13 -0
  240. package/dist/esm/IconPicker/IconPickerTrigger.js.map +1 -0
  241. package/dist/esm/IconPicker/IconPickerValue.d.ts +16 -0
  242. package/dist/esm/IconPicker/IconPickerValue.d.ts.map +1 -0
  243. package/dist/esm/IconPicker/IconPickerValue.js +4 -0
  244. package/dist/esm/IconPicker/IconPickerValue.js.map +1 -0
  245. package/dist/esm/IconPicker/createIconPickerIndex.d.ts +10 -0
  246. package/dist/esm/IconPicker/createIconPickerIndex.d.ts.map +1 -0
  247. package/dist/esm/IconPicker/createIconPickerIndex.js +21 -0
  248. package/dist/esm/IconPicker/createIconPickerIndex.js.map +1 -0
  249. package/dist/esm/IconPicker/defaultIconPickerLabels.d.ts +4 -0
  250. package/dist/esm/IconPicker/defaultIconPickerLabels.d.ts.map +1 -0
  251. package/dist/esm/IconPicker/defaultIconPickerLabels.js +35 -0
  252. package/dist/esm/IconPicker/defaultIconPickerLabels.js.map +1 -0
  253. package/dist/esm/IconPicker/formatIconPickerIdentity.d.ts +8 -0
  254. package/dist/esm/IconPicker/formatIconPickerIdentity.d.ts.map +1 -0
  255. package/dist/esm/IconPicker/formatIconPickerIdentity.js +4 -0
  256. package/dist/esm/IconPicker/formatIconPickerIdentity.js.map +1 -0
  257. package/dist/esm/IconPicker/groupIconPickerByCategory.d.ts +10 -0
  258. package/dist/esm/IconPicker/groupIconPickerByCategory.d.ts.map +1 -0
  259. package/dist/esm/IconPicker/groupIconPickerByCategory.js +17 -0
  260. package/dist/esm/IconPicker/groupIconPickerByCategory.js.map +1 -0
  261. package/dist/esm/IconPicker/iconPickerIdentity.d.ts +8 -0
  262. package/dist/esm/IconPicker/iconPickerIdentity.d.ts.map +1 -0
  263. package/dist/esm/IconPicker/iconPickerIdentity.js +4 -0
  264. package/dist/esm/IconPicker/iconPickerIdentity.js.map +1 -0
  265. package/dist/esm/IconPicker/index.d.ts +19 -0
  266. package/dist/esm/IconPicker/index.d.ts.map +1 -0
  267. package/dist/esm/IconPicker/index.js +8 -0
  268. package/dist/esm/IconPicker/index.js.map +1 -0
  269. package/dist/esm/IconPicker/isIconPickerAllowed.d.ts +10 -0
  270. package/dist/esm/IconPicker/isIconPickerAllowed.d.ts.map +1 -0
  271. package/dist/esm/IconPicker/isIconPickerAllowed.js +12 -0
  272. package/dist/esm/IconPicker/isIconPickerAllowed.js.map +1 -0
  273. package/dist/esm/IconPicker/isSameIconPickerValue.d.ts +10 -0
  274. package/dist/esm/IconPicker/isSameIconPickerValue.d.ts.map +1 -0
  275. package/dist/esm/IconPicker/isSameIconPickerValue.js +4 -0
  276. package/dist/esm/IconPicker/isSameIconPickerValue.js.map +1 -0
  277. package/dist/esm/IconPicker/searchIconPickerIndex.d.ts +9 -0
  278. package/dist/esm/IconPicker/searchIconPickerIndex.d.ts.map +1 -0
  279. package/dist/esm/IconPicker/searchIconPickerIndex.js +9 -0
  280. package/dist/esm/IconPicker/searchIconPickerIndex.js.map +1 -0
  281. package/dist/esm/IconPicker/toIconPickerValue.d.ts +9 -0
  282. package/dist/esm/IconPicker/toIconPickerValue.d.ts.map +1 -0
  283. package/dist/esm/IconPicker/toIconPickerValue.js +6 -0
  284. package/dist/esm/IconPicker/toIconPickerValue.js.map +1 -0
  285. package/dist/esm/IconPicker/useGridColumns.d.ts +12 -0
  286. package/dist/esm/IconPicker/useGridColumns.d.ts.map +1 -0
  287. package/dist/esm/IconPicker/useGridColumns.js +26 -0
  288. package/dist/esm/IconPicker/useGridColumns.js.map +1 -0
  289. package/dist/esm/IconPicker/useIconPickerBrowser.d.ts +10 -0
  290. package/dist/esm/IconPicker/useIconPickerBrowser.d.ts.map +1 -0
  291. package/dist/esm/IconPicker/useIconPickerBrowser.js +45 -0
  292. package/dist/esm/IconPicker/useIconPickerBrowser.js.map +1 -0
  293. package/dist/esm/IconPicker/useIsVisible.d.ts +12 -0
  294. package/dist/esm/IconPicker/useIsVisible.d.ts.map +1 -0
  295. package/dist/esm/IconPicker/useIsVisible.js +23 -0
  296. package/dist/esm/IconPicker/useIsVisible.js.map +1 -0
  297. package/dist/esm/IconPicker/useNarrowViewport.d.ts +9 -0
  298. package/dist/esm/IconPicker/useNarrowViewport.d.ts.map +1 -0
  299. package/dist/esm/IconPicker/useNarrowViewport.js +15 -0
  300. package/dist/esm/IconPicker/useNarrowViewport.js.map +1 -0
  301. package/dist/esm/IconPicker/useRovingFocus.d.ts +29 -0
  302. package/dist/esm/IconPicker/useRovingFocus.d.ts.map +1 -0
  303. package/dist/esm/IconPicker/useRovingFocus.js +70 -0
  304. package/dist/esm/IconPicker/useRovingFocus.js.map +1 -0
  305. package/dist/esm/Toolbar/ToolbarButton.d.ts +4 -1
  306. package/dist/esm/Toolbar/ToolbarButton.d.ts.map +1 -1
  307. package/dist/esm/Toolbar/ToolbarButton.js +12 -2
  308. package/dist/esm/Toolbar/ToolbarButton.js.map +1 -1
  309. package/dist/esm/Toolbar/ToolbarDrawerContext.d.ts +13 -0
  310. package/dist/esm/Toolbar/ToolbarDrawerContext.d.ts.map +1 -0
  311. package/dist/esm/Toolbar/ToolbarDrawerContext.js +7 -0
  312. package/dist/esm/Toolbar/ToolbarDrawerContext.js.map +1 -0
  313. package/dist/esm/Toolbar/ToolbarDrawerItem.d.ts +23 -0
  314. package/dist/esm/Toolbar/ToolbarDrawerItem.d.ts.map +1 -0
  315. package/dist/esm/Toolbar/ToolbarDrawerItem.js +4 -0
  316. package/dist/esm/Toolbar/ToolbarDrawerItem.js.map +1 -0
  317. package/dist/esm/Toolbar/ToolbarDrawerPlacement.d.ts +57 -0
  318. package/dist/esm/Toolbar/ToolbarDrawerPlacement.d.ts.map +1 -0
  319. package/dist/esm/Toolbar/ToolbarDrawerPlacement.js +51 -0
  320. package/dist/esm/Toolbar/ToolbarDrawerPlacement.js.map +1 -0
  321. package/dist/esm/Toolbar/ToolbarDrawerTile.d.ts +43 -0
  322. package/dist/esm/Toolbar/ToolbarDrawerTile.d.ts.map +1 -0
  323. package/dist/esm/Toolbar/ToolbarDrawerTile.js +31 -0
  324. package/dist/esm/Toolbar/ToolbarDrawerTile.js.map +1 -0
  325. package/dist/esm/Toolbar/ToolbarFolder.d.ts +51 -5
  326. package/dist/esm/Toolbar/ToolbarFolder.d.ts.map +1 -1
  327. package/dist/esm/Toolbar/ToolbarFolder.js +109 -10
  328. package/dist/esm/Toolbar/ToolbarFolder.js.map +1 -1
  329. package/dist/esm/Toolbar/ToolbarFolderPresentation.d.ts +8 -0
  330. package/dist/esm/Toolbar/ToolbarFolderPresentation.d.ts.map +1 -0
  331. package/dist/esm/Toolbar/ToolbarFolderPresentation.js +4 -0
  332. package/dist/esm/Toolbar/ToolbarFolderPresentation.js.map +1 -0
  333. package/dist/esm/Toolbar/index.d.ts +2 -0
  334. package/dist/esm/Toolbar/index.d.ts.map +1 -1
  335. package/dist/esm/configuration/CratisComponentsDefaults.d.ts.map +1 -1
  336. package/dist/esm/configuration/CratisComponentsDefaults.js +1 -0
  337. package/dist/esm/configuration/CratisComponentsDefaults.js.map +1 -1
  338. package/dist/esm/styles.ConfigurationEditor.css +710 -0
  339. package/dist/esm/styles.IconPicker.css +464 -0
  340. package/dist/esm/styles.Toolbar.css +174 -0
  341. package/dist/esm/styles.css +971 -90
  342. package/dist/esm/types/parts.d.ts +69 -1
  343. package/dist/esm/types/parts.d.ts.map +1 -1
  344. package/dist/esm/types/parts.js +69 -1
  345. package/dist/esm/types/parts.js.map +1 -1
  346. package/package.json +11 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControl.js","sources":["../../../ConfigurationEditor/PropertyControl.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { useEffect, useId, useState } from 'react';\nimport type { PropertyControlsLabels } from './PropertyControlsLabels';\nimport type { PropertyControlsParts } from './PropertyControlsParts';\nimport type { PropertyDescriptor } from './PropertyDescriptor';\n\n/** Props of the internal control that renders one property. */\nexport interface PropertyControlProps {\n descriptor: PropertyDescriptor;\n value: unknown;\n readOnly: boolean;\n message: string | undefined;\n labels: Required<PropertyControlsLabels>;\n parts: PropertyControlsParts | undefined;\n /** Reports a value the person entered. Returns a message when the entry is not acceptable. */\n onChange: (name: string, value: unknown) => string | undefined;\n}\n\nconst join = (...names: Array<string | undefined>) => names.filter(Boolean).join(' ');\n\nconst display = (descriptor: PropertyDescriptor, value: unknown, labels: Required<PropertyControlsLabels>): string => {\n if (value === undefined || value === null || value === '') return labels.unset;\n if (descriptor.kind === 'boolean') return value === true ? labels.on : labels.off;\n if (descriptor.kind === 'choice') return descriptor.options.find((option) => option.value === value)?.label ?? String(value);\n if (descriptor.kind === 'number' && descriptor.unit) return `${String(value)} ${descriptor.unit}`;\n return String(value);\n};\n\nconst parseNumber = (\n text: string,\n descriptor: Extract<PropertyDescriptor, { kind: 'number' }>,\n labels: Required<PropertyControlsLabels>,\n): { value: number | undefined } | { message: string } => {\n if (text.trim().length === 0) return descriptor.required ? { message: labels.required } : { value: undefined };\n const parsed = Number(text);\n if (!Number.isFinite(parsed)) return { message: labels.notANumber };\n if (descriptor.min !== undefined && parsed < descriptor.min) return { message: labels.belowMinimum(descriptor.min) };\n if (descriptor.max !== undefined && parsed > descriptor.max) return { message: labels.aboveMaximum(descriptor.max) };\n return { value: parsed };\n};\n\n/** One labeled property control: text, number, on/off or choice, or its value as text when it cannot change. */\nexport const PropertyControl = ({ descriptor, value, readOnly, message, labels, parts, onChange }: PropertyControlProps) => {\n const identity = useId();\n const controlId = `${identity}-control`;\n const messageId = `${identity}-message`;\n const [draft, setDraft] = useState<string | null>(null);\n const [entryMessage, setEntryMessage] = useState<string | undefined>(undefined);\n const locked = readOnly || descriptor.editable === false;\n const shownMessage = entryMessage ?? message;\n const note = locked ? descriptor.unavailableReason : descriptor.description;\n const noteId = `${identity}-note`;\n const describedBy = [shownMessage ? messageId : undefined, note ? noteId : undefined].filter(Boolean).join(' ') || undefined;\n\n useEffect(() => {\n setDraft(null);\n }, [value]);\n\n const commit = (next: unknown) => {\n setEntryMessage(onChange(descriptor.name, next));\n };\n\n const leave = () => {\n setDraft(null);\n setEntryMessage(undefined);\n };\n\n let control;\n if (locked) {\n control = (\n <span {...parts?.value} className={join('cratis-property__value', parts?.value?.className)} data-cratis-part='value'>\n {display(descriptor, value, labels)}\n </span>\n );\n } else if (descriptor.kind === 'boolean') {\n control = (\n <input\n {...parts?.input}\n id={controlId}\n type='checkbox'\n checked={value === true}\n aria-describedby={describedBy}\n onChange={(event) => commit(event.target.checked)}\n className={join('cratis-property__input', parts?.input?.className)}\n data-cratis-part='input'\n />\n );\n } else if (descriptor.kind === 'choice') {\n const known = descriptor.options.some((option) => option.value === value);\n control = (\n <select\n {...parts?.select}\n id={controlId}\n value={typeof value === 'string' ? value : ''}\n aria-invalid={shownMessage ? true : undefined}\n aria-describedby={describedBy}\n onChange={(event) => commit(event.target.value === '' ? undefined : event.target.value)}\n className={join('cratis-property__input', parts?.select?.className)}\n data-cratis-part='select'\n data-invalid={shownMessage ? true : undefined}\n >\n <option value=''>{labels.unset}</option>\n {typeof value === 'string' && value !== '' && !known && <option value={value}>{value}</option>}\n {descriptor.options.map((option) => (\n <option key={option.value} value={option.value}>{option.label}</option>\n ))}\n </select>\n );\n } else if (descriptor.kind === 'number') {\n control = (\n <input\n {...parts?.input}\n id={controlId}\n type='number'\n inputMode='decimal'\n min={descriptor.min}\n max={descriptor.max}\n step={descriptor.step}\n value={draft ?? (typeof value === 'number' ? String(value) : '')}\n aria-invalid={shownMessage ? true : undefined}\n aria-describedby={describedBy}\n onChange={(event) => {\n setDraft(event.target.value);\n const parsed = parseNumber(event.target.value, descriptor, labels);\n if ('message' in parsed) setEntryMessage(parsed.message);\n else if (parsed.value !== value) commit(parsed.value);\n else setEntryMessage(undefined);\n }}\n onBlur={leave}\n className={join('cratis-property__input', parts?.input?.className)}\n data-cratis-part='input'\n data-invalid={shownMessage ? true : undefined}\n />\n );\n } else {\n control = (\n <input\n {...parts?.input}\n id={controlId}\n type='text'\n placeholder={descriptor.placeholder}\n value={draft ?? (typeof value === 'string' ? value : '')}\n aria-invalid={shownMessage ? true : undefined}\n aria-describedby={describedBy}\n onChange={(event) => {\n setDraft(event.target.value);\n commit(event.target.value === '' ? undefined : event.target.value);\n }}\n onBlur={leave}\n onKeyDown={(event) => {\n if (event.key === 'Escape' && draft !== null) {\n event.preventDefault();\n event.stopPropagation();\n leave();\n }\n }}\n className={join('cratis-property__input', parts?.input?.className)}\n data-cratis-part='input'\n data-invalid={shownMessage ? true : undefined}\n />\n );\n }\n\n return (\n <div\n {...parts?.property}\n className={join('cratis-property', parts?.property?.className)}\n data-cratis-part='property'\n data-property={descriptor.name}\n data-kind={descriptor.kind}\n data-readonly={locked || undefined}\n >\n {locked ? (\n <span {...parts?.label} className={join('cratis-property__label', parts?.label?.className)} data-cratis-part='label'>\n {descriptor.label}\n </span>\n ) : (\n <label {...parts?.label} htmlFor={controlId} className={join('cratis-property__label', parts?.label?.className)} data-cratis-part='label'>\n {descriptor.label}\n </label>\n )}\n {control}\n {!locked && descriptor.kind === 'number' && descriptor.unit && (\n <span {...parts?.unit} className={join('cratis-property__unit', parts?.unit?.className)} data-cratis-part='unit'>\n {descriptor.unit}\n </span>\n )}\n {shownMessage && (\n <p {...parts?.message} id={messageId} role='alert' className={join('cratis-property__message', parts?.message?.className)} data-cratis-part='message' data-invalid>\n {shownMessage}\n </p>\n )}\n {note && (\n <p {...parts?.message} id={noteId} className={join('cratis-property__message cratis-property__message--note', parts?.message?.className)} data-cratis-part='message'>\n {note}\n </p>\n )}\n </div>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { PropertyChangeProposal } from './PropertyChangeProposal.js';
2
+ import type { PropertyControlsLabels } from './PropertyControlsLabels.js';
3
+ import type { PropertyControlsParts } from './PropertyControlsParts.js';
4
+ import type { PropertyGroup } from './PropertyGroup.js';
5
+ /** Props for the {@link PropertyControls} component. */
6
+ export interface PropertyControlsProps {
7
+ /** The controls, in titled groups. The host decides what exists; nothing here knows a component or a layout engine. */
8
+ groups: ReadonlyArray<PropertyGroup>;
9
+ /** The current values by property name. The controls are controlled and show exactly these. */
10
+ values: Readonly<Record<string, unknown>>;
11
+ /** Receives a validated, permitted change. Apply it by passing new `values`; ignore it to cancel. */
12
+ onChange: (proposal: PropertyChangeProposal) => void;
13
+ /** The host's rules, run on a value before it is proposed. A message blocks the proposal. */
14
+ validate?: (name: string, value: unknown, values: Readonly<Record<string, unknown>>) => string | undefined;
15
+ /** Validation feedback from the host by property name, for example from a server-side check. */
16
+ messages?: Readonly<Record<string, string>>;
17
+ /** Shows every value as text without letting any change. */
18
+ readOnly?: boolean;
19
+ /** Overrides for the controls' strings. Unset fields fall back to English. */
20
+ labels?: PropertyControlsLabels;
21
+ /** The controls' accessible name. */
22
+ 'aria-label'?: string;
23
+ /** The id of the element naming the controls. */
24
+ 'aria-labelledby'?: string;
25
+ /** Extra class name on the root. */
26
+ className?: string;
27
+ /** Pass-through attributes for the stable parts. */
28
+ pt?: PropertyControlsParts;
29
+ }
30
+ /**
31
+ * Generic property controls driven by host descriptors: text, number, on/off and choice, in titled
32
+ * groups. Use them for the flow, grid-placement or freeform-placement settings of a layout, for a
33
+ * component's own settings, or as the fallback of a {@link ConfigurationEditor}.
34
+ *
35
+ * The controls hold no layout engine and no component registry. A property the host marks
36
+ * `editable: false` is shown as text with the reason it is unavailable, and a change to it is never
37
+ * proposed.
38
+ */
39
+ export declare const PropertyControls: ({ groups, values, onChange, validate, messages, readOnly, labels: suppliedLabels, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, className, pt, }: PropertyControlsProps) => import("react").JSX.Element;
40
+ //# sourceMappingURL=PropertyControls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControls.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyControls.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAAyB,CAAC;AAErE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAiB,CAAC;AAGrD,wDAAwD;AACxD,MAAM,WAAW,qBAAqB;IAClC,uHAAuH;IACvH,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAErC,+FAA+F;IAC/F,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1C,qGAAqG;IACrG,QAAQ,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAErD,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IAE3G,gGAAgG;IAChG,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAE5C,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAEhC,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oDAAoD;IACpD,EAAE,CAAC,EAAE,qBAAqB,CAAC;CAC9B;AAKD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,mKAY1B,qBAAqB,gCAmEvB,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { useMemo, useId } from 'react';
3
+ import { PropertyControl } from './PropertyControl.js';
4
+ import { defaultPropertyControlsLabels } from './defaultPropertyControlsLabels.js';
5
+
6
+ const findDescriptor = (groups, name) => groups.flatMap((group) => group.properties).find((property) => property.name === name);
7
+ const PropertyControls = ({ groups, values, onChange, validate, messages, readOnly = false, labels: suppliedLabels, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, className, pt, }) => {
8
+ const labels = useMemo(() => {
9
+ const resolved = { ...defaultPropertyControlsLabels };
10
+ for (const [key, value] of Object.entries(suppliedLabels ?? {}))
11
+ if (value !== undefined)
12
+ resolved[key] = value;
13
+ return resolved;
14
+ }, [suppliedLabels]);
15
+ const baseId = useId();
16
+ const handleChange = (name, value) => {
17
+ if (readOnly)
18
+ return undefined;
19
+ const descriptor = findDescriptor(groups, name);
20
+ if (!descriptor || descriptor.editable === false)
21
+ return undefined;
22
+ const previous = values[name];
23
+ if (previous === value)
24
+ return undefined;
25
+ const message = validate?.(name, value, values);
26
+ if (message)
27
+ return message;
28
+ const next = { ...values, [name]: value };
29
+ if (value === undefined)
30
+ delete next[name];
31
+ onChange({ name, value, previous, values: next });
32
+ return undefined;
33
+ };
34
+ return (jsx("div", { ...pt?.root, role: 'group', "aria-label": ariaLabelledBy ? undefined : ariaLabel, "aria-labelledby": ariaLabelledBy, className: ['cratis-property-controls', pt?.root?.className, className].filter(Boolean).join(' '), "data-cratis-part": 'root', children: groups.map((group) => {
35
+ const titleId = `${baseId}-${group.id.replace(/[^A-Za-z0-9_-]/gu, '_')}`;
36
+ return (jsxs("section", { ...pt?.group, "aria-labelledby": titleId, className: ['cratis-property-controls__group', pt?.group?.className].filter(Boolean).join(' '), "data-cratis-part": 'group', "data-group": group.id, children: [jsx("h3", { ...pt?.groupTitle, id: titleId, className: ['cratis-property-controls__title', pt?.groupTitle?.className].filter(Boolean).join(' '), "data-cratis-part": 'groupTitle', children: group.title }), group.description && (jsx("p", { ...pt?.groupDescription, className: ['cratis-property-controls__description', pt?.groupDescription?.className].filter(Boolean).join(' '), "data-cratis-part": 'groupDescription', children: group.description })), group.properties.map((descriptor) => (jsx(PropertyControl, { descriptor: descriptor, value: values[descriptor.name], readOnly: readOnly, message: messages?.[descriptor.name], labels: labels, parts: pt, onChange: handleChange }, descriptor.name)))] }, group.id));
37
+ }) }));
38
+ };
39
+
40
+ export { PropertyControls };
41
+ //# sourceMappingURL=PropertyControls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControls.js","sources":["../../../ConfigurationEditor/PropertyControls.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { useId, useMemo } from 'react';\nimport { PropertyControl } from './PropertyControl';\nimport type { PropertyChangeProposal } from './PropertyChangeProposal';\nimport type { PropertyControlsLabels } from './PropertyControlsLabels';\nimport type { PropertyControlsParts } from './PropertyControlsParts';\nimport type { PropertyDescriptor } from './PropertyDescriptor';\nimport type { PropertyGroup } from './PropertyGroup';\nimport { defaultPropertyControlsLabels } from './defaultPropertyControlsLabels';\n\n/** Props for the {@link PropertyControls} component. */\nexport interface PropertyControlsProps {\n /** The controls, in titled groups. The host decides what exists; nothing here knows a component or a layout engine. */\n groups: ReadonlyArray<PropertyGroup>;\n\n /** The current values by property name. The controls are controlled and show exactly these. */\n values: Readonly<Record<string, unknown>>;\n\n /** Receives a validated, permitted change. Apply it by passing new `values`; ignore it to cancel. */\n onChange: (proposal: PropertyChangeProposal) => void;\n\n /** The host's rules, run on a value before it is proposed. A message blocks the proposal. */\n validate?: (name: string, value: unknown, values: Readonly<Record<string, unknown>>) => string | undefined;\n\n /** Validation feedback from the host by property name, for example from a server-side check. */\n messages?: Readonly<Record<string, string>>;\n\n /** Shows every value as text without letting any change. */\n readOnly?: boolean;\n\n /** Overrides for the controls' strings. Unset fields fall back to English. */\n labels?: PropertyControlsLabels;\n\n /** The controls' accessible name. */\n 'aria-label'?: string;\n\n /** The id of the element naming the controls. */\n 'aria-labelledby'?: string;\n\n /** Extra class name on the root. */\n className?: string;\n\n /** Pass-through attributes for the stable parts. */\n pt?: PropertyControlsParts;\n}\n\nconst findDescriptor = (groups: ReadonlyArray<PropertyGroup>, name: string): PropertyDescriptor | undefined =>\n groups.flatMap((group) => group.properties).find((property) => property.name === name);\n\n/**\n * Generic property controls driven by host descriptors: text, number, on/off and choice, in titled\n * groups. Use them for the flow, grid-placement or freeform-placement settings of a layout, for a\n * component's own settings, or as the fallback of a {@link ConfigurationEditor}.\n *\n * The controls hold no layout engine and no component registry. A property the host marks\n * `editable: false` is shown as text with the reason it is unavailable, and a change to it is never\n * proposed.\n */\nexport const PropertyControls = ({\n groups,\n values,\n onChange,\n validate,\n messages,\n readOnly = false,\n labels: suppliedLabels,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n className,\n pt,\n}: PropertyControlsProps) => {\n const labels = useMemo(() => {\n const resolved: Record<string, unknown> = { ...defaultPropertyControlsLabels };\n for (const [key, value] of Object.entries(suppliedLabels ?? {})) if (value !== undefined) resolved[key] = value;\n return resolved as unknown as Required<PropertyControlsLabels>;\n }, [suppliedLabels]);\n const baseId = useId();\n\n const handleChange = (name: string, value: unknown): string | undefined => {\n if (readOnly) return undefined;\n const descriptor = findDescriptor(groups, name);\n if (!descriptor || descriptor.editable === false) return undefined;\n const previous = values[name];\n if (previous === value) return undefined;\n const message = validate?.(name, value, values);\n if (message) return message;\n const next: Record<string, unknown> = { ...values, [name]: value };\n if (value === undefined) delete next[name];\n onChange({ name, value, previous, values: next });\n return undefined;\n };\n\n return (\n <div\n {...pt?.root}\n role='group'\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={['cratis-property-controls', pt?.root?.className, className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n >\n {groups.map((group) => {\n const titleId = `${baseId}-${group.id.replace(/[^A-Za-z0-9_-]/gu, '_')}`;\n return (\n <section\n key={group.id}\n {...pt?.group}\n aria-labelledby={titleId}\n className={['cratis-property-controls__group', pt?.group?.className].filter(Boolean).join(' ')}\n data-cratis-part='group'\n data-group={group.id}\n >\n <h3 {...pt?.groupTitle} id={titleId} className={['cratis-property-controls__title', pt?.groupTitle?.className].filter(Boolean).join(' ')} data-cratis-part='groupTitle'>\n {group.title}\n </h3>\n {group.description && (\n <p {...pt?.groupDescription} className={['cratis-property-controls__description', pt?.groupDescription?.className].filter(Boolean).join(' ')} data-cratis-part='groupDescription'>\n {group.description}\n </p>\n )}\n {group.properties.map((descriptor) => (\n <PropertyControl\n key={descriptor.name}\n descriptor={descriptor}\n value={values[descriptor.name]}\n readOnly={readOnly}\n message={messages?.[descriptor.name]}\n labels={labels}\n parts={pt}\n onChange={handleChange}\n />\n ))}\n </section>\n );\n })}\n </div>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /** Strings the {@link PropertyControls} own. Unset fields fall back to English. */
2
+ export interface PropertyControlsLabels {
3
+ /** Message for a required number that is empty. */
4
+ required?: string;
5
+ /** Message for text that is not a number. */
6
+ notANumber?: string;
7
+ /** Message for a number below the minimum. */
8
+ belowMinimum?: (minimum: number) => string;
9
+ /** Message for a number above the maximum. */
10
+ aboveMaximum?: (maximum: number) => string;
11
+ /** Text for a choice property that has no value. */
12
+ unset?: string;
13
+ /** Text for an on/off property that is on. */
14
+ on?: string;
15
+ /** Text for an on/off property that is off. */
16
+ off?: string;
17
+ }
18
+ //# sourceMappingURL=PropertyControlsLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControlsLabels.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyControlsLabels.ts"],"names":[],"mappings":"AAGA,mFAAmF;AACnF,MAAM,WAAW,sBAAsB;IACnC,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3C,8CAA8C;IAC9C,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3C,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=PropertyControlsLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControlsLabels.js","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyControlsLabels.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/** Strings the {@link PropertyControls} own. Unset fields fall back to English. */\nexport interface PropertyControlsLabels {\n /** Message for a required number that is empty. */\n required?: string;\n /** Message for text that is not a number. */\n notANumber?: string;\n /** Message for a number below the minimum. */\n belowMinimum?: (minimum: number) => string;\n /** Message for a number above the maximum. */\n aboveMaximum?: (maximum: number) => string;\n /** Text for a choice property that has no value. */\n unset?: string;\n /** Text for an on/off property that is on. */\n on?: string;\n /** Text for an on/off property that is off. */\n off?: string;\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import type { InputHTMLAttributes, SelectHTMLAttributes } from 'react';
2
+ import type { ConfigurationEditorPartAttributes } from './ConfigurationEditorPartAttributes.js';
3
+ /**
4
+ * Stable Cratis-owned parts for styling {@link PropertyControls}. Each is marked with a matching
5
+ * `data-cratis-part` attribute and receives what is passed here; the controls' own wiring wins.
6
+ */
7
+ export interface PropertyControlsParts {
8
+ /** The controls root. */
9
+ root?: ConfigurationEditorPartAttributes<HTMLDivElement>;
10
+ /** One group of controls. Carries `data-group`. */
11
+ group?: ConfigurationEditorPartAttributes<HTMLElement>;
12
+ /** A group's heading. */
13
+ groupTitle?: ConfigurationEditorPartAttributes<HTMLHeadingElement>;
14
+ /** A group's description. */
15
+ groupDescription?: ConfigurationEditorPartAttributes<HTMLParagraphElement>;
16
+ /** One property: its label, control, unit and messages. Carries `data-property`, `data-kind` and `data-readonly`. */
17
+ property?: ConfigurationEditorPartAttributes<HTMLDivElement>;
18
+ /** The property's visible label. A `label` element for an editable property, a `span` for a read-only one. */
19
+ label?: ConfigurationEditorPartAttributes<HTMLElement>;
20
+ /** The text shown for a property that cannot be edited. */
21
+ value?: ConfigurationEditorPartAttributes<HTMLSpanElement>;
22
+ /** The text, number and checkbox inputs. */
23
+ input?: InputHTMLAttributes<HTMLInputElement>;
24
+ /** The choice select. */
25
+ select?: SelectHTMLAttributes<HTMLSelectElement>;
26
+ /** The unit shown after a number. */
27
+ unit?: ConfigurationEditorPartAttributes<HTMLSpanElement>;
28
+ /** A property's description, validation message or reason it is unavailable. */
29
+ message?: ConfigurationEditorPartAttributes<HTMLParagraphElement>;
30
+ }
31
+ //# sourceMappingURL=PropertyControlsParts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControlsParts.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyControlsParts.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,wCAAqC,CAAC;AAE7F;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,yBAAyB;IACzB,IAAI,CAAC,EAAE,iCAAiC,CAAC,cAAc,CAAC,CAAC;IAEzD,mDAAmD;IACnD,KAAK,CAAC,EAAE,iCAAiC,CAAC,WAAW,CAAC,CAAC;IAEvD,yBAAyB;IACzB,UAAU,CAAC,EAAE,iCAAiC,CAAC,kBAAkB,CAAC,CAAC;IAEnE,6BAA6B;IAC7B,gBAAgB,CAAC,EAAE,iCAAiC,CAAC,oBAAoB,CAAC,CAAC;IAE3E,qHAAqH;IACrH,QAAQ,CAAC,EAAE,iCAAiC,CAAC,cAAc,CAAC,CAAC;IAE7D,8GAA8G;IAC9G,KAAK,CAAC,EAAE,iCAAiC,CAAC,WAAW,CAAC,CAAC;IAEvD,2DAA2D;IAC3D,KAAK,CAAC,EAAE,iCAAiC,CAAC,eAAe,CAAC,CAAC;IAE3D,4CAA4C;IAC5C,KAAK,CAAC,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAE9C,yBAAyB;IACzB,MAAM,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAEjD,qCAAqC;IACrC,IAAI,CAAC,EAAE,iCAAiC,CAAC,eAAe,CAAC,CAAC;IAE1D,gFAAgF;IAChF,OAAO,CAAC,EAAE,iCAAiC,CAAC,oBAAoB,CAAC,CAAC;CACrE"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=PropertyControlsParts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyControlsParts.js","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyControlsParts.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { InputHTMLAttributes, SelectHTMLAttributes } from 'react';\nimport type { ConfigurationEditorPartAttributes } from './ConfigurationEditorPartAttributes';\n\n/**\n * Stable Cratis-owned parts for styling {@link PropertyControls}. Each is marked with a matching\n * `data-cratis-part` attribute and receives what is passed here; the controls' own wiring wins.\n */\nexport interface PropertyControlsParts {\n /** The controls root. */\n root?: ConfigurationEditorPartAttributes<HTMLDivElement>;\n\n /** One group of controls. Carries `data-group`. */\n group?: ConfigurationEditorPartAttributes<HTMLElement>;\n\n /** A group's heading. */\n groupTitle?: ConfigurationEditorPartAttributes<HTMLHeadingElement>;\n\n /** A group's description. */\n groupDescription?: ConfigurationEditorPartAttributes<HTMLParagraphElement>;\n\n /** One property: its label, control, unit and messages. Carries `data-property`, `data-kind` and `data-readonly`. */\n property?: ConfigurationEditorPartAttributes<HTMLDivElement>;\n\n /** The property's visible label. A `label` element for an editable property, a `span` for a read-only one. */\n label?: ConfigurationEditorPartAttributes<HTMLElement>;\n\n /** The text shown for a property that cannot be edited. */\n value?: ConfigurationEditorPartAttributes<HTMLSpanElement>;\n\n /** The text, number and checkbox inputs. */\n input?: InputHTMLAttributes<HTMLInputElement>;\n\n /** The choice select. */\n select?: SelectHTMLAttributes<HTMLSelectElement>;\n\n /** The unit shown after a number. */\n unit?: ConfigurationEditorPartAttributes<HTMLSpanElement>;\n\n /** A property's description, validation message or reason it is unavailable. */\n message?: ConfigurationEditorPartAttributes<HTMLParagraphElement>;\n}\n"]}
@@ -0,0 +1,55 @@
1
+ import type { PropertyChoice } from './PropertyChoice.js';
2
+ /** What every property descriptor shares. */
3
+ export interface PropertyDescriptorBase {
4
+ /** Key of the property in the values object. Also the identity of the control. */
5
+ name: string;
6
+ /** Localizable name of the control. */
7
+ label: string;
8
+ /** Optional help text shown with the control. */
9
+ description?: string;
10
+ /** Whether the property can change. Defaults to `true`; `false` shows the value without letting it change. */
11
+ editable?: boolean;
12
+ /** Why the property is not editable. Shown as text next to the control. */
13
+ unavailableReason?: string;
14
+ }
15
+ /** A free-text property. */
16
+ export interface TextPropertyDescriptor extends PropertyDescriptorBase {
17
+ /** Discriminant: a free-text property. */
18
+ kind: 'text';
19
+ /** Hint shown while the field is empty. */
20
+ placeholder?: string;
21
+ }
22
+ /** A numeric property such as a gap, a column count or a span. */
23
+ export interface NumberPropertyDescriptor extends PropertyDescriptorBase {
24
+ /** Discriminant: a numeric property. */
25
+ kind: 'number';
26
+ /** Smallest accepted value. */
27
+ min?: number;
28
+ /** Largest accepted value. */
29
+ max?: number;
30
+ /** Step of the native number input. */
31
+ step?: number;
32
+ /** Unit shown after the field, for example `px` or `columns`. */
33
+ unit?: string;
34
+ /** Whether the property must have a value. An empty required field is invalid; an optional one clears the property. */
35
+ required?: boolean;
36
+ }
37
+ /** An on/off property. */
38
+ export interface BooleanPropertyDescriptor extends PropertyDescriptorBase {
39
+ /** Discriminant: an on/off property. */
40
+ kind: 'boolean';
41
+ }
42
+ /** A property chosen from a fixed set of options. */
43
+ export interface ChoicePropertyDescriptor extends PropertyDescriptorBase {
44
+ /** Discriminant: a property chosen from `options`. */
45
+ kind: 'choice';
46
+ /** The options the host supports for this property. */
47
+ options: ReadonlyArray<PropertyChoice>;
48
+ }
49
+ /**
50
+ * Describes one property control. The host owns what exists and what it means: an alignment, a
51
+ * grid column span or a responsive override are all just descriptors, and nothing here knows a
52
+ * layout engine.
53
+ */
54
+ export type PropertyDescriptor = TextPropertyDescriptor | NumberPropertyDescriptor | BooleanPropertyDescriptor | ChoicePropertyDescriptor;
55
+ //# sourceMappingURL=PropertyDescriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyDescriptor.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyDescriptor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAkB,CAAC;AAEvD,6CAA6C;AAC7C,MAAM,WAAW,sBAAsB;IACnC,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IAEb,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,8GAA8G;IAC9G,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,4BAA4B;AAC5B,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IAClE,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,kEAAkE;AAClE,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACpE,wCAAwC;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,+BAA+B;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uHAAuH;IACvH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,0BAA0B;AAC1B,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACrE,wCAAwC;IACxC,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,qDAAqD;AACrD,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACpE,sDAAsD;IACtD,IAAI,EAAE,QAAQ,CAAC;IACf,uDAAuD;IACvD,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;CAC1C;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GACxB,sBAAsB,GACtB,wBAAwB,GACxB,yBAAyB,GACzB,wBAAwB,CAAC"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=PropertyDescriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyDescriptor.js","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyDescriptor.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { PropertyChoice } from './PropertyChoice';\n\n/** What every property descriptor shares. */\nexport interface PropertyDescriptorBase {\n /** Key of the property in the values object. Also the identity of the control. */\n name: string;\n\n /** Localizable name of the control. */\n label: string;\n\n /** Optional help text shown with the control. */\n description?: string;\n\n /** Whether the property can change. Defaults to `true`; `false` shows the value without letting it change. */\n editable?: boolean;\n\n /** Why the property is not editable. Shown as text next to the control. */\n unavailableReason?: string;\n}\n\n/** A free-text property. */\nexport interface TextPropertyDescriptor extends PropertyDescriptorBase {\n /** Discriminant: a free-text property. */\n kind: 'text';\n /** Hint shown while the field is empty. */\n placeholder?: string;\n}\n\n/** A numeric property such as a gap, a column count or a span. */\nexport interface NumberPropertyDescriptor extends PropertyDescriptorBase {\n /** Discriminant: a numeric property. */\n kind: 'number';\n /** Smallest accepted value. */\n min?: number;\n /** Largest accepted value. */\n max?: number;\n /** Step of the native number input. */\n step?: number;\n /** Unit shown after the field, for example `px` or `columns`. */\n unit?: string;\n /** Whether the property must have a value. An empty required field is invalid; an optional one clears the property. */\n required?: boolean;\n}\n\n/** An on/off property. */\nexport interface BooleanPropertyDescriptor extends PropertyDescriptorBase {\n /** Discriminant: an on/off property. */\n kind: 'boolean';\n}\n\n/** A property chosen from a fixed set of options. */\nexport interface ChoicePropertyDescriptor extends PropertyDescriptorBase {\n /** Discriminant: a property chosen from `options`. */\n kind: 'choice';\n /** The options the host supports for this property. */\n options: ReadonlyArray<PropertyChoice>;\n}\n\n/**\n * Describes one property control. The host owns what exists and what it means: an alignment, a\n * grid column span or a responsive override are all just descriptors, and nothing here knows a\n * layout engine.\n */\nexport type PropertyDescriptor =\n | TextPropertyDescriptor\n | NumberPropertyDescriptor\n | BooleanPropertyDescriptor\n | ChoicePropertyDescriptor;\n"]}
@@ -0,0 +1,16 @@
1
+ import type { PropertyDescriptor } from './PropertyDescriptor.js';
2
+ /**
3
+ * A titled set of property controls, for example the flow, grid-placement or freeform-placement
4
+ * settings of a layout, or the settings that apply at a compact width.
5
+ */
6
+ export interface PropertyGroup {
7
+ /** Stable identity of the group. */
8
+ id: string;
9
+ /** Localizable heading of the group. */
10
+ title: string;
11
+ /** Optional text explaining when the group applies. */
12
+ description?: string;
13
+ /** The controls of the group. */
14
+ properties: ReadonlyArray<PropertyDescriptor>;
15
+ }
16
+ //# sourceMappingURL=PropertyGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyGroup.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyGroup.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAsB,CAAC;AAE/D;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC1B,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IAEX,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IAEd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,iCAAiC;IACjC,UAAU,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;CACjD"}
@@ -0,0 +1,4 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ export {};
4
+ //# sourceMappingURL=PropertyGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyGroup.js","sourceRoot":"","sources":["../../../ConfigurationEditor/PropertyGroup.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { PropertyDescriptor } from './PropertyDescriptor';\n\n/**\n * A titled set of property controls, for example the flow, grid-placement or freeform-placement\n * settings of a layout, or the settings that apply at a compact width.\n */\nexport interface PropertyGroup {\n /** Stable identity of the group. */\n id: string;\n\n /** Localizable heading of the group. */\n title: string;\n\n /** Optional text explaining when the group applies. */\n description?: string;\n\n /** The controls of the group. */\n properties: ReadonlyArray<PropertyDescriptor>;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import type { OrderedItemLabels } from './OrderedItemLabels.js';
2
+ /** The English strings the {@link OrderedItemEditor} falls back to. */
3
+ export declare const defaultOrderedItemLabels: Required<OrderedItemLabels>;
4
+ //# sourceMappingURL=defaultOrderedItemLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultOrderedItemLabels.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/defaultOrderedItemLabels.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAqB,CAAC;AAE7D,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,iBAAiB,CAqBhE,CAAC"}
@@ -0,0 +1,25 @@
1
+ const defaultOrderedItemLabels = {
2
+ fixedItems: 'Fixed items',
3
+ localItems: 'Items',
4
+ locked: 'Locked',
5
+ empty: 'No items yet.',
6
+ add: 'Add item',
7
+ maxItemsReached: 'The maximum number of items has been reached.',
8
+ labelField: 'Label',
9
+ iconField: 'Icon',
10
+ destinationField: 'Destination',
11
+ noDestination: 'No destination',
12
+ noIcon: 'No icon',
13
+ iconUnavailable: 'This icon is no longer available.',
14
+ destinationUnavailable: 'This destination is no longer available.',
15
+ labelRequired: 'Enter a label.',
16
+ remove: (itemLabel) => `Remove ${itemLabel}`,
17
+ moveUp: (itemLabel) => `Move ${itemLabel} up`,
18
+ moveDown: (itemLabel) => `Move ${itemLabel} down`,
19
+ handle: (itemLabel) => `Reorder ${itemLabel}. Press the up or down arrow key to move it.`,
20
+ untitled: 'Untitled item',
21
+ moved: (itemLabel, position, total) => `${itemLabel} moved to position ${position} of ${total}.`,
22
+ };
23
+
24
+ export { defaultOrderedItemLabels };
25
+ //# sourceMappingURL=defaultOrderedItemLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultOrderedItemLabels.js","sources":["../../../ConfigurationEditor/defaultOrderedItemLabels.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { OrderedItemLabels } from './OrderedItemLabels';\n\n/** The English strings the {@link OrderedItemEditor} falls back to. */\nexport const defaultOrderedItemLabels: Required<OrderedItemLabels> = {\n fixedItems: 'Fixed items',\n localItems: 'Items',\n locked: 'Locked',\n empty: 'No items yet.',\n add: 'Add item',\n maxItemsReached: 'The maximum number of items has been reached.',\n labelField: 'Label',\n iconField: 'Icon',\n destinationField: 'Destination',\n noDestination: 'No destination',\n noIcon: 'No icon',\n iconUnavailable: 'This icon is no longer available.',\n destinationUnavailable: 'This destination is no longer available.',\n labelRequired: 'Enter a label.',\n remove: (itemLabel) => `Remove ${itemLabel}`,\n moveUp: (itemLabel) => `Move ${itemLabel} up`,\n moveDown: (itemLabel) => `Move ${itemLabel} down`,\n handle: (itemLabel) => `Reorder ${itemLabel}. Press the up or down arrow key to move it.`,\n untitled: 'Untitled item',\n moved: (itemLabel, position, total) => `${itemLabel} moved to position ${position} of ${total}.`,\n};\n"],"names":[],"mappings":"AAMO,MAAM,wBAAwB,GAAgC;AACjE,IAAA,UAAU,EAAE,aAAa;AACzB,IAAA,UAAU,EAAE,OAAO;AACnB,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,KAAK,EAAE,eAAe;AACtB,IAAA,GAAG,EAAE,UAAU;AACf,IAAA,eAAe,EAAE,+CAA+C;AAChE,IAAA,UAAU,EAAE,OAAO;AACnB,IAAA,SAAS,EAAE,MAAM;AACjB,IAAA,gBAAgB,EAAE,aAAa;AAC/B,IAAA,aAAa,EAAE,gBAAgB;AAC/B,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,eAAe,EAAE,mCAAmC;AACpD,IAAA,sBAAsB,EAAE,0CAA0C;AAClE,IAAA,aAAa,EAAE,gBAAgB;IAC/B,MAAM,EAAE,CAAC,SAAS,KAAK,CAAA,OAAA,EAAU,SAAS,CAAA,CAAE;IAC5C,MAAM,EAAE,CAAC,SAAS,KAAK,CAAA,KAAA,EAAQ,SAAS,CAAA,GAAA,CAAK;IAC7C,QAAQ,EAAE,CAAC,SAAS,KAAK,CAAA,KAAA,EAAQ,SAAS,CAAA,KAAA,CAAO;IACjD,MAAM,EAAE,CAAC,SAAS,KAAK,CAAA,QAAA,EAAW,SAAS,CAAA,4CAAA,CAA8C;AACzF,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,KAAK,GAAG,SAAS,CAAA,mBAAA,EAAsB,QAAQ,CAAA,IAAA,EAAO,KAAK,CAAA,CAAA,CAAG;;;"}
@@ -0,0 +1,4 @@
1
+ import type { PropertyControlsLabels } from './PropertyControlsLabels.js';
2
+ /** The English strings {@link PropertyControls} falls back to. */
3
+ export declare const defaultPropertyControlsLabels: Required<PropertyControlsLabels>;
4
+ //# sourceMappingURL=defaultPropertyControlsLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultPropertyControlsLabels.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/defaultPropertyControlsLabels.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AAEvE,kEAAkE;AAClE,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,sBAAsB,CAQ1E,CAAC"}
@@ -0,0 +1,12 @@
1
+ const defaultPropertyControlsLabels = {
2
+ required: 'Enter a value.',
3
+ notANumber: 'Enter a number.',
4
+ belowMinimum: (minimum) => `Enter ${minimum} or more.`,
5
+ aboveMaximum: (maximum) => `Enter ${maximum} or less.`,
6
+ unset: 'Not set',
7
+ on: 'On',
8
+ off: 'Off',
9
+ };
10
+
11
+ export { defaultPropertyControlsLabels };
12
+ //# sourceMappingURL=defaultPropertyControlsLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultPropertyControlsLabels.js","sources":["../../../ConfigurationEditor/defaultPropertyControlsLabels.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { PropertyControlsLabels } from './PropertyControlsLabels';\n\n/** The English strings {@link PropertyControls} falls back to. */\nexport const defaultPropertyControlsLabels: Required<PropertyControlsLabels> = {\n required: 'Enter a value.',\n notANumber: 'Enter a number.',\n belowMinimum: (minimum) => `Enter ${minimum} or more.`,\n aboveMaximum: (maximum) => `Enter ${maximum} or less.`,\n unset: 'Not set',\n on: 'On',\n off: 'Off',\n};\n"],"names":[],"mappings":"AAMO,MAAM,6BAA6B,GAAqC;AAC3E,IAAA,QAAQ,EAAE,gBAAgB;AAC1B,IAAA,UAAU,EAAE,iBAAiB;IAC7B,YAAY,EAAE,CAAC,OAAO,KAAK,CAAA,MAAA,EAAS,OAAO,CAAA,SAAA,CAAW;IACtD,YAAY,EAAE,CAAC,OAAO,KAAK,CAAA,MAAA,EAAS,OAAO,CAAA,SAAA,CAAW;AACtD,IAAA,KAAK,EAAE,SAAS;AAChB,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,GAAG,EAAE,KAAK;;;"}
@@ -0,0 +1,32 @@
1
+ export { OrderedItemEditor } from './OrderedItemEditor.js';
2
+ export type { OrderedItemEditorProps } from './OrderedItemEditor.js';
3
+ export type { OrderedItem } from './OrderedItem.js';
4
+ export type { OrderedItemCapabilities } from './OrderedItemCapabilities.js';
5
+ export type { OrderedItemEditorParts } from './OrderedItemEditorParts.js';
6
+ export type { OrderedItemField } from './OrderedItemField.js';
7
+ export type { OrderedItemFieldAccess } from './OrderedItemFieldAccess.js';
8
+ export type { OrderedItemIconFieldProps } from './OrderedItemIconFieldProps.js';
9
+ export type { OrderedItemLabels } from './OrderedItemLabels.js';
10
+ export type { OrderedItemOperation } from './OrderedItemOperation.js';
11
+ export type { OrderedItemProposal } from './OrderedItemProposal.js';
12
+ export type { OrderedItemValidation } from './OrderedItemValidation.js';
13
+ export { defaultOrderedItemLabels } from './defaultOrderedItemLabels.js';
14
+ export type { ConfigurationDestination } from './ConfigurationDestination.js';
15
+ export type { ConfigurationIconReference } from './ConfigurationIconReference.js';
16
+ export type { ConfigurationEditorPartAttributes } from './ConfigurationEditorPartAttributes.js';
17
+ export { PropertyControls } from './PropertyControls.js';
18
+ export type { PropertyControlsProps } from './PropertyControls.js';
19
+ export type { PropertyControlsLabels } from './PropertyControlsLabels.js';
20
+ export type { PropertyControlsParts } from './PropertyControlsParts.js';
21
+ export { defaultPropertyControlsLabels } from './defaultPropertyControlsLabels.js';
22
+ export type { PropertyChangeProposal } from './PropertyChangeProposal.js';
23
+ export type { PropertyChoice } from './PropertyChoice.js';
24
+ export type { BooleanPropertyDescriptor, ChoicePropertyDescriptor, NumberPropertyDescriptor, PropertyDescriptor, PropertyDescriptorBase, TextPropertyDescriptor, } from './PropertyDescriptor.js';
25
+ export type { PropertyGroup } from './PropertyGroup.js';
26
+ export { ConfigurationEditor } from './ConfigurationEditor.js';
27
+ export type { ConfigurationEditorProps } from './ConfigurationEditor.js';
28
+ export { ConfigurationEditorProvider, useConfigurationEditor } from './ConfigurationEditorProvider.js';
29
+ export type { ConfigurationEditorMap, ConfigurationEditorProviderProps } from './ConfigurationEditorProvider.js';
30
+ export type { ConfigurationEditorRenderer } from './ConfigurationEditorRenderer.js';
31
+ export type { ConfigurationEditorRenderProps } from './ConfigurationEditorRenderProps.js';
32
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAqB,CAAC;AACxD,YAAY,EAAE,sBAAsB,EAAE,MAAM,wBAAqB,CAAC;AAClE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AACjD,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA2B,CAAC;AACzE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAoB,CAAC;AAC3D,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,YAAY,EAAE,yBAAyB,EAAE,MAAM,gCAA6B,CAAC;AAC7E,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAqB,CAAC;AAC7D,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAAuB,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAAyB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA4B,CAAC;AACtE,YAAY,EAAE,wBAAwB,EAAE,MAAM,+BAA4B,CAAC;AAC3E,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAA8B,CAAC;AAC/E,YAAY,EAAE,iCAAiC,EAAE,MAAM,wCAAqC,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAoB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAoB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAAyB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAiC,CAAC;AAChF,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAkB,CAAC;AACvD,YAAY,EACR,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,GACzB,MAAM,yBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAiB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAAuB,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,kCAA+B,CAAC;AACpG,YAAY,EAAE,sBAAsB,EAAE,gCAAgC,EAAE,MAAM,kCAA+B,CAAC;AAC9G,YAAY,EAAE,2BAA2B,EAAE,MAAM,kCAA+B,CAAC;AACjF,YAAY,EAAE,8BAA8B,EAAE,MAAM,qCAAkC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { OrderedItemEditor } from './OrderedItemEditor.js';
2
+ export { defaultOrderedItemLabels } from './defaultOrderedItemLabels.js';
3
+ export { PropertyControls } from './PropertyControls.js';
4
+ export { defaultPropertyControlsLabels } from './defaultPropertyControlsLabels.js';
5
+ export { ConfigurationEditor } from './ConfigurationEditor.js';
6
+ export { ConfigurationEditorProvider, useConfigurationEditor } from './ConfigurationEditorProvider.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Returns a copy of `items` with the item at `fromIndex` moved to `toIndex`. The input is not changed.
3
+ */
4
+ export declare const moveOrderedItem: <TItem>(items: ReadonlyArray<TItem>, fromIndex: number, toIndex: number) => TItem[];
5
+ //# sourceMappingURL=moveOrderedItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moveOrderedItem.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/moveOrderedItem.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,SAAU,aAAa,CAAC,KAAK,CAAC,aAAa,MAAM,WAAW,MAAM,KAAG,KAAK,EAK9G,CAAC"}
@@ -0,0 +1,9 @@
1
+ const moveOrderedItem = (items, fromIndex, toIndex) => {
2
+ const next = [...items];
3
+ const [moved] = next.splice(fromIndex, 1);
4
+ next.splice(toIndex, 0, moved);
5
+ return next;
6
+ };
7
+
8
+ export { moveOrderedItem };
9
+ //# sourceMappingURL=moveOrderedItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moveOrderedItem.js","sources":["../../../ConfigurationEditor/moveOrderedItem.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/**\n * Returns a copy of `items` with the item at `fromIndex` moved to `toIndex`. The input is not changed.\n */\nexport const moveOrderedItem = <TItem,>(items: ReadonlyArray<TItem>, fromIndex: number, toIndex: number): TItem[] => {\n const next = [...items];\n const [moved] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, moved);\n return next;\n};\n"],"names":[],"mappings":"AAMO,MAAM,eAAe,GAAG,CAAS,KAA2B,EAAE,SAAiB,EAAE,OAAe,KAAa;AAChH,IAAA,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC;AACvB,IAAA,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC;AAC9B,IAAA,OAAO,IAAI;AACf;;"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Resolves where a dragged item ends up when it is dropped before or after another item.
3
+ *
4
+ * @param fromIndex Where the dragged item is now.
5
+ * @param overIndex The index of the item it was dropped on.
6
+ * @param position Whether it was dropped on the leading (`before`) or trailing (`after`) half.
7
+ * @returns The dragged item's index once it has been removed from `fromIndex` and inserted.
8
+ */
9
+ export declare const resolveOrderedItemDropIndex: (fromIndex: number, overIndex: number, position: 'before' | 'after') => number;
10
+ //# sourceMappingURL=resolveOrderedItemDropIndex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemDropIndex.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/resolveOrderedItemDropIndex.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,cACzB,MAAM,aACN,MAAM,YACP,QAAQ,GAAG,OAAO,KAC7B,MAGF,CAAC"}
@@ -0,0 +1,7 @@
1
+ const resolveOrderedItemDropIndex = (fromIndex, overIndex, position) => {
2
+ const insertion = position === 'before' ? overIndex : overIndex + 1;
3
+ return fromIndex < insertion ? insertion - 1 : insertion;
4
+ };
5
+
6
+ export { resolveOrderedItemDropIndex };
7
+ //# sourceMappingURL=resolveOrderedItemDropIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemDropIndex.js","sources":["../../../ConfigurationEditor/resolveOrderedItemDropIndex.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/**\n * Resolves where a dragged item ends up when it is dropped before or after another item.\n *\n * @param fromIndex Where the dragged item is now.\n * @param overIndex The index of the item it was dropped on.\n * @param position Whether it was dropped on the leading (`before`) or trailing (`after`) half.\n * @returns The dragged item's index once it has been removed from `fromIndex` and inserted.\n */\nexport const resolveOrderedItemDropIndex = (\n fromIndex: number,\n overIndex: number,\n position: 'before' | 'after',\n): number => {\n const insertion = position === 'before' ? overIndex : overIndex + 1;\n return fromIndex < insertion ? insertion - 1 : insertion;\n};\n"],"names":[],"mappings":"AAWO,MAAM,2BAA2B,GAAG,CACvC,SAAiB,EACjB,SAAiB,EACjB,QAA4B,KACpB;AACR,IAAA,MAAM,SAAS,GAAG,QAAQ,KAAK,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,CAAC;AACnE,IAAA,OAAO,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS;AAC5D;;"}
@@ -0,0 +1,6 @@
1
+ import type { OrderedItemCapabilities } from './OrderedItemCapabilities.js';
2
+ import type { OrderedItemField } from './OrderedItemField.js';
3
+ import type { OrderedItemFieldAccess } from './OrderedItemFieldAccess.js';
4
+ /** Resolves a field's access; a field the host leaves out is hidden. */
5
+ export declare const resolveOrderedItemFieldAccess: (capabilities: OrderedItemCapabilities, field: OrderedItemField) => OrderedItemFieldAccess;
6
+ //# sourceMappingURL=resolveOrderedItemFieldAccess.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemFieldAccess.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/resolveOrderedItemFieldAccess.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA0B,CAAC;AAEvE,wEAAwE;AACxE,eAAO,MAAM,6BAA6B,iBACxB,uBAAuB,SAC9B,gBAAgB,KACxB,sBAAgE,CAAC"}
@@ -0,0 +1,4 @@
1
+ const resolveOrderedItemFieldAccess = (capabilities, field) => capabilities.fields[field] ?? 'hidden';
2
+
3
+ export { resolveOrderedItemFieldAccess };
4
+ //# sourceMappingURL=resolveOrderedItemFieldAccess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemFieldAccess.js","sources":["../../../ConfigurationEditor/resolveOrderedItemFieldAccess.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { OrderedItemCapabilities } from './OrderedItemCapabilities';\nimport type { OrderedItemField } from './OrderedItemField';\nimport type { OrderedItemFieldAccess } from './OrderedItemFieldAccess';\n\n/** Resolves a field's access; a field the host leaves out is hidden. */\nexport const resolveOrderedItemFieldAccess = (\n capabilities: OrderedItemCapabilities,\n field: OrderedItemField,\n): OrderedItemFieldAccess => capabilities.fields[field] ?? 'hidden';\n"],"names":[],"mappings":"AAQO,MAAM,6BAA6B,GAAG,CACzC,YAAqC,EACrC,KAAuB,KACE,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;;"}
@@ -0,0 +1,4 @@
1
+ import type { OrderedItemLabels } from './OrderedItemLabels.js';
2
+ /** Merges the host's labels over the English defaults, ignoring any that are `undefined`. */
3
+ export declare const resolveOrderedItemLabels: (labels: OrderedItemLabels | undefined) => Required<OrderedItemLabels>;
4
+ //# sourceMappingURL=resolveOrderedItemLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemLabels.d.ts","sourceRoot":"","sources":["../../../ConfigurationEditor/resolveOrderedItemLabels.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAqB,CAAC;AAE7D,6FAA6F;AAC7F,eAAO,MAAM,wBAAwB,WAAY,iBAAiB,GAAG,SAAS,KAAG,QAAQ,CAAC,iBAAiB,CAM1G,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { defaultOrderedItemLabels } from './defaultOrderedItemLabels.js';
2
+
3
+ const resolveOrderedItemLabels = (labels) => {
4
+ const resolved = { ...defaultOrderedItemLabels };
5
+ for (const [key, value] of Object.entries(labels ?? {})) {
6
+ if (value !== undefined)
7
+ resolved[key] = value;
8
+ }
9
+ return resolved;
10
+ };
11
+
12
+ export { resolveOrderedItemLabels };
13
+ //# sourceMappingURL=resolveOrderedItemLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveOrderedItemLabels.js","sources":["../../../ConfigurationEditor/resolveOrderedItemLabels.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { defaultOrderedItemLabels } from './defaultOrderedItemLabels';\nimport type { OrderedItemLabels } from './OrderedItemLabels';\n\n/** Merges the host's labels over the English defaults, ignoring any that are `undefined`. */\nexport const resolveOrderedItemLabels = (labels: OrderedItemLabels | undefined): Required<OrderedItemLabels> => {\n const resolved: Record<string, unknown> = { ...defaultOrderedItemLabels };\n for (const [key, value] of Object.entries(labels ?? {})) {\n if (value !== undefined) resolved[key] = value;\n }\n return resolved as unknown as Required<OrderedItemLabels>;\n};\n"],"names":[],"mappings":";;AAOO,MAAM,wBAAwB,GAAG,CAAC,MAAqC,KAAiC;AAC3G,IAAA,MAAM,QAAQ,GAA4B,EAAE,GAAG,wBAAwB,EAAE;AACzE,IAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE;QACrD,IAAI,KAAK,KAAK,SAAS;AAAE,YAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK;IAClD;AACA,IAAA,OAAO,QAAkD;AAC7D;;"}