@cratis/components 0.1.19 → 1.0.4

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 (309) hide show
  1. package/dist/cjs/CommandDialog/CommandDialog.js +35 -24
  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 +22 -1
  51. package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -1
  52. package/dist/esm/CommandDialog/CommandDialog.js +35 -24
  53. package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
  54. package/dist/esm/CommandDialog/CommandDialog.stories.d.ts +11 -0
  55. package/dist/esm/CommandDialog/CommandDialog.stories.d.ts.map +1 -1
  56. package/dist/esm/CommandDialog/CommandDialog.stories.js +208 -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 +56 -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 +78 -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 +53 -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/Dialog.stories.d.ts +12 -0
  138. package/dist/esm/Dialogs/Dialog.stories.d.ts.map +1 -0
  139. package/dist/esm/Dialogs/Dialog.stories.js +44 -0
  140. package/dist/esm/Dialogs/Dialog.stories.js.map +1 -0
  141. package/dist/esm/Dialogs/index.d.ts +2 -1
  142. package/dist/esm/Dialogs/index.d.ts.map +1 -1
  143. package/dist/esm/Dialogs/index.js +2 -1
  144. package/dist/esm/Dialogs/index.js.map +1 -1
  145. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts +8 -0
  146. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts.map +1 -0
  147. package/dist/esm/ObjectContentEditor/ObjectContentEditor.js +135 -0
  148. package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -0
  149. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.d.ts +10 -0
  150. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.d.ts.map +1 -0
  151. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.js +144 -0
  152. package/dist/esm/ObjectContentEditor/ObjectContentEditor.stories.js.map +1 -0
  153. package/dist/esm/ObjectContentEditor/index.d.ts +2 -0
  154. package/dist/esm/ObjectContentEditor/index.d.ts.map +1 -0
  155. package/dist/esm/ObjectContentEditor/index.js +2 -0
  156. package/dist/esm/ObjectContentEditor/index.js.map +1 -0
  157. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts +6 -0
  158. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.d.ts.map +1 -0
  159. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js +24 -0
  160. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -0
  161. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.d.ts +10 -0
  162. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.d.ts.map +1 -0
  163. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.js +46 -0
  164. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.stories.js.map +1 -0
  165. package/dist/esm/ObjectNavigationalBar/index.d.ts +2 -0
  166. package/dist/esm/ObjectNavigationalBar/index.d.ts.map +1 -0
  167. package/dist/esm/ObjectNavigationalBar/index.js +2 -0
  168. package/dist/esm/ObjectNavigationalBar/index.js.map +1 -0
  169. package/dist/esm/SchemaEditor/NameCell.d.ts +9 -0
  170. package/dist/esm/SchemaEditor/NameCell.d.ts.map +1 -0
  171. package/dist/esm/SchemaEditor/NameCell.js +17 -0
  172. package/dist/esm/SchemaEditor/NameCell.js.map +1 -0
  173. package/dist/esm/SchemaEditor/SchemaEditor.d.ts +17 -0
  174. package/dist/esm/SchemaEditor/SchemaEditor.d.ts.map +1 -0
  175. package/dist/esm/SchemaEditor/SchemaEditor.js +331 -0
  176. package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -0
  177. package/dist/esm/SchemaEditor/SchemaEditor.module.css +11 -0
  178. package/dist/esm/SchemaEditor/SchemaEditor.stories.d.ts +12 -0
  179. package/dist/esm/SchemaEditor/SchemaEditor.stories.d.ts.map +1 -0
  180. package/dist/esm/SchemaEditor/SchemaEditor.stories.js +158 -0
  181. package/dist/esm/SchemaEditor/SchemaEditor.stories.js.map +1 -0
  182. package/dist/esm/SchemaEditor/TypeCell.d.ts +14 -0
  183. package/dist/esm/SchemaEditor/TypeCell.d.ts.map +1 -0
  184. package/dist/esm/SchemaEditor/TypeCell.js +81 -0
  185. package/dist/esm/SchemaEditor/TypeCell.js.map +1 -0
  186. package/dist/esm/SchemaEditor/index.d.ts +4 -0
  187. package/dist/esm/SchemaEditor/index.d.ts.map +1 -0
  188. package/dist/esm/SchemaEditor/index.js +3 -0
  189. package/dist/esm/TimeMachine/EventsView.stories.d.ts +8 -7
  190. package/dist/esm/TimeMachine/EventsView.stories.d.ts.map +1 -1
  191. package/dist/esm/TimeMachine/EventsView.stories.js +80 -4
  192. package/dist/esm/TimeMachine/EventsView.stories.js.map +1 -1
  193. package/dist/esm/TimeMachine/Properties.stories.d.ts +9 -7
  194. package/dist/esm/TimeMachine/Properties.stories.d.ts.map +1 -1
  195. package/dist/esm/TimeMachine/Properties.stories.js +49 -4
  196. package/dist/esm/TimeMachine/Properties.stories.js.map +1 -1
  197. package/dist/esm/TimeMachine/ReadModelView.stories.d.ts +7 -7
  198. package/dist/esm/TimeMachine/ReadModelView.stories.d.ts.map +1 -1
  199. package/dist/esm/TimeMachine/ReadModelView.stories.js +79 -5
  200. package/dist/esm/TimeMachine/ReadModelView.stories.js.map +1 -1
  201. package/dist/esm/TimeMachine/TimeMachine.stories.d.ts +8 -7
  202. package/dist/esm/TimeMachine/TimeMachine.stories.d.ts.map +1 -1
  203. package/dist/esm/TimeMachine/TimeMachine.stories.js +113 -4
  204. package/dist/esm/TimeMachine/TimeMachine.stories.js.map +1 -1
  205. package/dist/esm/index.d.ts +4 -2
  206. package/dist/esm/index.d.ts.map +1 -1
  207. package/dist/esm/index.js +10 -6
  208. package/dist/esm/index.js.map +1 -1
  209. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  210. package/dist/esm/types/JsonSchema.d.ts +32 -0
  211. package/dist/esm/types/JsonSchema.d.ts.map +1 -0
  212. package/dist/esm/types/JsonSchema.js +2 -0
  213. package/dist/esm/types/JsonSchema.js.map +1 -0
  214. package/dist/esm/types/TypeFormat.d.ts +6 -0
  215. package/dist/esm/types/TypeFormat.d.ts.map +1 -0
  216. package/dist/esm/types/TypeFormat.js +18 -0
  217. package/dist/esm/types/TypeFormat.js.map +1 -0
  218. package/package.json +12 -7
  219. package/dist/cjs/CommandForm/CommandForm.js +0 -183
  220. package/dist/cjs/CommandForm/CommandForm.js.map +0 -1
  221. package/dist/cjs/CommandForm/CommandFormField.js +0 -11
  222. package/dist/cjs/CommandForm/CommandFormField.js.map +0 -1
  223. package/dist/cjs/CommandForm/CommandFormFields.js +0 -73
  224. package/dist/cjs/CommandForm/CommandFormFields.js.map +0 -1
  225. package/dist/cjs/CommandForm/ValidationMessage.js +0 -24
  226. package/dist/cjs/CommandForm/ValidationMessage.js.map +0 -1
  227. package/dist/cjs/CommandForm/asCommandFormField.js +0 -47
  228. package/dist/cjs/CommandForm/asCommandFormField.js.map +0 -1
  229. package/dist/cjs/EventModeling/EventModeling.css +0 -146
  230. package/dist/cjs/EventModeling/EventModeling.js +0 -209
  231. package/dist/cjs/EventModeling/EventModeling.js.map +0 -1
  232. package/dist/cjs/EventModeling/components/Canvas.js +0 -403
  233. package/dist/cjs/EventModeling/components/Canvas.js.map +0 -1
  234. package/dist/cjs/EventModeling/components/CanvasControls.js +0 -10
  235. package/dist/cjs/EventModeling/components/CanvasControls.js.map +0 -1
  236. package/dist/cjs/EventModeling/components/Toolbox.js +0 -18
  237. package/dist/cjs/EventModeling/components/Toolbox.js.map +0 -1
  238. package/dist/cjs/EventModeling/engine/connectorGraphics.js +0 -173
  239. package/dist/cjs/EventModeling/engine/connectorGraphics.js.map +0 -1
  240. package/dist/cjs/EventModeling/engine/elementSprites.js +0 -301
  241. package/dist/cjs/EventModeling/engine/elementSprites.js.map +0 -1
  242. package/dist/cjs/EventModeling/index.js +0 -12
  243. package/dist/cjs/EventModeling/types.js +0 -60
  244. package/dist/cjs/EventModeling/types.js.map +0 -1
  245. package/dist/esm/CommandForm/CommandForm.d.ts +0 -49
  246. package/dist/esm/CommandForm/CommandForm.d.ts.map +0 -1
  247. package/dist/esm/CommandForm/CommandForm.js +0 -178
  248. package/dist/esm/CommandForm/CommandForm.js.map +0 -1
  249. package/dist/esm/CommandForm/CommandForm.stories.d.ts +0 -8
  250. package/dist/esm/CommandForm/CommandForm.stories.d.ts.map +0 -1
  251. package/dist/esm/CommandForm/CommandForm.stories.js +0 -45
  252. package/dist/esm/CommandForm/CommandForm.stories.js.map +0 -1
  253. package/dist/esm/CommandForm/CommandFormField.d.ts +0 -18
  254. package/dist/esm/CommandForm/CommandFormField.d.ts.map +0 -1
  255. package/dist/esm/CommandForm/CommandFormField.js +0 -9
  256. package/dist/esm/CommandForm/CommandFormField.js.map +0 -1
  257. package/dist/esm/CommandForm/CommandFormFields.d.ts +0 -11
  258. package/dist/esm/CommandForm/CommandFormFields.d.ts.map +0 -1
  259. package/dist/esm/CommandForm/CommandFormFields.js +0 -71
  260. package/dist/esm/CommandForm/CommandFormFields.js.map +0 -1
  261. package/dist/esm/CommandForm/UserRegistrationCommand.d.ts +0 -63
  262. package/dist/esm/CommandForm/UserRegistrationCommand.d.ts.map +0 -1
  263. package/dist/esm/CommandForm/UserRegistrationCommand.js +0 -143
  264. package/dist/esm/CommandForm/UserRegistrationCommand.js.map +0 -1
  265. package/dist/esm/CommandForm/ValidationMessage.d.ts +0 -8
  266. package/dist/esm/CommandForm/ValidationMessage.d.ts.map +0 -1
  267. package/dist/esm/CommandForm/ValidationMessage.js +0 -22
  268. package/dist/esm/CommandForm/ValidationMessage.js.map +0 -1
  269. package/dist/esm/CommandForm/asCommandFormField.d.ts +0 -32
  270. package/dist/esm/CommandForm/asCommandFormField.d.ts.map +0 -1
  271. package/dist/esm/CommandForm/asCommandFormField.js +0 -45
  272. package/dist/esm/CommandForm/asCommandFormField.js.map +0 -1
  273. package/dist/esm/EventModeling/EventModeling.css +0 -146
  274. package/dist/esm/EventModeling/EventModeling.d.ts +0 -11
  275. package/dist/esm/EventModeling/EventModeling.d.ts.map +0 -1
  276. package/dist/esm/EventModeling/EventModeling.js +0 -207
  277. package/dist/esm/EventModeling/EventModeling.js.map +0 -1
  278. package/dist/esm/EventModeling/EventModeling.stories.d.ts +0 -10
  279. package/dist/esm/EventModeling/EventModeling.stories.d.ts.map +0 -1
  280. package/dist/esm/EventModeling/EventModeling.stories.js +0 -252
  281. package/dist/esm/EventModeling/EventModeling.stories.js.map +0 -1
  282. package/dist/esm/EventModeling/components/Canvas.d.ts +0 -23
  283. package/dist/esm/EventModeling/components/Canvas.d.ts.map +0 -1
  284. package/dist/esm/EventModeling/components/Canvas.js +0 -382
  285. package/dist/esm/EventModeling/components/Canvas.js.map +0 -1
  286. package/dist/esm/EventModeling/components/CanvasControls.d.ts +0 -10
  287. package/dist/esm/EventModeling/components/CanvasControls.d.ts.map +0 -1
  288. package/dist/esm/EventModeling/components/CanvasControls.js +0 -8
  289. package/dist/esm/EventModeling/components/CanvasControls.js.map +0 -1
  290. package/dist/esm/EventModeling/components/Toolbox.d.ts +0 -9
  291. package/dist/esm/EventModeling/components/Toolbox.d.ts.map +0 -1
  292. package/dist/esm/EventModeling/components/Toolbox.js +0 -16
  293. package/dist/esm/EventModeling/components/Toolbox.js.map +0 -1
  294. package/dist/esm/EventModeling/engine/connectorGraphics.d.ts +0 -12
  295. package/dist/esm/EventModeling/engine/connectorGraphics.d.ts.map +0 -1
  296. package/dist/esm/EventModeling/engine/connectorGraphics.js +0 -151
  297. package/dist/esm/EventModeling/engine/connectorGraphics.js.map +0 -1
  298. package/dist/esm/EventModeling/engine/elementSprites.d.ts +0 -23
  299. package/dist/esm/EventModeling/engine/elementSprites.d.ts.map +0 -1
  300. package/dist/esm/EventModeling/engine/elementSprites.js +0 -276
  301. package/dist/esm/EventModeling/engine/elementSprites.js.map +0 -1
  302. package/dist/esm/EventModeling/index.d.ts +0 -3
  303. package/dist/esm/EventModeling/index.d.ts.map +0 -1
  304. package/dist/esm/EventModeling/index.js +0 -3
  305. package/dist/esm/EventModeling/types.d.ts +0 -79
  306. package/dist/esm/EventModeling/types.d.ts.map +0 -1
  307. package/dist/esm/EventModeling/types.js +0 -56
  308. package/dist/esm/EventModeling/types.js.map +0 -1
  309. /package/dist/esm/{EventModeling → SchemaEditor}/index.js.map +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableForQuery.js","sources":["../../../DataTables/DataTableForQuery.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 { DataTable, DataTableFilterMeta, DataTableSelectionSingleChangeEvent } from 'primereact/datatable';\nimport { Constructor } from '@cratis/fundamentals';\nimport { IQueryFor, Paging } from '@cratis/arc/queries';\nimport { useQueryWithPaging } from '@cratis/arc.react/queries';\nimport { ReactNode, useState } from 'react';\n\n \n\n/**\n * Props for the DataTableForQuery component\n */\nexport interface DataTableForQueryProps<TQuery extends IQueryFor<TDataType, TArguments>, TDataType extends object, TArguments extends object> {\n /**\n * Children to render\n */\n children?: ReactNode;\n\n /**\n * The type of query to use\n */\n query: Constructor<TQuery>;\n\n /**\n * Optional Arguments to pass to the query\n */\n queryArguments?: TArguments;\n\n /**\n * The message to show when there is no data\n */\n emptyMessage: string;\n\n /**\n * The key to use for the data\n */\n dataKey?: string | undefined;\n\n /**\n * The current selection.\n */\n selection?: TDataType | undefined | null;\n\n /**\n * Callback for when the selection changes\n */\n onSelectionChange?(event: DataTableSelectionSingleChangeEvent<TDataType[]>): void;\n\n /**\n * Fields to use for global filtering\n */\n globalFilterFields?: string[] | undefined;\n\n /**\n * Default filters to use\n */\n defaultFilters?: DataTableFilterMeta;\n}\n\nconst paging = new Paging(0, 20);\n\n/**\n * Represents a DataTable for a query.\n * @param props Props for the component\n * @returns Function to render the DataTableForQuery component\n */\nexport const DataTableForQuery = <TQuery extends IQueryFor<TDataType, TArguments>, TDataType extends object, TArguments extends object>(props: DataTableForQueryProps<TQuery, TDataType, TArguments>) => {\n const [filters, setFilters] = useState<DataTableFilterMeta>(props.defaultFilters ?? {});\n const [result, , , setPage] = useQueryWithPaging(props.query, paging, props.queryArguments);\n\n return (\n <DataTable\n value={result.data as unknown as object[]}\n lazy\n rows={paging.pageSize}\n totalRecords={result.paging.totalItems}\n paginator\n alwaysShowPaginator={false}\n first={result.paging.page * paging.pageSize}\n onPage={(e) => setPage(e.page ?? 0)}\n scrollable\n scrollHeight={'flex'}\n selectionMode='single'\n selection={props.selection}\n onSelectionChange={props.onSelectionChange}\n dataKey={props.dataKey}\n filters={filters}\n filterDisplay='menu'\n onFilter={(e) => setFilters(e.filters)}\n globalFilterFields={props.globalFilterFields}\n emptyMessage={props.emptyMessage} >\n {props.children}\n </DataTable >\n );\n};\n"],"names":["Paging","useState","useQueryWithPaging","_jsx","DataTable"],"mappings":";;;;;;;;AA6DA,MAAM,MAAM,GAAG,IAAIA,cAAM,CAAC,CAAC,EAAE,EAAE,CAAC;AAOzB,MAAM,iBAAiB,GAAG,CAAuG,KAA4D,KAAI;AACpM,IAAA,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGC,cAAQ,CAAsB,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC;IACvF,MAAM,CAAC,MAAM,MAAM,OAAO,CAAC,GAAGC,4BAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC;AAE3F,IAAA,QACIC,cAAA,CAACC,mBAAS,EAAA,EACN,KAAK,EAAE,MAAM,CAAC,IAA2B,EACzC,IAAI,EAAA,IAAA,EACJ,IAAI,EAAE,MAAM,CAAC,QAAQ,EACrB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EACtC,SAAS,EAAA,IAAA,EACT,mBAAmB,EAAE,KAAK,EAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,EAC3C,MAAM,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EACnC,UAAU,EAAA,IAAA,EACV,YAAY,EAAE,MAAM,EACpB,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAC1C,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAC,MAAM,EACpB,QAAQ,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EACtC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAAA,QAAA,EAC/B,KAAK,CAAC,QAAQ,EAAA,CACN;AAErB;;;;"}
1
+ {"version":3,"file":"DataTableForQuery.js","sources":["../../../DataTables/DataTableForQuery.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 { DataTable, DataTableFilterMeta, DataTableSelectionSingleChangeEvent } from 'primereact/datatable';\nimport { Paginator } from 'primereact/paginator';\nimport { Constructor } from '@cratis/fundamentals';\nimport { IQueryFor, Paging } from '@cratis/arc/queries';\nimport { useQueryWithPaging } from '@cratis/arc.react/queries';\nimport { ReactNode, useState, useRef } from 'react';\n\n/**\n * Props for the DataTableForQuery component\n */\nexport interface DataTableForQueryProps<TQuery extends IQueryFor<TDataType, TArguments>, TDataType extends object, TArguments extends object> {\n /**\n * Children to render\n */\n children?: ReactNode;\n\n /**\n * The type of query to use\n */\n query: Constructor<TQuery>;\n\n /**\n * Optional Arguments to pass to the query\n */\n queryArguments?: TArguments;\n\n /**\n * The message to show when there is no data\n */\n emptyMessage: string;\n\n /**\n * The key to use for the data\n */\n dataKey?: string | undefined;\n\n /**\n * The current selection.\n */\n selection?: TDataType | undefined | null;\n\n /**\n * Callback for when the selection changes\n */\n onSelectionChange?(event: DataTableSelectionSingleChangeEvent<TDataType[]>): void;\n\n /**\n * Fields to use for global filtering\n */\n globalFilterFields?: string[] | undefined;\n\n /**\n * Default filters to use\n */\n defaultFilters?: DataTableFilterMeta;\n\n /**\n * Enable client-side filtering for the data table\n */\n clientFiltering?: boolean;\n}\n\nconst paging = new Paging(0, 20);\n\n/**\n * Represents a DataTable for a query.\n * @param props Props for the component\n * @returns Function to render the DataTableForQuery component\n */\nexport const DataTableForQuery = <TQuery extends IQueryFor<TDataType, TArguments>, TDataType extends object, TArguments extends object>(props: DataTableForQueryProps<TQuery, TDataType, TArguments>) => {\n const [filters, setFilters] = useState<DataTableFilterMeta>(props.defaultFilters ?? {});\n const [filteredTotal, setFilteredTotal] = useState<number | undefined>(undefined);\n const [result, , , setPage] = useQueryWithPaging(props.query, paging, props.queryArguments);\n const containerRef = useRef<HTMLDivElement>(null);\n const isClientFiltering = props.clientFiltering === true;\n const totalRecords = isClientFiltering && filteredTotal !== undefined ? filteredTotal : result.paging.totalItems;\n\n return (\n <div\n ref={containerRef}\n style={{\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n border: '1px solid var(--surface-border)',\n borderRadius: 'var(--border-radius)',\n overflow: 'hidden'\n }}>\n <div style={{ flex: 1, minHeight: 0, overflow: 'auto' }}>\n <DataTable\n value={result.data as unknown as object[]}\n lazy={!isClientFiltering}\n rows={paging.pageSize}\n totalRecords={totalRecords}\n selectionMode='single'\n selection={props.selection}\n onSelectionChange={props.onSelectionChange}\n dataKey={props.dataKey}\n filters={filters}\n filterDisplay='menu'\n onFilter={(e) => {\n setFilters(e.filters);\n if (isClientFiltering) {\n const filteredValue = e.filteredValue as unknown[] | undefined;\n setFilteredTotal(filteredValue ? filteredValue.length : undefined);\n }\n }}\n globalFilterFields={props.globalFilterFields}\n emptyMessage={props.emptyMessage}\n style={{ minWidth: '100%' }}>\n {props.children}\n </DataTable>\n </div>\n\n {result.paging.totalItems > 0 && (\n <div style={{ borderTop: '1px solid var(--surface-border)', flexShrink: 0 }}>\n <Paginator\n first={result.paging.page * paging.pageSize}\n rows={paging.pageSize}\n totalRecords={result.paging.totalItems}\n onPageChange={(e) => setPage(e.page)}\n />\n </div>\n )}\n </div>\n );\n};\n"],"names":["Paging","useState","useQueryWithPaging","useRef","_jsxs","_jsx","DataTable","Paginator"],"mappings":";;;;;;;;;AAiEA,MAAM,MAAM,GAAG,IAAIA,cAAM,CAAC,CAAC,EAAE,EAAE,CAAC;AAOzB,MAAM,iBAAiB,GAAG,CAAuG,KAA4D,KAAI;AACpM,IAAA,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGC,cAAQ,CAAsB,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC;IACvF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAGA,cAAQ,CAAqB,SAAS,CAAC;IACjF,MAAM,CAAC,MAAM,MAAM,OAAO,CAAC,GAAGC,4BAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC;AAC3F,IAAA,MAAM,YAAY,GAAGC,YAAM,CAAiB,IAAI,CAAC;AACjD,IAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,eAAe,KAAK,IAAI;AACxD,IAAA,MAAM,YAAY,GAAG,iBAAiB,IAAI,aAAa,KAAK,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;AAEhH,IAAA,QACIC,eAAA,CAAA,KAAA,EAAA,EACI,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE;AACH,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,MAAM,EAAE,iCAAiC;AACzC,YAAA,YAAY,EAAE,sBAAsB;AACpC,YAAA,QAAQ,EAAE;AACb,SAAA,EAAA,QAAA,EAAA,CACDC,wBAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAA,QAAA,EACnDA,cAAA,CAACC,mBAAS,EAAA,EACN,KAAK,EAAE,MAAM,CAAC,IAA2B,EACzC,IAAI,EAAE,CAAC,iBAAiB,EACxB,IAAI,EAAE,MAAM,CAAC,QAAQ,EACrB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAC1C,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAC,MAAM,EACpB,QAAQ,EAAE,CAAC,CAAC,KAAI;AACZ,wBAAA,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;wBACrB,IAAI,iBAAiB,EAAE;AACnB,4BAAA,MAAM,aAAa,GAAG,CAAC,CAAC,aAAsC;AAC9D,4BAAA,gBAAgB,CAAC,aAAa,GAAG,aAAa,CAAC,MAAM,GAAG,SAAS,CAAC;wBACtE;oBACJ,CAAC,EACD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAA,QAAA,EAC1B,KAAK,CAAC,QAAQ,EAAA,CACP,EAAA,CACV,EAEL,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,KACzBD,cAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,SAAS,EAAE,iCAAiC,EAAE,UAAU,EAAE,CAAC,EAAE,YACvEA,cAAA,CAACE,mBAAS,IACN,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,EAC3C,IAAI,EAAE,MAAM,CAAC,QAAQ,EACrB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EACtC,YAAY,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GACtC,EAAA,CACA,CACT,CAAA,EAAA,CACC;AAEd;;;;"}
@@ -1,12 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var dialog = require('primereact/dialog');
5
4
  var progressspinner = require('primereact/progressspinner');
5
+ var Dialog = require('./Dialog.js');
6
6
 
7
7
  const BusyIndicatorDialog = (props) => {
8
- const headerElement = (jsxRuntime.jsx("div", { className: "inline-flex align-items-center justify-content-center gap-2", children: jsxRuntime.jsx("span", { className: "font-bold white-space-nowrap", children: props.title }) }));
9
- return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs(dialog.Dialog, { header: headerElement, modal: true, visible: true, onHide: () => undefined, children: [jsxRuntime.jsx(progressspinner.ProgressSpinner, {}), jsxRuntime.jsx("p", { className: "m-0", children: props.message })] }) }));
8
+ return (jsxRuntime.jsx(Dialog.Dialog, { title: props.title, visible: true, onCancel: () => undefined, buttons: null, children: jsxRuntime.jsxs("div", { className: "flex flex-col items-center justify-center gap-4 py-4", children: [jsxRuntime.jsx(progressspinner.ProgressSpinner, {}), jsxRuntime.jsx("p", { className: "m-0 text-center", children: props.message })] }) }));
10
9
  };
11
10
 
12
11
  exports.BusyIndicatorDialog = BusyIndicatorDialog;
@@ -1 +1 @@
1
- {"version":3,"file":"BusyIndicatorDialog.js","sources":["../../../Dialogs/BusyIndicatorDialog.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 { Dialog } from 'primereact/dialog';\nimport { BusyIndicatorDialogRequest } from '@cratis/arc.react/dialogs';\nimport { ProgressSpinner } from 'primereact/progressspinner';\n\nexport const BusyIndicatorDialog = (props: BusyIndicatorDialogRequest) => {\n\n const headerElement = (\n <div className=\"inline-flex align-items-center justify-content-center gap-2\">\n <span className=\"font-bold white-space-nowrap\">{props.title}</span>\n </div>\n );\n\n return (\n <>\n <Dialog header={headerElement} modal visible={true} onHide={() => undefined}>\n <ProgressSpinner />\n <p className=\"m-0\">\n {props.message}\n </p>\n </Dialog>\n </>\n );\n};\n"],"names":["_jsx","_Fragment","_jsxs","Dialog","ProgressSpinner"],"mappings":";;;;;;AAOO,MAAM,mBAAmB,GAAG,CAAC,KAAiC,KAAI;AAErE,IAAA,MAAM,aAAa,IACfA,wBAAK,SAAS,EAAC,6DAA6D,EAAA,QAAA,EACxEA,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,8BAA8B,YAAE,KAAK,CAAC,KAAK,EAAA,CAAQ,EAAA,CACjE,CACT;AAED,IAAA,QACIA,cAAA,CAAAC,mBAAA,EAAA,EAAA,QAAA,EACIC,eAAA,CAACC,aAAM,EAAA,EAAC,MAAM,EAAE,aAAa,EAAE,KAAK,QAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAS,aACvEH,cAAA,CAACI,+BAAe,EAAA,EAAA,CAAG,EACnBJ,sBAAG,SAAS,EAAC,KAAK,EAAA,QAAA,EACb,KAAK,CAAC,OAAO,GACd,CAAA,EAAA,CACC,EAAA,CACV;AAEX;;;;"}
1
+ {"version":3,"file":"BusyIndicatorDialog.js","sources":["../../../Dialogs/BusyIndicatorDialog.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 { BusyIndicatorDialogRequest } from '@cratis/arc.react/dialogs';\nimport { ProgressSpinner } from 'primereact/progressspinner';\nimport { Dialog } from './Dialog';\n\nexport const BusyIndicatorDialog = (props: BusyIndicatorDialogRequest) => {\n return (\n <Dialog \n title={props.title} \n visible={true} \n onCancel={() => undefined}\n buttons={null}\n >\n <div className=\"flex flex-col items-center justify-center gap-4 py-4\">\n <ProgressSpinner />\n <p className=\"m-0 text-center\">\n {props.message}\n </p>\n </div>\n </Dialog>\n );\n};\n"],"names":["_jsx","Dialog","_jsxs","ProgressSpinner"],"mappings":";;;;;;AAOO,MAAM,mBAAmB,GAAG,CAAC,KAAiC,KAAI;IACrE,QACIA,eAACC,aAAM,EAAA,EACH,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,MAAM,SAAS,EACzB,OAAO,EAAE,IAAI,EAAA,QAAA,EAEbC,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,sDAAsD,aACjEF,cAAA,CAACG,+BAAe,KAAG,EACnBH,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,iBAAiB,YACzB,KAAK,CAAC,OAAO,EAAA,CACd,CAAA,EAAA,CACF,EAAA,CACD;AAEjB;;;;"}
@@ -1,32 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var dialog = require('primereact/dialog');
5
4
  var dialogs = require('@cratis/arc.react/dialogs');
6
- var button = require('primereact/button');
5
+ var Dialog = require('./Dialog.js');
7
6
 
8
7
  const ConfirmationDialog = () => {
9
8
  const { request, closeDialog } = dialogs.useDialogContext();
10
- const headerElement = (jsxRuntime.jsx("div", { className: "inline-flex align-items-center justify-content-center gap-2", children: jsxRuntime.jsx("span", { className: "font-bold white-space-nowrap", children: request.title }) }));
11
- const okFooter = (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(button.Button, { label: "Ok", icon: "pi pi-check", onClick: () => closeDialog(dialogs.DialogResult.Ok), autoFocus: true }) }));
12
- const okCancelFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: "Ok", icon: "pi pi-check", onClick: () => closeDialog(dialogs.DialogResult.Ok), autoFocus: true }), jsxRuntime.jsx(button.Button, { label: "Cancel", icon: "pi pi-times", severity: 'secondary', onClick: () => closeDialog(dialogs.DialogResult.Cancelled) })] }));
13
- const yesNoFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: "Yes", icon: "pi pi-check", onClick: () => closeDialog(dialogs.DialogResult.Yes), autoFocus: true }), jsxRuntime.jsx(button.Button, { label: "No", icon: "pi pi-times", severity: 'secondary', onClick: () => closeDialog(dialogs.DialogResult.No) })] }));
14
- const yesNoCancelFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: "Yes", icon: "pi pi-check", onClick: () => closeDialog(dialogs.DialogResult.Yes), autoFocus: true }), jsxRuntime.jsx(button.Button, { label: "No", icon: "pi pi-times", severity: 'secondary', onClick: () => closeDialog(dialogs.DialogResult.No) })] }));
15
- const getFooterInterior = () => {
16
- switch (request.buttons) {
17
- case dialogs.DialogButtons.Ok:
18
- return okFooter;
19
- case dialogs.DialogButtons.OkCancel:
20
- return okCancelFooter;
21
- case dialogs.DialogButtons.YesNo:
22
- return yesNoFooter;
23
- case dialogs.DialogButtons.YesNoCancel:
24
- return yesNoCancelFooter;
25
- }
26
- return (jsxRuntime.jsx(jsxRuntime.Fragment, {}));
9
+ const handleClose = (result) => {
10
+ closeDialog(result);
27
11
  };
28
- const footer = (jsxRuntime.jsx("div", { className: "card flex flex-wrap justify-content-center gap-3", children: getFooterInterior() }));
29
- return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(dialog.Dialog, { header: headerElement, modal: true, footer: footer, onHide: () => closeDialog(dialogs.DialogResult.Cancelled), visible: true, children: jsxRuntime.jsx("p", { className: "m-0", children: request.message }) }) }));
12
+ return (jsxRuntime.jsx(Dialog.Dialog, { title: request.title, visible: true, onClose: handleClose, buttons: request.buttons, children: jsxRuntime.jsx("p", { className: "m-0", children: request.message }) }));
30
13
  };
31
14
 
32
15
  exports.ConfirmationDialog = ConfirmationDialog;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationDialog.js","sources":["../../../Dialogs/ConfirmationDialog.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 { Dialog } from 'primereact/dialog';\nimport { DialogButtons, ConfirmationDialogRequest } from '@cratis/arc.react/dialogs';\nimport { DialogResult, useDialogContext } from '@cratis/arc.react/dialogs';\nimport { Button } from 'primereact/button';\n\nexport const ConfirmationDialog = () => {\n const { request, closeDialog } = useDialogContext<ConfirmationDialogRequest>();\n\n const headerElement = (\n <div className=\"inline-flex align-items-center justify-content-center gap-2\">\n <span className=\"font-bold white-space-nowrap\">{request.title}</span>\n </div>\n );\n\n const okFooter = (\n <>\n <Button label=\"Ok\" icon=\"pi pi-check\" onClick={() => closeDialog(DialogResult.Ok)} autoFocus />\n </>\n );\n\n const okCancelFooter = (\n <>\n <Button label=\"Ok\" icon=\"pi pi-check\" onClick={() => closeDialog(DialogResult.Ok)} autoFocus />\n <Button label=\"Cancel\" icon=\"pi pi-times\" severity='secondary' onClick={() => closeDialog(DialogResult.Cancelled)} />\n </>\n );\n\n const yesNoFooter = (\n <>\n <Button label=\"Yes\" icon=\"pi pi-check\" onClick={() => closeDialog(DialogResult.Yes)} autoFocus />\n <Button label=\"No\" icon=\"pi pi-times\" severity='secondary' onClick={() => closeDialog(DialogResult.No)} />\n </>\n );\n\n const yesNoCancelFooter = (\n <>\n <Button label=\"Yes\" icon=\"pi pi-check\" onClick={() => closeDialog(DialogResult.Yes)} autoFocus />\n <Button label=\"No\" icon=\"pi pi-times\" severity='secondary' onClick={() => closeDialog(DialogResult.No)} />\n </>\n );\n\n const getFooterInterior = () => {\n switch (request.buttons) {\n case DialogButtons.Ok:\n return okFooter;\n case DialogButtons.OkCancel:\n return okCancelFooter;\n case DialogButtons.YesNo:\n return yesNoFooter;\n case DialogButtons.YesNoCancel:\n return yesNoCancelFooter;\n }\n\n return (<></>);\n };\n\n const footer = (\n <div className=\"card flex flex-wrap justify-content-center gap-3\">\n {getFooterInterior()}\n </div>\n );\n\n return (\n <>\n <Dialog header={headerElement} modal footer={footer} onHide={() => closeDialog(DialogResult.Cancelled)} visible={true}>\n <p className=\"m-0\">\n {request.message}\n </p>\n </Dialog>\n </>\n );\n};\n"],"names":["useDialogContext","_jsx","_Fragment","Button","DialogResult","_jsxs","DialogButtons","Dialog"],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmationDialog.js","sources":["../../../Dialogs/ConfirmationDialog.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 { ConfirmationDialogRequest } from '@cratis/arc.react/dialogs';\nimport { DialogResult, useDialogContext } from '@cratis/arc.react/dialogs';\nimport { Dialog } from './Dialog';\n\nexport const ConfirmationDialog = () => {\n const { request, closeDialog } = useDialogContext<ConfirmationDialogRequest>();\n\n const handleClose = (result: DialogResult) => {\n closeDialog(result);\n };\n\n return (\n <Dialog \n title={request.title}\n visible={true}\n onClose={handleClose}\n buttons={request.buttons}\n >\n <p className=\"m-0\">\n {request.message}\n </p>\n </Dialog>\n );\n};\n"],"names":["useDialogContext","_jsx","Dialog"],"mappings":";;;;;;AAOO,MAAM,kBAAkB,GAAG,MAAK;IACnC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAGA,wBAAgB,EAA6B;AAE9E,IAAA,MAAM,WAAW,GAAG,CAAC,MAAoB,KAAI;QACzC,WAAW,CAAC,MAAM,CAAC;AACvB,IAAA,CAAC;AAED,IAAA,QACIC,cAAA,CAACC,aAAM,EAAA,EACH,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,CAAC,OAAO,EAAA,QAAA,EAExBD,sBAAG,SAAS,EAAC,KAAK,EAAA,QAAA,EACb,OAAO,CAAC,OAAO,EAAA,CAChB,EAAA,CACC;AAEjB;;;;"}
@@ -0,0 +1,66 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var dialog = require('primereact/dialog');
5
+ var button = require('primereact/button');
6
+ var dialogs = require('@cratis/arc.react/dialogs');
7
+
8
+ const Dialog = ({ title, visible = true, onClose, onConfirm, onCancel, buttons = dialogs.DialogButtons.OkCancel, children, width = '450px', resizable = false, isValid, okLabel = 'Ok', cancelLabel = 'Cancel', yesLabel = 'Yes', noLabel = 'No' }) => {
9
+ let contextCloseDialog;
10
+ try {
11
+ const context = dialogs.useDialogContext();
12
+ contextCloseDialog = context?.closeDialog;
13
+ }
14
+ catch {
15
+ contextCloseDialog = undefined;
16
+ }
17
+ const isDialogValid = isValid !== false;
18
+ const headerElement = (jsxRuntime.jsx("div", { className: "inline-flex align-items-center justify-content-center gap-2", children: jsxRuntime.jsx("span", { className: "font-bold white-space-nowrap", children: title }) }));
19
+ const handleClose = async (result) => {
20
+ let closeResult = true;
21
+ if (result === dialogs.DialogResult.Ok || result === dialogs.DialogResult.Yes) {
22
+ if (onConfirm) {
23
+ closeResult = await onConfirm();
24
+ }
25
+ else if (onClose) {
26
+ closeResult = await onClose(result);
27
+ }
28
+ }
29
+ else {
30
+ if (onCancel) {
31
+ closeResult = await onCancel();
32
+ }
33
+ else if (onClose) {
34
+ closeResult = await onClose(result);
35
+ }
36
+ }
37
+ if (closeResult !== false) {
38
+ contextCloseDialog?.(result);
39
+ }
40
+ };
41
+ const okFooter = (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(button.Button, { label: okLabel, icon: "pi pi-check", onClick: () => handleClose(dialogs.DialogResult.Ok), disabled: !isDialogValid, autoFocus: true }) }));
42
+ const okCancelFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: okLabel, icon: "pi pi-check", onClick: () => handleClose(dialogs.DialogResult.Ok), disabled: !isDialogValid, autoFocus: true }), jsxRuntime.jsx(button.Button, { label: cancelLabel, icon: "pi pi-times", outlined: true, onClick: () => handleClose(dialogs.DialogResult.Cancelled) })] }));
43
+ const yesNoFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: yesLabel, icon: "pi pi-check", onClick: () => handleClose(dialogs.DialogResult.Yes), disabled: !isDialogValid, autoFocus: true }), jsxRuntime.jsx(button.Button, { label: noLabel, icon: "pi pi-times", outlined: true, onClick: () => handleClose(dialogs.DialogResult.No) })] }));
44
+ const yesNoCancelFooter = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(button.Button, { label: yesLabel, icon: "pi pi-check", onClick: () => handleClose(dialogs.DialogResult.Yes), disabled: !isDialogValid, autoFocus: true }), jsxRuntime.jsx(button.Button, { label: noLabel, icon: "pi pi-times", outlined: true, onClick: () => handleClose(dialogs.DialogResult.No) }), jsxRuntime.jsx(button.Button, { label: cancelLabel, icon: "pi pi-times", outlined: true, onClick: () => handleClose(dialogs.DialogResult.Cancelled) })] }));
45
+ const getFooterInterior = () => {
46
+ if (typeof buttons !== 'number') {
47
+ return buttons;
48
+ }
49
+ switch (buttons) {
50
+ case dialogs.DialogButtons.Ok:
51
+ return okFooter;
52
+ case dialogs.DialogButtons.OkCancel:
53
+ return okCancelFooter;
54
+ case dialogs.DialogButtons.YesNo:
55
+ return yesNoFooter;
56
+ case dialogs.DialogButtons.YesNoCancel:
57
+ return yesNoCancelFooter;
58
+ }
59
+ return (jsxRuntime.jsx(jsxRuntime.Fragment, {}));
60
+ };
61
+ const footer = (jsxRuntime.jsx("div", { className: "flex flex-wrap justify-content-start gap-3", children: getFooterInterior() }));
62
+ return (jsxRuntime.jsx(dialog.Dialog, { header: headerElement, modal: true, footer: footer, onHide: typeof buttons === 'number' ? () => handleClose(dialogs.DialogResult.Cancelled) : () => { }, visible: visible, style: { width }, resizable: resizable, closable: typeof buttons === 'number', children: children }));
63
+ };
64
+
65
+ exports.Dialog = Dialog;
66
+ //# sourceMappingURL=Dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.js","sources":["../../../Dialogs/Dialog.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 { Dialog as PrimeDialog } from 'primereact/dialog';\nimport { Button } from 'primereact/button';\nimport { DialogResult, DialogButtons, useDialogContext } from '@cratis/arc.react/dialogs';\nimport { ReactNode } from 'react';\n\nexport type CloseDialog = (result: DialogResult) => boolean | void | Promise<boolean> | Promise<void>;\nexport type ConfirmCallback = () => boolean | void | Promise<boolean> | Promise<void>;\nexport type CancelCallback = () => boolean | void | Promise<boolean> | Promise<void>;\n\nexport interface DialogProps {\n title: string;\n visible?: boolean;\n onClose?: CloseDialog;\n onConfirm?: ConfirmCallback;\n onCancel?: CancelCallback;\n buttons?: DialogButtons | ReactNode;\n children: ReactNode;\n width?: string;\n resizable?: boolean;\n isValid?: boolean;\n okLabel?: string;\n cancelLabel?: string;\n yesLabel?: string;\n noLabel?: string;\n}\n\nexport const Dialog = ({ \n title, \n visible = true, \n onClose, \n onConfirm,\n onCancel,\n buttons = DialogButtons.OkCancel, \n children, \n width = '450px', \n resizable = false, \n isValid,\n okLabel = 'Ok',\n cancelLabel = 'Cancel',\n yesLabel = 'Yes',\n noLabel = 'No'\n}: DialogProps) => {\n // Try to get dialog context, but allow it to be undefined for standalone usage\n let contextCloseDialog: ((result: DialogResult) => void) | undefined;\n try {\n const context = useDialogContext();\n contextCloseDialog = context?.closeDialog;\n } catch {\n // No context available - dialog is being used standalone\n contextCloseDialog = undefined;\n }\n \n const isDialogValid = isValid !== false;\n const headerElement = (\n <div className=\"inline-flex align-items-center justify-content-center gap-2\">\n <span className=\"font-bold white-space-nowrap\">{title}</span>\n </div>\n );\n\n const handleClose = async (result: DialogResult) => {\n // Use new onConfirm/onCancel callbacks if provided, otherwise fall back to onClose\n let closeResult: boolean | void | Promise<boolean> | Promise<void> = true;\n \n if (result === DialogResult.Ok || result === DialogResult.Yes) {\n if (onConfirm) {\n closeResult = await onConfirm();\n } else if (onClose) {\n closeResult = await onClose(result);\n }\n } else {\n if (onCancel) {\n closeResult = await onCancel();\n } else if (onClose) {\n closeResult = await onClose(result);\n }\n }\n \n if (closeResult !== false) {\n contextCloseDialog?.(result);\n }\n };\n\n const okFooter = (\n <>\n <Button label={okLabel} icon=\"pi pi-check\" onClick={() => handleClose(DialogResult.Ok)} disabled={!isDialogValid} autoFocus />\n </>\n );\n\n const okCancelFooter = (\n <>\n <Button label={okLabel} icon=\"pi pi-check\" onClick={() => handleClose(DialogResult.Ok)} disabled={!isDialogValid} autoFocus />\n <Button label={cancelLabel} icon=\"pi pi-times\" outlined onClick={() => handleClose(DialogResult.Cancelled)} />\n </>\n );\n\n const yesNoFooter = (\n <>\n <Button label={yesLabel} icon=\"pi pi-check\" onClick={() => handleClose(DialogResult.Yes)} disabled={!isDialogValid} autoFocus />\n <Button label={noLabel} icon=\"pi pi-times\" outlined onClick={() => handleClose(DialogResult.No)} />\n </>\n );\n\n const yesNoCancelFooter = (\n <>\n <Button label={yesLabel} icon=\"pi pi-check\" onClick={() => handleClose(DialogResult.Yes)} disabled={!isDialogValid} autoFocus />\n <Button label={noLabel} icon=\"pi pi-times\" outlined onClick={() => handleClose(DialogResult.No)} />\n <Button label={cancelLabel} icon=\"pi pi-times\" outlined onClick={() => handleClose(DialogResult.Cancelled)} />\n </>\n );\n\n const getFooterInterior = () => {\n // If buttons is a ReactNode (custom buttons), use it directly\n if (typeof buttons !== 'number') {\n return buttons;\n }\n\n // Otherwise, use predefined buttons based on DialogButtons enum\n switch (buttons) {\n case DialogButtons.Ok:\n return okFooter;\n case DialogButtons.OkCancel:\n return okCancelFooter;\n case DialogButtons.YesNo:\n return yesNoFooter;\n case DialogButtons.YesNoCancel:\n return yesNoCancelFooter;\n }\n\n return (<></>);\n };\n\n const footer = (\n <div className=\"flex flex-wrap justify-content-start gap-3\">\n {getFooterInterior()}\n </div>\n );\n\n return (\n <PrimeDialog\n header={headerElement}\n modal\n footer={footer}\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onHide={typeof buttons === 'number' ? () => handleClose(DialogResult.Cancelled) : () => {}}\n visible={visible}\n style={{ width }}\n resizable={resizable}\n closable={typeof buttons === 'number'}>\n {children}\n </PrimeDialog>\n );\n};\n"],"names":["DialogButtons","useDialogContext","_jsx","DialogResult","_Fragment","Button","_jsxs","PrimeDialog"],"mappings":";;;;;;;AA6BO,MAAM,MAAM,GAAG,CAAC,EACnB,KAAK,EACL,OAAO,GAAG,IAAI,EACd,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,GAAGA,qBAAa,CAAC,QAAQ,EAChC,QAAQ,EACR,KAAK,GAAG,OAAO,EACf,SAAS,GAAG,KAAK,EACjB,OAAO,EACP,OAAO,GAAG,IAAI,EACd,WAAW,GAAG,QAAQ,EACtB,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,IAAI,EACJ,KAAI;AAEd,IAAA,IAAI,kBAAgE;AACpE,IAAA,IAAI;AACA,QAAA,MAAM,OAAO,GAAGC,wBAAgB,EAAE;AAClC,QAAA,kBAAkB,GAAG,OAAO,EAAE,WAAW;IAC7C;AAAE,IAAA,MAAM;QAEJ,kBAAkB,GAAG,SAAS;IAClC;AAEA,IAAA,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK;AACvC,IAAA,MAAM,aAAa,IACfC,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,6DAA6D,EAAA,QAAA,EACxEA,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,8BAA8B,EAAA,QAAA,EAAE,KAAK,EAAA,CAAQ,EAAA,CAC3D,CACT;AAED,IAAA,MAAM,WAAW,GAAG,OAAO,MAAoB,KAAI;QAE/C,IAAI,WAAW,GAAsD,IAAI;AAEzE,QAAA,IAAI,MAAM,KAAKC,oBAAY,CAAC,EAAE,IAAI,MAAM,KAAKA,oBAAY,CAAC,GAAG,EAAE;YAC3D,IAAI,SAAS,EAAE;AACX,gBAAA,WAAW,GAAG,MAAM,SAAS,EAAE;YACnC;iBAAO,IAAI,OAAO,EAAE;AAChB,gBAAA,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;YACvC;QACJ;aAAO;YACH,IAAI,QAAQ,EAAE;AACV,gBAAA,WAAW,GAAG,MAAM,QAAQ,EAAE;YAClC;iBAAO,IAAI,OAAO,EAAE;AAChB,gBAAA,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;YACvC;QACJ;AAEA,QAAA,IAAI,WAAW,KAAK,KAAK,EAAE;AACvB,YAAA,kBAAkB,GAAG,MAAM,CAAC;QAChC;AACJ,IAAA,CAAC;AAED,IAAA,MAAM,QAAQ,IACVD,cAAA,CAAAE,mBAAA,EAAA,EAAA,QAAA,EACIF,cAAA,CAACG,aAAM,EAAA,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAA,IAAA,EAAA,CAAG,EAAA,CAC/H,CACN;AAED,IAAA,MAAM,cAAc,IAChBG,eAAA,CAAAF,mBAAA,EAAA,EAAA,QAAA,EAAA,CACIF,cAAA,CAACG,aAAM,EAAA,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAA,IAAA,EAAA,CAAG,EAC9HD,cAAA,CAACG,aAAM,EAAA,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,aAAa,EAAC,QAAQ,EAAA,IAAA,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,SAAS,CAAC,EAAA,CAAI,CAAA,EAAA,CAC/G,CACN;AAED,IAAA,MAAM,WAAW,IACbG,eAAA,CAAAF,mBAAA,EAAA,EAAA,QAAA,EAAA,CACIF,cAAA,CAACG,aAAM,EAAA,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAA,IAAA,EAAA,CAAG,EAChID,cAAA,CAACG,aAAM,EAAA,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,aAAa,EAAC,QAAQ,EAAA,IAAA,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,EAAE,CAAC,EAAA,CAAI,CAAA,EAAA,CACpG,CACN;AAED,IAAA,MAAM,iBAAiB,IACnBG,kDACIJ,cAAA,CAACG,aAAM,IAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAA,IAAA,EAAA,CAAG,EAChID,eAACG,aAAM,EAAA,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,aAAa,EAAC,QAAQ,EAAA,IAAA,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,EAAE,CAAC,EAAA,CAAI,EACnGD,eAACG,aAAM,EAAA,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,aAAa,EAAC,QAAQ,EAAA,IAAA,EAAC,OAAO,EAAE,MAAM,WAAW,CAACF,oBAAY,CAAC,SAAS,CAAC,EAAA,CAAI,CAAA,EAAA,CAC/G,CACN;IAED,MAAM,iBAAiB,GAAG,MAAK;AAE3B,QAAA,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AAC7B,YAAA,OAAO,OAAO;QAClB;QAGA,QAAQ,OAAO;YACX,KAAKH,qBAAa,CAAC,EAAE;AACjB,gBAAA,OAAO,QAAQ;YACnB,KAAKA,qBAAa,CAAC,QAAQ;AACvB,gBAAA,OAAO,cAAc;YACzB,KAAKA,qBAAa,CAAC,KAAK;AACpB,gBAAA,OAAO,WAAW;YACtB,KAAKA,qBAAa,CAAC,WAAW;AAC1B,gBAAA,OAAO,iBAAiB;;QAGhC,QAAQE,cAAA,CAAAE,mBAAA,EAAA,EAAA,CAAK;AACjB,IAAA,CAAC;AAED,IAAA,MAAM,MAAM,IACRF,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,4CAA4C,EAAA,QAAA,EACtD,iBAAiB,EAAE,EAAA,CAClB,CACT;AAED,IAAA,QACIA,cAAA,CAACK,aAAW,EAAA,EACR,MAAM,EAAE,aAAa,EACrB,KAAK,EAAA,IAAA,EACL,MAAM,EAAE,MAAM,EAEd,MAAM,EAAE,OAAO,OAAO,KAAK,QAAQ,GAAG,MAAM,WAAW,CAACJ,oBAAY,CAAC,SAAS,CAAC,GAAG,MAAK,EAAE,CAAC,EAC1F,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,EAAE,KAAK,EAAE,EAChB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,OAAO,OAAO,KAAK,QAAQ,EAAA,QAAA,EACpC,QAAQ,EAAA,CACC;AAEtB;;;;"}
@@ -1,10 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var ConfirmationDialog = require('./ConfirmationDialog.js');
4
3
  var BusyIndicatorDialog = require('./BusyIndicatorDialog.js');
4
+ var ConfirmationDialog = require('./ConfirmationDialog.js');
5
+ var Dialog = require('./Dialog.js');
5
6
 
6
7
 
7
8
 
8
- exports.ConfirmationDialog = ConfirmationDialog.ConfirmationDialog;
9
9
  exports.BusyIndicatorDialog = BusyIndicatorDialog.BusyIndicatorDialog;
10
+ exports.ConfirmationDialog = ConfirmationDialog.ConfirmationDialog;
11
+ exports.Dialog = Dialog.Dialog;
10
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
@@ -0,0 +1,156 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var tooltip = require('primereact/tooltip');
5
+ var React = require('react');
6
+ var faIcons = require('react-icons/fa6');
7
+ var ObjectNavigationalBar = require('../ObjectNavigationalBar/ObjectNavigationalBar.js');
8
+
9
+ function _interopNamespaceDefault(e) {
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n.default = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var faIcons__namespace = /*#__PURE__*/_interopNamespaceDefault(faIcons);
27
+
28
+ const ObjectContentEditor = ({ object, timestamp, schema }) => {
29
+ const [navigationPath, setNavigationPath] = React.useState([]);
30
+ const getValueAtPath = React.useCallback((data, path) => {
31
+ let current = data;
32
+ for (const segment of path) {
33
+ if (current === null || current === undefined)
34
+ return null;
35
+ if (typeof current === 'object' && !Array.isArray(current) && current !== null) {
36
+ current = current[segment];
37
+ }
38
+ else {
39
+ return null;
40
+ }
41
+ }
42
+ return current;
43
+ }, []);
44
+ const navigateToProperty = React.useCallback((key) => {
45
+ setNavigationPath([...navigationPath, key]);
46
+ }, [navigationPath]);
47
+ const navigateToBreadcrumb = React.useCallback((index) => {
48
+ if (index === 0) {
49
+ setNavigationPath([]);
50
+ }
51
+ else {
52
+ setNavigationPath(navigationPath.slice(0, index));
53
+ }
54
+ }, [navigationPath]);
55
+ const currentData = React.useMemo(() => {
56
+ if (navigationPath.length === 0) {
57
+ return object;
58
+ }
59
+ const lastKey = navigationPath[navigationPath.length - 1];
60
+ const pathToParent = navigationPath.slice(0, -1);
61
+ const parentValue = pathToParent.length > 0
62
+ ? getValueAtPath(object, pathToParent)
63
+ : object;
64
+ if (parentValue && typeof parentValue === 'object' && !Array.isArray(parentValue)) {
65
+ const value = parentValue[lastKey];
66
+ if (Array.isArray(value)) {
67
+ return value;
68
+ }
69
+ else if (value && typeof value === 'object') {
70
+ return value;
71
+ }
72
+ }
73
+ return object;
74
+ }, [object, navigationPath, getValueAtPath]);
75
+ const currentProperties = React.useMemo(() => {
76
+ const properties = schema.properties || {};
77
+ if (navigationPath.length === 0) {
78
+ return properties;
79
+ }
80
+ return {};
81
+ }, [schema, navigationPath]);
82
+ const tableStyle = {
83
+ width: '100%',
84
+ borderCollapse: 'collapse',
85
+ fontFamily: '-apple-system, BlinkMacSystemFont, "SF Mono", monospace',
86
+ fontSize: '13px',
87
+ };
88
+ const rowStyle = {
89
+ borderBottom: '1px solid rgba(255,255,255,0.1)',
90
+ };
91
+ const labelStyle = {
92
+ padding: '8px 12px',
93
+ color: 'rgba(255,255,255,0.6)',
94
+ textAlign: 'left',
95
+ fontWeight: 500,
96
+ width: '140px',
97
+ };
98
+ const valueStyle = {
99
+ padding: '8px 12px',
100
+ color: '#fff',
101
+ textAlign: 'left',
102
+ };
103
+ const infoIconStyle = {
104
+ marginLeft: '6px',
105
+ fontSize: '12px',
106
+ color: 'rgba(100, 150, 255, 0.6)',
107
+ cursor: 'help',
108
+ };
109
+ const renderValue = (value, propertyName) => {
110
+ if (value === null || value === undefined)
111
+ return '';
112
+ if (Array.isArray(value)) {
113
+ return (jsxRuntime.jsxs("div", { className: "flex align-items-center gap-2 cursor-pointer", onClick: () => navigateToProperty(propertyName), style: { color: 'var(--primary-color)', display: 'flex', alignItems: 'center' }, children: [jsxRuntime.jsxs("span", { children: ["Array[", value.length, "]"] }), jsxRuntime.jsx(faIcons__namespace.FaArrowRight, { style: { fontSize: '0.875rem', display: 'inline-flex' } })] }));
114
+ }
115
+ if (typeof value === 'object') {
116
+ return (jsxRuntime.jsxs("div", { className: "flex align-items-center gap-2 cursor-pointer", onClick: () => navigateToProperty(propertyName), style: { color: 'var(--primary-color)', display: 'flex', alignItems: 'center' }, children: [jsxRuntime.jsx("span", { children: "Object" }), jsxRuntime.jsx(faIcons__namespace.FaArrowRight, { style: { fontSize: '0.875rem', display: 'inline-flex' } })] }));
117
+ }
118
+ return String(value);
119
+ };
120
+ const renderTable = () => {
121
+ if (Array.isArray(currentData)) {
122
+ if (currentData.length === 0)
123
+ return jsxRuntime.jsx("div", { style: { padding: '12px', color: 'rgba(255,255,255,0.6)' }, children: "Empty array" });
124
+ const firstItem = currentData[0];
125
+ if (typeof firstItem === 'object' && firstItem !== null && !Array.isArray(firstItem)) {
126
+ const keys = Object.keys(firstItem);
127
+ return (jsxRuntime.jsx("table", { style: tableStyle, children: jsxRuntime.jsx("tbody", { children: currentData.map((item, index) => (jsxRuntime.jsxs(React.Fragment, { children: [index > 0 && (jsxRuntime.jsx("tr", { style: { height: '8px', background: 'rgba(255,255,255,0.05)' }, children: jsxRuntime.jsx("td", { colSpan: 2 }) })), keys.map((key) => (jsxRuntime.jsxs("tr", { style: rowStyle, children: [jsxRuntime.jsx("td", { style: labelStyle, children: key }), jsxRuntime.jsx("td", { style: valueStyle, children: renderValue(item[key], key) })] }, `${index}-${key}`)))] }, index))) }) }));
128
+ }
129
+ else {
130
+ return (jsxRuntime.jsx("table", { style: tableStyle, children: jsxRuntime.jsx("tbody", { children: currentData.map((item, index) => (jsxRuntime.jsxs("tr", { style: rowStyle, children: [jsxRuntime.jsxs("td", { style: labelStyle, children: ["[", index, "]"] }), jsxRuntime.jsx("td", { style: valueStyle, children: renderValue(item, `[${index}]`) })] }, index))) }) }));
131
+ }
132
+ }
133
+ const entries = navigationPath.length === 0
134
+ ? Object.entries(currentProperties)
135
+ : Object.entries(currentData);
136
+ return (jsxRuntime.jsx("table", { style: tableStyle, children: jsxRuntime.jsx("tbody", { children: entries.map(([propertyName, propertyDef]) => {
137
+ const value = currentData[propertyName];
138
+ const isSchemaProperty = navigationPath.length === 0;
139
+ const description = isSchemaProperty && typeof propertyDef === 'object' && propertyDef !== null && 'description' in propertyDef
140
+ ? propertyDef.description
141
+ : undefined;
142
+ return (jsxRuntime.jsxs("tr", { style: rowStyle, children: [jsxRuntime.jsxs("td", { style: labelStyle, children: [propertyName, description && (jsxRuntime.jsx("i", { className: "pi pi-info-circle property-info-icon", style: infoIconStyle, "data-pr-tooltip": description }))] }), jsxRuntime.jsx("td", { style: valueStyle, children: renderValue(value, propertyName) })] }, propertyName));
143
+ }) }) }));
144
+ };
145
+ return (jsxRuntime.jsxs("div", { className: "order-content", style: { display: 'flex', flexDirection: 'column', height: '100%' }, children: [jsxRuntime.jsx(tooltip.Tooltip, { target: ".property-info-icon" }), jsxRuntime.jsx(ObjectNavigationalBar.ObjectNavigationalBar, { navigationPath: navigationPath, onNavigate: navigateToBreadcrumb }), renderTable(), timestamp && (jsxRuntime.jsxs("div", { style: {
146
+ marginTop: '20px',
147
+ padding: '12px',
148
+ background: 'rgba(100, 150, 255, 0.1)',
149
+ borderRadius: '8px',
150
+ fontSize: '12px',
151
+ color: 'rgba(255,255,255,0.6)'
152
+ }, children: ["Snapshot captured: ", timestamp.toLocaleString()] }))] }));
153
+ };
154
+
155
+ exports.ObjectContentEditor = ObjectContentEditor;
156
+ //# sourceMappingURL=ObjectContentEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectContentEditor.js","sources":["../../../ObjectContentEditor/ObjectContentEditor.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 { Tooltip } from 'primereact/tooltip';\nimport React, { useState, useCallback, useMemo } from 'react';\nimport * as faIcons from 'react-icons/fa6';\nimport { ObjectNavigationalBar } from '../ObjectNavigationalBar';\nimport { Json, JsonSchema, JsonSchemaProperty } from '../types/JsonSchema';\n\nexport interface ObjectContentEditorProps {\n object: Json;\n timestamp?: Date;\n schema: JsonSchema;\n}\n\nexport const ObjectContentEditor = ({ object, timestamp, schema }: ObjectContentEditorProps) => {\n const [navigationPath, setNavigationPath] = useState<string[]>([]);\n\n const getValueAtPath = useCallback((data: Json, path: string[]): Json | null => {\n let current: Json = data;\n for (const segment of path) {\n if (current === null || current === undefined) return null;\n if (typeof current === 'object' && !Array.isArray(current) && current !== null) {\n current = (current as { [key: string]: Json })[segment];\n } else {\n return null;\n }\n }\n return current;\n }, []);\n\n const navigateToProperty = useCallback((key: string) => {\n setNavigationPath([...navigationPath, key]);\n }, [navigationPath]);\n\n const navigateToBreadcrumb = useCallback((index: number) => {\n if (index === 0) {\n setNavigationPath([]);\n } else {\n setNavigationPath(navigationPath.slice(0, index));\n }\n }, [navigationPath]);\n\n const currentData = useMemo(() => {\n if (navigationPath.length === 0) {\n return object;\n }\n\n const lastKey = navigationPath[navigationPath.length - 1];\n const pathToParent = navigationPath.slice(0, -1);\n\n const parentValue = pathToParent.length > 0\n ? getValueAtPath(object, pathToParent)\n : object;\n\n if (parentValue && typeof parentValue === 'object' && !Array.isArray(parentValue)) {\n const value = (parentValue as { [k: string]: Json })[lastKey];\n\n if (Array.isArray(value)) {\n return value;\n } else if (value && typeof value === 'object') {\n return value;\n }\n }\n\n return object;\n }, [object, navigationPath, getValueAtPath]);\n\n const currentProperties = useMemo(() => {\n const properties = schema.properties || {};\n\n if (navigationPath.length === 0) {\n return properties;\n }\n\n return {};\n }, [schema, navigationPath]);\n\n const tableStyle: React.CSSProperties = {\n width: '100%',\n borderCollapse: 'collapse',\n fontFamily: '-apple-system, BlinkMacSystemFont, \"SF Mono\", monospace',\n fontSize: '13px',\n };\n\n const rowStyle: React.CSSProperties = {\n borderBottom: '1px solid rgba(255,255,255,0.1)',\n };\n\n const labelStyle: React.CSSProperties = {\n padding: '8px 12px',\n color: 'rgba(255,255,255,0.6)',\n textAlign: 'left',\n fontWeight: 500,\n width: '140px',\n };\n\n const valueStyle: React.CSSProperties = {\n padding: '8px 12px',\n color: '#fff',\n textAlign: 'left',\n };\n\n const infoIconStyle: React.CSSProperties = {\n marginLeft: '6px',\n fontSize: '12px',\n color: 'rgba(100, 150, 255, 0.6)',\n cursor: 'help',\n };\n\n const renderValue = (value: Json, propertyName: string) => {\n if (value === null || value === undefined) return '';\n\n if (Array.isArray(value)) {\n return (\n <div\n className=\"flex align-items-center gap-2 cursor-pointer\"\n onClick={() => navigateToProperty(propertyName)}\n style={{ color: 'var(--primary-color)', display: 'flex', alignItems: 'center' }}\n >\n <span>Array[{value.length}]</span>\n <faIcons.FaArrowRight style={{ fontSize: '0.875rem', display: 'inline-flex' }} />\n </div>\n );\n }\n\n if (typeof value === 'object') {\n return (\n <div\n className=\"flex align-items-center gap-2 cursor-pointer\"\n onClick={() => navigateToProperty(propertyName)}\n style={{ color: 'var(--primary-color)', display: 'flex', alignItems: 'center' }}\n >\n <span>Object</span>\n <faIcons.FaArrowRight style={{ fontSize: '0.875rem', display: 'inline-flex' }} />\n </div>\n );\n }\n\n return String(value);\n };\n\n const renderTable = () => {\n if (Array.isArray(currentData)) {\n if (currentData.length === 0) return <div style={{ padding: '12px', color: 'rgba(255,255,255,0.6)' }}>Empty array</div>;\n\n const firstItem = currentData[0];\n if (typeof firstItem === 'object' && firstItem !== null && !Array.isArray(firstItem)) {\n const keys = Object.keys(firstItem);\n\n return (\n <table style={tableStyle}>\n <tbody>\n {currentData.map((item, index) => (\n <React.Fragment key={index}>\n {index > 0 && (\n <tr style={{ height: '8px', background: 'rgba(255,255,255,0.05)' }}>\n <td colSpan={2}></td>\n </tr>\n )}\n {keys.map((key) => (\n <tr key={`${index}-${key}`} style={rowStyle}>\n <td style={labelStyle}>{key}</td>\n <td style={valueStyle}>{renderValue((item as Record<string, Json>)[key], key)}</td>\n </tr>\n ))}\n </React.Fragment>\n ))}\n </tbody>\n </table>\n );\n } else {\n return (\n <table style={tableStyle}>\n <tbody>\n {currentData.map((item, index) => (\n <tr key={index} style={rowStyle}>\n <td style={labelStyle}>[{index}]</td>\n <td style={valueStyle}>{renderValue(item, `[${index}]`)}</td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n }\n }\n\n const entries = navigationPath.length === 0\n ? Object.entries(currentProperties)\n : Object.entries(currentData as { [key: string]: Json });\n\n return (\n <table style={tableStyle}>\n <tbody>\n {entries.map(([propertyName, propertyDef]: [string, JsonSchemaProperty | Json]) => {\n const value = (currentData as Record<string, Json>)[propertyName];\n\n const isSchemaProperty = navigationPath.length === 0;\n const description = isSchemaProperty && typeof propertyDef === 'object' && propertyDef !== null && 'description' in propertyDef\n ? (propertyDef as JsonSchemaProperty).description\n : undefined;\n\n return (\n <tr key={propertyName} style={rowStyle}>\n <td style={labelStyle}>\n {propertyName}\n {description && (\n <i\n className=\"pi pi-info-circle property-info-icon\"\n style={infoIconStyle}\n data-pr-tooltip={description} />\n )}\n </td>\n <td style={valueStyle}>{renderValue(value as Json, propertyName)}</td>\n </tr>\n );\n })}\n </tbody>\n </table>\n );\n };\n\n return (\n <div className=\"order-content\" style={{ display: 'flex', flexDirection: 'column', height: '100%' }}>\n <Tooltip target=\".property-info-icon\" />\n <ObjectNavigationalBar\n navigationPath={navigationPath}\n onNavigate={navigateToBreadcrumb}\n />\n {renderTable()}\n {timestamp && (\n <div style={{\n marginTop: '20px',\n padding: '12px',\n background: 'rgba(100, 150, 255, 0.1)',\n borderRadius: '8px',\n fontSize: '12px',\n color: 'rgba(255,255,255,0.6)'\n }}>\n Snapshot captured: {timestamp.toLocaleString()}\n </div>\n )}\n </div>\n );\n};\n"],"names":["useState","useCallback","useMemo","_jsxs","_jsx","faIcons","Tooltip","ObjectNavigationalBar"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ var ObjectContentEditor = require('./ObjectContentEditor.js');
4
+
5
+
6
+
7
+ exports.ObjectContentEditor = ObjectContentEditor.ObjectContentEditor;
8
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var button = require('primereact/button');
6
+ var faIcons = require('react-icons/fa6');
7
+
8
+ function _interopNamespaceDefault(e) {
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n.default = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var faIcons__namespace = /*#__PURE__*/_interopNamespaceDefault(faIcons);
26
+
27
+ function ObjectNavigationalBar({ navigationPath, onNavigate }) {
28
+ const breadcrumbItems = React.useMemo(() => {
29
+ const items = [{ name: 'Root', index: 0 }];
30
+ for (let i = 0; i < navigationPath.length; i++) {
31
+ items.push({
32
+ name: navigationPath[i],
33
+ index: i + 1
34
+ });
35
+ }
36
+ return items;
37
+ }, [navigationPath]);
38
+ return (jsxRuntime.jsx("div", { className: "px-4 py-2 mb-2 border-bottom-1 surface-border", children: jsxRuntime.jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: '0.5rem' }, children: [jsxRuntime.jsx(button.Button, { icon: jsxRuntime.jsx(faIcons__namespace.FaArrowLeft, {}), className: "p-button-text p-button-sm", onClick: () => onNavigate(navigationPath.length - 1), tooltip: "Navigate back", tooltipOptions: { position: 'top' }, disabled: navigationPath.length === 0 }), jsxRuntime.jsx("div", { style: { fontSize: '0.9rem', color: 'var(--text-color-secondary)' }, children: breadcrumbItems.map((item, index) => (jsxRuntime.jsxs("span", { children: [index > 0 && jsxRuntime.jsx("span", { className: "mx-2", children: ">" }), jsxRuntime.jsx("span", { onClick: () => onNavigate(item.index), style: {
39
+ cursor: 'pointer',
40
+ textDecoration: index < breadcrumbItems.length - 1 ? 'underline' : 'none'
41
+ }, children: item.name })] }, index))) })] }) }));
42
+ }
43
+
44
+ exports.ObjectNavigationalBar = ObjectNavigationalBar;
45
+ //# sourceMappingURL=ObjectNavigationalBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectNavigationalBar.js","sources":["../../../ObjectNavigationalBar/ObjectNavigationalBar.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 { useMemo } from 'react';\nimport { Button } from 'primereact/button';\nimport * as faIcons from 'react-icons/fa6';\n\nexport interface ObjectNavigationalBarProps {\n navigationPath: string[];\n onNavigate: (index: number) => void;\n}\n\nexport function ObjectNavigationalBar({ navigationPath, onNavigate }: ObjectNavigationalBarProps) {\n const breadcrumbItems = useMemo(() => {\n const items: { name: string; index: number }[] = [{ name: 'Root', index: 0 }];\n for (let i = 0; i < navigationPath.length; i++) {\n items.push({\n name: navigationPath[i],\n index: i + 1\n });\n }\n return items;\n }, [navigationPath]);\n\n return (\n <div className=\"px-4 py-2 mb-2 border-bottom-1 surface-border\">\n <div style={{ display: 'flex', alignItems: 'center', gap: '0.5rem' }}>\n <Button\n icon={<faIcons.FaArrowLeft />}\n className=\"p-button-text p-button-sm\"\n onClick={() => onNavigate(navigationPath.length - 1)}\n tooltip=\"Navigate back\"\n tooltipOptions={{ position: 'top' }}\n disabled={navigationPath.length === 0}\n />\n <div style={{ fontSize: '0.9rem', color: 'var(--text-color-secondary)' }}>\n {breadcrumbItems.map((item, index) => (\n <span key={index}>\n {index > 0 && <span className=\"mx-2\">&gt;</span>}\n <span\n onClick={() => onNavigate(item.index)}\n style={{\n cursor: 'pointer',\n textDecoration: index < breadcrumbItems.length - 1 ? 'underline' : 'none'\n }}\n >\n {item.name}\n </span>\n </span>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["useMemo","_jsx","_jsxs","Button","faIcons"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;SAYgB,qBAAqB,CAAC,EAAE,cAAc,EAAE,UAAU,EAA8B,EAAA;AAC5F,IAAA,MAAM,eAAe,GAAGA,aAAO,CAAC,MAAK;AACjC,QAAA,MAAM,KAAK,GAAsC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC7E,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC5C,KAAK,CAAC,IAAI,CAAC;AACP,gBAAA,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;gBACvB,KAAK,EAAE,CAAC,GAAG;AACd,aAAA,CAAC;QACN;AACA,QAAA,OAAO,KAAK;AAChB,IAAA,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;IAEpB,QACIC,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,+CAA+C,EAAA,QAAA,EAC1DC,eAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAChED,cAAA,CAACE,aAAM,EAAA,EACH,IAAI,EAAEF,cAAA,CAACG,kBAAO,CAAC,WAAW,EAAA,EAAA,CAAG,EAC7B,SAAS,EAAC,2BAA2B,EACrC,OAAO,EAAE,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EACpD,OAAO,EAAC,eAAe,EACvB,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EACnC,QAAQ,EAAE,cAAc,CAAC,MAAM,KAAK,CAAC,EAAA,CACvC,EACFH,cAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAE,EAAA,QAAA,EACnE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAC7BC,eAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CACK,KAAK,GAAG,CAAC,IAAID,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,MAAM,EAAA,QAAA,EAAA,GAAA,EAAA,CAAY,EAChDA,cAAA,CAAA,MAAA,EAAA,EACI,OAAO,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EACrC,KAAK,EAAE;AACH,oCAAA,MAAM,EAAE,SAAS;AACjB,oCAAA,cAAc,EAAE,KAAK,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW,GAAG;AACtE,iCAAA,EAAA,QAAA,EAEA,IAAI,CAAC,IAAI,EAAA,CACP,CAAA,EAAA,EAVA,KAAK,CAWT,CACV,CAAC,EAAA,CACA,CAAA,EAAA,CACJ,EAAA,CACJ;AAEd;;;;"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ var ObjectNavigationalBar = require('./ObjectNavigationalBar.js');
4
+
5
+
6
+
7
+ exports.ObjectNavigationalBar = ObjectNavigationalBar.ObjectNavigationalBar;
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var inputtext = require('primereact/inputtext');
5
+ var faIcons = require('react-icons/fa6');
6
+
7
+ function _interopNamespaceDefault(e) {
8
+ var n = Object.create(null);
9
+ if (e) {
10
+ Object.keys(e).forEach(function (k) {
11
+ if (k !== 'default') {
12
+ var d = Object.getOwnPropertyDescriptor(e, k);
13
+ Object.defineProperty(n, k, d.get ? d : {
14
+ enumerable: true,
15
+ get: function () { return e[k]; }
16
+ });
17
+ }
18
+ });
19
+ }
20
+ n.default = e;
21
+ return Object.freeze(n);
22
+ }
23
+
24
+ var faIcons__namespace = /*#__PURE__*/_interopNamespaceDefault(faIcons);
25
+
26
+ const NameCell = ({ rowData, isEditMode, onUpdate, validationError }) => {
27
+ if (!isEditMode) {
28
+ const isNavigable = rowData.type === 'object' || (rowData.type === 'array' && rowData.items?.type === 'object');
29
+ const navigationTooltipText = rowData.type === 'object'
30
+ ? 'Click to navigate to object properties'
31
+ : 'Click to navigate to item definition';
32
+ return (jsxRuntime.jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: '0.5rem' }, children: [jsxRuntime.jsx("span", { className: isNavigable ? 'schema-navigation-tooltip' : undefined, "data-pr-tooltip": isNavigable ? navigationTooltipText : undefined, "data-pr-position": "top", children: rowData.name }), rowData.description && (jsxRuntime.jsx(faIcons__namespace.FaCircleInfo, { className: "schema-description-tooltip", style: { color: 'var(--text-color-secondary)', fontSize: '0.875rem' }, "data-pr-tooltip": rowData.description, "data-pr-position": "right" }))] }));
33
+ }
34
+ return (jsxRuntime.jsx(inputtext.InputText, { value: rowData.name || '', onChange: (e) => onUpdate(rowData.name || '', 'name', e.target.value), className: `w-full ${validationError ? 'p-invalid' : ''}`, "data-pr-tooltip": validationError, "data-pr-position": "top" }));
35
+ };
36
+
37
+ exports.NameCell = NameCell;
38
+ //# sourceMappingURL=NameCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NameCell.js","sources":["../../../SchemaEditor/NameCell.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 { InputText } from 'primereact/inputtext';\nimport * as faIcons from 'react-icons/fa6';\nimport { JsonSchemaProperty } from '../types/JsonSchema';\n\nexport interface NameCellProps {\n rowData: JsonSchemaProperty;\n isEditMode: boolean;\n onUpdate: (oldName: string, field: keyof JsonSchemaProperty, value: unknown) => void;\n validationError?: string;\n}\n\nexport const NameCell = ({ rowData, isEditMode, onUpdate, validationError }: NameCellProps) => {\n if (!isEditMode) {\n const isNavigable = rowData.type === 'object' || (rowData.type === 'array' && rowData.items?.type === 'object');\n const navigationTooltipText = rowData.type === 'object'\n ? 'Click to navigate to object properties'\n : 'Click to navigate to item definition';\n\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: '0.5rem' }}>\n <span\n className={isNavigable ? 'schema-navigation-tooltip' : undefined}\n data-pr-tooltip={isNavigable ? navigationTooltipText : undefined}\n data-pr-position=\"top\"\n >\n {rowData.name}\n </span>\n {rowData.description && (\n <faIcons.FaCircleInfo\n className=\"schema-description-tooltip\"\n style={{ color: 'var(--text-color-secondary)', fontSize: '0.875rem' }}\n data-pr-tooltip={rowData.description}\n data-pr-position=\"right\"\n />\n )}\n </div>\n );\n }\n\n return (\n <InputText\n value={rowData.name || ''}\n onChange={(e) => onUpdate(rowData.name || '', 'name', e.target.value)}\n className={`w-full ${validationError ? 'p-invalid' : ''}`}\n data-pr-tooltip={validationError}\n data-pr-position=\"top\"\n />\n );\n};\n"],"names":["_jsxs","_jsx","faIcons","InputText"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAcO,MAAM,QAAQ,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAiB,KAAI;IAC1F,IAAI,CAAC,UAAU,EAAE;QACb,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,KAAK,QAAQ,KAAK,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC;AAC/G,QAAA,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,KAAK;AAC3C,cAAE;cACA,sCAAsC;AAE5C,QAAA,QACIA,eAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAChEC,cAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,WAAW,GAAG,2BAA2B,GAAG,SAAS,EAAA,iBAAA,EAC/C,WAAW,GAAG,qBAAqB,GAAG,SAAS,EAAA,kBAAA,EAC/C,KAAK,EAAA,QAAA,EAErB,OAAO,CAAC,IAAI,GACV,EACN,OAAO,CAAC,WAAW,KAChBA,cAAA,CAACC,kBAAO,CAAC,YAAY,IACjB,SAAS,EAAC,4BAA4B,EACtC,KAAK,EAAE,EAAE,KAAK,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAA,iBAAA,EACpD,OAAO,CAAC,WAAW,EAAA,kBAAA,EACnB,OAAO,GAC1B,CACL,CAAA,EAAA,CACC;IAEd;IAEA,QACID,cAAA,CAACE,mBAAS,EAAA,EACN,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,EACzB,QAAQ,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACrE,SAAS,EAAE,CAAA,OAAA,EAAU,eAAe,GAAG,WAAW,GAAG,EAAE,CAAA,CAAE,EAAA,iBAAA,EACxC,eAAe,EAAA,kBAAA,EACf,KAAK,EAAA,CACxB;AAEV;;;;"}