@eclipse-glsp/layout-elk 2.2.0-next.89 → 2.2.0-next.91
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/lib/di.config.d.ts +5 -0
- package/lib/di.config.d.ts.map +1 -1
- package/lib/di.config.js +5 -1
- package/lib/di.config.js.map +1 -1
- package/package.json +3 -3
- package/src/di.config.ts +10 -1
package/lib/di.config.d.ts
CHANGED
|
@@ -26,6 +26,11 @@ export interface ElkModuleOptions {
|
|
|
26
26
|
* is bound.
|
|
27
27
|
*/
|
|
28
28
|
elementFilter?: Constructor<ElementFilter>;
|
|
29
|
+
/**
|
|
30
|
+
* A flag to indicate whether a WebWorker context is provided. If this option is set, a feature is mocked that would
|
|
31
|
+
* only be available in a node environment.
|
|
32
|
+
*/
|
|
33
|
+
isWebWorker?: boolean;
|
|
29
34
|
}
|
|
30
35
|
/**
|
|
31
36
|
* Utility method to create a DI module that provides all necessary bindings to use the {@link GlspElkLayoutEngine} in a node GLSP server
|
package/lib/di.config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":"AAgBA,OAAuB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAA8B,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEvF,KAAK,WAAW,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACrD;;;OAGG;IACH,aAAa,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":"AAgBA,OAAuB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAA8B,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEvF,KAAK,WAAW,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACrD;;;OAGG;IACH,aAAa,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAwCnF"}
|
package/lib/di.config.js
CHANGED
|
@@ -56,7 +56,11 @@ function configureELKLayoutModule(options) {
|
|
|
56
56
|
}
|
|
57
57
|
const elkFactory = () => new elk_bundled_1.default({
|
|
58
58
|
algorithms: options.algorithms,
|
|
59
|
-
defaultLayoutOptions: options.defaultLayoutOptions
|
|
59
|
+
defaultLayoutOptions: options.defaultLayoutOptions,
|
|
60
|
+
// The node implementation relied on elkjs' `FakeWorker` to set the `workerFactory`.
|
|
61
|
+
// However, since the required file is dynamically loaded and not available in a web-worker context,
|
|
62
|
+
// it needs to be mocked manually.
|
|
63
|
+
workerFactory: options.isWebWorker ? () => ({ postMessage: () => { } }) : undefined
|
|
60
64
|
});
|
|
61
65
|
bind(glsp_elk_layout_engine_1.ElkFactory).toConstantValue(elkFactory);
|
|
62
66
|
bind(glsp_elk_layout_engine_1.GlspElkLayoutEngine)
|
package/lib/di.config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"di.config.js","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAAgE;AAChE,uDAAsE;AACtE,yCAA4C;AAC5C,qDAAuE;AACvE,qEAA2E;AAC3E,+DAAuF;
|
|
1
|
+
{"version":3,"file":"di.config.js","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAAgE;AAChE,uDAAsE;AACtE,yCAA4C;AAC5C,qDAAuE;AACvE,qEAA2E;AAC3E,+DAAuF;AAkCvF;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,wBAAwB,CAAC,OAAyB;IAC9D,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;QAC9B,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,8BAAa,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACrE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,8BAAa,CAAC,CAAC,EAAE,CAAC,qCAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACpE,CAAC;QAED,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,CAAC,wCAAkB,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,wCAAkB,CAAC;iBACnB,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,gDAA0B,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;iBAC3G,gBAAgB,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,UAAU,GAAe,GAAG,EAAE,CAChC,IAAI,qBAAc,CAAC;YACf,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,oFAAoF;YACpF,oGAAoG;YACpG,kCAAkC;YAClC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAsB,CAAC,CAAC,CAAC,SAAS;SAC1G,CAAC,CAAC;QAEP,IAAI,CAAC,mCAAU,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAE7C,IAAI,CAAC,4CAAmB,CAAC;aACpB,cAAc,CAAC,OAAO,CAAC,EAAE;YACtB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YACpC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAa,mCAAU,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAgB,8BAAa,CAAC,CAAC;YAC3D,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAqB,wCAAkB,CAAC,CAAC;YAC3E,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAa,mBAAU,CAAC,CAAC;YACzD,OAAO,IAAI,4CAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAC9E,CAAC,CAAC;aACD,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAY,CAAC,CAAC,SAAS,CAAC,4CAAmB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACP,CAAC;AAxCD,4DAwCC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eclipse-glsp/layout-elk",
|
|
3
|
-
"version": "2.2.0-next.
|
|
3
|
+
"version": "2.2.0-next.91+cfd67f9",
|
|
4
4
|
"description": "Integration of ELK graph layout algorithms in GLSP Node Server",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eclipse",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"watch": "tsc -w"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@eclipse-glsp/server": "2.2.0-next.
|
|
52
|
+
"@eclipse-glsp/server": "2.2.0-next.91+cfd67f9",
|
|
53
53
|
"elkjs": "^0.7.1"
|
|
54
54
|
},
|
|
55
55
|
"peerDependencies": {
|
|
@@ -58,5 +58,5 @@
|
|
|
58
58
|
"publishConfig": {
|
|
59
59
|
"access": "public"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "cfd67f91051bb3f0e156636cef57801cdc5a5999"
|
|
62
62
|
}
|
package/src/di.config.ts
CHANGED
|
@@ -45,6 +45,11 @@ export interface ElkModuleOptions {
|
|
|
45
45
|
* is bound.
|
|
46
46
|
*/
|
|
47
47
|
elementFilter?: Constructor<ElementFilter>;
|
|
48
|
+
/**
|
|
49
|
+
* A flag to indicate whether a WebWorker context is provided. If this option is set, a feature is mocked that would
|
|
50
|
+
* only be available in a node environment.
|
|
51
|
+
*/
|
|
52
|
+
isWebWorker?: boolean;
|
|
48
53
|
}
|
|
49
54
|
|
|
50
55
|
/**
|
|
@@ -82,7 +87,11 @@ export function configureELKLayoutModule(options: ElkModuleOptions): ContainerMo
|
|
|
82
87
|
const elkFactory: ElkFactory = () =>
|
|
83
88
|
new ElkConstructor({
|
|
84
89
|
algorithms: options.algorithms,
|
|
85
|
-
defaultLayoutOptions: options.defaultLayoutOptions
|
|
90
|
+
defaultLayoutOptions: options.defaultLayoutOptions,
|
|
91
|
+
// The node implementation relied on elkjs' `FakeWorker` to set the `workerFactory`.
|
|
92
|
+
// However, since the required file is dynamically loaded and not available in a web-worker context,
|
|
93
|
+
// it needs to be mocked manually.
|
|
94
|
+
workerFactory: options.isWebWorker ? () => ({ postMessage: () => {} }) as unknown as Worker : undefined
|
|
86
95
|
});
|
|
87
96
|
|
|
88
97
|
bind(ElkFactory).toConstantValue(elkFactory);
|