@visactor/vrender-core 1.1.3 → 1.1.4-alpha.1
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/cjs/allocator/bounds-allocate.js +1 -2
- package/cjs/allocator/graphic-allocate.js +2 -1
- package/cjs/animate/config.js +1 -1
- package/cjs/application-state.d.ts +27 -0
- package/cjs/application-state.js +22 -0
- package/cjs/application-state.js.map +1 -0
- package/cjs/application.d.ts +2 -22
- package/cjs/application.js +24 -3
- package/cjs/application.js.map +1 -1
- package/cjs/common/contribution-provider.d.ts +2 -1
- package/cjs/common/contribution-provider.js +20 -2
- package/cjs/common/contribution-provider.js.map +1 -1
- package/cjs/common/contribution-store-state.d.ts +6 -0
- package/cjs/common/contribution-store-state.js +20 -0
- package/cjs/common/contribution-store-state.js.map +1 -0
- package/cjs/common/custom-path2d.js +1 -2
- package/cjs/common/module-guard.js +1 -1
- package/cjs/common/morphing-utils.js +1 -1
- package/cjs/common/path-svg.js +1 -1
- package/cjs/common/performance-raf.js +1 -1
- package/cjs/common/polygon.js +2 -2
- package/cjs/common/rect-utils.js +1 -1
- package/cjs/common/render-area.js +1 -1
- package/cjs/common/render-command-list.js +2 -1
- package/cjs/common/render-curve.js +1 -1
- package/cjs/common/render-utils.js +1 -1
- package/cjs/common/seg-context.js +1 -1
- package/cjs/common/simplify.js +1 -1
- package/cjs/common/sort.js +1 -1
- package/cjs/common/split-path.js +1 -1
- package/cjs/common/text.js +1 -1
- package/cjs/core/camera.js +1 -1
- package/cjs/core/constants.js +1 -1
- package/cjs/core/core-modules.js +1 -2
- package/cjs/core/global.js +1 -1
- package/cjs/core/graphic-utils.js +1 -1
- package/cjs/core/index.js +1 -1
- package/cjs/core/layer-service.js +1 -1
- package/cjs/core/layer.js +1 -1
- package/cjs/core/light.js +1 -1
- package/cjs/core/stage.js +1 -1
- package/cjs/core/window.js +1 -1
- package/cjs/entries/runtime-installer-state.d.ts +12 -0
- package/cjs/entries/runtime-installer-state.js +27 -0
- package/cjs/entries/runtime-installer-state.js.map +1 -0
- package/cjs/entries/runtime-installer.d.ts +3 -1
- package/cjs/entries/runtime-installer.js +23 -13
- package/cjs/entries/runtime-installer.js.map +1 -1
- package/cjs/factory-state.d.ts +5 -0
- package/cjs/factory-state.js +19 -0
- package/cjs/factory-state.js.map +1 -0
- package/cjs/factory.d.ts +2 -0
- package/cjs/factory.js +18 -2
- package/cjs/factory.js.map +1 -1
- package/cjs/graphic/graphic-creator.d.ts +2 -29
- package/cjs/graphic/graphic-creator.js +24 -38
- package/cjs/graphic/graphic-creator.js.map +1 -1
- package/cjs/graphic/graphic-registry.d.ts +36 -0
- package/cjs/graphic/graphic-registry.js +65 -0
- package/cjs/graphic/graphic-registry.js.map +1 -0
- package/cjs/graphic/graphic.d.ts +8 -1
- package/cjs/graphic/graphic.js +22 -7
- package/cjs/graphic/graphic.js.map +1 -1
- package/cjs/graphic/index.d.ts +2 -0
- package/cjs/graphic/index.js +29 -16
- package/cjs/graphic/index.js.map +1 -1
- package/cjs/legacy/bootstrap-state.d.ts +7 -0
- package/cjs/legacy/bootstrap-state.js +24 -0
- package/cjs/legacy/bootstrap-state.js.map +1 -0
- package/cjs/legacy/bootstrap.d.ts +3 -4
- package/cjs/legacy/bootstrap.js +20 -7
- package/cjs/legacy/bootstrap.js.map +1 -1
- package/dist/index.es.js +126 -25
- package/es/allocator/bounds-allocate.js +1 -2
- package/es/allocator/graphic-allocate.js +2 -1
- package/es/animate/config.js +1 -1
- package/es/application-state.d.ts +27 -0
- package/es/application-state.js +17 -0
- package/es/application-state.js.map +1 -0
- package/es/application.d.ts +2 -22
- package/es/application.js +2 -3
- package/es/application.js.map +1 -1
- package/es/common/contribution-provider.d.ts +2 -1
- package/es/common/contribution-provider.js +6 -1
- package/es/common/contribution-provider.js.map +1 -1
- package/es/common/contribution-store-state.d.ts +6 -0
- package/es/common/contribution-store-state.js +14 -0
- package/es/common/contribution-store-state.js.map +1 -0
- package/es/common/custom-path2d.js +1 -2
- package/es/common/module-guard.js +1 -1
- package/es/common/morphing-utils.js +1 -1
- package/es/common/path-svg.js +1 -1
- package/es/common/performance-raf.js +1 -1
- package/es/common/polygon.js +1 -1
- package/es/common/rect-utils.js +1 -1
- package/es/common/render-area.js +1 -1
- package/es/common/render-command-list.js +2 -1
- package/es/common/render-curve.js +1 -1
- package/es/common/render-utils.js +1 -1
- package/es/common/seg-context.js +1 -1
- package/es/common/simplify.js +1 -1
- package/es/common/sort.js +1 -1
- package/es/common/split-path.js +1 -1
- package/es/common/text.js +1 -1
- package/es/core/camera.js +1 -1
- package/es/core/constants.js +1 -1
- package/es/core/core-modules.js +1 -2
- package/es/core/global.js +1 -1
- package/es/core/graphic-utils.js +1 -1
- package/es/core/index.js +1 -1
- package/es/core/layer-service.js +1 -1
- package/es/core/layer.js +1 -1
- package/es/core/light.js +1 -1
- package/es/core/stage.js +1 -1
- package/es/core/window.js +1 -1
- package/es/entries/runtime-installer-state.d.ts +12 -0
- package/es/entries/runtime-installer-state.js +20 -0
- package/es/entries/runtime-installer-state.js.map +1 -0
- package/es/entries/runtime-installer.d.ts +3 -1
- package/es/entries/runtime-installer.js +8 -9
- package/es/entries/runtime-installer.js.map +1 -1
- package/es/factory-state.d.ts +5 -0
- package/es/factory-state.js +14 -0
- package/es/factory-state.js.map +1 -0
- package/es/factory.d.ts +2 -0
- package/es/factory.js +5 -1
- package/es/factory.js.map +1 -1
- package/es/graphic/graphic-creator.d.ts +2 -29
- package/es/graphic/graphic-creator.js +1 -41
- package/es/graphic/graphic-creator.js.map +1 -1
- package/es/graphic/graphic-registry.d.ts +36 -0
- package/es/graphic/graphic-registry.js +57 -0
- package/es/graphic/graphic-registry.js.map +1 -0
- package/es/graphic/graphic.d.ts +8 -1
- package/es/graphic/graphic.js +22 -3
- package/es/graphic/graphic.js.map +1 -1
- package/es/graphic/index.d.ts +2 -0
- package/es/graphic/index.js +2 -0
- package/es/graphic/index.js.map +1 -1
- package/es/legacy/bootstrap-state.d.ts +7 -0
- package/es/legacy/bootstrap-state.js +17 -0
- package/es/legacy/bootstrap-state.js.map +1 -0
- package/es/legacy/bootstrap.d.ts +3 -4
- package/es/legacy/bootstrap.js +5 -5
- package/es/legacy/bootstrap.js.map +1 -1
- package/package.json +11 -3
package/es/application.d.ts
CHANGED
|
@@ -1,22 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import type { IDrawContribution } from './interface/render';
|
|
4
|
-
export declare class Application {
|
|
5
|
-
global: IGlobal;
|
|
6
|
-
graphicUtil: IGraphicUtil;
|
|
7
|
-
graphicService: IGraphicService;
|
|
8
|
-
renderService: IRenderService;
|
|
9
|
-
renderServiceFactory?: () => IRenderService;
|
|
10
|
-
pluginService?: IPluginService;
|
|
11
|
-
pluginServiceFactory?: () => IPluginService;
|
|
12
|
-
pickerServiceFactory?: () => IPickerService;
|
|
13
|
-
windowFactory?: () => IWindow;
|
|
14
|
-
windowHandlerFactory?: (env: string) => IWindowHandlerContribution;
|
|
15
|
-
layerHandlerFactory?: (layerMode: LayerMode) => ILayerHandlerContribution;
|
|
16
|
-
incrementalDrawContributionFactory?: () => IDrawContribution;
|
|
17
|
-
canvasFactory?: (env: string) => ICanvasFactory | undefined;
|
|
18
|
-
context2dFactory?: (env: string) => IContext2dFactory | undefined;
|
|
19
|
-
transformUtil: ITransformUtil;
|
|
20
|
-
layerService: ILayerService;
|
|
21
|
-
}
|
|
22
|
-
export declare const application: Application;
|
|
1
|
+
export { application, Application, APPLICATION_STATE_SYMBOL, getApplicationState } from './application-state';
|
|
2
|
+
export type { IApplicationState } from './application-state';
|
package/es/application.js
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
export const application = new Application;
|
|
1
|
+
export { application, Application, APPLICATION_STATE_SYMBOL, getApplicationState } from "./application-state";
|
|
2
|
+
//# sourceMappingURL=application.js.map
|
package/es/application.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/application.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC","file":"application.js","sourcesContent":["export { application, Application, APPLICATION_STATE_SYMBOL, getApplicationState } from './application-state';\nexport type { IApplicationState } from './application-state';\n"]}
|
|
@@ -24,4 +24,5 @@ export declare class ContributionStore {
|
|
|
24
24
|
static setStore(id: ServiceIdentifier<any>, cache: ContributionProviderCache<any>): void;
|
|
25
25
|
static refreshAllContributions(): void;
|
|
26
26
|
}
|
|
27
|
-
export {};
|
|
27
|
+
export { CONTRIBUTION_STORE_STATE_SYMBOL, getContributionStoreState } from './contribution-store-state';
|
|
28
|
+
export type { IContributionStoreState } from './contribution-store-state';
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { getContributionStoreState } from "./contribution-store-state";
|
|
2
|
+
|
|
1
3
|
export const ContributionProvider = Symbol("ContributionProvider");
|
|
2
4
|
|
|
3
5
|
class ContributionProviderCache {
|
|
@@ -43,4 +45,7 @@ export class ContributionStore {
|
|
|
43
45
|
}
|
|
44
46
|
}
|
|
45
47
|
|
|
46
|
-
ContributionStore.store =
|
|
48
|
+
ContributionStore.store = getContributionStoreState().store;
|
|
49
|
+
|
|
50
|
+
export { CONTRIBUTION_STORE_STATE_SYMBOL, getContributionStoreState } from "./contribution-store-state";
|
|
51
|
+
//# sourceMappingURL=contribution-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/contribution-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/contribution-provider.ts"],"names":[],"mappings":"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","file":"contribution-provider.js","sourcesContent":["import type { IBindingResolver, ServiceIdentifier } from './explicit-binding';\nimport type { IContributionProvider } from '../interface';\nimport { getContributionStoreState } from './contribution-store-state';\n\nexport const ContributionProvider = Symbol('ContributionProvider');\n\nclass ContributionProviderCache<T> implements IContributionProvider<T> {\n protected caches?: T[];\n protected serviceIdentifier: ServiceIdentifier<T>;\n protected container: IBindingResolver & { isBound: (serviceIdentifier: ServiceIdentifier<T>) => boolean };\n\n constructor(\n serviceIdentifier: ServiceIdentifier<T>,\n container: IBindingResolver & { isBound: (serviceIdentifier: ServiceIdentifier<T>) => boolean }\n ) {\n this.serviceIdentifier = serviceIdentifier;\n this.container = container;\n ContributionStore.setStore(this.serviceIdentifier, this);\n }\n\n getContributions(): T[] {\n if (!this.caches) {\n this.caches = [];\n this.container &&\n this.container.isBound(this.serviceIdentifier) &&\n this.caches.push(...this.container.getAll(this.serviceIdentifier));\n }\n return this.caches;\n }\n\n refresh() {\n if (!this.caches) {\n return;\n }\n this.caches.length = 0;\n this.container &&\n this.container.isBound(this.serviceIdentifier) &&\n this.caches.push(...this.container.getAll(this.serviceIdentifier));\n }\n}\n\ntype IContributionProviderFactoryContext = {\n container: IBindingResolver & { isBound: (serviceIdentifier: ServiceIdentifier) => boolean };\n};\n\nexport function createContributionProvider<T>(\n serviceIdentifier: ServiceIdentifier<T>,\n container: IBindingResolver & { isBound: (serviceIdentifier: ServiceIdentifier<T>) => boolean }\n): IContributionProvider<T> {\n return new ContributionProviderCache(serviceIdentifier, container);\n}\n\nexport function bindContributionProvider(bind: any, id: ServiceIdentifier): void {\n bind(ContributionProvider)\n .toDynamicValue(({ container }: IContributionProviderFactoryContext) => createContributionProvider(id, container))\n .inSingletonScope()\n .whenTargetNamed(id);\n}\n\nexport function bindContributionProviderNoSingletonScope(bind: any, id: ServiceIdentifier): void {\n bind(ContributionProvider)\n .toDynamicValue(({ container }: IContributionProviderFactoryContext) => createContributionProvider(id, container))\n .whenTargetNamed(id);\n}\n\nexport class ContributionStore {\n static store = getContributionStoreState().store as Map<ServiceIdentifier<any>, Set<ContributionProviderCache<any>>>;\n\n static getStore(id: ServiceIdentifier<any>): ContributionProviderCache<any> | undefined {\n return this.store.get(id)?.values().next().value;\n }\n\n static setStore(id: ServiceIdentifier<any>, cache: ContributionProviderCache<any>): void {\n let caches = this.store.get(id);\n if (!caches) {\n caches = new Set<ContributionProviderCache<any>>();\n this.store.set(id, caches);\n }\n caches.add(cache);\n }\n\n static refreshAllContributions(): void {\n this.store.forEach(caches => {\n caches.forEach(cache => {\n cache.refresh();\n });\n });\n }\n}\n\nexport { CONTRIBUTION_STORE_STATE_SYMBOL, getContributionStoreState } from './contribution-store-state';\nexport type { IContributionStoreState } from './contribution-store-state';\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ServiceIdentifier } from './explicit-binding';
|
|
2
|
+
export declare const CONTRIBUTION_STORE_STATE_SYMBOL: unique symbol;
|
|
3
|
+
export interface IContributionStoreState<T = any> {
|
|
4
|
+
store: Map<ServiceIdentifier<T>, Set<T>>;
|
|
5
|
+
}
|
|
6
|
+
export declare function getContributionStoreState(): IContributionStoreState;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const CONTRIBUTION_STORE_STATE_SYMBOL = Symbol.for("@visactor/vrender-core/contribution-store-state");
|
|
2
|
+
|
|
3
|
+
function createContributionStoreState() {
|
|
4
|
+
return {
|
|
5
|
+
store: new Map
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function getContributionStoreState() {
|
|
10
|
+
const scope = globalThis;
|
|
11
|
+
return scope[CONTRIBUTION_STORE_STATE_SYMBOL] || (scope[CONTRIBUTION_STORE_STATE_SYMBOL] = createContributionStoreState()),
|
|
12
|
+
scope[CONTRIBUTION_STORE_STATE_SYMBOL];
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=contribution-store-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/common/contribution-store-state.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;AAM7G,SAAS,4BAA4B;IACnC,OAAO;QACL,KAAK,EAAE,IAAI,GAAG,EAAE;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,MAAM,KAAK,GAAG,UAAiG,CAAC;IAEhH,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE;QAC3C,KAAK,CAAC,+BAA+B,CAAC,GAAG,4BAA4B,EAAE,CAAC;KACzE;IAED,OAAO,KAAK,CAAC,+BAA+B,CAA4B,CAAC;AAC3E,CAAC","file":"contribution-store-state.js","sourcesContent":["import type { ServiceIdentifier } from './explicit-binding';\n\nexport const CONTRIBUTION_STORE_STATE_SYMBOL = Symbol.for('@visactor/vrender-core/contribution-store-state');\n\nexport interface IContributionStoreState<T = any> {\n store: Map<ServiceIdentifier<T>, Set<T>>;\n}\n\nfunction createContributionStoreState(): IContributionStoreState {\n return {\n store: new Map()\n };\n}\n\nexport function getContributionStoreState(): IContributionStoreState {\n const scope = globalThis as typeof globalThis & { [CONTRIBUTION_STORE_STATE_SYMBOL]?: IContributionStoreState };\n\n if (!scope[CONTRIBUTION_STORE_STATE_SYMBOL]) {\n scope[CONTRIBUTION_STORE_STATE_SYMBOL] = createContributionStoreState();\n }\n\n return scope[CONTRIBUTION_STORE_STATE_SYMBOL] as IContributionStoreState;\n}\n"]}
|
|
@@ -372,5 +372,4 @@ function scale(current, sX, sY) {
|
|
|
372
372
|
temp[3] = current[3], temp[4] = current[4], temp[5] = current[5], temp[6] = sX * current[6],
|
|
373
373
|
temp[7] = sY * current[7]; else if ("h" === c || "H" === c) temp[1] = sX * current[1]; else if ("v" === c || "V" === c) temp[1] = sY * current[1]; else for (let i = 1, n = current.length; i < n; ++i) temp[i] = (i % 2 == 1 ? sX : sY) * current[i];
|
|
374
374
|
return temp;
|
|
375
|
-
}
|
|
376
|
-
//# sourceMappingURL=custom-path2d.js.map
|
|
375
|
+
}
|
|
@@ -2,4 +2,4 @@ export function isBindingContextLoaded(loadedContexts, context) {
|
|
|
2
2
|
const key = "object" == typeof context && null !== context || "function" == typeof context ? context : loadedContexts;
|
|
3
3
|
return !!loadedContexts.has(key) || (loadedContexts.add(key), !1);
|
|
4
4
|
}
|
|
5
|
-
//# sourceMappingURL=module-guard.js.map
|
|
5
|
+
//# sourceMappingURL=module-guard.js.map
|
package/es/common/path-svg.js
CHANGED
package/es/common/polygon.js
CHANGED
package/es/common/rect-utils.js
CHANGED
package/es/common/render-area.js
CHANGED
package/es/common/seg-context.js
CHANGED
package/es/common/simplify.js
CHANGED
|
@@ -30,4 +30,4 @@ export function flatten_simplify(points, tolerance, highestQuality) {
|
|
|
30
30
|
if (points.length <= 10) return points;
|
|
31
31
|
return points = highestQuality ? points : simplifyRadialDist(points, void 0 !== tolerance ? tolerance * tolerance : 1);
|
|
32
32
|
}
|
|
33
|
-
//# sourceMappingURL=simplify.js.map
|
|
33
|
+
//# sourceMappingURL=simplify.js.map
|
package/es/common/sort.js
CHANGED
package/es/common/split-path.js
CHANGED
package/es/common/text.js
CHANGED
|
@@ -24,4 +24,4 @@ export function textAttributesToStyle(attrs) {
|
|
|
24
24
|
attrs.underline ? style["text-decoration"] = "underline" : attrs.lineThrough && (style["text-decoration"] = "line-through"),
|
|
25
25
|
attrs.fill && isString(attrs.fill) && (style.color = attrs.fill), style;
|
|
26
26
|
}
|
|
27
|
-
//# sourceMappingURL=text.js.map
|
|
27
|
+
//# sourceMappingURL=text.js.map
|
package/es/core/camera.js
CHANGED
package/es/core/constants.js
CHANGED
|
@@ -9,4 +9,4 @@ export const StaticLayerHandlerContribution = Symbol.for("StaticLayerHandlerCont
|
|
|
9
9
|
export const DynamicLayerHandlerContribution = Symbol.for("DynamicLayerHandlerContribution");
|
|
10
10
|
|
|
11
11
|
export const VirtualLayerHandlerContribution = Symbol.for("VirtualLayerHandlerContribution");
|
|
12
|
-
//# sourceMappingURL=constants.js.map
|
|
12
|
+
//# sourceMappingURL=constants.js.map
|
package/es/core/core-modules.js
CHANGED
|
@@ -20,5 +20,4 @@ export function bindCoreModules({bind: bind}) {
|
|
|
20
20
|
bind(TransformUtil).to(DefaultTransformUtil).inSingletonScope(), bind(LayerService).to(DefaultLayerService).inSingletonScope();
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
export default bindCoreModules;
|
|
24
|
-
//# sourceMappingURL=core-modules.js.map
|
|
23
|
+
export default bindCoreModules;
|
package/es/core/global.js
CHANGED
package/es/core/graphic-utils.js
CHANGED
package/es/core/index.js
CHANGED
package/es/core/layer-service.js
CHANGED
package/es/core/layer.js
CHANGED
package/es/core/light.js
CHANGED
package/es/core/stage.js
CHANGED
package/es/core/window.js
CHANGED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IGlobal, IDrawItemInterceptorContribution } from '../interface';
|
|
2
|
+
import { type ILegacyBindingContext } from '../legacy/binding-context';
|
|
3
|
+
export declare const RUNTIME_INSTALLER_STATE_SYMBOL: unique symbol;
|
|
4
|
+
export interface IRuntimeInstallerState {
|
|
5
|
+
runtimeInstallerContext: ILegacyBindingContext;
|
|
6
|
+
preloaded: boolean;
|
|
7
|
+
runtimeGlobal?: IGlobal;
|
|
8
|
+
runtimeEntryKeys: WeakMap<object, Map<string, Set<string>>>;
|
|
9
|
+
runtimeDrawContributions: WeakMap<object, Set<IDrawItemInterceptorContribution>>;
|
|
10
|
+
loadedRuntimeContributionModules: WeakMap<object, WeakSet<object>>;
|
|
11
|
+
}
|
|
12
|
+
export declare function getRuntimeInstallerState(): IRuntimeInstallerState;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createLegacyBindingContext } from "../legacy/binding-context";
|
|
2
|
+
|
|
3
|
+
export const RUNTIME_INSTALLER_STATE_SYMBOL = Symbol.for("@visactor/vrender-core/runtime-installer-state");
|
|
4
|
+
|
|
5
|
+
function createRuntimeInstallerState() {
|
|
6
|
+
return {
|
|
7
|
+
runtimeInstallerContext: createLegacyBindingContext(),
|
|
8
|
+
preloaded: !1,
|
|
9
|
+
runtimeEntryKeys: new WeakMap,
|
|
10
|
+
runtimeDrawContributions: new WeakMap,
|
|
11
|
+
loadedRuntimeContributionModules: new WeakMap
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function getRuntimeInstallerState() {
|
|
16
|
+
const scope = globalThis;
|
|
17
|
+
return scope[RUNTIME_INSTALLER_STATE_SYMBOL] || (scope[RUNTIME_INSTALLER_STATE_SYMBOL] = createRuntimeInstallerState()),
|
|
18
|
+
scope[RUNTIME_INSTALLER_STATE_SYMBOL];
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=runtime-installer-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/entries/runtime-installer-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAA8B,MAAM,2BAA2B,CAAC;AAEnG,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;AAW3G,SAAS,2BAA2B;IAClC,OAAO;QACL,uBAAuB,EAAE,0BAA0B,EAAE;QACrD,SAAS,EAAE,KAAK;QAChB,gBAAgB,EAAE,IAAI,OAAO,EAAoC;QACjE,wBAAwB,EAAE,IAAI,OAAO,EAAiD;QACtF,gCAAgC,EAAE,IAAI,OAAO,EAA2B;KACzE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,MAAM,KAAK,GAAG,UAA+F,CAAC;IAE9G,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,EAAE;QAC1C,KAAK,CAAC,8BAA8B,CAAC,GAAG,2BAA2B,EAAE,CAAC;KACvE;IAED,OAAO,KAAK,CAAC,8BAA8B,CAA2B,CAAC;AACzE,CAAC","file":"runtime-installer-state.js","sourcesContent":["import type { IGlobal, IDrawItemInterceptorContribution } from '../interface';\nimport { createLegacyBindingContext, type ILegacyBindingContext } from '../legacy/binding-context';\n\nexport const RUNTIME_INSTALLER_STATE_SYMBOL = Symbol.for('@visactor/vrender-core/runtime-installer-state');\n\nexport interface IRuntimeInstallerState {\n runtimeInstallerContext: ILegacyBindingContext;\n preloaded: boolean;\n runtimeGlobal?: IGlobal;\n runtimeEntryKeys: WeakMap<object, Map<string, Set<string>>>;\n runtimeDrawContributions: WeakMap<object, Set<IDrawItemInterceptorContribution>>;\n loadedRuntimeContributionModules: WeakMap<object, WeakSet<object>>;\n}\n\nfunction createRuntimeInstallerState(): IRuntimeInstallerState {\n return {\n runtimeInstallerContext: createLegacyBindingContext(),\n preloaded: false,\n runtimeEntryKeys: new WeakMap<object, Map<string, Set<string>>>(),\n runtimeDrawContributions: new WeakMap<object, Set<IDrawItemInterceptorContribution>>(),\n loadedRuntimeContributionModules: new WeakMap<object, WeakSet<object>>()\n };\n}\n\nexport function getRuntimeInstallerState(): IRuntimeInstallerState {\n const scope = globalThis as typeof globalThis & { [RUNTIME_INSTALLER_STATE_SYMBOL]?: IRuntimeInstallerState };\n\n if (!scope[RUNTIME_INSTALLER_STATE_SYMBOL]) {\n scope[RUNTIME_INSTALLER_STATE_SYMBOL] = createRuntimeInstallerState();\n }\n\n return scope[RUNTIME_INSTALLER_STATE_SYMBOL] as IRuntimeInstallerState;\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IGlobal, IGraphicPicker } from '../interface';
|
|
2
2
|
import type { IApp } from './types';
|
|
3
3
|
import type { ServiceIdentifier } from '../common/explicit-binding';
|
|
4
|
-
import {
|
|
4
|
+
import type { ILegacyBindingContext } from '../legacy/binding-context';
|
|
5
5
|
export type TRuntimeContributionModuleRegistry = (bind: ILegacyBindingContext['bind'], unbind: (serviceIdentifier: ServiceIdentifier) => void, isBound: ILegacyBindingContext['isBound'], rebind: ILegacyBindingContext['rebind']) => void;
|
|
6
6
|
export type TRuntimeContributionModule = ((context: ILegacyBindingContext) => void) | {
|
|
7
7
|
registry: TRuntimeContributionModuleRegistry;
|
|
@@ -18,6 +18,8 @@ export declare function getRuntimeInstallerBindingContext(): ILegacyBindingConte
|
|
|
18
18
|
export declare function refreshRuntimeInstallerContributions(): void;
|
|
19
19
|
export declare function getRuntimeInstallerGlobal(): IGlobal;
|
|
20
20
|
export declare function configureRuntimeApplicationForApp(app: IApp): void;
|
|
21
|
+
export { RUNTIME_INSTALLER_STATE_SYMBOL, getRuntimeInstallerState } from './runtime-installer-state';
|
|
22
|
+
export type { IRuntimeInstallerState } from './runtime-installer-state';
|
|
21
23
|
export declare function installRuntimeGraphicRenderersToApp(app: IApp): void;
|
|
22
24
|
export declare function installRuntimeDrawContributionsToApp(app: IApp): void;
|
|
23
25
|
export declare function installRuntimePickersToApp<T extends IGraphicPicker>(app: IApp, serviceIdentifier: ServiceIdentifier<T>): void;
|
|
@@ -16,8 +16,6 @@ import coreModule from "../core/core-modules";
|
|
|
16
16
|
|
|
17
17
|
import graphicModule from "../graphic/graphic-service/graphic-module";
|
|
18
18
|
|
|
19
|
-
import { createLegacyBindingContext } from "../legacy/binding-context";
|
|
20
|
-
|
|
21
19
|
import { getLegacyBindingContext, preLoadAllModule } from "../legacy/bootstrap";
|
|
22
20
|
|
|
23
21
|
import pickModule from "../picker/pick-modules";
|
|
@@ -42,14 +40,12 @@ import { AutoEnablePlugins } from "../plugins/constants";
|
|
|
42
40
|
|
|
43
41
|
import { DefaultPluginService } from "../plugins/plugin-service";
|
|
44
42
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
let runtimeGlobal, runtimeInstallerPreloaded = !1;
|
|
43
|
+
import { getRuntimeInstallerState } from "./runtime-installer-state";
|
|
48
44
|
|
|
49
|
-
const RUNTIME_RENDERER_NAMESPACE = "vrender:runtime-renderer", RUNTIME_PICKER_NAMESPACE = "vrender:runtime-picker", runtimeEntryKeys =
|
|
45
|
+
const runtimeInstallerState = getRuntimeInstallerState(), runtimeInstallerContext = runtimeInstallerState.runtimeInstallerContext, RUNTIME_RENDERER_NAMESPACE = "vrender:runtime-renderer", RUNTIME_PICKER_NAMESPACE = "vrender:runtime-picker", runtimeEntryKeys = runtimeInstallerState.runtimeEntryKeys, runtimeDrawContributions = runtimeInstallerState.runtimeDrawContributions, loadedRuntimeContributionModules = runtimeInstallerState.loadedRuntimeContributionModules, DEFAULT_RUNTIME_CONTRIBUTION_TARGETS = [ "graphic-renderer" ], noopUnbindRuntimeContributionService = () => {};
|
|
50
46
|
|
|
51
47
|
function ensureRuntimeInstallerPreloaded() {
|
|
52
|
-
|
|
48
|
+
runtimeInstallerState.preloaded || (runtimeInstallerState.preloaded = !0, coreModule({
|
|
53
49
|
bind: runtimeInstallerContext.bind
|
|
54
50
|
}), graphicModule({
|
|
55
51
|
bind: runtimeInstallerContext.bind
|
|
@@ -102,8 +98,9 @@ export function refreshRuntimeInstallerContributions() {
|
|
|
102
98
|
}
|
|
103
99
|
|
|
104
100
|
export function getRuntimeInstallerGlobal() {
|
|
105
|
-
|
|
106
|
-
runtimeGlobal
|
|
101
|
+
var _a;
|
|
102
|
+
return ensureRuntimeInstallerPreloaded(), null !== (_a = runtimeInstallerState.runtimeGlobal) && void 0 !== _a || (runtimeInstallerState.runtimeGlobal = new DefaultGlobal(createContributionProvider(EnvContribution, runtimeInstallerContext))),
|
|
103
|
+
runtimeInstallerState.runtimeGlobal;
|
|
107
104
|
}
|
|
108
105
|
|
|
109
106
|
export function configureRuntimeApplicationForApp(app) {
|
|
@@ -117,6 +114,8 @@ export function configureRuntimeApplicationForApp(app) {
|
|
|
117
114
|
}), application.incrementalDrawContributionFactory = () => new DefaultIncrementalDrawContribution([], new DefaultIncrementalCanvasLineRender, new DefaultIncrementalCanvasAreaRender(createContributionProvider(AreaRenderContribution, bindingContext)), createAppRegistryContributionProvider(app, DrawItemInterceptor));
|
|
118
115
|
}
|
|
119
116
|
|
|
117
|
+
export { RUNTIME_INSTALLER_STATE_SYMBOL, getRuntimeInstallerState } from "./runtime-installer-state";
|
|
118
|
+
|
|
120
119
|
export function installRuntimeGraphicRenderersToApp(app) {
|
|
121
120
|
var _a;
|
|
122
121
|
const bindingContext = getRuntimeInstallerBindingContext();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/entries/runtime-installer.ts"],"names":[],"mappings":"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","file":"runtime-installer.js","sourcesContent":["import type {\n IContributionProvider,\n IAreaRenderContribution,\n IDrawItemInterceptorContribution,\n IEnvContribution,\n IGlobal,\n IGraphicPicker,\n IPlugin\n} from '../interface';\nimport type { IApp } from './types';\nimport { application } from '../application';\nimport { CanvasFactory, Context2dFactory } from '../canvas/constants';\nimport { ContributionStore, createContributionProvider } from '../common/contribution-provider';\nimport type { ServiceIdentifier } from '../common/explicit-binding';\nimport { EnvContribution } from '../constants';\nimport loadBuiltinContributions from '../core/contributions/modules';\nimport { DefaultGlobal } from '../core/global';\nimport { WindowHandlerContribution, DefaultWindow } from '../core/window';\nimport coreModule from '../core/core-modules';\nimport graphicModule from '../graphic/graphic-service/graphic-module';\nimport { createLegacyBindingContext, type ILegacyBindingContext } from '../legacy/binding-context';\nimport { getLegacyBindingContext, preLoadAllModule } from '../legacy/bootstrap';\nimport pickModule from '../picker/pick-modules';\nimport { AreaRenderContribution } from '../render/contributions/render/contributions/constants';\nimport { DrawItemInterceptor } from '../render/contributions/render/draw-interceptor';\nimport { DefaultIncrementalCanvasAreaRender } from '../render/contributions/render/incremental-area-render';\nimport { DefaultIncrementalDrawContribution } from '../render/contributions/render/incremental-draw-contribution';\nimport { DefaultIncrementalCanvasLineRender } from '../render/contributions/render/incremental-line-render';\nimport renderModule from '../render/render-modules';\nimport { GraphicRender } from '../render/contributions/render/symbol';\nimport loadRenderContributions from '../render/contributions/modules';\nimport { AutoEnablePlugins } from '../plugins/constants';\nimport { DefaultPluginService } from '../plugins/plugin-service';\n\nexport type TRuntimeContributionModuleRegistry = (\n bind: ILegacyBindingContext['bind'],\n unbind: (serviceIdentifier: ServiceIdentifier) => void,\n isBound: ILegacyBindingContext['isBound'],\n rebind: ILegacyBindingContext['rebind']\n) => void;\n\nexport type TRuntimeContributionModule =\n | ((context: ILegacyBindingContext) => void)\n | {\n registry: TRuntimeContributionModuleRegistry;\n };\n\nexport type TRuntimeContributionInstallTarget =\n | 'graphic-renderer'\n | 'draw-contribution'\n | {\n picker: ServiceIdentifier<IGraphicPicker>;\n };\n\nexport interface IRuntimeContributionModuleInstallOptions {\n app?: IApp;\n legacy?: boolean;\n targets?: TRuntimeContributionInstallTarget[];\n}\n\nconst runtimeInstallerContext = createLegacyBindingContext();\nlet runtimeInstallerPreloaded = false;\nlet runtimeGlobal: IGlobal | undefined;\nconst RUNTIME_RENDERER_NAMESPACE = 'vrender:runtime-renderer';\nconst RUNTIME_PICKER_NAMESPACE = 'vrender:runtime-picker';\nconst runtimeEntryKeys = new WeakMap<object, Map<string, Set<string>>>();\nconst runtimeDrawContributions = new WeakMap<object, Set<IDrawItemInterceptorContribution>>();\nconst loadedRuntimeContributionModules = new WeakMap<object, WeakSet<object>>();\nconst DEFAULT_RUNTIME_CONTRIBUTION_TARGETS: TRuntimeContributionInstallTarget[] = ['graphic-renderer'];\nconst noopUnbindRuntimeContributionService = (): void => undefined;\n\nfunction ensureRuntimeInstallerPreloaded(): void {\n if (runtimeInstallerPreloaded) {\n return;\n }\n\n runtimeInstallerPreloaded = true;\n coreModule({ bind: runtimeInstallerContext.bind });\n graphicModule({ bind: runtimeInstallerContext.bind });\n renderModule({ bind: runtimeInstallerContext.bind });\n pickModule({ bind: runtimeInstallerContext.bind, isBound: runtimeInstallerContext.isBound });\n loadBuiltinContributions(runtimeInstallerContext);\n loadRenderContributions(runtimeInstallerContext);\n}\n\nfunction resolveRuntimeNamed<T>(serviceIdentifier: ServiceIdentifier<T>, name: string): T {\n const bindingContext = getRuntimeInstallerBindingContext();\n const instance = bindingContext.getNamed(serviceIdentifier, name);\n\n if (instance == null) {\n throw new Error(`${String(serviceIdentifier)} is not configured for ${name}`);\n }\n\n return instance;\n}\n\nfunction registerRuntimeEntries<T extends { type?: string }>(\n register: (key: string, value: T) => void,\n entries: T[],\n prefix: string\n): void {\n entries.forEach((entry, index) => {\n const name = entry?.type ?? entry?.constructor?.name ?? `${prefix}-entry`;\n register(`${prefix}:${String(name)}:${index}`, entry);\n });\n}\n\nfunction getTrackedEntryKeys(registry: object, namespace: string): Set<string> {\n let namespaces = runtimeEntryKeys.get(registry);\n if (!namespaces) {\n namespaces = new Map();\n runtimeEntryKeys.set(registry, namespaces);\n }\n\n let keys = namespaces.get(namespace);\n if (!keys) {\n keys = new Set();\n namespaces.set(namespace, keys);\n }\n\n return keys;\n}\n\nfunction clearTrackedEntryKeys(registry: object, namespace: string, unregister?: (key: string) => void): void {\n const keys = getTrackedEntryKeys(registry, namespace);\n if (unregister) {\n keys.forEach(key => unregister(key));\n }\n keys.clear();\n}\n\nfunction createAppRegistryContributionProvider<T>(app: IApp, key: ServiceIdentifier<T>): IContributionProvider<T> {\n return {\n getContributions: () => app.context.registry.contribution.get(key as any) as T[]\n };\n}\n\nexport function getRuntimeInstallerBindingContext(): ILegacyBindingContext {\n ensureRuntimeInstallerPreloaded();\n return runtimeInstallerContext;\n}\n\nexport function refreshRuntimeInstallerContributions(): void {\n ContributionStore.refreshAllContributions();\n}\n\nexport function getRuntimeInstallerGlobal(): IGlobal {\n ensureRuntimeInstallerPreloaded();\n runtimeGlobal ??= new DefaultGlobal(\n createContributionProvider<IEnvContribution>(EnvContribution, runtimeInstallerContext)\n );\n return runtimeGlobal;\n}\n\nexport function configureRuntimeApplicationForApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n const global = getRuntimeInstallerGlobal();\n\n application.global = global;\n application.canvasFactory = env => bindingContext.getNamed(CanvasFactory, env);\n application.context2dFactory = env => bindingContext.getNamed(Context2dFactory, env);\n application.windowHandlerFactory = env => resolveRuntimeNamed(WindowHandlerContribution, env);\n application.windowFactory = () =>\n new DefaultWindow(global, env => resolveRuntimeNamed(WindowHandlerContribution, env));\n application.pluginServiceFactory = () =>\n new DefaultPluginService(createContributionProvider<IPlugin>(AutoEnablePlugins, bindingContext), {\n pluginRegistry: app.context.registry.plugin as any\n });\n application.incrementalDrawContributionFactory = () =>\n new DefaultIncrementalDrawContribution(\n [],\n new DefaultIncrementalCanvasLineRender(),\n new DefaultIncrementalCanvasAreaRender(\n createContributionProvider<IAreaRenderContribution>(AreaRenderContribution, bindingContext)\n ),\n createAppRegistryContributionProvider<IDrawItemInterceptorContribution>(app, DrawItemInterceptor)\n );\n}\n\nexport function installRuntimeGraphicRenderersToApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const renderers = bindingContext.getAll(GraphicRender);\n const registeredKeys = getTrackedEntryKeys(app.registry.renderer as object, RUNTIME_RENDERER_NAMESPACE);\n\n clearTrackedEntryKeys(\n app.registry.renderer as object,\n RUNTIME_RENDERER_NAMESPACE,\n app.registry.renderer.unregister?.bind(app.registry.renderer)\n );\n\n registerRuntimeEntries(\n (key, renderer) => {\n renderer?.reInit?.();\n app.registry.renderer.register(key, renderer);\n registeredKeys.add(key);\n },\n renderers as any[],\n RUNTIME_RENDERER_NAMESPACE\n );\n}\n\nexport function installRuntimeDrawContributionsToApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const contributions = bindingContext.getAll(DrawItemInterceptor) as IDrawItemInterceptorContribution[];\n const tracked =\n runtimeDrawContributions.get(app.context.registry.contribution as object) ??\n new Set<IDrawItemInterceptorContribution>();\n tracked.forEach(contribution => {\n app.context.registry.contribution.unregister?.(DrawItemInterceptor, contribution);\n });\n tracked.clear();\n runtimeDrawContributions.set(app.context.registry.contribution as object, tracked);\n const registered = new Set(app.context.registry.contribution.get(DrawItemInterceptor));\n\n contributions.forEach(contribution => {\n if (!registered.has(contribution)) {\n app.context.registry.contribution.register(DrawItemInterceptor, contribution);\n registered.add(contribution);\n }\n tracked.add(contribution);\n });\n}\n\nexport function installRuntimePickersToApp<T extends IGraphicPicker>(\n app: IApp,\n serviceIdentifier: ServiceIdentifier<T>\n): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const pickers = bindingContext.getAll(serviceIdentifier);\n const registeredKeys = getTrackedEntryKeys(app.registry.picker as object, RUNTIME_PICKER_NAMESPACE);\n\n clearTrackedEntryKeys(\n app.registry.picker as object,\n RUNTIME_PICKER_NAMESPACE,\n app.registry.picker.unregister?.bind(app.registry.picker)\n );\n\n registerRuntimeEntries(\n (key, picker) => {\n app.registry.picker.register(key, picker);\n registeredKeys.add(key);\n },\n pickers as any[],\n RUNTIME_PICKER_NAMESPACE\n );\n}\n\nfunction getRuntimeContributionModuleIdentity(module: TRuntimeContributionModule): object {\n return module as object;\n}\n\nfunction hasLoadedRuntimeContributionModule(\n context: ILegacyBindingContext,\n module: TRuntimeContributionModule\n): boolean {\n return loadedRuntimeContributionModules.get(context)?.has(getRuntimeContributionModuleIdentity(module)) ?? false;\n}\n\nfunction markRuntimeContributionModuleLoaded(context: ILegacyBindingContext, module: TRuntimeContributionModule): void {\n let modules = loadedRuntimeContributionModules.get(context);\n if (!modules) {\n modules = new WeakSet<object>();\n loadedRuntimeContributionModules.set(context, modules);\n }\n modules.add(getRuntimeContributionModuleIdentity(module));\n}\n\nfunction loadRuntimeContributionModuleToContext(\n context: ILegacyBindingContext,\n module: TRuntimeContributionModule\n): void {\n if (hasLoadedRuntimeContributionModule(context, module)) {\n return;\n }\n\n if (typeof module === 'function') {\n module(context);\n } else {\n module.registry(context.bind, noopUnbindRuntimeContributionService, context.isBound, context.rebind);\n }\n\n markRuntimeContributionModuleLoaded(context, module);\n}\n\nfunction isRuntimePickerTarget(\n target: TRuntimeContributionInstallTarget\n): target is { picker: ServiceIdentifier<IGraphicPicker> } {\n return typeof target === 'object' && target !== null && 'picker' in target;\n}\n\nfunction installRuntimeContributionTargetsToApp(\n app: IApp,\n targets: TRuntimeContributionInstallTarget[] | undefined\n): void {\n const resolvedTargets = targets ?? DEFAULT_RUNTIME_CONTRIBUTION_TARGETS;\n let installGraphicRenderers = false;\n let installDrawContributions = false;\n const pickerTargets = new Set<ServiceIdentifier<IGraphicPicker>>();\n\n resolvedTargets.forEach(target => {\n if (target === 'graphic-renderer') {\n installGraphicRenderers = true;\n } else if (target === 'draw-contribution') {\n installDrawContributions = true;\n } else if (isRuntimePickerTarget(target)) {\n pickerTargets.add(target.picker);\n }\n });\n\n if (installDrawContributions) {\n installRuntimeDrawContributionsToApp(app);\n }\n if (installGraphicRenderers) {\n installRuntimeGraphicRenderersToApp(app);\n }\n pickerTargets.forEach(serviceIdentifier => {\n installRuntimePickersToApp(app, serviceIdentifier);\n });\n}\n\nexport function installRuntimeContributionModule(\n module: TRuntimeContributionModule,\n { app, legacy = true, targets }: IRuntimeContributionModuleInstallOptions = {}\n): void {\n const runtimeContext = getRuntimeInstallerBindingContext();\n loadRuntimeContributionModuleToContext(runtimeContext, module);\n\n if (legacy) {\n preLoadAllModule();\n loadRuntimeContributionModuleToContext(getLegacyBindingContext(), module);\n }\n\n refreshRuntimeInstallerContributions();\n\n if (app) {\n installRuntimeContributionTargetsToApp(app, targets);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/entries/runtime-installer.ts"],"names":[],"mappings":"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","file":"runtime-installer.js","sourcesContent":["import type {\n IContributionProvider,\n IAreaRenderContribution,\n IDrawItemInterceptorContribution,\n IEnvContribution,\n IGlobal,\n IGraphicPicker,\n IPlugin\n} from '../interface';\nimport type { IApp } from './types';\nimport { application } from '../application';\nimport { CanvasFactory, Context2dFactory } from '../canvas/constants';\nimport { ContributionStore, createContributionProvider } from '../common/contribution-provider';\nimport type { ServiceIdentifier } from '../common/explicit-binding';\nimport { EnvContribution } from '../constants';\nimport loadBuiltinContributions from '../core/contributions/modules';\nimport { DefaultGlobal } from '../core/global';\nimport { WindowHandlerContribution, DefaultWindow } from '../core/window';\nimport coreModule from '../core/core-modules';\nimport graphicModule from '../graphic/graphic-service/graphic-module';\nimport type { ILegacyBindingContext } from '../legacy/binding-context';\nimport { getLegacyBindingContext, preLoadAllModule } from '../legacy/bootstrap';\nimport pickModule from '../picker/pick-modules';\nimport { AreaRenderContribution } from '../render/contributions/render/contributions/constants';\nimport { DrawItemInterceptor } from '../render/contributions/render/draw-interceptor';\nimport { DefaultIncrementalCanvasAreaRender } from '../render/contributions/render/incremental-area-render';\nimport { DefaultIncrementalDrawContribution } from '../render/contributions/render/incremental-draw-contribution';\nimport { DefaultIncrementalCanvasLineRender } from '../render/contributions/render/incremental-line-render';\nimport renderModule from '../render/render-modules';\nimport { GraphicRender } from '../render/contributions/render/symbol';\nimport loadRenderContributions from '../render/contributions/modules';\nimport { AutoEnablePlugins } from '../plugins/constants';\nimport { DefaultPluginService } from '../plugins/plugin-service';\nimport { getRuntimeInstallerState } from './runtime-installer-state';\n\nexport type TRuntimeContributionModuleRegistry = (\n bind: ILegacyBindingContext['bind'],\n unbind: (serviceIdentifier: ServiceIdentifier) => void,\n isBound: ILegacyBindingContext['isBound'],\n rebind: ILegacyBindingContext['rebind']\n) => void;\n\nexport type TRuntimeContributionModule =\n | ((context: ILegacyBindingContext) => void)\n | {\n registry: TRuntimeContributionModuleRegistry;\n };\n\nexport type TRuntimeContributionInstallTarget =\n | 'graphic-renderer'\n | 'draw-contribution'\n | {\n picker: ServiceIdentifier<IGraphicPicker>;\n };\n\nexport interface IRuntimeContributionModuleInstallOptions {\n app?: IApp;\n legacy?: boolean;\n targets?: TRuntimeContributionInstallTarget[];\n}\n\nconst runtimeInstallerState = getRuntimeInstallerState();\nconst runtimeInstallerContext = runtimeInstallerState.runtimeInstallerContext;\nconst RUNTIME_RENDERER_NAMESPACE = 'vrender:runtime-renderer';\nconst RUNTIME_PICKER_NAMESPACE = 'vrender:runtime-picker';\nconst runtimeEntryKeys = runtimeInstallerState.runtimeEntryKeys;\nconst runtimeDrawContributions = runtimeInstallerState.runtimeDrawContributions;\nconst loadedRuntimeContributionModules = runtimeInstallerState.loadedRuntimeContributionModules;\nconst DEFAULT_RUNTIME_CONTRIBUTION_TARGETS: TRuntimeContributionInstallTarget[] = ['graphic-renderer'];\nconst noopUnbindRuntimeContributionService = (): void => undefined;\n\nfunction ensureRuntimeInstallerPreloaded(): void {\n if (runtimeInstallerState.preloaded) {\n return;\n }\n\n runtimeInstallerState.preloaded = true;\n coreModule({ bind: runtimeInstallerContext.bind });\n graphicModule({ bind: runtimeInstallerContext.bind });\n renderModule({ bind: runtimeInstallerContext.bind });\n pickModule({ bind: runtimeInstallerContext.bind, isBound: runtimeInstallerContext.isBound });\n loadBuiltinContributions(runtimeInstallerContext);\n loadRenderContributions(runtimeInstallerContext);\n}\n\nfunction resolveRuntimeNamed<T>(serviceIdentifier: ServiceIdentifier<T>, name: string): T {\n const bindingContext = getRuntimeInstallerBindingContext();\n const instance = bindingContext.getNamed(serviceIdentifier, name);\n\n if (instance == null) {\n throw new Error(`${String(serviceIdentifier)} is not configured for ${name}`);\n }\n\n return instance;\n}\n\nfunction registerRuntimeEntries<T extends { type?: string }>(\n register: (key: string, value: T) => void,\n entries: T[],\n prefix: string\n): void {\n entries.forEach((entry, index) => {\n const name = entry?.type ?? entry?.constructor?.name ?? `${prefix}-entry`;\n register(`${prefix}:${String(name)}:${index}`, entry);\n });\n}\n\nfunction getTrackedEntryKeys(registry: object, namespace: string): Set<string> {\n let namespaces = runtimeEntryKeys.get(registry);\n if (!namespaces) {\n namespaces = new Map();\n runtimeEntryKeys.set(registry, namespaces);\n }\n\n let keys = namespaces.get(namespace);\n if (!keys) {\n keys = new Set();\n namespaces.set(namespace, keys);\n }\n\n return keys;\n}\n\nfunction clearTrackedEntryKeys(registry: object, namespace: string, unregister?: (key: string) => void): void {\n const keys = getTrackedEntryKeys(registry, namespace);\n if (unregister) {\n keys.forEach(key => unregister(key));\n }\n keys.clear();\n}\n\nfunction createAppRegistryContributionProvider<T>(app: IApp, key: ServiceIdentifier<T>): IContributionProvider<T> {\n return {\n getContributions: () => app.context.registry.contribution.get(key as any) as T[]\n };\n}\n\nexport function getRuntimeInstallerBindingContext(): ILegacyBindingContext {\n ensureRuntimeInstallerPreloaded();\n return runtimeInstallerContext;\n}\n\nexport function refreshRuntimeInstallerContributions(): void {\n ContributionStore.refreshAllContributions();\n}\n\nexport function getRuntimeInstallerGlobal(): IGlobal {\n ensureRuntimeInstallerPreloaded();\n runtimeInstallerState.runtimeGlobal ??= new DefaultGlobal(\n createContributionProvider<IEnvContribution>(EnvContribution, runtimeInstallerContext)\n );\n return runtimeInstallerState.runtimeGlobal;\n}\n\nexport function configureRuntimeApplicationForApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n const global = getRuntimeInstallerGlobal();\n\n application.global = global;\n application.canvasFactory = env => bindingContext.getNamed(CanvasFactory, env);\n application.context2dFactory = env => bindingContext.getNamed(Context2dFactory, env);\n application.windowHandlerFactory = env => resolveRuntimeNamed(WindowHandlerContribution, env);\n application.windowFactory = () =>\n new DefaultWindow(global, env => resolveRuntimeNamed(WindowHandlerContribution, env));\n application.pluginServiceFactory = () =>\n new DefaultPluginService(createContributionProvider<IPlugin>(AutoEnablePlugins, bindingContext), {\n pluginRegistry: app.context.registry.plugin as any\n });\n application.incrementalDrawContributionFactory = () =>\n new DefaultIncrementalDrawContribution(\n [],\n new DefaultIncrementalCanvasLineRender(),\n new DefaultIncrementalCanvasAreaRender(\n createContributionProvider<IAreaRenderContribution>(AreaRenderContribution, bindingContext)\n ),\n createAppRegistryContributionProvider<IDrawItemInterceptorContribution>(app, DrawItemInterceptor)\n );\n}\n\nexport { RUNTIME_INSTALLER_STATE_SYMBOL, getRuntimeInstallerState } from './runtime-installer-state';\nexport type { IRuntimeInstallerState } from './runtime-installer-state';\n\nexport function installRuntimeGraphicRenderersToApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const renderers = bindingContext.getAll(GraphicRender);\n const registeredKeys = getTrackedEntryKeys(app.registry.renderer as object, RUNTIME_RENDERER_NAMESPACE);\n\n clearTrackedEntryKeys(\n app.registry.renderer as object,\n RUNTIME_RENDERER_NAMESPACE,\n app.registry.renderer.unregister?.bind(app.registry.renderer)\n );\n\n registerRuntimeEntries(\n (key, renderer) => {\n renderer?.reInit?.();\n app.registry.renderer.register(key, renderer);\n registeredKeys.add(key);\n },\n renderers as any[],\n RUNTIME_RENDERER_NAMESPACE\n );\n}\n\nexport function installRuntimeDrawContributionsToApp(app: IApp): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const contributions = bindingContext.getAll(DrawItemInterceptor) as IDrawItemInterceptorContribution[];\n const tracked =\n runtimeDrawContributions.get(app.context.registry.contribution as object) ??\n new Set<IDrawItemInterceptorContribution>();\n tracked.forEach(contribution => {\n app.context.registry.contribution.unregister?.(DrawItemInterceptor, contribution);\n });\n tracked.clear();\n runtimeDrawContributions.set(app.context.registry.contribution as object, tracked);\n const registered = new Set(app.context.registry.contribution.get(DrawItemInterceptor));\n\n contributions.forEach(contribution => {\n if (!registered.has(contribution)) {\n app.context.registry.contribution.register(DrawItemInterceptor, contribution);\n registered.add(contribution);\n }\n tracked.add(contribution);\n });\n}\n\nexport function installRuntimePickersToApp<T extends IGraphicPicker>(\n app: IApp,\n serviceIdentifier: ServiceIdentifier<T>\n): void {\n const bindingContext = getRuntimeInstallerBindingContext();\n refreshRuntimeInstallerContributions();\n const pickers = bindingContext.getAll(serviceIdentifier);\n const registeredKeys = getTrackedEntryKeys(app.registry.picker as object, RUNTIME_PICKER_NAMESPACE);\n\n clearTrackedEntryKeys(\n app.registry.picker as object,\n RUNTIME_PICKER_NAMESPACE,\n app.registry.picker.unregister?.bind(app.registry.picker)\n );\n\n registerRuntimeEntries(\n (key, picker) => {\n app.registry.picker.register(key, picker);\n registeredKeys.add(key);\n },\n pickers as any[],\n RUNTIME_PICKER_NAMESPACE\n );\n}\n\nfunction getRuntimeContributionModuleIdentity(module: TRuntimeContributionModule): object {\n return module as object;\n}\n\nfunction hasLoadedRuntimeContributionModule(\n context: ILegacyBindingContext,\n module: TRuntimeContributionModule\n): boolean {\n return loadedRuntimeContributionModules.get(context)?.has(getRuntimeContributionModuleIdentity(module)) ?? false;\n}\n\nfunction markRuntimeContributionModuleLoaded(context: ILegacyBindingContext, module: TRuntimeContributionModule): void {\n let modules = loadedRuntimeContributionModules.get(context);\n if (!modules) {\n modules = new WeakSet<object>();\n loadedRuntimeContributionModules.set(context, modules);\n }\n modules.add(getRuntimeContributionModuleIdentity(module));\n}\n\nfunction loadRuntimeContributionModuleToContext(\n context: ILegacyBindingContext,\n module: TRuntimeContributionModule\n): void {\n if (hasLoadedRuntimeContributionModule(context, module)) {\n return;\n }\n\n if (typeof module === 'function') {\n module(context);\n } else {\n module.registry(context.bind, noopUnbindRuntimeContributionService, context.isBound, context.rebind);\n }\n\n markRuntimeContributionModuleLoaded(context, module);\n}\n\nfunction isRuntimePickerTarget(\n target: TRuntimeContributionInstallTarget\n): target is { picker: ServiceIdentifier<IGraphicPicker> } {\n return typeof target === 'object' && target !== null && 'picker' in target;\n}\n\nfunction installRuntimeContributionTargetsToApp(\n app: IApp,\n targets: TRuntimeContributionInstallTarget[] | undefined\n): void {\n const resolvedTargets = targets ?? DEFAULT_RUNTIME_CONTRIBUTION_TARGETS;\n let installGraphicRenderers = false;\n let installDrawContributions = false;\n const pickerTargets = new Set<ServiceIdentifier<IGraphicPicker>>();\n\n resolvedTargets.forEach(target => {\n if (target === 'graphic-renderer') {\n installGraphicRenderers = true;\n } else if (target === 'draw-contribution') {\n installDrawContributions = true;\n } else if (isRuntimePickerTarget(target)) {\n pickerTargets.add(target.picker);\n }\n });\n\n if (installDrawContributions) {\n installRuntimeDrawContributionsToApp(app);\n }\n if (installGraphicRenderers) {\n installRuntimeGraphicRenderersToApp(app);\n }\n pickerTargets.forEach(serviceIdentifier => {\n installRuntimePickersToApp(app, serviceIdentifier);\n });\n}\n\nexport function installRuntimeContributionModule(\n module: TRuntimeContributionModule,\n { app, legacy = true, targets }: IRuntimeContributionModuleInstallOptions = {}\n): void {\n const runtimeContext = getRuntimeInstallerBindingContext();\n loadRuntimeContributionModuleToContext(runtimeContext, module);\n\n if (legacy) {\n preLoadAllModule();\n loadRuntimeContributionModuleToContext(getLegacyBindingContext(), module);\n }\n\n refreshRuntimeInstallerContributions();\n\n if (app) {\n installRuntimeContributionTargetsToApp(app, targets);\n }\n}\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const FACTORY_STATE_SYMBOL = Symbol.for("@visactor/vrender-core/factory-state");
|
|
2
|
+
|
|
3
|
+
function createFactoryState() {
|
|
4
|
+
return {
|
|
5
|
+
pluginClasses: {}
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function getFactoryState() {
|
|
10
|
+
const scope = globalThis;
|
|
11
|
+
return scope[FACTORY_STATE_SYMBOL] || (scope[FACTORY_STATE_SYMBOL] = createFactoryState()),
|
|
12
|
+
scope[FACTORY_STATE_SYMBOL];
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=factory-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/factory-state.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AAMvF,SAAS,kBAAkB;IACzB,OAAO;QACL,aAAa,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,KAAK,GAAG,UAA4E,CAAC;IAE3F,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE;QAChC,KAAK,CAAC,oBAAoB,CAAC,GAAG,kBAAkB,EAAE,CAAC;KACpD;IAED,OAAO,KAAK,CAAC,oBAAoB,CAAkB,CAAC;AACtD,CAAC","file":"factory-state.js","sourcesContent":["export const FACTORY_STATE_SYMBOL = Symbol.for('@visactor/vrender-core/factory-state');\n\nexport interface IFactoryState {\n pluginClasses: Record<string, any>;\n}\n\nfunction createFactoryState(): IFactoryState {\n return {\n pluginClasses: {}\n };\n}\n\nexport function getFactoryState(): IFactoryState {\n const scope = globalThis as typeof globalThis & { [FACTORY_STATE_SYMBOL]?: IFactoryState };\n\n if (!scope[FACTORY_STATE_SYMBOL]) {\n scope[FACTORY_STATE_SYMBOL] = createFactoryState();\n }\n\n return scope[FACTORY_STATE_SYMBOL] as IFactoryState;\n}\n"]}
|
package/es/factory.d.ts
CHANGED
|
@@ -3,4 +3,6 @@ export declare class Factory {
|
|
|
3
3
|
static registerPlugin(pluginKey: string, pluginClass: any): void;
|
|
4
4
|
static getPlugin(pluginKey: string): any;
|
|
5
5
|
}
|
|
6
|
+
export { FACTORY_STATE_SYMBOL, getFactoryState } from './factory-state';
|
|
7
|
+
export type { IFactoryState } from './factory-state';
|
|
6
8
|
export * from './factory/index';
|
package/es/factory.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { getFactoryState } from "./factory-state";
|
|
2
|
+
|
|
1
3
|
export class Factory {
|
|
2
4
|
static registerPlugin(pluginKey, pluginClass) {
|
|
3
5
|
Factory._pluginClasses[pluginKey] = pluginClass;
|
|
@@ -7,7 +9,9 @@ export class Factory {
|
|
|
7
9
|
}
|
|
8
10
|
}
|
|
9
11
|
|
|
10
|
-
Factory._pluginClasses =
|
|
12
|
+
Factory._pluginClasses = getFactoryState().pluginClasses;
|
|
13
|
+
|
|
14
|
+
export { FACTORY_STATE_SYMBOL, getFactoryState } from "./factory-state";
|
|
11
15
|
|
|
12
16
|
export * from "./factory/index";
|
|
13
17
|
//# sourceMappingURL=factory.js.map
|
package/es/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,OAAO;IAGlB,MAAM,CAAC,cAAc,CAAC,SAAiB,EAAE,WAAgB;QACvD,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,SAAiB;QAChC,OAAO,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;;AARc,sBAAc,
|
|
1
|
+
{"version":3,"sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,OAAO;IAGlB,MAAM,CAAC,cAAc,CAAC,SAAiB,EAAE,WAAgB;QACvD,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,SAAiB;QAChC,OAAO,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;;AARc,sBAAc,GAAG,eAAe,EAAE,CAAC,aAAa,CAAC;AAWlE,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAExE,cAAc,iBAAiB,CAAC","file":"factory.js","sourcesContent":["import { getFactoryState } from './factory-state';\n\nexport class Factory {\n private static _pluginClasses = getFactoryState().pluginClasses;\n\n static registerPlugin(pluginKey: string, pluginClass: any) {\n Factory._pluginClasses[pluginKey] = pluginClass;\n }\n\n static getPlugin(pluginKey: string) {\n return Factory._pluginClasses[pluginKey];\n }\n}\n\nexport { FACTORY_STATE_SYMBOL, getFactoryState } from './factory-state';\nexport type { IFactoryState } from './factory-state';\nexport * from './factory/index';\n"]}
|