@node-projects/web-component-designer 0.0.172 → 0.0.174
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/item/DesignItem.d.ts +3 -1
- package/dist/elements/item/DesignItem.js +27 -5
- package/dist/elements/item/IDesignItem.d.ts +2 -1
- package/dist/elements/services/DefaultServiceBootstrap.js +6 -5
- package/dist/elements/services/ServiceContainer.d.ts +1 -1
- package/dist/elements/services/propertiesService/services/CssCurrentPropertiesService.d.ts +9 -0
- package/dist/elements/services/propertiesService/services/CssCurrentPropertiesService.js +17 -1
- package/dist/elements/widgets/designerView/extensions/GridExtension.js +1 -1
- package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.d.ts +12 -0
- package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js +40 -0
- package/dist/elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.d.ts +8 -0
- package/dist/elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js +11 -0
- package/dist/elements/widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.d.ts +6 -0
- package/dist/elements/widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.js +22 -0
- package/dist/elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.d.ts +6 -0
- package/dist/elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.js +22 -0
- package/dist/elements/widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider.js +1 -0
- package/dist/elements/widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.d.ts +6 -0
- package/dist/elements/widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.js +22 -0
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons copy.d.ts +7 -0
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons copy.js +21 -0
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.d.ts +5 -0
- package/dist/elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js +7 -0
- package/dist/elements/widgets/designerView/tools/PointerTool.js +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.js +6 -2
- package/package.json +1 -1
|
@@ -76,7 +76,9 @@ export declare class DesignItem implements IDesignItem {
|
|
|
76
76
|
setStyle(name: string, value?: string | null, important?: boolean): void;
|
|
77
77
|
removeStyle(name: string): void;
|
|
78
78
|
updateStyleInSheetOrLocal(name: string, value?: string | null, important?: boolean): void;
|
|
79
|
-
getStyleFromSheetOrLocal(name: string): string;
|
|
79
|
+
getStyleFromSheetOrLocal(name: string, fallback?: string): string;
|
|
80
|
+
getStyleFromSheetOrLocalOrComputed(name: string, fallback?: string): string;
|
|
81
|
+
getComputedStyle(name: string, fallback?: string): string;
|
|
80
82
|
getAllStyles(): IStyleRule[];
|
|
81
83
|
setAttribute(name: string, value?: string | null): void;
|
|
82
84
|
removeAttribute(name: string): void;
|
|
@@ -7,6 +7,7 @@ import { PropertiesHelper } from '../services/propertiesService/services/Propert
|
|
|
7
7
|
import { InsertChildAction } from '../services/undoService/transactionItems/InsertChildAction.js';
|
|
8
8
|
import { DomConverter } from '../widgets/designerView/DomConverter.js';
|
|
9
9
|
import { DeleteAction } from '../services/undoService/transactionItems/DeleteAction.js';
|
|
10
|
+
import { enableStylesheetService } from '../widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js';
|
|
10
11
|
const hideAtDesignTimeAttributeName = 'node-projects-hide-at-design-time';
|
|
11
12
|
const hideAtRunTimeAttributeName = 'node-projects-hide-at-run-time';
|
|
12
13
|
const lockAtDesignTimeAttributeName = 'node-projects-lock-at-design-time';
|
|
@@ -19,9 +20,16 @@ export class DesignItem {
|
|
|
19
20
|
appliedDesignerExtensions = new Map();
|
|
20
21
|
shouldAppliedDesignerExtensions = new Map();
|
|
21
22
|
async clone() {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
try {
|
|
24
|
+
const html = DomConverter.ConvertToString([this], null, false);
|
|
25
|
+
const parsed = await this.serviceContainer.htmlParserService.parse(html, this.serviceContainer, this.instanceServiceContainer);
|
|
26
|
+
return parsed[0];
|
|
27
|
+
}
|
|
28
|
+
catch (err) {
|
|
29
|
+
//TODO: clone service for design item, maybe refactor copy&paste to use this also...
|
|
30
|
+
console.warn("could not clone design item.", this);
|
|
31
|
+
}
|
|
32
|
+
return null;
|
|
25
33
|
}
|
|
26
34
|
replaceNode(newNode) {
|
|
27
35
|
DesignItem._designItemMap.delete(this.node);
|
|
@@ -306,7 +314,7 @@ export class DesignItem {
|
|
|
306
314
|
let nm = PropertiesHelper.camelToDashCase(name);
|
|
307
315
|
// Pre-sorted by specificity
|
|
308
316
|
let declerations = this.instanceServiceContainer.stylesheetService?.getDeclarations(this, nm);
|
|
309
|
-
if (this.hasStyle(name) || !declerations) {
|
|
317
|
+
if (this.hasStyle(name) || this.instanceServiceContainer.designContext.extensionOptions[enableStylesheetService] === false || !declerations) {
|
|
310
318
|
// Set style locally
|
|
311
319
|
if (this.getStyle(nm) != value) {
|
|
312
320
|
this.setStyle(nm, value);
|
|
@@ -320,7 +328,7 @@ export class DesignItem {
|
|
|
320
328
|
this.instanceServiceContainer.stylesheetService.updateDeclarationWithDeclaration(declerations[0], value, important);
|
|
321
329
|
}
|
|
322
330
|
}
|
|
323
|
-
getStyleFromSheetOrLocal(name) {
|
|
331
|
+
getStyleFromSheetOrLocal(name, fallback = null) {
|
|
324
332
|
let nm = PropertiesHelper.camelToDashCase(name);
|
|
325
333
|
if (this.hasStyle(name))
|
|
326
334
|
// Get style locally
|
|
@@ -331,6 +339,20 @@ export class DesignItem {
|
|
|
331
339
|
return decls[0].value;
|
|
332
340
|
return null;
|
|
333
341
|
}
|
|
342
|
+
getStyleFromSheetOrLocalOrComputed(name, fallback = null) {
|
|
343
|
+
let value = this.getStyleFromSheetOrLocal(name);
|
|
344
|
+
if (!value) {
|
|
345
|
+
value = getComputedStyle(this.element).getPropertyValue(name);
|
|
346
|
+
}
|
|
347
|
+
return value ?? fallback;
|
|
348
|
+
}
|
|
349
|
+
getComputedStyle(name, fallback = null) {
|
|
350
|
+
let value = this.getStyleFromSheetOrLocal(name);
|
|
351
|
+
if (!value) {
|
|
352
|
+
value = getComputedStyle(this.element).getPropertyValue(name);
|
|
353
|
+
}
|
|
354
|
+
return value ?? fallback;
|
|
355
|
+
}
|
|
334
356
|
getAllStyles() {
|
|
335
357
|
const localStyles = [...this._styles.entries()].map(x => ({ name: x[0], value: x[1], important: false }));
|
|
336
358
|
if (this.instanceServiceContainer.stylesheetService) {
|
|
@@ -55,7 +55,8 @@ export interface IDesignItem {
|
|
|
55
55
|
setStyle(name: string, value?: string | null, important?: boolean): any;
|
|
56
56
|
removeStyle(name: string): any;
|
|
57
57
|
updateStyleInSheetOrLocal(name: string, value?: string | null, important?: boolean): any;
|
|
58
|
-
getStyleFromSheetOrLocal(name: string): any;
|
|
58
|
+
getStyleFromSheetOrLocal(name: string, fallback?: string): any;
|
|
59
|
+
getStyleFromSheetOrLocalOrComputed(name: string, fallback?: string): any;
|
|
59
60
|
getAllStyles(): IStyleRule[];
|
|
60
61
|
attributes(): Iterable<[name: string, value: string]>;
|
|
61
62
|
getAttribute(name: string): any;
|
|
@@ -44,8 +44,8 @@ import { DragDropService } from './dragDropService/DragDropService.js';
|
|
|
44
44
|
import { EditTextExtensionProvider } from '../widgets/designerView/extensions/EditText/EditTextExtensionProvider.js';
|
|
45
45
|
import { CopyPasteService } from './copyPasteService/CopyPasteService.js';
|
|
46
46
|
import { DefaultModelCommandService } from './modelCommandService/DefaultModelCommandService.js';
|
|
47
|
-
import { ButtonSeperatorProvider } from '../widgets/designerView/ButtonSeperatorProvider.js';
|
|
48
|
-
import { GridExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/GridExtensionDesignViewConfigButtons.js';
|
|
47
|
+
import { ButtonSeperatorProvider } from '../widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js';
|
|
48
|
+
import { GridExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.js';
|
|
49
49
|
import { DemoProviderService } from './demoProviderService/DemoProviderService.js';
|
|
50
50
|
import { DrawRectTool } from '../widgets/designerView/tools/DrawRectTool.js';
|
|
51
51
|
import { DrawEllipsisTool } from '../widgets/designerView/tools/DrawEllipsisTool.js';
|
|
@@ -70,11 +70,12 @@ import { EllipsisExtensionProvider } from '../widgets/designerView/extensions/sv
|
|
|
70
70
|
import { PropertyTabsService } from './propertiesService/PropertyTabsService.js';
|
|
71
71
|
import { PlacementExtensionProvider } from '../widgets/designerView/extensions/PlacementExtensionProvider.js';
|
|
72
72
|
import { FlexboxExtensionProvider } from '../widgets/designerView/extensions/FlexboxExtensionProvider.js';
|
|
73
|
-
import { FlexboxExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.js';
|
|
74
|
-
import { InvisibleElementExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/InvisibleElementExtensionDesignViewConfigButtons.js';
|
|
73
|
+
import { FlexboxExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.js';
|
|
74
|
+
import { InvisibleElementExtensionDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.js';
|
|
75
75
|
import { UndoService } from './undoService/UndoService.js';
|
|
76
76
|
import { SelectionService } from './selectionService/SelectionService.js';
|
|
77
77
|
import { ContentService } from './contentService/ContentService.js';
|
|
78
|
+
import { StylesheetServiceDesignViewConfigButtons } from '../widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js';
|
|
78
79
|
export function createDefaultServiceContainer() {
|
|
79
80
|
let serviceContainer = new ServiceContainer();
|
|
80
81
|
serviceContainer.register("propertyService", new PolymerPropertiesService());
|
|
@@ -161,7 +162,7 @@ export function createDefaultServiceContainer() {
|
|
|
161
162
|
serviceContainer.designerPointerExtensions.push(
|
|
162
163
|
//new CursorLinePointerExtensionProvider()
|
|
163
164
|
);
|
|
164
|
-
serviceContainer.designViewConfigButtons.push(new ButtonSeperatorProvider(20), new GridExtensionDesignViewConfigButtons(), new FlexboxExtensionDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new InvisibleElementExtensionDesignViewConfigButtons());
|
|
165
|
+
serviceContainer.designViewConfigButtons.push(new ButtonSeperatorProvider(20), new GridExtensionDesignViewConfigButtons(), new FlexboxExtensionDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new InvisibleElementExtensionDesignViewConfigButtons(), new ButtonSeperatorProvider(10), new StylesheetServiceDesignViewConfigButtons());
|
|
165
166
|
serviceContainer.designViewToolbarButtons.push(new PointerToolButtonProvider(), new SeperatorToolProvider(22), new SelectorToolButtonProvider(), new SeperatorToolProvider(22), new ZoomToolButtonProvider(), new SeperatorToolProvider(22), new DrawToolButtonProvider(), new SeperatorToolProvider(5), new TextToolButtonProvider());
|
|
166
167
|
serviceContainer.designerContextMenuExtensions = [
|
|
167
168
|
new CopyPasteContextMenu(),
|
|
@@ -22,7 +22,7 @@ import { IDragDropService } from './dragDropService/IDragDropService.js';
|
|
|
22
22
|
import { ICopyPasteService } from "./copyPasteService/ICopyPasteService.js";
|
|
23
23
|
import { IDesignerPointerExtensionProvider } from "../widgets/designerView/extensions/pointerExtensions/IDesignerPointerExtensionProvider.js";
|
|
24
24
|
import { IModelCommandService } from "./modelCommandService/IModelCommandService.js";
|
|
25
|
-
import { IDesignViewConfigButtonsProvider } from "../widgets/designerView/IDesignViewConfigButtonsProvider.js";
|
|
25
|
+
import { IDesignViewConfigButtonsProvider } from "../widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider.js";
|
|
26
26
|
import { IDemoProviderService } from "./demoProviderService/IDemoProviderService.js";
|
|
27
27
|
import { IBindableObjectsService } from "./bindableObjectsService/IBindableObjectsService.js";
|
|
28
28
|
import { IBindableObjectDragDropService } from "./bindableObjectsService/IBindableObjectDragDropService.js";
|
|
@@ -4,6 +4,7 @@ import { RefreshMode } from '../IPropertiesService.js';
|
|
|
4
4
|
import { IPropertyGroup } from '../IPropertyGroup.js';
|
|
5
5
|
import { IStyleDeclaration, IStyleRule } from '../../stylesheetService/IStylesheetService.js';
|
|
6
6
|
import { CommonPropertiesService } from './CommonPropertiesService.js';
|
|
7
|
+
import { ValueType } from '../ValueType.js';
|
|
7
8
|
export declare class CssCurrentPropertiesService extends CommonPropertiesService {
|
|
8
9
|
getRefreshMode(designItem: IDesignItem): RefreshMode;
|
|
9
10
|
constructor();
|
|
@@ -18,4 +19,12 @@ export declare class CssCurrentPropertiesService extends CommonPropertiesService
|
|
|
18
19
|
styleRule: IStyleRule;
|
|
19
20
|
styleDeclaration: IStyleDeclaration;
|
|
20
21
|
}): void;
|
|
22
|
+
getValue(designItems: IDesignItem[], property: IProperty & {
|
|
23
|
+
styleRule: IStyleRule;
|
|
24
|
+
styleDeclaration: IStyleDeclaration;
|
|
25
|
+
}): any;
|
|
26
|
+
isSet(designItems: IDesignItem[], property: IProperty & {
|
|
27
|
+
styleRule: IStyleRule;
|
|
28
|
+
styleDeclaration: IStyleDeclaration;
|
|
29
|
+
}): ValueType;
|
|
21
30
|
}
|
|
@@ -2,6 +2,8 @@ import { PropertyType } from '../PropertyType.js';
|
|
|
2
2
|
import { RefreshMode } from '../IPropertiesService.js';
|
|
3
3
|
import { CommonPropertiesService } from './CommonPropertiesService.js';
|
|
4
4
|
import cssProperties from './CssProperties.json' assert { type: 'json' };
|
|
5
|
+
import { ValueType } from '../ValueType.js';
|
|
6
|
+
const localName = '<local>';
|
|
5
7
|
export class CssCurrentPropertiesService extends CommonPropertiesService {
|
|
6
8
|
getRefreshMode(designItem) {
|
|
7
9
|
return RefreshMode.fullOnValueChange;
|
|
@@ -21,7 +23,7 @@ export class CssCurrentPropertiesService extends CommonPropertiesService {
|
|
|
21
23
|
return [];
|
|
22
24
|
let styles = designItem.getAllStyles();
|
|
23
25
|
let arr = styles.map(x => ({
|
|
24
|
-
name: x.selector ??
|
|
26
|
+
name: x.selector ?? localName, description: x.stylesheetName ?? '', properties: [
|
|
25
27
|
...x.declarations.map(y => ({
|
|
26
28
|
name: y.name,
|
|
27
29
|
renamable: true,
|
|
@@ -57,4 +59,18 @@ export class CssCurrentPropertiesService extends CommonPropertiesService {
|
|
|
57
59
|
}
|
|
58
60
|
super.clearValue(designItems, property);
|
|
59
61
|
}
|
|
62
|
+
getValue(designItems, property) {
|
|
63
|
+
if (property.styleRule?.selector && property.styleDeclaration)
|
|
64
|
+
return property.styleDeclaration.value;
|
|
65
|
+
return super.getValue(designItems, property);
|
|
66
|
+
}
|
|
67
|
+
isSet(designItems, property) {
|
|
68
|
+
if (property.styleRule?.selector && property.styleDeclaration) {
|
|
69
|
+
if (designItems[0].hasStyle(property.name))
|
|
70
|
+
return ValueType.none;
|
|
71
|
+
//TODO: we need to check if this is the dec. with the highest specifity
|
|
72
|
+
return ValueType.all;
|
|
73
|
+
}
|
|
74
|
+
return super.isSet(designItems, property);
|
|
75
|
+
}
|
|
60
76
|
}
|
|
@@ -310,7 +310,7 @@ export class GridExtension extends AbstractExtension {
|
|
|
310
310
|
_convertCssUnit(cssValue, target, percentTarget, unit) {
|
|
311
311
|
if (unit == "fr") {
|
|
312
312
|
let containerSize = convertCssUnitToPixel(target.style.width, target, percentTarget);
|
|
313
|
-
let amountGaps = percentTarget == "
|
|
313
|
+
let amountGaps = percentTarget == "height" ? this.gridInformation.cells.length - 1 : this.gridInformation.cells[0].length - 1;
|
|
314
314
|
let gapSize = convertCssUnitToPixel(percentTarget == "width" ? target.style.columnGap : target.style.rowGap, target, percentTarget);
|
|
315
315
|
let containerSizeWithoutGaps = containerSize - gapSize * amountGaps;
|
|
316
316
|
let amountFrSizes = 0;
|
package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IContextMenuItem } from "../../../../helper/contextMenu/IContextMenuItem.js";
|
|
2
|
+
import { DesignerView } from "../../designerView.js";
|
|
3
|
+
import { IDesignerCanvas } from '../../IDesignerCanvas.js';
|
|
4
|
+
import { IDesignViewConfigButtonsProvider } from "./IDesignViewConfigButtonsProvider.js";
|
|
5
|
+
export declare class AbstractDesignViewConfigButton implements IDesignViewConfigButtonsProvider {
|
|
6
|
+
protected settingName: any;
|
|
7
|
+
private content;
|
|
8
|
+
private tooltp;
|
|
9
|
+
private contextmenu;
|
|
10
|
+
constructor(settingName: string, content: string | HTMLElement, tooltip: string, contextmenu?: IContextMenuItem[]);
|
|
11
|
+
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
12
|
+
}
|
package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ContextMenu } from "../../../../helper/contextMenu/ContextMenu.js";
|
|
2
|
+
export class AbstractDesignViewConfigButton {
|
|
3
|
+
settingName;
|
|
4
|
+
content;
|
|
5
|
+
tooltp;
|
|
6
|
+
contextmenu;
|
|
7
|
+
constructor(settingName, content, tooltip, contextmenu) {
|
|
8
|
+
this.settingName = settingName;
|
|
9
|
+
this.content = content;
|
|
10
|
+
this.tooltp = tooltip;
|
|
11
|
+
this.contextmenu = contextmenu;
|
|
12
|
+
}
|
|
13
|
+
provideButtons(designerView, designerCanvas) {
|
|
14
|
+
const btn = document.createElement('div');
|
|
15
|
+
if (typeof this.content == 'string')
|
|
16
|
+
btn.innerHTML = this.content;
|
|
17
|
+
else
|
|
18
|
+
btn.appendChild(this.content);
|
|
19
|
+
btn.title = this.tooltp;
|
|
20
|
+
btn.className = 'toolbar-control';
|
|
21
|
+
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
22
|
+
if (extensionOptions[this.settingName] !== false)
|
|
23
|
+
btn.classList.add('selected');
|
|
24
|
+
btn.onclick = () => {
|
|
25
|
+
const val = extensionOptions[this.settingName];
|
|
26
|
+
extensionOptions[this.settingName] = val === false ? true : false;
|
|
27
|
+
if (extensionOptions[this.settingName] !== false)
|
|
28
|
+
btn.classList.add('selected');
|
|
29
|
+
else
|
|
30
|
+
btn.classList.remove('selected');
|
|
31
|
+
};
|
|
32
|
+
btn.oncontextmenu = (e) => {
|
|
33
|
+
e.preventDefault();
|
|
34
|
+
if (this.contextmenu) {
|
|
35
|
+
ContextMenu.show(this.contextmenu, e);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
return [btn];
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
}
|
package/dist/elements/widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DesignerView } from "../../designerView.js";
|
|
2
|
+
import { IDesignerCanvas } from '../../IDesignerCanvas.js';
|
|
3
|
+
import { IDesignViewConfigButtonsProvider } from "../../IDesignViewConfigButtonsProvider.js";
|
|
4
|
+
export declare const disableStylesheetService = "disableStylesheetService";
|
|
5
|
+
export declare class StylesheetServiceDesignViewConfigButtons implements IDesignViewConfigButtonsProvider {
|
|
6
|
+
provideButtons(designerView: DesignerView, designerCanvas: IDesignerCanvas): HTMLElement[];
|
|
7
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const disableStylesheetService = 'disableStylesheetService';
|
|
2
|
+
export class StylesheetServiceDesignViewConfigButtons {
|
|
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[disableStylesheetService] !== false)
|
|
10
|
+
btn.classList.add('selected');
|
|
11
|
+
btn.onclick = () => {
|
|
12
|
+
const val = extensionOptions[disableStylesheetService];
|
|
13
|
+
extensionOptions[disableStylesheetService] = val === false ? true : false;
|
|
14
|
+
if (extensionOptions[disableStylesheetService] !== false)
|
|
15
|
+
btn.classList.add('selected');
|
|
16
|
+
else
|
|
17
|
+
btn.classList.remove('selected');
|
|
18
|
+
};
|
|
19
|
+
return [btn];
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { AbstractDesignViewConfigButton } from "./AbstractDesignViewConfigButton.js";
|
|
2
|
+
export declare const enableStylesheetService = "enableStylesheetService";
|
|
3
|
+
export declare class StylesheetServiceDesignViewConfigButtons extends AbstractDesignViewConfigButton {
|
|
4
|
+
constructor();
|
|
5
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AbstractDesignViewConfigButton } from "./AbstractDesignViewConfigButton.js";
|
|
2
|
+
export const enableStylesheetService = 'enableStylesheetService';
|
|
3
|
+
export class StylesheetServiceDesignViewConfigButtons extends AbstractDesignViewConfigButton {
|
|
4
|
+
constructor() {
|
|
5
|
+
super(enableStylesheetService, "ss", "modify Stylesheet");
|
|
6
|
+
}
|
|
7
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -167,7 +167,6 @@ export * from "./elements/widgets/designerView/extensions/CanvasExtensionProvide
|
|
|
167
167
|
export * from "./elements/widgets/designerView/extensions/ExtensionManager.js";
|
|
168
168
|
export * from "./elements/widgets/designerView/extensions/FlexboxExtension.js";
|
|
169
169
|
export * from "./elements/widgets/designerView/extensions/FlexboxExtensionProvider.js";
|
|
170
|
-
export * from "./elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.js";
|
|
171
170
|
export * from "./elements/widgets/designerView/extensions/GrayOutExtension.js";
|
|
172
171
|
export * from "./elements/widgets/designerView/extensions/GrayOutExtensionProvider.js";
|
|
173
172
|
export * from "./elements/widgets/designerView/extensions/GrayOutDragOverContainerExtension.js";
|
|
@@ -176,7 +175,6 @@ export * from "./elements/widgets/designerView/extensions/GridExtension.js";
|
|
|
176
175
|
export * from "./elements/widgets/designerView/extensions/GridExtensionProvider.js";
|
|
177
176
|
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtension.js";
|
|
178
177
|
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionProvider.js";
|
|
179
|
-
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionDesignViewConfigButtons.js";
|
|
180
178
|
export * from "./elements/widgets/designerView/extensions/HighlightElementExtension.js";
|
|
181
179
|
export * from "./elements/widgets/designerView/extensions/HighlightElementExtensionProvider.js";
|
|
182
180
|
export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
|
|
@@ -193,6 +191,13 @@ export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtens
|
|
|
193
191
|
export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js";
|
|
194
192
|
export * from "./elements/widgets/designerView/extensions/TransformOriginExtension.js";
|
|
195
193
|
export * from "./elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js";
|
|
194
|
+
export * from "./elements/widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.js";
|
|
195
|
+
export * from "./elements/widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.js";
|
|
196
|
+
export * from "./elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.js";
|
|
197
|
+
export * from "./elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js";
|
|
198
|
+
export * from "./elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js";
|
|
199
|
+
export * from "./elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js";
|
|
200
|
+
export type { IDesignViewConfigButtonsProvider } from "./elements/widgets/designerView/extensions/buttons/IDesignViewConfigButtonsProvider";
|
|
196
201
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtension.js";
|
|
197
202
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.js";
|
|
198
203
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextWithStyloExtension.js";
|
package/dist/index.js
CHANGED
|
@@ -122,7 +122,6 @@ export * from "./elements/widgets/designerView/extensions/CanvasExtensionProvide
|
|
|
122
122
|
export * from "./elements/widgets/designerView/extensions/ExtensionManager.js";
|
|
123
123
|
export * from "./elements/widgets/designerView/extensions/FlexboxExtension.js";
|
|
124
124
|
export * from "./elements/widgets/designerView/extensions/FlexboxExtensionProvider.js";
|
|
125
|
-
export * from "./elements/widgets/designerView/extensions/FlexboxExtensionDesignViewConfigButtons.js";
|
|
126
125
|
export * from "./elements/widgets/designerView/extensions/GrayOutExtension.js";
|
|
127
126
|
export * from "./elements/widgets/designerView/extensions/GrayOutExtensionProvider.js";
|
|
128
127
|
export * from "./elements/widgets/designerView/extensions/GrayOutDragOverContainerExtension.js";
|
|
@@ -131,7 +130,6 @@ export * from "./elements/widgets/designerView/extensions/GridExtension.js";
|
|
|
131
130
|
export * from "./elements/widgets/designerView/extensions/GridExtensionProvider.js";
|
|
132
131
|
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtension.js";
|
|
133
132
|
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionProvider.js";
|
|
134
|
-
export * from "./elements/widgets/designerView/extensions/InvisibleElementExtensionDesignViewConfigButtons.js";
|
|
135
133
|
export * from "./elements/widgets/designerView/extensions/HighlightElementExtension.js";
|
|
136
134
|
export * from "./elements/widgets/designerView/extensions/HighlightElementExtensionProvider.js";
|
|
137
135
|
export * from "./elements/widgets/designerView/extensions/svg/PathExtension.js";
|
|
@@ -148,6 +146,12 @@ export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtens
|
|
|
148
146
|
export * from "./elements/widgets/designerView/extensions/SelectionDefaultExtensionProvider.js";
|
|
149
147
|
export * from "./elements/widgets/designerView/extensions/TransformOriginExtension.js";
|
|
150
148
|
export * from "./elements/widgets/designerView/extensions/TransformOriginExtensionProvider.js";
|
|
149
|
+
export * from "./elements/widgets/designerView/extensions/buttons/InvisibleElementExtensionDesignViewConfigButtons.js";
|
|
150
|
+
export * from "./elements/widgets/designerView/extensions/buttons/FlexboxExtensionDesignViewConfigButtons.js";
|
|
151
|
+
export * from "./elements/widgets/designerView/extensions/buttons/GridExtensionDesignViewConfigButtons.js";
|
|
152
|
+
export * from "./elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js";
|
|
153
|
+
export * from "./elements/widgets/designerView/extensions/buttons/ButtonSeperatorProvider.js";
|
|
154
|
+
export * from "./elements/widgets/designerView/extensions/buttons/StylesheetServiceDesignViewConfigButtons.js";
|
|
151
155
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtension.js";
|
|
152
156
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextExtensionProvider.js";
|
|
153
157
|
export * from "./elements/widgets/designerView/extensions/EditText/EditTextWithStyloExtension.js";
|