@node-projects/web-component-designer 0.0.73 → 0.0.77

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 (59) hide show
  1. package/README.md +2 -2
  2. package/dist/elements/documentContainer.d.ts +3 -0
  3. package/dist/elements/documentContainer.js +11 -1
  4. package/dist/elements/helper/ElementHelper.d.ts +1 -0
  5. package/dist/elements/helper/ElementHelper.js +3 -0
  6. package/dist/elements/helper/IndentedTextWriter.d.ts +1 -0
  7. package/dist/elements/helper/IndentedTextWriter.js +3 -0
  8. package/dist/elements/services/BaseServiceContainer.d.ts +1 -0
  9. package/dist/elements/services/BaseServiceContainer.js +7 -0
  10. package/dist/elements/services/demoProviderService/DemoProviderService.js +1 -1
  11. package/dist/elements/services/elementsService/IElementDefinition.d.ts +2 -0
  12. package/dist/elements/services/elementsService/IElementsJson.d.ts +1 -0
  13. package/dist/elements/services/htmlWriterService/HtmlWriterService copy.d.ts +12 -0
  14. package/dist/elements/services/htmlWriterService/HtmlWriterService copy.js +103 -0
  15. package/dist/elements/services/htmlWriterService/HtmlWriterService.js +27 -10
  16. package/dist/elements/services/htmlWriterService/LitElementWriterService.d.ts +12 -0
  17. package/dist/elements/services/htmlWriterService/LitElementWriterService.js +107 -0
  18. package/dist/elements/services/instanceService/DefaultInstanceService.js +1 -1
  19. package/dist/elements/services/manifestLoaders/WebcomponentManifestParserService.d.ts +26 -0
  20. package/dist/elements/services/manifestLoaders/WebcomponentManifestParserService.js +69 -0
  21. package/dist/elements/services/manifestParsers/WebcomponentManifestParserService.d.ts +23 -0
  22. package/dist/elements/services/manifestParsers/WebcomponentManifestParserService.js +80 -0
  23. package/dist/elements/services/placementService/SnaplinesProviderService.d.ts +2 -0
  24. package/dist/elements/services/placementService/SnaplinesProviderService.js +10 -0
  25. package/dist/elements/services/propertiesService/DefaultEditorTypesService.js +0 -1
  26. package/dist/elements/services/propertiesService/IPropertiesService.d.ts +0 -1
  27. package/dist/elements/services/propertiesService/IProperty.d.ts +5 -1
  28. package/dist/elements/services/propertiesService/PropertyType.d.ts +6 -0
  29. package/dist/elements/services/propertiesService/PropertyType.js +7 -0
  30. package/dist/elements/services/propertiesService/services/AbstractBasePropertiesService.js +7 -6
  31. package/dist/elements/services/propertiesService/services/AttributesPropertiesService.js +3 -2
  32. package/dist/elements/services/propertiesService/services/CommonPropertiesService.js +11 -4
  33. package/dist/elements/services/propertiesService/services/CssPropertiesService.js +81 -41
  34. package/dist/elements/services/propertiesService/services/IJsonPropertyDefinition.d.ts +4 -0
  35. package/dist/elements/services/propertiesService/services/ListPropertiesService.js +5 -1
  36. package/dist/elements/services/propertiesService/services/Lit2PropertiesService.js +7 -6
  37. package/dist/elements/services/propertiesService/services/NativeElementsPropertiesService.js +25 -12
  38. package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.d.ts +1 -2
  39. package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.js +1 -1
  40. package/dist/elements/services/webcomponentManifestParserService/WebcomponentManifestParserService.1.d.ts +0 -0
  41. package/dist/elements/services/webcomponentManifestParserService/WebcomponentManifestParserService.1.js +1 -0
  42. package/dist/elements/services/webcomponentManifestParserService/webcomponentManifestParserService.d.ts +26 -0
  43. package/dist/elements/services/webcomponentManifestParserService/webcomponentManifestParserService.js +69 -0
  44. package/dist/elements/widgets/bindableObjectsBrowser/bindable-objects-browser.js +2 -3
  45. package/dist/elements/widgets/codeView/code-view-code-mirror.js +6 -7
  46. package/dist/elements/widgets/codeView/code-view-monaco.js +3 -1
  47. package/dist/elements/widgets/designerView/designerCanvas.js +6 -0
  48. package/dist/elements/widgets/paletteView/paletteTreeView.js +15 -11
  49. package/dist/elements/widgets/paletteView/paletteView.js +10 -5
  50. package/dist/elements/widgets/treeView/treeViewExtended.js +2 -8
  51. package/dist/index.d.ts +4 -0
  52. package/dist/index.js +3 -0
  53. package/dist/interfaces/ICommandHandler.d.ts +5 -0
  54. package/dist/interfaces/ICommandHandler.js +1 -0
  55. package/package.json +2 -1
  56. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction copy.d.ts +0 -16
  57. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction copy.js +0 -32
  58. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction.d.ts +0 -16
  59. package/dist/elements/services/undoService/transactionItems/MoveElementInDomAction.js +0 -31
@@ -1,4 +1,5 @@
1
1
  import { CommonPropertiesService } from "./CommonPropertiesService";
2
+ import { PropertyType } from '../PropertyType';
2
3
  export class NativeElementsPropertiesService extends CommonPropertiesService {
3
4
  //@ts-ignore
4
5
  inputProperties = [
@@ -7,23 +8,28 @@ export class NativeElementsPropertiesService extends CommonPropertiesService {
7
8
  type: "list",
8
9
  values: ["text", "number", "button", "checkbox", "color", "date", "datetime-local", "email", "file", "hidden", "image", "month", "password", "radio", "range", "reset", "search", "submit", "tel", "time", "url", "week"],
9
10
  service: this,
10
- defaultValue: "text"
11
+ defaultValue: "text",
12
+ propertyType: PropertyType.propertyAndAttribute
11
13
  }, {
12
14
  name: "value",
13
15
  type: "string",
14
- service: this
16
+ service: this,
17
+ propertyType: PropertyType.propertyAndAttribute
15
18
  }, {
16
19
  name: "checked",
17
20
  type: "boolean",
18
- service: this
21
+ service: this,
22
+ propertyType: PropertyType.propertyAndAttribute
19
23
  }, {
20
24
  name: "min",
21
25
  type: "number",
22
- service: this
26
+ service: this,
27
+ propertyType: PropertyType.propertyAndAttribute
23
28
  }, {
24
29
  name: "max",
25
30
  type: "number",
26
- service: this
31
+ service: this,
32
+ propertyType: PropertyType.propertyAndAttribute
27
33
  }
28
34
  ];
29
35
  buttonProperties = [
@@ -32,43 +38,50 @@ export class NativeElementsPropertiesService extends CommonPropertiesService {
32
38
  type: "list",
33
39
  values: ["button", "submit", "reset"],
34
40
  service: this,
35
- defaultValue: "button"
41
+ defaultValue: "button",
42
+ propertyType: PropertyType.propertyAndAttribute
36
43
  }, {
37
44
  name: "value",
38
45
  type: "string",
39
- service: this
46
+ service: this,
47
+ propertyType: PropertyType.propertyAndAttribute
40
48
  }, {
41
49
  name: "disabled",
42
50
  type: "boolean",
43
- service: this
51
+ service: this,
52
+ propertyType: PropertyType.propertyAndAttribute
44
53
  }
45
54
  ];
46
55
  anchorProperties = [
47
56
  {
48
57
  name: "href",
49
58
  type: "string",
50
- service: this
59
+ service: this,
60
+ propertyType: PropertyType.propertyAndAttribute
51
61
  }
52
62
  ];
53
63
  divProperties = [
54
64
  {
55
65
  name: "title",
56
66
  type: "string",
57
- service: this
67
+ service: this,
68
+ propertyType: PropertyType.propertyAndAttribute
58
69
  }
59
70
  ];
60
71
  imgProperties = [
61
72
  {
62
73
  name: "src",
63
74
  type: "string",
64
- service: this
75
+ service: this,
76
+ propertyType: PropertyType.propertyAndAttribute
65
77
  }
66
78
  ];
67
79
  iframeProperties = [
68
80
  {
69
81
  name: "src",
70
82
  type: "string",
71
- service: this
83
+ service: this,
84
+ propertyType: PropertyType.propertyAndAttribute
72
85
  }
73
86
  ];
74
87
  name = "native";
@@ -3,8 +3,7 @@ import { IProperty } from '../IProperty';
3
3
  import { IDesignItem } from '../../../item/IDesignItem';
4
4
  import { ValueType } from "../ValueType";
5
5
  import { BindingTarget } from "../../../item/BindingTarget";
6
- export declare class UnkownElementPropertiesService implements IPropertiesService {
7
- readonly name: string;
6
+ export declare abstract class UnkownElementPropertiesService implements IPropertiesService {
8
7
  isHandledElement(designItem: IDesignItem): boolean;
9
8
  protected _notifyChangedProperty(designItem: IDesignItem, property: IProperty, value: any): void;
10
9
  getProperty(designItem: IDesignItem, name: string): IProperty;
@@ -1,8 +1,8 @@
1
1
  import { ValueType } from "../ValueType";
2
2
  import { PropertiesHelper } from './PropertiesHelper';
3
3
  import { BindingTarget } from "../../../item/BindingTarget";
4
+ //@ts-ignore
4
5
  export class UnkownElementPropertiesService {
5
- name = "unkown";
6
6
  isHandledElement(designItem) {
7
7
  return true;
8
8
  }
@@ -0,0 +1,26 @@
1
+ import { IDesignItem } from "../../..";
2
+ import { BindingTarget } from "../../item/BindingTarget";
3
+ import { IElementDefinition } from "../elementsService/IElementDefinition";
4
+ import { IElementsService } from "../elementsService/IElementsService";
5
+ import { IPropertiesService } from "../propertiesService/IPropertiesService";
6
+ import { IProperty } from "../propertiesService/IProperty";
7
+ import { ValueType } from "../propertiesService/ValueType";
8
+ export declare class WebcomponentManifestParserService implements IElementsService, IPropertiesService {
9
+ private _name;
10
+ get name(): string;
11
+ private _packageData;
12
+ private _elementList;
13
+ private _resolveStored;
14
+ private _rejectStored;
15
+ constructor(name: string, file: string);
16
+ getElements(): Promise<IElementDefinition[]>;
17
+ isHandledElement(designItem: IDesignItem): boolean;
18
+ getProperties(designItem: IDesignItem): IProperty[];
19
+ getProperty(designItem: IDesignItem, name: string): IProperty;
20
+ getPropertyTarget(designItem: IDesignItem, property: IProperty): BindingTarget;
21
+ setValue(designItems: IDesignItem[], property: IProperty, value: any): void;
22
+ clearValue(designItems: IDesignItem[], property: IProperty): void;
23
+ isSet(designItems: IDesignItem[], property: IProperty): ValueType;
24
+ getValue(designItems: IDesignItem[], property: IProperty): void;
25
+ getUnsetValue(designItems: IDesignItem[], property: IProperty): void;
26
+ }
@@ -0,0 +1,69 @@
1
+ export class WebcomponentManifestParserService {
2
+ _name;
3
+ get name() { return this._name; }
4
+ _packageData;
5
+ _elementList;
6
+ _resolveStored;
7
+ _rejectStored;
8
+ constructor(name, file) {
9
+ this._name = name;
10
+ import(file, { assert: { type: 'json' } }).then(module => {
11
+ this._packageData = module.default;
12
+ this._elementList = [];
13
+ for (let m of this._packageData.modules) {
14
+ for (let e of m.exports) {
15
+ if (e.kind == 'custom-element-definition') {
16
+ this._elementList.push({ tag: e.name });
17
+ }
18
+ }
19
+ if (this._resolveStored) {
20
+ this._resolveStored.forEach(x => x(this._elementList));
21
+ this._resolveStored = null;
22
+ this._rejectStored = null;
23
+ }
24
+ }
25
+ }).catch(err => {
26
+ if (this._rejectStored) {
27
+ this._rejectStored.forEach(x => x(err));
28
+ this._resolveStored = null;
29
+ this._rejectStored = null;
30
+ }
31
+ });
32
+ }
33
+ async getElements() {
34
+ if (this._packageData)
35
+ return Promise.resolve(this._elementList);
36
+ if (!this._resolveStored) {
37
+ this._resolveStored = [];
38
+ this._rejectStored = [];
39
+ }
40
+ return new Promise((resolve, reject) => { this._resolveStored.push(resolve); this._rejectStored.push(reject); });
41
+ }
42
+ isHandledElement(designItem) {
43
+ throw new Error("Method not implemented.");
44
+ }
45
+ getProperties(designItem) {
46
+ throw new Error("Method not implemented.");
47
+ }
48
+ getProperty(designItem, name) {
49
+ throw new Error("Method not implemented.");
50
+ }
51
+ getPropertyTarget(designItem, property) {
52
+ throw new Error("Method not implemented.");
53
+ }
54
+ setValue(designItems, property, value) {
55
+ throw new Error("Method not implemented.");
56
+ }
57
+ clearValue(designItems, property) {
58
+ throw new Error("Method not implemented.");
59
+ }
60
+ isSet(designItems, property) {
61
+ throw new Error("Method not implemented.");
62
+ }
63
+ getValue(designItems, property) {
64
+ throw new Error("Method not implemented.");
65
+ }
66
+ getUnsetValue(designItems, property) {
67
+ throw new Error("Method not implemented.");
68
+ }
69
+ }
@@ -29,9 +29,8 @@ export class BindableObjectsBrowser extends BaseCustomWebComponentLazyAppend {
29
29
  `;
30
30
  constructor() {
31
31
  super();
32
- let externalCss = document.createElement('style');
33
- externalCss.innerHTML = '@import url("./node_modules/jquery.fancytree/dist/skin-win8/ui.fancytree.css");';
34
- this.shadowRoot.appendChild(externalCss);
32
+ //@ts-ignore
33
+ import("jquery.fancytree/dist/skin-win8/ui.fancytree.css", { assert: { type: 'css' } }).then(x => this.shadowRoot.adoptedStyleSheets = [x.default, this.constructor.style]);
35
34
  this._treeDiv = document.createElement('div');
36
35
  this._treeDiv.style.height = '100%';
37
36
  this._treeDiv.style.overflow = 'auto';
@@ -12,16 +12,15 @@ export class CodeViewCodeMirror extends BaseCustomWebComponentLazyAppend {
12
12
  display: block;
13
13
  height: 100%;
14
14
  width: 100%;
15
- }
16
- `;
15
+ }`;
17
16
  static template = html `
18
- <style>@import "./node_modules/codemirror/lib/codemirror.css";</style>
19
- <div style="width: 100%; height: 100%;">
20
- <div id="textarea"></div>
21
- </div>
22
- `;
17
+ <div style="width: 100%; height: 100%;">
18
+ <div id="textarea"></div>
19
+ </div>`;
23
20
  constructor() {
24
21
  super();
22
+ //@ts-ignore
23
+ import("codemirror/lib/codemirror.css", { assert: { type: 'css' } }).then(x => this.shadowRoot.adoptedStyleSheets = [x.default, this.constructor.style]);
25
24
  this.style.display = 'block';
26
25
  this._editor = this._getDomElement('textarea');
27
26
  }
@@ -18,7 +18,6 @@ export class CodeViewMonaco extends BaseCustomWebComponentLazyAppend {
18
18
  }
19
19
  `;
20
20
  static template = html `
21
- <style>@import "./node_modules/monaco-editor/min/vs/editor/editor.main.css";</style>
22
21
  <div id="container" style="width: 100%; height: 100%; position: absolute;"></div>
23
22
  `;
24
23
  executeCommand(command) {
@@ -54,6 +53,9 @@ export class CodeViewMonaco extends BaseCustomWebComponentLazyAppend {
54
53
  return false;
55
54
  }
56
55
  async ready() {
56
+ //@ts-ignore
57
+ const style = await import("monaco-editor/min/vs/editor/editor.main.css", { assert: { type: 'css' } });
58
+ this.shadowRoot.adoptedStyleSheets = [style.default, this.constructor.style];
57
59
  this._editor = this._getDomElement('container');
58
60
  //@ts-ignore
59
61
  require.config({ paths: { 'vs': 'node_modules/monaco-editor/min/vs' } });
@@ -73,6 +73,12 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
73
73
  position: relative;
74
74
  transform: translateZ(0);
75
75
  overflow: hidden;
76
+
77
+ font-family: initial;
78
+ font-size: initial;
79
+ font-weight: initial;
80
+ font-style: initial;
81
+ line-height: initial;
76
82
  }
77
83
  * {
78
84
  touch-action: none;
@@ -55,9 +55,8 @@ export class PaletteTreeView extends BaseCustomWebComponentConstructorAppend {
55
55
  </div>`;
56
56
  constructor() {
57
57
  super();
58
- let externalCss = document.createElement('style');
59
- externalCss.innerHTML = '@import url("./node_modules/jquery.fancytree/dist/skin-win8/ui.fancytree.css");';
60
- this.shadowRoot.appendChild(externalCss);
58
+ //@ts-ignore
59
+ import("jquery.fancytree/dist/skin-win8/ui.fancytree.css", { assert: { type: 'css' } }).then(x => this.shadowRoot.adoptedStyleSheets = [x.default, this.constructor.style]);
61
60
  this._filter = this._getDomElement('input');
62
61
  this._filter.onkeyup = () => {
63
62
  let match = this._filter.value;
@@ -102,14 +101,19 @@ export class PaletteTreeView extends BaseCustomWebComponentConstructorAppend {
102
101
  title: s.name,
103
102
  folder: true
104
103
  });
105
- let elements = await s.getElements();
106
- for (let e of elements) {
107
- newNode.addChildren({
108
- title: e.name ?? e.tag,
109
- folder: false,
110
- //@ts-ignore
111
- ref: e
112
- });
104
+ try {
105
+ let elements = await s.getElements();
106
+ for (let e of elements) {
107
+ newNode.addChildren({
108
+ title: e.name ?? e.tag,
109
+ folder: false,
110
+ //@ts-ignore
111
+ ref: e
112
+ });
113
+ }
114
+ }
115
+ catch (err) {
116
+ console.warn('Error loading elements', err);
113
117
  }
114
118
  //@ts-ignore
115
119
  newNode.updateCounters();
@@ -20,11 +20,16 @@ export class PaletteView extends BaseCustomWebComponentLazyAppend {
20
20
  }
21
21
  async loadControls(serviceContainer, elementsServices) {
22
22
  for (const s of elementsServices) {
23
- let elements = await s.getElements();
24
- let paletteElement = new PaletteElements();
25
- paletteElement.title = s.name;
26
- this._designerTabControl.appendChild(paletteElement);
27
- paletteElement.loadElements(serviceContainer, elements);
23
+ try {
24
+ let elements = await s.getElements();
25
+ let paletteElement = new PaletteElements();
26
+ paletteElement.title = s.name;
27
+ this._designerTabControl.appendChild(paletteElement);
28
+ paletteElement.loadElements(serviceContainer, elements);
29
+ }
30
+ catch (err) {
31
+ console.warn('Error loading elements', err);
32
+ }
28
33
  }
29
34
  }
30
35
  }
@@ -89,9 +89,8 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
89
89
  </div>`;
90
90
  constructor() {
91
91
  super();
92
- let externalCss = document.createElement('style');
93
- externalCss.innerHTML = '@import url("./node_modules/jquery.fancytree/dist/skin-win8/ui.fancytree.css");';
94
- this.shadowRoot.appendChild(externalCss);
92
+ //@ts-ignore
93
+ import("jquery.fancytree/dist/skin-win8/ui.fancytree.css", { assert: { type: 'css' } }).then(x => this.shadowRoot.adoptedStyleSheets = [x.default, this.constructor.style]);
95
94
  this._filter = this._getDomElement('input');
96
95
  this._filter.onkeyup = () => {
97
96
  let match = this._filter.value;
@@ -100,11 +99,6 @@ export class TreeViewExtended extends BaseCustomWebComponentConstructorAppend {
100
99
  });
101
100
  };
102
101
  this._treeDiv = this._getDomElement('treetable');
103
- /*this._treeDiv = document.createElement('div');
104
- this._treeDiv.style.height = 'calc(100% - 21px)'
105
- this._treeDiv.style.overflow = 'auto';
106
- this._treeDiv.setAttribute('id', 'tree');
107
- this.shadowRoot.appendChild(this._treeDiv);*/
108
102
  }
109
103
  _showHideAtDesignTimeState(img, designItem) {
110
104
  if (designItem.hideAtDesignTime)
package/dist/index.d.ts CHANGED
@@ -42,6 +42,7 @@ export type { IElementDefinition } from "./elements/services/elementsService/IEl
42
42
  export type { IElementsJson } from "./elements/services/elementsService/IElementsJson.js";
43
43
  export type { IElementsService } from "./elements/services/elementsService/IElementsService.js";
44
44
  export * from "./elements/services/elementsService/JsonFileElementsService.js";
45
+ export * from "./elements/services/elementsService/PreDefinedElementsService.js";
45
46
  export type { IHtmlWriterService } from "./elements/services/htmlWriterService/IHtmlWriterService.js";
46
47
  export type { IHtmlWriterOptions } from "./elements/services/htmlWriterService/IHtmlWriterOptions.js";
47
48
  export * from "./elements/services/htmlWriterService/HtmlWriterService.js";
@@ -53,6 +54,7 @@ export * from "./elements/services/instanceService/DefaultInstanceService.js";
53
54
  export type { IInstanceService } from "./elements/services/instanceService/IInstanceService.js";
54
55
  export * from "./elements/services/instanceService/PrepareElementsForDesignerService.js";
55
56
  export type { IPrepareElementsForDesignerService } from "./elements/services/instanceService/IPrepareElementsForDesignerService.js";
57
+ export * from "./elements/services/manifestParsers/WebcomponentManifestParserService.js";
56
58
  export type { IModelCommandService } from "./elements/services/modelCommandService/IModelCommandService.js";
57
59
  export * from "./elements/services/modelCommandService/DefaultModelCommandService.js";
58
60
  export * from "./elements/services/propertiesService/DefaultEditorTypesService.js";
@@ -68,6 +70,7 @@ export * from "./elements/services/propertiesService/services/LitElementProperti
68
70
  export * from "./elements/services/propertiesService/services/NativeElementsPropertiesService.js";
69
71
  export * from "./elements/services/propertiesService/services/PolymerPropertiesService.js";
70
72
  export * from "./elements/services/propertiesService/services/UnkownElementPropertiesService.js";
73
+ export * from "./elements/services/propertiesService/PropertyType.js";
71
74
  export * from "./elements/services/propertiesService/ValueType.js";
72
75
  export type { ISelectionChangedEvent } from "./elements/services/selectionService/ISelectionChangedEvent.js";
73
76
  export type { ISelectionService } from "./elements/services/selectionService/ISelectionService.js";
@@ -173,3 +176,4 @@ export type { IDisposable } from "./interfaces/IDisposable.js";
173
176
  export type { IPoint } from "./interfaces/IPoint.js";
174
177
  export type { IRect } from "./interfaces/IRect.js";
175
178
  export type { ISize } from "./interfaces/ISize.js";
179
+ export type { ICommandHandler } from "./interfaces/ICommandHandler.js";
package/dist/index.js CHANGED
@@ -25,11 +25,13 @@ export * from "./elements/services/copyPasteService/CopyPasteService.js";
25
25
  export * from "./elements/services/demoProviderService/DemoProviderService.js";
26
26
  export * from "./elements/services/dragDropService/DragDropService.js";
27
27
  export * from "./elements/services/elementsService/JsonFileElementsService.js";
28
+ export * from "./elements/services/elementsService/PreDefinedElementsService.js";
28
29
  export * from "./elements/services/htmlWriterService/HtmlWriterService.js";
29
30
  export * from "./elements/services/htmlParserService/DefaultHtmlParserService.js";
30
31
  export * from "./elements/services/htmlParserService/NodeHtmlParserService.js";
31
32
  export * from "./elements/services/instanceService/DefaultInstanceService.js";
32
33
  export * from "./elements/services/instanceService/PrepareElementsForDesignerService.js";
34
+ export * from "./elements/services/manifestParsers/WebcomponentManifestParserService.js";
33
35
  export * from "./elements/services/modelCommandService/DefaultModelCommandService.js";
34
36
  export * from "./elements/services/propertiesService/DefaultEditorTypesService.js";
35
37
  export * from "./elements/services/propertiesService/services/PropertiesHelper.js";
@@ -41,6 +43,7 @@ export * from "./elements/services/propertiesService/services/LitElementProperti
41
43
  export * from "./elements/services/propertiesService/services/NativeElementsPropertiesService.js";
42
44
  export * from "./elements/services/propertiesService/services/PolymerPropertiesService.js";
43
45
  export * from "./elements/services/propertiesService/services/UnkownElementPropertiesService.js";
46
+ export * from "./elements/services/propertiesService/PropertyType.js";
44
47
  export * from "./elements/services/propertiesService/ValueType.js";
45
48
  export * from "./elements/services/selectionService/SelectionService.js";
46
49
  export * from "./elements/services/undoService/ChangeGroup.js";
@@ -0,0 +1,5 @@
1
+ import { CommandType } from "../commandHandling/CommandType";
2
+ export interface ICommandHandler {
3
+ executeCommand(type: CommandType, parameter: any): Promise<void>;
4
+ canExecuteCommand(type: CommandType, parameter: any): boolean;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
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.73",
4
+ "version": "0.0.77",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "author": "",
@@ -24,6 +24,7 @@
24
24
  "@types/jquery.fancytree": "0.0.7",
25
25
  "ace-builds": "^1.4.13",
26
26
  "codemirror": "^5.65.0",
27
+ "custom-elements-manifest": "^1.0.0",
27
28
  "esprima-next": "^5.7.0",
28
29
  "html2canvas": "*",
29
30
  "jest": "^27.4.5",
@@ -1,16 +0,0 @@
1
- import { ITransactionItem } from '../ITransactionItem';
2
- import { IDesignItem } from '../../../item/IDesignItem';
3
- export declare class MoveElementInDomAction implements ITransactionItem {
4
- constructor(designItem: IDesignItem, newTarget: IDesignItem, newPosition: InsertPosition, oldTarget: IDesignItem, oldPosition: InsertPosition);
5
- title?: string;
6
- get affectedItems(): IDesignItem[];
7
- undo(): void;
8
- do(): void;
9
- designItem: IDesignItem;
10
- newTarget: IDesignItem;
11
- newPosition: InsertPosition;
12
- oldTarget: IDesignItem;
13
- oldPosition: InsertPosition;
14
- newItem: IDesignItem;
15
- mergeWith(other: ITransactionItem): boolean;
16
- }
@@ -1,32 +0,0 @@
1
- export class MoveElementInDomAction {
2
- constructor(designItem, newTarget, newPosition, oldTarget, oldPosition) {
3
- this.title = "Move Item";
4
- this.designItem = designItem;
5
- this.newTarget = newTarget;
6
- this.newPosition = newPosition;
7
- this.oldTarget = oldTarget;
8
- this.oldPosition = oldPosition;
9
- }
10
- title;
11
- get affectedItems() {
12
- return [this.designItem, this.newTarget, this.oldTarget];
13
- }
14
- undo() {
15
- this.oldTarget.element.insertAdjacentElement(this.oldPosition, this.designItem.element);
16
- this.affectedItems[0].instanceServiceContainer.contentService.onContentChanged.emit({ changeType: 'moved', designItems: [this.designItem] });
17
- }
18
- do() {
19
- //this.newTarget.insertChild(this.designItem, )
20
- this.newTarget.element.insertAdjacentElement(this.newPosition, this.designItem.element);
21
- this.affectedItems[0].instanceServiceContainer.contentService.onContentChanged.emit({ changeType: 'moved', designItems: [this.designItem] });
22
- }
23
- designItem;
24
- newTarget;
25
- newPosition;
26
- oldTarget;
27
- oldPosition;
28
- newItem;
29
- mergeWith(other) {
30
- return false;
31
- }
32
- }
@@ -1,16 +0,0 @@
1
- import { ITransactionItem } from '../ITransactionItem';
2
- import { IDesignItem } from '../../../item/IDesignItem';
3
- export declare class MoveElementInDomAction implements ITransactionItem {
4
- constructor(designItem: IDesignItem, newTarget: IDesignItem, newPosition: InsertPosition, oldTarget: IDesignItem, oldPosition: InsertPosition);
5
- title?: string;
6
- get affectedItems(): IDesignItem[];
7
- undo(): void;
8
- do(): void;
9
- designItem: IDesignItem;
10
- newTarget: IDesignItem;
11
- newPosition: InsertPosition;
12
- oldTarget: IDesignItem;
13
- oldPosition: InsertPosition;
14
- newItem: IDesignItem;
15
- mergeWith(other: ITransactionItem): boolean;
16
- }
@@ -1,31 +0,0 @@
1
- export class MoveElementInDomAction {
2
- constructor(designItem, newTarget, newPosition, oldTarget, oldPosition) {
3
- this.title = "Move Item";
4
- this.designItem = designItem;
5
- this.newTarget = newTarget;
6
- this.newPosition = newPosition;
7
- this.oldTarget = oldTarget;
8
- this.oldPosition = oldPosition;
9
- }
10
- title;
11
- get affectedItems() {
12
- return [this.designItem, this.newTarget, this.oldTarget];
13
- }
14
- undo() {
15
- this.oldTarget.element.insertAdjacentElement(this.oldPosition, this.designItem.element);
16
- this.affectedItems[0].instanceServiceContainer.contentService.onContentChanged.emit({ changeType: 'moved', designItems: [this.designItem] });
17
- }
18
- do() {
19
- this.newTarget.element.insertAdjacentElement(this.newPosition, this.designItem.element);
20
- this.affectedItems[0].instanceServiceContainer.contentService.onContentChanged.emit({ changeType: 'moved', designItems: [this.designItem] });
21
- }
22
- designItem;
23
- newTarget;
24
- newPosition;
25
- oldTarget;
26
- oldPosition;
27
- newItem;
28
- mergeWith(other) {
29
- return false;
30
- }
31
- }