@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,151 +0,0 @@
1
- import * as PIXI from 'pixi.js';
2
-
3
- const CONNECTOR_COLOR = 0x64748b;
4
- const CONNECTOR_HOVER_COLOR = 0x3b82f6;
5
- const CONNECTOR_WIDTH = 2;
6
- const CONNECTOR_HOVER_WIDTH = 3;
7
- function createConnectorGraphics(connector, getElements, onClick) {
8
- const graphics = new PIXI.Graphics();
9
- graphics.eventMode = 'static';
10
- graphics.cursor = 'pointer';
11
- graphics.hitArea = new PIXI.Rectangle(0, 0, 0, 0);
12
- const connectorGraphics = {
13
- id: connector.id,
14
- graphics,
15
- connector,
16
- getElements,
17
- isHovered: false,
18
- };
19
- drawConnector(graphics, connector, getElements(), false);
20
- graphics.on('click', () => {
21
- onClick(connector.id);
22
- });
23
- graphics.on('pointerover', () => {
24
- connectorGraphics.isHovered = true;
25
- drawConnector(graphics, connector, connectorGraphics.getElements(), true);
26
- });
27
- graphics.on('pointerout', () => {
28
- connectorGraphics.isHovered = false;
29
- drawConnector(graphics, connector, connectorGraphics.getElements(), false);
30
- });
31
- return connectorGraphics;
32
- }
33
- function drawConnector(graphics, connector, elements, isHovered) {
34
- const fromElement = elements.get(connector.from.elementId);
35
- const toElement = elements.get(connector.to.elementId);
36
- if (!fromElement || !toElement) {
37
- graphics.clear();
38
- return;
39
- }
40
- const fromPoint = getEdgePosition(fromElement, connector.from.side);
41
- const toPoint = getEdgePosition(toElement, connector.to.side);
42
- graphics.clear();
43
- const controlPointOffset = Math.abs(toPoint.x - fromPoint.x) / 3;
44
- let cp1x, cp1y, cp2x, cp2y;
45
- if (connector.from.side === 'right' && connector.to.side === 'left') {
46
- cp1x = fromPoint.x + controlPointOffset;
47
- cp1y = fromPoint.y;
48
- cp2x = toPoint.x - controlPointOffset;
49
- cp2y = toPoint.y;
50
- }
51
- else if (connector.from.side === 'bottom' && connector.to.side === 'top') {
52
- cp1x = fromPoint.x;
53
- cp1y = fromPoint.y + controlPointOffset;
54
- cp2x = toPoint.x;
55
- cp2y = toPoint.y - controlPointOffset;
56
- }
57
- else {
58
- switch (connector.from.side) {
59
- case 'right':
60
- cp1x = fromPoint.x + controlPointOffset;
61
- cp1y = fromPoint.y;
62
- break;
63
- case 'left':
64
- cp1x = fromPoint.x - controlPointOffset;
65
- cp1y = fromPoint.y;
66
- break;
67
- case 'bottom':
68
- cp1x = fromPoint.x;
69
- cp1y = fromPoint.y + controlPointOffset;
70
- break;
71
- case 'top':
72
- default:
73
- cp1x = fromPoint.x;
74
- cp1y = fromPoint.y - controlPointOffset;
75
- break;
76
- }
77
- switch (connector.to.side) {
78
- case 'left':
79
- cp2x = toPoint.x - controlPointOffset;
80
- cp2y = toPoint.y;
81
- break;
82
- case 'right':
83
- cp2x = toPoint.x + controlPointOffset;
84
- cp2y = toPoint.y;
85
- break;
86
- case 'top':
87
- cp2x = toPoint.x;
88
- cp2y = toPoint.y - controlPointOffset;
89
- break;
90
- case 'bottom':
91
- default:
92
- cp2x = toPoint.x;
93
- cp2y = toPoint.y + controlPointOffset;
94
- break;
95
- }
96
- }
97
- graphics.moveTo(fromPoint.x, fromPoint.y);
98
- graphics.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, toPoint.x, toPoint.y);
99
- graphics.stroke({
100
- color: isHovered ? CONNECTOR_HOVER_COLOR : CONNECTOR_COLOR,
101
- width: isHovered ? CONNECTOR_HOVER_WIDTH : CONNECTOR_WIDTH,
102
- });
103
- drawArrowhead(graphics, fromPoint.x, fromPoint.y, cp1x, cp1y, cp2x, cp2y, toPoint.x, toPoint.y, isHovered);
104
- const minX = Math.min(fromPoint.x, toPoint.x) - 10;
105
- const minY = Math.min(fromPoint.y, toPoint.y) - 10;
106
- const maxX = Math.max(fromPoint.x, toPoint.x) + 10;
107
- const maxY = Math.max(fromPoint.y, toPoint.y) + 10;
108
- graphics.hitArea = new PIXI.Rectangle(minX, minY, maxX - minX, maxY - minY);
109
- }
110
- function drawArrowhead(graphics, startX, startY, cp1x, cp1y, cp2x, cp2y, endX, endY, isHovered) {
111
- const arrowSize = 10;
112
- const dx = 3 * (endX - cp2x);
113
- const dy = 3 * (endY - cp2y);
114
- const length = Math.sqrt(dx * dx + dy * dy);
115
- if (length === 0)
116
- return;
117
- const unitX = dx / length;
118
- const unitY = dy / length;
119
- const perpX = -unitY;
120
- const perpY = unitX;
121
- const backX = endX - unitX * arrowSize;
122
- const backY = endY - unitY * arrowSize;
123
- const left = { x: backX + perpX * (arrowSize / 2), y: backY + perpY * (arrowSize / 2) };
124
- const right = { x: backX - perpX * (arrowSize / 2), y: backY - perpY * (arrowSize / 2) };
125
- graphics.poly([
126
- endX, endY,
127
- left.x, left.y,
128
- right.x, right.y,
129
- endX, endY
130
- ]);
131
- graphics.fill({ color: isHovered ? CONNECTOR_HOVER_COLOR : CONNECTOR_COLOR });
132
- }
133
- function getEdgePosition(element, side) {
134
- const { position, size } = element;
135
- switch (side) {
136
- case 'top':
137
- return { x: position.x + size.width / 2, y: position.y };
138
- case 'right':
139
- return { x: position.x + size.width, y: position.y + size.height / 2 };
140
- case 'bottom':
141
- return { x: position.x + size.width / 2, y: position.y + size.height };
142
- case 'left':
143
- return { x: position.x, y: position.y + size.height / 2 };
144
- }
145
- }
146
- function updateConnectorGraphics(connectorGraphics, elements) {
147
- drawConnector(connectorGraphics.graphics, connectorGraphics.connector, elements, connectorGraphics.isHovered);
148
- }
149
-
150
- export { createConnectorGraphics, updateConnectorGraphics };
151
- //# sourceMappingURL=connectorGraphics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectorGraphics.js","sources":["../../../../EventModeling/engine/connectorGraphics.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport * as PIXI from 'pixi.js';\nimport { Connector, ElementData, EdgeSide } from '../types';\n\nexport interface ConnectorGraphics {\n id: string;\n graphics: PIXI.Graphics;\n connector: Connector;\n getElements: () => Map<string, ElementData>;\n isHovered: boolean;\n}\n\nconst CONNECTOR_COLOR = 0x64748b;\nconst CONNECTOR_HOVER_COLOR = 0x3b82f6;\nconst CONNECTOR_WIDTH = 2;\nconst CONNECTOR_HOVER_WIDTH = 3;\n\nexport function createConnectorGraphics(\n connector: Connector,\n getElements: () => Map<string, ElementData>,\n onClick: (id: string) => void\n): ConnectorGraphics {\n const graphics = new PIXI.Graphics();\n graphics.eventMode = 'static';\n graphics.cursor = 'pointer';\n graphics.hitArea = new PIXI.Rectangle(0, 0, 0, 0); // Will be updated\n\n const connectorGraphics: ConnectorGraphics = {\n id: connector.id,\n graphics,\n connector,\n getElements,\n isHovered: false,\n };\n\n drawConnector(graphics, connector, getElements(), false);\n\n graphics.on('click', () => {\n onClick(connector.id);\n });\n\n graphics.on('pointerover', () => {\n connectorGraphics.isHovered = true;\n // Use fresh element data from getter\n drawConnector(graphics, connector, connectorGraphics.getElements(), true);\n });\n\n graphics.on('pointerout', () => {\n connectorGraphics.isHovered = false;\n // Use fresh element data from getter\n drawConnector(graphics, connector, connectorGraphics.getElements(), false);\n });\n\n return connectorGraphics;\n}\n\nfunction drawConnector(\n graphics: PIXI.Graphics,\n connector: Connector,\n elements: Map<string, ElementData>,\n isHovered: boolean\n): void {\n const fromElement = elements.get(connector.from.elementId);\n const toElement = elements.get(connector.to.elementId);\n\n if (!fromElement || !toElement) {\n graphics.clear();\n return;\n }\n\n const fromPoint = getEdgePosition(fromElement, connector.from.side);\n const toPoint = getEdgePosition(toElement, connector.to.side);\n\n graphics.clear();\n\n // Create a curved path using cubic Bezier\n const controlPointOffset = Math.abs(toPoint.x - fromPoint.x) / 3;\n \n let cp1x: number, cp1y: number, cp2x: number, cp2y: number;\n\n // Adjust control points based on connection direction\n if (connector.from.side === 'right' && connector.to.side === 'left') {\n // Horizontal connection\n cp1x = fromPoint.x + controlPointOffset;\n cp1y = fromPoint.y;\n cp2x = toPoint.x - controlPointOffset;\n cp2y = toPoint.y;\n } else if (connector.from.side === 'bottom' && connector.to.side === 'top') {\n // Vertical connection\n cp1x = fromPoint.x;\n cp1y = fromPoint.y + controlPointOffset;\n cp2x = toPoint.x;\n cp2y = toPoint.y - controlPointOffset;\n } else {\n // Mixed or diagonal connections\n switch (connector.from.side) {\n case 'right':\n cp1x = fromPoint.x + controlPointOffset;\n cp1y = fromPoint.y;\n break;\n case 'left':\n cp1x = fromPoint.x - controlPointOffset;\n cp1y = fromPoint.y;\n break;\n case 'bottom':\n cp1x = fromPoint.x;\n cp1y = fromPoint.y + controlPointOffset;\n break;\n case 'top':\n default:\n cp1x = fromPoint.x;\n cp1y = fromPoint.y - controlPointOffset;\n break;\n }\n\n switch (connector.to.side) {\n case 'left':\n cp2x = toPoint.x - controlPointOffset;\n cp2y = toPoint.y;\n break;\n case 'right':\n cp2x = toPoint.x + controlPointOffset;\n cp2y = toPoint.y;\n break;\n case 'top':\n cp2x = toPoint.x;\n cp2y = toPoint.y - controlPointOffset;\n break;\n case 'bottom':\n default:\n cp2x = toPoint.x;\n cp2y = toPoint.y + controlPointOffset;\n break;\n }\n }\n\n // Draw the curved line\n graphics.moveTo(fromPoint.x, fromPoint.y);\n graphics.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, toPoint.x, toPoint.y);\n graphics.stroke({\n color: isHovered ? CONNECTOR_HOVER_COLOR : CONNECTOR_COLOR,\n width: isHovered ? CONNECTOR_HOVER_WIDTH : CONNECTOR_WIDTH,\n });\n\n // Draw arrowhead at the end - pass all curve points for accurate tangent calculation\n drawArrowhead(graphics, fromPoint.x, fromPoint.y, cp1x, cp1y, cp2x, cp2y, toPoint.x, toPoint.y, isHovered);\n\n // Update hit area for better click detection\n const minX = Math.min(fromPoint.x, toPoint.x) - 10;\n const minY = Math.min(fromPoint.y, toPoint.y) - 10;\n const maxX = Math.max(fromPoint.x, toPoint.x) + 10;\n const maxY = Math.max(fromPoint.y, toPoint.y) + 10;\n graphics.hitArea = new PIXI.Rectangle(minX, minY, maxX - minX, maxY - minY);\n}\n\nfunction drawArrowhead(\n graphics: PIXI.Graphics,\n startX: number,\n startY: number,\n cp1x: number,\n cp1y: number,\n cp2x: number,\n cp2y: number,\n endX: number,\n endY: number,\n isHovered: boolean\n): void {\n const arrowSize = 10;\n \n // Calculate the tangent at the end of the Bezier curve (t = 1)\n // For cubic Bezier: B'(t) = 3(1-t)²(P1-P0) + 6(1-t)t(P2-P1) + 3t²(P3-P2)\n // At t = 1: B'(1) = 3(P3 - P2)\n // This gives us the direction the curve is heading at the endpoint\n const dx = 3 * (endX - cp2x);\n const dy = 3 * (endY - cp2y);\n const length = Math.sqrt(dx * dx + dy * dy);\n \n if (length === 0) return;\n\n const unitX = dx / length;\n const unitY = dy / length;\n\n // Calculate perpendicular\n const perpX = -unitY;\n const perpY = unitX;\n\n // Calculate arrowhead points\n const backX = endX - unitX * arrowSize;\n const backY = endY - unitY * arrowSize;\n const left = { x: backX + perpX * (arrowSize / 2), y: backY + perpY * (arrowSize / 2) };\n const right = { x: backX - perpX * (arrowSize / 2), y: backY - perpY * (arrowSize / 2) };\n\n // Draw filled arrowhead\n graphics.poly([\n endX, endY,\n left.x, left.y,\n right.x, right.y,\n endX, endY\n ]);\n graphics.fill({ color: isHovered ? CONNECTOR_HOVER_COLOR : CONNECTOR_COLOR });\n}\n\nfunction getEdgePosition(element: ElementData, side: EdgeSide): { x: number; y: number } {\n const { position, size } = element;\n \n switch (side) {\n case 'top':\n return { x: position.x + size.width / 2, y: position.y };\n case 'right':\n return { x: position.x + size.width, y: position.y + size.height / 2 };\n case 'bottom':\n return { x: position.x + size.width / 2, y: position.y + size.height };\n case 'left':\n return { x: position.x, y: position.y + size.height / 2 };\n }\n}\n\nexport function updateConnectorGraphics(\n connectorGraphics: ConnectorGraphics,\n elements: Map<string, ElementData>\n): void {\n // Preserve hover state when updating\n drawConnector(connectorGraphics.graphics, connectorGraphics.connector, elements, connectorGraphics.isHovered);\n}\n"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import * as PIXI from 'pixi.js';
2
- import { ElementData, EdgeSide } from '../types';
3
- export interface ElementSprite {
4
- id: string;
5
- container: PIXI.Container;
6
- graphics: PIXI.Graphics;
7
- selectionBorder?: PIXI.Graphics;
8
- labelText: PIXI.Text;
9
- descriptionText?: PIXI.Text;
10
- edgePoints: Map<EdgeSide, PIXI.Graphics>;
11
- data: ElementData;
12
- isDragging: boolean;
13
- dragOffset?: {
14
- x: number;
15
- y: number;
16
- };
17
- }
18
- export declare function createElementSprite(data: ElementData, onElementClick: (id: string) => void, onElementDragStart: (id: string, x: number, y: number) => void, onElementDragMove: (id: string, x: number, y: number) => void, onElementDragEnd: (id: string) => void, onEdgeClick: (elementId: string, side: EdgeSide) => void): ElementSprite;
19
- export declare function updateElementSprite(sprite: ElementSprite, data: ElementData): void;
20
- export declare function showEdgePoints(sprite: ElementSprite): void;
21
- export declare function hideEdgePoints(sprite: ElementSprite): void;
22
- export declare function setElementSelected(sprite: ElementSprite, selected: boolean): void;
23
- //# sourceMappingURL=elementSprites.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elementSprites.d.ts","sourceRoot":"","sources":["../../../../EventModeling/engine/elementSprites.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAkB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;IACxB,eAAe,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IAChC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;IAC5B,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAMD,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,EACpC,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,EAC9D,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,EAC7D,gBAAgB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,EACtC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,KAAK,IAAI,GACzD,aAAa,CA4Hf;AA8GD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAwClF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAI1D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAI1D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CASjF"}
@@ -1,276 +0,0 @@
1
- import * as PIXI from 'pixi.js';
2
- import { ELEMENT_COLORS } from '../types.js';
3
-
4
- const EDGE_POINT_RADIUS = 6;
5
- const BORDER_RADIUS = 8;
6
- const PADDING = 16;
7
- function createElementSprite(data, onElementClick, onElementDragStart, onElementDragMove, onElementDragEnd, onEdgeClick) {
8
- const container = new PIXI.Container();
9
- container.position.set(data.position.x, data.position.y);
10
- container.eventMode = 'static';
11
- container.cursor = 'move';
12
- container.hitArea = new PIXI.Rectangle(0, 0, data.size.width, data.size.height);
13
- const shadowGraphics = new PIXI.Graphics();
14
- shadowGraphics.alpha = 0.15;
15
- container.addChild(shadowGraphics);
16
- const graphics = new PIXI.Graphics();
17
- const edgePoints = new Map();
18
- const selectionBorder = new PIXI.Graphics();
19
- selectionBorder.alpha = 0;
20
- container.addChild(selectionBorder);
21
- const elementColors = ELEMENT_COLORS[data.type];
22
- const backgroundColor = 'background' in elementColors ? elementColors.background : elementColors.fill;
23
- if (data.type === 'process') {
24
- const centerX = data.size.width / 2;
25
- const centerY = data.size.height / 2;
26
- const radius = Math.min(data.size.width, data.size.height) / 2;
27
- for (let i = 0; i < 3; i++) {
28
- shadowGraphics.circle(centerX, centerY + 2 + i, radius + i);
29
- shadowGraphics.fill({ color: 0x000000, alpha: 0.06 });
30
- }
31
- }
32
- else {
33
- for (let i = 0; i < 4; i++) {
34
- shadowGraphics.roundRect(i, 2 + i, data.size.width, data.size.height, BORDER_RADIUS);
35
- shadowGraphics.fill({ color: 0x000000, alpha: 0.06 });
36
- }
37
- }
38
- if (data.type === 'process') {
39
- const centerX = data.size.width / 2;
40
- const centerY = data.size.height / 2;
41
- const radius = Math.min(data.size.width, data.size.height) / 2;
42
- graphics.circle(centerX, centerY, radius);
43
- graphics.fill({ color: backgroundColor });
44
- if ('stroke' in elementColors) {
45
- graphics.stroke({ color: elementColors.stroke, width: 2 });
46
- }
47
- }
48
- else {
49
- graphics.roundRect(0, 0, data.size.width, data.size.height, BORDER_RADIUS);
50
- graphics.fill({ color: backgroundColor });
51
- }
52
- container.addChild(graphics);
53
- const textColor = 'text' in elementColors ? elementColors.text : 0xffffff;
54
- const labelText = new PIXI.Text({
55
- text: data.label,
56
- style: {
57
- fontSize: 14,
58
- fill: textColor,
59
- fontWeight: '600',
60
- wordWrap: true,
61
- wordWrapWidth: data.size.width - PADDING * 2,
62
- },
63
- });
64
- labelText.position.set(PADDING, PADDING);
65
- container.addChild(labelText);
66
- let descriptionText;
67
- if (data.description && data.type !== 'process') {
68
- descriptionText = new PIXI.Text({
69
- text: data.description,
70
- style: new PIXI.TextStyle({
71
- fontSize: 12,
72
- fill: textColor,
73
- fontWeight: '400',
74
- wordWrap: true,
75
- wordWrapWidth: data.size.width - PADDING * 2,
76
- }),
77
- });
78
- descriptionText.alpha = 0.9;
79
- descriptionText.position.set(PADDING, PADDING + 24);
80
- container.addChild(descriptionText);
81
- }
82
- if (data.type !== 'process') {
83
- const sides = ['top', 'right', 'bottom', 'left'];
84
- sides.forEach(side => {
85
- const edgePoint = createEdgePoint(data, side, () => onEdgeClick(data.id, side));
86
- edgePoints.set(side, edgePoint);
87
- container.addChild(edgePoint);
88
- });
89
- }
90
- container.on('pointerdown', (event) => {
91
- if (!container.parent)
92
- return;
93
- const localPos = event.getLocalPosition(container.parent);
94
- onElementDragStart(data.id, localPos.x - data.position.x, localPos.y - data.position.y);
95
- });
96
- container.on('click', () => {
97
- onElementClick(data.id);
98
- });
99
- return {
100
- id: data.id,
101
- container,
102
- graphics,
103
- selectionBorder,
104
- labelText,
105
- descriptionText,
106
- edgePoints,
107
- data,
108
- isDragging: false,
109
- };
110
- }
111
- function drawBoxElement(graphics, data) {
112
- const colors = ELEMENT_COLORS[data.type];
113
- if (!('background' in colors)) {
114
- return;
115
- }
116
- graphics.clear();
117
- graphics.roundRect(0, 0, data.size.width, data.size.height, BORDER_RADIUS);
118
- graphics.fill({ color: colors.background });
119
- graphics.visible = true;
120
- graphics.alpha = 1;
121
- }
122
- function drawProcessElement(graphics, data) {
123
- const colors = ELEMENT_COLORS.process;
124
- const centerX = data.size.width / 2;
125
- const centerY = data.size.height / 2;
126
- const radius = Math.min(data.size.width, data.size.height) / 2;
127
- graphics.clear();
128
- graphics.circle(centerX, centerY, radius);
129
- graphics.fill({ color: colors.fill });
130
- graphics.stroke({ color: colors.stroke, width: 2 });
131
- const teeth = 8;
132
- const toothLength = radius * 0.2;
133
- const innerRadius = radius * 0.6;
134
- for (let i = 0; i < teeth; i++) {
135
- const angle = (i / teeth) * Math.PI * 2;
136
- const nextAngle = ((i + 0.4) / teeth) * Math.PI * 2;
137
- const x1 = centerX + Math.cos(angle) * radius;
138
- const y1 = centerY + Math.sin(angle) * radius;
139
- const x2 = centerX + Math.cos(angle) * (radius + toothLength);
140
- const y2 = centerY + Math.sin(angle) * (radius + toothLength);
141
- const x3 = centerX + Math.cos(nextAngle) * (radius + toothLength);
142
- const y3 = centerY + Math.sin(nextAngle) * (radius + toothLength);
143
- const x4 = centerX + Math.cos(nextAngle) * radius;
144
- const y4 = centerY + Math.sin(nextAngle) * radius;
145
- graphics.moveTo(x1, y1);
146
- graphics.lineTo(x2, y2);
147
- graphics.lineTo(x3, y3);
148
- graphics.lineTo(x4, y4);
149
- graphics.fill({ color: colors.fill });
150
- }
151
- graphics.circle(centerX, centerY, innerRadius);
152
- graphics.fill({ color: 0xffffff });
153
- graphics.stroke({ color: colors.stroke, width: 2 });
154
- }
155
- function createEdgePoint(data, side, onClick) {
156
- const edgePoint = new PIXI.Graphics();
157
- edgePoint.eventMode = 'static';
158
- edgePoint.cursor = 'crosshair';
159
- const hitSize = EDGE_POINT_RADIUS * 2;
160
- edgePoint.hitArea = new PIXI.Circle(0, 0, hitSize);
161
- let x = 0, y = 0;
162
- switch (side) {
163
- case 'top':
164
- x = data.size.width / 2;
165
- y = 0;
166
- break;
167
- case 'right':
168
- x = data.size.width;
169
- y = data.size.height / 2;
170
- break;
171
- case 'bottom':
172
- x = data.size.width / 2;
173
- y = data.size.height;
174
- break;
175
- case 'left':
176
- x = 0;
177
- y = data.size.height / 2;
178
- break;
179
- }
180
- edgePoint.position.set(x, y);
181
- const colors = ELEMENT_COLORS[data.type];
182
- edgePoint.circle(0, 0, EDGE_POINT_RADIUS);
183
- edgePoint.fill({ color: 0xffffff });
184
- edgePoint.stroke({ color: 'background' in colors ? colors.background : 0x6b7280, width: 2 });
185
- edgePoint.alpha = 0;
186
- edgePoint.on('click', (e) => {
187
- e.stopPropagation();
188
- onClick();
189
- });
190
- return edgePoint;
191
- }
192
- function updateElementSprite(sprite, data) {
193
- sprite.data = data;
194
- sprite.container.position.set(data.position.x, data.position.y);
195
- if (data.type === 'process') {
196
- drawProcessElement(sprite.graphics, data);
197
- }
198
- else {
199
- drawBoxElement(sprite.graphics, data);
200
- }
201
- sprite.labelText.text = data.label;
202
- if (sprite.descriptionText && data.description) {
203
- sprite.descriptionText.text = data.description;
204
- }
205
- sprite.edgePoints.forEach((edgePoint, side) => {
206
- let x = 0, y = 0;
207
- switch (side) {
208
- case 'top':
209
- x = data.size.width / 2;
210
- y = 0;
211
- break;
212
- case 'right':
213
- x = data.size.width;
214
- y = data.size.height / 2;
215
- break;
216
- case 'bottom':
217
- x = data.size.width / 2;
218
- y = data.size.height;
219
- break;
220
- case 'left':
221
- x = 0;
222
- y = data.size.height / 2;
223
- break;
224
- }
225
- edgePoint.position.set(x, y);
226
- });
227
- }
228
- function showEdgePoints(sprite) {
229
- sprite.edgePoints.forEach(edgePoint => {
230
- edgePoint.alpha = 1;
231
- });
232
- }
233
- function hideEdgePoints(sprite) {
234
- sprite.edgePoints.forEach(edgePoint => {
235
- edgePoint.alpha = 0;
236
- });
237
- }
238
- function setElementSelected(sprite, selected) {
239
- if (!sprite.selectionBorder)
240
- return;
241
- if (selected) {
242
- updateSelectionBorder(sprite);
243
- sprite.selectionBorder.alpha = 1;
244
- }
245
- else {
246
- sprite.selectionBorder.alpha = 0;
247
- }
248
- }
249
- function updateSelectionBorder(sprite) {
250
- if (!sprite.selectionBorder)
251
- return;
252
- const selectionBorder = sprite.selectionBorder;
253
- selectionBorder.clear();
254
- const borderWidth = 3;
255
- const offset = -borderWidth;
256
- const primaryColor = getComputedPrimaryColor();
257
- if (sprite.data.type === 'process') {
258
- const centerX = sprite.data.size.width / 2;
259
- const centerY = sprite.data.size.height / 2;
260
- const radius = Math.min(sprite.data.size.width, sprite.data.size.height) / 2 + borderWidth;
261
- selectionBorder.circle(centerX, centerY, radius);
262
- selectionBorder.stroke({ color: primaryColor, width: borderWidth });
263
- }
264
- else {
265
- selectionBorder.roundRect(offset, offset, sprite.data.size.width + borderWidth * 2, sprite.data.size.height + borderWidth * 2, BORDER_RADIUS + borderWidth);
266
- selectionBorder.stroke({ color: primaryColor, width: borderWidth });
267
- }
268
- }
269
- function getComputedPrimaryColor() {
270
- const style = getComputedStyle(document.documentElement);
271
- const primaryColorStr = style.getPropertyValue('--primary-color').trim() || '#3B82F6';
272
- return parseInt(primaryColorStr.replace('#', ''), 16);
273
- }
274
-
275
- export { createElementSprite, hideEdgePoints, setElementSelected, showEdgePoints, updateElementSprite };
276
- //# sourceMappingURL=elementSprites.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elementSprites.js","sources":["../../../../EventModeling/engine/elementSprites.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport * as PIXI from 'pixi.js';\nimport { ElementData, ELEMENT_COLORS, EdgeSide } from '../types';\n\nexport interface ElementSprite {\n id: string;\n container: PIXI.Container;\n graphics: PIXI.Graphics;\n selectionBorder?: PIXI.Graphics;\n labelText: PIXI.Text;\n descriptionText?: PIXI.Text;\n edgePoints: Map<EdgeSide, PIXI.Graphics>;\n data: ElementData;\n isDragging: boolean;\n dragOffset?: { x: number; y: number };\n}\n\nconst EDGE_POINT_RADIUS = 6;\nconst BORDER_RADIUS = 8;\nconst PADDING = 16;\n\nexport function createElementSprite(\n data: ElementData,\n onElementClick: (id: string) => void,\n onElementDragStart: (id: string, x: number, y: number) => void,\n onElementDragMove: (id: string, x: number, y: number) => void,\n onElementDragEnd: (id: string) => void,\n onEdgeClick: (elementId: string, side: EdgeSide) => void\n): ElementSprite {\n const container = new PIXI.Container();\n container.position.set(data.position.x, data.position.y);\n container.eventMode = 'static';\n container.cursor = 'move';\n // Set explicit hit area for interaction\n container.hitArea = new PIXI.Rectangle(0, 0, data.size.width, data.size.height);\n\n // Create shadow layer\n const shadowGraphics = new PIXI.Graphics();\n shadowGraphics.alpha = 0.15;\n container.addChild(shadowGraphics);\n\n const graphics = new PIXI.Graphics();\n const edgePoints = new Map<EdgeSide, PIXI.Graphics>();\n\n // Create selection border (initially hidden)\n const selectionBorder = new PIXI.Graphics();\n selectionBorder.alpha = 0;\n container.addChild(selectionBorder);\n\n // Get colors based on element type\n const elementColors = ELEMENT_COLORS[data.type];\n const backgroundColor = 'background' in elementColors ? elementColors.background : elementColors.fill;\n \n // Draw shadow\n if (data.type === 'process') {\n const centerX = data.size.width / 2;\n const centerY = data.size.height / 2;\n const radius = Math.min(data.size.width, data.size.height) / 2;\n for (let i = 0; i < 3; i++) {\n shadowGraphics.circle(centerX, centerY + 2 + i, radius + i);\n shadowGraphics.fill({ color: 0x000000, alpha: 0.06 });\n }\n } else {\n for (let i = 0; i < 4; i++) {\n shadowGraphics.roundRect(i, 2 + i, data.size.width, data.size.height, BORDER_RADIUS);\n shadowGraphics.fill({ color: 0x000000, alpha: 0.06 });\n }\n }\n \n // Draw with proper shapes (PIXI v8 requires fill with object format)\n if (data.type === 'process') {\n const centerX = data.size.width / 2;\n const centerY = data.size.height / 2;\n const radius = Math.min(data.size.width, data.size.height) / 2;\n graphics.circle(centerX, centerY, radius);\n graphics.fill({ color: backgroundColor });\n if ('stroke' in elementColors) {\n graphics.stroke({ color: elementColors.stroke, width: 2 });\n }\n } else {\n // Use roundRect for proper appearance\n graphics.roundRect(0, 0, data.size.width, data.size.height, BORDER_RADIUS);\n graphics.fill({ color: backgroundColor });\n }\n\n container.addChild(graphics);\n\n // Create label text\n const textColor = 'text' in elementColors ? elementColors.text : 0xffffff;\n const labelText = new PIXI.Text({\n text: data.label,\n style: {\n fontSize: 14,\n fill: textColor,\n fontWeight: '600',\n wordWrap: true,\n wordWrapWidth: data.size.width - PADDING * 2,\n } as PIXI.TextStyle,\n });\n labelText.position.set(PADDING, PADDING);\n container.addChild(labelText);\n\n // Create description text if exists\n let descriptionText: PIXI.Text | undefined;\n if (data.description && data.type !== 'process') {\n descriptionText = new PIXI.Text({\n text: data.description,\n style: new PIXI.TextStyle({\n fontSize: 12,\n fill: textColor,\n fontWeight: '400',\n wordWrap: true,\n wordWrapWidth: data.size.width - PADDING * 2,\n }),\n });\n descriptionText.alpha = 0.9;\n descriptionText.position.set(PADDING, PADDING + 24);\n container.addChild(descriptionText);\n }\n\n // Create edge points for connections\n if (data.type !== 'process') {\n const sides: EdgeSide[] = ['top', 'right', 'bottom', 'left'];\n sides.forEach(side => {\n const edgePoint = createEdgePoint(data, side, () => onEdgeClick(data.id, side));\n edgePoints.set(side, edgePoint);\n container.addChild(edgePoint);\n });\n }\n\n // Set up interaction\n container.on('pointerdown', (event: PIXI.FederatedPointerEvent) => {\n if (!container.parent) return;\n const localPos = event.getLocalPosition(container.parent);\n onElementDragStart(data.id, localPos.x - data.position.x, localPos.y - data.position.y);\n });\n\n container.on('click', () => {\n onElementClick(data.id);\n });\n\n return {\n id: data.id,\n container,\n graphics,\n selectionBorder,\n labelText,\n descriptionText,\n edgePoints,\n data,\n isDragging: false,\n };\n}\n\nfunction drawBoxElement(graphics: PIXI.Graphics, data: ElementData): void {\n const colors = ELEMENT_COLORS[data.type];\n if (!('background' in colors)) {\n return;\n }\n \n graphics.clear();\n \n // Draw the rounded rectangle with solid fill (PIXI v8 - use object format)\n graphics.roundRect(0, 0, data.size.width, data.size.height, BORDER_RADIUS);\n graphics.fill({ color: colors.background });\n \n // Force visibility\n graphics.visible = true;\n graphics.alpha = 1;\n}\n\nfunction drawProcessElement(graphics: PIXI.Graphics, data: ElementData): void {\n const colors = ELEMENT_COLORS.process;\n const centerX = data.size.width / 2;\n const centerY = data.size.height / 2;\n const radius = Math.min(data.size.width, data.size.height) / 2;\n\n graphics.clear();\n \n // Draw outer circle\n graphics.circle(centerX, centerY, radius);\n graphics.fill({ color: colors.fill });\n graphics.stroke({ color: colors.stroke, width: 2 });\n\n // Draw cogwheel teeth\n const teeth = 8;\n const toothLength = radius * 0.2;\n const innerRadius = radius * 0.6;\n \n for (let i = 0; i < teeth; i++) {\n const angle = (i / teeth) * Math.PI * 2;\n const nextAngle = ((i + 0.4) / teeth) * Math.PI * 2;\n \n const x1 = centerX + Math.cos(angle) * radius;\n const y1 = centerY + Math.sin(angle) * radius;\n const x2 = centerX + Math.cos(angle) * (radius + toothLength);\n const y2 = centerY + Math.sin(angle) * (radius + toothLength);\n const x3 = centerX + Math.cos(nextAngle) * (radius + toothLength);\n const y3 = centerY + Math.sin(nextAngle) * (radius + toothLength);\n const x4 = centerX + Math.cos(nextAngle) * radius;\n const y4 = centerY + Math.sin(nextAngle) * radius;\n \n graphics.moveTo(x1, y1);\n graphics.lineTo(x2, y2);\n graphics.lineTo(x3, y3);\n graphics.lineTo(x4, y4);\n graphics.fill({ color: colors.fill });\n }\n\n // Draw inner circle\n graphics.circle(centerX, centerY, innerRadius);\n graphics.fill({ color: 0xffffff });\n graphics.stroke({ color: colors.stroke, width: 2 });\n}\n\nfunction createEdgePoint(data: ElementData, side: EdgeSide, onClick: () => void): PIXI.Graphics {\n const edgePoint = new PIXI.Graphics();\n edgePoint.eventMode = 'static';\n edgePoint.cursor = 'crosshair';\n \n // Set explicit hit area for better interaction\n const hitSize = EDGE_POINT_RADIUS * 2;\n edgePoint.hitArea = new PIXI.Circle(0, 0, hitSize);\n \n // Position based on side\n let x = 0, y = 0;\n switch (side) {\n case 'top':\n x = data.size.width / 2;\n y = 0;\n break;\n case 'right':\n x = data.size.width;\n y = data.size.height / 2;\n break;\n case 'bottom':\n x = data.size.width / 2;\n y = data.size.height;\n break;\n case 'left':\n x = 0;\n y = data.size.height / 2;\n break;\n }\n\n edgePoint.position.set(x, y);\n \n // Draw edge point (initially hidden)\n const colors = ELEMENT_COLORS[data.type];\n edgePoint.circle(0, 0, EDGE_POINT_RADIUS);\n edgePoint.fill({ color: 0xffffff });\n edgePoint.stroke({ color: 'background' in colors ? colors.background : 0x6b7280, width: 2 });\n edgePoint.alpha = 0;\n\n edgePoint.on('click', (e: PIXI.FederatedPointerEvent) => {\n e.stopPropagation();\n onClick();\n });\n\n return edgePoint;\n}\n\nexport function updateElementSprite(sprite: ElementSprite, data: ElementData): void {\n sprite.data = data;\n sprite.container.position.set(data.position.x, data.position.y);\n \n // Update graphics\n if (data.type === 'process') {\n drawProcessElement(sprite.graphics, data);\n } else {\n drawBoxElement(sprite.graphics, data);\n }\n\n // Update text\n sprite.labelText.text = data.label;\n if (sprite.descriptionText && data.description) {\n sprite.descriptionText.text = data.description;\n }\n\n // Update edge points positions\n sprite.edgePoints.forEach((edgePoint, side) => {\n let x = 0, y = 0;\n switch (side) {\n case 'top':\n x = data.size.width / 2;\n y = 0;\n break;\n case 'right':\n x = data.size.width;\n y = data.size.height / 2;\n break;\n case 'bottom':\n x = data.size.width / 2;\n y = data.size.height;\n break;\n case 'left':\n x = 0;\n y = data.size.height / 2;\n break;\n }\n edgePoint.position.set(x, y);\n });\n}\n\nexport function showEdgePoints(sprite: ElementSprite): void {\n sprite.edgePoints.forEach(edgePoint => {\n edgePoint.alpha = 1;\n });\n}\n\nexport function hideEdgePoints(sprite: ElementSprite): void {\n sprite.edgePoints.forEach(edgePoint => {\n edgePoint.alpha = 0;\n });\n}\n\nexport function setElementSelected(sprite: ElementSprite, selected: boolean): void {\n if (!sprite.selectionBorder) return;\n \n if (selected) {\n updateSelectionBorder(sprite);\n sprite.selectionBorder.alpha = 1;\n } else {\n sprite.selectionBorder.alpha = 0;\n }\n}\n\nfunction updateSelectionBorder(sprite: ElementSprite): void {\n if (!sprite.selectionBorder) return;\n \n const selectionBorder = sprite.selectionBorder;\n selectionBorder.clear();\n \n const borderWidth = 3;\n const offset = -borderWidth;\n \n // Get primary color from CSS variable with fallback\n const primaryColor = getComputedPrimaryColor();\n \n if (sprite.data.type === 'process') {\n const centerX = sprite.data.size.width / 2;\n const centerY = sprite.data.size.height / 2;\n const radius = Math.min(sprite.data.size.width, sprite.data.size.height) / 2 + borderWidth;\n \n selectionBorder.circle(centerX, centerY, radius);\n selectionBorder.stroke({ color: primaryColor, width: borderWidth });\n } else {\n selectionBorder.roundRect(\n offset, \n offset, \n sprite.data.size.width + borderWidth * 2, \n sprite.data.size.height + borderWidth * 2, \n BORDER_RADIUS + borderWidth\n );\n selectionBorder.stroke({ color: primaryColor, width: borderWidth });\n }\n}\n\nfunction getComputedPrimaryColor(): number {\n // Get the primary color from CSS custom properties\n const style = getComputedStyle(document.documentElement);\n const primaryColorStr = style.getPropertyValue('--primary-color').trim() || '#3B82F6';\n \n // Convert hex color string to number\n return parseInt(primaryColorStr.replace('#', ''), 16);\n}\n"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './EventModeling';
2
- export * from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../EventModeling/index.ts"],"names":[],"mappings":"AAGA,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC"}
@@ -1,3 +0,0 @@
1
- export { EventModeling } from './EventModeling.js';
2
- export { DEFAULT_ELEMENT_SIZE, ELEMENT_COLORS, calculateOptimalEdges } from './types.js';
3
- //# sourceMappingURL=index.js.map
@@ -1,79 +0,0 @@
1
- export type ElementType = 'command' | 'event' | 'readmodel' | 'process';
2
- export interface Position {
3
- x: number;
4
- y: number;
5
- }
6
- export interface Size {
7
- width: number;
8
- height: number;
9
- }
10
- export interface ElementData {
11
- id: string;
12
- type: ElementType;
13
- position: Position;
14
- size: Size;
15
- label: string;
16
- description?: string;
17
- }
18
- export type EdgeSide = 'top' | 'right' | 'bottom' | 'left';
19
- export interface EdgePoint {
20
- elementId: string;
21
- side: EdgeSide;
22
- }
23
- export interface Connector {
24
- id: string;
25
- from: EdgePoint;
26
- to: EdgePoint;
27
- }
28
- export interface EventModelingState {
29
- elements: ElementData[];
30
- connectors: Connector[];
31
- selectedElementId?: string;
32
- selectedConnectorId?: string;
33
- }
34
- export interface CanvasTransform {
35
- x: number;
36
- y: number;
37
- scale: number;
38
- }
39
- export declare const ELEMENT_COLORS: {
40
- readonly command: {
41
- readonly background: 3900150;
42
- readonly text: 16777215;
43
- };
44
- readonly event: {
45
- readonly background: 16096779;
46
- readonly text: 16777215;
47
- };
48
- readonly readmodel: {
49
- readonly background: 1096065;
50
- readonly text: 16777215;
51
- };
52
- readonly process: {
53
- readonly fill: 7041664;
54
- readonly stroke: 3621201;
55
- };
56
- };
57
- export declare const DEFAULT_ELEMENT_SIZE: {
58
- readonly command: {
59
- readonly width: 200;
60
- readonly height: 100;
61
- };
62
- readonly event: {
63
- readonly width: 200;
64
- readonly height: 100;
65
- };
66
- readonly readmodel: {
67
- readonly width: 200;
68
- readonly height: 100;
69
- };
70
- readonly process: {
71
- readonly width: 80;
72
- readonly height: 80;
73
- };
74
- };
75
- export declare function calculateOptimalEdges(fromElement: ElementData, toElement: ElementData): {
76
- fromSide: EdgeSide;
77
- toSide: EdgeSide;
78
- };
79
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../EventModeling/types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,CAAC;AAExE,MAAM,WAAW,QAAQ;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,IAAI;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3D,MAAM,WAAW,SAAS;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;CAiBjB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;CAKvB,CAAC;AAMX,wBAAgB,qBAAqB,CACjC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,WAAW,GACvB;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAA;CAAE,CAqC1C"}