@formicoidea/labre-core 0.24.0 → 0.26.0
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/_pkgs/affine-block-database/database-block.js +7 -2
- package/dist/_pkgs/affine-block-database/service/index.d.ts +12 -1
- package/dist/_pkgs/affine-block-database/service/index.js +1 -0
- package/dist/_pkgs/affine-components/toolbar/toolbar.js +10 -2
- package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-menu.js +1 -1
- package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-tool-button.js +0 -19
- package/dist/_pkgs/affine-model/blocks/database/database-model.d.ts +1 -0
- package/dist/_pkgs/affine-model/blocks/database/database-model.js +2 -1
- package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +6 -0
- package/dist/_pkgs/affine-widget-toolbar/utils.js +5 -1
- package/dist/_pkgs/std/effects.js +12 -5
- package/dist/extensions/view.js +0 -6
- package/dist/flags.d.ts +1 -1
- package/dist/flags.js +0 -4
- package/package.json +1 -1
- package/dist/_pkgs/affine-gfx-ddd/core-domain/consts.d.ts +0 -32
- package/dist/_pkgs/affine-gfx-ddd/core-domain/consts.js +0 -30
- package/dist/_pkgs/affine-gfx-ddd/core-domain/element-renderer.d.ts +0 -12
- package/dist/_pkgs/affine-gfx-ddd/core-domain/element-renderer.js +0 -93
- package/dist/_pkgs/affine-gfx-ddd/core-domain/element-view.d.ts +0 -11
- package/dist/_pkgs/affine-gfx-ddd/core-domain/element-view.js +0 -20
- package/dist/_pkgs/affine-gfx-ddd/core-domain/legend.d.ts +0 -18
- package/dist/_pkgs/affine-gfx-ddd/core-domain/legend.js +0 -69
- package/dist/_pkgs/affine-gfx-ddd/core-domain/toolbar-config.d.ts +0 -1
- package/dist/_pkgs/affine-gfx-ddd/core-domain/toolbar-config.js +0 -45
- package/dist/_pkgs/affine-gfx-ddd/effects.d.ts +0 -17
- package/dist/_pkgs/affine-gfx-ddd/effects.js +0 -21
- package/dist/_pkgs/affine-gfx-ddd/index.d.ts +0 -2
- package/dist/_pkgs/affine-gfx-ddd/index.js +0 -2
- package/dist/_pkgs/affine-gfx-ddd/shared/consts.d.ts +0 -180
- package/dist/_pkgs/affine-gfx-ddd/shared/consts.js +0 -92
- package/dist/_pkgs/affine-gfx-ddd/shared/prefabs.d.ts +0 -71
- package/dist/_pkgs/affine-gfx-ddd/shared/prefabs.js +0 -214
- package/dist/_pkgs/affine-gfx-ddd/shared/utils.d.ts +0 -10
- package/dist/_pkgs/affine-gfx-ddd/shared/utils.js +0 -9
- package/dist/_pkgs/affine-gfx-ddd/templates/components.d.ts +0 -7
- package/dist/_pkgs/affine-gfx-ddd/templates/components.js +0 -158
- package/dist/_pkgs/affine-gfx-ddd/templates/index.d.ts +0 -11
- package/dist/_pkgs/affine-gfx-ddd/templates/index.js +0 -108
- package/dist/_pkgs/affine-gfx-ddd/toolbar/context-map-menu.d.ts +0 -10
- package/dist/_pkgs/affine-gfx-ddd/toolbar/context-map-menu.js +0 -109
- package/dist/_pkgs/affine-gfx-ddd/toolbar/core-domain-menu.d.ts +0 -11
- package/dist/_pkgs/affine-gfx-ddd/toolbar/core-domain-menu.js +0 -118
- package/dist/_pkgs/affine-gfx-ddd/toolbar/event-storming-menu.d.ts +0 -9
- package/dist/_pkgs/affine-gfx-ddd/toolbar/event-storming-menu.js +0 -78
- package/dist/_pkgs/affine-gfx-ddd/toolbar/icons.d.ts +0 -6
- package/dist/_pkgs/affine-gfx-ddd/toolbar/icons.js +0 -20
- package/dist/_pkgs/affine-gfx-ddd/toolbar/menu-base.d.ts +0 -23
- package/dist/_pkgs/affine-gfx-ddd/toolbar/menu-base.js +0 -62
- package/dist/_pkgs/affine-gfx-ddd/toolbar/senior-buttons.d.ts +0 -34
- package/dist/_pkgs/affine-gfx-ddd/toolbar/senior-buttons.js +0 -114
- package/dist/_pkgs/affine-gfx-ddd/toolbar/senior-tool.d.ts +0 -6
- package/dist/_pkgs/affine-gfx-ddd/toolbar/senior-tool.js +0 -23
- package/dist/_pkgs/affine-gfx-ddd/view.d.ts +0 -35
- package/dist/_pkgs/affine-gfx-ddd/view.js +0 -95
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { EmptyTool } from '../../affine-gfx-pointer/index.js';
|
|
2
|
-
import { LitElement } from 'lit';
|
|
3
|
-
declare const DddMenuBase_base: typeof LitElement & import("../../global/utils/types.js").Constructor<import("../../affine-widget-edgeless-toolbar/index.js").EdgelessToolbarToolClass>;
|
|
4
|
-
/**
|
|
5
|
-
* Shared base for the three DDD popover menus: the menu shell styles, the
|
|
6
|
-
* "create then return to selection (palette stays open)" finish helper and
|
|
7
|
-
* the telemetry track helper. Each subclass adds its own create* methods (built
|
|
8
|
-
* from the shared prefab builders) and its own render().
|
|
9
|
-
*/
|
|
10
|
-
export declare abstract class DddMenuBase extends DddMenuBase_base {
|
|
11
|
-
static styles: import("lit").CSSResult;
|
|
12
|
-
type: typeof EmptyTool;
|
|
13
|
-
/** Framework id for telemetry. */
|
|
14
|
-
protected abstract framework: 'event-storming' | 'core-domain' | 'context-map';
|
|
15
|
-
protected get surface(): import("../../std/gfx/index.js").SurfaceBlockModel | null;
|
|
16
|
-
protected get center(): {
|
|
17
|
-
cx: number;
|
|
18
|
-
cy: number;
|
|
19
|
-
};
|
|
20
|
-
protected finish(id: string): void;
|
|
21
|
-
protected track(event: 'FrameworkElementAdded' | 'FrameworkToolPicked', element: string): void;
|
|
22
|
-
}
|
|
23
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { DefaultTool } from '../../affine-block-surface/index.js';
|
|
2
|
-
import { EmptyTool } from '../../affine-gfx-pointer/index.js';
|
|
3
|
-
import { TelemetryProvider } from '../../affine-shared/services/index.js';
|
|
4
|
-
import { EdgelessToolbarToolMixin } from '../../affine-widget-edgeless-toolbar/index.js';
|
|
5
|
-
import { css, LitElement } from 'lit';
|
|
6
|
-
/**
|
|
7
|
-
* Shared base for the three DDD popover menus: the menu shell styles, the
|
|
8
|
-
* "create then return to selection (palette stays open)" finish helper and
|
|
9
|
-
* the telemetry track helper. Each subclass adds its own create* methods (built
|
|
10
|
-
* from the shared prefab builders) and its own render().
|
|
11
|
-
*/
|
|
12
|
-
export class DddMenuBase extends EdgelessToolbarToolMixin(LitElement) {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
this.type = EmptyTool;
|
|
16
|
-
}
|
|
17
|
-
static { this.styles = css `
|
|
18
|
-
:host {
|
|
19
|
-
position: absolute;
|
|
20
|
-
display: flex;
|
|
21
|
-
z-index: -1;
|
|
22
|
-
}
|
|
23
|
-
.menu-content {
|
|
24
|
-
display: flex;
|
|
25
|
-
align-items: center;
|
|
26
|
-
justify-content: center;
|
|
27
|
-
}
|
|
28
|
-
.button-group-container {
|
|
29
|
-
display: flex;
|
|
30
|
-
align-items: center;
|
|
31
|
-
gap: 10px;
|
|
32
|
-
fill: var(--affine-icon-color);
|
|
33
|
-
}
|
|
34
|
-
.button-group-container svg {
|
|
35
|
-
width: 24px;
|
|
36
|
-
height: 24px;
|
|
37
|
-
}
|
|
38
|
-
`; }
|
|
39
|
-
get surface() {
|
|
40
|
-
return this.gfx.surface;
|
|
41
|
-
}
|
|
42
|
-
get center() {
|
|
43
|
-
const { centerX, centerY } = this.gfx.viewport;
|
|
44
|
-
return { cx: centerX, cy: centerY };
|
|
45
|
-
}
|
|
46
|
-
finish(id) {
|
|
47
|
-
const { gfx } = this;
|
|
48
|
-
gfx.doc.captureSync();
|
|
49
|
-
gfx.tool.setTool(DefaultTool);
|
|
50
|
-
gfx.selection.set({ elements: [id], editing: false });
|
|
51
|
-
// Palette stays open so several objects can be added in a row.
|
|
52
|
-
}
|
|
53
|
-
track(event, element) {
|
|
54
|
-
this.edgeless.std.getOptional(TelemetryProvider)?.track(event, {
|
|
55
|
-
framework: this.framework,
|
|
56
|
-
element,
|
|
57
|
-
page: 'whiteboard editor',
|
|
58
|
-
segment: 'ddd toolbox',
|
|
59
|
-
module: `${this.framework} menu`,
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { EmptyTool } from '../../affine-gfx-pointer/index.js';
|
|
2
|
-
import { LitElement, type TemplateResult } from 'lit';
|
|
3
|
-
declare const DddSeniorButtonBase_base: typeof LitElement & import("../../global/utils/types.js").Constructor<import("../../affine-widget-edgeless-toolbar/index.js").EdgelessToolbarToolClass>;
|
|
4
|
-
/**
|
|
5
|
-
* Shared base for the three DDD senior buttons. Each subclass only differs by
|
|
6
|
-
* the popover menu it opens, its tooltip and its glyph — the toggle / popper
|
|
7
|
-
* wiring is identical (mirrors the Cynefin senior button).
|
|
8
|
-
*/
|
|
9
|
-
declare abstract class DddSeniorButtonBase extends DddSeniorButtonBase_base {
|
|
10
|
-
static styles: import("lit").CSSResult;
|
|
11
|
-
enableActiveBackground: boolean;
|
|
12
|
-
type: typeof EmptyTool;
|
|
13
|
-
protected abstract menuTag: keyof HTMLElementTagNameMap;
|
|
14
|
-
protected abstract label: string;
|
|
15
|
-
protected abstract icon: TemplateResult;
|
|
16
|
-
private _toggleMenu;
|
|
17
|
-
render(): TemplateResult<1>;
|
|
18
|
-
}
|
|
19
|
-
export declare class EdgelessDddEventStormingSeniorButton extends DddSeniorButtonBase {
|
|
20
|
-
protected menuTag: "edgeless-ddd-event-storming-menu";
|
|
21
|
-
protected label: string;
|
|
22
|
-
protected icon: TemplateResult<2>;
|
|
23
|
-
}
|
|
24
|
-
export declare class EdgelessDddCoreDomainSeniorButton extends DddSeniorButtonBase {
|
|
25
|
-
protected menuTag: "edgeless-ddd-core-domain-menu";
|
|
26
|
-
protected label: string;
|
|
27
|
-
protected icon: TemplateResult<2>;
|
|
28
|
-
}
|
|
29
|
-
export declare class EdgelessDddContextMapSeniorButton extends DddSeniorButtonBase {
|
|
30
|
-
protected menuTag: "edgeless-ddd-context-map-menu";
|
|
31
|
-
protected label: string;
|
|
32
|
-
protected icon: TemplateResult<2>;
|
|
33
|
-
}
|
|
34
|
-
export {};
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import { DefaultTool } from '../../affine-block-surface/index.js';
|
|
2
|
-
import { EmptyTool } from '../../affine-gfx-pointer/index.js';
|
|
3
|
-
import { EdgelessToolbarToolMixin } from '../../affine-widget-edgeless-toolbar/index.js';
|
|
4
|
-
import { SignalWatcher } from '../../global/lit/index.js';
|
|
5
|
-
import { css, html, LitElement } from 'lit';
|
|
6
|
-
import { contextMapToolbarIcon, coreDomainToolbarIcon, eventStormingToolbarIcon, } from './icons';
|
|
7
|
-
/**
|
|
8
|
-
* Shared base for the three DDD senior buttons. Each subclass only differs by
|
|
9
|
-
* the popover menu it opens, its tooltip and its glyph — the toggle / popper
|
|
10
|
-
* wiring is identical (mirrors the Cynefin senior button).
|
|
11
|
-
*/
|
|
12
|
-
class DddSeniorButtonBase extends EdgelessToolbarToolMixin(SignalWatcher(LitElement)) {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
this.enableActiveBackground = true;
|
|
16
|
-
this.type = EmptyTool;
|
|
17
|
-
}
|
|
18
|
-
static { this.styles = css `
|
|
19
|
-
:host,
|
|
20
|
-
.ddd-button {
|
|
21
|
-
display: block;
|
|
22
|
-
width: 100%;
|
|
23
|
-
height: 100%;
|
|
24
|
-
}
|
|
25
|
-
:host {
|
|
26
|
-
position: relative;
|
|
27
|
-
}
|
|
28
|
-
.ddd-root {
|
|
29
|
-
width: 100%;
|
|
30
|
-
height: 64px;
|
|
31
|
-
cursor: pointer;
|
|
32
|
-
display: flex;
|
|
33
|
-
align-items: flex-end;
|
|
34
|
-
justify-content: center;
|
|
35
|
-
}
|
|
36
|
-
.ddd-card {
|
|
37
|
-
--y: -4px;
|
|
38
|
-
--s: 1;
|
|
39
|
-
width: 50px;
|
|
40
|
-
height: 50px;
|
|
41
|
-
margin-bottom: 4px;
|
|
42
|
-
transform: translateY(var(--y)) scale(var(--s));
|
|
43
|
-
transition: transform 0.3s ease;
|
|
44
|
-
}
|
|
45
|
-
.ddd-card svg {
|
|
46
|
-
display: block;
|
|
47
|
-
width: 100%;
|
|
48
|
-
height: 100%;
|
|
49
|
-
}
|
|
50
|
-
.ddd-root:hover .ddd-card {
|
|
51
|
-
--y: -10px;
|
|
52
|
-
--s: 1.07;
|
|
53
|
-
}
|
|
54
|
-
`; }
|
|
55
|
-
_toggleMenu() {
|
|
56
|
-
if (this.popper) {
|
|
57
|
-
this.popper.dispose();
|
|
58
|
-
this.popper = null;
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
this.setEdgelessTool(DefaultTool);
|
|
62
|
-
const menu = this.createPopper(this.menuTag, this);
|
|
63
|
-
menu.element.edgeless = this.edgeless;
|
|
64
|
-
const el = menu.element;
|
|
65
|
-
const wrap = el.parentElement;
|
|
66
|
-
if (wrap) {
|
|
67
|
-
wrap.style.overflow = 'visible';
|
|
68
|
-
wrap.style.justifyContent = 'flex-end';
|
|
69
|
-
}
|
|
70
|
-
Object.assign(el.style, {
|
|
71
|
-
position: 'static',
|
|
72
|
-
width: 'max-content',
|
|
73
|
-
maxWidth: 'calc(100vw - 16px)',
|
|
74
|
-
marginLeft: '0',
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
render() {
|
|
78
|
-
return html `<edgeless-toolbar-button
|
|
79
|
-
class="ddd-button"
|
|
80
|
-
.tooltip=${this.popper ? '' : this.label}
|
|
81
|
-
.tooltipOffset=${4}
|
|
82
|
-
.active=${!!this.popper}
|
|
83
|
-
@click=${this._toggleMenu}
|
|
84
|
-
>
|
|
85
|
-
<div class="ddd-root">
|
|
86
|
-
<div class="ddd-card">${this.icon}</div>
|
|
87
|
-
</div>
|
|
88
|
-
</edgeless-toolbar-button>`;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
export class EdgelessDddEventStormingSeniorButton extends DddSeniorButtonBase {
|
|
92
|
-
constructor() {
|
|
93
|
-
super(...arguments);
|
|
94
|
-
this.menuTag = 'edgeless-ddd-event-storming-menu';
|
|
95
|
-
this.label = 'Event Storming';
|
|
96
|
-
this.icon = eventStormingToolbarIcon;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
export class EdgelessDddCoreDomainSeniorButton extends DddSeniorButtonBase {
|
|
100
|
-
constructor() {
|
|
101
|
-
super(...arguments);
|
|
102
|
-
this.menuTag = 'edgeless-ddd-core-domain-menu';
|
|
103
|
-
this.label = 'Core Domain Chart';
|
|
104
|
-
this.icon = coreDomainToolbarIcon;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
export class EdgelessDddContextMapSeniorButton extends DddSeniorButtonBase {
|
|
108
|
-
constructor() {
|
|
109
|
-
super(...arguments);
|
|
110
|
-
this.menuTag = 'edgeless-ddd-context-map-menu';
|
|
111
|
-
this.label = 'Context Map';
|
|
112
|
-
this.icon = contextMapToolbarIcon;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/** Independent senior tool — Event Storming. */
|
|
2
|
-
export declare const eventStormingSeniorTool: import("../../store/index.js").ExtensionType;
|
|
3
|
-
/** Independent senior tool — Core Domain Chart. */
|
|
4
|
-
export declare const coreDomainSeniorTool: import("../../store/index.js").ExtensionType;
|
|
5
|
-
/** Independent senior tool — Context Map. */
|
|
6
|
-
export declare const contextMapSeniorTool: import("../../store/index.js").ExtensionType;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { SeniorToolExtension } from '../../affine-widget-edgeless-toolbar/index.js';
|
|
2
|
-
import { html } from 'lit';
|
|
3
|
-
/** Independent senior tool — Event Storming. */
|
|
4
|
-
export const eventStormingSeniorTool = SeniorToolExtension('ddd-event-storming', ({ block }) => ({
|
|
5
|
-
name: 'Event Storming',
|
|
6
|
-
content: html `<edgeless-ddd-event-storming-senior-button
|
|
7
|
-
.edgeless=${block}
|
|
8
|
-
></edgeless-ddd-event-storming-senior-button>`,
|
|
9
|
-
}));
|
|
10
|
-
/** Independent senior tool — Core Domain Chart. */
|
|
11
|
-
export const coreDomainSeniorTool = SeniorToolExtension('ddd-core-domain', ({ block }) => ({
|
|
12
|
-
name: 'Core Domain Chart',
|
|
13
|
-
content: html `<edgeless-ddd-core-domain-senior-button
|
|
14
|
-
.edgeless=${block}
|
|
15
|
-
></edgeless-ddd-core-domain-senior-button>`,
|
|
16
|
-
}));
|
|
17
|
-
/** Independent senior tool — Context Map. */
|
|
18
|
-
export const contextMapSeniorTool = SeniorToolExtension('ddd-context-map', ({ block }) => ({
|
|
19
|
-
name: 'Context Map',
|
|
20
|
-
content: html `<edgeless-ddd-context-map-senior-button
|
|
21
|
-
.edgeless=${block}
|
|
22
|
-
></edgeless-ddd-context-map-senior-button>`,
|
|
23
|
-
}));
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { type ViewExtensionContext, ViewExtensionProvider } from '../affine-ext-loader/index.js';
|
|
2
|
-
/** Event Storming — independently flag-gated (`ddd-event-storming`). */
|
|
3
|
-
export declare class DddEventStormingViewExtension extends ViewExtensionProvider {
|
|
4
|
-
name: string;
|
|
5
|
-
effect(): void;
|
|
6
|
-
setup(context: ViewExtensionContext): void;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Core Domain Chart rendering — ALWAYS registered, independent of any flag.
|
|
10
|
-
* Disabling `ddd-core-domain` hides only the senior toolbar button (see
|
|
11
|
-
* {@link DddCoreDomainViewExtension}); placed `coreDomain` elements must still
|
|
12
|
-
* paint, stay selectable, and keep their contextual toolbar, and Templates-
|
|
13
|
-
* panel insertion must still render them.
|
|
14
|
-
*/
|
|
15
|
-
export declare class DddCoreDomainRenderViewExtension extends ViewExtensionProvider {
|
|
16
|
-
name: string;
|
|
17
|
-
setup(context: ViewExtensionContext): void;
|
|
18
|
-
}
|
|
19
|
-
/** Core Domain Chart senior button — independently flag-gated (`ddd-core-domain`). */
|
|
20
|
-
export declare class DddCoreDomainViewExtension extends ViewExtensionProvider {
|
|
21
|
-
name: string;
|
|
22
|
-
effect(): void;
|
|
23
|
-
setup(context: ViewExtensionContext): void;
|
|
24
|
-
}
|
|
25
|
-
/** Context Map — independently flag-gated (`ddd-context-map`). */
|
|
26
|
-
export declare class DddContextMapViewExtension extends ViewExtensionProvider {
|
|
27
|
-
name: string;
|
|
28
|
-
effect(): void;
|
|
29
|
-
setup(context: ViewExtensionContext): void;
|
|
30
|
-
}
|
|
31
|
-
/** DDD Templates section (Aggregate Design Canvas) — flag-gated (`ddd-templates`). */
|
|
32
|
-
export declare class DddTemplatesViewExtension extends ViewExtensionProvider {
|
|
33
|
-
name: string;
|
|
34
|
-
effect(): void;
|
|
35
|
-
}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { ViewExtensionProvider, } from '../affine-ext-loader/index.js';
|
|
2
|
-
import { extendTemplateCategory } from '../affine-gfx-template/index.js';
|
|
3
|
-
import { CoreDomainRendererExtension } from './core-domain/element-renderer';
|
|
4
|
-
import { CoreDomainInteraction, CoreDomainView } from './core-domain/element-view';
|
|
5
|
-
import { coreDomainToolbarExtension } from './core-domain/toolbar-config';
|
|
6
|
-
import { contextMapEffects, coreDomainEffects, eventStormingEffects, } from './effects';
|
|
7
|
-
import { aggregateTemplateCategory, contextMapTemplateCategory, coreDomainTemplateCategory, eventStormingTemplateCategory, } from './templates';
|
|
8
|
-
import { contextMapSeniorTool, coreDomainSeniorTool, eventStormingSeniorTool, } from './toolbar/senior-tool';
|
|
9
|
-
/** Event Storming — independently flag-gated (`ddd-event-storming`). */
|
|
10
|
-
export class DddEventStormingViewExtension extends ViewExtensionProvider {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
this.name = 'affine-ddd-event-storming-gfx';
|
|
14
|
-
}
|
|
15
|
-
effect() {
|
|
16
|
-
super.effect();
|
|
17
|
-
eventStormingEffects();
|
|
18
|
-
}
|
|
19
|
-
setup(context) {
|
|
20
|
-
super.setup(context);
|
|
21
|
-
if (this.isEdgeless(context.scope)) {
|
|
22
|
-
context.register(eventStormingSeniorTool);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Core Domain Chart rendering — ALWAYS registered, independent of any flag.
|
|
28
|
-
* Disabling `ddd-core-domain` hides only the senior toolbar button (see
|
|
29
|
-
* {@link DddCoreDomainViewExtension}); placed `coreDomain` elements must still
|
|
30
|
-
* paint, stay selectable, and keep their contextual toolbar, and Templates-
|
|
31
|
-
* panel insertion must still render them.
|
|
32
|
-
*/
|
|
33
|
-
export class DddCoreDomainRenderViewExtension extends ViewExtensionProvider {
|
|
34
|
-
constructor() {
|
|
35
|
-
super(...arguments);
|
|
36
|
-
this.name = 'affine-ddd-core-domain-render-gfx';
|
|
37
|
-
}
|
|
38
|
-
setup(context) {
|
|
39
|
-
super.setup(context);
|
|
40
|
-
context.register(CoreDomainView);
|
|
41
|
-
context.register(CoreDomainRendererExtension);
|
|
42
|
-
if (this.isEdgeless(context.scope)) {
|
|
43
|
-
context.register(CoreDomainInteraction);
|
|
44
|
-
context.register(coreDomainToolbarExtension);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
/** Core Domain Chart senior button — independently flag-gated (`ddd-core-domain`). */
|
|
49
|
-
export class DddCoreDomainViewExtension extends ViewExtensionProvider {
|
|
50
|
-
constructor() {
|
|
51
|
-
super(...arguments);
|
|
52
|
-
this.name = 'affine-ddd-core-domain-gfx';
|
|
53
|
-
}
|
|
54
|
-
effect() {
|
|
55
|
-
super.effect();
|
|
56
|
-
coreDomainEffects();
|
|
57
|
-
}
|
|
58
|
-
setup(context) {
|
|
59
|
-
super.setup(context);
|
|
60
|
-
if (this.isEdgeless(context.scope)) {
|
|
61
|
-
context.register(coreDomainSeniorTool);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
/** Context Map — independently flag-gated (`ddd-context-map`). */
|
|
66
|
-
export class DddContextMapViewExtension extends ViewExtensionProvider {
|
|
67
|
-
constructor() {
|
|
68
|
-
super(...arguments);
|
|
69
|
-
this.name = 'affine-ddd-context-map-gfx';
|
|
70
|
-
}
|
|
71
|
-
effect() {
|
|
72
|
-
super.effect();
|
|
73
|
-
contextMapEffects();
|
|
74
|
-
}
|
|
75
|
-
setup(context) {
|
|
76
|
-
super.setup(context);
|
|
77
|
-
if (this.isEdgeless(context.scope)) {
|
|
78
|
-
context.register(contextMapSeniorTool);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/** DDD Templates section (Aggregate Design Canvas) — flag-gated (`ddd-templates`). */
|
|
83
|
-
export class DddTemplatesViewExtension extends ViewExtensionProvider {
|
|
84
|
-
constructor() {
|
|
85
|
-
super(...arguments);
|
|
86
|
-
this.name = 'affine-ddd-templates';
|
|
87
|
-
}
|
|
88
|
-
effect() {
|
|
89
|
-
super.effect();
|
|
90
|
-
extendTemplateCategory(eventStormingTemplateCategory);
|
|
91
|
-
extendTemplateCategory(coreDomainTemplateCategory);
|
|
92
|
-
extendTemplateCategory(contextMapTemplateCategory);
|
|
93
|
-
extendTemplateCategory(aggregateTemplateCategory);
|
|
94
|
-
}
|
|
95
|
-
}
|