@node-projects/web-component-designer 0.1.149 → 0.1.151
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/widgets/designerView/DesignContext.d.ts +2 -0
- package/dist/elements/widgets/designerView/DesignContext.js +2 -0
- package/dist/elements/widgets/designerView/IDesignContext.d.ts +2 -0
- package/dist/elements/widgets/designerView/designerCanvas.js +1 -1
- package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js +6 -0
- package/dist/elements/widgets/designerView/extensions/contextMenu/AlignItemsContextMenu.js +4 -1
- package/dist/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu.d.ts +1 -1
- package/dist/elements/widgets/designerView/extensions/contextMenu/ChildContextMenu.js +2 -2
- package/dist/elements/widgets/designerView/extensions/contextMenu/IContextMenuExtension.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TypedEvent } from '@node-projects/base-custom-webcomponent';
|
|
1
2
|
import { IDesignContext } from './IDesignContext.js';
|
|
2
3
|
export declare class DesignContext implements IDesignContext {
|
|
3
4
|
imports: string[];
|
|
@@ -5,4 +6,5 @@ export declare class DesignContext implements IDesignContext {
|
|
|
5
6
|
extensionOptions: {
|
|
6
7
|
[key: string]: any;
|
|
7
8
|
};
|
|
9
|
+
extensionOptionsChanged: TypedEvent<void>;
|
|
8
10
|
}
|
|
@@ -847,7 +847,7 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
847
847
|
const mnuItems = [];
|
|
848
848
|
for (let cme of this.serviceContainer.designerContextMenuExtensions) {
|
|
849
849
|
if (cme.shouldProvideContextmenu(event, this, designItem, 'designer')) {
|
|
850
|
-
mnuItems.push(...cme.provideContextMenuItems(event, this, designItem));
|
|
850
|
+
mnuItems.push(...cme.provideContextMenuItems(event, this, designItem, 'designer'));
|
|
851
851
|
}
|
|
852
852
|
}
|
|
853
853
|
let ctxMenu = new ContextMenu(mnuItems, null);
|
package/dist/elements/widgets/designerView/extensions/buttons/AbstractDesignViewConfigButton.js
CHANGED
|
@@ -18,6 +18,12 @@ export class AbstractDesignViewConfigButton {
|
|
|
18
18
|
btn.appendChild(this.content);
|
|
19
19
|
btn.title = this.tooltp;
|
|
20
20
|
btn.className = 'toolbar-control';
|
|
21
|
+
designerCanvas.instanceServiceContainer.designContext.extensionOptionsChanged.on(() => {
|
|
22
|
+
if (extensionOptions[this.settingName] !== false)
|
|
23
|
+
btn.classList.add('selected');
|
|
24
|
+
else
|
|
25
|
+
btn.classList.remove('selected');
|
|
26
|
+
});
|
|
21
27
|
const extensionOptions = designerCanvas.instanceServiceContainer.designContext.extensionOptions;
|
|
22
28
|
if (extensionOptions[this.settingName] !== false)
|
|
23
29
|
btn.classList.add('selected');
|
|
@@ -2,7 +2,10 @@ import { CommandType } from '../../../../../commandHandling/CommandType.js';
|
|
|
2
2
|
import { NodeType } from '../../../../item/NodeType.js';
|
|
3
3
|
export class AlignItemsContextMenu {
|
|
4
4
|
shouldProvideContextmenu(event, designerView, designItem, initiator) {
|
|
5
|
-
|
|
5
|
+
if (designItem?.instanceServiceContainer.selectionService.selectedElements.length > 1) {
|
|
6
|
+
return !designItem?.isRootItem && designItem?.nodeType == NodeType.Element;
|
|
7
|
+
}
|
|
8
|
+
return false;
|
|
6
9
|
}
|
|
7
10
|
provideContextMenuItems(event, designerView, designItem) {
|
|
8
11
|
return [
|
|
@@ -7,5 +7,5 @@ export declare class ChildContextMenu implements IContextMenuExtension {
|
|
|
7
7
|
private _contextMenus;
|
|
8
8
|
constructor(title: string, ...contextMenus: IContextMenuExtension[]);
|
|
9
9
|
shouldProvideContextmenu(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): boolean;
|
|
10
|
-
provideContextMenuItems(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem): IContextMenuItem[];
|
|
10
|
+
provideContextMenuItems(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): IContextMenuItem[];
|
|
11
11
|
}
|
|
@@ -8,7 +8,7 @@ export class ChildContextMenu {
|
|
|
8
8
|
shouldProvideContextmenu(event, designerView, designItem, initiator) {
|
|
9
9
|
return this._contextMenus.some(x => x.shouldProvideContextmenu(event, designerView, designItem, initiator));
|
|
10
10
|
}
|
|
11
|
-
provideContextMenuItems(event, designerView, designItem) {
|
|
12
|
-
return [{ title: this._title, children: this._contextMenus.map(x => x.provideContextMenuItems(event, designerView, designItem)).flat() }];
|
|
11
|
+
provideContextMenuItems(event, designerView, designItem, initiator) {
|
|
12
|
+
return [{ title: this._title, children: this._contextMenus.map(x => x.shouldProvideContextmenu(event, designerView, designItem, initiator) ? x.provideContextMenuItems(event, designerView, designItem, initiator) : []).flat() }];
|
|
13
13
|
}
|
|
14
14
|
}
|
package/dist/elements/widgets/designerView/extensions/contextMenu/IContextMenuExtension.d.ts
CHANGED
|
@@ -4,5 +4,5 @@ import { IDesignerCanvas } from '../../IDesignerCanvas.js';
|
|
|
4
4
|
export type ContextmenuInitiator = 'designer' | 'treeView' | 'other';
|
|
5
5
|
export interface IContextMenuExtension {
|
|
6
6
|
shouldProvideContextmenu(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): any;
|
|
7
|
-
provideContextMenuItems(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem): IContextMenuItem[];
|
|
7
|
+
provideContextMenuItems(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator, provider?: any): IContextMenuItem[];
|
|
8
8
|
}
|
package/package.json
CHANGED