@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
@@ -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 <ProgressSpinner />\n <p className=\"m-0\">\n {props.message}\n </p>\n </Dialog>\n );\n};\n"],"names":["_jsxs","Dialog","_jsx","ProgressSpinner"],"mappings":";;;;;;AAOO,MAAM,mBAAmB,GAAG,CAAC,KAAiC,KAAI;AACrE,IAAA,QACIA,eAAA,CAACC,aAAM,IACH,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,MAAM,SAAS,EACzB,OAAO,EAAE,IAAI,EAAA,QAAA,EAAA,CAEbC,eAACC,+BAAe,EAAA,EAAA,CAAG,EACnBD,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,KAAK,YACb,KAAK,CAAC,OAAO,EAAA,CACd,CAAA,EAAA,CACC;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":"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"}
@@ -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;;;;"}