@node-projects/web-component-designer 0.0.35 → 0.0.36

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 (227) hide show
  1. package/README.md +7 -0
  2. package/assets/images/chromeDevtools/LICENSE +27 -0
  3. package/assets/images/chromeDevtools/flex-direction-column-icon.svg +1 -0
  4. package/assets/images/chromeDevtools/flex-direction-row-icon.svg +1 -0
  5. package/assets/images/chromeDevtools/info.txt +2 -0
  6. package/dist/elements/controls/DesignerTabControl.js +93 -88
  7. package/dist/elements/controls/ImageButtonListSelector.js +38 -39
  8. package/dist/elements/controls/ThicknessEditor.js +22 -22
  9. package/dist/elements/documentContainer.js +20 -13
  10. package/dist/elements/helper/CssAttributeParser.js +3 -3
  11. package/dist/elements/helper/CssCombiner.js +1 -1
  12. package/dist/elements/helper/IndentedTextWriter.js +3 -5
  13. package/dist/elements/helper/Screenshot.js +4 -0
  14. package/dist/elements/helper/contextMenu/ContextMenuHelper.js +59 -53
  15. package/dist/elements/helper/w3color.js +15 -17
  16. package/dist/elements/item/DesignItem.js +21 -15
  17. package/dist/elements/services/BaseServiceContainer.js +1 -3
  18. package/dist/elements/services/GlobalContext.js +8 -6
  19. package/dist/elements/services/InstanceServiceContainer.js +1 -4
  20. package/dist/elements/services/ServiceContainer.js +8 -10
  21. package/dist/elements/services/bindingsService/BaseCustomWebcomponentBindingsService.js +1 -1
  22. package/dist/elements/services/bindingsService/SpecialTagsBindingService.js +5 -5
  23. package/dist/elements/services/contentService/ContentService.js +2 -1
  24. package/dist/elements/services/elementsService/JsonFileElementsService.js +14 -10
  25. package/dist/elements/services/elementsService/PreDefinedElementsService.js +6 -4
  26. package/dist/elements/services/htmlParserService/NodeHtmlParserService.js +2 -1
  27. package/dist/elements/services/htmlWriterService/IHtmlWriterOptions.js +3 -0
  28. package/dist/elements/services/placementService/DefaultPlacementService.d.ts +3 -4
  29. package/dist/elements/services/placementService/DefaultPlacementService.js +10 -10
  30. package/dist/elements/services/placementService/FlexBoxPlacementService.d.ts +3 -4
  31. package/dist/elements/services/placementService/FlexBoxPlacementService.js +3 -3
  32. package/dist/elements/services/placementService/GridPlacementService.d.ts +3 -4
  33. package/dist/elements/services/placementService/GridPlacementService.js +3 -3
  34. package/dist/elements/services/placementService/IPlacementService.d.ts +3 -4
  35. package/dist/elements/services/popupService/PopupService.js +3 -1
  36. package/dist/elements/services/propertiesService/propertyEditors/BasePropertyEditor.js +4 -1
  37. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyEditor.js +7 -6
  38. package/dist/elements/services/propertiesService/propertyEditors/JsonPropertyPopupEditor.js +6 -6
  39. package/dist/elements/services/propertiesService/propertyEditors/TextPropertyEditor.js +1 -2
  40. package/dist/elements/services/propertiesService/services/AttributesPropertiesService.js +1 -3
  41. package/dist/elements/services/propertiesService/services/BaseCustomWebComponentPropertiesService.js +1 -4
  42. package/dist/elements/services/propertiesService/services/CommonPropertiesService.js +21 -23
  43. package/dist/elements/services/propertiesService/services/CssPropertiesService.js +186 -185
  44. package/dist/elements/services/propertiesService/services/ListPropertiesService.js +2 -2
  45. package/dist/elements/services/propertiesService/services/Lit2PropertiesService.js +1 -4
  46. package/dist/elements/services/propertiesService/services/LitElementPropertiesService.js +1 -4
  47. package/dist/elements/services/propertiesService/services/NativeElementsPropertiesService.js +72 -75
  48. package/dist/elements/services/propertiesService/services/PolymerPropertiesService.js +1 -4
  49. package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.js +1 -3
  50. package/dist/elements/services/selectionService/SelectionService.js +3 -4
  51. package/dist/elements/services/undoService/ChangeGroup.js +6 -2
  52. package/dist/elements/services/undoService/UndoService.js +3 -5
  53. package/dist/elements/services/undoService/transactionItems/AttributeChangeAction.js +5 -0
  54. package/dist/elements/services/undoService/transactionItems/CssStyleChangeAction.js +5 -0
  55. package/dist/elements/services/undoService/transactionItems/DeleteAction.js +5 -0
  56. package/dist/elements/services/undoService/transactionItems/InsertAction.js +4 -0
  57. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction.js +7 -0
  58. package/dist/elements/services/undoService/transactionItems/PropertyChangeAction.js +5 -0
  59. package/dist/elements/widgets/bindableObjectsBrowser/bindable-objects-browser.js +27 -24
  60. package/dist/elements/widgets/bindings/BindingsEditor.js +6 -6
  61. package/dist/elements/widgets/codeView/code-view-ace.js +12 -7
  62. package/dist/elements/widgets/codeView/code-view-code-mirror.js +18 -13
  63. package/dist/elements/widgets/codeView/code-view-monaco.js +16 -11
  64. package/dist/elements/widgets/demoView/demoView.js +24 -22
  65. package/dist/elements/widgets/designerView/DesignContext.js +1 -3
  66. package/dist/elements/widgets/designerView/IDesignerCanvas.d.ts +1 -2
  67. package/dist/elements/widgets/designerView/Snaplines.js +8 -5
  68. package/dist/elements/widgets/designerView/designerCanvas.d.ts +3 -2
  69. package/dist/elements/widgets/designerView/designerCanvas.js +110 -92
  70. package/dist/elements/widgets/designerView/designerView.js +89 -87
  71. package/dist/elements/widgets/designerView/extensions/AbstractExtension.js +5 -1
  72. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtension.js +2 -0
  73. package/dist/elements/widgets/designerView/extensions/AltToEnterContainerExtensionProvider.js +4 -6
  74. package/dist/elements/widgets/designerView/extensions/CanvasExtension copy.d.ts +10 -0
  75. package/dist/elements/widgets/designerView/extensions/CanvasExtension copy.js +29 -0
  76. package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider copy.d.ts +10 -0
  77. package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider copy.js +15 -0
  78. package/dist/elements/widgets/designerView/extensions/CanvasExtensionProvider.js +3 -5
  79. package/dist/elements/widgets/designerView/extensions/EditText/EditTextExtension.js +11 -8
  80. package/dist/elements/widgets/designerView/extensions/ExtensionManager.js +1 -0
  81. package/dist/elements/widgets/designerView/extensions/GrayOutExtension.js +1 -0
  82. package/dist/elements/widgets/designerView/extensions/GrayOutExtensionProvider.js +3 -5
  83. package/dist/elements/widgets/designerView/extensions/GridExtensionProvider.js +5 -7
  84. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtension.js +1 -0
  85. package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.js +3 -5
  86. package/dist/elements/widgets/designerView/extensions/MouseOverExtension.js +1 -0
  87. package/dist/elements/widgets/designerView/extensions/MouseOverExtensionProvider.js +3 -5
  88. package/dist/elements/widgets/designerView/extensions/PathExtension.js +4 -0
  89. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtension.d.ts +10 -0
  90. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtension.js +29 -0
  91. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtensionProvider copy.d.ts +10 -0
  92. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtensionProvider copy.js +15 -0
  93. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtensionProvider.d.ts +10 -0
  94. package/dist/elements/widgets/designerView/extensions/PermamentCursorExtensionProvider.js +15 -0
  95. package/dist/elements/widgets/designerView/extensions/PositionExtension.js +4 -0
  96. package/dist/elements/widgets/designerView/extensions/PrimarySelectionDefaultExtension.js +2 -0
  97. package/dist/elements/widgets/designerView/extensions/ResizeExtension.js +14 -4
  98. package/dist/elements/widgets/designerView/extensions/ResizeExtensionProvider.js +1 -0
  99. package/dist/elements/widgets/designerView/extensions/RotateExtensionProvider.js +3 -5
  100. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtension.js +1 -0
  101. package/dist/elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js +3 -5
  102. package/dist/elements/widgets/designerView/extensions/TransformOriginExtension.js +3 -0
  103. package/dist/elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js +3 -5
  104. package/dist/elements/widgets/designerView/extensions/contextMenu/MultipleItemsSelectedContextMenu.js +1 -3
  105. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractDesignerPointerExtension.d.ts +22 -0
  106. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractDesignerPointerExtension.js +82 -0
  107. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractExtension.d.ts +22 -0
  108. package/dist/elements/widgets/designerView/extensions/pointerExtensions/AbstractExtension.js +78 -0
  109. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectangleExtension.d.ts +7 -0
  110. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectangleExtension.js +20 -0
  111. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectanglePointerExtension copy.d.ts +7 -0
  112. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectanglePointerExtension copy.js +20 -0
  113. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectanglePointerExtension.d.ts +7 -0
  114. package/dist/elements/widgets/designerView/extensions/pointerExtensions/CursorRectanglePointerExtension.js +20 -0
  115. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerExtension.d.ts +5 -0
  116. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerExtension.js +1 -0
  117. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerExtensionProvider.d.ts +9 -0
  118. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerExtensionProvider.js +1 -0
  119. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtension.d.ts +5 -0
  120. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtension.js +1 -0
  121. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtensionProvider.d.ts +9 -0
  122. package/dist/elements/widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtensionProvider.js +1 -0
  123. package/dist/elements/widgets/designerView/extensions/pointerExtensions/RulerExtension.d.ts +7 -0
  124. package/dist/elements/widgets/designerView/extensions/pointerExtensions/RulerExtension.js +20 -0
  125. package/dist/elements/widgets/designerView/extensions/pointerExtensions/RulerPointerExtension.d.ts +7 -0
  126. package/dist/elements/widgets/designerView/extensions/pointerExtensions/RulerPointerExtension.js +20 -0
  127. package/dist/elements/widgets/designerView/overlay/EditTextOverlay.js +3 -3
  128. package/dist/elements/widgets/designerView/overlayLayerView.js +28 -23
  129. package/dist/elements/widgets/designerView/tools/DrawElementTool.js +5 -1
  130. package/dist/elements/widgets/designerView/tools/DrawPathTool.d.ts +0 -1
  131. package/dist/elements/widgets/designerView/tools/DrawPathTool.js +4 -3
  132. package/dist/elements/widgets/designerView/tools/MagicWandSelectorTool.d.ts +0 -1
  133. package/dist/elements/widgets/designerView/tools/MagicWandSelectorTool.js +4 -5
  134. package/dist/elements/widgets/designerView/tools/PanTool.js +1 -3
  135. package/dist/elements/widgets/designerView/tools/PickColorTool.js +1 -3
  136. package/dist/elements/widgets/designerView/tools/PointerTool.d.ts +2 -1
  137. package/dist/elements/widgets/designerView/tools/PointerTool.js +75 -63
  138. package/dist/elements/widgets/designerView/tools/RectangleSelectorTool.js +11 -10
  139. package/dist/elements/widgets/designerView/tools/TextTool.js +1 -1
  140. package/dist/elements/widgets/designerView/tools/ZoomTool.js +1 -3
  141. package/dist/elements/widgets/miniatureView/html-2-canvas-miniature-view.js +5 -4
  142. package/dist/elements/widgets/paletteView/paletteElements.js +45 -45
  143. package/dist/elements/widgets/paletteView/paletteTreeView.js +53 -51
  144. package/dist/elements/widgets/paletteView/paletteView.js +9 -8
  145. package/dist/elements/widgets/propertyGrid/PropertyGrid.js +24 -19
  146. package/dist/elements/widgets/propertyGrid/PropertyGridPropertyList.js +12 -8
  147. package/dist/elements/widgets/treeView/treeView.js +102 -96
  148. package/dist/elements/widgets/treeView/treeViewExtended.js +72 -70
  149. package/dist/index.d.ts +0 -1
  150. package/package.json +1 -1
  151. package/tsconfig.json +1 -1
  152. package/assets/images/chromeDevtools/accelerometer-back.svg +0 -69
  153. package/assets/images/chromeDevtools/accelerometer-front.svg +0 -28
  154. package/assets/images/chromeDevtools/accessibility-icon.svg +0 -3
  155. package/assets/images/chromeDevtools/add-icon.svg +0 -3
  156. package/assets/images/chromeDevtools/checkboxCheckmark.svg +0 -60
  157. package/assets/images/chromeDevtools/chevrons.svg +0 -62
  158. package/assets/images/chromeDevtools/chromeSelect.svg +0 -1
  159. package/assets/images/chromeDevtools/chromeSelectDark.svg +0 -1
  160. package/assets/images/chromeDevtools/close-icon.svg +0 -5
  161. package/assets/images/chromeDevtools/copy_icon.svg +0 -79
  162. package/assets/images/chromeDevtools/dropdown_7x6_icon.svg +0 -1
  163. package/assets/images/chromeDevtools/elements_panel_icon.svg +0 -1
  164. package/assets/images/chromeDevtools/errorWave.svg +0 -74
  165. package/assets/images/chromeDevtools/error_icon.svg +0 -125
  166. package/assets/images/chromeDevtools/feedback_button_icon.svg +0 -3
  167. package/assets/images/chromeDevtools/help_outline.svg +0 -1
  168. package/assets/images/chromeDevtools/ic_checkmark_16x16.svg +0 -3
  169. package/assets/images/chromeDevtools/ic_command_go_to_line.svg +0 -4
  170. package/assets/images/chromeDevtools/ic_command_go_to_symbol.svg +0 -3
  171. package/assets/images/chromeDevtools/ic_command_help.svg +0 -3
  172. package/assets/images/chromeDevtools/ic_command_open_file.svg +0 -3
  173. package/assets/images/chromeDevtools/ic_command_run_command.svg +0 -3
  174. package/assets/images/chromeDevtools/ic_command_run_snippet.svg +0 -3
  175. package/assets/images/chromeDevtools/ic_delete_filter.svg +0 -1
  176. package/assets/images/chromeDevtools/ic_delete_list.svg +0 -1
  177. package/assets/images/chromeDevtools/ic_dimension_single.svg +0 -4
  178. package/assets/images/chromeDevtools/ic_file_default.svg +0 -3
  179. package/assets/images/chromeDevtools/ic_file_document.svg +0 -3
  180. package/assets/images/chromeDevtools/ic_file_font.svg +0 -3
  181. package/assets/images/chromeDevtools/ic_file_image.svg +0 -3
  182. package/assets/images/chromeDevtools/ic_file_script.svg +0 -3
  183. package/assets/images/chromeDevtools/ic_file_snippet.svg +0 -3
  184. package/assets/images/chromeDevtools/ic_file_stylesheet.svg +0 -3
  185. package/assets/images/chromeDevtools/ic_file_webbundle.svg +0 -5
  186. package/assets/images/chromeDevtools/ic_file_webbundle_inner_request.svg +0 -9
  187. package/assets/images/chromeDevtools/ic_folder_default.svg +0 -3
  188. package/assets/images/chromeDevtools/ic_folder_local.svg +0 -3
  189. package/assets/images/chromeDevtools/ic_folder_network.svg +0 -3
  190. package/assets/images/chromeDevtools/ic_info_black_18dp.svg +0 -1
  191. package/assets/images/chromeDevtools/ic_memory_16x16.svg +0 -6
  192. package/assets/images/chromeDevtools/ic_page_next_16x16_icon.svg +0 -1
  193. package/assets/images/chromeDevtools/ic_page_prev_16x16_icon.svg +0 -1
  194. package/assets/images/chromeDevtools/ic_preview_feature.svg +0 -3
  195. package/assets/images/chromeDevtools/ic_redo_16x16_icon.svg +0 -1
  196. package/assets/images/chromeDevtools/ic_request_response.svg +0 -5
  197. package/assets/images/chromeDevtools/ic_response.svg +0 -4
  198. package/assets/images/chromeDevtools/ic_show_node_16x16.svg +0 -4
  199. package/assets/images/chromeDevtools/ic_suggest_color.svg +0 -6
  200. package/assets/images/chromeDevtools/ic_undo_16x16_icon.svg +0 -1
  201. package/assets/images/chromeDevtools/ic_warning_black_18dp.svg +0 -1
  202. package/assets/images/chromeDevtools/issue-cross-icon.svg +0 -70
  203. package/assets/images/chromeDevtools/issue-exclamation-icon.svg +0 -64
  204. package/assets/images/chromeDevtools/issue-questionmark-icon.svg +0 -82
  205. package/assets/images/chromeDevtools/issue-text-icon.svg +0 -56
  206. package/assets/images/chromeDevtools/largeIcons.svg +0 -1629
  207. package/assets/images/chromeDevtools/lighthouse_logo.svg +0 -158
  208. package/assets/images/chromeDevtools/link_icon.svg +0 -1
  209. package/assets/images/chromeDevtools/mediumIcons.svg +0 -1101
  210. package/assets/images/chromeDevtools/network_conditions_icon.svg +0 -6
  211. package/assets/images/chromeDevtools/network_panel_icon.svg +0 -1
  212. package/assets/images/chromeDevtools/node_search_icon.svg +0 -1
  213. package/assets/images/chromeDevtools/preview_feature_video_thumbnail.svg +0 -92
  214. package/assets/images/chromeDevtools/refresh_12x12_icon.svg +0 -1
  215. package/assets/images/chromeDevtools/resizeDiagonal.svg +0 -1
  216. package/assets/images/chromeDevtools/resizeHorizontal.svg +0 -1
  217. package/assets/images/chromeDevtools/resizeVertical.svg +0 -1
  218. package/assets/images/chromeDevtools/securityIcons.svg +0 -278
  219. package/assets/images/chromeDevtools/settings_14x14_icon.svg +0 -1
  220. package/assets/images/chromeDevtools/smallIcons.svg +0 -1277
  221. package/assets/images/chromeDevtools/sources_panel_icon.svg +0 -1
  222. package/assets/images/chromeDevtools/survey_feedback_icon.svg +0 -1
  223. package/assets/images/chromeDevtools/switcherIcon.svg +0 -57
  224. package/assets/images/chromeDevtools/three_dots_menu_icon.svg +0 -1
  225. package/assets/images/chromeDevtools/trash_bin_icon.svg +0 -1
  226. package/assets/images/chromeDevtools/treeoutlineTriangles.svg +0 -70
  227. package/assets/images/chromeDevtools/warning_icon.svg +0 -83
@@ -3,9 +3,17 @@ import { PaletteElements } from './paletteElements';
3
3
  import { DesignerTabControl } from '../../controls/DesignerTabControl';
4
4
  import { BaseCustomWebComponentLazyAppend, css } from '@node-projects/base-custom-webcomponent';
5
5
  export class PaletteView extends BaseCustomWebComponentLazyAppend {
6
+ selected = 'native';
7
+ _designerTabControl;
8
+ static style = css `
9
+ :host {
10
+ display: flex;
11
+ flex-direction: column;
12
+ flex: 1;
13
+ height: 100%;
14
+ }`;
6
15
  constructor() {
7
16
  super();
8
- this.selected = 'native';
9
17
  this._designerTabControl = new DesignerTabControl();
10
18
  this._designerTabControl.selectedIndex = 0;
11
19
  this.shadowRoot.appendChild(this._designerTabControl);
@@ -20,11 +28,4 @@ export class PaletteView extends BaseCustomWebComponentLazyAppend {
20
28
  }
21
29
  }
22
30
  }
23
- PaletteView.style = css `
24
- :host {
25
- display: flex;
26
- flex-direction: column;
27
- flex: 1;
28
- height: 100%;
29
- }`;
30
31
  customElements.define('node-projects-palette-view', PaletteView);
@@ -5,6 +5,30 @@ import { CssPropertiesService } from '../../services/propertiesService/services/
5
5
  import { CommonPropertiesService } from '../../services/propertiesService/services/CommonPropertiesService';
6
6
  import { AttributesPropertiesService } from '../../services/propertiesService/services/AttributesPropertiesService';
7
7
  export class PropertyGrid extends BaseCustomWebComponentLazyAppend {
8
+ _serviceContainer;
9
+ _designerTabControl;
10
+ _selectedItems;
11
+ _propertyGridPropertyLists;
12
+ _itemsObserver;
13
+ static style = css `
14
+ :host {
15
+ display: block;
16
+ height: 100%;
17
+ user-select: none;
18
+ }
19
+ iron-pages {
20
+ overflow: hidden;
21
+ height: 250px;
22
+ background: var(--medium-grey, #2f3545);
23
+ color: white;
24
+ }
25
+ button:hover {
26
+ box-shadow: inset 0 3px 0 var(--light-grey);
27
+ }
28
+ button:focus {
29
+ box-shadow: inset 0 3px 0 var(--highlight-pink, #e91e63);
30
+ }
31
+ `;
8
32
  constructor() {
9
33
  super();
10
34
  this._designerTabControl = new DesignerTabControl();
@@ -116,23 +140,4 @@ export class PropertyGrid extends BaseCustomWebComponentLazyAppend {
116
140
  this._itemsObserver.observe(this._selectedItems[0].element, { attributes: true, childList: false, characterData: false });
117
141
  }
118
142
  }
119
- PropertyGrid.style = css `
120
- :host {
121
- display: block;
122
- height: 100%;
123
- user-select: none;
124
- }
125
- iron-pages {
126
- overflow: hidden;
127
- height: 250px;
128
- background: var(--medium-grey, #2f3545);
129
- color: white;
130
- }
131
- button:hover {
132
- box-shadow: inset 0 3px 0 var(--light-grey);
133
- }
134
- button:focus {
135
- box-shadow: inset 0 3px 0 var(--highlight-pink, #e91e63);
136
- }
137
- `;
138
143
  customElements.define('node-projects-property-grid', PropertyGrid);
@@ -2,14 +2,11 @@ import { BaseCustomWebComponentLazyAppend, css, DomHelper } from '@node-projects
2
2
  import { ContextMenuHelper } from '../../helper/contextMenu/ContextMenuHelper';
3
3
  import { ValueType } from '../../services/propertiesService/ValueType';
4
4
  export class PropertyGridPropertyList extends BaseCustomWebComponentLazyAppend {
5
- constructor(serviceContainer) {
6
- super();
7
- this._propertyMap = new Map();
8
- this._serviceContainer = serviceContainer;
9
- this._div = document.createElement("div");
10
- this._div.className = "content-wrapper";
11
- this.shadowRoot.appendChild(this._div);
12
- }
5
+ _div;
6
+ _propertyMap = new Map();
7
+ _serviceContainer;
8
+ _propertiesService;
9
+ _designItems;
13
10
  static get style() {
14
11
  return css `
15
12
  :host{
@@ -79,6 +76,13 @@ export class PropertyGridPropertyList extends BaseCustomWebComponentLazyAppend {
79
76
  }
80
77
  `;
81
78
  }
79
+ constructor(serviceContainer) {
80
+ super();
81
+ this._serviceContainer = serviceContainer;
82
+ this._div = document.createElement("div");
83
+ this._div.className = "content-wrapper";
84
+ this.shadowRoot.appendChild(this._div);
85
+ }
82
86
  setPropertiesService(propertiesService) {
83
87
  this._propertiesService = propertiesService;
84
88
  DomHelper.removeAllChildnodes(this._div);
@@ -1,6 +1,108 @@
1
1
  import { BaseCustomWebComponentLazyAppend, css } from '@node-projects/base-custom-webcomponent';
2
2
  import { DesignItem } from '../../item/DesignItem';
3
3
  export class TreeView extends BaseCustomWebComponentLazyAppend {
4
+ _items;
5
+ _index;
6
+ _previouslySelected;
7
+ _treeDiv;
8
+ _mapElementTreeitem;
9
+ _rootItem;
10
+ //TODO, buuton so key events can be transfered to designer Cnvas (so you can move controls with keys)
11
+ static style = css `
12
+ :host {
13
+ --horz-margin: 20px;
14
+ --vert-margin: 0px;
15
+ --horz-shift: calc(var(--horz-margin) / 2); /* typically */
16
+ --vert-shift: 12px;
17
+
18
+ display: inline-block;
19
+ position: relative;
20
+ width: 100%;
21
+ height: 100%;
22
+ background: var(--dark-grey, #232733);
23
+ overflow-y: auto;
24
+ }
25
+ button {
26
+ border: none;
27
+ font-size: 13px;
28
+ display: block;
29
+ padding: 4px 0;
30
+ cursor: pointer;
31
+ width: 100%;
32
+ text-align: left;
33
+ display: inline-block;
34
+ margin: 0;
35
+ background: var(--dark-grey, #232733);
36
+ position: relative;
37
+ color: white;
38
+ }
39
+ button:hover, button:focus {
40
+ background: var(--light-grey, #383f52);
41
+ }
42
+ span {
43
+ margin: 4px;
44
+ }
45
+ .id {
46
+ font-style: italic;
47
+ color: var(--highlight-pink, #e91e63);
48
+ }
49
+ .selected {
50
+ background: var(--light-grey, #383f52);
51
+ outline: none;
52
+ }
53
+
54
+ li, ul {
55
+ margin: 0;
56
+ padding: 0;
57
+ }
58
+ .tree ul {
59
+ margin-left: var(--horz-margin);
60
+ }
61
+ .tree li {
62
+ list-style-type: none;
63
+ margin-top: var(--vert-margin);
64
+ margin-bottom: var(--vert-margin);
65
+ position: relative;
66
+ }
67
+
68
+ /* up connector */
69
+ .tree li::before {
70
+ content: "";
71
+ position: absolute;
72
+ top: calc(0px - var(--vert-margin));
73
+ left: calc(var(--horz-shift) - var(--horz-margin));
74
+ width: calc(var(--horz-margin) - var(--horz-shift));
75
+ height: calc(var(--vert-shift) + var(--vert-margin));
76
+ border-left: 1px solid #ccc;
77
+ border-bottom: 1px solid #ccc;
78
+ border-radius: 0;
79
+ }
80
+
81
+ /* down connector */
82
+ .tree li::after {
83
+ position: absolute;
84
+ content: "";
85
+ top: var(--vert-shift);
86
+ left: calc(var(--horz-shift) - var(--horz-margin));
87
+ width: calc(var(--horz-margin) - var(--horz-shift));
88
+ height: calc(100% - var(--vert-shift));
89
+ border-left: 1px solid #ccc;
90
+ border-top: 1px solid #ccc;
91
+ border-radius: 0;
92
+ }
93
+
94
+ /* do not draw: up connector of first root item */
95
+ ul.tree>li:first-child::before { display:none; }
96
+
97
+ /* do not draw: down connector of last item */
98
+ .tree li:last-child::after { display:none; }
99
+
100
+ /* draw rounded: down connector of first root item */
101
+ ul.tree>li:first-child::after { border-radius: 5px 0 0 0; }
102
+
103
+ /* draw rounded: up connector of last item */
104
+ .tree li:last-child:before { border-radius: 0 0 0 5px; }
105
+ `;
4
106
  constructor() {
5
107
  super();
6
108
  this._treeDiv = document.createElement('div');
@@ -122,100 +224,4 @@ export class TreeView extends BaseCustomWebComponentLazyAppend {
122
224
  }
123
225
  }
124
226
  }
125
- //TODO, buuton so key events can be transfered to designer Cnvas (so you can move controls with keys)
126
- TreeView.style = css `
127
- :host {
128
- --horz-margin: 20px;
129
- --vert-margin: 0px;
130
- --horz-shift: calc(var(--horz-margin) / 2); /* typically */
131
- --vert-shift: 12px;
132
-
133
- display: inline-block;
134
- position: relative;
135
- width: 100%;
136
- height: 100%;
137
- background: var(--dark-grey, #232733);
138
- overflow-y: auto;
139
- }
140
- button {
141
- border: none;
142
- font-size: 13px;
143
- display: block;
144
- padding: 4px 0;
145
- cursor: pointer;
146
- width: 100%;
147
- text-align: left;
148
- display: inline-block;
149
- margin: 0;
150
- background: var(--dark-grey, #232733);
151
- position: relative;
152
- color: white;
153
- }
154
- button:hover, button:focus {
155
- background: var(--light-grey, #383f52);
156
- }
157
- span {
158
- margin: 4px;
159
- }
160
- .id {
161
- font-style: italic;
162
- color: var(--highlight-pink, #e91e63);
163
- }
164
- .selected {
165
- background: var(--light-grey, #383f52);
166
- outline: none;
167
- }
168
-
169
- li, ul {
170
- margin: 0;
171
- padding: 0;
172
- }
173
- .tree ul {
174
- margin-left: var(--horz-margin);
175
- }
176
- .tree li {
177
- list-style-type: none;
178
- margin-top: var(--vert-margin);
179
- margin-bottom: var(--vert-margin);
180
- position: relative;
181
- }
182
-
183
- /* up connector */
184
- .tree li::before {
185
- content: "";
186
- position: absolute;
187
- top: calc(0px - var(--vert-margin));
188
- left: calc(var(--horz-shift) - var(--horz-margin));
189
- width: calc(var(--horz-margin) - var(--horz-shift));
190
- height: calc(var(--vert-shift) + var(--vert-margin));
191
- border-left: 1px solid #ccc;
192
- border-bottom: 1px solid #ccc;
193
- border-radius: 0;
194
- }
195
-
196
- /* down connector */
197
- .tree li::after {
198
- position: absolute;
199
- content: "";
200
- top: var(--vert-shift);
201
- left: calc(var(--horz-shift) - var(--horz-margin));
202
- width: calc(var(--horz-margin) - var(--horz-shift));
203
- height: calc(100% - var(--vert-shift));
204
- border-left: 1px solid #ccc;
205
- border-top: 1px solid #ccc;
206
- border-radius: 0;
207
- }
208
-
209
- /* do not draw: up connector of first root item */
210
- ul.tree>li:first-child::before { display:none; }
211
-
212
- /* do not draw: down connector of last item */
213
- .tree li:last-child::after { display:none; }
214
-
215
- /* draw rounded: down connector of first root item */
216
- ul.tree>li:first-child::after { border-radius: 5px 0 0 0; }
217
-
218
- /* draw rounded: up connector of last item */
219
- .tree li:last-child:before { border-radius: 0 0 0 5px; }
220
- `;
221
227
  customElements.define('node-projects-tree-view', TreeView);
@@ -2,6 +2,77 @@ import { css, html, BaseCustomWebComponentConstructorAppend } from '@node-projec
2
2
  import { NodeType } from '../../item/NodeType';
3
3
  import { assetsPath } from '../../../Constants';
4
4
  export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
5
+ _treeDiv;
6
+ _tree;
7
+ _filter;
8
+ static style = css `
9
+ * {
10
+ touch-action: none;
11
+ }
12
+
13
+ span.drag-source {
14
+ border: 1px solid grey;
15
+ border-radius: 3px;
16
+ padding: 2px;
17
+ background-color: silver;
18
+ }
19
+
20
+ span.fancytree-node.fancytree-drag-source {
21
+ outline: 1px dotted grey;
22
+ }
23
+ span.fancytree-node.fancytree-drop-accept {
24
+ outline: 1px dotted green;
25
+ }
26
+ span.fancytree-node.fancytree-drop-reject {
27
+ outline: 1px dotted red;
28
+ }
29
+ #tree ul {
30
+ border: none;
31
+ }
32
+ #tree ul:focus {
33
+ outline: none;
34
+ }
35
+ span.fancytree-title {
36
+ align-items: center;
37
+ flex-direction: row;
38
+ display: inline-flex;
39
+ }
40
+ td {
41
+ white-space: nowrap;
42
+ }
43
+ td:nth-child(n+2) {
44
+ text-align: center;
45
+ }
46
+ td > img {
47
+ vertical-align: middle;
48
+ }
49
+
50
+ table.fancytree-ext-table tbody tr.fancytree-selected {
51
+ background-color: #bebebe;
52
+ }
53
+ `;
54
+ static template = html `
55
+ <div style="height: 100%;">
56
+ <input id="input" style="width: 100%; height:21px;" placeholder="Filter..." autocomplete="off">
57
+ <div style="height: calc(100% - 23px); overflow: auto;">
58
+ <table id="treetable" style="min-width: 100%;">
59
+ <colgroup>
60
+ <col width="*">
61
+ <col width="25px">
62
+ <col width="25px">
63
+ <col width="25px">
64
+ </colgroup>
65
+ <thead style="display: none;">
66
+ <tr>
67
+ <th></th>
68
+ <th></th>
69
+ <th></th>
70
+ <th></th>
71
+ </tr>
72
+ </thead>
73
+ </table>
74
+ </div>
75
+ </div>`;
5
76
  constructor() {
6
77
  super();
7
78
  let externalCss = document.createElement('style');
@@ -260,7 +331,6 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
260
331
  this._tree.getRootNode().updateCounters();
261
332
  }
262
333
  _getChildren(item, currentNode) {
263
- var _a;
264
334
  if (currentNode == null) {
265
335
  currentNode = this._tree.getRootNode();
266
336
  }
@@ -271,7 +341,7 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
271
341
  ref: item
272
342
  });
273
343
  for (let i of item.children()) {
274
- if (i.nodeType !== NodeType.TextNode || ((_a = i.content) === null || _a === void 0 ? void 0 : _a.trim())) {
344
+ if (i.nodeType !== NodeType.TextNode || i.content?.trim()) {
275
345
  this._getChildren(i, newNode);
276
346
  }
277
347
  }
@@ -290,72 +360,4 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
290
360
  }
291
361
  }
292
362
  }
293
- TreeViewExtended.style = css `
294
- * {
295
- touch-action: none;
296
- }
297
-
298
- span.drag-source {
299
- border: 1px solid grey;
300
- border-radius: 3px;
301
- padding: 2px;
302
- background-color: silver;
303
- }
304
-
305
- span.fancytree-node.fancytree-drag-source {
306
- outline: 1px dotted grey;
307
- }
308
- span.fancytree-node.fancytree-drop-accept {
309
- outline: 1px dotted green;
310
- }
311
- span.fancytree-node.fancytree-drop-reject {
312
- outline: 1px dotted red;
313
- }
314
- #tree ul {
315
- border: none;
316
- }
317
- #tree ul:focus {
318
- outline: none;
319
- }
320
- span.fancytree-title {
321
- align-items: center;
322
- flex-direction: row;
323
- display: inline-flex;
324
- }
325
- td {
326
- white-space: nowrap;
327
- }
328
- td:nth-child(n+2) {
329
- text-align: center;
330
- }
331
- td > img {
332
- vertical-align: middle;
333
- }
334
-
335
- table.fancytree-ext-table tbody tr.fancytree-selected {
336
- background-color: #bebebe;
337
- }
338
- `;
339
- TreeViewExtended.template = html `
340
- <div style="height: 100%;">
341
- <input id="input" style="width: 100%; height:21px;" placeholder="Filter..." autocomplete="off">
342
- <div style="height: calc(100% - 23px); overflow: auto;">
343
- <table id="treetable" style="min-width: 100%;">
344
- <colgroup>
345
- <col width="*">
346
- <col width="25px">
347
- <col width="25px">
348
- <col width="25px">
349
- </colgroup>
350
- <thead style="display: none;">
351
- <tr>
352
- <th></th>
353
- <th></th>
354
- <th></th>
355
- <th></th>
356
- </tr>
357
- </thead>
358
- </table>
359
- </div>
360
- </div>`;
361
363
  customElements.define('node-projects-tree-view-extended', TreeViewExtended);
package/dist/index.d.ts CHANGED
@@ -150,7 +150,6 @@ export * from "./elements/documentContainer.js";
150
150
  export * from "./enums/EventNames.js";
151
151
  export * from "./enums/PointerActionType.js";
152
152
  export type { IActivateable } from "./interfaces/IActivateable.js";
153
- export type { IDesignerMousePoint } from "./interfaces/IDesignerMousePoint.js";
154
153
  export type { IDisposable } from "./interfaces/IDisposable.js";
155
154
  export type { IPoint } from "./interfaces/IPoint.js";
156
155
  export type { IRect } from "./interfaces/IRect.js";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "description": "A UI designer for Polymer apps",
3
3
  "name": "@node-projects/web-component-designer",
4
- "version": "0.0.35",
4
+ "version": "0.0.36",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "author": "",
package/tsconfig.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  /* Basic Options */
4
- "target": "ES2017", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
4
+ "target": "esnext", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
5
5
  "module": "esnext", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
6
6
  // "lib": [], /* Specify library files to be included in the compilation. */
7
7
  "allowJs": true, /* Allow javascript files to be compiled. */
@@ -1,69 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <svg
3
- xmlns:dc="http://purl.org/dc/elements/1.1/"
4
- xmlns:cc="http://creativecommons.org/ns#"
5
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
- xmlns:svg="http://www.w3.org/2000/svg"
7
- xmlns="http://www.w3.org/2000/svg"
8
- viewBox="0 0 770.00001 1580"
9
- version="1.1"
10
- width="770"
11
- height="1580"
12
- id="svg11071">
13
- <defs
14
- id="defs3775" />
15
- <metadata
16
- id="metadata11076">
17
- <rdf:RDF>
18
- <cc:Work
19
- rdf:about="">
20
- <dc:format>image/svg+xml</dc:format>
21
- <dc:type
22
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23
- <dc:title></dc:title>
24
- </cc:Work>
25
- </rdf:RDF>
26
- </metadata>
27
- <g
28
- transform="matrix(-1,0,0,1,770.5,0)"
29
- id="layer3">
30
- <path
31
- style="fill:none;stroke:#ff8800;stroke-width:9"
32
- d="M 766,366 V 466"
33
- id="path11635" />
34
- <path
35
- style="fill:none;stroke:#888888;stroke-width:9"
36
- d="M 766,768 V 568"
37
- id="path11637" />
38
- <g
39
- style="fill-rule:evenodd"
40
- id="g3764">
41
- <rect
42
- style="fill:#222222"
43
- x="0"
44
- y="0"
45
- width="767"
46
- height="1580"
47
- ry="80"
48
- rx="80"
49
- id="rect11633" />
50
- </g>
51
- <g
52
- style="fill:#ffffff;fill-rule:evenodd"
53
- id="g3769">
54
- <rect
55
- style="fill-opacity:0.13332998"
56
- x="273.5"
57
- y="1526"
58
- width="220"
59
- height="15"
60
- ry="5"
61
- rx="5"
62
- id="rect11707" />
63
- <path
64
- style="fill-opacity:0.86667002"
65
- d="M 70.36319,6.9493575 C 28.332124,5.755102 4.8083241,47.982906 4.8378685,83.222978 L 6.032124,1507.7128 c 0.025949,30.952 32.037776,68.2787 64.633409,68.2161 l 622.086167,-1.1942 c 30.87325,-0.059 68.21618,-37.2632 68.21618,-64.6334 V 76.057445 c 0,-31.282766 -24.68851,-66.7195765 -63.13681,-70.302343 C 456.89848,4.61017 269.72229,6.9493575 70.36319,6.9493575 Z"
66
- id="path11722" />
67
- </g>
68
- </g>
69
- </svg>
@@ -1,28 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
- <svg id="svg11071" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="1580" width="770" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 770.00001 1580">
4
- <metadata id="metadata11076">
5
- <rdf:RDF>
6
- <cc:Work rdf:about="">
7
- <dc:format>image/svg+xml</dc:format>
8
- <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
9
- <dc:title/>
10
- </cc:Work>
11
- </rdf:RDF>
12
- </metadata>
13
- <g id="layer3">
14
- <path id="path11635" d="m766 366v100" stroke="#f80" stroke-width="9" fill="none"/>
15
- <path id="path11637" d="m766 768v-200" stroke="#888" stroke-width="9" fill="none"/>
16
- <g fill-rule="evenodd">
17
- <rect id="rect11633" rx="80" ry="80" height="1580" width="767" y="0" x="0" fill="#222"/>
18
- <rect id="rect11061" fill-opacity=".13333" rx="5" ry="5" height="18" width="80" y="80" x="343.5" fill="#fff"/>
19
- <circle id="path11063" cx="459" fill-opacity=".26667" cy="76.25" r="15" fill="#00f"/>
20
- <circle id="path11069" cx="297.25" fill-opacity=".26667" cy="74" r="17.5" fill="#00f"/>
21
- </g>
22
- <g fill-rule="evenodd" fill="#fff">
23
- <rect id="rect11705" fill-opacity=".13333" rx="10" ry="10" height="25" width="50" y="34" x="358.5"/>
24
- <rect id="rect11707" fill-opacity=".13333" rx="5" ry="5" height="15" width="220" y="1526" x="273.5"/>
25
- <path id="path11722" d="m83.5 38c-27.7 0-50 22.3-50 50v1360c0 16.62 13.38 30 30 30h640c16.62 0 30-13.38 30-30v-1360c0-27.7-22.3-50-50-50h-90-50c-19.39 0-35 15.61-35 35v4c0 24.93-20.07 45-45 45h-160c-24.93 0-45-20.07-45-45v-4c0-19.39-15.61-35-35-35h-70z" fill-opacity=".86667"/>
26
- </g>
27
- </g>
28
- </svg>
@@ -1,3 +0,0 @@
1
- <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M13.6667 3.99999C11.9267 4.46666 9.88667 4.66666 8 4.66666C6.11333 4.66666 4.07333 4.46666 2.33333 3.99999L2 5.33333C3.24 5.66666 4.66667 5.88666 6 5.99999V14.6667H7.33333V10.6667H8.66667V14.6667H10V5.99999C11.3333 5.88666 12.76 5.66666 14 5.33333L13.6667 3.99999ZM8 3.99999C8.73333 3.99999 9.33333 3.39999 9.33333 2.66666C9.33333 1.93333 8.73333 1.33333 8 1.33333C7.26667 1.33333 6.66667 1.93333 6.66667 2.66666C6.66667 3.39999 7.26667 3.99999 8 3.99999Z" fill="#202124"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="139.004 171.164 10 10" width="10" height="10">
2
- <path d="M 144.771 171.164 L 143.237 171.164 L 143.237 175.397 L 139.004 175.397 L 139.004 176.931 L 143.237 176.931 L 143.237 181.164 L 144.771 181.164 L 144.771 176.931 L 149.004 176.931 L 149.004 175.397 L 144.771 175.397 Z"></path>
3
- </svg>