@openchoreo/cell-diagram 1.2.0-rc.1

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 (285) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +115 -0
  3. package/dist/Diagram.esm.js +55 -0
  4. package/dist/Diagram.esm.js.map +1 -0
  5. package/dist/components/Cell/CellLink/CellLinkFactory.esm.js +19 -0
  6. package/dist/components/Cell/CellLink/CellLinkFactory.esm.js.map +1 -0
  7. package/dist/components/Cell/CellLink/CellLinkModel.esm.js +59 -0
  8. package/dist/components/Cell/CellLink/CellLinkModel.esm.js.map +1 -0
  9. package/dist/components/Cell/CellLink/CellLinkWidget.esm.js +217 -0
  10. package/dist/components/Cell/CellLink/CellLinkWidget.esm.js.map +1 -0
  11. package/dist/components/Cell/CellNode/CellFactory.esm.js +19 -0
  12. package/dist/components/Cell/CellNode/CellFactory.esm.js.map +1 -0
  13. package/dist/components/Cell/CellNode/CellModel.esm.js +73 -0
  14. package/dist/components/Cell/CellNode/CellModel.esm.js.map +1 -0
  15. package/dist/components/Cell/CellNode/CellWidget.esm.js +166 -0
  16. package/dist/components/Cell/CellNode/CellWidget.esm.js.map +1 -0
  17. package/dist/components/Cell/CellNode/styles.esm.js +149 -0
  18. package/dist/components/Cell/CellNode/styles.esm.js.map +1 -0
  19. package/dist/components/Cell/CellPort/CellPortFactory.esm.js +17 -0
  20. package/dist/components/Cell/CellPort/CellPortFactory.esm.js.map +1 -0
  21. package/dist/components/Cell/CellPort/CellPortModel.esm.js +18 -0
  22. package/dist/components/Cell/CellPort/CellPortModel.esm.js.map +1 -0
  23. package/dist/components/Cell/CellPort/CellPortWidget.esm.js +24 -0
  24. package/dist/components/Cell/CellPort/CellPortWidget.esm.js.map +1 -0
  25. package/dist/components/Cell/CellPort/styles.esm.js +13 -0
  26. package/dist/components/Cell/CellPort/styles.esm.js.map +1 -0
  27. package/dist/components/Cell/EmptyNode/EmptyFactory.esm.js +20 -0
  28. package/dist/components/Cell/EmptyNode/EmptyFactory.esm.js.map +1 -0
  29. package/dist/components/Cell/EmptyNode/EmptyModel.esm.js +25 -0
  30. package/dist/components/Cell/EmptyNode/EmptyModel.esm.js.map +1 -0
  31. package/dist/components/Cell/EmptyNode/EmptyWidget.esm.js +52 -0
  32. package/dist/components/Cell/EmptyNode/EmptyWidget.esm.js.map +1 -0
  33. package/dist/components/Cell/EmptyNode/styles.esm.js +12 -0
  34. package/dist/components/Cell/EmptyNode/styles.esm.js.map +1 -0
  35. package/dist/components/Cell/cell-util.esm.js +110 -0
  36. package/dist/components/Cell/cell-util.esm.js.map +1 -0
  37. package/dist/components/Component/ComponentLink/ComponentLinkFactory.esm.js +19 -0
  38. package/dist/components/Component/ComponentLink/ComponentLinkFactory.esm.js.map +1 -0
  39. package/dist/components/Component/ComponentLink/ComponentLinkModel.esm.js +20 -0
  40. package/dist/components/Component/ComponentLink/ComponentLinkModel.esm.js.map +1 -0
  41. package/dist/components/Component/ComponentLink/ComponentLinkWidget.esm.js +205 -0
  42. package/dist/components/Component/ComponentLink/ComponentLinkWidget.esm.js.map +1 -0
  43. package/dist/components/Component/ComponentNode/ComponentFactory.esm.js +20 -0
  44. package/dist/components/Component/ComponentNode/ComponentFactory.esm.js.map +1 -0
  45. package/dist/components/Component/ComponentNode/ComponentHead/ComponentHead.esm.js +97 -0
  46. package/dist/components/Component/ComponentNode/ComponentHead/ComponentHead.esm.js.map +1 -0
  47. package/dist/components/Component/ComponentNode/ComponentModel.esm.js +26 -0
  48. package/dist/components/Component/ComponentNode/ComponentModel.esm.js.map +1 -0
  49. package/dist/components/Component/ComponentNode/ComponentWidget.esm.js +158 -0
  50. package/dist/components/Component/ComponentNode/ComponentWidget.esm.js.map +1 -0
  51. package/dist/components/Component/ComponentNode/styles.esm.js +102 -0
  52. package/dist/components/Component/ComponentNode/styles.esm.js.map +1 -0
  53. package/dist/components/Component/ComponentPort/ComponentPortFactory.esm.js +17 -0
  54. package/dist/components/Component/ComponentPort/ComponentPortFactory.esm.js.map +1 -0
  55. package/dist/components/Component/ComponentPort/ComponentPortModel.esm.js +18 -0
  56. package/dist/components/Component/ComponentPort/ComponentPortModel.esm.js.map +1 -0
  57. package/dist/components/Component/ComponentPort/ComponentPortWidget.esm.js +24 -0
  58. package/dist/components/Component/ComponentPort/ComponentPortWidget.esm.js.map +1 -0
  59. package/dist/components/Component/ComponentPort/styles.esm.js +16 -0
  60. package/dist/components/Component/ComponentPort/styles.esm.js.map +1 -0
  61. package/dist/components/Component/component-node-util.esm.js +15 -0
  62. package/dist/components/Component/component-node-util.esm.js.map +1 -0
  63. package/dist/components/Connection/ConnectionNode/ConnectionFactory.esm.js +20 -0
  64. package/dist/components/Connection/ConnectionNode/ConnectionFactory.esm.js.map +1 -0
  65. package/dist/components/Connection/ConnectionNode/ConnectionHead/ConnectionHead.esm.js +68 -0
  66. package/dist/components/Connection/ConnectionNode/ConnectionHead/ConnectionHead.esm.js.map +1 -0
  67. package/dist/components/Connection/ConnectionNode/ConnectionModel.esm.js +29 -0
  68. package/dist/components/Connection/ConnectionNode/ConnectionModel.esm.js.map +1 -0
  69. package/dist/components/Connection/ConnectionNode/ConnectionWidget.esm.js +51 -0
  70. package/dist/components/Connection/ConnectionNode/ConnectionWidget.esm.js.map +1 -0
  71. package/dist/components/Connection/ConnectionNode/styles.esm.js +64 -0
  72. package/dist/components/Connection/ConnectionNode/styles.esm.js.map +1 -0
  73. package/dist/components/Connection/ConnectionPort/ConnectionPortFactory.esm.js +17 -0
  74. package/dist/components/Connection/ConnectionPort/ConnectionPortFactory.esm.js.map +1 -0
  75. package/dist/components/Connection/ConnectionPort/ConnectionPortModel.esm.js +18 -0
  76. package/dist/components/Connection/ConnectionPort/ConnectionPortModel.esm.js.map +1 -0
  77. package/dist/components/Connection/ConnectionPort/ConnectionPortWidget.esm.js +24 -0
  78. package/dist/components/Connection/ConnectionPort/ConnectionPortWidget.esm.js.map +1 -0
  79. package/dist/components/Connection/ConnectionPort/styles.esm.js +13 -0
  80. package/dist/components/Connection/ConnectionPort/styles.esm.js.map +1 -0
  81. package/dist/components/Connection/connection-node-util.esm.js +12 -0
  82. package/dist/components/Connection/connection-node-util.esm.js.map +1 -0
  83. package/dist/components/Controls/ControlButtons/ControlButton.esm.js +54 -0
  84. package/dist/components/Controls/ControlButtons/ControlButton.esm.js.map +1 -0
  85. package/dist/components/Controls/ControlButtons/style.esm.js +19 -0
  86. package/dist/components/Controls/ControlButtons/style.esm.js.map +1 -0
  87. package/dist/components/Controls/DiagramControls.esm.js +88 -0
  88. package/dist/components/Controls/DiagramControls.esm.js.map +1 -0
  89. package/dist/components/Controls/DiagramLayers.esm.js +166 -0
  90. package/dist/components/Controls/DiagramLayers.esm.js.map +1 -0
  91. package/dist/components/Controls/DiagramLegend.esm.js +242 -0
  92. package/dist/components/Controls/DiagramLegend.esm.js.map +1 -0
  93. package/dist/components/Controls/LayerButton.esm.js +96 -0
  94. package/dist/components/Controls/LayerButton.esm.js.map +1 -0
  95. package/dist/components/DiagramContext/DiagramContext.esm.js +47 -0
  96. package/dist/components/DiagramContext/DiagramContext.esm.js.map +1 -0
  97. package/dist/components/External/ExternalLink/ExternalLinkFactory.esm.js +19 -0
  98. package/dist/components/External/ExternalLink/ExternalLinkFactory.esm.js.map +1 -0
  99. package/dist/components/External/ExternalLink/ExternalLinkModel.esm.js +112 -0
  100. package/dist/components/External/ExternalLink/ExternalLinkModel.esm.js.map +1 -0
  101. package/dist/components/External/ExternalLink/ExternalLinkWidget.esm.js +68 -0
  102. package/dist/components/External/ExternalLink/ExternalLinkWidget.esm.js.map +1 -0
  103. package/dist/components/External/ExternalNode/ExternalFactory.esm.js +20 -0
  104. package/dist/components/External/ExternalNode/ExternalFactory.esm.js.map +1 -0
  105. package/dist/components/External/ExternalNode/ExternalModel.esm.js +20 -0
  106. package/dist/components/External/ExternalNode/ExternalModel.esm.js.map +1 -0
  107. package/dist/components/External/ExternalNode/ExternalWidget.esm.js +40 -0
  108. package/dist/components/External/ExternalNode/ExternalWidget.esm.js.map +1 -0
  109. package/dist/components/External/ExternalNode/styles.esm.js +9 -0
  110. package/dist/components/External/ExternalNode/styles.esm.js.map +1 -0
  111. package/dist/components/External/external-node-util.esm.js +12 -0
  112. package/dist/components/External/external-node-util.esm.js.map +1 -0
  113. package/dist/components/Header/Header.esm.js +17 -0
  114. package/dist/components/Header/Header.esm.js.map +1 -0
  115. package/dist/components/MoreVertMenu/MoreVertMenu.esm.js +81 -0
  116. package/dist/components/MoreVertMenu/MoreVertMenu.esm.js.map +1 -0
  117. package/dist/components/ObservationLabel/ObservationLabel.esm.js +102 -0
  118. package/dist/components/ObservationLabel/ObservationLabel.esm.js.map +1 -0
  119. package/dist/components/OverlayLoader/OverlayLayerFactory.esm.js +19 -0
  120. package/dist/components/OverlayLoader/OverlayLayerFactory.esm.js.map +1 -0
  121. package/dist/components/OverlayLoader/OverlayLayerModel.esm.js +15 -0
  122. package/dist/components/OverlayLoader/OverlayLayerModel.esm.js.map +1 -0
  123. package/dist/components/OverlayLoader/OverlayLayerWidget.esm.js +28 -0
  124. package/dist/components/OverlayLoader/OverlayLayerWidget.esm.js.map +1 -0
  125. package/dist/components/Project/AdvancedLink/AdvancedLinkFactory.esm.js +69 -0
  126. package/dist/components/Project/AdvancedLink/AdvancedLinkFactory.esm.js.map +1 -0
  127. package/dist/components/Project/AdvancedLink/AdvancedLinkModel.esm.js +162 -0
  128. package/dist/components/Project/AdvancedLink/AdvancedLinkModel.esm.js.map +1 -0
  129. package/dist/components/Project/AdvancedLink/AdvancedLinkPointWidget.esm.js +45 -0
  130. package/dist/components/Project/AdvancedLink/AdvancedLinkPointWidget.esm.js.map +1 -0
  131. package/dist/components/Project/AdvancedLink/AdvancedLinkSegmentWidget.esm.js +46 -0
  132. package/dist/components/Project/AdvancedLink/AdvancedLinkSegmentWidget.esm.js.map +1 -0
  133. package/dist/components/Project/AdvancedLink/AdvancedLinkWidget.esm.js +149 -0
  134. package/dist/components/Project/AdvancedLink/AdvancedLinkWidget.esm.js.map +1 -0
  135. package/dist/components/Project/ProjectLink/ProjectLinkFactory.esm.js +20 -0
  136. package/dist/components/Project/ProjectLink/ProjectLinkFactory.esm.js.map +1 -0
  137. package/dist/components/Project/ProjectLink/ProjectLinkModel.esm.js +20 -0
  138. package/dist/components/Project/ProjectLink/ProjectLinkModel.esm.js.map +1 -0
  139. package/dist/components/Project/ProjectLink/ProjectLinkWidget.esm.js +94 -0
  140. package/dist/components/Project/ProjectLink/ProjectLinkWidget.esm.js.map +1 -0
  141. package/dist/components/Project/ProjectNode/ProjectFactory.esm.js +20 -0
  142. package/dist/components/Project/ProjectNode/ProjectFactory.esm.js.map +1 -0
  143. package/dist/components/Project/ProjectNode/ProjectHeadWidget/ProjectHeadWidget.esm.js +68 -0
  144. package/dist/components/Project/ProjectNode/ProjectHeadWidget/ProjectHeadWidget.esm.js.map +1 -0
  145. package/dist/components/Project/ProjectNode/ProjectModel.esm.js +56 -0
  146. package/dist/components/Project/ProjectNode/ProjectModel.esm.js.map +1 -0
  147. package/dist/components/Project/ProjectNode/ProjectWidget.esm.js +111 -0
  148. package/dist/components/Project/ProjectNode/ProjectWidget.esm.js.map +1 -0
  149. package/dist/components/Project/ProjectNode/styles.esm.js +66 -0
  150. package/dist/components/Project/ProjectNode/styles.esm.js.map +1 -0
  151. package/dist/components/Project/ProjectPort/ProjectPortFactory.esm.js +17 -0
  152. package/dist/components/Project/ProjectPort/ProjectPortFactory.esm.js.map +1 -0
  153. package/dist/components/Project/ProjectPort/ProjectPortModel.esm.js +18 -0
  154. package/dist/components/Project/ProjectPort/ProjectPortModel.esm.js.map +1 -0
  155. package/dist/components/Project/ProjectPort/ProjectPortWidget.esm.js +26 -0
  156. package/dist/components/Project/ProjectPort/ProjectPortWidget.esm.js.map +1 -0
  157. package/dist/components/Project/ProjectPort/styles.esm.js +38 -0
  158. package/dist/components/Project/ProjectPort/styles.esm.js.map +1 -0
  159. package/dist/components/PromptScreen/PromptScreen.esm.js +30 -0
  160. package/dist/components/PromptScreen/PromptScreen.esm.js.map +1 -0
  161. package/dist/components/SharedLink/SharedLink.esm.js +175 -0
  162. package/dist/components/SharedLink/SharedLink.esm.js.map +1 -0
  163. package/dist/components/SharedNode/SharedNode.esm.js +44 -0
  164. package/dist/components/SharedNode/SharedNode.esm.js.map +1 -0
  165. package/dist/components/TooltipLabel/TooltipLabel.esm.js +22 -0
  166. package/dist/components/TooltipLabel/TooltipLabel.esm.js.map +1 -0
  167. package/dist/diagrams/OrgDiagram.esm.js +176 -0
  168. package/dist/diagrams/OrgDiagram.esm.js.map +1 -0
  169. package/dist/diagrams/ProjectDiagram.esm.js +251 -0
  170. package/dist/diagrams/ProjectDiagram.esm.js.map +1 -0
  171. package/dist/hooks/useActiveLayers.esm.js +27 -0
  172. package/dist/hooks/useActiveLayers.esm.js.map +1 -0
  173. package/dist/index.d.ts +407 -0
  174. package/dist/index.esm.js +4 -0
  175. package/dist/index.esm.js.map +1 -0
  176. package/dist/renderDiagram.esm.js +11 -0
  177. package/dist/renderDiagram.esm.js.map +1 -0
  178. package/dist/resources/Dagre/DagreEngine.esm.js +178 -0
  179. package/dist/resources/Dagre/DagreEngine.esm.js.map +1 -0
  180. package/dist/resources/assets/font/Gilmer-Bold.ttf +0 -0
  181. package/dist/resources/assets/font/Gilmer-Bold.woff +0 -0
  182. package/dist/resources/assets/font/Gilmer-Bold.woff2 +0 -0
  183. package/dist/resources/assets/font/Gilmer-Medium.ttf +0 -0
  184. package/dist/resources/assets/font/Gilmer-Medium.woff +0 -0
  185. package/dist/resources/assets/font/Gilmer-Medium.woff2 +0 -0
  186. package/dist/resources/assets/font/Gilmer-Regular.ttf +0 -0
  187. package/dist/resources/assets/font/Gilmer-Regular.woff +0 -0
  188. package/dist/resources/assets/font/Gilmer-Regular.woff2 +0 -0
  189. package/dist/resources/assets/font/fonts.esm.js +57 -0
  190. package/dist/resources/assets/font/fonts.esm.js.map +1 -0
  191. package/dist/resources/assets/icons/AddCheckIcon.esm.js +22 -0
  192. package/dist/resources/assets/icons/AddCheckIcon.esm.js.map +1 -0
  193. package/dist/resources/assets/icons/AddIcon.esm.js +16 -0
  194. package/dist/resources/assets/icons/AddIcon.esm.js.map +1 -0
  195. package/dist/resources/assets/icons/CodeIcon.esm.js +26 -0
  196. package/dist/resources/assets/icons/CodeIcon.esm.js.map +1 -0
  197. package/dist/resources/assets/icons/ConnectionIcon.esm.js +22 -0
  198. package/dist/resources/assets/icons/ConnectionIcon.esm.js.map +1 -0
  199. package/dist/resources/assets/icons/DatabaseIcon.esm.js +23 -0
  200. package/dist/resources/assets/icons/DatabaseIcon.esm.js.map +1 -0
  201. package/dist/resources/assets/icons/DebugIcon.esm.js +25 -0
  202. package/dist/resources/assets/icons/DebugIcon.esm.js.map +1 -0
  203. package/dist/resources/assets/icons/DiagramIcon.esm.js +22 -0
  204. package/dist/resources/assets/icons/DiagramIcon.esm.js.map +1 -0
  205. package/dist/resources/assets/icons/DiffIcon.esm.js +22 -0
  206. package/dist/resources/assets/icons/DiffIcon.esm.js.map +1 -0
  207. package/dist/resources/assets/icons/EventIcon.esm.js +22 -0
  208. package/dist/resources/assets/icons/EventIcon.esm.js.map +1 -0
  209. package/dist/resources/assets/icons/ExternalConsumerIcon.esm.js +36 -0
  210. package/dist/resources/assets/icons/ExternalConsumerIcon.esm.js.map +1 -0
  211. package/dist/resources/assets/icons/FitScreenIcon.esm.js +22 -0
  212. package/dist/resources/assets/icons/FitScreenIcon.esm.js.map +1 -0
  213. package/dist/resources/assets/icons/FullScreenIcon.esm.js +22 -0
  214. package/dist/resources/assets/icons/FullScreenIcon.esm.js.map +1 -0
  215. package/dist/resources/assets/icons/GatewayIcon.esm.js +22 -0
  216. package/dist/resources/assets/icons/GatewayIcon.esm.js.map +1 -0
  217. package/dist/resources/assets/icons/InfoIcon.esm.js +22 -0
  218. package/dist/resources/assets/icons/InfoIcon.esm.js.map +1 -0
  219. package/dist/resources/assets/icons/LayersIcon.esm.js +28 -0
  220. package/dist/resources/assets/icons/LayersIcon.esm.js.map +1 -0
  221. package/dist/resources/assets/icons/ManualTaskIcon.esm.js +22 -0
  222. package/dist/resources/assets/icons/ManualTaskIcon.esm.js.map +1 -0
  223. package/dist/resources/assets/icons/MoreVertIcon.esm.js +18 -0
  224. package/dist/resources/assets/icons/MoreVertIcon.esm.js.map +1 -0
  225. package/dist/resources/assets/icons/ObservationIcon.esm.js +22 -0
  226. package/dist/resources/assets/icons/ObservationIcon.esm.js.map +1 -0
  227. package/dist/resources/assets/icons/ProxyIcon.esm.js +22 -0
  228. package/dist/resources/assets/icons/ProxyIcon.esm.js.map +1 -0
  229. package/dist/resources/assets/icons/RefreshIcon.esm.js +22 -0
  230. package/dist/resources/assets/icons/RefreshIcon.esm.js.map +1 -0
  231. package/dist/resources/assets/icons/RemoveIcon.esm.js +16 -0
  232. package/dist/resources/assets/icons/RemoveIcon.esm.js.map +1 -0
  233. package/dist/resources/assets/icons/ScheduledTaskIcon.esm.js +22 -0
  234. package/dist/resources/assets/icons/ScheduledTaskIcon.esm.js.map +1 -0
  235. package/dist/resources/assets/icons/ServiceIcon.esm.js +24 -0
  236. package/dist/resources/assets/icons/ServiceIcon.esm.js.map +1 -0
  237. package/dist/resources/assets/icons/SettingsIcon.esm.js +38 -0
  238. package/dist/resources/assets/icons/SettingsIcon.esm.js.map +1 -0
  239. package/dist/resources/assets/icons/WarningIcon.esm.js +32 -0
  240. package/dist/resources/assets/icons/WarningIcon.esm.js.map +1 -0
  241. package/dist/resources/assets/icons/WebAppIcon.esm.js +45 -0
  242. package/dist/resources/assets/icons/WebAppIcon.esm.js.map +1 -0
  243. package/dist/resources/assets/icons/WebhookIcon.esm.js +22 -0
  244. package/dist/resources/assets/icons/WebhookIcon.esm.js.map +1 -0
  245. package/dist/resources/assets/icons/index.esm.js +38 -0
  246. package/dist/resources/assets/icons/index.esm.js.map +1 -0
  247. package/dist/resources/assets/icons/lang/BallerinaIcon.esm.js +24 -0
  248. package/dist/resources/assets/icons/lang/BallerinaIcon.esm.js.map +1 -0
  249. package/dist/resources/assets/icons/lang/DockerIcon.esm.js +24 -0
  250. package/dist/resources/assets/icons/lang/DockerIcon.esm.js.map +1 -0
  251. package/dist/resources/assets/icons/lang/GoIcon.esm.js +24 -0
  252. package/dist/resources/assets/icons/lang/GoIcon.esm.js.map +1 -0
  253. package/dist/resources/assets/icons/lang/JavaIcon.esm.js +54 -0
  254. package/dist/resources/assets/icons/lang/JavaIcon.esm.js.map +1 -0
  255. package/dist/resources/assets/icons/lang/MIIcon.esm.js +75 -0
  256. package/dist/resources/assets/icons/lang/MIIcon.esm.js.map +1 -0
  257. package/dist/resources/assets/icons/lang/NodeJsIcon.esm.js +33 -0
  258. package/dist/resources/assets/icons/lang/NodeJsIcon.esm.js.map +1 -0
  259. package/dist/resources/assets/icons/lang/PhpIcon.esm.js +74 -0
  260. package/dist/resources/assets/icons/lang/PhpIcon.esm.js.map +1 -0
  261. package/dist/resources/assets/icons/lang/PythonIcon.esm.js +67 -0
  262. package/dist/resources/assets/icons/lang/PythonIcon.esm.js.map +1 -0
  263. package/dist/resources/assets/icons/lang/RubyIcon.esm.js +26 -0
  264. package/dist/resources/assets/icons/lang/RubyIcon.esm.js.map +1 -0
  265. package/dist/resources/assets/icons/lang/RustIcon.esm.js +46 -0
  266. package/dist/resources/assets/icons/lang/RustIcon.esm.js.map +1 -0
  267. package/dist/resources/constants.esm.js +44 -0
  268. package/dist/resources/constants.esm.js.map +1 -0
  269. package/dist/theme/CellDiagramThemeProvider.esm.js +37 -0
  270. package/dist/theme/CellDiagramThemeProvider.esm.js.map +1 -0
  271. package/dist/theme/ThemeContext.esm.js +14 -0
  272. package/dist/theme/ThemeContext.esm.js.map +1 -0
  273. package/dist/theme/colors.esm.js +50 -0
  274. package/dist/theme/colors.esm.js.map +1 -0
  275. package/dist/types.esm.js +30 -0
  276. package/dist/types.esm.js.map +1 -0
  277. package/dist/utils/CanvasStyles.esm.js +67 -0
  278. package/dist/utils/CanvasStyles.esm.js.map +1 -0
  279. package/dist/utils/diagramUtils.esm.js +151 -0
  280. package/dist/utils/diagramUtils.esm.js.map +1 -0
  281. package/dist/utils/orgUtils.esm.js +119 -0
  282. package/dist/utils/orgUtils.esm.js.map +1 -0
  283. package/dist/utils/projectUtils.esm.js +969 -0
  284. package/dist/utils/projectUtils.esm.js.map +1 -0
  285. package/package.json +86 -0
@@ -0,0 +1,166 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { useContext, useState, useEffect } from 'react';
3
+ import { PortModelAlignment } from '@projectstorm/react-diagrams';
4
+ import { CellBounds } from './CellModel.esm.js';
5
+ import { CellNode, TopPortCircle, TopIconWrapper, LeftPortCircle, IconWrapper, RightPortsWrapper, DotWrapper, Dot, BottomPortsWrapper } from './styles.esm.js';
6
+ import { CellPortWidget } from '../CellPort/CellPortWidget.esm.js';
7
+ import { getCellPortId, getRoundedOctagonSVG } from '../cell-util.esm.js';
8
+ import { CELL_LINE_PREVIEW_WIDTH, CELL_LINE_MIN_WIDTH, ICON_SCALE, MAIN_CELL } from '../../../resources/constants.esm.js';
9
+ import { GatewayIcon } from '../../../resources/assets/icons/GatewayIcon.esm.js';
10
+ import { DiagramContext } from '../../DiagramContext/DiagramContext.esm.js';
11
+
12
+ const generateRoundedOctagonSVG = (diagramHeight, radiusMultiplier) => {
13
+ const sideLength = diagramHeight * 4.14 / 10;
14
+ const { width, height, path } = getRoundedOctagonSVG(
15
+ sideLength,
16
+ sideLength * radiusMultiplier
17
+ );
18
+ return /* @__PURE__ */ jsx("svg", { width, height, id: MAIN_CELL, children: /* @__PURE__ */ jsx("g", { transform: `rotate(${45 / 2}, ${width / 2}, ${height / 2})`, children: /* @__PURE__ */ jsx("path", { d: path }) }) });
19
+ };
20
+ function CellWidget(props) {
21
+ const { node, engine } = props;
22
+ const { zoomLevel, previewMode } = useContext(DiagramContext);
23
+ const [cellHeight, setCellHeight] = useState(node.width);
24
+ useEffect(() => {
25
+ resizeCellHeight();
26
+ }, [node]);
27
+ useEffect(() => {
28
+ resizeCellHeight();
29
+ }, [node.width]);
30
+ const resizeCellHeight = () => {
31
+ const conCount = node.connectorNodes?.length || 0;
32
+ const connectorRowWidth = (conCount * 100 + 40) * 100 / 40;
33
+ setCellHeight(Math.max(connectorRowWidth, node.width));
34
+ engine.repaintCanvas();
35
+ };
36
+ const strokeWidth = previewMode ? Math.max(cellHeight / 200, CELL_LINE_PREVIEW_WIDTH) : node.getDynamicLineWidth(zoomLevel, CELL_LINE_MIN_WIDTH);
37
+ const transform = previewMode ? `scale(${ICON_SCALE.PREVIEW})` : "none";
38
+ return /* @__PURE__ */ jsxs(CellNode, { height: cellHeight, borderWidth: strokeWidth, children: [
39
+ generateRoundedOctagonSVG(cellHeight, 0.08),
40
+ /* @__PURE__ */ jsxs(TopPortCircle, { show: Boolean(node.gateways?.internet), children: [
41
+ /* @__PURE__ */ jsx(TopIconWrapper, { children: /* @__PURE__ */ jsx(GatewayIcon, { styles: { transform } }) }),
42
+ /* @__PURE__ */ jsx(
43
+ CellPortWidget,
44
+ {
45
+ port: node.getPort(
46
+ getCellPortId(
47
+ node.getID(),
48
+ CellBounds.NorthBound,
49
+ PortModelAlignment.TOP
50
+ )
51
+ ),
52
+ engine
53
+ }
54
+ ),
55
+ /* @__PURE__ */ jsx(
56
+ CellPortWidget,
57
+ {
58
+ port: node.getPort(
59
+ getCellPortId(
60
+ node.getID(),
61
+ CellBounds.NorthBound,
62
+ PortModelAlignment.BOTTOM
63
+ )
64
+ ),
65
+ engine
66
+ }
67
+ )
68
+ ] }),
69
+ /* @__PURE__ */ jsxs(LeftPortCircle, { show: Boolean(node.gateways?.intranet), children: [
70
+ /* @__PURE__ */ jsx(IconWrapper, { children: /* @__PURE__ */ jsx(GatewayIcon, { styles: { transform } }) }),
71
+ /* @__PURE__ */ jsx(
72
+ CellPortWidget,
73
+ {
74
+ port: node.getPort(
75
+ getCellPortId(
76
+ node.getID(),
77
+ CellBounds.WestBound,
78
+ PortModelAlignment.LEFT
79
+ )
80
+ ),
81
+ engine
82
+ }
83
+ ),
84
+ /* @__PURE__ */ jsx(
85
+ CellPortWidget,
86
+ {
87
+ port: node.getPort(
88
+ getCellPortId(
89
+ node.getID(),
90
+ CellBounds.WestBound,
91
+ PortModelAlignment.RIGHT
92
+ )
93
+ ),
94
+ engine
95
+ }
96
+ )
97
+ ] }),
98
+ /* @__PURE__ */ jsx(RightPortsWrapper, { children: node.connectionNodes?.map((connectionNode) => {
99
+ return /* @__PURE__ */ jsx(DotWrapper, { children: /* @__PURE__ */ jsxs(Dot, { children: [
100
+ /* @__PURE__ */ jsx(
101
+ CellPortWidget,
102
+ {
103
+ port: node.getPort(
104
+ getCellPortId(
105
+ node.getID(),
106
+ CellBounds.EastBound,
107
+ PortModelAlignment.LEFT,
108
+ connectionNode.connection.id
109
+ )
110
+ ),
111
+ engine
112
+ }
113
+ ),
114
+ /* @__PURE__ */ jsx(
115
+ CellPortWidget,
116
+ {
117
+ port: node.getPort(
118
+ getCellPortId(
119
+ node.getID(),
120
+ CellBounds.EastBound,
121
+ PortModelAlignment.RIGHT,
122
+ connectionNode.connection.id
123
+ )
124
+ ),
125
+ engine
126
+ }
127
+ )
128
+ ] }) }, connectionNode.getID());
129
+ }) }),
130
+ /* @__PURE__ */ jsx(BottomPortsWrapper, { children: node.connectorNodes?.map((connectorNode) => {
131
+ return /* @__PURE__ */ jsx(DotWrapper, { children: /* @__PURE__ */ jsxs(Dot, { children: [
132
+ /* @__PURE__ */ jsx(
133
+ CellPortWidget,
134
+ {
135
+ port: node.getPort(
136
+ getCellPortId(
137
+ node.getID(),
138
+ CellBounds.SouthBound,
139
+ PortModelAlignment.TOP,
140
+ connectorNode.connection.id
141
+ )
142
+ ),
143
+ engine
144
+ }
145
+ ),
146
+ /* @__PURE__ */ jsx(
147
+ CellPortWidget,
148
+ {
149
+ port: node.getPort(
150
+ getCellPortId(
151
+ node.getID(),
152
+ CellBounds.SouthBound,
153
+ PortModelAlignment.BOTTOM,
154
+ connectorNode.connection.id
155
+ )
156
+ ),
157
+ engine
158
+ }
159
+ )
160
+ ] }) }, connectorNode.getID());
161
+ }) })
162
+ ] });
163
+ }
164
+
165
+ export { CellWidget, generateRoundedOctagonSVG };
166
+ //# sourceMappingURL=CellWidget.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellWidget.esm.js","sources":["../../../../src/components/Cell/CellNode/CellWidget.tsx"],"sourcesContent":["import { useContext, useEffect, useState } from 'react';\nimport {\n DiagramEngine,\n PortModelAlignment,\n} from '@projectstorm/react-diagrams';\nimport { CellBounds, CellModel } from './CellModel';\nimport {\n CellNode,\n TopPortCircle,\n LeftPortCircle,\n BottomPortsWrapper,\n DotWrapper,\n Dot,\n IconWrapper,\n TopIconWrapper,\n RightPortsWrapper,\n} from './styles';\nimport { CellPortWidget } from '../CellPort/CellPortWidget';\nimport { CellPortModel } from '../CellPort/CellPortModel';\nimport { getCellPortId, getRoundedOctagonSVG } from '../cell-util';\nimport {\n CELL_LINE_MIN_WIDTH,\n CELL_LINE_PREVIEW_WIDTH,\n ICON_SCALE,\n MAIN_CELL,\n} from '../../../resources';\nimport { GatewayIcon } from '../../../resources/assets/icons/GatewayIcon';\nimport { DiagramContext } from '../../DiagramContext/DiagramContext';\n\nexport const generateRoundedOctagonSVG = (\n diagramHeight: number,\n radiusMultiplier: number,\n) => {\n const sideLength = (diagramHeight * 4.14) / 10;\n const { width, height, path } = getRoundedOctagonSVG(\n sideLength,\n sideLength * radiusMultiplier,\n );\n return (\n <svg width={width} height={height} id={MAIN_CELL}>\n <g transform={`rotate(${45 / 2}, ${width / 2}, ${height / 2})`}>\n <path d={path} />\n </g>\n </svg>\n );\n};\n\ninterface CellWidgetProps {\n node: CellModel;\n engine: DiagramEngine;\n}\n\nexport function CellWidget(props: CellWidgetProps) {\n const { node, engine } = props;\n\n const { zoomLevel, previewMode } = useContext(DiagramContext);\n const [cellHeight, setCellHeight] = useState<number>(node.width);\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n resizeCellHeight();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node]);\n\n useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n resizeCellHeight();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [node.width]);\n\n const resizeCellHeight = () => {\n const conCount = node.connectorNodes?.length || 0;\n const connectorRowWidth = ((conCount * 100 + 40) * 100) / 40;\n setCellHeight(Math.max(connectorRowWidth, node.width));\n engine.repaintCanvas();\n };\n\n const strokeWidth = previewMode\n ? Math.max(cellHeight / 200, CELL_LINE_PREVIEW_WIDTH)\n : node.getDynamicLineWidth(zoomLevel, CELL_LINE_MIN_WIDTH);\n\n const transform = previewMode ? `scale(${ICON_SCALE.PREVIEW})` : 'none';\n\n return (\n <CellNode height={cellHeight} borderWidth={strokeWidth}>\n {generateRoundedOctagonSVG(cellHeight, 0.08)}\n\n <TopPortCircle show={Boolean(node.gateways?.internet)}>\n <TopIconWrapper>\n <GatewayIcon styles={{ transform }} />\n </TopIconWrapper>\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.NorthBound,\n PortModelAlignment.TOP,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.NorthBound,\n PortModelAlignment.BOTTOM,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n </TopPortCircle>\n\n <LeftPortCircle show={Boolean(node.gateways?.intranet)}>\n <IconWrapper>\n <GatewayIcon styles={{ transform }} />\n </IconWrapper>\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.WestBound,\n PortModelAlignment.LEFT,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.WestBound,\n PortModelAlignment.RIGHT,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n </LeftPortCircle>\n\n <RightPortsWrapper>\n {node.connectionNodes?.map(connectionNode => {\n return (\n <DotWrapper key={connectionNode.getID()}>\n <Dot>\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.EastBound,\n PortModelAlignment.LEFT,\n connectionNode.connection.id,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.EastBound,\n PortModelAlignment.RIGHT,\n connectionNode.connection.id,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n </Dot>\n </DotWrapper>\n );\n })}\n </RightPortsWrapper>\n <BottomPortsWrapper>\n {node.connectorNodes?.map(connectorNode => {\n return (\n <DotWrapper key={connectorNode.getID()}>\n <Dot>\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.SouthBound,\n PortModelAlignment.TOP,\n connectorNode.connection.id,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getCellPortId(\n node.getID(),\n CellBounds.SouthBound,\n PortModelAlignment.BOTTOM,\n connectorNode.connection.id,\n ),\n ) as CellPortModel\n }\n engine={engine}\n />\n </Dot>\n </DotWrapper>\n );\n })}\n </BottomPortsWrapper>\n </CellNode>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;AA6BO,MAAM,yBAAA,GAA4B,CACvC,aAAA,EACA,gBAAA,KACG;AACH,EAAA,MAAM,UAAA,GAAc,gBAAgB,IAAA,GAAQ,EAAA;AAC5C,EAAA,MAAM,EAAE,KAAA,EAAO,MAAA,EAAQ,IAAA,EAAK,GAAI,oBAAA;AAAA,IAC9B,UAAA;AAAA,IACA,UAAA,GAAa;AAAA,GACf;AACA,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,KAAA,EAAc,MAAA,EAAgB,EAAA,EAAI,WACrC,QAAA,kBAAA,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAW,CAAA,OAAA,EAAU,EAAA,GAAK,CAAC,KAAK,KAAA,GAAQ,CAAC,CAAA,EAAA,EAAK,MAAA,GAAS,CAAC,CAAA,CAAA,CAAA,EACzD,8BAAC,MAAA,EAAA,EAAK,CAAA,EAAG,IAAA,EAAM,CAAA,EACjB,CAAA,EACF,CAAA;AAEJ;AAOO,SAAS,WAAW,KAAA,EAAwB;AACjD,EAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAO,GAAI,KAAA;AAEzB,EAAA,MAAM,EAAE,SAAA,EAAW,WAAA,EAAY,GAAI,WAAW,cAAc,CAAA;AAC5D,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,QAAA,CAAiB,KAAK,KAAK,CAAA;AAE/D,EAAA,SAAA,CAAU,MAAM;AAEd,IAAA,gBAAA,EAAiB;AAAA,EAEnB,CAAA,EAAG,CAAC,IAAI,CAAC,CAAA;AAET,EAAA,SAAA,CAAU,MAAM;AAEd,IAAA,gBAAA,EAAiB;AAAA,EAEnB,CAAA,EAAG,CAAC,IAAA,CAAK,KAAK,CAAC,CAAA;AAEf,EAAA,MAAM,mBAAmB,MAAM;AAC7B,IAAA,MAAM,QAAA,GAAW,IAAA,CAAK,cAAA,EAAgB,MAAA,IAAU,CAAA;AAChD,IAAA,MAAM,iBAAA,GAAA,CAAsB,QAAA,GAAW,GAAA,GAAM,EAAA,IAAM,GAAA,GAAO,EAAA;AAC1D,IAAA,aAAA,CAAc,IAAA,CAAK,GAAA,CAAI,iBAAA,EAAmB,IAAA,CAAK,KAAK,CAAC,CAAA;AACrD,IAAA,MAAA,CAAO,aAAA,EAAc;AAAA,EACvB,CAAA;AAEA,EAAA,MAAM,WAAA,GAAc,WAAA,GAChB,IAAA,CAAK,GAAA,CAAI,UAAA,GAAa,GAAA,EAAK,uBAAuB,CAAA,GAClD,IAAA,CAAK,mBAAA,CAAoB,SAAA,EAAW,mBAAmB,CAAA;AAE3D,EAAA,MAAM,SAAA,GAAY,WAAA,GAAc,CAAA,MAAA,EAAS,UAAA,CAAW,OAAO,CAAA,CAAA,CAAA,GAAM,MAAA;AAEjE,EAAA,uBACE,IAAA,CAAC,QAAA,EAAA,EAAS,MAAA,EAAQ,UAAA,EAAY,aAAa,WAAA,EACxC,QAAA,EAAA;AAAA,IAAA,yBAAA,CAA0B,YAAY,IAAI,CAAA;AAAA,yBAE1C,aAAA,EAAA,EAAc,IAAA,EAAM,QAAQ,IAAA,CAAK,QAAA,EAAU,QAAQ,CAAA,EAClD,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,kBACC,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,QAAQ,EAAE,SAAA,IAAa,CAAA,EACtC,CAAA;AAAA,sBACA,GAAA;AAAA,QAAC,cAAA;AAAA,QAAA;AAAA,UACC,MACE,IAAA,CAAK,OAAA;AAAA,YACH,aAAA;AAAA,cACE,KAAK,KAAA,EAAM;AAAA,cACX,UAAA,CAAW,UAAA;AAAA,cACX,kBAAA,CAAmB;AAAA;AACrB,WACF;AAAA,UAEF;AAAA;AAAA,OACF;AAAA,sBACA,GAAA;AAAA,QAAC,cAAA;AAAA,QAAA;AAAA,UACC,MACE,IAAA,CAAK,OAAA;AAAA,YACH,aAAA;AAAA,cACE,KAAK,KAAA,EAAM;AAAA,cACX,UAAA,CAAW,UAAA;AAAA,cACX,kBAAA,CAAmB;AAAA;AACrB,WACF;AAAA,UAEF;AAAA;AAAA;AACF,KAAA,EACF,CAAA;AAAA,yBAEC,cAAA,EAAA,EAAe,IAAA,EAAM,QAAQ,IAAA,CAAK,QAAA,EAAU,QAAQ,CAAA,EACnD,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,eACC,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,QAAQ,EAAE,SAAA,IAAa,CAAA,EACtC,CAAA;AAAA,sBACA,GAAA;AAAA,QAAC,cAAA;AAAA,QAAA;AAAA,UACC,MACE,IAAA,CAAK,OAAA;AAAA,YACH,aAAA;AAAA,cACE,KAAK,KAAA,EAAM;AAAA,cACX,UAAA,CAAW,SAAA;AAAA,cACX,kBAAA,CAAmB;AAAA;AACrB,WACF;AAAA,UAEF;AAAA;AAAA,OACF;AAAA,sBACA,GAAA;AAAA,QAAC,cAAA;AAAA,QAAA;AAAA,UACC,MACE,IAAA,CAAK,OAAA;AAAA,YACH,aAAA;AAAA,cACE,KAAK,KAAA,EAAM;AAAA,cACX,UAAA,CAAW,SAAA;AAAA,cACX,kBAAA,CAAmB;AAAA;AACrB,WACF;AAAA,UAEF;AAAA;AAAA;AACF,KAAA,EACF,CAAA;AAAA,oBAEA,GAAA,CAAC,iBAAA,EAAA,EACE,QAAA,EAAA,IAAA,CAAK,eAAA,EAAiB,IAAI,CAAA,cAAA,KAAkB;AAC3C,MAAA,uBACE,GAAA,CAAC,UAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,GAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MACE,IAAA,CAAK,OAAA;AAAA,cACH,aAAA;AAAA,gBACE,KAAK,KAAA,EAAM;AAAA,gBACX,UAAA,CAAW,SAAA;AAAA,gBACX,kBAAA,CAAmB,IAAA;AAAA,gBACnB,eAAe,UAAA,CAAW;AAAA;AAC5B,aACF;AAAA,YAEF;AAAA;AAAA,SACF;AAAA,wBACA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MACE,IAAA,CAAK,OAAA;AAAA,cACH,aAAA;AAAA,gBACE,KAAK,KAAA,EAAM;AAAA,gBACX,UAAA,CAAW,SAAA;AAAA,gBACX,kBAAA,CAAmB,KAAA;AAAA,gBACnB,eAAe,UAAA,CAAW;AAAA;AAC5B,aACF;AAAA,YAEF;AAAA;AAAA;AACF,OAAA,EACF,CAAA,EAAA,EA5Be,cAAA,CAAe,KAAA,EA6BhC,CAAA;AAAA,IAEJ,CAAC,CAAA,EACH,CAAA;AAAA,oBACA,GAAA,CAAC,kBAAA,EAAA,EACE,QAAA,EAAA,IAAA,CAAK,cAAA,EAAgB,IAAI,CAAA,aAAA,KAAiB;AACzC,MAAA,uBACE,GAAA,CAAC,UAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,GAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MACE,IAAA,CAAK,OAAA;AAAA,cACH,aAAA;AAAA,gBACE,KAAK,KAAA,EAAM;AAAA,gBACX,UAAA,CAAW,UAAA;AAAA,gBACX,kBAAA,CAAmB,GAAA;AAAA,gBACnB,cAAc,UAAA,CAAW;AAAA;AAC3B,aACF;AAAA,YAEF;AAAA;AAAA,SACF;AAAA,wBACA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MACE,IAAA,CAAK,OAAA;AAAA,cACH,aAAA;AAAA,gBACE,KAAK,KAAA,EAAM;AAAA,gBACX,UAAA,CAAW,UAAA;AAAA,gBACX,kBAAA,CAAmB,MAAA;AAAA,gBACnB,cAAc,UAAA,CAAW;AAAA;AAC3B,aACF;AAAA,YAEF;AAAA;AAAA;AACF,OAAA,EACF,CAAA,EAAA,EA5Be,aAAA,CAAc,KAAA,EA6B/B,CAAA;AAAA,IAEJ,CAAC,CAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -0,0 +1,149 @@
1
+ import styled from '@emotion/styled';
2
+ import { CIRCLE_WIDTH, CELL_LINE_MIN_WIDTH, DOT_WIDTH } from '../../../resources/constants.esm.js';
3
+ import 'react/jsx-runtime';
4
+
5
+ const CellNode = styled.div`
6
+ width: ${(props) => props.height}px;
7
+ height: ${(props) => props.height}px;
8
+
9
+ display: flex;
10
+ flex-direction: column;
11
+ align-items: center;
12
+ justify-content: center;
13
+
14
+ text-align: center;
15
+ position: relative;
16
+ overflow: visible;
17
+ pointer-events: none;
18
+
19
+ #mainCell svg {
20
+ width: 100%;
21
+ height: 100%;
22
+ position: absolute;
23
+ top: 0;
24
+ left: 0;
25
+ pointer-events: none;
26
+ }
27
+
28
+ #mainCell path {
29
+ stroke: ${({ theme }) => theme.colors.OUTLINE};
30
+ stroke-width: ${(props) => props.borderWidth};
31
+ fill: none;
32
+ pointer-events: none;
33
+ }
34
+ `;
35
+ const Circle = styled.div`
36
+ visibility: ${(props) => props.show ? "unset" : "hidden"};
37
+ width: ${CIRCLE_WIDTH}px;
38
+ height: ${CIRCLE_WIDTH}px;
39
+ border-radius: 50%;
40
+ border: ${CELL_LINE_MIN_WIDTH}px solid ${({ theme }) => theme.colors.OUTLINE};
41
+ display: flex;
42
+ flex-direction: column;
43
+ justify-content: center;
44
+ align-items: center;
45
+ background-color: ${({ theme }) => theme.colors.SURFACE};
46
+ `;
47
+ const Dot = styled.div`
48
+ width: ${DOT_WIDTH}px;
49
+ height: ${DOT_WIDTH}px;
50
+ border-radius: 50%;
51
+ border: ${CELL_LINE_MIN_WIDTH}px solid ${({ theme }) => theme.colors.OUTLINE};
52
+ display: flex;
53
+ flex-direction: column;
54
+ justify-content: center;
55
+ align-items: center;
56
+ background-color: ${({ theme }) => theme.colors.SURFACE_DIM};
57
+ `;
58
+ const TopPortCircle = styled(Circle)`
59
+ position: absolute;
60
+ top: -${CIRCLE_WIDTH / 2}px;
61
+ left: 50% - ${CIRCLE_WIDTH / 2}px;
62
+ `;
63
+ const LeftPortCircle = styled(Circle)`
64
+ position: absolute;
65
+ top: 50% - ${CIRCLE_WIDTH / 2}px;
66
+ left: -${CIRCLE_WIDTH / 2}px;
67
+ `;
68
+ styled(Dot)`
69
+ position: absolute;
70
+ top: 50% - ${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;
71
+ right: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;
72
+ `;
73
+ const BottomPortsWrapper = styled.div`
74
+ position: absolute;
75
+ bottom: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;
76
+ display: flex;
77
+ flex-direction: row;
78
+ justify-content: center;
79
+ gap: ${CIRCLE_WIDTH}px;
80
+ `;
81
+ const RightPortsWrapper = styled.div`
82
+ position: absolute;
83
+ right: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;
84
+ display: flex;
85
+ flex-direction: column;
86
+ align-items: center;
87
+ gap: ${CIRCLE_WIDTH}px;
88
+ `;
89
+ const DotWrapper = styled.div`
90
+ display: flex;
91
+ flex-direction: column;
92
+ align-items: center;
93
+ `;
94
+ styled.div`
95
+ margin-top: 10px;
96
+ `;
97
+ const PortLabel = styled.div`
98
+ position: absolute;
99
+ display: flex;
100
+ flex-direction: column;
101
+ align-items: flex-start;
102
+ font-family: 'GilmerMedium';
103
+ color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};
104
+ font-size: 20px;
105
+ span {
106
+ text-align: left;
107
+ width: max-content;
108
+ }
109
+ `;
110
+ styled(PortLabel)`
111
+ top: -24px;
112
+ right: -116px;
113
+ `;
114
+ styled(PortLabel)`
115
+ top: -24px;
116
+ left: -116px;
117
+ align-items: flex-end;
118
+ span {
119
+ text-align: right;
120
+ }
121
+ `;
122
+ styled(PortLabel)`
123
+ top: -32px;
124
+ right: -116px;
125
+ `;
126
+ styled(PortLabel)`
127
+ bottom: -36px;
128
+ left: -132px;
129
+ align-items: flex-end;
130
+ span {
131
+ text-align: right;
132
+ }
133
+ `;
134
+ const IconWrapper = styled.div`
135
+ height: 32px;
136
+ width: 32px;
137
+ color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};
138
+ font-size: 28px;
139
+ `;
140
+ const TopIconWrapper = styled.div`
141
+ height: 32px;
142
+ width: 32px;
143
+ color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};
144
+ font-size: 28px;
145
+ transform: rotate(90deg);
146
+ `;
147
+
148
+ export { BottomPortsWrapper, CellNode, Circle, Dot, DotWrapper, IconWrapper, LeftPortCircle, PortLabel, RightPortsWrapper, TopIconWrapper, TopPortCircle };
149
+ //# sourceMappingURL=styles.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.esm.js","sources":["../../../../src/components/Cell/CellNode/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n CIRCLE_WIDTH,\n DOT_WIDTH,\n CELL_LINE_MIN_WIDTH,\n} from '../../../resources';\n\ninterface StyleProps {\n isSelected?: boolean;\n isClickable?: boolean;\n isCollapsed?: boolean;\n isFocused?: boolean;\n height?: number;\n borderWidth: number;\n}\n\nexport const CellNode = styled.div<StyleProps>`\n width: ${(props: StyleProps) => props.height}px;\n height: ${(props: StyleProps) => props.height}px;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n text-align: center;\n position: relative;\n overflow: visible;\n pointer-events: none;\n\n #mainCell svg {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n }\n\n #mainCell path {\n stroke: ${({ theme }) => theme.colors.OUTLINE};\n stroke-width: ${(props: StyleProps) => props.borderWidth};\n fill: none;\n pointer-events: none;\n }\n`;\n\ninterface ElementProps {\n show: boolean;\n}\n\nexport const Circle = styled.div<ElementProps>`\n visibility: ${(props: ElementProps) => (props.show ? 'unset' : 'hidden')};\n width: ${CIRCLE_WIDTH}px;\n height: ${CIRCLE_WIDTH}px;\n border-radius: 50%;\n border: ${CELL_LINE_MIN_WIDTH}px solid ${({ theme }) => theme.colors.OUTLINE};\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: ${({ theme }) => theme.colors.SURFACE};\n`;\n\nexport const Dot = styled.div<any>`\n width: ${DOT_WIDTH}px;\n height: ${DOT_WIDTH}px;\n border-radius: 50%;\n border: ${CELL_LINE_MIN_WIDTH}px solid ${({ theme }) => theme.colors.OUTLINE};\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: ${({ theme }) => theme.colors.SURFACE_DIM};\n`;\n\nexport const TopPortCircle: React.FC<any> = styled(Circle)`\n position: absolute;\n top: -${CIRCLE_WIDTH / 2}px;\n left: 50% - ${CIRCLE_WIDTH / 2}px;\n`;\n\nexport const LeftPortCircle: React.FC<any> = styled(Circle)`\n position: absolute;\n top: 50% - ${CIRCLE_WIDTH / 2}px;\n left: -${CIRCLE_WIDTH / 2}px;\n`;\n\nexport const RightPortCircle: React.FC<any> = styled(Dot)`\n position: absolute;\n top: 50% - ${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;\n right: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;\n`;\n\nexport const BottomPortsWrapper: React.FC<any> = styled.div`\n position: absolute;\n bottom: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;\n display: flex;\n flex-direction: row;\n justify-content: center;\n gap: ${CIRCLE_WIDTH}px;\n`;\n\nexport const RightPortsWrapper: React.FC<any> = styled.div`\n position: absolute;\n right: -${DOT_WIDTH / 2 + CELL_LINE_MIN_WIDTH}px;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: ${CIRCLE_WIDTH}px;\n`;\n\nexport const DotWrapper: React.FC<any> = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n\nexport const Label: React.FC<any> = styled.div`\n margin-top: 10px;\n`;\n\nexport const PortLabel: React.FC<any> = styled.div`\n position: absolute;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n font-family: 'GilmerMedium';\n color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};\n font-size: 20px;\n span {\n text-align: left;\n width: max-content;\n }\n`;\n\nexport const TopPortLabel: React.FC<any> = styled(PortLabel)`\n top: -24px;\n right: -116px;\n`;\n\nexport const LeftPortLabel: React.FC<any> = styled(PortLabel)`\n top: -24px;\n left: -116px;\n align-items: flex-end;\n span {\n text-align: right;\n }\n`;\n\nexport const RightPortLabel: React.FC<any> = styled(PortLabel)`\n top: -32px;\n right: -116px;\n`;\n\nexport const BottomPortLabel: React.FC<any> = styled(PortLabel)`\n bottom: -36px;\n left: -132px;\n align-items: flex-end;\n span {\n text-align: right;\n }\n`;\n\nexport const IconWrapper: React.FC<any> = styled.div`\n height: 32px;\n width: 32px;\n color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};\n font-size: 28px;\n`;\n\nexport const TopIconWrapper: React.FC<any> = styled.div`\n height: 32px;\n width: 32px;\n color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};\n font-size: 28px;\n transform: rotate(90deg);\n`;\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { AbstractModelFactory } from '@projectstorm/react-canvas-core';
2
+ import { CellPortModel } from './CellPortModel.esm.js';
3
+
4
+ class CellPortFactory extends AbstractModelFactory {
5
+ constructor() {
6
+ super("cellPort");
7
+ }
8
+ generateModel(event) {
9
+ return new CellPortModel(
10
+ event.initialConfig.id,
11
+ event.initialConfig.portType
12
+ );
13
+ }
14
+ }
15
+
16
+ export { CellPortFactory };
17
+ //# sourceMappingURL=CellPortFactory.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellPortFactory.esm.js","sources":["../../../../src/components/Cell/CellPort/CellPortFactory.tsx"],"sourcesContent":["import { DiagramEngine, PortModel } from '@projectstorm/react-diagrams';\nimport { AbstractModelFactory } from '@projectstorm/react-canvas-core';\nimport { CellPortModel } from './CellPortModel';\n\nexport class CellPortFactory extends AbstractModelFactory<\n PortModel,\n DiagramEngine\n> {\n constructor() {\n super('cellPort');\n }\n\n generateModel(event: { initialConfig: any }): CellPortModel {\n return new CellPortModel(\n event.initialConfig.id,\n event.initialConfig.portType,\n );\n }\n}\n"],"names":[],"mappings":";;;AAIO,MAAM,wBAAwB,oBAAA,CAGnC;AAAA,EACA,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,UAAU,CAAA;AAAA,EAClB;AAAA,EAEA,cAAc,KAAA,EAA8C;AAC1D,IAAA,OAAO,IAAI,aAAA;AAAA,MACT,MAAM,aAAA,CAAc,EAAA;AAAA,MACpB,MAAM,aAAA,CAAc;AAAA,KACtB;AAAA,EACF;AACF;;;;"}
@@ -0,0 +1,18 @@
1
+ import { PortModel } from '@projectstorm/react-diagrams';
2
+
3
+ class CellPortModel extends PortModel {
4
+ constructor(id, portType) {
5
+ super({
6
+ type: "cellPort",
7
+ name: `${portType}-${id}`,
8
+ id: `${portType}-${id}`,
9
+ alignment: portType
10
+ });
11
+ }
12
+ isLocked() {
13
+ return true;
14
+ }
15
+ }
16
+
17
+ export { CellPortModel };
18
+ //# sourceMappingURL=CellPortModel.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellPortModel.esm.js","sources":["../../../../src/components/Cell/CellPort/CellPortModel.ts"],"sourcesContent":["import { PortModel, PortModelAlignment } from '@projectstorm/react-diagrams';\n\nexport class CellPortModel extends PortModel {\n constructor(id: string, portType: PortModelAlignment) {\n super({\n type: 'cellPort',\n name: `${portType}-${id}`,\n id: `${portType}-${id}`,\n alignment: portType,\n });\n }\n\n isLocked(): boolean {\n return true;\n }\n}\n"],"names":[],"mappings":";;AAEO,MAAM,sBAAsB,SAAA,CAAU;AAAA,EAC3C,WAAA,CAAY,IAAY,QAAA,EAA8B;AACpD,IAAA,KAAA,CAAM;AAAA,MACJ,IAAA,EAAM,UAAA;AAAA,MACN,IAAA,EAAM,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AAAA,MACvB,EAAA,EAAI,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AAAA,MACrB,SAAA,EAAW;AAAA,KACZ,CAAA;AAAA,EACH;AAAA,EAEA,QAAA,GAAoB;AAClB,IAAA,OAAO,IAAA;AAAA,EACT;AACF;;;;"}
@@ -0,0 +1,24 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { PortWidget, PortModelAlignment } from '@projectstorm/react-diagrams';
3
+ import { sidePortStyles, inclusionPortStyles } from './styles.esm.js';
4
+
5
+ function getPortStyles(alignment) {
6
+ if (alignment === PortModelAlignment.LEFT) {
7
+ return { left: 0, ...sidePortStyles };
8
+ }
9
+ if (alignment === PortModelAlignment.RIGHT) {
10
+ return { right: 0, ...sidePortStyles };
11
+ }
12
+ if (alignment === PortModelAlignment.TOP) {
13
+ return { top: 0, ...inclusionPortStyles };
14
+ }
15
+ return { bottom: 0, ...inclusionPortStyles };
16
+ }
17
+ function CellPortWidget(props) {
18
+ const { port, engine } = props;
19
+ const portStyles = getPortStyles(port.getOptions().alignment);
20
+ return /* @__PURE__ */ jsx(PortWidget, { engine, port, style: portStyles });
21
+ }
22
+
23
+ export { CellPortWidget };
24
+ //# sourceMappingURL=CellPortWidget.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellPortWidget.esm.js","sources":["../../../../src/components/Cell/CellPort/CellPortWidget.tsx"],"sourcesContent":["import { CSSProperties } from 'react';\nimport {\n DiagramEngine,\n PortModelAlignment,\n PortWidget,\n} from '@projectstorm/react-diagrams';\nimport { CellPortModel } from './CellPortModel';\nimport { inclusionPortStyles, sidePortStyles } from './styles';\n\ninterface CustomPortProps {\n port: CellPortModel;\n engine: DiagramEngine;\n}\n\nfunction getPortStyles(\n alignment: PortModelAlignment | undefined,\n): CSSProperties {\n if (alignment === PortModelAlignment.LEFT) {\n return { left: 0, ...sidePortStyles };\n }\n if (alignment === PortModelAlignment.RIGHT) {\n return { right: 0, ...sidePortStyles };\n }\n if (alignment === PortModelAlignment.TOP) {\n return { top: 0, ...inclusionPortStyles };\n }\n return { bottom: 0, ...inclusionPortStyles };\n}\n\nexport function CellPortWidget(props: CustomPortProps) {\n const { port, engine } = props;\n const portStyles: CSSProperties = getPortStyles(port.getOptions().alignment);\n\n return <PortWidget engine={engine} port={port} style={portStyles} />;\n}\n"],"names":[],"mappings":";;;;AAcA,SAAS,cACP,SAAA,EACe;AACf,EAAA,IAAI,SAAA,KAAc,mBAAmB,IAAA,EAAM;AACzC,IAAA,OAAO,EAAE,IAAA,EAAM,CAAA,EAAG,GAAG,cAAA,EAAe;AAAA,EACtC;AACA,EAAA,IAAI,SAAA,KAAc,mBAAmB,KAAA,EAAO;AAC1C,IAAA,OAAO,EAAE,KAAA,EAAO,CAAA,EAAG,GAAG,cAAA,EAAe;AAAA,EACvC;AACA,EAAA,IAAI,SAAA,KAAc,mBAAmB,GAAA,EAAK;AACxC,IAAA,OAAO,EAAE,GAAA,EAAK,CAAA,EAAG,GAAG,mBAAA,EAAoB;AAAA,EAC1C;AACA,EAAA,OAAO,EAAE,MAAA,EAAQ,CAAA,EAAG,GAAG,mBAAA,EAAoB;AAC7C;AAEO,SAAS,eAAe,KAAA,EAAwB;AACrD,EAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAO,GAAI,KAAA;AACzB,EAAA,MAAM,UAAA,GAA4B,aAAA,CAAc,IAAA,CAAK,UAAA,GAAa,SAAS,CAAA;AAE3E,EAAA,uBAAO,GAAA,CAAC,UAAA,EAAA,EAAW,MAAA,EAAgB,IAAA,EAAY,OAAO,UAAA,EAAY,CAAA;AACpE;;;;"}
@@ -0,0 +1,13 @@
1
+ const sidePortStyles = {
2
+ height: "0.5px",
3
+ position: "absolute",
4
+ width: "8px"
5
+ };
6
+ const inclusionPortStyles = {
7
+ height: "2px",
8
+ position: "absolute",
9
+ width: "2px"
10
+ };
11
+
12
+ export { inclusionPortStyles, sidePortStyles };
13
+ //# sourceMappingURL=styles.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.esm.js","sources":["../../../../src/components/Cell/CellPort/styles.ts"],"sourcesContent":["import { CSSProperties } from 'react';\n\nexport const sidePortStyles: CSSProperties = {\n height: '0.5px',\n position: 'absolute',\n width: '8px',\n};\n\nexport const inclusionPortStyles: CSSProperties = {\n height: '2px',\n position: 'absolute',\n width: '2px',\n};\n"],"names":[],"mappings":"AAEO,MAAM,cAAA,GAAgC;AAAA,EAC3C,MAAA,EAAQ,OAAA;AAAA,EACR,QAAA,EAAU,UAAA;AAAA,EACV,KAAA,EAAO;AACT;AAEO,MAAM,mBAAA,GAAqC;AAAA,EAChD,MAAA,EAAQ,KAAA;AAAA,EACR,QAAA,EAAU,UAAA;AAAA,EACV,KAAA,EAAO;AACT;;;;"}
@@ -0,0 +1,20 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { AbstractReactFactory } from '@projectstorm/react-canvas-core';
3
+ import { EmptyModel } from './EmptyModel.esm.js';
4
+ import { EmptyWidget } from './EmptyWidget.esm.js';
5
+ import { EMPTY_NODE } from '../../../resources/constants.esm.js';
6
+
7
+ class EmptyFactory extends AbstractReactFactory {
8
+ constructor() {
9
+ super(EMPTY_NODE);
10
+ }
11
+ generateReactWidget(event) {
12
+ return /* @__PURE__ */ jsx(EmptyWidget, { engine: this.engine, node: event.model });
13
+ }
14
+ generateModel(event) {
15
+ return new EmptyModel(event.initialConfig.key, event.initialConfig.cell);
16
+ }
17
+ }
18
+
19
+ export { EmptyFactory };
20
+ //# sourceMappingURL=EmptyFactory.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyFactory.esm.js","sources":["../../../../src/components/Cell/EmptyNode/EmptyFactory.tsx"],"sourcesContent":["import { AbstractReactFactory } from '@projectstorm/react-canvas-core';\nimport { DiagramEngine } from '@projectstorm/react-diagrams-core';\nimport { EmptyModel } from './EmptyModel';\nimport { EmptyWidget } from './EmptyWidget';\nimport { EMPTY_NODE } from '../../../resources';\n\nexport class EmptyFactory extends AbstractReactFactory<\n EmptyModel,\n DiagramEngine\n> {\n constructor() {\n super(EMPTY_NODE);\n }\n\n generateReactWidget(event: { model: EmptyModel }): JSX.Element {\n return <EmptyWidget engine={this.engine} node={event.model} />;\n }\n\n generateModel(event: { initialConfig: any }) {\n return new EmptyModel(event.initialConfig.key, event.initialConfig.cell);\n }\n}\n"],"names":[],"mappings":";;;;;;AAMO,MAAM,qBAAqB,oBAAA,CAGhC;AAAA,EACA,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,UAAU,CAAA;AAAA,EAClB;AAAA,EAEA,oBAAoB,KAAA,EAA2C;AAC7D,IAAA,2BAAQ,WAAA,EAAA,EAAY,MAAA,EAAQ,KAAK,MAAA,EAAQ,IAAA,EAAM,MAAM,KAAA,EAAO,CAAA;AAAA,EAC9D;AAAA,EAEA,cAAc,KAAA,EAA+B;AAC3C,IAAA,OAAO,IAAI,UAAA,CAAW,KAAA,CAAM,cAAc,GAAA,EAAK,KAAA,CAAM,cAAc,IAAI,CAAA;AAAA,EACzE;AACF;;;;"}
@@ -0,0 +1,25 @@
1
+ import { PortModelAlignment } from '@projectstorm/react-diagrams';
2
+ import { SharedNodeModel } from '../../SharedNode/SharedNode.esm.js';
3
+ import { CellPortModel } from '../CellPort/CellPortModel.esm.js';
4
+ import { getEmptyNodeName } from '../cell-util.esm.js';
5
+ import { EMPTY_NODE, CIRCLE_WIDTH } from '../../../resources/constants.esm.js';
6
+ import 'react/jsx-runtime';
7
+
8
+ class EmptyModel extends SharedNodeModel {
9
+ bound;
10
+ width;
11
+ constructor(bound, width, suffix) {
12
+ const name = getEmptyNodeName(bound, suffix ?? "");
13
+ super(EMPTY_NODE, name);
14
+ this.bound = bound;
15
+ this.width = width || CIRCLE_WIDTH;
16
+ this.setLocked(true);
17
+ this.addPort(new CellPortModel(name, PortModelAlignment.TOP));
18
+ this.addPort(new CellPortModel(name, PortModelAlignment.BOTTOM));
19
+ this.addPort(new CellPortModel(name, PortModelAlignment.LEFT));
20
+ this.addPort(new CellPortModel(name, PortModelAlignment.RIGHT));
21
+ }
22
+ }
23
+
24
+ export { EmptyModel };
25
+ //# sourceMappingURL=EmptyModel.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyModel.esm.js","sources":["../../../../src/components/Cell/EmptyNode/EmptyModel.ts"],"sourcesContent":["import { PortModelAlignment } from '@projectstorm/react-diagrams';\nimport { SharedNodeModel } from '../../SharedNode/SharedNode';\nimport { CellPortModel } from '../CellPort/CellPortModel';\nimport { getEmptyNodeName } from '../cell-util';\nimport { CellBounds } from '../CellNode/CellModel';\nimport { CIRCLE_WIDTH, EMPTY_NODE } from '../../../resources';\n\nexport class EmptyModel extends SharedNodeModel {\n readonly bound: CellBounds;\n readonly width: number;\n\n constructor(bound: CellBounds, width?: number, suffix?: string) {\n const name = getEmptyNodeName(bound, suffix ?? '');\n super(EMPTY_NODE, name);\n this.bound = bound;\n this.width = width || CIRCLE_WIDTH;\n this.setLocked(true);\n\n this.addPort(new CellPortModel(name, PortModelAlignment.TOP));\n this.addPort(new CellPortModel(name, PortModelAlignment.BOTTOM));\n this.addPort(new CellPortModel(name, PortModelAlignment.LEFT));\n this.addPort(new CellPortModel(name, PortModelAlignment.RIGHT));\n }\n}\n"],"names":[],"mappings":";;;;;;;AAOO,MAAM,mBAAmB,eAAA,CAAgB;AAAA,EACrC,KAAA;AAAA,EACA,KAAA;AAAA,EAET,WAAA,CAAY,KAAA,EAAmB,KAAA,EAAgB,MAAA,EAAiB;AAC9D,IAAA,MAAM,IAAA,GAAO,gBAAA,CAAiB,KAAA,EAAO,MAAA,IAAU,EAAE,CAAA;AACjD,IAAA,KAAA,CAAM,YAAY,IAAI,CAAA;AACtB,IAAA,IAAA,CAAK,KAAA,GAAQ,KAAA;AACb,IAAA,IAAA,CAAK,QAAQ,KAAA,IAAS,YAAA;AACtB,IAAA,IAAA,CAAK,UAAU,IAAI,CAAA;AAEnB,IAAA,IAAA,CAAK,QAAQ,IAAI,aAAA,CAAc,IAAA,EAAM,kBAAA,CAAmB,GAAG,CAAC,CAAA;AAC5D,IAAA,IAAA,CAAK,QAAQ,IAAI,aAAA,CAAc,IAAA,EAAM,kBAAA,CAAmB,MAAM,CAAC,CAAA;AAC/D,IAAA,IAAA,CAAK,QAAQ,IAAI,aAAA,CAAc,IAAA,EAAM,kBAAA,CAAmB,IAAI,CAAC,CAAA;AAC7D,IAAA,IAAA,CAAK,QAAQ,IAAI,aAAA,CAAc,IAAA,EAAM,kBAAA,CAAmB,KAAK,CAAC,CAAA;AAAA,EAChE;AACF;;;;"}
@@ -0,0 +1,52 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { PortModelAlignment } from '@projectstorm/react-diagrams';
3
+ import { EmptyNode } from './styles.esm.js';
4
+ import { CellPortWidget } from '../CellPort/CellPortWidget.esm.js';
5
+ import { getNodePortId } from '../cell-util.esm.js';
6
+ import { useDiagramContext } from '../../DiagramContext/DiagramContext.esm.js';
7
+
8
+ function EmptyWidget(props) {
9
+ const { node, engine } = props;
10
+ const { previewMode } = useDiagramContext();
11
+ return /* @__PURE__ */ jsxs(EmptyNode, { width: node.width, previewMode, children: [
12
+ /* @__PURE__ */ jsx(
13
+ CellPortWidget,
14
+ {
15
+ port: node.getPort(
16
+ getNodePortId(node.getID(), PortModelAlignment.TOP)
17
+ ),
18
+ engine
19
+ }
20
+ ),
21
+ /* @__PURE__ */ jsx(
22
+ CellPortWidget,
23
+ {
24
+ port: node.getPort(
25
+ getNodePortId(node.getID(), PortModelAlignment.BOTTOM)
26
+ ),
27
+ engine
28
+ }
29
+ ),
30
+ /* @__PURE__ */ jsx(
31
+ CellPortWidget,
32
+ {
33
+ port: node.getPort(
34
+ getNodePortId(node.getID(), PortModelAlignment.LEFT)
35
+ ),
36
+ engine
37
+ }
38
+ ),
39
+ /* @__PURE__ */ jsx(
40
+ CellPortWidget,
41
+ {
42
+ port: node.getPort(
43
+ getNodePortId(node.getID(), PortModelAlignment.RIGHT)
44
+ ),
45
+ engine
46
+ }
47
+ )
48
+ ] });
49
+ }
50
+
51
+ export { EmptyWidget };
52
+ //# sourceMappingURL=EmptyWidget.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyWidget.esm.js","sources":["../../../../src/components/Cell/EmptyNode/EmptyWidget.tsx"],"sourcesContent":["import {\n DiagramEngine,\n PortModelAlignment,\n} from '@projectstorm/react-diagrams';\nimport { EmptyModel } from './EmptyModel';\nimport { EmptyNode } from './styles';\nimport { CellPortWidget } from '../CellPort/CellPortWidget';\nimport { CellPortModel } from '../CellPort/CellPortModel';\nimport { getNodePortId } from '../cell-util';\nimport { useDiagramContext } from '../../DiagramContext/DiagramContext';\n\ninterface EmptyWidgetProps {\n node: EmptyModel;\n engine: DiagramEngine;\n}\n\nexport function EmptyWidget(props: EmptyWidgetProps) {\n const { node, engine } = props;\n const { previewMode } = useDiagramContext();\n\n return (\n <EmptyNode width={node.width} previewMode={previewMode}>\n <CellPortWidget\n port={\n node.getPort(\n getNodePortId(node.getID(), PortModelAlignment.TOP),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getNodePortId(node.getID(), PortModelAlignment.BOTTOM),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getNodePortId(node.getID(), PortModelAlignment.LEFT),\n ) as CellPortModel\n }\n engine={engine}\n />\n <CellPortWidget\n port={\n node.getPort(\n getNodePortId(node.getID(), PortModelAlignment.RIGHT),\n ) as CellPortModel\n }\n engine={engine}\n />\n </EmptyNode>\n );\n}\n"],"names":[],"mappings":";;;;;;;AAgBO,SAAS,YAAY,KAAA,EAAyB;AACnD,EAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAO,GAAI,KAAA;AACzB,EAAA,MAAM,EAAE,WAAA,EAAY,GAAI,iBAAA,EAAkB;AAE1C,EAAA,uBACE,IAAA,CAAC,SAAA,EAAA,EAAU,KAAA,EAAO,IAAA,CAAK,OAAO,WAAA,EAC5B,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,MACE,IAAA,CAAK,OAAA;AAAA,UACH,aAAA,CAAc,IAAA,CAAK,KAAA,EAAM,EAAG,mBAAmB,GAAG;AAAA,SACpD;AAAA,QAEF;AAAA;AAAA,KACF;AAAA,oBACA,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,MACE,IAAA,CAAK,OAAA;AAAA,UACH,aAAA,CAAc,IAAA,CAAK,KAAA,EAAM,EAAG,mBAAmB,MAAM;AAAA,SACvD;AAAA,QAEF;AAAA;AAAA,KACF;AAAA,oBACA,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,MACE,IAAA,CAAK,OAAA;AAAA,UACH,aAAA,CAAc,IAAA,CAAK,KAAA,EAAM,EAAG,mBAAmB,IAAI;AAAA,SACrD;AAAA,QAEF;AAAA;AAAA,KACF;AAAA,oBACA,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,MACE,IAAA,CAAK,OAAA;AAAA,UACH,aAAA,CAAc,IAAA,CAAK,KAAA,EAAM,EAAG,mBAAmB,KAAK;AAAA,SACtD;AAAA,QAEF;AAAA;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -0,0 +1,12 @@
1
+ import styled from '@emotion/styled';
2
+
3
+ const EmptyNode = styled.div`
4
+ width: ${(props) => props.width}px;
5
+ height: ${(props) => props.width}px;
6
+ border-radius: 50%;
7
+ background-color: none;
8
+ cursor: ${(props) => props.previewMode ? "pointer" : "move"};
9
+ `;
10
+
11
+ export { EmptyNode };
12
+ //# sourceMappingURL=styles.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.esm.js","sources":["../../../../src/components/Cell/EmptyNode/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\n\ninterface StyleProps {\n width: number;\n previewMode: boolean;\n}\n\nexport const EmptyNode = styled.div<any>`\n width: ${(props: StyleProps) => props.width}px;\n height: ${(props: StyleProps) => props.width}px;\n border-radius: 50%;\n background-color: none;\n cursor: ${(props: StyleProps) => (props.previewMode ? 'pointer' : 'move')};\n`;\n"],"names":[],"mappings":";;AAOO,MAAM,YAAY,MAAA,CAAO,GAAA;AAAA,SAAA,EACrB,CAAC,KAAA,KAAsB,KAAA,CAAM,KAAK,CAAA;AAAA,UAAA,EACjC,CAAC,KAAA,KAAsB,KAAA,CAAM,KAAK,CAAA;AAAA;AAAA;AAAA,UAAA,EAGlC,CAAC,KAAA,KAAuB,KAAA,CAAM,WAAA,GAAc,YAAY,MAAO,CAAA;AAAA;;;;"}