@cratis/components 0.1.19 → 1.0.3

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 (305) hide show
  1. package/dist/cjs/CommandDialog/CommandDialog.js +14 -25
  2. package/dist/cjs/CommandDialog/CommandDialog.js.map +1 -1
  3. package/dist/cjs/CommandForm/fields/CheckboxField.js +2 -2
  4. package/dist/cjs/CommandForm/fields/CheckboxField.js.map +1 -1
  5. package/dist/cjs/CommandForm/fields/DropdownField.js +5 -5
  6. package/dist/cjs/CommandForm/fields/DropdownField.js.map +1 -1
  7. package/dist/cjs/CommandForm/fields/InputTextField.js +2 -2
  8. package/dist/cjs/CommandForm/fields/InputTextField.js.map +1 -1
  9. package/dist/cjs/CommandForm/fields/NumberField.js +2 -2
  10. package/dist/cjs/CommandForm/fields/NumberField.js.map +1 -1
  11. package/dist/cjs/CommandForm/fields/SliderField.js +5 -9
  12. package/dist/cjs/CommandForm/fields/SliderField.js.map +1 -1
  13. package/dist/cjs/CommandForm/fields/TextAreaField.js +2 -2
  14. package/dist/cjs/CommandForm/fields/TextAreaField.js.map +1 -1
  15. package/dist/cjs/CommandForm/index.js +35 -15
  16. package/dist/cjs/CommandForm/index.js.map +1 -1
  17. package/dist/cjs/DataTables/DataTableForObservableQuery.js +53 -1
  18. package/dist/cjs/DataTables/DataTableForObservableQuery.js.map +1 -1
  19. package/dist/cjs/DataTables/DataTableForQuery.js +19 -1
  20. package/dist/cjs/DataTables/DataTableForQuery.js.map +1 -1
  21. package/dist/cjs/Dialogs/BusyIndicatorDialog.js +2 -3
  22. package/dist/cjs/Dialogs/BusyIndicatorDialog.js.map +1 -1
  23. package/dist/cjs/Dialogs/ConfirmationDialog.js +4 -21
  24. package/dist/cjs/Dialogs/ConfirmationDialog.js.map +1 -1
  25. package/dist/cjs/Dialogs/Dialog.js +66 -0
  26. package/dist/cjs/Dialogs/Dialog.js.map +1 -0
  27. package/dist/cjs/Dialogs/index.js +4 -2
  28. package/dist/cjs/Dialogs/index.js.map +1 -1
  29. package/dist/cjs/ObjectContentEditor/ObjectContentEditor.js +156 -0
  30. package/dist/cjs/ObjectContentEditor/ObjectContentEditor.js.map +1 -0
  31. package/dist/cjs/ObjectContentEditor/index.js +8 -0
  32. package/dist/cjs/{EventModeling → ObjectContentEditor}/index.js.map +1 -1
  33. package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.js +45 -0
  34. package/dist/cjs/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -0
  35. package/dist/cjs/ObjectNavigationalBar/index.js +8 -0
  36. package/dist/cjs/ObjectNavigationalBar/index.js.map +1 -0
  37. package/dist/cjs/SchemaEditor/NameCell.js +38 -0
  38. package/dist/cjs/SchemaEditor/NameCell.js.map +1 -0
  39. package/dist/cjs/SchemaEditor/SchemaEditor.js +352 -0
  40. package/dist/cjs/SchemaEditor/SchemaEditor.js.map +1 -0
  41. package/dist/cjs/SchemaEditor/SchemaEditor.module.css +11 -0
  42. package/dist/cjs/SchemaEditor/TypeCell.js +102 -0
  43. package/dist/cjs/SchemaEditor/TypeCell.js.map +1 -0
  44. package/dist/cjs/SchemaEditor/index.js +10 -0
  45. package/dist/cjs/SchemaEditor/index.js.map +1 -0
  46. package/dist/cjs/index.js +10 -6
  47. package/dist/cjs/index.js.map +1 -1
  48. package/dist/cjs/types/TypeFormat.js +20 -0
  49. package/dist/cjs/types/TypeFormat.js.map +1 -0
  50. package/dist/esm/CommandDialog/CommandDialog.d.ts +1 -1
  51. package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -1
  52. package/dist/esm/CommandDialog/CommandDialog.js +15 -26
  53. package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
  54. package/dist/esm/CommandDialog/CommandDialog.stories.d.ts +1 -0
  55. package/dist/esm/CommandDialog/CommandDialog.stories.d.ts.map +1 -1
  56. package/dist/esm/CommandDialog/CommandDialog.stories.js +57 -3
  57. package/dist/esm/CommandDialog/CommandDialog.stories.js.map +1 -1
  58. package/dist/esm/CommandForm/fields/CheckboxField.d.ts +3 -2
  59. package/dist/esm/CommandForm/fields/CheckboxField.d.ts.map +1 -1
  60. package/dist/esm/CommandForm/fields/CheckboxField.js +1 -1
  61. package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
  62. package/dist/esm/CommandForm/fields/DropdownField.d.ts +7 -6
  63. package/dist/esm/CommandForm/fields/DropdownField.d.ts.map +1 -1
  64. package/dist/esm/CommandForm/fields/DropdownField.js +6 -6
  65. package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
  66. package/dist/esm/CommandForm/fields/Fields.stories.d.ts +13 -0
  67. package/dist/esm/CommandForm/fields/Fields.stories.d.ts.map +1 -0
  68. package/dist/esm/CommandForm/fields/Fields.stories.js +137 -0
  69. package/dist/esm/CommandForm/fields/Fields.stories.js.map +1 -0
  70. package/dist/esm/CommandForm/fields/InputTextField.d.ts +3 -2
  71. package/dist/esm/CommandForm/fields/InputTextField.d.ts.map +1 -1
  72. package/dist/esm/CommandForm/fields/InputTextField.js +1 -1
  73. package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
  74. package/dist/esm/CommandForm/fields/NumberField.d.ts +3 -2
  75. package/dist/esm/CommandForm/fields/NumberField.d.ts.map +1 -1
  76. package/dist/esm/CommandForm/fields/NumberField.js +1 -1
  77. package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
  78. package/dist/esm/CommandForm/fields/SliderField.d.ts +5 -4
  79. package/dist/esm/CommandForm/fields/SliderField.d.ts.map +1 -1
  80. package/dist/esm/CommandForm/fields/SliderField.js +5 -9
  81. package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
  82. package/dist/esm/CommandForm/fields/TextAreaField.d.ts +3 -2
  83. package/dist/esm/CommandForm/fields/TextAreaField.d.ts.map +1 -1
  84. package/dist/esm/CommandForm/fields/TextAreaField.js +1 -1
  85. package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
  86. package/dist/esm/CommandForm/fields/index.d.ts +2 -2
  87. package/dist/esm/CommandForm/fields/index.d.ts.map +1 -1
  88. package/dist/esm/CommandForm/fields/index.js +2 -2
  89. package/dist/esm/CommandForm/fields/index.js.map +1 -1
  90. package/dist/esm/CommandForm/index.d.ts +1 -5
  91. package/dist/esm/CommandForm/index.d.ts.map +1 -1
  92. package/dist/esm/CommandForm/index.js +3 -7
  93. package/dist/esm/CommandForm/index.js.map +1 -1
  94. package/dist/esm/Common/ErrorBoundary.d.ts +1 -1
  95. package/dist/esm/Common/ErrorBoundary.stories.d.ts +7 -7
  96. package/dist/esm/Common/ErrorBoundary.stories.d.ts.map +1 -1
  97. package/dist/esm/Common/ErrorBoundary.stories.js +21 -5
  98. package/dist/esm/Common/ErrorBoundary.stories.js.map +1 -1
  99. package/dist/esm/Common/FormElement.stories.d.ts +8 -7
  100. package/dist/esm/Common/FormElement.stories.d.ts.map +1 -1
  101. package/dist/esm/Common/FormElement.stories.js +25 -4
  102. package/dist/esm/Common/FormElement.stories.js.map +1 -1
  103. package/dist/esm/Common/Page.stories.d.ts +7 -7
  104. package/dist/esm/Common/Page.stories.d.ts.map +1 -1
  105. package/dist/esm/Common/Page.stories.js +20 -5
  106. package/dist/esm/Common/Page.stories.js.map +1 -1
  107. package/dist/esm/DataPage/DataPage.stories.d.ts +7 -7
  108. package/dist/esm/DataPage/DataPage.stories.d.ts.map +1 -1
  109. package/dist/esm/DataPage/DataPage.stories.js +33 -5
  110. package/dist/esm/DataPage/DataPage.stories.js.map +1 -1
  111. package/dist/esm/DataTables/DataTableForObservableQuery.d.ts +1 -0
  112. package/dist/esm/DataTables/DataTableForObservableQuery.d.ts.map +1 -1
  113. package/dist/esm/DataTables/DataTableForObservableQuery.js +55 -3
  114. package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
  115. package/dist/esm/DataTables/DataTableForObservableQuery.stories.d.ts +7 -7
  116. package/dist/esm/DataTables/DataTableForObservableQuery.stories.d.ts.map +1 -1
  117. package/dist/esm/DataTables/DataTableForObservableQuery.stories.js +55 -5
  118. package/dist/esm/DataTables/DataTableForObservableQuery.stories.js.map +1 -1
  119. package/dist/esm/DataTables/DataTableForQuery.d.ts +1 -0
  120. package/dist/esm/DataTables/DataTableForQuery.d.ts.map +1 -1
  121. package/dist/esm/DataTables/DataTableForQuery.js +21 -3
  122. package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
  123. package/dist/esm/DataTables/DataTableForQuery.stories.d.ts +7 -7
  124. package/dist/esm/DataTables/DataTableForQuery.stories.d.ts.map +1 -1
  125. package/dist/esm/DataTables/DataTableForQuery.stories.js +31 -5
  126. package/dist/esm/DataTables/DataTableForQuery.stories.js.map +1 -1
  127. package/dist/esm/Dialogs/BusyIndicatorDialog.d.ts.map +1 -1
  128. package/dist/esm/Dialogs/BusyIndicatorDialog.js +3 -4
  129. package/dist/esm/Dialogs/BusyIndicatorDialog.js.map +1 -1
  130. package/dist/esm/Dialogs/ConfirmationDialog.d.ts.map +1 -1
  131. package/dist/esm/Dialogs/ConfirmationDialog.js +6 -23
  132. package/dist/esm/Dialogs/ConfirmationDialog.js.map +1 -1
  133. package/dist/esm/Dialogs/Dialog.d.ts +23 -0
  134. package/dist/esm/Dialogs/Dialog.d.ts.map +1 -0
  135. package/dist/esm/Dialogs/Dialog.js +64 -0
  136. package/dist/esm/Dialogs/Dialog.js.map +1 -0
  137. package/dist/esm/Dialogs/index.d.ts +2 -1
  138. package/dist/esm/Dialogs/index.d.ts.map +1 -1
  139. package/dist/esm/Dialogs/index.js +2 -1
  140. package/dist/esm/Dialogs/index.js.map +1 -1
  141. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts +8 -0
  142. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts.map +1 -0
  143. package/dist/esm/ObjectContentEditor/ObjectContentEditor.js +135 -0
  144. package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -0
  145. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.d.ts +10 -0
  146. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.d.ts.map +1 -0
  147. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.js +144 -0
  148. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.js.map +1 -0
  149. package/dist/esm/ObjectContentEditor/index.d.ts +2 -0
  150. package/dist/esm/ObjectContentEditor/index.d.ts.map +1 -0
  151. package/dist/esm/ObjectContentEditor/index.js +2 -0
  152. package/dist/esm/ObjectContentEditor/index.js.map +1 -0
  153. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts +6 -0
  154. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts.map +1 -0
  155. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js +24 -0
  156. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -0
  157. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.d.ts +10 -0
  158. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.d.ts.map +1 -0
  159. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.js +46 -0
  160. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.js.map +1 -0
  161. package/dist/esm/ObjectNavigationalBar/index.d.ts +2 -0
  162. package/dist/esm/ObjectNavigationalBar/index.d.ts.map +1 -0
  163. package/dist/esm/ObjectNavigationalBar/index.js +2 -0
  164. package/dist/esm/ObjectNavigationalBar/index.js.map +1 -0
  165. package/dist/esm/SchemaEditor/NameCell.d.ts +9 -0
  166. package/dist/esm/SchemaEditor/NameCell.d.ts.map +1 -0
  167. package/dist/esm/SchemaEditor/NameCell.js +17 -0
  168. package/dist/esm/SchemaEditor/NameCell.js.map +1 -0
  169. package/dist/esm/SchemaEditor/SchemaEditor.d.ts +17 -0
  170. package/dist/esm/SchemaEditor/SchemaEditor.d.ts.map +1 -0
  171. package/dist/esm/SchemaEditor/SchemaEditor.js +331 -0
  172. package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -0
  173. package/dist/esm/SchemaEditor/SchemaEditor.module.css +11 -0
  174. package/dist/esm/SchemaEditor/SchemaEditor.stories.d.ts +12 -0
  175. package/dist/esm/SchemaEditor/SchemaEditor.stories.d.ts.map +1 -0
  176. package/dist/esm/SchemaEditor/SchemaEditor.stories.js +158 -0
  177. package/dist/esm/SchemaEditor/SchemaEditor.stories.js.map +1 -0
  178. package/dist/esm/SchemaEditor/TypeCell.d.ts +14 -0
  179. package/dist/esm/SchemaEditor/TypeCell.d.ts.map +1 -0
  180. package/dist/esm/SchemaEditor/TypeCell.js +81 -0
  181. package/dist/esm/SchemaEditor/TypeCell.js.map +1 -0
  182. package/dist/esm/SchemaEditor/index.d.ts +4 -0
  183. package/dist/esm/SchemaEditor/index.d.ts.map +1 -0
  184. package/dist/esm/SchemaEditor/index.js +3 -0
  185. package/dist/esm/TimeMachine/EventsView.stories.d.ts +8 -7
  186. package/dist/esm/TimeMachine/EventsView.stories.d.ts.map +1 -1
  187. package/dist/esm/TimeMachine/EventsView.stories.js +80 -4
  188. package/dist/esm/TimeMachine/EventsView.stories.js.map +1 -1
  189. package/dist/esm/TimeMachine/Properties.stories.d.ts +9 -7
  190. package/dist/esm/TimeMachine/Properties.stories.d.ts.map +1 -1
  191. package/dist/esm/TimeMachine/Properties.stories.js +49 -4
  192. package/dist/esm/TimeMachine/Properties.stories.js.map +1 -1
  193. package/dist/esm/TimeMachine/ReadModelView.stories.d.ts +7 -7
  194. package/dist/esm/TimeMachine/ReadModelView.stories.d.ts.map +1 -1
  195. package/dist/esm/TimeMachine/ReadModelView.stories.js +79 -5
  196. package/dist/esm/TimeMachine/ReadModelView.stories.js.map +1 -1
  197. package/dist/esm/TimeMachine/TimeMachine.stories.d.ts +8 -7
  198. package/dist/esm/TimeMachine/TimeMachine.stories.d.ts.map +1 -1
  199. package/dist/esm/TimeMachine/TimeMachine.stories.js +113 -4
  200. package/dist/esm/TimeMachine/TimeMachine.stories.js.map +1 -1
  201. package/dist/esm/index.d.ts +4 -2
  202. package/dist/esm/index.d.ts.map +1 -1
  203. package/dist/esm/index.js +10 -6
  204. package/dist/esm/index.js.map +1 -1
  205. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  206. package/dist/esm/types/JsonSchema.d.ts +32 -0
  207. package/dist/esm/types/JsonSchema.d.ts.map +1 -0
  208. package/dist/esm/types/JsonSchema.js +2 -0
  209. package/dist/esm/types/JsonSchema.js.map +1 -0
  210. package/dist/esm/types/TypeFormat.d.ts +6 -0
  211. package/dist/esm/types/TypeFormat.d.ts.map +1 -0
  212. package/dist/esm/types/TypeFormat.js +18 -0
  213. package/dist/esm/types/TypeFormat.js.map +1 -0
  214. package/package.json +10 -5
  215. package/dist/cjs/CommandForm/CommandForm.js +0 -183
  216. package/dist/cjs/CommandForm/CommandForm.js.map +0 -1
  217. package/dist/cjs/CommandForm/CommandFormField.js +0 -11
  218. package/dist/cjs/CommandForm/CommandFormField.js.map +0 -1
  219. package/dist/cjs/CommandForm/CommandFormFields.js +0 -73
  220. package/dist/cjs/CommandForm/CommandFormFields.js.map +0 -1
  221. package/dist/cjs/CommandForm/ValidationMessage.js +0 -24
  222. package/dist/cjs/CommandForm/ValidationMessage.js.map +0 -1
  223. package/dist/cjs/CommandForm/asCommandFormField.js +0 -47
  224. package/dist/cjs/CommandForm/asCommandFormField.js.map +0 -1
  225. package/dist/cjs/EventModeling/EventModeling.css +0 -146
  226. package/dist/cjs/EventModeling/EventModeling.js +0 -209
  227. package/dist/cjs/EventModeling/EventModeling.js.map +0 -1
  228. package/dist/cjs/EventModeling/components/Canvas.js +0 -403
  229. package/dist/cjs/EventModeling/components/Canvas.js.map +0 -1
  230. package/dist/cjs/EventModeling/components/CanvasControls.js +0 -10
  231. package/dist/cjs/EventModeling/components/CanvasControls.js.map +0 -1
  232. package/dist/cjs/EventModeling/components/Toolbox.js +0 -18
  233. package/dist/cjs/EventModeling/components/Toolbox.js.map +0 -1
  234. package/dist/cjs/EventModeling/engine/connectorGraphics.js +0 -173
  235. package/dist/cjs/EventModeling/engine/connectorGraphics.js.map +0 -1
  236. package/dist/cjs/EventModeling/engine/elementSprites.js +0 -301
  237. package/dist/cjs/EventModeling/engine/elementSprites.js.map +0 -1
  238. package/dist/cjs/EventModeling/index.js +0 -12
  239. package/dist/cjs/EventModeling/types.js +0 -60
  240. package/dist/cjs/EventModeling/types.js.map +0 -1
  241. package/dist/esm/CommandForm/CommandForm.d.ts +0 -49
  242. package/dist/esm/CommandForm/CommandForm.d.ts.map +0 -1
  243. package/dist/esm/CommandForm/CommandForm.js +0 -178
  244. package/dist/esm/CommandForm/CommandForm.js.map +0 -1
  245. package/dist/esm/CommandForm/CommandForm.stories.d.ts +0 -8
  246. package/dist/esm/CommandForm/CommandForm.stories.d.ts.map +0 -1
  247. package/dist/esm/CommandForm/CommandForm.stories.js +0 -45
  248. package/dist/esm/CommandForm/CommandForm.stories.js.map +0 -1
  249. package/dist/esm/CommandForm/CommandFormField.d.ts +0 -18
  250. package/dist/esm/CommandForm/CommandFormField.d.ts.map +0 -1
  251. package/dist/esm/CommandForm/CommandFormField.js +0 -9
  252. package/dist/esm/CommandForm/CommandFormField.js.map +0 -1
  253. package/dist/esm/CommandForm/CommandFormFields.d.ts +0 -11
  254. package/dist/esm/CommandForm/CommandFormFields.d.ts.map +0 -1
  255. package/dist/esm/CommandForm/CommandFormFields.js +0 -71
  256. package/dist/esm/CommandForm/CommandFormFields.js.map +0 -1
  257. package/dist/esm/CommandForm/UserRegistrationCommand.d.ts +0 -63
  258. package/dist/esm/CommandForm/UserRegistrationCommand.d.ts.map +0 -1
  259. package/dist/esm/CommandForm/UserRegistrationCommand.js +0 -143
  260. package/dist/esm/CommandForm/UserRegistrationCommand.js.map +0 -1
  261. package/dist/esm/CommandForm/ValidationMessage.d.ts +0 -8
  262. package/dist/esm/CommandForm/ValidationMessage.d.ts.map +0 -1
  263. package/dist/esm/CommandForm/ValidationMessage.js +0 -22
  264. package/dist/esm/CommandForm/ValidationMessage.js.map +0 -1
  265. package/dist/esm/CommandForm/asCommandFormField.d.ts +0 -32
  266. package/dist/esm/CommandForm/asCommandFormField.d.ts.map +0 -1
  267. package/dist/esm/CommandForm/asCommandFormField.js +0 -45
  268. package/dist/esm/CommandForm/asCommandFormField.js.map +0 -1
  269. package/dist/esm/EventModeling/EventModeling.css +0 -146
  270. package/dist/esm/EventModeling/EventModeling.d.ts +0 -11
  271. package/dist/esm/EventModeling/EventModeling.d.ts.map +0 -1
  272. package/dist/esm/EventModeling/EventModeling.js +0 -207
  273. package/dist/esm/EventModeling/EventModeling.js.map +0 -1
  274. package/dist/esm/EventModeling/EventModeling.stories.d.ts +0 -10
  275. package/dist/esm/EventModeling/EventModeling.stories.d.ts.map +0 -1
  276. package/dist/esm/EventModeling/EventModeling.stories.js +0 -252
  277. package/dist/esm/EventModeling/EventModeling.stories.js.map +0 -1
  278. package/dist/esm/EventModeling/components/Canvas.d.ts +0 -23
  279. package/dist/esm/EventModeling/components/Canvas.d.ts.map +0 -1
  280. package/dist/esm/EventModeling/components/Canvas.js +0 -382
  281. package/dist/esm/EventModeling/components/Canvas.js.map +0 -1
  282. package/dist/esm/EventModeling/components/CanvasControls.d.ts +0 -10
  283. package/dist/esm/EventModeling/components/CanvasControls.d.ts.map +0 -1
  284. package/dist/esm/EventModeling/components/CanvasControls.js +0 -8
  285. package/dist/esm/EventModeling/components/CanvasControls.js.map +0 -1
  286. package/dist/esm/EventModeling/components/Toolbox.d.ts +0 -9
  287. package/dist/esm/EventModeling/components/Toolbox.d.ts.map +0 -1
  288. package/dist/esm/EventModeling/components/Toolbox.js +0 -16
  289. package/dist/esm/EventModeling/components/Toolbox.js.map +0 -1
  290. package/dist/esm/EventModeling/engine/connectorGraphics.d.ts +0 -12
  291. package/dist/esm/EventModeling/engine/connectorGraphics.d.ts.map +0 -1
  292. package/dist/esm/EventModeling/engine/connectorGraphics.js +0 -151
  293. package/dist/esm/EventModeling/engine/connectorGraphics.js.map +0 -1
  294. package/dist/esm/EventModeling/engine/elementSprites.d.ts +0 -23
  295. package/dist/esm/EventModeling/engine/elementSprites.d.ts.map +0 -1
  296. package/dist/esm/EventModeling/engine/elementSprites.js +0 -276
  297. package/dist/esm/EventModeling/engine/elementSprites.js.map +0 -1
  298. package/dist/esm/EventModeling/index.d.ts +0 -3
  299. package/dist/esm/EventModeling/index.d.ts.map +0 -1
  300. package/dist/esm/EventModeling/index.js +0 -3
  301. package/dist/esm/EventModeling/types.d.ts +0 -79
  302. package/dist/esm/EventModeling/types.d.ts.map +0 -1
  303. package/dist/esm/EventModeling/types.js +0 -56
  304. package/dist/esm/EventModeling/types.js.map +0 -1
  305. /package/dist/esm/{EventModeling → SchemaEditor}/index.js.map +0 -0
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ const DEFAULT_TYPE_FORMATS = [
4
+ { jsonType: 'string', format: '' },
5
+ { jsonType: 'string', format: 'guid' },
6
+ { jsonType: 'string', format: 'date-time' },
7
+ { jsonType: 'string', format: 'date' },
8
+ { jsonType: 'string', format: 'time' },
9
+ { jsonType: 'integer', format: '' },
10
+ { jsonType: 'integer', format: 'int16' },
11
+ { jsonType: 'integer', format: 'int32' },
12
+ { jsonType: 'integer', format: 'int64' },
13
+ { jsonType: 'number', format: '' },
14
+ { jsonType: 'number', format: 'float' },
15
+ { jsonType: 'number', format: 'double' },
16
+ { jsonType: 'boolean', format: '' },
17
+ ];
18
+
19
+ exports.DEFAULT_TYPE_FORMATS = DEFAULT_TYPE_FORMATS;
20
+ //# sourceMappingURL=TypeFormat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeFormat.js","sources":["../../../types/TypeFormat.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\nexport interface TypeFormat {\n jsonType: string;\n format: string;\n}\n\nexport const DEFAULT_TYPE_FORMATS: TypeFormat[] = [\n { jsonType: 'string', format: '' },\n { jsonType: 'string', format: 'guid' },\n { jsonType: 'string', format: 'date-time' },\n { jsonType: 'string', format: 'date' },\n { jsonType: 'string', format: 'time' },\n { jsonType: 'integer', format: '' },\n { jsonType: 'integer', format: 'int16' },\n { jsonType: 'integer', format: 'int32' },\n { jsonType: 'integer', format: 'int64' },\n { jsonType: 'number', format: '' },\n { jsonType: 'number', format: 'float' },\n { jsonType: 'number', format: 'double' },\n { jsonType: 'boolean', format: '' },\n];\n"],"names":[],"mappings":";;AAQO,MAAM,oBAAoB,GAAiB;AAC9C,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;AAClC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;AACtC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;AAC3C,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;AACtC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;AACtC,IAAA,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;AACnC,IAAA,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;AACxC,IAAA,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;AACxC,IAAA,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;AACxC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;AAClC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE;AACvC,IAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;AACxC,IAAA,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { ICommandResult } from '@cratis/arc/commands';
2
2
  import { Constructor } from '@cratis/fundamentals';
3
3
  import React from 'react';
4
- import { BeforeExecuteCallback } from '../CommandForm/CommandForm';
4
+ export type BeforeExecuteCallback<TCommand> = (values: TCommand) => TCommand;
5
5
  export type FieldValidator<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => string | undefined;
6
6
  export type FieldChangeCallback<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => void;
7
7
  export interface CommandDialogProps<TCommand, TResponse = object> {
@@ -1 +1 @@
1
- {"version":3,"file":"CommandDialog.d.ts","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,OAAO,EAAsC,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGvG,MAAM,MAAM,cAAc,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAC1I,MAAM,MAAM,mBAAmB,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjI,MAAM,WAAW,kBAAkB,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM;IAC5D,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC9C,eAAe,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,yBAAyB,CAAC,QAAQ,GAAG,OAAO;IAClD,SAAS,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC9C,eAAe,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,uBAAuB,GAAI,QAAQ,GAAG,OAAO,OAKpC,yBAAyB,CAAC,QAAQ,CACvD,CAAC;AA0GF,eAAO,MAAM,aAAa;KAvDM,QAAQ,SAAS,MAAM,WAAW,SAAS,kBAAkB,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC;oBAjBzF;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;CAwErB,CAAC"}
1
+ {"version":3,"file":"CommandDialog.d.ts","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,KAAoC,MAAM,OAAO,CAAC;AAQzD,MAAM,MAAM,qBAAqB,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,QAAQ,KAAK,QAAQ,CAAC;AAE7E,MAAM,MAAM,cAAc,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAC1I,MAAM,MAAM,mBAAmB,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjI,MAAM,WAAW,kBAAkB,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM;IAC5D,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC9C,eAAe,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,yBAAyB,CAAC,QAAQ,GAAG,OAAO;IAClD,SAAS,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC9C,eAAe,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,uBAAuB,GAAI,QAAQ,GAAG,OAAO,OAKpC,yBAAyB,CAAC,QAAQ,CACvD,CAAC;AA8HF,eAAO,MAAM,aAAa;KA5DM,QAAQ,SAAS,MAAM,WAAW,SAAS,kBAAkB,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC;oBARzF;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;CAoErB,CAAC"}
@@ -1,8 +1,8 @@
1
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { Dialog } from 'primereact/dialog';
3
- import { Button } from 'primereact/button';
4
- import React, { createContext, useContext } from 'react';
5
- import { CommandForm, useCommandInstance, useCommandFormContext } from '../CommandForm/CommandForm.js';
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { DialogButtons } from '@cratis/arc.react/dialogs';
3
+ import { Dialog } from '../Dialogs/Dialog.js';
4
+ import { createContext, useContext } from 'react';
5
+ import { CommandForm, useCommandFormContext, useCommandInstance } from '@cratis/arc.react/commands';
6
6
 
7
7
  const CommandDialogContext = createContext(undefined);
8
8
  const useCommandDialogContext = () => {
@@ -12,42 +12,31 @@ const useCommandDialogContext = () => {
12
12
  }
13
13
  return context;
14
14
  };
15
- const CommandDialogFormContent = () => {
16
- const command = useCommandInstance();
17
- const { setCommandResult, setCommandValues, isValid, onBeforeExecute } = useCommandFormContext();
18
- const { onSuccess: onConfirm, onCancel, confirmLabel, cancelLabel, confirmIcon, cancelIcon } = useCommandDialogContext();
15
+ const CommandDialogWrapper = ({ header, visible, width, confirmLabel, cancelLabel, onConfirm, onCancel, onBeforeExecute, children }) => {
16
+ const { isValid, setCommandValues, setCommandResult } = useCommandFormContext();
17
+ const commandInstance = useCommandInstance();
19
18
  const handleConfirm = async () => {
20
19
  if (onBeforeExecute) {
21
- const transformedValues = onBeforeExecute(command);
20
+ const transformedValues = onBeforeExecute(commandInstance);
22
21
  setCommandValues(transformedValues);
23
22
  }
24
- const result = await command.execute();
23
+ const result = await commandInstance.execute();
25
24
  if (result.isSuccess) {
26
25
  await onConfirm(result);
26
+ return true;
27
27
  }
28
28
  else {
29
29
  setCommandResult(result);
30
+ return false;
30
31
  }
31
32
  };
32
- const handleCancel = () => {
33
- onCancel();
34
- };
35
- return (jsx(Fragment, { children: jsxs("div", { className: "card flex flex-wrap justify-content-center gap-3 mt-8", children: [jsx(Button, { label: confirmLabel, icon: confirmIcon, onClick: handleConfirm, disabled: !isValid }), jsx(Button, { label: cancelLabel, icon: cancelIcon, severity: 'secondary', onClick: handleCancel })] }) }));
33
+ return (jsx(Dialog, { title: header, visible: visible, width: width, onConfirm: handleConfirm, onCancel: onCancel, buttons: DialogButtons.OkCancel, okLabel: confirmLabel, cancelLabel: cancelLabel, isValid: isValid, children: children }));
36
34
  };
37
35
  const CommandDialogFieldsWrapper = (props) => {
38
- React.Children.forEach(props.children, child => {
39
- if (React.isValidElement(child)) {
40
- const component = child.type;
41
- if (component.displayName !== 'CommandFormField') {
42
- throw new Error(`Only CommandFormField components are allowed as children of CommandDialog.Fields. Got: ${component.displayName || component.name || 'Unknown'}`);
43
- }
44
- }
45
- });
46
36
  return (jsx(CommandForm.Fields, { children: props.children }));
47
37
  };
48
38
  const CommandDialogComponent = (props) => {
49
- const { command, initialValues, currentValues, visible, header, confirmLabel = 'Confirm', cancelLabel = 'Cancel', confirmIcon = 'pi pi-check', cancelIcon = 'pi pi-times', onConfirm, onCancel, onFieldValidate, onFieldChange, onBeforeExecute, children, style = { width: '50vw' }, width } = props;
50
- const dialogStyle = width ? { ...style, width } : style;
39
+ const { command, initialValues, currentValues, visible, header, confirmLabel = 'Confirm', cancelLabel = 'Cancel', confirmIcon = 'pi pi-check', cancelIcon = 'pi pi-times', onConfirm, onCancel, onFieldValidate, onFieldChange, onBeforeExecute, children, width = '50vw' } = props;
51
40
  const contextValue = {
52
41
  onSuccess: onConfirm,
53
42
  onCancel,
@@ -59,7 +48,7 @@ const CommandDialogComponent = (props) => {
59
48
  onFieldChange,
60
49
  onBeforeExecute
61
50
  };
62
- return (jsx(Dialog, { header: header, visible: visible, style: dialogStyle, onHide: onCancel, contentStyle: { overflow: 'visible' }, children: jsx(CommandDialogContext.Provider, { value: contextValue, children: jsxs(CommandForm, { command: command, initialValues: initialValues, currentValues: currentValues, onFieldValidate: onFieldValidate, onFieldChange: onFieldChange, onBeforeExecute: onBeforeExecute, children: [children, jsx(CommandDialogFormContent, {})] }) }) }));
51
+ return (jsx(CommandDialogContext.Provider, { value: contextValue, children: jsx(CommandForm, { command: command, initialValues: initialValues, currentValues: currentValues, onFieldValidate: onFieldValidate, onFieldChange: onFieldChange, onBeforeExecute: onBeforeExecute, children: jsx(CommandDialogWrapper, { header: header, visible: visible, width: width, confirmLabel: confirmLabel, cancelLabel: cancelLabel, onConfirm: onConfirm, onCancel: onCancel, onBeforeExecute: onBeforeExecute, children: children }) }) }));
63
52
  };
64
53
  CommandDialogComponent.Fields = CommandDialogFieldsWrapper;
65
54
  const CommandDialog = CommandDialogComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandDialog.js","sources":["../../../CommandDialog/CommandDialog.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 { ICommandResult } from '@cratis/arc/commands';\nimport { Constructor } from '@cratis/fundamentals';\nimport { Dialog } from 'primereact/dialog';\nimport { Button } from 'primereact/button';\nimport React, { createContext, useContext } from 'react';\nimport { CommandForm, useCommandFormContext, BeforeExecuteCallback } from '../CommandForm/CommandForm';\nimport { useCommandInstance } from '../CommandForm/CommandForm';\n\nexport type FieldValidator<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => string | undefined;\nexport type FieldChangeCallback<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => void;\n\nexport interface CommandDialogProps<TCommand, TResponse = object> {\n command: Constructor<TCommand>;\n initialValues?: Partial<TCommand>;\n currentValues?: Partial<TCommand> | undefined;\n visible: boolean;\n header: string;\n confirmLabel?: string;\n cancelLabel?: string;\n confirmIcon?: string;\n cancelIcon?: string;\n onConfirm: (result: ICommandResult<TResponse>) => void | Promise<void>;\n onCancel: () => void;\n onFieldValidate?: FieldValidator<TCommand>;\n onFieldChange?: FieldChangeCallback<TCommand>;\n onBeforeExecute?: BeforeExecuteCallback<TCommand>;\n children?: React.ReactNode;\n style?: React.CSSProperties;\n width?: string;\n}\n\ninterface CommandDialogContextValue<TCommand = unknown> {\n onSuccess: (result: ICommandResult<unknown>) => void | Promise<void>;\n onCancel: () => void;\n confirmLabel: string;\n cancelLabel: string;\n confirmIcon: string;\n cancelIcon: string;\n onFieldValidate?: FieldValidator<TCommand>;\n onFieldChange?: FieldChangeCallback<TCommand>;\n onBeforeExecute?: BeforeExecuteCallback<TCommand>;\n}\n\nconst CommandDialogContext = createContext<CommandDialogContextValue<unknown> | undefined>(undefined);\n\nexport const useCommandDialogContext = <TCommand = unknown,>() => {\n const context = useContext(CommandDialogContext);\n if (!context) {\n throw new Error('useCommandDialogContext must be used within a CommandDialog');\n }\n return context as CommandDialogContextValue<TCommand>;\n};\n\nconst CommandDialogFormContent = <TCommand extends { execute: () => Promise<ICommandResult<unknown>> }>() => {\n const command = useCommandInstance<TCommand>();\n const { setCommandResult, setCommandValues, isValid, onBeforeExecute } = useCommandFormContext<TCommand>();\n const { onSuccess: onConfirm, onCancel, confirmLabel, cancelLabel, confirmIcon, cancelIcon } = useCommandDialogContext<TCommand>();\n\n const handleConfirm = async () => {\n if (onBeforeExecute) {\n const transformedValues = onBeforeExecute(command);\n setCommandValues(transformedValues);\n }\n const result = await command.execute();\n if (result.isSuccess) {\n await onConfirm(result);\n } else {\n setCommandResult(result);\n }\n };\n\n const handleCancel = () => {\n onCancel();\n };\n\n return (\n <>\n <div className=\"card flex flex-wrap justify-content-center gap-3 mt-8\">\n <Button label={confirmLabel} icon={confirmIcon} onClick={handleConfirm} disabled={!isValid} />\n <Button label={cancelLabel} icon={cancelIcon} severity='secondary' onClick={handleCancel} />\n </div>\n </>\n );\n};\n\nconst CommandDialogFieldsWrapper = (props: { children: React.ReactNode }) => {\n React.Children.forEach(props.children, child => {\n if (React.isValidElement(child)) {\n const component = child.type as React.ComponentType<unknown>;\n if (component.displayName !== 'CommandFormField') {\n throw new Error(`Only CommandFormField components are allowed as children of CommandDialog.Fields. Got: ${component.displayName || component.name || 'Unknown'}`);\n }\n }\n });\n\n return (\n <CommandForm.Fields>\n {props.children}\n </CommandForm.Fields>\n );\n};\n\nconst CommandDialogComponent = <TCommand extends object = object, TResponse = object>(props: CommandDialogProps<TCommand, TResponse>) => {\n const {\n command,\n initialValues,\n currentValues,\n visible,\n header,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n confirmIcon = 'pi pi-check',\n cancelIcon = 'pi pi-times',\n onConfirm,\n onCancel,\n onFieldValidate,\n onFieldChange,\n onBeforeExecute,\n children,\n style = { width: '50vw' },\n width\n } = props;\n\n const dialogStyle = width ? { ...style, width } : style;\n\n const contextValue: CommandDialogContextValue<TCommand> = {\n onSuccess: onConfirm,\n onCancel,\n confirmLabel,\n cancelLabel,\n confirmIcon,\n cancelIcon,\n onFieldValidate,\n onFieldChange,\n onBeforeExecute\n };\n\n return (\n <Dialog\n header={header}\n visible={visible}\n style={dialogStyle}\n onHide={onCancel}\n contentStyle={{ overflow: 'visible' }}\n >\n <CommandDialogContext.Provider value={contextValue}>\n <CommandForm command={command} initialValues={initialValues} currentValues={currentValues} onFieldValidate={onFieldValidate} onFieldChange={onFieldChange} onBeforeExecute={onBeforeExecute}>\n {children}\n <CommandDialogFormContent />\n </CommandForm>\n </CommandDialogContext.Provider>\n </Dialog>\n );\n};\n\nCommandDialogComponent.Fields = CommandDialogFieldsWrapper;\n\nexport const CommandDialog = CommandDialogComponent;\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"CommandDialog.js","sources":["../../../CommandDialog/CommandDialog.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 { ICommandResult } from '@cratis/arc/commands';\nimport { Constructor } from '@cratis/fundamentals';\nimport { DialogButtons } from '@cratis/arc.react/dialogs';\nimport { Dialog } from '../Dialogs/Dialog';\nimport React, { createContext, useContext } from 'react';\nimport { \n CommandForm, \n useCommandFormContext, \n useCommandInstance\n} from '@cratis/arc.react/commands';\n\n// Local type definitions\nexport type BeforeExecuteCallback<TCommand> = (values: TCommand) => TCommand;\n\nexport type FieldValidator<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => string | undefined;\nexport type FieldChangeCallback<TCommand> = (command: TCommand, fieldName: string, oldValue: unknown, newValue: unknown) => void;\n\nexport interface CommandDialogProps<TCommand, TResponse = object> {\n command: Constructor<TCommand>;\n initialValues?: Partial<TCommand>;\n currentValues?: Partial<TCommand> | undefined;\n visible: boolean;\n header: string;\n confirmLabel?: string;\n cancelLabel?: string;\n confirmIcon?: string;\n cancelIcon?: string;\n onConfirm: (result: ICommandResult<TResponse>) => void | Promise<void>;\n onCancel: () => void;\n onFieldValidate?: FieldValidator<TCommand>;\n onFieldChange?: FieldChangeCallback<TCommand>;\n onBeforeExecute?: BeforeExecuteCallback<TCommand>;\n children?: React.ReactNode;\n style?: React.CSSProperties;\n width?: string;\n}\n\ninterface CommandDialogContextValue<TCommand = unknown> {\n onSuccess: (result: ICommandResult<unknown>) => void | Promise<void>;\n onCancel: () => void;\n confirmLabel: string;\n cancelLabel: string;\n confirmIcon: string;\n cancelIcon: string;\n onFieldValidate?: FieldValidator<TCommand>;\n onFieldChange?: FieldChangeCallback<TCommand>;\n onBeforeExecute?: BeforeExecuteCallback<TCommand>;\n}\n\nconst CommandDialogContext = createContext<CommandDialogContextValue<unknown> | undefined>(undefined);\n\nexport const useCommandDialogContext = <TCommand = unknown,>() => {\n const context = useContext(CommandDialogContext);\n if (!context) {\n throw new Error('useCommandDialogContext must be used within a CommandDialog');\n }\n return context as CommandDialogContextValue<TCommand>;\n};\n\nconst CommandDialogWrapper = <TCommand extends object>({\n header,\n visible,\n width,\n confirmLabel,\n cancelLabel,\n onConfirm,\n onCancel,\n onBeforeExecute,\n children\n}: {\n header: string;\n visible: boolean;\n width: string;\n confirmLabel: string;\n cancelLabel: string;\n onConfirm: (result: ICommandResult<unknown>) => void | Promise<void>;\n onCancel: () => void;\n onBeforeExecute?: BeforeExecuteCallback<TCommand>;\n children: React.ReactNode;\n}) => {\n const { isValid, setCommandValues, setCommandResult } = useCommandFormContext<TCommand>();\n const commandInstance = useCommandInstance<TCommand>();\n\n const handleConfirm = async () => {\n if (onBeforeExecute) {\n const transformedValues = onBeforeExecute(commandInstance);\n setCommandValues(transformedValues);\n }\n const result = await (commandInstance as unknown as { execute: () => Promise<ICommandResult<unknown>> }).execute();\n if (result.isSuccess) {\n await onConfirm(result);\n return true;\n } else {\n setCommandResult(result);\n return false;\n }\n };\n\n return (\n <Dialog\n title={header}\n visible={visible}\n width={width}\n onConfirm={handleConfirm}\n onCancel={onCancel}\n buttons={DialogButtons.OkCancel}\n okLabel={confirmLabel}\n cancelLabel={cancelLabel}\n isValid={isValid}\n >\n {children}\n </Dialog>\n );\n};\n\nconst CommandDialogFieldsWrapper = (props: { children: React.ReactNode }) => {\n return (\n <CommandForm.Fields>\n {props.children}\n </CommandForm.Fields>\n );\n};\n\nconst CommandDialogComponent = <TCommand extends object = object, TResponse = object>(props: CommandDialogProps<TCommand, TResponse>) => {\n const {\n command,\n initialValues,\n currentValues,\n visible,\n header,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n confirmIcon = 'pi pi-check',\n cancelIcon = 'pi pi-times',\n onConfirm,\n onCancel,\n onFieldValidate,\n onFieldChange,\n onBeforeExecute,\n children,\n width = '50vw'\n } = props;\n\n const contextValue: CommandDialogContextValue<TCommand> = {\n onSuccess: onConfirm,\n onCancel,\n confirmLabel,\n cancelLabel,\n confirmIcon,\n cancelIcon,\n onFieldValidate,\n onFieldChange,\n onBeforeExecute\n };\n\n return (\n <CommandDialogContext.Provider value={contextValue}>\n <CommandForm\n command={command}\n initialValues={initialValues}\n currentValues={currentValues}\n onFieldValidate={onFieldValidate}\n onFieldChange={onFieldChange}\n onBeforeExecute={onBeforeExecute}>\n <CommandDialogWrapper\n header={header}\n visible={visible}\n width={width}\n confirmLabel={confirmLabel}\n cancelLabel={cancelLabel}\n onConfirm={onConfirm}\n onCancel={onCancel}\n onBeforeExecute={onBeforeExecute}\n >\n {children}\n </CommandDialogWrapper>\n </CommandForm>\n </CommandDialogContext.Provider>\n );\n};\n\nCommandDialogComponent.Fields = CommandDialogFieldsWrapper;\n\nexport const CommandDialog = CommandDialogComponent;\n"],"names":["_jsx"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Meta, StoryObj } from '@storybook/react';
2
2
  import { CommandDialog } from './CommandDialog';
3
+ import '@cratis/arc/validation';
3
4
  declare const meta: Meta<typeof CommandDialog>;
4
5
  export default meta;
5
6
  type Story = StoryObj<typeof CommandDialog>;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandDialog.stories.d.ts","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,aAAa,CAGpC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,aAAa,CAAC,CAAC;AAE5C,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC"}
1
+ {"version":3,"file":"CommandDialog.stories.d.ts","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,OAAO,wBAAwB,CAAC;AAEhC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,aAAa,CAGpC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,aAAa,CAAC,CAAC;AAsG5C,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC"}
@@ -1,12 +1,66 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
2
3
  import { CommandDialog } from './CommandDialog';
4
+ import { Command, CommandValidator } from '@cratis/arc/commands';
5
+ import { PropertyDescriptor } from '@cratis/arc/reflection';
6
+ import { InputTextField, NumberField } from '../CommandForm/fields';
7
+ import '@cratis/arc/validation';
3
8
  const meta = {
4
9
  title: 'CommandDialog/CommandDialog',
5
10
  component: CommandDialog,
6
11
  };
7
12
  export default meta;
13
+ class UpdateUserCommandValidator extends CommandValidator {
14
+ constructor() {
15
+ super();
16
+ this.ruleFor((c) => c.name).notEmpty().minLength(2).maxLength(50);
17
+ this.ruleFor((c) => c.email).notEmpty().emailAddress();
18
+ this.ruleFor((c) => c.age).greaterThanOrEqual(18).lessThanOrEqual(120);
19
+ }
20
+ }
21
+ class UpdateUserCommand extends Command {
22
+ route = '/api/users/update';
23
+ validation = new UpdateUserCommandValidator();
24
+ propertyDescriptors = [
25
+ new PropertyDescriptor('name', String),
26
+ new PropertyDescriptor('email', String),
27
+ new PropertyDescriptor('age', Number),
28
+ ];
29
+ name = '';
30
+ email = '';
31
+ age = 0;
32
+ constructor() {
33
+ super(Object, false);
34
+ }
35
+ get requestParameters() {
36
+ return [];
37
+ }
38
+ get properties() {
39
+ return ['name', 'email', 'age'];
40
+ }
41
+ }
42
+ const DialogWrapper = () => {
43
+ const [visible, setVisible] = useState(true);
44
+ const [result, setResult] = useState('');
45
+ const [validationErrors, setValidationErrors] = useState([]);
46
+ return (_jsxs("div", { className: "storybook-wrapper", children: [_jsx("button", { className: "p-button p-component mb-3", onClick: () => {
47
+ setVisible(true);
48
+ setValidationErrors([]);
49
+ setResult('');
50
+ }, children: "Open Dialog" }), validationErrors.length > 0 && (_jsxs("div", { className: "p-3 mt-3 bg-red-100 border-round", children: [_jsx("strong", { children: "Validation Errors:" }), _jsx("ul", { className: "mt-2 mb-0", children: validationErrors.map((error, index) => (_jsx("li", { children: error }, index))) })] })), result && (_jsxs("div", { className: "p-3 mt-3 bg-green-100 border-round", children: [_jsx("strong", { children: "Command executed:" }), " ", result] })), _jsxs(CommandDialog, { command: UpdateUserCommand, visible: visible, header: "Update User Information (with Validation)", confirmLabel: "Save", cancelLabel: "Cancel", onConfirm: async (commandResult) => {
51
+ setResult(JSON.stringify(commandResult));
52
+ setVisible(false);
53
+ }, onCancel: () => setVisible(false), onFieldChange: async (command) => {
54
+ const validationResult = await command.validate();
55
+ if (!validationResult.isValid) {
56
+ setValidationErrors(validationResult.validationResults.map(v => v.message));
57
+ }
58
+ else {
59
+ setValidationErrors([]);
60
+ }
61
+ }, children: [_jsx(InputTextField, { value: (c) => c.name, title: "Name", placeholder: "Enter name (min 2 chars)" }), _jsx(InputTextField, { value: (c) => c.email, title: "Email", placeholder: "Enter email", type: "email" }), _jsx(NumberField, { value: (c) => c.age, title: "Age", placeholder: "Enter age (18-120)" })] })] }));
62
+ };
8
63
  export const Default = {
9
- args: {},
10
- render: (args) => (_jsx("div", { className: "storybook-wrapper", children: _jsx(CommandDialog, { ...args }) }))
64
+ render: () => _jsx(DialogWrapper, {}),
11
65
  };
12
66
  //# sourceMappingURL=CommandDialog.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandDialog.stories.js","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.stories.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,IAAI,GAA+B;IACvC,KAAK,EAAE,6BAA6B;IACpC,SAAS,EAAE,aAAa;CACzB,CAAC;AAEF,eAAe,IAAI,CAAC;AAGpB,MAAM,CAAC,MAAM,OAAO,GAAU;IAC1B,IAAI,EAAE,EAEL;IACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CACd,cAAK,SAAS,EAAC,mBAAmB,YAC9B,KAAC,aAAa,OAAK,IAAI,GAAI,GACzB,CACT;CACJ,CAAC"}
1
+ {"version":3,"file":"CommandDialog.stories.js","sourceRoot":"","sources":["../../../CommandDialog/CommandDialog.stories.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { WrappedFieldProps } from '../asCommandFormField';
1
+ import React from 'react';
2
+ import { WrappedFieldProps } from '@cratis/arc.react/commands';
2
3
  interface CheckboxFieldComponentProps extends WrappedFieldProps<boolean> {
3
4
  label?: string;
4
5
  }
5
6
  export declare const CheckboxField: {
6
- <TCommand>(props: Omit<CheckboxFieldComponentProps, keyof WrappedFieldProps<unknown>> & import("..").BaseCommandFormFieldProps<TCommand> & import("..").InjectedCommandFormFieldProps): import("react/jsx-runtime").JSX.Element;
7
+ <TCommand = unknown>(props: import("@cratis/arc.react/commands").CommandFormFieldComponentProps<CheckboxFieldComponentProps, TCommand>): React.ReactElement;
7
8
  displayName: string;
8
9
  };
9
10
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/CheckboxField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,UAAU,2BAA4B,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,aAAa;;;CAezB,CAAC"}
1
+ {"version":3,"file":"CheckboxField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/CheckboxField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,UAAU,2BAA4B,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,aAAa;;;CAezB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Checkbox } from 'primereact/checkbox';
3
- import { asCommandFormField } from '../asCommandFormField.js';
3
+ import { asCommandFormField } from '@cratis/arc.react/commands';
4
4
 
5
5
  const CheckboxField = asCommandFormField((props) => (jsxs("div", { className: "flex align-items-center", children: [jsx(Checkbox, { checked: props.value, onChange: props.onChange, invalid: props.invalid }), props.label && jsx("label", { className: "ml-2", children: props.label })] })), {
6
6
  defaultValue: false,
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxField.js","sources":["../../../../CommandForm/fields/CheckboxField.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 { Checkbox } from 'primereact/checkbox';\nimport React from 'react';\nimport { asCommandFormField, WrappedFieldProps } from '../asCommandFormField';\n\ninterface CheckboxFieldComponentProps extends WrappedFieldProps<boolean> {\n label?: string;\n}\n\nexport const CheckboxField = asCommandFormField<CheckboxFieldComponentProps>(\n (props) => (\n <div className=\"flex align-items-center\">\n <Checkbox\n checked={props.value}\n onChange={props.onChange}\n invalid={props.invalid}\n />\n {props.label && <label className=\"ml-2\">{props.label}</label>}\n </div>\n ),\n {\n defaultValue: false,\n extractValue: (e: { checked: boolean }) => e.checked\n }\n);\n"],"names":["_jsxs","_jsx"],"mappings":";;;;AAWO,MAAM,aAAa,GAAG,kBAAkB,CAC3C,CAAC,KAAK,MACFA,cAAK,SAAS,EAAC,yBAAyB,EAAA,QAAA,EAAA,CACpCC,GAAA,CAAC,QAAQ,EAAA,EACL,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,OAAO,EAAE,KAAK,CAAC,OAAO,EAAA,CACxB,EACD,KAAK,CAAC,KAAK,IAAIA,GAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,MAAM,EAAA,QAAA,EAAE,KAAK,CAAC,KAAK,EAAA,CAAS,CAAA,EAAA,CAC3D,CACT,EACD;AACI,IAAA,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,CAAC,CAAuB,KAAK,CAAC,CAAC;AAChD,CAAA;;;;"}
1
+ {"version":3,"file":"CheckboxField.js","sources":["../../../../CommandForm/fields/CheckboxField.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 { Checkbox } from 'primereact/checkbox';\nimport React from 'react';\nimport { asCommandFormField, WrappedFieldProps } from '@cratis/arc.react/commands';\n\ninterface CheckboxFieldComponentProps extends WrappedFieldProps<boolean> {\n label?: string;\n}\n\nexport const CheckboxField = asCommandFormField<CheckboxFieldComponentProps>(\n (props) => (\n <div className=\"flex align-items-center\">\n <Checkbox\n checked={props.value}\n onChange={props.onChange}\n invalid={props.invalid}\n />\n {props.label && <label className=\"ml-2\">{props.label}</label>}\n </div>\n ),\n {\n defaultValue: false,\n extractValue: (e: { checked: boolean }) => e.checked\n }\n);\n"],"names":["_jsxs","_jsx"],"mappings":";;;;AAWO,MAAM,aAAa,GAAG,kBAAkB,CAC3C,CAAC,KAAK,MACFA,cAAK,SAAS,EAAC,yBAAyB,EAAA,QAAA,EAAA,CACpCC,GAAA,CAAC,QAAQ,EAAA,EACL,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,OAAO,EAAE,KAAK,CAAC,OAAO,EAAA,CACxB,EACD,KAAK,CAAC,KAAK,IAAIA,GAAA,CAAA,OAAA,EAAA,EAAO,SAAS,EAAC,MAAM,EAAA,QAAA,EAAE,KAAK,CAAC,KAAK,EAAA,CAAS,CAAA,EAAA,CAC3D,CACT,EACD;AACI,IAAA,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,CAAC,CAAuB,KAAK,CAAC,CAAC;AAChD,CAAA;;;;"}
@@ -1,14 +1,15 @@
1
- import { WrappedFieldProps } from '../asCommandFormField';
2
- interface SelectComponentProps extends WrappedFieldProps<string> {
1
+ import React from 'react';
2
+ import { WrappedFieldProps } from '@cratis/arc.react/commands';
3
+ interface DropdownFieldComponentProps extends WrappedFieldProps<string | number> {
3
4
  options: Array<{
4
5
  [key: string]: unknown;
5
6
  }>;
6
- optionIdField: string;
7
- optionLabelField: string;
7
+ optionValue: string;
8
+ optionLabel: string;
8
9
  placeholder?: string;
9
10
  }
10
- export declare const SelectField: {
11
- <TCommand>(props: Omit<SelectComponentProps, keyof WrappedFieldProps<unknown>> & import("..").BaseCommandFormFieldProps<TCommand> & import("..").InjectedCommandFormFieldProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare const DropdownField: {
12
+ <TCommand = unknown>(props: import("@cratis/arc.react/commands").CommandFormFieldComponentProps<DropdownFieldComponentProps, TCommand>): React.ReactElement;
12
13
  displayName: string;
13
14
  };
14
15
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/DropdownField.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,UAAU,oBAAqB,SAAQ,iBAAiB,CAAC,MAAM,CAAC;IAC5D,OAAO,EAAE,KAAK,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAkBD,eAAO,MAAM,WAAW;;;CAMvB,CAAC"}
1
+ {"version":3,"file":"DropdownField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/DropdownField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,UAAU,2BAA4B,SAAQ,iBAAiB,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5E,OAAO,EAAE,KAAK,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,aAAa;;;CAiBzB,CAAC"}
@@ -1,11 +1,11 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { asCommandFormField } from '../asCommandFormField.js';
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { Dropdown } from 'primereact/dropdown';
3
+ import { asCommandFormField } from '@cratis/arc.react/commands';
3
4
 
4
- const SelectComponent = (props) => (jsxs("select", { value: props.value || '', onChange: props.onChange, required: props.required, className: `w-full p-3 rounded-md text-base ${props.invalid ? 'border border-red-500' : 'border border-gray-300'}`, children: [props.placeholder && jsx("option", { value: "", children: props.placeholder }), props.options.map((option, index) => (jsx("option", { value: String(option[props.optionIdField]), children: String(option[props.optionLabelField]) }, index)))] }));
5
- const SelectField = asCommandFormField(SelectComponent, {
5
+ const DropdownField = asCommandFormField((props) => (jsx(Dropdown, { value: props.value, onChange: (e) => props.onChange(e.value), options: props.options, optionValue: props.optionValue, optionLabel: props.optionLabel, placeholder: props.placeholder, invalid: props.invalid, className: "w-full" })), {
6
6
  defaultValue: '',
7
- extractValue: (e) => e.target.value
7
+ extractValue: (e) => e
8
8
  });
9
9
 
10
- export { SelectField };
10
+ export { DropdownField };
11
11
  //# sourceMappingURL=DropdownField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownField.js","sources":["../../../../CommandForm/fields/DropdownField.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 React from 'react';\nimport { asCommandFormField, WrappedFieldProps } from '../asCommandFormField';\n\ninterface SelectComponentProps extends WrappedFieldProps<string> {\n options: Array<{ [key: string]: unknown }>;\n optionIdField: string;\n optionLabelField: string;\n placeholder?: string;\n}\n\nconst SelectComponent = (props: SelectComponentProps) => (\n <select\n value={props.value || ''}\n onChange={props.onChange}\n required={props.required}\n className={`w-full p-3 rounded-md text-base ${props.invalid ? 'border border-red-500' : 'border border-gray-300'}`}\n >\n {props.placeholder && <option value=\"\">{props.placeholder}</option>}\n {props.options.map((option, index) => (\n <option key={index} value={String(option[props.optionIdField])}>\n {String(option[props.optionLabelField])}\n </option>\n ))}\n </select>\n);\n\nexport const SelectField = asCommandFormField<SelectComponentProps>(\n SelectComponent,\n {\n defaultValue: '',\n extractValue: (e: React.ChangeEvent<HTMLSelectElement>) => e.target.value\n }\n);\n"],"names":["_jsxs","_jsx"],"mappings":";;;AAaA,MAAM,eAAe,GAAG,CAAC,KAA2B,MAChDA,IAAA,CAAA,QAAA,EAAA,EACI,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,SAAS,EAAE,CAAA,gCAAA,EAAmC,KAAK,CAAC,OAAO,GAAG,uBAAuB,GAAG,wBAAwB,CAAA,CAAE,aAEjH,KAAK,CAAC,WAAW,IAAIC,GAAA,CAAA,QAAA,EAAA,EAAQ,KAAK,EAAC,EAAE,EAAA,QAAA,EAAE,KAAK,CAAC,WAAW,GAAU,EAClE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,MAC7BA,GAAA,CAAA,QAAA,EAAA,EAAoB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAA,QAAA,EACzD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAA,EAD9B,KAAK,CAET,CACZ,CAAC,CAAA,EAAA,CACG,CACZ;AAEM,MAAM,WAAW,GAAG,kBAAkB,CACzC,eAAe,EACf;AACI,IAAA,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,CAAC,CAAuC,KAAK,CAAC,CAAC,MAAM,CAAC;AACvE,CAAA;;;;"}
1
+ {"version":3,"file":"DropdownField.js","sources":["../../../../CommandForm/fields/DropdownField.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 { Dropdown } from 'primereact/dropdown';\nimport React from 'react';\nimport { asCommandFormField, WrappedFieldProps } from '@cratis/arc.react/commands';\n\ninterface DropdownFieldComponentProps extends WrappedFieldProps<string | number> {\n options: Array<{ [key: string]: unknown }>;\n optionValue: string;\n optionLabel: string;\n placeholder?: string;\n}\n\nexport const DropdownField = asCommandFormField<DropdownFieldComponentProps>(\n (props) => (\n <Dropdown\n value={props.value}\n onChange={(e) => props.onChange(e.value)}\n options={props.options}\n optionValue={props.optionValue}\n optionLabel={props.optionLabel}\n placeholder={props.placeholder}\n invalid={props.invalid}\n className=\"w-full\"\n />\n ),\n {\n defaultValue: '',\n extractValue: (e: unknown) => e as string | number\n }\n);\n"],"names":["_jsx"],"mappings":";;;;AAcO,MAAM,aAAa,GAAG,kBAAkB,CAC3C,CAAC,KAAK,MACFA,GAAA,CAAC,QAAQ,IACL,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EACxC,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,SAAS,EAAC,QAAQ,EAAA,CACpB,CACL,EACD;AACI,IAAA,YAAY,EAAE,EAAE;AAChB,IAAA,YAAY,EAAE,CAAC,CAAU,KAAK;AACjC,CAAA;;;;"}
@@ -0,0 +1,13 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import '@cratis/arc/validation';
3
+ declare const meta: Meta;
4
+ export default meta;
5
+ type Story = StoryObj;
6
+ export declare const AllFields: Story;
7
+ export declare const InputTextFieldExample: Story;
8
+ export declare const NumberFieldExample: Story;
9
+ export declare const TextAreaFieldExample: Story;
10
+ export declare const DropdownFieldExample: Story;
11
+ export declare const SliderFieldExample: Story;
12
+ export declare const CheckboxFieldExample: Story;
13
+ //# sourceMappingURL=Fields.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fields.stories.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/Fields.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKlD,OAAO,wBAAwB,CAAC;AAUhC,QAAA,MAAM,IAAI,EAAE,IAKX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAkEtB,eAAO,MAAM,SAAS,EAAE,KAsMvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,KAkCnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAuBhC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAqBlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAuBlC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAsBhC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAwBlC,CAAC"}
@@ -0,0 +1,137 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { CommandForm } from '@cratis/arc.react/commands';
4
+ import { Command, CommandValidator } from '@cratis/arc/commands';
5
+ import { PropertyDescriptor } from '@cratis/arc/reflection';
6
+ import { StoryContainer, StorySection, StoryDivider } from '@cratis/arc.react/stories';
7
+ import '@cratis/arc/validation';
8
+ import { InputTextField, NumberField, TextAreaField, CheckboxField, SliderField, DropdownField } from './index';
9
+ const meta = {
10
+ title: 'CommandForm/PrimeReact Fields',
11
+ parameters: {
12
+ layout: 'centered',
13
+ },
14
+ };
15
+ export default meta;
16
+ class FormFieldsCommand extends Command {
17
+ route = '/api/fields';
18
+ validation = new FormFieldsCommandValidator();
19
+ propertyDescriptors = [
20
+ new PropertyDescriptor('textInput', String),
21
+ new PropertyDescriptor('emailInput', String),
22
+ new PropertyDescriptor('passwordInput', String),
23
+ new PropertyDescriptor('numberInput', Number),
24
+ new PropertyDescriptor('textArea', String),
25
+ new PropertyDescriptor('checkbox', Boolean),
26
+ new PropertyDescriptor('slider', Number),
27
+ new PropertyDescriptor('dropdown', String),
28
+ ];
29
+ textInput = '';
30
+ emailInput = '';
31
+ passwordInput = '';
32
+ numberInput = 0;
33
+ textArea = '';
34
+ checkbox = false;
35
+ slider = 50;
36
+ dropdown = '';
37
+ constructor() {
38
+ super(Object, false);
39
+ }
40
+ get requestParameters() {
41
+ return [];
42
+ }
43
+ get properties() {
44
+ return [
45
+ 'textInput',
46
+ 'emailInput',
47
+ 'passwordInput',
48
+ 'numberInput',
49
+ 'textArea',
50
+ 'checkbox',
51
+ 'slider',
52
+ 'dropdown'
53
+ ];
54
+ }
55
+ }
56
+ class FormFieldsCommandValidator extends CommandValidator {
57
+ constructor() {
58
+ super();
59
+ this.ruleFor(c => c.textInput).notEmpty().minLength(3);
60
+ this.ruleFor(c => c.emailInput).notEmpty().emailAddress();
61
+ this.ruleFor(c => c.passwordInput).notEmpty().minLength(6);
62
+ this.ruleFor(c => c.numberInput).greaterThanOrEqual(1).lessThanOrEqual(100);
63
+ this.ruleFor(c => c.dropdown).notEmpty();
64
+ }
65
+ }
66
+ const dropdownOptions = [
67
+ { id: 'option1', name: 'Option 1' },
68
+ { id: 'option2', name: 'Option 2' },
69
+ { id: 'option3', name: 'Option 3' },
70
+ { id: 'option4', name: 'Option 4' }
71
+ ];
72
+ export const AllFields = {
73
+ render: () => {
74
+ const [validationState, setValidationState] = useState({ errors: {}, canSubmit: false });
75
+ return (_jsxs(StoryContainer, { size: "md", asCard: true, children: [_jsx("h1", { children: "PrimeReact Form Fields" }), _jsx("p", { children: "This showcase demonstrates all available PrimeReact-based form fields integrated with CommandForm from @cratis/arc.react." }), _jsx(StoryDivider, {}), _jsxs(CommandForm, { command: FormFieldsCommand, initialValues: {
76
+ textInput: '',
77
+ emailInput: '',
78
+ passwordInput: '',
79
+ numberInput: 25,
80
+ textArea: '',
81
+ checkbox: false,
82
+ slider: 50,
83
+ dropdown: '',
84
+ }, onFieldChange: async (command, fieldName) => {
85
+ const result = await command.validate();
86
+ if (!result.isValid) {
87
+ const fieldError = result.validationResults.find(v => v.members.includes(fieldName));
88
+ if (fieldError) {
89
+ setValidationState(prev => ({
90
+ errors: { ...prev.errors, [fieldName]: fieldError.message },
91
+ canSubmit: false
92
+ }));
93
+ }
94
+ }
95
+ else {
96
+ setValidationState(prev => {
97
+ const { [fieldName]: removed, ...rest } = prev.errors;
98
+ return {
99
+ errors: rest,
100
+ canSubmit: Object.keys(rest).length === 0
101
+ };
102
+ });
103
+ }
104
+ }, children: [_jsxs(StorySection, { children: [_jsx("h3", { children: "Text Inputs" }), _jsx(InputTextField, { value: c => c.textInput, title: "Text Input", placeholder: "Enter at least 3 characters", description: "Standard text input field with validation" }), validationState.errors.textInput && (_jsx("div", { style: { color: 'var(--red-500)', fontSize: '0.875rem', marginTop: '0.25rem', marginBottom: '1rem' }, children: validationState.errors.textInput })), _jsx(InputTextField, { value: c => c.emailInput, title: "Email Input", type: "email", placeholder: "Enter a valid email address", description: "Email input with email validation" }), validationState.errors.emailInput && (_jsx("div", { style: { color: 'var(--red-500)', fontSize: '0.875rem', marginTop: '0.25rem', marginBottom: '1rem' }, children: validationState.errors.emailInput })), _jsx(InputTextField, { value: c => c.passwordInput, title: "Password Input", type: "password", placeholder: "Enter at least 6 characters", description: "Password input field (min 6 characters)" }), validationState.errors.passwordInput && (_jsx("div", { style: { color: 'var(--red-500)', fontSize: '0.875rem', marginTop: '0.25rem', marginBottom: '1rem' }, children: validationState.errors.passwordInput }))] }), _jsx(StoryDivider, {}), _jsxs(StorySection, { children: [_jsx("h3", { children: "Number Input" }), _jsx(NumberField, { value: c => c.numberInput, title: "Number Field", placeholder: "Enter a number (1-100)", description: "Number input with min/max boundaries", min: 1, max: 100, step: 1 }), validationState.errors.numberInput && (_jsx("div", { style: { color: 'var(--red-500)', fontSize: '0.875rem', marginTop: '0.25rem', marginBottom: '1rem' }, children: validationState.errors.numberInput }))] }), _jsx(StoryDivider, {}), _jsxs(StorySection, { children: [_jsx("h3", { children: "Text Area" }), _jsx(TextAreaField, { value: c => c.textArea, title: "Text Area Field", placeholder: "Enter a longer text...", description: "Multi-line text input", rows: 5 })] }), _jsx(StoryDivider, {}), _jsxs(StorySection, { children: [_jsx("h3", { children: "Dropdown" }), _jsx(DropdownField, { value: c => c.dropdown, title: "Dropdown Field", placeholder: "Select an option", description: "PrimeReact dropdown component", options: dropdownOptions, optionValue: "id", optionLabel: "name" }), validationState.errors.dropdown && (_jsx("div", { style: { color: 'var(--red-500)', fontSize: '0.875rem', marginTop: '0.25rem', marginBottom: '1rem' }, children: validationState.errors.dropdown }))] }), _jsx(StoryDivider, {}), _jsxs(StorySection, { children: [_jsx("h3", { children: "Slider" }), _jsx(SliderField, { value: c => c.slider, title: "Slider Field", description: "Slider for numeric values", min: 0, max: 100, step: 5 })] }), _jsx(StoryDivider, {}), _jsxs(StorySection, { children: [_jsx("h3", { children: "Checkbox" }), _jsx(CheckboxField, { value: c => c.checkbox, label: "I agree to the terms and conditions" })] }), _jsx(StoryDivider, {}), _jsxs("div", { style: { marginTop: '1.5rem', display: 'flex', gap: '0.5rem', alignItems: 'center' }, children: [_jsx("button", { type: "submit", disabled: !validationState.canSubmit, className: "p-button p-component", children: "Submit Form" }), !validationState.canSubmit && Object.keys(validationState.errors).length > 0 && (_jsx("span", { style: { color: 'var(--orange-500)', fontSize: '0.875rem' }, children: "Please fix validation errors" }))] })] })] }));
105
+ }
106
+ };
107
+ export const InputTextFieldExample = {
108
+ render: () => {
109
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "InputTextField" }), _jsx("p", { children: "PrimeReact InputText component wrapped for CommandForm." }), _jsxs(CommandForm, { command: FormFieldsCommand, initialValues: { textInput: '', emailInput: '', passwordInput: '' }, children: [_jsx(InputTextField, { value: c => c.textInput, title: "Standard Text", placeholder: "Type here..." }), _jsx(InputTextField, { value: c => c.emailInput, title: "Email", type: "email", placeholder: "your@email.com" }), _jsx(InputTextField, { value: c => c.passwordInput, title: "Password", type: "password", placeholder: "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022" })] })] }));
110
+ }
111
+ };
112
+ export const NumberFieldExample = {
113
+ render: () => {
114
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "NumberField" }), _jsx("p", { children: "PrimeReact InputNumber component with spinners and constraints." }), _jsx(CommandForm, { command: FormFieldsCommand, initialValues: { numberInput: 42 }, children: _jsx(NumberField, { value: c => c.numberInput, title: "Quantity", placeholder: "Enter a number", min: 0, max: 100, step: 1 }) })] }));
115
+ }
116
+ };
117
+ export const TextAreaFieldExample = {
118
+ render: () => {
119
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "TextAreaField" }), _jsx("p", { children: "PrimeReact InputTextarea for multi-line text input." }), _jsx(CommandForm, { command: FormFieldsCommand, initialValues: { textArea: '' }, children: _jsx(TextAreaField, { value: c => c.textArea, title: "Description", placeholder: "Enter a detailed description...", rows: 6 }) })] }));
120
+ }
121
+ };
122
+ export const DropdownFieldExample = {
123
+ render: () => {
124
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "DropdownField" }), _jsx("p", { children: "PrimeReact Dropdown for selecting from a list of options." }), _jsx(CommandForm, { command: FormFieldsCommand, initialValues: { dropdown: '' }, children: _jsx(DropdownField, { value: c => c.dropdown, title: "Select Option", placeholder: "Choose...", options: dropdownOptions, optionValue: "id", optionLabel: "name" }) })] }));
125
+ }
126
+ };
127
+ export const SliderFieldExample = {
128
+ render: () => {
129
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "SliderField" }), _jsx("p", { children: "PrimeReact Slider for selecting numeric values visually." }), _jsx(CommandForm, { command: FormFieldsCommand, initialValues: { slider: 75 }, children: _jsx(SliderField, { value: c => c.slider, title: "Volume", min: 0, max: 100, step: 5 }) })] }));
130
+ }
131
+ };
132
+ export const CheckboxFieldExample = {
133
+ render: () => {
134
+ return (_jsxs(StoryContainer, { size: "sm", asCard: true, children: [_jsx("h2", { children: "CheckboxField" }), _jsx("p", { children: "PrimeReact Checkbox for boolean values." }), _jsxs(CommandForm, { command: FormFieldsCommand, initialValues: { checkbox: false }, children: [_jsx(CheckboxField, { value: c => c.checkbox, label: "Enable notifications" }), _jsx(CheckboxField, { value: c => c.checkbox, label: "I have read and agree to the terms" })] })] }));
135
+ }
136
+ };
137
+ //# sourceMappingURL=Fields.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fields.stories.js","sourceRoot":"","sources":["../../../../CommandForm/fields/Fields.stories.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import { WrappedFieldProps } from '../asCommandFormField';
1
+ import React from 'react';
2
+ import { WrappedFieldProps } from '@cratis/arc.react/commands';
2
3
  interface InputTextComponentProps extends WrappedFieldProps<string> {
3
4
  type?: 'text' | 'email' | 'password' | 'color' | 'date' | 'datetime-local' | 'time' | 'url' | 'tel' | 'search';
4
5
  placeholder?: string;
5
6
  }
6
7
  export declare const InputTextField: {
7
- <TCommand>(props: Omit<InputTextComponentProps, keyof WrappedFieldProps<unknown>> & import("..").BaseCommandFormFieldProps<TCommand> & import("..").InjectedCommandFormFieldProps): import("react/jsx-runtime").JSX.Element;
8
+ <TCommand = unknown>(props: import("@cratis/arc.react/commands").CommandFormFieldComponentProps<InputTextComponentProps, TCommand>): React.ReactElement;
8
9
  displayName: string;
9
10
  };
10
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"InputTextField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/InputTextField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,UAAU,uBAAwB,SAAQ,iBAAiB,CAAC,MAAM,CAAC;IAC/D,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC/G,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,cAAc;;;CAe1B,CAAC"}
1
+ {"version":3,"file":"InputTextField.d.ts","sourceRoot":"","sources":["../../../../CommandForm/fields/InputTextField.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,UAAU,uBAAwB,SAAQ,iBAAiB,CAAC,MAAM,CAAC;IAC/D,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC/G,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,cAAc;;;CAe1B,CAAC"}