@node-projects/web-component-designer 0.0.183 → 0.0.185
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.
- package/dist/elements/helper/Helper.d.ts +2 -0
- package/dist/elements/helper/Helper.js +10 -0
- package/dist/elements/helper/NpmPackageLoader.d.ts +17 -0
- package/dist/elements/helper/NpmPackageLoader.js +207 -0
- package/dist/elements/services/designerAddons/IDesignerAddonJson.d.ts +6 -0
- package/dist/elements/services/{propertiesService/IProperty copy.js → designerAddons/IDesignerAddonJson.js} +0 -0
- package/dist/elements/services/elementsService/WebcomponentManifestElementsService.js +2 -1
- package/dist/elements/services/manifestParsers/WebcomponentManifestParserService.js +3 -2
- package/dist/elements/services/propertiesService/services/WebcomponentManifestPropertiesService.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/package.json +4 -4
- package/dist/elements/controls/ThicknessEditor copy.d.ts +0 -33
- package/dist/elements/controls/ThicknessEditor copy.js +0 -145
- package/dist/elements/helper/IndentedTextWriter copy.d.ts +0 -14
- package/dist/elements/helper/IndentedTextWriter copy.js +0 -34
- package/dist/elements/helper/SimpleTextWriter copy.d.ts +0 -12
- package/dist/elements/helper/SimpleTextWriter copy.js +0 -26
- package/dist/elements/services/htmlParserService/AbstractClassElementParserService.d.ts +0 -12
- package/dist/elements/services/htmlParserService/AbstractClassElementParserService.js +0 -120
- package/dist/elements/services/htmlParserService/LitElementParserService copy.d.ts +0 -12
- package/dist/elements/services/htmlParserService/LitElementParserService copy.js +0 -120
- package/dist/elements/services/propertiesService/IProperty copy.d.ts +0 -22
- package/dist/elements/services/propertiesService/IPropertyGroupsService.d.ts +0 -8
- package/dist/elements/services/propertiesService/IPropertyGroupsService.js +0 -1
- package/dist/elements/services/propertiesService/PropertyGroupsService.d.ts +0 -17
- package/dist/elements/services/propertiesService/PropertyGroupsService.js +0 -29
- package/dist/elements/services/propertiesService/propertyEditors/MetricsEditor.d.ts +0 -0
- package/dist/elements/services/propertiesService/propertyEditors/MetricsEditor.js +0 -1
- package/dist/elements/services/propertiesService/services/AbstractBasePropertiesService.d.ts +0 -7
- package/dist/elements/services/propertiesService/services/AbstractBasePropertiesService.js +0 -44
- package/dist/elements/services/propertiesService/services/CssCurrentPropertiesService copy.d.ts +0 -18
- package/dist/elements/services/propertiesService/services/CssCurrentPropertiesService copy.js +0 -221
- package/dist/elements/services/propertiesService/services/CssPropertiesService copy.d.ts +0 -18
- package/dist/elements/services/propertiesService/services/CssPropertiesService copy.js +0 -221
- package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.d.ts +0 -20
- package/dist/elements/services/propertiesService/services/UnkownElementPropertiesService.js +0 -162
- package/dist/elements/services/stylesheetService/CssTreeStylesheetService copy.d.ts +0 -48
- package/dist/elements/services/stylesheetService/CssTreeStylesheetService copy.js +0 -185
- package/dist/elements/services/stylesheetService/StylesheetService.d.ts +0 -28
- package/dist/elements/services/stylesheetService/StylesheetService.js +0 -108
- package/dist/elements/services/undoService/transactionItems/PropertyChangeAction.d.ts +0 -15
- package/dist/elements/services/undoService/transactionItems/PropertyChangeAction.js +0 -36
- package/dist/elements/widgets/codeView/code-view-monaco copy.d.ts +0 -25
- package/dist/elements/widgets/codeView/code-view-monaco copy.js +0 -119
- package/dist/elements/widgets/designerView/ButtonSeperatorProvider.d.ts +0 -8
- package/dist/elements/widgets/designerView/ButtonSeperatorProvider.js +0 -11
- package/dist/elements/widgets/designerView/IDesignViewConfigButtonsProvider.d.ts +0 -5
- package/dist/elements/widgets/designerView/IDesignViewConfigButtonsProvider.js +0 -1
- package/dist/elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.d.ts +0 -6
- package/dist/elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.js +0 -22
- package/dist/elements/widgets/designerView/extensions/GridExtension copy.d.ts +0 -10
- package/dist/elements/widgets/designerView/extensions/GridExtension copy.js +0 -30
- package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons copy.d.ts +0 -6
- package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons copy.js +0 -21
- package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.d.ts +0 -6
- package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.js +0 -22
- package/dist/elements/widgets/designerView/extensions/GridExtensionProvider copy.d.ts +0 -11
- package/dist/elements/widgets/designerView/extensions/GridExtensionProvider copy.js +0 -18
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtension.d.ts +0 -11
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtension.js +0 -19
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionDesignViewConfigButtons.d.ts +0 -6
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionDesignViewConfigButtons.js +0 -22
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.d.ts +0 -11
- package/dist/elements/widgets/designerView/extensions/InvisibleDivExtensionProvider.js +0 -20
- package/dist/elements/widgets/designerView/extensions/InvisibleElementExtensionDesignViewConfigButtons.d.ts +0 -6
- package/dist/elements/widgets/designerView/extensions/InvisibleElementExtensionDesignViewConfigButtons.js +0 -22
- package/dist/elements/widgets/designerView/extensions/MouseOverExtension.d.ts +0 -11
- package/dist/elements/widgets/designerView/extensions/MouseOverExtension.js +0 -20
- package/dist/elements/widgets/designerView/extensions/MouseOverExtensionProvider.d.ts +0 -10
- package/dist/elements/widgets/designerView/extensions/MouseOverExtensionProvider.js +0 -13
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons copy.d.ts +0 -7
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons copy.js +0 -21
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import * as csstree from 'css-tree';
|
|
2
|
-
import { TypedEvent } from "@node-projects/base-custom-webcomponent";
|
|
3
|
-
import { calculate as calculateSpecifity } from "./SpecificityCalculator.js";
|
|
4
|
-
export class StylesheetService {
|
|
5
|
-
stylesheets;
|
|
6
|
-
stylesheetChanged = new TypedEvent();
|
|
7
|
-
styles = [];
|
|
8
|
-
constructor(stylesheets) {
|
|
9
|
-
this.stylesheets = stylesheets;
|
|
10
|
-
}
|
|
11
|
-
updateDefiningRule(designItem, property, value) {
|
|
12
|
-
// let highestSpecificityRule = this.getAppliedRules(designItem, property);
|
|
13
|
-
// if (!highestSpecificityRule) return false;
|
|
14
|
-
// let newRule = csstree.toPlainObject(csstree.parse("* {" + property.name + ": " + value + "}")) as csstree.StyleSheetPlain;
|
|
15
|
-
// let index = this.returnRuleDeclarationIndex(highestSpecificityRule, property);
|
|
16
|
-
// if (index > -1) highestSpecificityRule.block.children.splice(index, 1, (newRule.children[0] as csstree.RulePlain).block.children[0]);
|
|
17
|
-
// else highestSpecificityRule.block.children.push((newRule.children[0] as csstree.RulePlain).block.children[0]);
|
|
18
|
-
// if (!this.ruleset) this.ruleset = this.parseStylesheetToRuleset(this.stylesheet);
|
|
19
|
-
// this.stylesheetChanged.emit({ stylesheet: csstree.generate(csstree.fromPlainObject(this.ruleset)) });
|
|
20
|
-
return true;
|
|
21
|
-
}
|
|
22
|
-
getAppliedRulesInternal(designItem, prop) {
|
|
23
|
-
return this.parseStylesheetToRuleset(this.stylesheets).filter(item => designItem.element.matches(item.selector));
|
|
24
|
-
}
|
|
25
|
-
getAppliedRules(designItem, prop) {
|
|
26
|
-
let rules = this.getAppliedRulesInternal(designItem, prop);
|
|
27
|
-
if (!rules)
|
|
28
|
-
return [];
|
|
29
|
-
return rules.map(r => {
|
|
30
|
-
return {
|
|
31
|
-
selector: r.selector,
|
|
32
|
-
declarations: r.rule.block.children.map(c => {
|
|
33
|
-
return {
|
|
34
|
-
// @ts-ignore
|
|
35
|
-
name: c.property,
|
|
36
|
-
// @ts-ignore
|
|
37
|
-
value: c.value.value,
|
|
38
|
-
// @ts-ignore
|
|
39
|
-
important: c.important == true
|
|
40
|
-
};
|
|
41
|
-
}),
|
|
42
|
-
specificity: this.getSpecificity(r.rule.prelude)
|
|
43
|
-
};
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
getDeclarationInternal(designItem, prop) {
|
|
47
|
-
let rules = this.getAppliedRulesInternal(designItem, prop);
|
|
48
|
-
if (!rules)
|
|
49
|
-
return null;
|
|
50
|
-
let declarations = [];
|
|
51
|
-
rules.forEach(r => {
|
|
52
|
-
let index = this.returnRuleDeclarationIndex(r.rule, prop);
|
|
53
|
-
// @ts-ignore
|
|
54
|
-
if (index > -1)
|
|
55
|
-
declarations.push(r.rule.block.children[index]);
|
|
56
|
-
});
|
|
57
|
-
return declarations;
|
|
58
|
-
}
|
|
59
|
-
getDeclarations(designItem, prop) {
|
|
60
|
-
let decl = this.getDeclarationInternal(designItem, prop);
|
|
61
|
-
if (!decl)
|
|
62
|
-
return null;
|
|
63
|
-
let declarations = [];
|
|
64
|
-
decl.forEach(d => {
|
|
65
|
-
declarations.push({
|
|
66
|
-
name: d.property,
|
|
67
|
-
value: d.value.value,
|
|
68
|
-
important: d.important == true
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
return declarations;
|
|
72
|
-
}
|
|
73
|
-
parseStylesheetToRuleset(stylesheets) {
|
|
74
|
-
let styles = [];
|
|
75
|
-
stylesheets.forEach(s => {
|
|
76
|
-
let stylesheetPlain = csstree.toPlainObject(csstree.parse(s, { positions: true, parseValue: false }));
|
|
77
|
-
stylesheetPlain.children.forEach((rule) => {
|
|
78
|
-
styles.push({
|
|
79
|
-
rule: rule,
|
|
80
|
-
selector: this.buildSelectorString(s, rule.prelude),
|
|
81
|
-
specificity: this.getSpecificity(rule.prelude)
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
return styles;
|
|
86
|
-
}
|
|
87
|
-
buildSelectorString(stylesheet, selector) {
|
|
88
|
-
return stylesheet.substring(selector.loc.start.offset, selector.loc.end.offset);
|
|
89
|
-
}
|
|
90
|
-
getSpecificity(selector) {
|
|
91
|
-
const specificities = calculateSpecifity(selector);
|
|
92
|
-
let sum = 0;
|
|
93
|
-
specificities.forEach(specificity => sum += specificity.a * 10000 + specificity.b * 100 + specificity.c);
|
|
94
|
-
return sum;
|
|
95
|
-
}
|
|
96
|
-
returnRuleDeclarationIndex(rule, property) {
|
|
97
|
-
let decl;
|
|
98
|
-
rule.block.children.forEach((child) => {
|
|
99
|
-
if (child.property == property.name) {
|
|
100
|
-
decl = child;
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
if (!decl)
|
|
105
|
-
return -1;
|
|
106
|
-
return rule.block.children.indexOf(decl);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ITransactionItem } from '../ITransactionItem';
|
|
2
|
-
import { IDesignItem } from '../../../item/IDesignItem';
|
|
3
|
-
import { IProperty } from '../../propertiesService/IProperty';
|
|
4
|
-
export declare class PropertyChangeAction implements ITransactionItem {
|
|
5
|
-
constructor(designItem: IDesignItem, property: IProperty, newValue: any, oldValue: any);
|
|
6
|
-
title?: string;
|
|
7
|
-
get affectedItems(): IDesignItem[];
|
|
8
|
-
undo(): void;
|
|
9
|
-
do(): void;
|
|
10
|
-
designItem: IDesignItem;
|
|
11
|
-
property: IProperty;
|
|
12
|
-
newValue: any;
|
|
13
|
-
oldValue: any;
|
|
14
|
-
mergeWith(other: ITransactionItem): boolean;
|
|
15
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
export class PropertyChangeAction {
|
|
2
|
-
constructor(designItem, property, newValue, oldValue) {
|
|
3
|
-
this.title = "Change Property";
|
|
4
|
-
this.designItem = designItem;
|
|
5
|
-
this.property = property;
|
|
6
|
-
this.newValue = newValue;
|
|
7
|
-
this.oldValue = oldValue;
|
|
8
|
-
}
|
|
9
|
-
title;
|
|
10
|
-
get affectedItems() {
|
|
11
|
-
return [this.designItem];
|
|
12
|
-
}
|
|
13
|
-
undo() {
|
|
14
|
-
if (this.oldValue == null)
|
|
15
|
-
this.property.service.clearValue([this.designItem], this.property);
|
|
16
|
-
else
|
|
17
|
-
this.property.service.setValue([this.designItem], this.property, this.oldValue);
|
|
18
|
-
}
|
|
19
|
-
do() {
|
|
20
|
-
if (this.newValue == null)
|
|
21
|
-
this.property.service.clearValue([this.designItem], this.property);
|
|
22
|
-
else
|
|
23
|
-
this.property.service.setValue([this.designItem], this.property, this.newValue);
|
|
24
|
-
}
|
|
25
|
-
designItem;
|
|
26
|
-
property;
|
|
27
|
-
newValue;
|
|
28
|
-
oldValue;
|
|
29
|
-
mergeWith(other) {
|
|
30
|
-
if (other instanceof PropertyChangeAction && this.designItem === other.designItem && this.property === other.property) {
|
|
31
|
-
this.newValue = other.newValue;
|
|
32
|
-
return true;
|
|
33
|
-
}
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { BaseCustomWebComponentLazyAppend, TypedEvent } from '@node-projects/base-custom-webcomponent';
|
|
2
|
-
import { ICodeView } from "./ICodeView";
|
|
3
|
-
import { IActivateable } from '../../../interfaces/IActivateable';
|
|
4
|
-
import { IStringPosition } from '../../services/htmlWriterService/IStringPosition';
|
|
5
|
-
import { IUiCommandHandler } from '../../../commandHandling/IUiCommandHandler';
|
|
6
|
-
import { IUiCommand } from '../../../commandHandling/IUiCommand';
|
|
7
|
-
export declare class CodeViewMonaco extends BaseCustomWebComponentLazyAppend implements ICodeView, IActivateable, IUiCommandHandler {
|
|
8
|
-
dispose(): void;
|
|
9
|
-
canvasElement: HTMLElement;
|
|
10
|
-
elementsToPackages: Map<string, string>;
|
|
11
|
-
code: string;
|
|
12
|
-
onTextChanged: TypedEvent<string>;
|
|
13
|
-
private _monacoEditor;
|
|
14
|
-
private _editor;
|
|
15
|
-
static readonly style: CSSStyleSheet;
|
|
16
|
-
static readonly template: HTMLTemplateElement;
|
|
17
|
-
executeCommand(command: IUiCommand): void;
|
|
18
|
-
canExecuteCommand(command: IUiCommand): boolean;
|
|
19
|
-
ready(): Promise<void>;
|
|
20
|
-
focusEditor(): void;
|
|
21
|
-
activated(): void;
|
|
22
|
-
update(code: any): void;
|
|
23
|
-
getText(): string;
|
|
24
|
-
setSelection(position: IStringPosition): void;
|
|
25
|
-
}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { BaseCustomWebComponentLazyAppend, css, html, TypedEvent } from '@node-projects/base-custom-webcomponent';
|
|
2
|
-
import { CommandType } from '../../../commandHandling/CommandType';
|
|
3
|
-
export class CodeViewMonaco extends BaseCustomWebComponentLazyAppend {
|
|
4
|
-
dispose() {
|
|
5
|
-
this._monacoEditor.dispose();
|
|
6
|
-
}
|
|
7
|
-
canvasElement;
|
|
8
|
-
elementsToPackages;
|
|
9
|
-
code;
|
|
10
|
-
onTextChanged = new TypedEvent();
|
|
11
|
-
_monacoEditor;
|
|
12
|
-
_editor;
|
|
13
|
-
static style = css `
|
|
14
|
-
:host {
|
|
15
|
-
display: block;
|
|
16
|
-
height: 100%;
|
|
17
|
-
width: 100%;
|
|
18
|
-
}
|
|
19
|
-
`;
|
|
20
|
-
static template = html `
|
|
21
|
-
<div id="container" style="width: 100%; height: 100%; position: absolute;"></div>
|
|
22
|
-
`;
|
|
23
|
-
executeCommand(command) {
|
|
24
|
-
switch (command.type) {
|
|
25
|
-
case CommandType.undo:
|
|
26
|
-
this._monacoEditor.trigger('source', 'undo', null);
|
|
27
|
-
break;
|
|
28
|
-
case CommandType.redo:
|
|
29
|
-
this._monacoEditor.trigger('source', 'redo', null);
|
|
30
|
-
break;
|
|
31
|
-
case CommandType.copy:
|
|
32
|
-
this._monacoEditor.trigger('source', 'editor.action.clipboardCopyAction', null);
|
|
33
|
-
break;
|
|
34
|
-
case CommandType.paste:
|
|
35
|
-
this._monacoEditor.trigger('source', 'editor.action.clipboardPasteAction', null);
|
|
36
|
-
break;
|
|
37
|
-
case CommandType.cut:
|
|
38
|
-
break;
|
|
39
|
-
case CommandType.delete:
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
canExecuteCommand(command) {
|
|
44
|
-
switch (command.type) {
|
|
45
|
-
case CommandType.undo:
|
|
46
|
-
case CommandType.redo:
|
|
47
|
-
case CommandType.copy:
|
|
48
|
-
case CommandType.paste:
|
|
49
|
-
case CommandType.cut:
|
|
50
|
-
case CommandType.delete:
|
|
51
|
-
return true;
|
|
52
|
-
}
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
async ready() {
|
|
56
|
-
let style;
|
|
57
|
-
//@ts-ignore
|
|
58
|
-
if (window.importShim)
|
|
59
|
-
//@ts-ignore
|
|
60
|
-
style = await importShim("monaco-editor/min/vs/editor/editor.main.css", { assert: { type: 'css' } });
|
|
61
|
-
else
|
|
62
|
-
//@ts-ignore
|
|
63
|
-
style = await import("monaco-editor/min/vs/editor/editor.main.css", { assert: { type: 'css' } });
|
|
64
|
-
this.shadowRoot.adoptedStyleSheets = [style.default, this.constructor.style];
|
|
65
|
-
this._editor = this._getDomElement('container');
|
|
66
|
-
//@ts-ignore
|
|
67
|
-
require.config({ paths: { 'vs': 'node_modules/monaco-editor/min/vs' } });
|
|
68
|
-
//@ts-ignore
|
|
69
|
-
require(['vs/editor/editor.main'], () => {
|
|
70
|
-
//@ts-ignore
|
|
71
|
-
this._monacoEditor = monaco.editor.create(this._editor, {
|
|
72
|
-
automaticLayout: true,
|
|
73
|
-
value: this.code,
|
|
74
|
-
language: 'html',
|
|
75
|
-
minimap: {
|
|
76
|
-
size: 'fill'
|
|
77
|
-
},
|
|
78
|
-
fixedOverflowWidgets: true
|
|
79
|
-
});
|
|
80
|
-
this._monacoEditor.layout();
|
|
81
|
-
let changeContentListener = this._monacoEditor.getModel().onDidChangeContent(e => {
|
|
82
|
-
this.onTextChanged.emit(this._monacoEditor.getValue());
|
|
83
|
-
});
|
|
84
|
-
this._monacoEditor.onDidChangeModel(e => {
|
|
85
|
-
changeContentListener.dispose();
|
|
86
|
-
changeContentListener = this._monacoEditor.getModel().onDidChangeContent(e => {
|
|
87
|
-
this.onTextChanged.emit(this._monacoEditor.getValue());
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
focusEditor() {
|
|
93
|
-
requestAnimationFrame(() => {
|
|
94
|
-
this.focus();
|
|
95
|
-
this._monacoEditor.focus();
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
activated() {
|
|
99
|
-
if (this._monacoEditor)
|
|
100
|
-
this._monacoEditor.layout();
|
|
101
|
-
}
|
|
102
|
-
update(code) {
|
|
103
|
-
this.code = code;
|
|
104
|
-
if (this._monacoEditor) {
|
|
105
|
-
this._monacoEditor.setValue(code);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
getText() {
|
|
109
|
-
return this._monacoEditor.getValue();
|
|
110
|
-
}
|
|
111
|
-
setSelection(position) {
|
|
112
|
-
let model = this._monacoEditor.getModel();
|
|
113
|
-
let point1 = model.getPositionAt(position.start);
|
|
114
|
-
let point2 = model.getPositionAt(position.start + position.length);
|
|
115
|
-
this._monacoEditor.setSelection({ startLineNumber: point1.lineNumber, startColumn: point1.column, endLineNumber: point2.lineNumber, endColumn: point2.column });
|
|
116
|
-
setTimeout(() => this._monacoEditor.revealLine(point1.lineNumber), 20);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
customElements.define('node-projects-code-view-monaco', CodeViewMonaco);
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "./designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from "./IDesignerCanvas.js";
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "./IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class ButtonSeperatorProvider implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
_space: number;
|
|
6
|
-
constructor(space: number);
|
|
7
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
8
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export class ButtonSeperatorProvider {
|
|
2
|
-
_space;
|
|
3
|
-
constructor(space) {
|
|
4
|
-
this._space = space;
|
|
5
|
-
}
|
|
6
|
-
provideButtons(designerView, designerCanvas) {
|
|
7
|
-
const div = document.createElement('div');
|
|
8
|
-
div.style.marginLeft = this._space + 'px';
|
|
9
|
-
return [div];
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "../designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "../IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class FlexboxExtensionDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
6
|
-
}
|
package/dist/elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { flexboxExtensionShowOverlayOptionName } from "./FlexboxExtensionProvider.js";
|
|
2
|
-
export class FlexboxExtensionDesignViewConfigButtons {
|
|
3
|
-
provideButtons(designerView, designerCanvas) {
|
|
4
|
-
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
5
|
-
const btn = document.createElement('div');
|
|
6
|
-
btn.innerText = 'F';
|
|
7
|
-
btn.title = 'show flexbox overlay';
|
|
8
|
-
btn.className = 'toolbar-control';
|
|
9
|
-
if (extensionOptions[flexboxExtensionShowOverlayOptionName] !== false)
|
|
10
|
-
btn.classList.add('selected');
|
|
11
|
-
btn.onclick = () => {
|
|
12
|
-
const val = extensionOptions[flexboxExtensionShowOverlayOptionName];
|
|
13
|
-
extensionOptions[flexboxExtensionShowOverlayOptionName] = val === false ? true : false;
|
|
14
|
-
if (extensionOptions[flexboxExtensionShowOverlayOptionName] !== false)
|
|
15
|
-
btn.classList.add('selected');
|
|
16
|
-
else
|
|
17
|
-
btn.classList.remove('selected');
|
|
18
|
-
designerCanvas.extensionManager.reapplyAllAppliedExtentions();
|
|
19
|
-
};
|
|
20
|
-
return [btn];
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IDesignItem } from "../../../item/IDesignItem";
|
|
2
|
-
import { IDesignerCanvas } from "../IDesignerCanvas";
|
|
3
|
-
import { AbstractExtension } from "./AbstractExtension";
|
|
4
|
-
import { IExtensionManager } from "./IExtensionManger";
|
|
5
|
-
export declare class GridExtension extends AbstractExtension {
|
|
6
|
-
constructor(extensionManager: IExtensionManager, designerView: IDesignerCanvas, extendedItem: IDesignItem);
|
|
7
|
-
extend(): void;
|
|
8
|
-
refresh(): void;
|
|
9
|
-
dispose(): void;
|
|
10
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { CalculateGridInformation } from "../../../helper/GridHelper.js";
|
|
2
|
-
import { AbstractExtension } from "./AbstractExtension";
|
|
3
|
-
import { OverlayLayer } from "./OverlayLayer.js";
|
|
4
|
-
export class GridExtension extends AbstractExtension {
|
|
5
|
-
constructor(extensionManager, designerView, extendedItem) {
|
|
6
|
-
super(extensionManager, designerView, extendedItem);
|
|
7
|
-
}
|
|
8
|
-
extend() {
|
|
9
|
-
const gridInformation = CalculateGridInformation(this.extendedItem);
|
|
10
|
-
for (let gap of gridInformation.gaps) {
|
|
11
|
-
this._drawRect(gap.x, gap.y, gap.width, gap.height, 'svg-grid-gap', null, OverlayLayer.Background);
|
|
12
|
-
}
|
|
13
|
-
for (let cellRow of gridInformation.cells) {
|
|
14
|
-
for (let cell of cellRow) {
|
|
15
|
-
this._drawRect(cell.x, cell.y, cell.width, cell.height, 'svg-grid', null, OverlayLayer.Background);
|
|
16
|
-
if (cell.name) {
|
|
17
|
-
const text = this._drawText(cell.name, cell.x, cell.y, 'svg-grid-area', null, OverlayLayer.Background);
|
|
18
|
-
text.setAttribute("dominant-baseline", "hanging");
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
refresh() {
|
|
24
|
-
this._removeAllOverlays();
|
|
25
|
-
this.extend();
|
|
26
|
-
}
|
|
27
|
-
dispose() {
|
|
28
|
-
this._removeAllOverlays();
|
|
29
|
-
}
|
|
30
|
-
}
|
package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons copy.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "../designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "../IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class GridExtensionDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
6
|
-
}
|
package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons copy.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { gridExtensionShowOverlayOptionName } from "./GridExtensionProvider.js";
|
|
2
|
-
export class GridExtensionDesignViewConfigButtons {
|
|
3
|
-
provideButtons(designerView, designerCanvas) {
|
|
4
|
-
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
5
|
-
const btn = document.createElement('div');
|
|
6
|
-
btn.innerText = 'G';
|
|
7
|
-
btn.title = 'show grid overlay';
|
|
8
|
-
btn.className = 'toolbar-control';
|
|
9
|
-
if (extensionOptions[gridExtensionShowOverlayOptionName] !== false)
|
|
10
|
-
btn.classList.add('selected');
|
|
11
|
-
btn.onclick = () => {
|
|
12
|
-
const val = extensionOptions[gridExtensionShowOverlayOptionName];
|
|
13
|
-
extensionOptions[gridExtensionShowOverlayOptionName] = val === false ? true : false;
|
|
14
|
-
if (extensionOptions[gridExtensionShowOverlayOptionName] !== false)
|
|
15
|
-
btn.classList.add('selected');
|
|
16
|
-
else
|
|
17
|
-
btn.classList.remove('selected');
|
|
18
|
-
};
|
|
19
|
-
return [btn];
|
|
20
|
-
}
|
|
21
|
-
}
|
package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "../designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "../IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class GridExtensionDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
6
|
-
}
|
package/dist/elements/widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { gridExtensionShowOverlayOptionName } from "./GridExtensionProvider.js";
|
|
2
|
-
export class GridExtensionDesignViewConfigButtons {
|
|
3
|
-
provideButtons(designerView, designerCanvas) {
|
|
4
|
-
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
5
|
-
const btn = document.createElement('div');
|
|
6
|
-
btn.innerText = 'G';
|
|
7
|
-
btn.title = 'show grid overlay';
|
|
8
|
-
btn.className = 'toolbar-control';
|
|
9
|
-
if (extensionOptions[gridExtensionShowOverlayOptionName] !== false)
|
|
10
|
-
btn.classList.add('selected');
|
|
11
|
-
btn.onclick = () => {
|
|
12
|
-
const val = extensionOptions[gridExtensionShowOverlayOptionName];
|
|
13
|
-
extensionOptions[gridExtensionShowOverlayOptionName] = val === false ? true : false;
|
|
14
|
-
if (extensionOptions[gridExtensionShowOverlayOptionName] !== false)
|
|
15
|
-
btn.classList.add('selected');
|
|
16
|
-
else
|
|
17
|
-
btn.classList.remove('selected');
|
|
18
|
-
designerCanvas.extensionManager.reapplyAllAppliedExtentions();
|
|
19
|
-
};
|
|
20
|
-
return [btn];
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IDesignerExtensionProvider } from "./IDesignerExtensionProvider";
|
|
2
|
-
import { IDesignItem } from "../../../item/IDesignItem";
|
|
3
|
-
import { IDesignerCanvas } from "../IDesignerCanvas";
|
|
4
|
-
import { IDesignerExtension } from "./IDesignerExtension";
|
|
5
|
-
import { IExtensionManager } from "./IExtensionManger";
|
|
6
|
-
export declare const gridExtensionShowOverlayOptionName = "gridExtensionShowOverlay";
|
|
7
|
-
export declare class GridExtensionProvider implements IDesignerExtensionProvider {
|
|
8
|
-
shouldExtend(extensionManager: IExtensionManager, designerView: IDesignerCanvas, designItem: IDesignItem): boolean;
|
|
9
|
-
getExtension(extensionManager: IExtensionManager, designerView: IDesignerCanvas, designItem: IDesignItem): IDesignerExtension;
|
|
10
|
-
readonly style: CSSStyleSheet;
|
|
11
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { GridExtension } from './GridExtension';
|
|
2
|
-
import { css } from "@node-projects/base-custom-webcomponent";
|
|
3
|
-
export const gridExtensionShowOverlayOptionName = 'gridExtensionShowOverlay';
|
|
4
|
-
export class GridExtensionProvider {
|
|
5
|
-
shouldExtend(extensionManager, designerView, designItem) {
|
|
6
|
-
if (getComputedStyle(designItem.element).display == 'grid')
|
|
7
|
-
return designerView.instanceServiceContainer.designContext.extensionOptions[gridExtensionShowOverlayOptionName] !== false;
|
|
8
|
-
return false;
|
|
9
|
-
}
|
|
10
|
-
getExtension(extensionManager, designerView, designItem) {
|
|
11
|
-
return new GridExtension(extensionManager, designerView, designItem);
|
|
12
|
-
}
|
|
13
|
-
style = css `
|
|
14
|
-
.svg-grid { stroke: orange; stroke-dasharray: 5; fill: #ff944722; }
|
|
15
|
-
.svg-grid-area { font-size: 8px; }
|
|
16
|
-
.svg-grid-gap { stroke: orange; stroke-dasharray: 5; fill: #0000ff22; }
|
|
17
|
-
`;
|
|
18
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IDesignItem } from '../../../item/IDesignItem.js';
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { AbstractExtension } from './AbstractExtension.js';
|
|
4
|
-
import { IExtensionManager } from './IExtensionManger.js';
|
|
5
|
-
export declare class InvisibleDivExtension extends AbstractExtension {
|
|
6
|
-
private _rect;
|
|
7
|
-
constructor(extensionManager: IExtensionManager, designerCanvas: IDesignerCanvas, extendedItem: IDesignItem);
|
|
8
|
-
extend(): void;
|
|
9
|
-
refresh(): void;
|
|
10
|
-
dispose(): void;
|
|
11
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { getDesignerCanvasNormalizedTransformedCornerDOMPoints } from '../../../helper/TransformHelper.js';
|
|
2
|
-
import { AbstractExtension } from './AbstractExtension.js';
|
|
3
|
-
import { OverlayLayer } from "./OverlayLayer.js";
|
|
4
|
-
export class InvisibleDivExtension extends AbstractExtension {
|
|
5
|
-
_rect;
|
|
6
|
-
constructor(extensionManager, designerCanvas, extendedItem) {
|
|
7
|
-
super(extensionManager, designerCanvas, extendedItem);
|
|
8
|
-
}
|
|
9
|
-
extend() {
|
|
10
|
-
this.refresh();
|
|
11
|
-
}
|
|
12
|
-
refresh() {
|
|
13
|
-
let transformedCornerPoints = getDesignerCanvasNormalizedTransformedCornerDOMPoints(this.extendedItem.element, null, this.designerCanvas);
|
|
14
|
-
this._rect = this._drawTransformedRect(transformedCornerPoints, 'svg-invisible-div', this._rect, OverlayLayer.Background);
|
|
15
|
-
}
|
|
16
|
-
dispose() {
|
|
17
|
-
this._removeAllOverlays();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "../designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "../IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class InvisibleDivExtensionDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
6
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { invisibleDivExtensionShowOverlayOptionName } from "./InvisibleElementExtensionProvider.js";
|
|
2
|
-
export class InvisibleDivExtensionDesignViewConfigButtons {
|
|
3
|
-
provideButtons(designerView, designerCanvas) {
|
|
4
|
-
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
5
|
-
const btn = document.createElement('div');
|
|
6
|
-
btn.innerText = 'I';
|
|
7
|
-
btn.title = 'show invisible div overlay';
|
|
8
|
-
btn.className = 'toolbar-control';
|
|
9
|
-
if (extensionOptions[invisibleDivExtensionShowOverlayOptionName] !== false)
|
|
10
|
-
btn.classList.add('selected');
|
|
11
|
-
btn.onclick = () => {
|
|
12
|
-
const val = extensionOptions[invisibleDivExtensionShowOverlayOptionName];
|
|
13
|
-
extensionOptions[invisibleDivExtensionShowOverlayOptionName] = val === false ? true : false;
|
|
14
|
-
if (extensionOptions[invisibleDivExtensionShowOverlayOptionName] !== false)
|
|
15
|
-
btn.classList.add('selected');
|
|
16
|
-
else
|
|
17
|
-
btn.classList.remove('selected');
|
|
18
|
-
designerCanvas.extensionManager.reapplyAllAppliedExtentions();
|
|
19
|
-
};
|
|
20
|
-
return [btn];
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IDesignerExtensionProvider } from './IDesignerExtensionProvider.js';
|
|
2
|
-
import { IDesignItem } from '../../../item/IDesignItem.js';
|
|
3
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
4
|
-
import { IDesignerExtension } from './IDesignerExtension.js';
|
|
5
|
-
import { IExtensionManager } from './IExtensionManger.js';
|
|
6
|
-
export declare const invisibleDivExtensionShowOverlayOptionName = "invisibleDivExtensionShowOverlay";
|
|
7
|
-
export declare class InvisibleDivExtensionProvider implements IDesignerExtensionProvider {
|
|
8
|
-
shouldExtend(extensionManager: IExtensionManager, designerCanvas: IDesignerCanvas, designItem: IDesignItem): boolean;
|
|
9
|
-
getExtension(extensionManager: IExtensionManager, designerCanvas: IDesignerCanvas, designItem: IDesignItem): IDesignerExtension;
|
|
10
|
-
readonly style: CSSStyleSheet;
|
|
11
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { InvisibleDivExtension } from './InvisibleDivExtension.js';
|
|
2
|
-
import { css } from "@node-projects/base-custom-webcomponent";
|
|
3
|
-
export const invisibleDivExtensionShowOverlayOptionName = 'invisibleDivExtensionShowOverlay';
|
|
4
|
-
export class InvisibleDivExtensionProvider {
|
|
5
|
-
shouldExtend(extensionManager, designerCanvas, designItem) {
|
|
6
|
-
if (designerCanvas.instanceServiceContainer.designContext.extensionOptions[invisibleDivExtensionShowOverlayOptionName] !== false) {
|
|
7
|
-
if (designItem.name == 'div') {
|
|
8
|
-
const st = window.getComputedStyle(designItem.element);
|
|
9
|
-
return st.backgroundColor == 'rgba(0, 0, 0, 0)' && st.borderStyle == 'none';
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
getExtension(extensionManager, designerCanvas, designItem) {
|
|
15
|
-
return new InvisibleDivExtension(extensionManager, designerCanvas, designItem);
|
|
16
|
-
}
|
|
17
|
-
style = css `
|
|
18
|
-
.svg-invisible-div { stroke: lightgray; fill: transparent; stroke-width: 1;
|
|
19
|
-
`;
|
|
20
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DesignerView } from "../designerView.js";
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { IDesignViewConfigButtonsProvider } from "../IDesignViewConfigButtonsProvider.js";
|
|
4
|
-
export declare class InvisibleElementExtensionDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
5
|
-
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
6
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { invisibleElementExtensionShowOverlayOptionName } from "./InvisibleElementExtensionProvider.js";
|
|
2
|
-
export class InvisibleElementExtensionDesignViewConfigButtons {
|
|
3
|
-
provideButtons(designerView, designerCanvas) {
|
|
4
|
-
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
5
|
-
const btn = document.createElement('div');
|
|
6
|
-
btn.innerText = 'I';
|
|
7
|
-
btn.title = 'show invisible div overlay';
|
|
8
|
-
btn.className = 'toolbar-control';
|
|
9
|
-
if (extensionOptions[invisibleElementExtensionShowOverlayOptionName] !== false)
|
|
10
|
-
btn.classList.add('selected');
|
|
11
|
-
btn.onclick = () => {
|
|
12
|
-
const val = extensionOptions[invisibleElementExtensionShowOverlayOptionName];
|
|
13
|
-
extensionOptions[invisibleElementExtensionShowOverlayOptionName] = val === false ? true : false;
|
|
14
|
-
if (extensionOptions[invisibleElementExtensionShowOverlayOptionName] !== false)
|
|
15
|
-
btn.classList.add('selected');
|
|
16
|
-
else
|
|
17
|
-
btn.classList.remove('selected');
|
|
18
|
-
designerCanvas.extensionManager.reapplyAllAppliedExtentions();
|
|
19
|
-
};
|
|
20
|
-
return [btn];
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IDesignItem } from '../../../item/IDesignItem.js';
|
|
2
|
-
import { IDesignerCanvas } from '../IDesignerCanvas.js';
|
|
3
|
-
import { AbstractExtension } from './AbstractExtension.js';
|
|
4
|
-
import { IExtensionManager } from './IExtensionManger.js';
|
|
5
|
-
export declare class MouseOverExtension extends AbstractExtension {
|
|
6
|
-
private _rect;
|
|
7
|
-
constructor(extensionManager: IExtensionManager, designerView: IDesignerCanvas, extendedItem: IDesignItem);
|
|
8
|
-
extend(): void;
|
|
9
|
-
refresh(): void;
|
|
10
|
-
dispose(): void;
|
|
11
|
-
}
|