@node-projects/web-component-designer 0.0.64 → 0.0.68

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 (500) hide show
  1. package/.vscode/settings.json +1 -1
  2. package/ACKNOWLEDGMENTS +3 -1
  3. package/dist/Constants.d.ts +3 -2
  4. package/dist/Constants.js +3 -2
  5. package/dist/commandHandling/CommandType.d.ts +28 -28
  6. package/dist/commandHandling/CommandType.js +29 -29
  7. package/dist/commandHandling/IUiCommand.d.ts +6 -6
  8. package/dist/commandHandling/IUiCommand.js +1 -1
  9. package/dist/commandHandling/IUiCommandHandler.d.ts +5 -5
  10. package/dist/commandHandling/IUiCommandHandler.js +1 -1
  11. package/dist/elements/controls/DesignerTabControl.d.ts +25 -25
  12. package/dist/elements/controls/DesignerTabControl.js +138 -136
  13. package/dist/elements/controls/ImageButtonListSelector.d.ts +17 -17
  14. package/dist/elements/controls/ImageButtonListSelector.js +50 -50
  15. package/dist/elements/controls/NumericPopup.d.ts +6 -6
  16. package/dist/elements/controls/NumericPopup.js +8 -8
  17. package/dist/elements/controls/NumericStyleInput.d.ts +16 -16
  18. package/dist/elements/controls/NumericStyleInput.js +42 -42
  19. package/dist/elements/controls/PlainScrollbar.d.ts +15 -0
  20. package/dist/elements/controls/PlainScrollbar.js +482 -0
  21. package/dist/elements/controls/SimpleSplitView.d.ts +11 -11
  22. package/dist/elements/controls/SimpleSplitView.js +40 -39
  23. package/dist/elements/controls/ThicknessEditor.d.ts +33 -33
  24. package/dist/elements/controls/ThicknessEditor.js +90 -90
  25. package/dist/elements/documentContainer.d.ts +38 -38
  26. package/dist/elements/documentContainer.js +185 -185
  27. package/dist/elements/helper/CssAttributeParser.d.ts +9 -9
  28. package/dist/elements/helper/CssAttributeParser.js +67 -67
  29. package/dist/elements/helper/CssCombiner.d.ts +11 -11
  30. package/dist/elements/helper/CssCombiner.js +288 -288
  31. package/dist/elements/helper/ElementHelper.d.ts +2 -2
  32. package/dist/elements/helper/ElementHelper.js +9 -9
  33. package/dist/elements/helper/GridHelper.d.ts +16 -16
  34. package/dist/elements/helper/GridHelper.js +111 -111
  35. package/dist/elements/helper/Helper.d.ts +6 -6
  36. package/dist/elements/helper/Helper.js +26 -26
  37. package/dist/elements/helper/IndentedTextWriter.d.ts +13 -13
  38. package/dist/elements/helper/IndentedTextWriter.js +31 -31
  39. package/dist/elements/helper/LayoutHelper.d.ts +4 -4
  40. package/dist/elements/helper/LayoutHelper.js +67 -67
  41. package/dist/elements/helper/PathDataPolyfill.d.ts +100 -96
  42. package/dist/elements/helper/PathDataPolyfill.js +943 -895
  43. package/dist/elements/helper/Screenshot.d.ts +11 -11
  44. package/dist/elements/helper/Screenshot.js +59 -59
  45. package/dist/elements/helper/TransformHelper.d.ts +1 -1
  46. package/dist/elements/helper/TransformHelper.js +12 -12
  47. package/dist/elements/helper/XmlHelper.d.ts +2 -2
  48. package/dist/elements/helper/XmlHelper.js +16 -16
  49. package/dist/elements/helper/contextMenu/ContextMenuHelper.d.ts +27 -27
  50. package/dist/elements/helper/contextMenu/ContextMenuHelper.js +163 -162
  51. package/dist/elements/helper/contextMenu/IContextmenuItem.d.ts +6 -6
  52. package/dist/elements/helper/contextMenu/IContextmenuItem.js +1 -1
  53. package/dist/elements/helper/w3color.d.ts +120 -120
  54. package/dist/elements/helper/w3color.js +801 -801
  55. package/dist/elements/item/BindingMode.d.ts +4 -4
  56. package/dist/elements/item/BindingMode.js +5 -5
  57. package/dist/elements/item/BindingTarget.d.ts +8 -8
  58. package/dist/elements/item/BindingTarget.js +9 -9
  59. package/dist/elements/item/DesignItem.d.ts +60 -60
  60. package/dist/elements/item/DesignItem.js +262 -262
  61. package/dist/elements/item/IBinding.d.ts +15 -15
  62. package/dist/elements/item/IBinding.js +1 -1
  63. package/dist/elements/item/IDesignItem.d.ts +45 -45
  64. package/dist/elements/item/IDesignItem.js +1 -1
  65. package/dist/elements/item/NodeType.d.ts +5 -5
  66. package/dist/elements/item/NodeType.js +6 -6
  67. package/dist/elements/loader/IOldCustomElementsManifest.d.ts +24 -24
  68. package/dist/elements/loader/IOldCustomElementsManifest.js +1 -1
  69. package/dist/elements/loader/OldCustomElementsManifestLoader.d.ts +8 -8
  70. package/dist/elements/loader/OldCustomElementsManifestLoader.js +45 -45
  71. package/dist/elements/services/BaseServiceContainer.d.ts +9 -9
  72. package/dist/elements/services/BaseServiceContainer.js +43 -43
  73. package/dist/elements/services/DefaultServiceBootstrap.d.ts +3 -3
  74. package/dist/elements/services/DefaultServiceBootstrap.js +132 -122
  75. package/dist/elements/services/GlobalContext.d.ts +24 -24
  76. package/dist/elements/services/GlobalContext.js +63 -63
  77. package/dist/elements/services/IService.d.ts +2 -2
  78. package/dist/elements/services/IService.js +1 -1
  79. package/dist/elements/services/IServiceContainer.d.ts +5 -5
  80. package/dist/elements/services/IServiceContainer.js +1 -1
  81. package/dist/elements/services/InstanceServiceContainer.d.ts +20 -20
  82. package/dist/elements/services/InstanceServiceContainer.js +19 -19
  83. package/dist/elements/services/ServiceContainer.d.ts +80 -74
  84. package/dist/elements/services/ServiceContainer.js +70 -64
  85. package/dist/elements/services/bindableObjectsService/BindableObjectType.d.ts +9 -8
  86. package/dist/elements/services/bindableObjectsService/BindableObjectType.js +10 -9
  87. package/dist/elements/services/bindableObjectsService/IBindableObject.d.ts +8 -7
  88. package/dist/elements/services/bindableObjectsService/IBindableObject.js +1 -1
  89. package/dist/elements/services/bindableObjectsService/IBindableObjectDragDropService.d.ts +8 -0
  90. package/dist/elements/{widgets/designerView/extensions/IExtensionConfiguration.js → services/bindableObjectsService/IBindableObjectDragDropService.js} +1 -1
  91. package/dist/elements/services/bindableObjectsService/IBindableObjectsService.d.ts +6 -5
  92. package/dist/elements/services/bindableObjectsService/IBindableObjectsService.js +1 -1
  93. package/dist/elements/services/bindingsService/BaseCustomWebcomponentBindingsService.d.ts +8 -8
  94. package/dist/elements/services/bindingsService/BaseCustomWebcomponentBindingsService.js +69 -69
  95. package/dist/elements/services/bindingsService/IBindingService.d.ts +11 -11
  96. package/dist/elements/services/bindingsService/IBindingService.js +1 -1
  97. package/dist/elements/services/bindingsService/SpecialTagsBindingService.d.ts +14 -14
  98. package/dist/elements/services/bindingsService/SpecialTagsBindingService.js +40 -40
  99. package/dist/elements/services/bindingsService/VueBindingsService.js +7 -7
  100. package/dist/elements/services/contentService/ContentService.d.ts +9 -9
  101. package/dist/elements/services/contentService/ContentService.js +8 -8
  102. package/dist/elements/services/contentService/IContentChanged.d.ts +5 -5
  103. package/dist/elements/services/contentService/IContentChanged.js +1 -1
  104. package/dist/elements/services/contentService/IContentService.d.ts +7 -7
  105. package/dist/elements/services/contentService/IContentService.js +1 -1
  106. package/dist/elements/services/copyPasteService/CopyPasteService.d.ts +8 -8
  107. package/dist/elements/services/copyPasteService/CopyPasteService.js +12 -12
  108. package/dist/elements/services/copyPasteService/ICopyPasteService.d.ts +7 -7
  109. package/dist/elements/services/copyPasteService/ICopyPasteService.js +1 -1
  110. package/dist/elements/services/demoProviderService/DemoProviderService.d.ts +6 -6
  111. package/dist/elements/services/demoProviderService/DemoProviderService.js +28 -28
  112. package/dist/elements/services/demoProviderService/IDemoProviderService.d.ts +5 -5
  113. package/dist/elements/services/demoProviderService/IDemoProviderService.js +1 -1
  114. package/dist/elements/services/dragDropService/DragDropService.d.ts +6 -6
  115. package/dist/elements/services/dragDropService/DragDropService.js +28 -28
  116. package/dist/elements/services/dragDropService/IDragDropService.d.ts +5 -5
  117. package/dist/elements/services/dragDropService/IDragDropService.js +1 -1
  118. package/dist/elements/services/elementAtPointService/ElementAtPointService.d.ts +6 -6
  119. package/dist/elements/services/elementAtPointService/ElementAtPointService.js +5 -5
  120. package/dist/elements/services/elementAtPointService/IElementAtPointService.d.ts +6 -6
  121. package/dist/elements/services/elementAtPointService/IElementAtPointService.js +1 -1
  122. package/dist/elements/services/elementsService/IElementDefinition.d.ts +31 -31
  123. package/dist/elements/services/elementsService/IElementDefinition.js +1 -1
  124. package/dist/elements/services/elementsService/IElementsJson.d.ts +4 -4
  125. package/dist/elements/services/elementsService/IElementsJson.js +1 -1
  126. package/dist/elements/services/elementsService/IElementsService.d.ts +6 -6
  127. package/dist/elements/services/elementsService/IElementsService.js +1 -1
  128. package/dist/elements/services/elementsService/JsonFileElementsService.d.ts +12 -12
  129. package/dist/elements/services/elementsService/JsonFileElementsService.js +45 -45
  130. package/dist/elements/services/elementsService/PreDefinedElementsService.d.ts +11 -11
  131. package/dist/elements/services/elementsService/PreDefinedElementsService.js +21 -21
  132. package/dist/elements/services/htmlParserService/DefaultHtmlParserService.d.ts +9 -9
  133. package/dist/elements/services/htmlParserService/DefaultHtmlParserService.js +18 -18
  134. package/dist/elements/services/htmlParserService/IHtmlParserService.d.ts +7 -7
  135. package/dist/elements/services/htmlParserService/IHtmlParserService.js +1 -1
  136. package/dist/elements/services/htmlParserService/NodeHtmlParserService.d.ts +11 -11
  137. package/dist/elements/services/htmlParserService/NodeHtmlParserService.js +87 -87
  138. package/dist/elements/services/htmlWriterService/HtmlWriterService.d.ts +12 -12
  139. package/dist/elements/services/htmlWriterService/HtmlWriterService.js +103 -103
  140. package/dist/elements/services/htmlWriterService/IHtmlWriterOptions.d.ts +5 -5
  141. package/dist/elements/services/htmlWriterService/IHtmlWriterOptions.js +5 -5
  142. package/dist/elements/services/htmlWriterService/IHtmlWriterService.d.ts +8 -8
  143. package/dist/elements/services/htmlWriterService/IHtmlWriterService.js +1 -1
  144. package/dist/elements/services/htmlWriterService/IStringPosition.d.ts +4 -4
  145. package/dist/elements/services/htmlWriterService/IStringPosition.js +1 -1
  146. package/dist/elements/services/initializationService/IIntializationService.d.ts +4 -4
  147. package/dist/elements/services/initializationService/IIntializationService.js +1 -1
  148. package/dist/elements/services/instanceService/DefaultInstanceService.d.ts +8 -8
  149. package/dist/elements/services/instanceService/DefaultInstanceService.js +67 -67
  150. package/dist/elements/services/instanceService/IDesignerInstance.d.ts +3 -3
  151. package/dist/elements/services/instanceService/IDesignerInstance.js +1 -1
  152. package/dist/elements/services/instanceService/IInstanceService.d.ts +8 -8
  153. package/dist/elements/services/instanceService/IInstanceService.js +1 -1
  154. package/dist/elements/services/instanceService/IPrepareElementsForDesignerService.d.ts +4 -4
  155. package/dist/elements/services/instanceService/IPrepareElementsForDesignerService.js +1 -1
  156. package/dist/elements/services/instanceService/PrepareElementsForDesignerService.d.ts +6 -6
  157. package/dist/elements/services/instanceService/PrepareElementsForDesignerService.js +32 -32
  158. package/dist/elements/services/modelCommandService/DefaultModelCommandService.d.ts +7 -7
  159. package/dist/elements/services/modelCommandService/DefaultModelCommandService.js +68 -68
  160. package/dist/elements/services/modelCommandService/IModelCommandService.d.ts +7 -7
  161. package/dist/elements/services/modelCommandService/IModelCommandService.js +1 -1
  162. package/dist/elements/services/placementService/DefaultPlacementService.d.ts +16 -16
  163. package/dist/elements/services/placementService/DefaultPlacementService.js +109 -109
  164. package/dist/elements/services/placementService/FlexBoxPlacementService.d.ts +15 -15
  165. package/dist/elements/services/placementService/FlexBoxPlacementService.js +42 -42
  166. package/dist/elements/services/placementService/GridPlacementService.d.ts +15 -15
  167. package/dist/elements/services/placementService/GridPlacementService.js +99 -99
  168. package/dist/elements/services/placementService/IPlacementService.d.ts +15 -15
  169. package/dist/elements/services/placementService/IPlacementService.js +1 -1
  170. package/dist/elements/services/placementService/ISnaplinesProviderService.d.ts +12 -11
  171. package/dist/elements/services/placementService/ISnaplinesProviderService.js +1 -1
  172. package/dist/elements/services/placementService/SnaplinesProviderService.d.ts +12 -11
  173. package/dist/elements/services/placementService/SnaplinesProviderService.js +38 -36
  174. package/dist/elements/services/popupService/IPopupService.d.ts +16 -16
  175. package/dist/elements/services/popupService/IPopupService.js +1 -1
  176. package/dist/elements/services/popupService/PopupService.d.ts +9 -9
  177. package/dist/elements/services/popupService/PopupService.js +20 -20
  178. package/dist/elements/services/propertiesService/DefaultEditorTypesService.d.ts +6 -6
  179. package/dist/elements/services/propertiesService/DefaultEditorTypesService.js +60 -60
  180. package/dist/elements/services/propertiesService/IEditorTypesService.d.ts +5 -5
  181. package/dist/elements/services/propertiesService/IEditorTypesService.js +1 -1
  182. package/dist/elements/services/propertiesService/IPropertiesService.d.ts +15 -15
  183. package/dist/elements/services/propertiesService/IPropertiesService.js +1 -1
  184. package/dist/elements/services/propertiesService/IProperty.d.ts +17 -17
  185. package/dist/elements/services/propertiesService/IProperty.js +1 -1
  186. package/dist/elements/services/propertiesService/IPropertyEditor.d.ts +19 -19
  187. package/dist/elements/services/propertiesService/IPropertyEditor.js +1 -1
  188. package/dist/elements/services/propertiesService/ValueType.d.ts +6 -6
  189. package/dist/elements/services/propertiesService/ValueType.js +7 -7
  190. package/dist/elements/services/propertiesService/app.d.ts +2 -2
  191. package/dist/elements/services/propertiesService/app.js +71 -71
  192. package/dist/elements/services/propertiesService/propertyEditors/BasePropertyEditor.d.ts +15 -15
  193. package/dist/elements/services/propertiesService/propertyEditors/BasePropertyEditor.js +41 -41
  194. package/dist/elements/services/propertiesService/propertyEditors/BooleanPropertyEditor.d.ts +7 -7
  195. package/dist/elements/services/propertiesService/propertyEditors/BooleanPropertyEditor.js +13 -13
  196. package/dist/elements/services/propertiesService/propertyEditors/ColorPropertyEditor.d.ts +7 -7
  197. package/dist/elements/services/propertiesService/propertyEditors/ColorPropertyEditor.js +22 -22
  198. package/dist/elements/services/propertiesService/propertyEditors/DatePropertyEditor.d.ts +7 -7
  199. package/dist/elements/services/propertiesService/propertyEditors/DatePropertyEditor.js +16 -16
  200. package/dist/elements/services/propertiesService/propertyEditors/ImageButtonListPropertyEditor.d.ts +8 -8
  201. package/dist/elements/services/propertiesService/propertyEditors/ImageButtonListPropertyEditor.js +40 -40
  202. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyEditor.d.ts +9 -9
  203. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyEditor.js +16 -16
  204. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyPopupEditor.d.ts +5 -5
  205. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyPopupEditor.js +8 -8
  206. package/dist/elements/services/propertiesService/propertyEditors/NumberPropertyEditor.d.ts +7 -7
  207. package/dist/elements/services/propertiesService/propertyEditors/NumberPropertyEditor.js +16 -16
  208. package/dist/elements/services/propertiesService/propertyEditors/SelectPropertyEditor.d.ts +7 -7
  209. package/dist/elements/services/propertiesService/propertyEditors/SelectPropertyEditor.js +28 -28
  210. package/dist/elements/services/propertiesService/propertyEditors/TextPropertyEditor.d.ts +7 -7
  211. package/dist/elements/services/propertiesService/propertyEditors/TextPropertyEditor.js +20 -20
  212. package/dist/elements/services/propertiesService/propertyEditors/ThicknessPropertyEditor.d.ts +8 -8
  213. package/dist/elements/services/propertiesService/propertyEditors/ThicknessPropertyEditor.js +14 -14
  214. package/dist/elements/services/propertiesService/services/AbstractBasePropertiesService.d.ts +7 -7
  215. package/dist/elements/services/propertiesService/services/AbstractBasePropertiesService.js +43 -43
  216. package/dist/elements/services/propertiesService/services/AttributesPropertiesService.d.ts +15 -15
  217. package/dist/elements/services/propertiesService/services/AttributesPropertiesService.js +63 -63
  218. package/dist/elements/services/propertiesService/services/BaseCustomWebComponentPropertiesService.d.ts +8 -8
  219. package/dist/elements/services/propertiesService/services/BaseCustomWebComponentPropertiesService.js +12 -12
  220. package/dist/elements/services/propertiesService/services/CommonPropertiesService.d.ts +16 -16
  221. package/dist/elements/services/propertiesService/services/CommonPropertiesService.js +92 -92
  222. package/dist/elements/services/propertiesService/services/CssPropertiesService.d.ts +20 -20
  223. package/dist/elements/services/propertiesService/services/CssPropertiesService.js +279 -279
  224. package/dist/elements/services/propertiesService/services/IJsonPropertyDefinition.d.ts +13 -13
  225. package/dist/elements/services/propertiesService/services/IJsonPropertyDefinition.js +1 -1
  226. package/dist/elements/services/propertiesService/services/IJsonPropertyDefinitions.d.ts +4 -4
  227. package/dist/elements/services/propertiesService/services/IJsonPropertyDefinitions.js +1 -1
  228. package/dist/elements/services/propertiesService/services/ListPropertiesService.d.ts +12 -12
  229. package/dist/elements/services/propertiesService/services/ListPropertiesService.js +37 -37
  230. package/dist/elements/services/propertiesService/services/Lit2PropertiesService.d.ts +9 -9
  231. package/dist/elements/services/propertiesService/services/Lit2PropertiesService.js +50 -50
  232. package/dist/elements/services/propertiesService/services/LitElementPropertiesService.d.ts +8 -8
  233. package/dist/elements/services/propertiesService/services/LitElementPropertiesService.js +17 -17
  234. package/dist/elements/services/propertiesService/services/NativeElementsPropertiesService.d.ts +15 -15
  235. package/dist/elements/services/propertiesService/services/NativeElementsPropertiesService.js +111 -111
  236. package/dist/elements/services/propertiesService/services/PolymerPropertiesService.d.ts +8 -8
  237. package/dist/elements/services/propertiesService/services/PolymerPropertiesService.js +10 -10
  238. package/dist/elements/services/propertiesService/services/PropertiesHelper.d.ts +6 -6
  239. package/dist/elements/services/propertiesService/services/PropertiesHelper.js +27 -27
  240. package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.d.ts +16 -16
  241. package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.js +92 -92
  242. package/dist/elements/services/selectionService/ISelectionChangedEvent.d.ts +5 -5
  243. package/dist/elements/services/selectionService/ISelectionChangedEvent.js +1 -1
  244. package/dist/elements/services/selectionService/ISelectionService.d.ts +11 -11
  245. package/dist/elements/services/selectionService/ISelectionService.js +1 -1
  246. package/dist/elements/services/selectionService/SelectionService.d.ts +12 -12
  247. package/dist/elements/services/selectionService/SelectionService.js +35 -35
  248. package/dist/elements/services/treeStructureService/ITreeStructureChangedEvent.d.ts +8 -8
  249. package/dist/elements/services/treeStructureService/ITreeStructureChangedEvent.js +1 -1
  250. package/dist/elements/services/treeStructureService/ITreeStructureService.d.ts +2 -2
  251. package/dist/elements/services/treeStructureService/ITreeStructureService.js +2 -2
  252. package/dist/elements/services/undoService/ChangeGroup.d.ts +17 -17
  253. package/dist/elements/services/undoService/ChangeGroup.js +56 -56
  254. package/dist/elements/services/undoService/ITransactionItem.d.ts +8 -8
  255. package/dist/elements/services/undoService/ITransactionItem.js +2 -2
  256. package/dist/elements/services/undoService/IUndoService.d.ts +13 -13
  257. package/dist/elements/services/undoService/IUndoService.js +1 -1
  258. package/dist/elements/services/undoService/UndoService.d.ts +21 -21
  259. package/dist/elements/services/undoService/UndoService.js +92 -92
  260. package/dist/elements/services/undoService/transactionItems/AttributeChangeAction.d.ts +15 -15
  261. package/dist/elements/services/undoService/transactionItems/AttributeChangeAction.js +70 -70
  262. package/dist/elements/services/undoService/transactionItems/CssStyleChangeAction.d.ts +14 -14
  263. package/dist/elements/services/undoService/transactionItems/CssStyleChangeAction.js +44 -44
  264. package/dist/elements/services/undoService/transactionItems/DeleteAction.d.ts +15 -15
  265. package/dist/elements/services/undoService/transactionItems/DeleteAction.js +38 -38
  266. package/dist/elements/services/undoService/transactionItems/InsertAction.d.ts +13 -13
  267. package/dist/elements/services/undoService/transactionItems/InsertAction.js +29 -29
  268. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction.d.ts +16 -16
  269. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction.js +31 -31
  270. package/dist/elements/services/undoService/transactionItems/PropertyChangeAction.d.ts +15 -15
  271. package/dist/elements/services/undoService/transactionItems/PropertyChangeAction.js +36 -36
  272. package/dist/elements/widgets/bindableObjectsBrowser/IBindableObjectsBrowser.d.ts +3 -3
  273. package/dist/elements/widgets/bindableObjectsBrowser/IBindableObjectsBrowser.js +1 -1
  274. package/dist/elements/widgets/bindableObjectsBrowser/bindable-objects-browser.d.ts +13 -19
  275. package/dist/elements/widgets/bindableObjectsBrowser/bindable-objects-browser.js +80 -101
  276. package/dist/elements/widgets/bindings/BindingsEditor.d.ts +17 -6
  277. package/dist/elements/widgets/bindings/BindingsEditor.js +46 -20
  278. package/dist/elements/widgets/codeView/ICodeView.d.ts +11 -11
  279. package/dist/elements/widgets/codeView/ICodeView.js +1 -1
  280. package/dist/elements/widgets/codeView/code-view-ace.d.ts +24 -24
  281. package/dist/elements/widgets/codeView/code-view-ace.js +127 -127
  282. package/dist/elements/widgets/codeView/code-view-code-mirror.d.ts +24 -24
  283. package/dist/elements/widgets/codeView/code-view-code-mirror.js +89 -89
  284. package/dist/elements/widgets/codeView/code-view-monaco.d.ts +25 -25
  285. package/dist/elements/widgets/codeView/code-view-monaco.js +102 -102
  286. package/dist/elements/widgets/demoView/IDemoView.d.ts +5 -5
  287. package/dist/elements/widgets/demoView/IDemoView.js +1 -1
  288. package/dist/elements/widgets/demoView/demoView.d.ts +11 -11
  289. package/dist/elements/widgets/demoView/demoView.js +22 -22
  290. package/dist/elements/widgets/designerView/ButtonSeperatorProvider.d.ts +8 -8
  291. package/dist/elements/widgets/designerView/ButtonSeperatorProvider.js +11 -11
  292. package/dist/elements/widgets/designerView/DesignContext.d.ts +7 -7
  293. package/dist/elements/widgets/designerView/DesignContext.js +4 -4
  294. package/dist/elements/widgets/designerView/DesignerViewUseOverlayScollbars.d.ts +7 -7
  295. package/dist/elements/widgets/designerView/DesignerViewUseOverlayScollbars.js +13 -13
  296. package/dist/elements/widgets/designerView/DomConverter.d.ts +8 -8
  297. package/dist/elements/widgets/designerView/DomConverter.js +44 -44
  298. package/dist/elements/widgets/designerView/IDesignContext.d.ts +6 -6
  299. package/dist/elements/widgets/designerView/IDesignContext.js +1 -1
  300. package/dist/elements/widgets/designerView/IDesignViewConfigButtonsProvider.d.ts +5 -5
  301. package/dist/elements/widgets/designerView/IDesignViewConfigButtonsProvider.js +1 -1
  302. package/dist/elements/widgets/designerView/IDesignerCanvas.d.ts +34 -32
  303. package/dist/elements/widgets/designerView/IDesignerCanvas.js +1 -1
  304. package/dist/elements/widgets/designerView/IPlacementView.d.ts +13 -11
  305. package/dist/elements/widgets/designerView/IPlacementView.js +1 -1
  306. package/dist/elements/widgets/designerView/Snaplines.d.ts +21 -20
  307. package/dist/elements/widgets/designerView/Snaplines.js +220 -220
  308. package/dist/elements/widgets/designerView/defaultConfiguredDesignerView.d.ts +5 -5
  309. package/dist/elements/widgets/designerView/defaultConfiguredDesignerView.js +11 -11
  310. package/dist/elements/widgets/designerView/designerCanvas.d.ts +88 -82
  311. package/dist/elements/widgets/designerView/designerCanvas.js +624 -564
  312. package/dist/elements/widgets/designerView/designerView.d.ts +37 -34
  313. package/dist/elements/widgets/designerView/designerView.js +218 -159
  314. package/dist/elements/widgets/designerView/extensions/AbstractExtension.d.ts +12 -12
  315. package/dist/elements/widgets/designerView/extensions/AbstractExtension.js +8 -8
  316. package/dist/elements/widgets/designerView/extensions/AbstractExtensionBase.d.ts +16 -16
  317. package/dist/elements/widgets/designerView/extensions/AbstractExtensionBase.js +50 -50
  318. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtension.d.ts +12 -12
  319. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtension.js +20 -20
  320. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtensionProvider.d.ts +10 -10
  321. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtensionProvider.js +11 -11
  322. package/dist/elements/widgets/designerView/extensions/CanvasExtension.d.ts +10 -10
  323. package/dist/elements/widgets/designerView/extensions/CanvasExtension.js +29 -29
  324. package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider.d.ts +10 -10
  325. package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider.js +13 -13
  326. package/dist/elements/widgets/designerView/extensions/EditText/EditTextExtension.d.ts +17 -17
  327. package/dist/elements/widgets/designerView/extensions/EditText/EditTextExtension.js +71 -71
  328. package/dist/elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.d.ts +9 -9
  329. package/dist/elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.js +11 -11
  330. package/dist/elements/widgets/designerView/extensions/ExtensionManager.d.ts +16 -16
  331. package/dist/elements/widgets/designerView/extensions/ExtensionManager.js +217 -217
  332. package/dist/elements/widgets/designerView/extensions/ExtensionType.d.ts +18 -18
  333. package/dist/elements/widgets/designerView/extensions/ExtensionType.js +19 -19
  334. package/dist/elements/widgets/designerView/extensions/GrayOutExtension.d.ts +13 -13
  335. package/dist/elements/widgets/designerView/extensions/GrayOutExtension.js +32 -32
  336. package/dist/elements/widgets/designerView/extensions/GrayOutExtensionProvider.d.ts +10 -10
  337. package/dist/elements/widgets/designerView/extensions/GrayOutExtensionProvider.js +11 -11
  338. package/dist/elements/widgets/designerView/extensions/GridExtension.d.ts +10 -10
  339. package/dist/elements/widgets/designerView/extensions/GridExtension.js +30 -30
  340. package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.d.ts +6 -6
  341. package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.js +21 -21
  342. package/dist/elements/widgets/designerView/extensions/GridExtensionProvider.d.ts +11 -11
  343. package/dist/elements/widgets/designerView/extensions/GridExtensionProvider.js +14 -14
  344. package/dist/elements/widgets/designerView/extensions/IDesignerExtension.d.ts +5 -5
  345. package/dist/elements/widgets/designerView/extensions/IDesignerExtension.js +1 -1
  346. package/dist/elements/widgets/designerView/extensions/IDesignerExtensionProvider.d.ts +9 -9
  347. package/dist/elements/widgets/designerView/extensions/IDesignerExtensionProvider.js +1 -1
  348. package/dist/elements/widgets/designerView/extensions/IExtensionManger.d.ts +11 -11
  349. package/dist/elements/widgets/designerView/extensions/IExtensionManger.js +1 -1
  350. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtension.d.ts +11 -11
  351. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtension.js +22 -22
  352. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.d.ts +10 -10
  353. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.js +15 -15
  354. package/dist/elements/widgets/designerView/extensions/MouseOverExtension.d.ts +11 -11
  355. package/dist/elements/widgets/designerView/extensions/MouseOverExtension.js +20 -20
  356. package/dist/elements/widgets/designerView/extensions/MouseOverExtensionProvider.d.ts +10 -10
  357. package/dist/elements/widgets/designerView/extensions/MouseOverExtensionProvider.js +11 -11
  358. package/dist/elements/widgets/designerView/extensions/OverlayLayer.d.ts +5 -5
  359. package/dist/elements/widgets/designerView/extensions/OverlayLayer.js +6 -6
  360. package/dist/elements/widgets/designerView/extensions/PathExtension.d.ts +15 -15
  361. package/dist/elements/widgets/designerView/extensions/PathExtension.js +78 -78
  362. package/dist/elements/widgets/designerView/extensions/PathExtensionProvider.d.ts +9 -9
  363. package/dist/elements/widgets/designerView/extensions/PathExtensionProvider.js +17 -17
  364. package/dist/elements/widgets/designerView/extensions/PositionExtension.d.ts +14 -14
  365. package/dist/elements/widgets/designerView/extensions/PositionExtension.js +45 -45
  366. package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.d.ts +9 -9
  367. package/dist/elements/widgets/designerView/extensions/PositionExtensionProvider.js +12 -12
  368. package/dist/elements/widgets/designerView/extensions/PrimarySelectionDefaultExtension.d.ts +13 -13
  369. package/dist/elements/widgets/designerView/extensions/PrimarySelectionDefaultExtension.js +21 -21
  370. package/dist/elements/widgets/designerView/extensions/PrimarySelectionDefaultExtensionProvider.d.ts +10 -10
  371. package/dist/elements/widgets/designerView/extensions/PrimarySelectionDefaultExtensionProvider.js +11 -11
  372. package/dist/elements/widgets/designerView/extensions/ResizeExtension.d.ts +25 -24
  373. package/dist/elements/widgets/designerView/extensions/ResizeExtension.js +150 -146
  374. package/dist/elements/widgets/designerView/extensions/ResizeExtensionProvider.d.ts +12 -12
  375. package/dist/elements/widgets/designerView/extensions/ResizeExtensionProvider.js +15 -15
  376. package/dist/elements/widgets/designerView/extensions/RotateExtension.d.ts +12 -12
  377. package/dist/elements/widgets/designerView/extensions/RotateExtension.js +71 -71
  378. package/dist/elements/widgets/designerView/extensions/RotateExtensionProvider.d.ts +10 -10
  379. package/dist/elements/widgets/designerView/extensions/RotateExtensionProvider.js +11 -11
  380. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtension.d.ts +11 -11
  381. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtension.js +22 -22
  382. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.d.ts +10 -10
  383. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js +11 -11
  384. package/dist/elements/widgets/designerView/extensions/TransformOriginExtension.d.ts +14 -14
  385. package/dist/elements/widgets/designerView/extensions/TransformOriginExtension.js +68 -68
  386. package/dist/elements/widgets/designerView/extensions/TransformOriginExtensionProvider.d.ts +10 -10
  387. package/dist/elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js +13 -13
  388. package/dist/elements/widgets/designerView/extensions/contextMenu/CopyPasteContextMenu.d.ts +8 -8
  389. package/dist/elements/widgets/designerView/extensions/contextMenu/CopyPasteContextMenu.js +16 -16
  390. package/dist/elements/widgets/designerView/extensions/contextMenu/IContextMenuExtension.d.ts +8 -8
  391. package/dist/elements/widgets/designerView/extensions/contextMenu/IContextMenuExtension.js +1 -1
  392. package/dist/elements/widgets/designerView/extensions/contextMenu/ItemsBelowContextMenu.d.ts +10 -10
  393. package/dist/elements/widgets/designerView/extensions/contextMenu/ItemsBelowContextMenu.js +51 -51
  394. package/dist/elements/widgets/designerView/extensions/contextMenu/MultipleItemsSelectedContextMenu.d.ts +9 -9
  395. package/dist/elements/widgets/designerView/extensions/contextMenu/MultipleItemsSelectedContextMenu.js +22 -22
  396. package/dist/elements/widgets/designerView/extensions/contextMenu/ZMoveContextMenu.d.ts +8 -8
  397. package/dist/elements/widgets/designerView/extensions/contextMenu/ZMoveContextMenu.js +14 -14
  398. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractDesignerPointerExtension.d.ts +11 -11
  399. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractDesignerPointerExtension.js +11 -11
  400. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorLinePointerExtension.d.ts +13 -13
  401. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorLinePointerExtension.js +24 -24
  402. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorLinePointerExtensionProvider.d.ts +7 -7
  403. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorLinePointerExtensionProvider.js +8 -8
  404. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtension.d.ts +5 -5
  405. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtension.js +1 -1
  406. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtensionProvider.d.ts +6 -6
  407. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtensionProvider.js +1 -1
  408. package/dist/elements/widgets/designerView/overlay/EditTextOverlay.d.ts +5 -5
  409. package/dist/elements/widgets/designerView/overlay/EditTextOverlay.js +5 -5
  410. package/dist/elements/widgets/designerView/overlayLayerView.d.ts +25 -25
  411. package/dist/elements/widgets/designerView/overlayLayerView.js +130 -130
  412. package/dist/elements/widgets/designerView/tools/DrawElementTool.d.ts +18 -18
  413. package/dist/elements/widgets/designerView/tools/DrawElementTool.js +78 -78
  414. package/dist/elements/widgets/designerView/tools/DrawEllipsisTool.d.ts +15 -0
  415. package/dist/elements/widgets/designerView/tools/DrawEllipsisTool.js +90 -0
  416. package/dist/elements/widgets/designerView/tools/DrawLineTool.d.ts +13 -0
  417. package/dist/elements/widgets/designerView/tools/DrawLineTool.js +75 -0
  418. package/dist/elements/widgets/designerView/tools/DrawPathTool.d.ts +19 -21
  419. package/dist/elements/widgets/designerView/tools/DrawPathTool.js +113 -126
  420. package/dist/elements/widgets/designerView/tools/DrawRectTool.d.ts +18 -0
  421. package/dist/elements/widgets/designerView/tools/DrawRectTool.js +105 -0
  422. package/dist/elements/widgets/designerView/tools/ITool.d.ts +8 -8
  423. package/dist/elements/widgets/designerView/tools/ITool.js +1 -1
  424. package/dist/elements/widgets/designerView/tools/MagicWandSelectorTool.d.ts +11 -11
  425. package/dist/elements/widgets/designerView/tools/MagicWandSelectorTool.js +61 -61
  426. package/dist/elements/widgets/designerView/tools/NamedTools.d.ts +14 -11
  427. package/dist/elements/widgets/designerView/tools/NamedTools.js +15 -12
  428. package/dist/elements/widgets/designerView/tools/PanTool.d.ts +9 -9
  429. package/dist/elements/widgets/designerView/tools/PanTool.js +23 -9
  430. package/dist/elements/widgets/designerView/tools/PickColorTool.d.ts +9 -9
  431. package/dist/elements/widgets/designerView/tools/PickColorTool.js +19 -19
  432. package/dist/elements/widgets/designerView/tools/PointerTool.d.ts +23 -23
  433. package/dist/elements/widgets/designerView/tools/PointerTool.js +325 -318
  434. package/dist/elements/widgets/designerView/tools/RectangleSelectorTool.d.ts +11 -11
  435. package/dist/elements/widgets/designerView/tools/RectangleSelectorTool.js +81 -81
  436. package/dist/elements/widgets/designerView/tools/TextTool.d.ts +10 -10
  437. package/dist/elements/widgets/designerView/tools/TextTool.js +11 -11
  438. package/dist/elements/widgets/designerView/tools/ZoomTool.d.ts +9 -9
  439. package/dist/elements/widgets/designerView/tools/ZoomTool.js +9 -9
  440. package/dist/elements/widgets/miniatureView/IMiniatureView.d.ts +2 -2
  441. package/dist/elements/widgets/miniatureView/IMiniatureView.js +1 -1
  442. package/dist/elements/widgets/miniatureView/html-2-canvas-miniature-view.d.ts +10 -10
  443. package/dist/elements/widgets/miniatureView/html-2-canvas-miniature-view.js +18 -18
  444. package/dist/elements/widgets/paletteView/paletteElements.d.ts +10 -10
  445. package/dist/elements/widgets/paletteView/paletteElements.js +72 -72
  446. package/dist/elements/widgets/paletteView/paletteTreeView.d.ts +13 -13
  447. package/dist/elements/widgets/paletteView/paletteTreeView.js +72 -77
  448. package/dist/elements/widgets/paletteView/paletteView.d.ts +11 -11
  449. package/dist/elements/widgets/paletteView/paletteView.js +25 -25
  450. package/dist/elements/widgets/propertyGrid/PropertyGrid.d.ts +21 -21
  451. package/dist/elements/widgets/propertyGrid/PropertyGrid.js +127 -126
  452. package/dist/elements/widgets/propertyGrid/PropertyGridPropertyList.d.ts +17 -17
  453. package/dist/elements/widgets/propertyGrid/PropertyGridPropertyList.js +91 -91
  454. package/dist/elements/widgets/propertyGrid/PropertyGridWithHeader.d.ts +15 -15
  455. package/dist/elements/widgets/propertyGrid/PropertyGridWithHeader.js +48 -47
  456. package/dist/elements/widgets/treeView/ITreeView.d.ts +6 -6
  457. package/dist/elements/widgets/treeView/ITreeView.js +1 -1
  458. package/dist/elements/widgets/treeView/treeView.d.ts +28 -28
  459. package/dist/elements/widgets/treeView/treeView.js +148 -148
  460. package/dist/elements/widgets/treeView/treeViewExtended.d.ts +31 -31
  461. package/dist/elements/widgets/treeView/treeViewExtended.js +306 -306
  462. package/dist/enums/EventNames.d.ts +15 -15
  463. package/dist/enums/EventNames.js +16 -16
  464. package/dist/enums/PointerActionType.d.ts +8 -8
  465. package/dist/enums/PointerActionType.js +9 -9
  466. package/dist/index.d.ts +174 -166
  467. package/dist/index.js +124 -118
  468. package/dist/interfaces/IActivateable.d.ts +3 -3
  469. package/dist/interfaces/IActivateable.js +1 -1
  470. package/dist/interfaces/IDisposable.d.ts +3 -3
  471. package/dist/interfaces/IDisposable.js +1 -1
  472. package/dist/interfaces/IPoint.d.ts +4 -4
  473. package/dist/interfaces/IPoint.js +1 -1
  474. package/dist/interfaces/IRect.d.ts +6 -6
  475. package/dist/interfaces/IRect.js +1 -1
  476. package/dist/interfaces/ISize.d.ts +4 -4
  477. package/dist/interfaces/ISize.js +1 -1
  478. package/dist/polyfill/globals.d.ts +11 -11
  479. package/dist/polyfill/globals.js +1 -1
  480. package/dist/polyfill/mobileDragDrop.d.ts +2 -2
  481. package/dist/polyfill/mobileDragDrop.js +32 -32
  482. package/package.json +1 -1
  483. package/debug.log +0 -8
  484. package/dist/elements/controls/SimpleSplitView2.d.ts +0 -11
  485. package/dist/elements/controls/SimpleSplitView2.js +0 -63
  486. package/dist/elements/controls/aa.d.ts +0 -24
  487. package/dist/elements/controls/aa.js +0 -98
  488. package/dist/elements/widgets/designerView/ButtonSeperatorProvider copy.d.ts +0 -7
  489. package/dist/elements/widgets/designerView/ButtonSeperatorProvider copy.js +0 -11
  490. package/dist/elements/widgets/designerView/extensions/GridExtensionConfigButtons.d.ts +0 -5
  491. package/dist/elements/widgets/designerView/extensions/GridExtensionConfigButtons.js +0 -12
  492. package/dist/elements/widgets/designerView/extensions/GridExtensionProvider copy.d.ts +0 -10
  493. package/dist/elements/widgets/designerView/extensions/GridExtensionProvider copy.js +0 -18
  494. package/dist/elements/widgets/designerView/extensions/GridExtensionProviderConfigButtons.d.ts +0 -5
  495. package/dist/elements/widgets/designerView/extensions/GridExtensionProviderConfigButtons.js +0 -12
  496. package/dist/elements/widgets/designerView/extensions/GridExtensionProviderOptions.d.ts +0 -10
  497. package/dist/elements/widgets/designerView/extensions/GridExtensionProviderOptions.js +0 -18
  498. package/dist/elements/widgets/designerView/extensions/IDesignViewConfigButtonsProvider.d.ts +0 -0
  499. package/dist/elements/widgets/designerView/extensions/IDesignViewConfigButtonsProvider.js +0 -1
  500. package/dist/elements/widgets/designerView/extensions/IExtensionConfiguration.d.ts +0 -3
@@ -1,318 +1,325 @@
1
- import { EventNames } from "../../../../enums/EventNames";
2
- import { PointerActionType } from "../../../../enums/PointerActionType";
3
- import { DesignItem } from "../../../item/DesignItem";
4
- import { ExtensionType } from "../extensions/ExtensionType";
5
- import { NamedTools } from './NamedTools';
6
- import { DomHelper } from '@node-projects/base-custom-webcomponent/dist/DomHelper';
7
- export class PointerTool {
8
- cursor = 'default';
9
- _movedSinceStartedAction = false;
10
- _initialPoint;
11
- _actionType;
12
- _actionStartedDesignItem;
13
- _previousEventName;
14
- _clickThroughElements = [];
15
- _dragOverExtensionItem;
16
- _dragExtensionItem;
17
- _moveItemsOffset = { x: 0, y: 0 };
18
- _initialOffset;
19
- constructor() {
20
- }
21
- activated(serviceContainer) {
22
- }
23
- dispose() {
24
- }
25
- pointerEventHandler(designerCanvas, event, currentElement) {
26
- switch (event.type) {
27
- case EventNames.PointerDown:
28
- event.target.setPointerCapture(event.pointerId);
29
- this._movedSinceStartedAction = false;
30
- break;
31
- case EventNames.PointerUp:
32
- event.target.releasePointerCapture(event.pointerId);
33
- break;
34
- }
35
- if (!event.altKey)
36
- this._resetPointerEventsForClickThrough();
37
- if (!currentElement)
38
- return;
39
- const currentPoint = designerCanvas.getNormalizedEventCoordinates(event);
40
- const currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
41
- if (this._actionType == null) {
42
- this._initialPoint = currentPoint;
43
- this._initialOffset = designerCanvas.getNormalizedOffsetInElement(event, currentElement);
44
- if (event.type == EventNames.PointerDown) {
45
- this._actionStartedDesignItem = currentDesignItem;
46
- designerCanvas.snapLines.clearSnaplines();
47
- if (currentDesignItem !== designerCanvas.rootDesignItem) {
48
- this._actionType = PointerActionType.Drag;
49
- }
50
- else if (currentElement === designerCanvas || currentElement === designerCanvas.rootDesignItem.element || currentElement == null) {
51
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(null);
52
- this._actionType = PointerActionType.DrawSelection;
53
- }
54
- else {
55
- this._actionType = PointerActionType.DragOrSelect;
56
- }
57
- }
58
- }
59
- if (event.type === EventNames.PointerMove) {
60
- this._movedSinceStartedAction = this._movedSinceStartedAction || currentPoint.x != this._initialPoint.x || currentPoint.y != this._initialPoint.y;
61
- if (this._actionType == PointerActionType.DrawSelection)
62
- this._actionType = PointerActionType.DrawingSelection;
63
- }
64
- if (this._actionType == PointerActionType.DrawSelection || this._actionType == PointerActionType.DrawingSelection) {
65
- this._pointerActionTypeDrawSelection(designerCanvas, event, currentElement);
66
- }
67
- else if (this._actionType == PointerActionType.DragOrSelect || this._actionType == PointerActionType.Drag) {
68
- this._pointerActionTypeDragOrSelect(designerCanvas, event, currentDesignItem, currentPoint);
69
- }
70
- if (event.type == EventNames.PointerUp) {
71
- designerCanvas.snapLines.clearSnaplines();
72
- if (this._actionType == PointerActionType.DrawSelection) {
73
- if (currentDesignItem !== designerCanvas.rootDesignItem)
74
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
75
- }
76
- this._actionType = null;
77
- this._actionStartedDesignItem = null;
78
- this._movedSinceStartedAction = false;
79
- this._initialPoint = null;
80
- }
81
- this._previousEventName = event.type;
82
- }
83
- _pointerActionTypeDrawSelection(designerView, event, currentElement) {
84
- const drawSelectionTool = designerView.serviceContainer.designerTools.get(NamedTools.DrawSelection);
85
- if (drawSelectionTool) {
86
- drawSelectionTool.pointerEventHandler(designerView, event, currentElement);
87
- }
88
- }
89
- _resetPointerEventsForClickThrough() {
90
- if (!this._clickThroughElements.length)
91
- return;
92
- for (const e of this._clickThroughElements) {
93
- e[0].element.style.pointerEvents = e[1];
94
- }
95
- this._clickThroughElements = [];
96
- }
97
- _pointerActionTypeDragOrSelect(designerCanvas, event, currentDesignItem, currentPoint) {
98
- if (event.altKey) {
99
- if (event.type == EventNames.PointerDown) {
100
- this._clickThroughElements.push([currentDesignItem, currentDesignItem.element.style.pointerEvents]);
101
- currentDesignItem.element.style.pointerEvents = 'none';
102
- }
103
- let currentElement = designerCanvas.elementFromPoint(event.x, event.y);
104
- if (DomHelper.getHost(currentElement) !== designerCanvas.overlayLayer)
105
- currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
106
- }
107
- else {
108
- this._resetPointerEventsForClickThrough();
109
- }
110
- switch (event.type) {
111
- case EventNames.PointerDown:
112
- {
113
- this._actionStartedDesignItem = currentDesignItem;
114
- this._moveItemsOffset = { x: 0, y: 0 };
115
- if (event.shiftKey || event.ctrlKey) {
116
- const index = designerCanvas.instanceServiceContainer.selectionService.selectedElements.indexOf(currentDesignItem);
117
- if (index >= 0) {
118
- let newSelectedList = designerCanvas.instanceServiceContainer.selectionService.selectedElements.slice(0);
119
- newSelectedList.splice(index, 1);
120
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(newSelectedList);
121
- }
122
- else {
123
- let newSelectedList = designerCanvas.instanceServiceContainer.selectionService.selectedElements.slice(0);
124
- newSelectedList.push(currentDesignItem);
125
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(newSelectedList);
126
- }
127
- }
128
- else {
129
- if (designerCanvas.instanceServiceContainer.selectionService.selectedElements.indexOf(currentDesignItem) < 0)
130
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
131
- }
132
- if (designerCanvas.alignOnSnap)
133
- designerCanvas.snapLines.calculateSnaplines(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
134
- break;
135
- }
136
- case EventNames.PointerMove:
137
- {
138
- const elementMoved = currentPoint.x != this._initialPoint.x || currentPoint.y != this._initialPoint.y;
139
- if (this._actionType != PointerActionType.Drag && elementMoved) {
140
- this._actionType = PointerActionType.Drag;
141
- }
142
- if (this._movedSinceStartedAction) {
143
- const containerStyle = getComputedStyle(this._actionStartedDesignItem.parent.element);
144
- const currentContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(this._actionStartedDesignItem.parent, containerStyle));
145
- if (currentContainerService) {
146
- const dragItem = this._actionStartedDesignItem.parent;
147
- if (this._dragExtensionItem != dragItem) {
148
- designerCanvas.extensionManager.removeExtension(this._dragExtensionItem, ExtensionType.ContainerDrag);
149
- designerCanvas.extensionManager.applyExtension(dragItem, ExtensionType.ContainerDrag);
150
- this._dragExtensionItem = dragItem;
151
- }
152
- else {
153
- designerCanvas.extensionManager.refreshExtension(dragItem, ExtensionType.ContainerDrag);
154
- }
155
- const canLeave = currentContainerService.canLeave(this._actionStartedDesignItem.parent, [this._actionStartedDesignItem]);
156
- let newContainerElementDesignItem = null;
157
- let newContainerService = null;
158
- if (canLeave) {
159
- //search for containers below mouse cursor.
160
- //to do this, we need to disable pointer events for each in a loop and search wich element is there
161
- let backupPEventsMap = new Map();
162
- let newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
163
- try {
164
- checkAgain: while (newContainerElement != null) {
165
- if (newContainerElement == this._actionStartedDesignItem.parent.element) {
166
- newContainerElement = null;
167
- }
168
- else if (newContainerElement == designerCanvas.rootDesignItem.element) {
169
- newContainerElementDesignItem = designerCanvas.rootDesignItem;
170
- const containerStyle = getComputedStyle(newContainerElementDesignItem.element);
171
- newContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainerElementDesignItem, containerStyle));
172
- break;
173
- }
174
- else if (newContainerElement.getRootNode() !== designerCanvas.shadowRoot || newContainerElement === designerCanvas.overlayLayer || newContainerElement.parentElement === designerCanvas.overlayLayer) {
175
- backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
176
- newContainerElement.style.pointerEvents = 'none';
177
- const old = newContainerElement;
178
- newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
179
- if (old === newContainerElement) {
180
- newContainerElementDesignItem = null;
181
- newContainerService = null;
182
- break;
183
- }
184
- }
185
- else if (newContainerElement == this._actionStartedDesignItem.element) {
186
- backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
187
- newContainerElement.style.pointerEvents = 'none';
188
- const old = newContainerElement;
189
- newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
190
- if (old === newContainerElement) {
191
- newContainerElementDesignItem = null;
192
- newContainerService = null;
193
- break;
194
- }
195
- }
196
- else {
197
- //check we don't try to move a item over one of its children...
198
- let par = newContainerElement.parentElement;
199
- while (par) {
200
- if (par == this._actionStartedDesignItem.element) {
201
- backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
202
- newContainerElement.style.pointerEvents = 'none';
203
- const old = newContainerElement;
204
- newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
205
- if (old === newContainerElement)
206
- break;
207
- continue checkAgain;
208
- }
209
- par = par.parentElement;
210
- }
211
- //end check
212
- newContainerElementDesignItem = DesignItem.GetOrCreateDesignItem(newContainerElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
213
- const containerStyle = getComputedStyle(newContainerElementDesignItem.element);
214
- newContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainerElementDesignItem, containerStyle));
215
- if (newContainerService) {
216
- if (newContainerService.canEnter(newContainerElementDesignItem, [this._actionStartedDesignItem])) {
217
- break;
218
- }
219
- else {
220
- newContainerElementDesignItem = null;
221
- newContainerService = null;
222
- }
223
- }
224
- backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
225
- newContainerElement.style.pointerEvents = 'none';
226
- const newC = designerCanvas.elementFromPoint(event.x, event.y);
227
- if (newContainerElement === newC) {
228
- newContainerElement = null;
229
- break;
230
- }
231
- newContainerElement = newC;
232
- }
233
- }
234
- }
235
- finally {
236
- for (let e of backupPEventsMap.entries()) {
237
- e[0].style.pointerEvents = e[1];
238
- }
239
- }
240
- if (newContainerElement != null) { //Check if container is in designer canvas....
241
- let p = newContainerElement;
242
- while (p != null) {
243
- if (p === designerCanvas.rootDesignItem.element)
244
- break;
245
- p = p.parentElement;
246
- }
247
- if (p == null) {
248
- newContainerService = null;
249
- newContainerElement = null;
250
- }
251
- }
252
- //if we found a new enterable container create extensions
253
- if (newContainerElement != null) {
254
- const newContainerElementDesignItem = DesignItem.GetOrCreateDesignItem(newContainerElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
255
- if (this._dragOverExtensionItem != newContainerElementDesignItem) {
256
- designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
257
- designerCanvas.extensionManager.applyExtension(newContainerElementDesignItem, ExtensionType.ContainerDragOver);
258
- this._dragOverExtensionItem = newContainerElementDesignItem;
259
- }
260
- else {
261
- designerCanvas.extensionManager.refreshExtension(newContainerElementDesignItem, ExtensionType.ContainerDragOver);
262
- }
263
- }
264
- else {
265
- if (this._dragOverExtensionItem) {
266
- designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
267
- this._dragOverExtensionItem = null;
268
- }
269
- }
270
- }
271
- if (newContainerService && event.altKey) {
272
- //TODO: all items, fix position
273
- const oldOffset = currentContainerService.getElementOffset(this._actionStartedDesignItem.parent, this._actionStartedDesignItem);
274
- const newOffset = newContainerService.getElementOffset(newContainerElementDesignItem, this._actionStartedDesignItem);
275
- this._moveItemsOffset = { x: newOffset.x - oldOffset.x + this._moveItemsOffset.x, y: newOffset.y - oldOffset.y + this._moveItemsOffset.y };
276
- currentContainerService.leaveContainer(this._actionStartedDesignItem.parent, [this._actionStartedDesignItem]);
277
- newContainerElementDesignItem.insertChild(this._actionStartedDesignItem);
278
- const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
279
- newContainerService.enterContainer(newContainerElementDesignItem, [this._actionStartedDesignItem]);
280
- newContainerService.place(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
281
- }
282
- else {
283
- const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
284
- currentContainerService.place(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
285
- }
286
- designerCanvas.extensionManager.refreshExtensions(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
287
- }
288
- }
289
- break;
290
- }
291
- case EventNames.PointerUp:
292
- {
293
- if (this._actionType == PointerActionType.DragOrSelect) {
294
- if (this._previousEventName == EventNames.PointerDown && !event.shiftKey && !event.ctrlKey)
295
- designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
296
- return;
297
- }
298
- if (this._movedSinceStartedAction) {
299
- const containerStyle = getComputedStyle(this._actionStartedDesignItem.parent.element);
300
- let containerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(this._actionStartedDesignItem.parent, containerStyle));
301
- const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
302
- if (containerService) {
303
- let cg = designerCanvas.rootDesignItem.openGroup("Move Elements", designerCanvas.instanceServiceContainer.selectionService.selectedElements);
304
- containerService.finishPlace(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
305
- cg.commit();
306
- }
307
- designerCanvas.extensionManager.removeExtension(this._dragExtensionItem, ExtensionType.ContainerDrag);
308
- this._dragExtensionItem = null;
309
- designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
310
- this._dragOverExtensionItem = null;
311
- this._moveItemsOffset = { x: 0, y: 0 };
312
- }
313
- designerCanvas.extensionManager.refreshExtensions(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
314
- break;
315
- }
316
- }
317
- }
318
- }
1
+ import { EventNames } from "../../../../enums/EventNames";
2
+ import { PointerActionType } from "../../../../enums/PointerActionType";
3
+ import { DesignItem } from "../../../item/DesignItem";
4
+ import { ExtensionType } from "../extensions/ExtensionType";
5
+ import { NamedTools } from './NamedTools';
6
+ import { DomHelper } from '@node-projects/base-custom-webcomponent/dist/DomHelper';
7
+ export class PointerTool {
8
+ cursor = 'default';
9
+ _movedSinceStartedAction = false;
10
+ _initialPoint;
11
+ _actionType;
12
+ _actionStartedDesignItem;
13
+ _previousEventName;
14
+ _clickThroughElements = [];
15
+ _dragOverExtensionItem;
16
+ _dragExtensionItem;
17
+ _moveItemsOffset = { x: 0, y: 0 };
18
+ _initialOffset;
19
+ constructor() {
20
+ }
21
+ activated(serviceContainer) {
22
+ }
23
+ dispose() {
24
+ }
25
+ pointerEventHandler(designerCanvas, event, currentElement) {
26
+ if (((event.ctrlKey || event.metaKey) && event.shiftKey) || event.buttons == 4) {
27
+ const panTool = designerCanvas.serviceContainer.designerTools.get(NamedTools.Pan);
28
+ if (panTool) {
29
+ panTool.pointerEventHandler(designerCanvas, event, currentElement);
30
+ return;
31
+ }
32
+ }
33
+ switch (event.type) {
34
+ case EventNames.PointerDown:
35
+ event.target.setPointerCapture(event.pointerId);
36
+ this._movedSinceStartedAction = false;
37
+ break;
38
+ case EventNames.PointerUp:
39
+ event.target.releasePointerCapture(event.pointerId);
40
+ break;
41
+ }
42
+ if (!event.altKey)
43
+ this._resetPointerEventsForClickThrough();
44
+ if (!currentElement)
45
+ return;
46
+ const currentPoint = designerCanvas.getNormalizedEventCoordinates(event);
47
+ const currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
48
+ if (this._actionType == null) {
49
+ this._initialPoint = currentPoint;
50
+ this._initialOffset = designerCanvas.getNormalizedOffsetInElement(event, currentElement);
51
+ if (event.type == EventNames.PointerDown) {
52
+ this._actionStartedDesignItem = currentDesignItem;
53
+ designerCanvas.snapLines.clearSnaplines();
54
+ if (currentDesignItem !== designerCanvas.rootDesignItem) {
55
+ this._actionType = PointerActionType.Drag;
56
+ }
57
+ else if (currentElement === designerCanvas || currentElement === designerCanvas.rootDesignItem.element || currentElement == null) {
58
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(null);
59
+ this._actionType = PointerActionType.DrawSelection;
60
+ }
61
+ else {
62
+ this._actionType = PointerActionType.DragOrSelect;
63
+ }
64
+ }
65
+ }
66
+ if (event.type === EventNames.PointerMove) {
67
+ this._movedSinceStartedAction = this._movedSinceStartedAction || currentPoint.x != this._initialPoint.x || currentPoint.y != this._initialPoint.y;
68
+ if (this._actionType == PointerActionType.DrawSelection)
69
+ this._actionType = PointerActionType.DrawingSelection;
70
+ }
71
+ if (this._actionType == PointerActionType.DrawSelection || this._actionType == PointerActionType.DrawingSelection) {
72
+ this._pointerActionTypeDrawSelection(designerCanvas, event, currentElement);
73
+ }
74
+ else if (this._actionType == PointerActionType.DragOrSelect || this._actionType == PointerActionType.Drag) {
75
+ this._pointerActionTypeDragOrSelect(designerCanvas, event, currentDesignItem, currentPoint);
76
+ }
77
+ if (event.type == EventNames.PointerUp) {
78
+ designerCanvas.snapLines.clearSnaplines();
79
+ if (this._actionType == PointerActionType.DrawSelection) {
80
+ if (currentDesignItem !== designerCanvas.rootDesignItem)
81
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
82
+ }
83
+ this._actionType = null;
84
+ this._actionStartedDesignItem = null;
85
+ this._movedSinceStartedAction = false;
86
+ this._initialPoint = null;
87
+ }
88
+ this._previousEventName = event.type;
89
+ }
90
+ _pointerActionTypeDrawSelection(designerView, event, currentElement) {
91
+ const drawSelectionTool = designerView.serviceContainer.designerTools.get(NamedTools.DrawSelection);
92
+ if (drawSelectionTool) {
93
+ drawSelectionTool.pointerEventHandler(designerView, event, currentElement);
94
+ }
95
+ }
96
+ _resetPointerEventsForClickThrough() {
97
+ if (!this._clickThroughElements.length)
98
+ return;
99
+ for (const e of this._clickThroughElements) {
100
+ e[0].element.style.pointerEvents = e[1];
101
+ }
102
+ this._clickThroughElements = [];
103
+ }
104
+ _pointerActionTypeDragOrSelect(designerCanvas, event, currentDesignItem, currentPoint) {
105
+ if (event.altKey) {
106
+ if (event.type == EventNames.PointerDown) {
107
+ this._clickThroughElements.push([currentDesignItem, currentDesignItem.element.style.pointerEvents]);
108
+ currentDesignItem.element.style.pointerEvents = 'none';
109
+ }
110
+ let currentElement = designerCanvas.elementFromPoint(event.x, event.y);
111
+ if (DomHelper.getHost(currentElement) !== designerCanvas.overlayLayer)
112
+ currentDesignItem = DesignItem.GetOrCreateDesignItem(currentElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
113
+ }
114
+ else {
115
+ this._resetPointerEventsForClickThrough();
116
+ }
117
+ switch (event.type) {
118
+ case EventNames.PointerDown:
119
+ {
120
+ this._actionStartedDesignItem = currentDesignItem;
121
+ this._moveItemsOffset = { x: 0, y: 0 };
122
+ if (event.shiftKey || event.ctrlKey) {
123
+ const index = designerCanvas.instanceServiceContainer.selectionService.selectedElements.indexOf(currentDesignItem);
124
+ if (index >= 0) {
125
+ let newSelectedList = designerCanvas.instanceServiceContainer.selectionService.selectedElements.slice(0);
126
+ newSelectedList.splice(index, 1);
127
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(newSelectedList);
128
+ }
129
+ else {
130
+ let newSelectedList = designerCanvas.instanceServiceContainer.selectionService.selectedElements.slice(0);
131
+ newSelectedList.push(currentDesignItem);
132
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(newSelectedList);
133
+ }
134
+ }
135
+ else {
136
+ if (designerCanvas.instanceServiceContainer.selectionService.selectedElements.indexOf(currentDesignItem) < 0)
137
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
138
+ }
139
+ if (designerCanvas.alignOnSnap)
140
+ designerCanvas.snapLines.calculateSnaplines(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
141
+ break;
142
+ }
143
+ case EventNames.PointerMove:
144
+ {
145
+ const elementMoved = currentPoint.x != this._initialPoint.x || currentPoint.y != this._initialPoint.y;
146
+ if (this._actionType != PointerActionType.Drag && elementMoved) {
147
+ this._actionType = PointerActionType.Drag;
148
+ }
149
+ if (this._movedSinceStartedAction) {
150
+ const containerStyle = getComputedStyle(this._actionStartedDesignItem.parent.element);
151
+ const currentContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(this._actionStartedDesignItem.parent, containerStyle));
152
+ if (currentContainerService) {
153
+ const dragItem = this._actionStartedDesignItem.parent;
154
+ if (this._dragExtensionItem != dragItem) {
155
+ designerCanvas.extensionManager.removeExtension(this._dragExtensionItem, ExtensionType.ContainerDrag);
156
+ designerCanvas.extensionManager.applyExtension(dragItem, ExtensionType.ContainerDrag);
157
+ this._dragExtensionItem = dragItem;
158
+ }
159
+ else {
160
+ designerCanvas.extensionManager.refreshExtension(dragItem, ExtensionType.ContainerDrag);
161
+ }
162
+ const canLeave = currentContainerService.canLeave(this._actionStartedDesignItem.parent, [this._actionStartedDesignItem]);
163
+ let newContainerElementDesignItem = null;
164
+ let newContainerService = null;
165
+ if (canLeave) {
166
+ //search for containers below mouse cursor.
167
+ //to do this, we need to disable pointer events for each in a loop and search wich element is there
168
+ let backupPEventsMap = new Map();
169
+ let newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
170
+ try {
171
+ checkAgain: while (newContainerElement != null) {
172
+ if (newContainerElement == this._actionStartedDesignItem.parent.element) {
173
+ newContainerElement = null;
174
+ }
175
+ else if (newContainerElement == designerCanvas.rootDesignItem.element) {
176
+ newContainerElementDesignItem = designerCanvas.rootDesignItem;
177
+ const containerStyle = getComputedStyle(newContainerElementDesignItem.element);
178
+ newContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainerElementDesignItem, containerStyle));
179
+ break;
180
+ }
181
+ else if (newContainerElement.getRootNode() !== designerCanvas.shadowRoot || newContainerElement === designerCanvas.overlayLayer || newContainerElement.parentElement === designerCanvas.overlayLayer) {
182
+ backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
183
+ newContainerElement.style.pointerEvents = 'none';
184
+ const old = newContainerElement;
185
+ newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
186
+ if (old === newContainerElement) {
187
+ newContainerElementDesignItem = null;
188
+ newContainerService = null;
189
+ break;
190
+ }
191
+ }
192
+ else if (newContainerElement == this._actionStartedDesignItem.element) {
193
+ backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
194
+ newContainerElement.style.pointerEvents = 'none';
195
+ const old = newContainerElement;
196
+ newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
197
+ if (old === newContainerElement) {
198
+ newContainerElementDesignItem = null;
199
+ newContainerService = null;
200
+ break;
201
+ }
202
+ }
203
+ else {
204
+ //check we don't try to move a item over one of its children...
205
+ let par = newContainerElement.parentElement;
206
+ while (par) {
207
+ if (par == this._actionStartedDesignItem.element) {
208
+ backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
209
+ newContainerElement.style.pointerEvents = 'none';
210
+ const old = newContainerElement;
211
+ newContainerElement = designerCanvas.elementFromPoint(event.x, event.y);
212
+ if (old === newContainerElement)
213
+ break;
214
+ continue checkAgain;
215
+ }
216
+ par = par.parentElement;
217
+ }
218
+ //end check
219
+ newContainerElementDesignItem = DesignItem.GetOrCreateDesignItem(newContainerElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
220
+ const containerStyle = getComputedStyle(newContainerElementDesignItem.element);
221
+ newContainerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(newContainerElementDesignItem, containerStyle));
222
+ if (newContainerService) {
223
+ if (newContainerService.canEnter(newContainerElementDesignItem, [this._actionStartedDesignItem])) {
224
+ break;
225
+ }
226
+ else {
227
+ newContainerElementDesignItem = null;
228
+ newContainerService = null;
229
+ }
230
+ }
231
+ backupPEventsMap.set(newContainerElement, newContainerElement.style.pointerEvents);
232
+ newContainerElement.style.pointerEvents = 'none';
233
+ const newC = designerCanvas.elementFromPoint(event.x, event.y);
234
+ if (newContainerElement === newC) {
235
+ newContainerElement = null;
236
+ break;
237
+ }
238
+ newContainerElement = newC;
239
+ }
240
+ }
241
+ }
242
+ finally {
243
+ for (let e of backupPEventsMap.entries()) {
244
+ e[0].style.pointerEvents = e[1];
245
+ }
246
+ }
247
+ if (newContainerElement != null) { //Check if container is in designer canvas....
248
+ let p = newContainerElement;
249
+ while (p != null) {
250
+ if (p === designerCanvas.rootDesignItem.element)
251
+ break;
252
+ p = p.parentElement;
253
+ }
254
+ if (p == null) {
255
+ newContainerService = null;
256
+ newContainerElement = null;
257
+ }
258
+ }
259
+ //if we found a new enterable container create extensions
260
+ if (newContainerElement != null) {
261
+ const newContainerElementDesignItem = DesignItem.GetOrCreateDesignItem(newContainerElement, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer);
262
+ if (this._dragOverExtensionItem != newContainerElementDesignItem) {
263
+ designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
264
+ designerCanvas.extensionManager.applyExtension(newContainerElementDesignItem, ExtensionType.ContainerDragOver);
265
+ this._dragOverExtensionItem = newContainerElementDesignItem;
266
+ }
267
+ else {
268
+ designerCanvas.extensionManager.refreshExtension(newContainerElementDesignItem, ExtensionType.ContainerDragOver);
269
+ }
270
+ }
271
+ else {
272
+ if (this._dragOverExtensionItem) {
273
+ designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
274
+ this._dragOverExtensionItem = null;
275
+ }
276
+ }
277
+ }
278
+ if (newContainerService && event.altKey) {
279
+ //TODO: all items, fix position
280
+ const oldOffset = currentContainerService.getElementOffset(this._actionStartedDesignItem.parent, this._actionStartedDesignItem);
281
+ const newOffset = newContainerService.getElementOffset(newContainerElementDesignItem, this._actionStartedDesignItem);
282
+ this._moveItemsOffset = { x: newOffset.x - oldOffset.x + this._moveItemsOffset.x, y: newOffset.y - oldOffset.y + this._moveItemsOffset.y };
283
+ currentContainerService.leaveContainer(this._actionStartedDesignItem.parent, [this._actionStartedDesignItem]);
284
+ newContainerElementDesignItem.insertChild(this._actionStartedDesignItem);
285
+ const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
286
+ newContainerService.enterContainer(newContainerElementDesignItem, [this._actionStartedDesignItem]);
287
+ newContainerService.place(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
288
+ }
289
+ else {
290
+ const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
291
+ currentContainerService.place(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
292
+ }
293
+ designerCanvas.extensionManager.refreshExtensions(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
294
+ }
295
+ }
296
+ break;
297
+ }
298
+ case EventNames.PointerUp:
299
+ {
300
+ if (this._actionType == PointerActionType.DragOrSelect) {
301
+ if (this._previousEventName == EventNames.PointerDown && !event.shiftKey && !event.ctrlKey)
302
+ designerCanvas.instanceServiceContainer.selectionService.setSelectedElements([currentDesignItem]);
303
+ return;
304
+ }
305
+ if (this._movedSinceStartedAction) {
306
+ const containerStyle = getComputedStyle(this._actionStartedDesignItem.parent.element);
307
+ let containerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(this._actionStartedDesignItem.parent, containerStyle));
308
+ const cp = { x: currentPoint.x - this._moveItemsOffset.x, y: currentPoint.y - this._moveItemsOffset.y };
309
+ if (containerService) {
310
+ let cg = designerCanvas.rootDesignItem.openGroup("Move Elements", designerCanvas.instanceServiceContainer.selectionService.selectedElements);
311
+ containerService.finishPlace(event, designerCanvas, this._actionStartedDesignItem.parent, this._initialPoint, this._initialOffset, cp, designerCanvas.instanceServiceContainer.selectionService.selectedElements);
312
+ cg.commit();
313
+ }
314
+ designerCanvas.extensionManager.removeExtension(this._dragExtensionItem, ExtensionType.ContainerDrag);
315
+ this._dragExtensionItem = null;
316
+ designerCanvas.extensionManager.removeExtension(this._dragOverExtensionItem, ExtensionType.ContainerDragOver);
317
+ this._dragOverExtensionItem = null;
318
+ this._moveItemsOffset = { x: 0, y: 0 };
319
+ }
320
+ designerCanvas.extensionManager.refreshExtensions(designerCanvas.instanceServiceContainer.selectionService.selectedElements);
321
+ break;
322
+ }
323
+ }
324
+ }
325
+ }