canvas-editor-engine 1.0.4 → 1.0.6

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.
@@ -1,9 +1,25 @@
1
1
  import { TComponent } from "./types/general";
2
2
  export declare class WebComponentWrapper {
3
- element: HTMLDivElement;
3
+ baseElement: HTMLDivElement;
4
+ editorWrapElement: HTMLDivElement;
5
+ stylesWrapElement: HTMLDivElement;
6
+ toolsWrapElement: HTMLDivElement;
4
7
  constructor();
5
- add(component: TComponent, style?: HTMLStyleElement): HTMLDivElement;
6
- private _stylish;
8
+ get base(): {
9
+ add: (component: TComponent, style?: HTMLStyleElement) => HTMLDivElement;
10
+ };
11
+ get editorWrap(): {
12
+ add: (component: TComponent, style?: HTMLStyleElement) => HTMLDivElement;
13
+ };
14
+ get stylesWrap(): {
15
+ add: (component: TComponent, style?: HTMLStyleElement) => HTMLDivElement;
16
+ };
17
+ get toolsWrap(): {
18
+ add: (component: TComponent, style?: HTMLStyleElement) => HTMLDivElement;
19
+ };
20
+ private _methods;
21
+ private _add;
22
+ private _baseStyle;
7
23
  }
8
24
  export default class WebComponent extends HTMLElement {
9
25
  constructor();
@@ -7,28 +7,65 @@ const pipette_component_1 = require("./components/pipette.component");
7
7
  const slot_component_1 = require("./components/slot.component");
8
8
  class WebComponentWrapper {
9
9
  constructor() {
10
- const webComponentWrapper = document.createElement('div');
11
- webComponentWrapper.className = 'editor-wrap';
12
- webComponentWrapper.style.position = 'relative';
13
- webComponentWrapper.style.display = 'flex';
14
- this.element = webComponentWrapper;
15
- this._stylish();
16
- }
17
- add(component, style) {
18
- const componentElement = this.element.appendChild(component);
10
+ const base = document.createElement('div');
11
+ base.className = 'wc-editor';
12
+ base.style.position = 'relative';
13
+ base.style.display = 'flex';
14
+ const stylesWrap = document.createElement('div');
15
+ stylesWrap.className = 'styles-wrap';
16
+ const editorWrap = document.createElement('div');
17
+ editorWrap.className = 'editor-wrap';
18
+ editorWrap.style.position = 'relative';
19
+ editorWrap.style.display = 'flex';
20
+ const toolsWrap = document.createElement('div');
21
+ editorWrap.className = 'tools-wrap';
22
+ editorWrap.style.position = 'relative';
23
+ editorWrap.style.display = 'flex';
24
+ base.appendChild(stylesWrap);
25
+ base.appendChild(editorWrap);
26
+ base.appendChild(toolsWrap);
27
+ this.baseElement = base;
28
+ this.stylesWrapElement = stylesWrap;
29
+ this.editorWrapElement = editorWrap;
30
+ this.toolsWrapElement = toolsWrap;
31
+ this._baseStyle();
32
+ }
33
+ get base() {
34
+ return this._methods(this.baseElement);
35
+ }
36
+ ;
37
+ get editorWrap() {
38
+ return this._methods(this.editorWrapElement);
39
+ }
40
+ ;
41
+ get stylesWrap() {
42
+ return this._methods(this.stylesWrapElement);
43
+ }
44
+ ;
45
+ get toolsWrap() {
46
+ return this._methods(this.toolsWrapElement);
47
+ }
48
+ ;
49
+ _methods(elementWrapper) {
50
+ return {
51
+ add: (component, style) => this._add(elementWrapper, component, style),
52
+ };
53
+ }
54
+ _add(elementWrapper, component, style) {
55
+ const componentElement = elementWrapper.appendChild(component);
19
56
  if (!!style) {
20
- this.element.appendChild(style);
57
+ this.stylesWrapElement.appendChild(style);
21
58
  }
22
59
  return componentElement;
23
60
  }
24
- _stylish() {
61
+ _baseStyle() {
25
62
  const style = document.createElement('style');
26
63
  style.innerHTML = `
27
64
  * {
28
65
  user-select: none;
29
66
  }
30
67
  `;
31
- this.element.appendChild(style);
68
+ this.stylesWrapElement.appendChild(style);
32
69
  }
33
70
  }
34
71
  exports.WebComponentWrapper = WebComponentWrapper;
@@ -38,14 +75,14 @@ class WebComponent extends HTMLElement {
38
75
  const shadowRoot = this.attachShadow({ mode: "open" });
39
76
  const webComponentWrapper = new WebComponentWrapper();
40
77
  const { canvasTemplate, canvasStyle } = canvas_component_1.default.getComponent();
41
- const canvasElement = webComponentWrapper.add(canvasTemplate, canvasStyle);
78
+ const canvasElement = webComponentWrapper.editorWrap.add(canvasTemplate, canvasStyle);
42
79
  const { pipetteTemplate, pipetteStyle } = pipette_component_1.default.getComponent();
43
- webComponentWrapper.add(pipetteTemplate, pipetteStyle);
80
+ webComponentWrapper.editorWrap.add(pipetteTemplate, pipetteStyle);
44
81
  const { slotTemplate, slotStyle } = slot_component_1.default.getComponent('tools');
45
- webComponentWrapper.add(slotTemplate, slotStyle);
82
+ webComponentWrapper.toolsWrap.add(slotTemplate, slotStyle);
46
83
  const { excretionsTemplate, excretionsStyle } = excretions_component_1.default.getComponent();
47
- webComponentWrapper.add(excretionsTemplate, excretionsStyle);
48
- shadowRoot.appendChild(webComponentWrapper.element);
84
+ webComponentWrapper.editorWrap.add(excretionsTemplate, excretionsStyle);
85
+ shadowRoot.appendChild(webComponentWrapper.baseElement);
49
86
  canvas_component_1.default.simulateSubscriptions();
50
87
  this.addEventListener('initial', () => {
51
88
  this.dispatchEvent(new CustomEvent('get-editor-element', {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "canvas-editor-engine",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "CanvasEditorEngine library, use: [typescript] [canvas]",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",