@eclipse-glsp/client 2.7.0-next.24 → 2.7.0-next.26

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.
Files changed (74) hide show
  1. package/lib/base/action-dispatcher.d.ts.map +1 -1
  2. package/lib/base/action-dispatcher.js +2 -1
  3. package/lib/base/action-dispatcher.js.map +1 -1
  4. package/lib/base/model/diagram-loader.d.ts +8 -6
  5. package/lib/base/model/diagram-loader.d.ts.map +1 -1
  6. package/lib/base/model/diagram-loader.js +1 -1
  7. package/lib/base/model/diagram-loader.js.map +1 -1
  8. package/lib/features/export/default-png-diagram-exporter.d.ts +52 -0
  9. package/lib/features/export/default-png-diagram-exporter.d.ts.map +1 -0
  10. package/lib/features/export/default-png-diagram-exporter.js +157 -0
  11. package/lib/features/export/default-png-diagram-exporter.js.map +1 -0
  12. package/lib/features/export/default-svg-diagram-exporter.d.ts +32 -0
  13. package/lib/features/export/default-svg-diagram-exporter.d.ts.map +1 -0
  14. package/lib/features/export/default-svg-diagram-exporter.js +54 -0
  15. package/lib/features/export/default-svg-diagram-exporter.js.map +1 -0
  16. package/lib/features/export/diagram-export-postprocessor.d.ts +33 -0
  17. package/lib/features/export/diagram-export-postprocessor.d.ts.map +1 -0
  18. package/lib/features/export/diagram-export-postprocessor.js +84 -0
  19. package/lib/features/export/diagram-export-postprocessor.js.map +1 -0
  20. package/lib/features/export/diagram-exporter.d.ts +44 -0
  21. package/lib/features/export/diagram-exporter.d.ts.map +1 -0
  22. package/lib/features/export/diagram-exporter.js +18 -0
  23. package/lib/features/export/diagram-exporter.js.map +1 -0
  24. package/lib/features/export/export-modules.d.ts +1 -1
  25. package/lib/features/export/export-modules.d.ts.map +1 -1
  26. package/lib/features/export/export-modules.js +20 -3
  27. package/lib/features/export/export-modules.js.map +1 -1
  28. package/lib/features/export/export-result-action-handler.d.ts +28 -0
  29. package/lib/features/export/export-result-action-handler.d.ts.map +1 -0
  30. package/lib/features/export/export-result-action-handler.js +72 -0
  31. package/lib/features/export/export-result-action-handler.js.map +1 -0
  32. package/lib/features/export/export-svg-action-handler.d.ts +19 -0
  33. package/lib/features/export/export-svg-action-handler.d.ts.map +1 -1
  34. package/lib/features/export/export-svg-action-handler.js +4 -15
  35. package/lib/features/export/export-svg-action-handler.js.map +1 -1
  36. package/lib/features/export/glsp-svg-exporter.d.ts +18 -1
  37. package/lib/features/export/glsp-svg-exporter.d.ts.map +1 -1
  38. package/lib/features/export/glsp-svg-exporter.js +44 -11
  39. package/lib/features/export/glsp-svg-exporter.js.map +1 -1
  40. package/lib/features/export/request-export-command.d.ts +29 -0
  41. package/lib/features/export/request-export-command.d.ts.map +1 -0
  42. package/lib/features/export/request-export-command.js +73 -0
  43. package/lib/features/export/request-export-command.js.map +1 -0
  44. package/lib/features/export/request-export-key-listener.d.ts +21 -0
  45. package/lib/features/export/request-export-key-listener.d.ts.map +1 -0
  46. package/lib/features/export/request-export-key-listener.js +40 -0
  47. package/lib/features/export/request-export-key-listener.js.map +1 -0
  48. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  49. package/lib/features/tool-palette/tool-palette.js +1 -2
  50. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  51. package/lib/features/viewport/origin-viewport.d.ts +2 -13
  52. package/lib/features/viewport/origin-viewport.d.ts.map +1 -1
  53. package/lib/features/viewport/origin-viewport.js +3 -19
  54. package/lib/features/viewport/origin-viewport.js.map +1 -1
  55. package/lib/index.d.ts +6 -0
  56. package/lib/index.d.ts.map +1 -1
  57. package/lib/index.js +6 -0
  58. package/lib/index.js.map +1 -1
  59. package/package.json +3 -3
  60. package/src/base/action-dispatcher.ts +3 -1
  61. package/src/base/model/diagram-loader.ts +8 -6
  62. package/src/features/export/default-png-diagram-exporter.ts +145 -0
  63. package/src/features/export/default-svg-diagram-exporter.ts +39 -0
  64. package/src/features/export/diagram-export-postprocessor.ts +82 -0
  65. package/src/features/export/diagram-exporter.ts +45 -0
  66. package/src/features/export/export-modules.ts +24 -4
  67. package/src/features/export/export-result-action-handler.ts +66 -0
  68. package/src/features/export/export-svg-action-handler.ts +7 -2
  69. package/src/features/export/glsp-svg-exporter.ts +48 -12
  70. package/src/features/export/request-export-command.ts +65 -0
  71. package/src/features/export/request-export-key-listener.ts +29 -0
  72. package/src/features/tool-palette/tool-palette.ts +1 -1
  73. package/src/features/viewport/origin-viewport.ts +10 -23
  74. package/src/index.ts +6 -0
@@ -1 +1 @@
1
- {"version":3,"file":"action-dispatcher.d.ts","sourceRoot":"","sources":["../../src/base/action-dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,QAAQ,EAER,UAAU,EACV,iBAAiB,EAEjB,aAAa,EACb,cAAc,EAGjB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAExF,qBACa,oBAAqB,SAAQ,gBAAiB,YAAW,mBAAmB,EAAE,iBAAiB;IACxG,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAa;IACrE,SAAS,CAAC,qBAAqB,UAAS;IAGxC,SAAS,CAAC,wBAAwB,EAAE,6BAA6B,CAAC;IAElE,UACmB,qBAAqB,EAAE,qBAAqB,CAAC;IAEhE,gGAAgG;IAEhG,UAAgE,6BAA6B,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpI,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,CAAM;IAEzC,SAAS,CAAC,kBAAkB,iBAAwB;IAE3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;cAQpB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7C,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAQ1C,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAInC;;;;OAIG;IACH,4BAA4B,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAIxD;;;;;;OAMG;IACH,uBAAuB,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAInD,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI;IAUpC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAMnC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAI9C,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B3E,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAKvC,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAgBzD,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAexF,OAAO,CAAC,GAAG,SAAS,cAAc,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAQtF;;;;;;;;;OASG;IACH,YAAY,CAAC,GAAG,SAAS,cAAc,EACnC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAC1B,SAAS,GAAE,MAA+B,EAC1C,eAAe,UAAQ,GACxB,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;CA6B9B"}
1
+ {"version":3,"file":"action-dispatcher.d.ts","sourceRoot":"","sources":["../../src/base/action-dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,QAAQ,EAER,UAAU,EACV,iBAAiB,EAGjB,aAAa,EACb,cAAc,EAGjB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAExF,qBACa,oBAAqB,SAAQ,gBAAiB,YAAW,mBAAmB,EAAE,iBAAiB;IACxG,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAa;IACrE,SAAS,CAAC,qBAAqB,UAAS;IAGxC,SAAS,CAAC,wBAAwB,EAAE,6BAA6B,CAAC;IAElE,UACmB,qBAAqB,EAAE,qBAAqB,CAAC;IAEhE,gGAAgG;IAEhG,UAAgE,6BAA6B,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpI,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,CAAM;IAEzC,SAAS,CAAC,kBAAkB,iBAAwB;IAE3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;cAQpB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7C,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAQ1C,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAInC;;;;OAIG;IACH,4BAA4B,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAIxD;;;;;;OAMG;IACH,uBAAuB,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAInD,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI;IAUpC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAMnC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAI9C,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B3E,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAKvC,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAgBzD,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxF,OAAO,CAAC,GAAG,SAAS,cAAc,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAQtF;;;;;;;;;OASG;IACH,YAAY,CAAC,GAAG,SAAS,cAAc,EACnC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAC1B,SAAS,GAAE,MAA+B,EAC1C,eAAe,UAAQ,GACxB,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;CA6B9B"}
@@ -155,7 +155,8 @@ let GLSPActionDispatcher = class GLSPActionDispatcher extends sprotty_1.ActionDi
155
155
  this.logger.log(this, 'Handle', action);
156
156
  const handlerResults = [];
157
157
  for (const handler of handlers) {
158
- const result = await handler.handle(action);
158
+ const maybeResult = handler.handle(action);
159
+ const result = sprotty_1.MaybePromise.isPromise(maybeResult) ? await maybeResult : maybeResult;
159
160
  if (sprotty_1.Action.is(result)) {
160
161
  handlerResults.push(this.dispatch(result));
161
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"action-dispatcher.js","sourceRoot":"","sources":["../../src/base/action-dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-dispatcher.js","sourceRoot":"","sources":["../../src/base/action-dispatcher.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2023-2024 EclipseSource and others.
2
+ * Copyright (c) 2023-2026 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -79,7 +79,7 @@ export interface IDiagramStartup extends Partial<Ranked> {
79
79
  export declare namespace IDiagramStartup {
80
80
  function is(object: unknown): object is IDiagramStartup;
81
81
  }
82
- export interface DiagramLoadingOptions {
82
+ export interface DiagramLoadingOptions<P extends InitializeParameters = InitializeParameters> {
83
83
  /**
84
84
  * Optional custom options that should be used the initial {@link RequestModelAction}.
85
85
  * These options will be merged with the default options (`diagramType` and `sourceUri`).
@@ -87,10 +87,12 @@ export interface DiagramLoadingOptions {
87
87
  */
88
88
  requestModelOptions?: Args;
89
89
  /**
90
- * Optional partial {@link InitializeParameters} that should be used for {@link GLSPClient.initializeServer} request if the underlying
91
- * {@link GLSPClient} has not been initialized yet.
90
+ * Optional partial {@link InitializeParameters} that should be used for {@link GLSPClient.initializeServer}
91
+ * request if the underlying {@link GLSPClient} has not been initialized yet. The generic type parameter
92
+ * `P` lets callers narrow this to a more specific extension type (e.g., `McpInitializeParameters`)
93
+ * without leaking that extension into the base loader API.
92
94
  */
93
- initializeParameters?: Partial<InitializeParameters>;
95
+ initializeParameters?: Partial<P>;
94
96
  /**
95
97
  * Flag to enable/disable client side notifications during the loading process.
96
98
  * Defaults to `true` if not defined
@@ -115,7 +117,7 @@ export declare class DiagramLoader {
115
117
  protected modelInitializationConstraint: ModelInitializationConstraint;
116
118
  protected lazyInjector: LazyInjector;
117
119
  get diagramStartups(): IDiagramStartup[];
118
- load(options?: DiagramLoadingOptions): Promise<void>;
120
+ load<P extends InitializeParameters = InitializeParameters>(options?: DiagramLoadingOptions<P>): Promise<void>;
119
121
  protected invokeStartupHook(hook: keyof Omit<IDiagramStartup, 'rank'>): Promise<void>;
120
122
  protected requestModel(options: ResolvedDiagramLoadingOptions): Promise<void>;
121
123
  protected initialize(options: ResolvedDiagramLoadingOptions): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-loader.d.ts","sourceRoot":"","sources":["../../../src/base/model/diagram-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAGH,IAAI,EACJ,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EAMf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,OAAO,CAAC,MAAM,CAAC;IACpD;;;OAGG;IACH,cAAc,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEtC;;OAEG;IACH,aAAa,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAErC;;;OAGG;IACH,eAAe,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;OAKG;IAEH,gBAAgB,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC;;OAEG;IACH,uBAAuB,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,yBAAiB,eAAe,CAAC;IAC7B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,eAAe,CAU7D;CACJ;AAED,MAAM,WAAW,qBAAqB;IAClC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,IAAI,CAAC;IAE3B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAErD;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,6BAA6B;IAC1C,mBAAmB,EAAE,IAAI,CAAC;IAC1B,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;CAChC;AAED;;;;;GAKG;AACH,qBACa,aAAa;IAEtB,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAGnC,SAAS,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAG9C,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC;IAGvC,SAAS,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAGvE,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAErC,IAAI,eAAe,IAAI,eAAe,EAAE,CAEvC;IAEK,IAAI,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;cA2B9C,iBAAiB,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAU3E,YAAY,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;cAMnE,UAAU,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;CAgBpF"}
1
+ {"version":3,"file":"diagram-loader.d.ts","sourceRoot":"","sources":["../../../src/base/model/diagram-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAGH,IAAI,EACJ,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EAMf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,OAAO,CAAC,MAAM,CAAC;IACpD;;;OAGG;IACH,cAAc,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEtC;;OAEG;IACH,aAAa,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAErC;;;OAGG;IACH,eAAe,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;OAKG;IAEH,gBAAgB,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC;;OAEG;IACH,uBAAuB,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,yBAAiB,eAAe,CAAC;IAC7B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,eAAe,CAU7D;CACJ;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IACxF;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,IAAI,CAAC;IAE3B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAElC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,6BAA6B;IAC1C,mBAAmB,EAAE,IAAI,CAAC;IAC1B,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;CAChC;AAED;;;;;GAKG;AACH,qBACa,aAAa;IAEtB,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAGnC,SAAS,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAG9C,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC;IAGvC,SAAS,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;IAGvE,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAErC,IAAI,eAAe,IAAI,eAAe,EAAE,CAEvC;IAEK,IAAI,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,EAAE,OAAO,GAAE,qBAAqB,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cA2BxG,iBAAiB,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAU3E,YAAY,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;cAMnE,UAAU,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;CAgBpF"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /********************************************************************************
3
- * Copyright (c) 2023-2024 EclipseSource and others.
3
+ * Copyright (c) 2023-2026 EclipseSource and others.
4
4
  *
5
5
  * This program and the accompanying materials are made available under the
6
6
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-loader.js","sourceRoot":"","sources":["../../../src/base/model/diagram-loader.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,mDAc+B;AAC/B,yCAA+C;AAC/C,sCAAmC;AACnC,2DAAsD;AACtD,uFAAkF;AAuElF,IAAiB,eAAe,CAY/B;AAZD,WAAiB,eAAe;IAC5B,SAAgB,EAAE,CAAC,MAAe;QAC9B,OAAO,CACH,mBAAS,CAAC,EAAE,CAAC,MAAM,CAAC;YACpB,IAAA,uBAAa,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;YACnC,CAAC,gBAAgB,IAAI,MAAM;gBACvB,eAAe,IAAI,MAAM;gBACzB,iBAAiB,IAAI,MAAM;gBAC3B,kBAAkB,IAAI,MAAM;gBAC5B,yBAAyB,IAAI,MAAM,CAAC,CAC3C,CAAC;IACN,CAAC;IAVe,kBAAE,KAUjB,CAAA;AACL,CAAC,EAZgB,eAAe,+BAAf,eAAe,QAY/B;AA6BD;;;;;GAKG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAa;IAgBtB,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAkB,eAAK,CAAC,eAAe,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAiC,EAAE;;QAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAM,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAC/C,MAAM,eAAe,GAAkC;YACnD,mBAAmB,EAAE;gBACjB,SAAS,EAAE,MAAA,IAAI,CAAC,OAAO,CAAC,SAAS,mCAAI,EAAE;gBACvC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;gBACrC,GAAG,OAAO,CAAC,mBAAmB;aACjC;YACD,oBAAoB,EAAE;gBAClB,aAAa,EAAE,+BAAqB,CAAC,GAAG,EAAE;gBAC1C,eAAe,EAAE,oBAAU,CAAC,eAAe;gBAC3C,GAAG,OAAO,CAAC,oBAAoB;aAClC;YACD,mBAAmB,EAAE,MAAA,OAAO,CAAC,mBAAmB,mCAAI,IAAI;SAC3D,CAAC;QACF,+FAA+F;QAC/F,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,gBAAgB,EAAC,UAAU,kDAAI,CAAA,CAAC;QAC3C,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;QACjD,MAAM,IAAI,CAAC,6BAA6B,CAAC,aAAa,EAAE,CAAC;QACzD,MAAM,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;IAC5D,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,IAAyC;;QACvE,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzC,IAAI,CAAC;gBACD,MAAM,CAAA,MAAA,OAAO,CAAC,IAAI,CAAC,uDAAI,CAAA,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,wCAAwC,IAAI,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAsC;QAC/D,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAChC,4BAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,mBAAmB,EAAE,SAAS,EAAE,uBAAa,CAAC,iBAAiB,EAAE,EAAE,CAAC,CACpH,CAAC;IACN,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,OAAsC;QAC7D,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,sBAAY,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC3D,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAC/B,MAAM,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEvC,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,sBAAY,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAClF,CAAC;IACL,CAAC;CACJ,CAAA;AA/EY,sCAAa;AAEZ;IADT,IAAA,kBAAM,EAAC,eAAK,CAAC,eAAe,CAAC;;8CACK;AAGzB;IADT,IAAA,kBAAM,EAAC,eAAK,CAAC,iBAAiB,CAAC;;uDACc;AAGpC;IADT,IAAA,kBAAM,EAAC,mCAAe,CAAC;8BACD,mCAAe;kDAAC;AAG7B;IADT,IAAA,kBAAM,EAAC,+DAA6B,CAAC;8BACG,+DAA6B;oEAAC;AAG7D;IADT,IAAA,kBAAM,EAAC,sBAAY,CAAC;;mDACgB;wBAd5B,aAAa;IADzB,IAAA,sBAAU,GAAE;GACA,aAAa,CA+EzB"}
1
+ {"version":3,"file":"diagram-loader.js","sourceRoot":"","sources":["../../../src/base/model/diagram-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2026 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, ExportFormat, ExportMimeType, GModelRoot, PngExportOptions } from '@eclipse-glsp/sprotty';
17
+ import { DiagramExporter } from './diagram-exporter';
18
+ import { GLSPSvgExporter } from './glsp-svg-exporter';
19
+ /**
20
+ * Default PNG strategy for the unified export registry. Reuses {@link GLSPSvgExporter}'s
21
+ * SVG-rendering pipeline and rasterises the result client-side via `OffscreenCanvas`.
22
+ * Adopters that need server-side rendering replace this binding with their own strategy.
23
+ */
24
+ export declare class DefaultPngDiagramExporter implements DiagramExporter<PngExportOptions> {
25
+ readonly format: ExportFormat;
26
+ readonly mimeType: ExportMimeType;
27
+ readonly encoding: "base64";
28
+ protected svgExporter: GLSPSvgExporter;
29
+ export(root: GModelRoot, options?: PngExportOptions, cause?: Action): Promise<string>;
30
+ /**
31
+ * Rewrite the root `<svg>` tag so its rendered size matches the target raster dimensions.
32
+ * Replaces `width`/`height` attributes and strips conflicting `style` declarations
33
+ * (the SVG exporter emits `width: …px !important` on the inline style for viewer-friendly
34
+ * display, which would otherwise win over the attributes). The existing `viewBox`
35
+ * preserves the vector coordinate system so the content scales without distortion.
36
+ */
37
+ protected applyRasterSize(svgString: string, width: number, height: number): string;
38
+ protected computeDimensions(svgString: string, options: PngExportOptions): {
39
+ width: number;
40
+ height: number;
41
+ };
42
+ /**
43
+ * Read the aspect ratio from the root `<svg>` tag's `viewBox`, falling back to the
44
+ * `width`/`height` attributes. GLSP-emitted SVGs always carry a `viewBox` (set by the
45
+ * underlying sprotty exporter), so the fallback is a defensive safeguard.
46
+ */
47
+ protected parseAspectRatio(svgString: string): number;
48
+ protected rasterise(svgString: string, width: number, height: number, background: string): Promise<Blob>;
49
+ protected bitmapFromSvgUrl(url: string): Promise<ImageBitmap>;
50
+ protected blobToBase64(blob: Blob): Promise<string>;
51
+ }
52
+ //# sourceMappingURL=default-png-diagram-exporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-png-diagram-exporter.d.ts","sourceRoot":"","sources":["../../../src/features/export/default-png-diagram-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE3G,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMtD;;;;GAIG;AACH,qBACa,yBAA0B,YAAW,eAAe,CAAC,gBAAgB,CAAC;IAC/E,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAS;IACtC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAe;IAChD,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;IAEb,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC;IAE1D,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,gBAAqB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa/F;;;;;;OAMG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAiBnF,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAW5G;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;cAerC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9G,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAS7D,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;CAWtD"}
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2026 EclipseSource and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.DefaultPngDiagramExporter = void 0;
28
+ const inversify_1 = require("inversify");
29
+ const glsp_svg_exporter_1 = require("./glsp-svg-exporter");
30
+ /** Default raster width (in CSS px) when neither `width` nor `height` is specified. */
31
+ const DEFAULT_PNG_WIDTH = 1024;
32
+ const DEFAULT_PNG_BACKGROUND = 'white';
33
+ /**
34
+ * Default PNG strategy for the unified export registry. Reuses {@link GLSPSvgExporter}'s
35
+ * SVG-rendering pipeline and rasterises the result client-side via `OffscreenCanvas`.
36
+ * Adopters that need server-side rendering replace this binding with their own strategy.
37
+ */
38
+ let DefaultPngDiagramExporter = class DefaultPngDiagramExporter {
39
+ constructor() {
40
+ this.format = 'png';
41
+ this.mimeType = 'image/png';
42
+ this.encoding = 'base64';
43
+ }
44
+ async export(root, options = {}, cause) {
45
+ var _a;
46
+ if (typeof document === 'undefined' || typeof OffscreenCanvas === 'undefined') {
47
+ throw new Error('PNG export failed: requires a DOM environment with OffscreenCanvas support');
48
+ }
49
+ const svgString = this.svgExporter.exportToString(root, options, cause);
50
+ const { width, height } = this.computeDimensions(svgString, options);
51
+ // Pin the SVG root to the target raster size BEFORE loading into `<img>` so the browser
52
+ // rasterises the vector content at full resolution.
53
+ const sizedSvg = this.applyRasterSize(svgString, width, height);
54
+ const blob = await this.rasterise(sizedSvg, width, height, (_a = options.background) !== null && _a !== void 0 ? _a : DEFAULT_PNG_BACKGROUND);
55
+ return this.blobToBase64(blob);
56
+ }
57
+ /**
58
+ * Rewrite the root `<svg>` tag so its rendered size matches the target raster dimensions.
59
+ * Replaces `width`/`height` attributes and strips conflicting `style` declarations
60
+ * (the SVG exporter emits `width: …px !important` on the inline style for viewer-friendly
61
+ * display, which would otherwise win over the attributes). The existing `viewBox`
62
+ * preserves the vector coordinate system so the content scales without distortion.
63
+ */
64
+ applyRasterSize(svgString, width, height) {
65
+ return svgString.replace(/<svg\b([^>]*)>/, (_, attrs) => {
66
+ const cleaned = attrs
67
+ .replace(/\swidth="[^"]*"/, '')
68
+ .replace(/\sheight="[^"]*"/, '')
69
+ .replace(/style="([^"]*)"/, (_match, styleBody) => {
70
+ const stripped = styleBody
71
+ .replace(/(?:^|;)\s*width\s*:[^;]*/gi, '')
72
+ .replace(/(?:^|;)\s*height\s*:[^;]*/gi, '')
73
+ .replace(/^\s*;+/, '')
74
+ .trim();
75
+ return stripped ? `style="${stripped}"` : '';
76
+ });
77
+ return `<svg${cleaned} width="${width}" height="${height}">`;
78
+ });
79
+ }
80
+ computeDimensions(svgString, options) {
81
+ var _a;
82
+ const requestedWidth = (_a = options.width) !== null && _a !== void 0 ? _a : DEFAULT_PNG_WIDTH;
83
+ const requestedHeight = options.height;
84
+ if (requestedHeight !== undefined) {
85
+ return { width: requestedWidth, height: requestedHeight };
86
+ }
87
+ // Read the aspect from the SVG attributes directly to avoid a redundant bitmap decode.
88
+ const aspect = this.parseAspectRatio(svgString);
89
+ return { width: requestedWidth, height: requestedWidth / aspect };
90
+ }
91
+ /**
92
+ * Read the aspect ratio from the root `<svg>` tag's `viewBox`, falling back to the
93
+ * `width`/`height` attributes. GLSP-emitted SVGs always carry a `viewBox` (set by the
94
+ * underlying sprotty exporter), so the fallback is a defensive safeguard.
95
+ */
96
+ parseAspectRatio(svgString) {
97
+ var _a;
98
+ const root = svgString.match(/<svg\b([^>]*)>/);
99
+ const attrs = (_a = root === null || root === void 0 ? void 0 : root[1]) !== null && _a !== void 0 ? _a : '';
100
+ const viewBox = attrs.match(/viewBox\s*=\s*"\s*[\d.eE+-]+\s+[\d.eE+-]+\s+([\d.eE+-]+)\s+([\d.eE+-]+)\s*"/);
101
+ if (viewBox) {
102
+ return parseFloat(viewBox[1]) / parseFloat(viewBox[2]);
103
+ }
104
+ const widthAttr = attrs.match(/\swidth\s*=\s*"([\d.eE+-]+)/);
105
+ const heightAttr = attrs.match(/\sheight\s*=\s*"([\d.eE+-]+)/);
106
+ if (widthAttr && heightAttr) {
107
+ return parseFloat(widthAttr[1]) / parseFloat(heightAttr[1]);
108
+ }
109
+ throw new Error('PNG export failed: SVG missing viewBox/width/height — cannot determine aspect ratio');
110
+ }
111
+ async rasterise(svgString, width, height, background) {
112
+ const url = URL.createObjectURL(new Blob([svgString], { type: 'image/svg+xml;charset=utf-8' }));
113
+ try {
114
+ const bitmap = await this.bitmapFromSvgUrl(url);
115
+ const offscreen = new OffscreenCanvas(width, height);
116
+ const ctx = offscreen.getContext('2d');
117
+ if (!ctx) {
118
+ throw new Error('PNG export failed: 2D context unavailable on OffscreenCanvas');
119
+ }
120
+ ctx.fillStyle = background;
121
+ ctx.fillRect(0, 0, width, height);
122
+ ctx.drawImage(bitmap, 0, 0, width, height);
123
+ return offscreen.convertToBlob({ type: 'image/png' });
124
+ }
125
+ finally {
126
+ URL.revokeObjectURL(url);
127
+ }
128
+ }
129
+ bitmapFromSvgUrl(url) {
130
+ return new Promise((resolve, reject) => {
131
+ const img = new Image();
132
+ img.onload = () => createImageBitmap(img).then(resolve, reject);
133
+ img.onerror = () => reject(new Error('PNG export failed: SVG could not be loaded into Image'));
134
+ img.src = url;
135
+ });
136
+ }
137
+ blobToBase64(blob) {
138
+ return new Promise((resolve, reject) => {
139
+ const reader = new FileReader();
140
+ reader.onloadend = () => {
141
+ const result = reader.result;
142
+ resolve(result.replace(/^data:[^;]+;base64,/, ''));
143
+ };
144
+ reader.onerror = () => { var _a; return reject((_a = reader.error) !== null && _a !== void 0 ? _a : new Error('PNG export failed: FileReader error')); };
145
+ reader.readAsDataURL(blob);
146
+ });
147
+ }
148
+ };
149
+ exports.DefaultPngDiagramExporter = DefaultPngDiagramExporter;
150
+ __decorate([
151
+ (0, inversify_1.inject)(glsp_svg_exporter_1.GLSPSvgExporter),
152
+ __metadata("design:type", glsp_svg_exporter_1.GLSPSvgExporter)
153
+ ], DefaultPngDiagramExporter.prototype, "svgExporter", void 0);
154
+ exports.DefaultPngDiagramExporter = DefaultPngDiagramExporter = __decorate([
155
+ (0, inversify_1.injectable)()
156
+ ], DefaultPngDiagramExporter);
157
+ //# sourceMappingURL=default-png-diagram-exporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-png-diagram-exporter.js","sourceRoot":"","sources":["../../../src/features/export/default-png-diagram-exporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2026 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, ExportFormat, ExportMimeType, GModelRoot, SvgExportOptions } from '@eclipse-glsp/sprotty';
17
+ import { DiagramExporter } from './diagram-exporter';
18
+ import { GLSPSvgExporter } from './glsp-svg-exporter';
19
+ /**
20
+ * Default SVG strategy for the unified export registry. Wraps {@link GLSPSvgExporter} —
21
+ * the same exporter that powers the legacy `RequestExportSvgAction` path — so adopter
22
+ * overrides on the SVG renderer (extending {@link GLSPSvgExporter}) participate in unified
23
+ * exports for free.
24
+ */
25
+ export declare class DefaultSvgDiagramExporter implements DiagramExporter<SvgExportOptions> {
26
+ readonly format: ExportFormat;
27
+ readonly mimeType: ExportMimeType;
28
+ readonly encoding: "text";
29
+ protected svgExporter: GLSPSvgExporter;
30
+ export(root: GModelRoot, options?: SvgExportOptions, cause?: Action): Promise<string>;
31
+ }
32
+ //# sourceMappingURL=default-svg-diagram-exporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-svg-diagram-exporter.d.ts","sourceRoot":"","sources":["../../../src/features/export/default-svg-diagram-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE3G,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;;;;GAKG;AACH,qBACa,yBAA0B,YAAW,eAAe,CAAC,gBAAgB,CAAC;IAC/E,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAS;IACtC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAmB;IACpD,QAAQ,CAAC,QAAQ,EAAG,MAAM,CAAU;IAEX,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC;IAE1D,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,gBAAqB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAGlG"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2026 EclipseSource and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.DefaultSvgDiagramExporter = void 0;
28
+ const inversify_1 = require("inversify");
29
+ const glsp_svg_exporter_1 = require("./glsp-svg-exporter");
30
+ /**
31
+ * Default SVG strategy for the unified export registry. Wraps {@link GLSPSvgExporter} —
32
+ * the same exporter that powers the legacy `RequestExportSvgAction` path — so adopter
33
+ * overrides on the SVG renderer (extending {@link GLSPSvgExporter}) participate in unified
34
+ * exports for free.
35
+ */
36
+ let DefaultSvgDiagramExporter = class DefaultSvgDiagramExporter {
37
+ constructor() {
38
+ this.format = 'svg';
39
+ this.mimeType = 'image/svg+xml';
40
+ this.encoding = 'text';
41
+ }
42
+ async export(root, options = {}, cause) {
43
+ return this.svgExporter.exportToString(root, options, cause);
44
+ }
45
+ };
46
+ exports.DefaultSvgDiagramExporter = DefaultSvgDiagramExporter;
47
+ __decorate([
48
+ (0, inversify_1.inject)(glsp_svg_exporter_1.GLSPSvgExporter),
49
+ __metadata("design:type", glsp_svg_exporter_1.GLSPSvgExporter)
50
+ ], DefaultSvgDiagramExporter.prototype, "svgExporter", void 0);
51
+ exports.DefaultSvgDiagramExporter = DefaultSvgDiagramExporter = __decorate([
52
+ (0, inversify_1.injectable)()
53
+ ], DefaultSvgDiagramExporter);
54
+ //# sourceMappingURL=default-svg-diagram-exporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-svg-diagram-exporter.js","sourceRoot":"","sources":["../../../src/features/export/default-svg-diagram-exporter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAGlF,yCAA+C;AAE/C,2DAAsD;AAEtD;;;;;GAKG;AAEI,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAA/B;QACM,WAAM,GAAiB,KAAK,CAAC;QAC7B,aAAQ,GAAmB,eAAe,CAAC;QAC3C,aAAQ,GAAG,MAAe,CAAC;IAOxC,CAAC;IAHG,KAAK,CAAC,MAAM,CAAC,IAAgB,EAAE,UAA4B,EAAE,EAAE,KAAc;QACzE,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;CACJ,CAAA;AAVY,8DAAyB;AAKC;IAAlC,IAAA,kBAAM,EAAC,mCAAe,CAAC;8BAAwB,mCAAe;8DAAC;oCALvD,yBAAyB;IADrC,IAAA,sBAAU,GAAE;GACA,yBAAyB,CAUrC"}
@@ -0,0 +1,33 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2026 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, GModelElement, GModelRoot, IActionDispatcher, IVNodePostprocessor, RequestExportAction } from '@eclipse-glsp/sprotty';
17
+ import { VNode } from 'snabbdom';
18
+ import { DiagramExporter } from './diagram-exporter';
19
+ /**
20
+ * Postprocessor for the unified {@link RequestExportAction} flow. Captures the rendered model
21
+ * root from the `decorate` pass, then on `postUpdate` looks up the matching
22
+ * {@link DiagramExporter} by `format` and dispatches an {@link ExportResultAction} with the
23
+ * produced bytes.
24
+ */
25
+ export declare class DiagramExportPostprocessor implements IVNodePostprocessor {
26
+ protected exporters: DiagramExporter[];
27
+ protected actionDispatcher: IActionDispatcher;
28
+ protected root: GModelRoot;
29
+ decorate(vnode: VNode, element: GModelElement): VNode;
30
+ postUpdate(cause?: Action): void;
31
+ protected runExport(request: RequestExportAction): Promise<void>;
32
+ }
33
+ //# sourceMappingURL=diagram-export-postprocessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram-export-postprocessor.d.ts","sourceRoot":"","sources":["../../../src/features/export/diagram-export-postprocessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EAEN,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EAEnB,mBAAmB,EAEtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;GAKG;AACH,qBACa,0BAA2B,YAAW,mBAAmB;IAC7B,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC3C,SAAS,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAE/E,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC;IAE3B,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;IAOrD,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;cAWhB,SAAS,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAmBzE"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2026 EclipseSource and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.DiagramExportPostprocessor = void 0;
28
+ const sprotty_1 = require("@eclipse-glsp/sprotty");
29
+ const inversify_1 = require("inversify");
30
+ /**
31
+ * Postprocessor for the unified {@link RequestExportAction} flow. Captures the rendered model
32
+ * root from the `decorate` pass, then on `postUpdate` looks up the matching
33
+ * {@link DiagramExporter} by `format` and dispatches an {@link ExportResultAction} with the
34
+ * produced bytes.
35
+ */
36
+ let DiagramExportPostprocessor = class DiagramExportPostprocessor {
37
+ decorate(vnode, element) {
38
+ if (element instanceof sprotty_1.GModelRoot) {
39
+ this.root = element;
40
+ }
41
+ return vnode;
42
+ }
43
+ postUpdate(cause) {
44
+ if (!this.root || !sprotty_1.RequestExportAction.is(cause)) {
45
+ return;
46
+ }
47
+ const request = cause;
48
+ this.runExport(request).catch(err => {
49
+ const message = err instanceof Error ? err.message : String(err);
50
+ this.actionDispatcher.dispatch(sprotty_1.RejectAction.create(message, { responseId: request.requestId }));
51
+ });
52
+ }
53
+ async runExport(request) {
54
+ var _a;
55
+ // First-bound-wins on duplicate formats: an adopter who registers a custom
56
+ // PNG exporter without `unbind`-ing the default will pick up the default. To
57
+ // override, rebind via `binding.rebind(DefaultPngDiagramExporter, MyPngExporter)`
58
+ // in your `DiagramExportModule` extension.
59
+ const exporter = this.exporters.find(candidate => candidate.format === request.format);
60
+ if (!exporter) {
61
+ throw new Error(`No DiagramExporter registered for format '${request.format}'`);
62
+ }
63
+ const data = await exporter.export(this.root, (_a = request.formatOptions) !== null && _a !== void 0 ? _a : {}, request);
64
+ this.actionDispatcher.dispatch(sprotty_1.ExportResultAction.create(exporter.format, data, {
65
+ mimeType: exporter.mimeType,
66
+ encoding: exporter.encoding,
67
+ responseId: request.requestId,
68
+ formatOptions: request.formatOptions
69
+ }));
70
+ }
71
+ };
72
+ exports.DiagramExportPostprocessor = DiagramExportPostprocessor;
73
+ __decorate([
74
+ (0, inversify_1.multiInject)(sprotty_1.TYPES.IDiagramExporter),
75
+ __metadata("design:type", Array)
76
+ ], DiagramExportPostprocessor.prototype, "exporters", void 0);
77
+ __decorate([
78
+ (0, inversify_1.inject)(sprotty_1.TYPES.IActionDispatcher),
79
+ __metadata("design:type", Object)
80
+ ], DiagramExportPostprocessor.prototype, "actionDispatcher", void 0);
81
+ exports.DiagramExportPostprocessor = DiagramExportPostprocessor = __decorate([
82
+ (0, inversify_1.injectable)()
83
+ ], DiagramExportPostprocessor);
84
+ //# sourceMappingURL=diagram-export-postprocessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram-export-postprocessor.js","sourceRoot":"","sources":["../../../src/features/export/diagram-export-postprocessor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,mDAU+B;AAC/B,yCAA4D;AAI5D;;;;;GAKG;AAEI,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAMnC,QAAQ,CAAC,KAAY,EAAE,OAAsB;QACzC,IAAI,OAAO,YAAY,oBAAU,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACxB,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,UAAU,CAAC,KAAc;QACrB,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,6BAAmB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO;QACX,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAChC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,sBAAY,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACpG,CAAC,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,OAA4B;;QAClD,2EAA2E;QAC3E,6EAA6E;QAC7E,kFAAkF;QAClF,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QACvF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,6CAA6C,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAA,OAAO,CAAC,aAAa,mCAAI,EAAE,EAAE,OAAO,CAAC,CAAC;QACpF,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAC1B,4BAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE;YAC7C,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,UAAU,EAAE,OAAO,CAAC,SAAS;YAC7B,aAAa,EAAE,OAAO,CAAC,aAAa;SACvC,CAAC,CACL,CAAC;IACN,CAAC;CACJ,CAAA;AA3CY,gEAA0B;AACY;IAA9C,IAAA,uBAAW,EAAC,eAAK,CAAC,gBAAgB,CAAC;;6DAAwC;AACjC;IAA1C,IAAA,kBAAM,EAAC,eAAK,CAAC,iBAAiB,CAAC;;oEAA+C;qCAFtE,0BAA0B;IADtC,IAAA,sBAAU,GAAE;GACA,0BAA0B,CA2CtC"}