sequential-workflow-designer-angular 0.14.0 → 0.14.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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Sequential Workflow Designer for Angular
4
4
 
5
- [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fb4rtaz%2Fsequential-workflow-designer%2Fbadge%3Fref%3Dmain&style=flat-square)](https://actions-badge.atrox.dev/b4rtaz/sequential-workflow-designer/goto?ref=main) [![License: MIT](https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square)](/LICENSE) [![View this project on NPM](https://img.shields.io/npm/v/sequential-workflow-designer-angular.svg?style=flat-square)](https://npmjs.org/package/sequential-workflow-designer-angular)
5
+ [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fb4rtaz%2Fsequential-workflow-designer%2Fbadge%3Fref%3Dmain&style=flat-square)](https://actions-badge.atrox.dev/b4rtaz/sequential-workflow-designer/goto?ref=main) [![License: MIT](https://img.shields.io/badge/license-MIT-green?style=flat-square)](/LICENSE) [![View this project on NPM](https://img.shields.io/npm/v/sequential-workflow-designer-angular.svg?style=flat-square)](https://npmjs.org/package/sequential-workflow-designer-angular)
6
6
 
7
7
  Angular wrapper for the [Sequential Workflow Designer](https://github.com/nocode-js/sequential-workflow-designer) component.
8
8
 
@@ -151,6 +151,7 @@ At the end attach the designer:
151
151
  [stepsConfiguration]="stepsConfiguration"
152
152
  [validatorConfiguration]="validatorConfiguration"
153
153
  [controlBar]="true"
154
+ [contextMenu]="true"
154
155
  [areEditorsHidden]="false"
155
156
  [globalEditor]="globalEditor"
156
157
  [stepEditor]="stepEditor"
@@ -1,5 +1,5 @@
1
1
  import { AfterViewInit, ApplicationRef, EventEmitter, NgZone, OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
2
- import { Definition, Designer, DesignerExtension, GlobalEditorContext, Step, StepEditorContext, StepsConfiguration, ToolboxConfiguration, ValidatorConfiguration } from 'sequential-workflow-designer';
2
+ import { Definition, Designer, DesignerExtension, GlobalEditorContext, GlobalEditorProvider, Step, StepEditorContext, StepEditorProvider, StepsConfiguration, ToolboxConfiguration, ValidatorConfiguration } from 'sequential-workflow-designer';
3
3
  import * as i0 from "@angular/core";
4
4
  export interface GlobalEditorWrapper {
5
5
  definition: Definition;
@@ -24,10 +24,11 @@ export declare class DesignerComponent implements AfterViewInit, OnChanges, OnDe
24
24
  validatorConfiguration?: ValidatorConfiguration;
25
25
  toolboxConfiguration?: AngularToolboxConfiguration | false;
26
26
  controlBar?: boolean;
27
+ contextMenu?: boolean;
27
28
  extensions?: DesignerExtension[];
28
29
  areEditorsHidden?: boolean;
29
- globalEditor?: TemplateRef<unknown>;
30
- stepEditor?: TemplateRef<unknown>;
30
+ globalEditor?: TemplateRef<unknown> | GlobalEditorProvider;
31
+ stepEditor?: TemplateRef<unknown> | StepEditorProvider;
31
32
  readonly onReady: EventEmitter<Designer<Definition>>;
32
33
  readonly onDefinitionChanged: EventEmitter<Definition>;
33
34
  constructor(ngZone: NgZone, applicationRef: ApplicationRef);
@@ -39,5 +40,5 @@ export declare class DesignerComponent implements AfterViewInit, OnChanges, OnDe
39
40
  private readonly stepEditorProvider;
40
41
  private editorProvider;
41
42
  static ɵfac: i0.ɵɵFactoryDeclaration<DesignerComponent, never>;
42
- static ɵcmp: i0.ɵɵComponentDeclaration<DesignerComponent, "sqd-designer", never, { "theme": "theme"; "undoStackSize": "undoStackSize"; "definition": "definition"; "stepsConfiguration": "stepsConfiguration"; "validatorConfiguration": "validatorConfiguration"; "toolboxConfiguration": "toolboxConfiguration"; "controlBar": "controlBar"; "extensions": "extensions"; "areEditorsHidden": "areEditorsHidden"; "globalEditor": "globalEditor"; "stepEditor": "stepEditor"; }, { "onReady": "onReady"; "onDefinitionChanged": "onDefinitionChanged"; }, never, never>;
43
+ static ɵcmp: i0.ɵɵComponentDeclaration<DesignerComponent, "sqd-designer", never, { "theme": "theme"; "undoStackSize": "undoStackSize"; "definition": "definition"; "stepsConfiguration": "stepsConfiguration"; "validatorConfiguration": "validatorConfiguration"; "toolboxConfiguration": "toolboxConfiguration"; "controlBar": "controlBar"; "contextMenu": "contextMenu"; "extensions": "extensions"; "areEditorsHidden": "areEditorsHidden"; "globalEditor": "globalEditor"; "stepEditor": "stepEditor"; }, { "onReady": "onReady"; "onDefinitionChanged": "onDefinitionChanged"; }, never, never>;
43
44
  }
@@ -11,6 +11,9 @@ export class DesignerComponent {
11
11
  if (!this.globalEditor) {
12
12
  throw new Error('Input "globalEditor" is not set');
13
13
  }
14
+ if (typeof this.globalEditor === 'function') {
15
+ return this.globalEditor(definition, context);
16
+ }
14
17
  return this.editorProvider(this.globalEditor, {
15
18
  definition,
16
19
  context
@@ -20,6 +23,9 @@ export class DesignerComponent {
20
23
  if (!this.stepEditor) {
21
24
  throw new Error('Input "stepEditor" is not set');
22
25
  }
26
+ if (typeof this.stepEditor === 'function') {
27
+ return this.stepEditor(step, context, definition);
28
+ }
23
29
  return this.editorProvider(this.stepEditor, {
24
30
  step,
25
31
  definition,
@@ -81,6 +87,7 @@ export class DesignerComponent {
81
87
  validator: this.validatorConfiguration,
82
88
  toolbox: this.toolboxConfiguration,
83
89
  controlBar: this.controlBar,
90
+ contextMenu: this.contextMenu,
84
91
  extensions: this.extensions
85
92
  });
86
93
  designer.onReady.subscribe(() => {
@@ -117,7 +124,7 @@ export class DesignerComponent {
117
124
  }
118
125
  }
119
126
  DesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, deps: [{ token: i0.NgZone }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Component });
120
- DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
127
+ DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", contextMenu: "contextMenu", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
121
128
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, decorators: [{
122
129
  type: Component,
123
130
  args: [{ selector: 'sqd-designer', template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" }]
@@ -145,6 +152,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
145
152
  }], controlBar: [{
146
153
  type: Input,
147
154
  args: ['controlBar']
155
+ }], contextMenu: [{
156
+ type: Input,
157
+ args: ['contextMenu']
148
158
  }], extensions: [{
149
159
  type: Input,
150
160
  args: ['extensions']
@@ -162,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
162
172
  }], onDefinitionChanged: [{
163
173
  type: Output
164
174
  }] } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vZGVzaWduZXIvc3JjL2Rlc2lnbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uL2Rlc2lnbmVyL3NyYy9kZXNpZ25lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR04sU0FBUyxFQUdULFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUdOLFNBQVMsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRU4sUUFBUSxFQVFSLE1BQU0sOEJBQThCLENBQUM7O0FBbUJ0QyxNQUFNLE9BQU8saUJBQWlCO0lBbUM3QixZQUFvQyxNQUFjLEVBQW1CLGNBQThCO1FBQS9ELFdBQU0sR0FBTixNQUFNLENBQVE7UUFBbUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBSm5GLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBRXZDLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFnRnBELHlCQUFvQixHQUFHLENBQUMsVUFBc0IsRUFBRSxPQUE0QixFQUFFLEVBQUU7WUFDaEcsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQzthQUNuRDtZQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBc0IsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDbEUsVUFBVTtnQkFDVixPQUFPO2FBQ1AsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBRWUsdUJBQWtCLEdBQUcsQ0FBQyxJQUFVLEVBQUUsT0FBMEIsRUFBRSxVQUFzQixFQUFFLEVBQUU7WUFDeEcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQzthQUNqRDtZQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMs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QVMsQ0FBQyxTQUFTLEdBQUcsb0JBQW9CLENBQUM7WUFDM0MsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFO2dCQUNuRCxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzVCO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOzsrR0ExSlcsaUJBQWlCO21HQUFqQixpQkFBaUIsa29CQzdDOUIsMkRBQ0E7NEZENENhLGlCQUFpQjtrQkFKN0IsU0FBUzsrQkFDQyxjQUFjOzBIQVFoQixXQUFXO3NCQURsQixTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSW5DLEtBQUs7c0JBRFgsS0FBSzt1QkFBQyxPQUFPO2dCQUdQLGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsZUFBZTtnQkFHZixVQUFVO3NCQURoQixLQUFLO3VCQUFDLFlBQVk7Z0JBR1osa0JBQWtCO3NCQUR4QixLQUFLO3VCQUFDLG9CQUFvQjtnQkFHcEIsc0JBQXNCO3NCQUQ1QixLQUFLO3VCQUFDLHdCQUF3QjtnQkFHeEIsb0JBQW9CO3NCQUQxQixLQUFLO3VCQUFDLHNCQUFzQjtnQkFHdEIsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyxZQUFZO2dCQUdaLFVBQVU7c0JBRGhCLEtBQUs7dUJBQUMsWUFBWTtnQkFHWixnQkFBZ0I7c0JBRHRCLEtBQUs7dUJBQUMsa0JBQWtCO2dCQUdsQixZQUFZO3NCQURsQixLQUFLO3VCQUFDLGNBQWM7Z0JBR2QsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyxZQUFZO2dCQUlILE9BQU87c0JBRHRCLE1BQU07Z0JBR1MsbUJBQW1CO3NCQURsQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0QWZ0ZXJWaWV3SW5pdCxcblx0QXBwbGljYXRpb25SZWYsXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0RW1iZWRkZWRWaWV3UmVmLFxuXHRFdmVudEVtaXR0ZXIsXG5cdElucHV0LFxuXHROZ1pvbmUsXG5cdE9uQ2hhbmdlcyxcblx0T25EZXN0cm95LFxuXHRPdXRwdXQsXG5cdFNpbXBsZUNoYW5nZXMsXG5cdFRlbXBsYXRlUmVmLFxuXHRWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHREZWZpbml0aW9uLFxuXHREZXNpZ25lcixcblx0RGVzaWduZXJFeHRlbnNpb24sXG5cdEdsb2JhbEVkaXRvckNvbnRleHQsXG5cdFN0ZXAsXG5cdFN0ZXBFZGl0b3JDb250ZXh0LFxuXHRTdGVwc0NvbmZpZ3VyYXRpb24sXG5cdFRvb2xib3hDb25maWd1cmF0aW9uLFxuXHRWYWxpZGF0b3JDb25maWd1cmF0aW9uXG59IGZyb20gJ3NlcXVlbnRpYWwtd29ya2Zsb3ctZGVzaWduZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdsb2JhbEVkaXRvcldyYXBwZXIge1xuXHRkZWZpbml0aW9uOiBEZWZpbml0aW9uO1xuXHRjb250ZXh0OiBHbG9iYWxFZGl0b3JDb250ZXh0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXBFZGl0b3JXcmFwcGVyIHtcblx0c3RlcDogU3RlcDtcblx0ZGVmaW5pdGlvbjogRGVmaW5pdGlvbjtcblx0Y29udGV4dDogU3RlcEVkaXRvckNvbnRleHQ7XG59XG5cbmV4cG9ydCB0eXBlIEFuZ3VsYXJUb29sYm94Q29uZmlndXJhdGlvbiA9IE9taXQ8VG9vbGJveENvbmZpZ3VyYXRpb24sICdpc0NvbGxhcHNlZCc+O1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdzcWQtZGVzaWduZXInLFxuXHR0ZW1wbGF0ZVVybDogJy4vZGVzaWduZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIERlc2lnbmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXHRwcml2YXRlIGRlc2lnbmVyPzogRGVzaWduZXI7XG5cdHByaXZhdGUgbGFzdEVtYmVkZGVkVmlldz86IEVtYmVkZGVkVmlld1JlZjx1bmtub3duPjtcblxuXHRAVmlld0NoaWxkKCdwbGFjZWhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgcGxhY2Vob2xkZXI/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuXHRASW5wdXQoJ3RoZW1lJylcblx0cHVibGljIHRoZW1lPzogc3RyaW5nO1xuXHRASW5wdXQoJ3VuZG9TdGFja1NpemUnKVxuXHRwdWJsaWMgdW5kb1N0YWNrU2l6ZT86IG51bWJlcjtcblx0QElucHV0KCdkZWZpbml0aW9uJylcblx0cHVibGljIGRlZmluaXRpb24/OiBEZWZpbml0aW9uO1xuXHRASW5wdXQoJ3N0ZXBzQ29uZmlndXJhdGlvbicpXG5cdHB1YmxpYyBzdGVwc0NvbmZpZ3VyYXRpb24/OiBTdGVwc0NvbmZpZ3VyYXRpb247XG5cdEBJbnB1dCgndmFsaWRhdG9yQ29uZmlndXJhdGlvbicpXG5cdHB1YmxpYyB2YWxpZGF0b3JDb25maWd1cmF0aW9uPzogVmFsaWRhdG9yQ29uZmlndXJhdGlvbjtcblx0QElucHV0KCd0b29sYm94Q29uZmlndXJhdGlvbicpXG5cdHB1YmxpYyB0b29sYm94Q29uZmlndXJhdGlvbj86IEFuZ3VsYXJUb29sYm94Q29uZmlndXJhdGlvbiB8IGZhbHNlO1xuXHRASW5wdXQoJ2NvbnRyb2xCYXInKVxuXHRwdWJsaWMgY29udHJvbEJhcj86IGJvb2xlYW47XG5cdEBJbnB1dCgnZXh0ZW5zaW9ucycpXG5cdHB1YmxpYyBleHRlbnNpb25zPzogRGVzaWduZXJFeHRlbnNpb25bXTtcblx0QElucHV0KCdhcmVFZGl0b3JzSGlkZGVuJylcblx0cHVibGljIGFyZUVkaXRvcnNIaWRkZW4/OiBib29sZWFuO1xuXHRASW5wdXQoJ2dsb2JhbEVkaXRvcicpXG5cdHB1YmxpYyBnbG9iYWxFZGl0b3I/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblx0QElucHV0KCdzdGVwRWRpdG9yJylcblx0cHVibGljIHN0ZXBFZGl0b3I/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuXHRAT3V0cHV0KClcblx0cHVibGljIHJlYWRvbmx5IG9uUmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPERlc2lnbmVyPigpO1xuXHRAT3V0cHV0KClcblx0cHVibGljIHJlYWRvbmx5IG9uRGVmaW5pdGlvbkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPERlZmluaXRpb24+KCk7XG5cblx0cHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgYXBwbGljYXRpb25SZWY6IEFwcGxpY2F0aW9uUmVmKSB7fVxuXG5cdHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG5cdFx0dGhpcy5hdHRhY2goKTtcblx0fVxuXG5cdHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cdFx0Y29uc3QgaXNGaXJzdENoYW5nZSA9IE9iamVjdC5rZXlzKGNoYW5nZXMpLmV2ZXJ5KGtleSA9PiBjaGFuZ2VzW2tleV0uZmlyc3RDaGFuZ2UpO1xuXHRcdGlmIChpc0ZpcnN0Q2hhbmdlKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGlmICh0aGlzLmRlc2lnbmVyICYmIGNoYW5nZXNbJ2RlZmluaXRpb24nXSAmJiBjaGFuZ2VzWydkZWZpbml0aW9uJ10uY3VycmVudFZhbHVlID09PSB0aGlzLmRlc2lnbmVyLmdldERlZmluaXRpb24oKSkge1xuXHRcdFx0Ly8gVGhlIHNhbWUgcmVmZXJlbmNlID0gbm8gY2hhbmdlLlxuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdHRoaXMuYXR0YWNoKCk7XG5cdH1cblxuXHRwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMubGFzdEVtYmVkZGVkVmlldykge1xuXHRcdFx0dGhpcy5hcHBsaWNhdGlvblJlZi5kZXRhY2hWaWV3KHRoaXMubGFzdEVtYmVkZGVkVmlldyk7XG5cdFx0XHR0aGlzLmxhc3RFbWJlZGRlZFZpZXcuZGVzdHJveSgpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgYXR0YWNoKCkge1xuXHRcdHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcblx0XHRcdGlmICghdGhpcy5wbGFjZWhvbGRlcikge1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cdFx0XHRpZiAoIXRoaXMuZGVmaW5pdGlvbikge1xuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0lucHV0IFwiZGVmaW5pdGlvblwiIGlzIG5vdCBzZXQnKTtcblx0XHRcdH1cblx0XHRcdGlmICghdGhpcy5zdGVwc0NvbmZpZ3VyYXRpb24pIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnB1dCBcInN0ZXBzQ29uZmlndXJhdGlvblwiIGlzIG5vdCBzZXQnKTtcblx0XHRcdH1cblx0XHRcdGlmICh0aGlzLnRvb2xib3hDb25maWd1cmF0aW9uID09PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnB1dCBcInRvb2xib3hDb25maWd1cmF0aW9uXCIgaXMgbm90IHNldCcpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKHRoaXMuY29udHJvbEJhciA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcignSW5wdXQgXCJjb250cm9sQmFyXCIgaXMgbm90IHNldCcpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAodGhpcy5kZXNpZ25lcikge1xuXHRcdFx0XHR0aGlzLmRlc2lnbmVyLmRlc3Ryb3koKTtcblx0XHRcdFx0dGhpcy5kZXNpZ25lciA9IHVuZGVmaW5lZDtcblx0XHRcdH1cblxuXHRcdFx0Y29uc3QgZGVzaWduZXIgPSBEZXNpZ25lci5jcmVhdGUodGhpcy5wbGFjZWhvbGRlci5uYXRpdmVFbGVtZW50LCB0aGlzLmRlZmluaXRpb24sIHtcblx0XHRcdFx0dGhlbWU6IHRoaXMudGhlbWUsXG5cdFx0XHRcdHVuZG9TdGFja1NpemU6IHRoaXMudW5kb1N0YWNrU2l6ZSxcblx0XHRcdFx0ZWRpdG9yczogdGhpcy5hcmVFZGl0b3JzSGlkZGVuXG5cdFx0XHRcdFx0PyBmYWxzZVxuXHRcdFx0XHRcdDoge1xuXHRcdFx0XHRcdFx0XHRnbG9iYWxFZGl0b3JQcm92aWRlcjogdGhpcy5nbG9iYWxFZGl0b3JQcm92aWRlcixcblx0XHRcdFx0XHRcdFx0c3RlcEVkaXRvclByb3ZpZGVyOiB0aGlzLnN0ZXBFZGl0b3JQcm92aWRlclxuXHRcdFx0XHRcdCAgfSxcblx0XHRcdFx0c3RlcHM6IHRoaXMuc3RlcHNDb25maWd1cmF0aW9uLFxuXHRcdFx0XHR2YWxpZGF0b3I6IHRoaXMudmFsaWRhdG9yQ29uZmlndXJhdGlvbixcblx0XHRcdFx0dG9vbGJveDogdGhpcy50b29sYm94Q29uZmlndXJhdGlvbixcblx0XHRcdFx0Y29udHJvbEJhcjogdGhpcy5jb250cm9sQmFyLFxuXHRcdFx0XHRleHRlbnNpb25zOiB0aGlzLmV4dGVuc2lvbnNcblx0XHRcdH0pO1xuXHRcdFx0ZGVzaWduZXIub25SZWFkeS5zdWJzY3JpYmUoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMub25SZWFkeS5lbWl0KGRlc2lnbmVyKTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9KTtcblx0XHRcdGRlc2lnbmVyLm9uRGVmaW5pdGlvbkNoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdFx0dGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLm9uRGVmaW5pdGlvbkNoYW5nZWQuZW1pdChkZXNpZ25lci5nZXREZWZpbml0aW9uKCkpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH0pO1xuXHRcdFx0dGhpcy5kZXNpZ25lciA9IGRlc2lnbmVyO1xuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSByZWFkb25seSBnbG9iYWxFZGl0b3JQcm92aWRlciA9IChkZWZpbml0aW9uOiBEZWZpbml0aW9uLCBjb250ZXh0OiBHbG9iYWxFZGl0b3JDb250ZXh0KSA9PiB7XG5cdFx0aWYgKCF0aGlzLmdsb2JhbEVkaXRvcikge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnB1dCBcImdsb2JhbEVkaXRvclwiIGlzIG5vdCBzZXQnKTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yUHJvdmlkZXI8R2xvYmFsRWRpdG9yV3JhcHBlcj4odGhpcy5nbG9iYWxFZGl0b3IsIHtcblx0XHRcdGRlZmluaXRpb24sXG5cdFx0XHRjb250ZXh0XG5cdFx0fSk7XG5cdH07XG5cblx0cHJpdmF0ZSByZWFkb25seSBzdGVwRWRpdG9yUHJvdmlkZXIgPSAoc3RlcDogU3RlcCwgY29udGV4dDogU3RlcEVkaXRvckNvbnRleHQsIGRlZmluaXRpb246IERlZmluaXRpb24pID0+IHtcblx0XHRpZiAoIXRoaXMuc3RlcEVkaXRvcikge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnB1dCBcInN0ZXBFZGl0b3JcIiBpcyBub3Qgc2V0Jyk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLmVkaXRvclByb3ZpZGVyPFN0ZXBFZGl0b3JXcmFwcGVyPih0aGlzLnN0ZXBFZGl0b3IsIHtcblx0XHRcdHN0ZXAsXG5cdFx0XHRkZWZpbml0aW9uLFxuXHRcdFx0Y29udGV4dFxuXHRcdH0pO1xuXHR9O1xuXG5cdHByaXZhdGUgZWRpdG9yUHJvdmlkZXI8RT4odGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+LCBlZGl0b3I6IEUpIHtcblx0XHRyZXR1cm4gdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcblx0XHRcdGlmICh0aGlzLmxhc3RFbWJlZGRlZFZpZXcpIHtcblx0XHRcdFx0dGhpcy5hcHBsaWNhdGlvblJlZi5kZXRhY2hWaWV3KHRoaXMubGFzdEVtYmVkZGVkVmlldyk7XG5cdFx0XHRcdHRoaXMubGFzdEVtYmVkZGVkVmlldy5kZXN0cm95KCk7XG5cdFx0XHRcdHRoaXMubGFzdEVtYmVkZGVkVmlldyA9IHVuZGVmaW5lZDtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5sYXN0RW1iZWRkZWRWaWV3ID0gdGVtcGxhdGVSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHtcblx0XHRcdFx0JGltcGxpY2l0OiBlZGl0b3Jcblx0XHRcdH0pO1xuXHRcdFx0dGhpcy5hcHBsaWNhdGlvblJlZi5hdHRhY2hWaWV3KHRoaXMubGFzdEVtYmVkZGVkVmlldyk7XG5cblx0XHRcdGNvbnN0IGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXHRcdFx0Y29udGFpbmVyLmNsYXNzTmFtZSA9ICdzcWQtZWRpdG9yLWFuZ3VsYXInO1xuXHRcdFx0Zm9yIChjb25zdCBub2RlIG9mIHRoaXMubGFzdEVtYmVkZGVkVmlldy5yb290Tm9kZXMpIHtcblx0XHRcdFx0Y29udGFpbmVyLmFwcGVuZENoaWxkKG5vZGUpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGNvbnRhaW5lcjtcblx0XHR9KTtcblx0fVxufVxuIiwiPGRpdiAjcGxhY2Vob2xkZXIgY2xhc3M9XCJzcWQtZGVzaWduZXItYW5ndWxhclwiPjwvZGl2PlxuIl19
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vZGVzaWduZXIvc3JjL2Rlc2lnbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uL2Rlc2lnbmVyL3NyYy9kZXNpZ25lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR04sU0FBUyxFQUdULFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUdOLFNBQVMsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRU4sUUFBUSxFQVVSLE1BQU0sOEJBQThCLENBQUM7O0FBbUJ0QyxNQUFNLE9BQU8saUJBQWlCO0lBcUM3QixZQUFvQyxNQUFjLEVBQW1CLGNBQThCO1FBQS9ELFdBQU0sR0FBTixNQUFNLENBQVE7UUFBbUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBSm5GLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBRXZDLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFpRnBELHlCQUFvQixHQUFHLENBQUMsVUFBc0IsRUFBRSxPQUE0QixFQUFFLEVBQUU7WUFDaEcsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQzthQUNuRDtZQUNELElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTtnQkFDNUMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQzthQUM5QztZQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBc0IsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDbEUsVUFBVTtnQkFDVixPQUFPO2FBQ1AsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBRWUsdUJBQWtCLEdBQUcsQ0FBQyxJQUFVLEVBQUUsT0FBMEIsRUFBRSxVQUFzQixFQUFFLEVBQUU7WUFD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O3VCQUFDLFlBQVk7Z0JBR1osZ0JBQWdCO3NCQUR0QixLQUFLO3VCQUFDLGtCQUFrQjtnQkFHbEIsWUFBWTtzQkFEbEIsS0FBSzt1QkFBQyxjQUFjO2dCQUdkLFVBQVU7c0JBRGhCLEtBQUs7dUJBQUMsWUFBWTtnQkFJSCxPQUFPO3NCQUR0QixNQUFNO2dCQUdTLG1CQUFtQjtzQkFEbEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdEFmdGVyVmlld0luaXQsXG5cdEFwcGxpY2F0aW9uUmVmLFxuXHRDb21wb25lbnQsXG5cdEVsZW1lbnRSZWYsXG5cdEVtYmVkZGVkVmlld1JlZixcblx0RXZlbnRFbWl0dGVyLFxuXHRJbnB1dCxcblx0Tmdab25lLFxuXHRPbkNoYW5nZXMsXG5cdE9uRGVzdHJveSxcblx0T3V0cHV0LFxuXHRTaW1wbGVDaGFuZ2VzLFxuXHRUZW1wbGF0ZVJlZixcblx0Vmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0RGVmaW5pdGlvbixcblx0RGVzaWduZXIsXG5cdERlc2lnbmVyRXh0ZW5zaW9uLFxuXHRHbG9iYWxFZGl0b3JDb250ZXh0LFxuXHRHbG9iYWxFZGl0b3JQcm92aWRlcixcblx0U3RlcCxcblx0U3RlcEVkaXRvckNvbnRleHQsXG5cdFN0ZXBFZGl0b3JQcm92aWRlcixcblx0U3RlcHNDb25maWd1cmF0aW9uLFxuXHRUb29sYm94Q29uZmlndXJhdGlvbixcblx0VmFsaWRhdG9yQ29uZmlndXJhdGlvblxufSBmcm9tICdzZXF1ZW50aWFsLXdvcmtmbG93LWRlc2lnbmVyJztcblxuZXhwb3J0IGludGVyZmFjZSBHbG9iYWxFZGl0b3JXcmFwcGVyIHtcblx0ZGVmaW5pdGlvbjogRGVmaW5pdGlvbjtcblx0Y29udGV4dDogR2xvYmFsRWRpdG9yQ29udGV4dDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGVwRWRpdG9yV3JhcHBlciB7XG5cdHN0ZXA6IFN0ZXA7XG5cdGRlZmluaXRpb246IERlZmluaXRpb247XG5cdGNvbnRleHQ6IFN0ZXBFZGl0b3JDb250ZXh0O1xufVxuXG5leHBvcnQgdHlwZSBBbmd1bGFyVG9vbGJveENvbmZpZ3VyYXRpb24gPSBPbWl0PFRvb2xib3hDb25maWd1cmF0aW9uLCAnaXNDb2xsYXBzZWQnPjtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnc3FkLWRlc2lnbmVyJyxcblx0dGVtcGxhdGVVcmw6ICcuL2Rlc2lnbmVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBEZXNpZ25lckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblx0cHJpdmF0ZSBkZXNpZ25lcj86IERlc2lnbmVyO1xuXHRwcml2YXRlIGxhc3RFbWJlZGRlZFZpZXc/OiBFbWJlZGRlZFZpZXdSZWY8dW5rbm93bj47XG5cblx0QFZpZXdDaGlsZCgncGxhY2Vob2xkZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuXHRwcml2YXRlIHBsYWNlaG9sZGVyPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cblx0QElucHV0KCd0aGVtZScpXG5cdHB1YmxpYyB0aGVtZT86IHN0cmluZztcblx0QElucHV0KCd1bmRvU3RhY2tTaXplJylcblx0cHVibGljIHVuZG9TdGFja1NpemU/OiBudW1iZXI7XG5cdEBJbnB1dCgnZGVmaW5pdGlvbicpXG5cdHB1YmxpYyBkZWZpbml0aW9uPzogRGVmaW5pdGlvbjtcblx0QElucHV0KCdzdGVwc0NvbmZpZ3VyYXRpb24nKVxuXHRwdWJsaWMgc3RlcHNDb25maWd1cmF0aW9uPzogU3RlcHNDb25maWd1cmF0aW9uO1xuXHRASW5wdXQoJ3ZhbGlkYXRvckNvbmZpZ3VyYXRpb24nKVxuXHRwdWJsaWMgdmFsaWRhdG9yQ29uZmlndXJhdGlvbj86IFZhbGlkYXRvckNvbmZpZ3VyYXRpb247XG5cdEBJbnB1dCgndG9vbGJveENvbmZpZ3VyYXRpb24nKVxuXHRwdWJsaWMgdG9vbGJveENvbmZpZ3VyYXRpb24/OiBBbmd1bGFyVG9vbGJveENvbmZpZ3VyYXRpb24gfCBmYWxzZTtcblx0QElucHV0KCdjb250cm9sQmFyJylcblx0cHVibGljIGNvbnRyb2xCYXI/OiBib29sZWFuO1xuXHRASW5wdXQoJ2NvbnRleHRNZW51Jylcblx0cHVibGljIGNvbnRleHRNZW51PzogYm9vbGVhbjtcblx0QElucHV0KCdleHRlbnNpb25zJylcblx0cHVibGljIGV4dGVuc2lvbnM/OiBEZXNpZ25lckV4dGVuc2lvbltdO1xuXHRASW5wdXQoJ2FyZUVkaXRvcnNIaWRkZW4nKVxuXHRwdWJsaWMgYXJlRWRpdG9yc0hpZGRlbj86IGJvb2xlYW47XG5cdEBJbnB1dCgnZ2xvYmFsRWRpdG9yJylcblx0cHVibGljIGdsb2JhbEVkaXRvcj86IFRlbXBsYXRlUmVmPHVua25vd24+IHwgR2xvYmFsRWRpdG9yUHJvdmlkZXI7XG5cdEBJbnB1dCgnc3RlcEVkaXRvcicpXG5cdHB1YmxpYyBzdGVwRWRpdG9yPzogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBTdGVwRWRpdG9yUHJvdmlkZXI7XG5cblx0QE91dHB1dCgpXG5cdHB1YmxpYyByZWFkb25seSBvblJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxEZXNpZ25lcj4oKTtcblx0QE91dHB1dCgpXG5cdHB1YmxpYyByZWFkb25seSBvbkRlZmluaXRpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxEZWZpbml0aW9uPigpO1xuXG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLCBwcml2YXRlIHJlYWRvbmx5IGFwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZikge31cblxuXHRwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuXHRcdHRoaXMuYXR0YWNoKCk7XG5cdH1cblxuXHRwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuXHRcdGNvbnN0IGlzRmlyc3RDaGFuZ2UgPSBPYmplY3Qua2V5cyhjaGFuZ2VzKS5ldmVyeShrZXkgPT4gY2hhbmdlc1trZXldLmZpcnN0Q2hhbmdlKTtcblx0XHRpZiAoaXNGaXJzdENoYW5nZSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHRpZiAodGhpcy5kZXNpZ25lciAmJiBjaGFuZ2VzWydkZWZpbml0aW9uJ10gJiYgY2hhbmdlc1snZGVmaW5pdGlvbiddLmN1cnJlbnRWYWx1ZSA9PT0gdGhpcy5kZXNpZ25lci5nZXREZWZpbml0aW9uKCkpIHtcblx0XHRcdC8vIFRoZSBzYW1lIHJlZmVyZW5jZSA9IG5vIGNoYW5nZS5cblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLmF0dGFjaCgpO1xuXHR9XG5cblx0cHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLmxhc3RFbWJlZGRlZFZpZXcpIHtcblx0XHRcdHRoaXMuYXBwbGljYXRpb25SZWYuZGV0YWNoVmlldyh0aGlzLmxhc3RFbWJlZGRlZFZpZXcpO1xuXHRcdFx0dGhpcy5sYXN0RW1iZWRkZWRWaWV3LmRlc3Ryb3koKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIGF0dGFjaCgpIHtcblx0XHR0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG5cdFx0XHRpZiAoIXRoaXMucGxhY2Vob2xkZXIpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXHRcdFx0aWYgKCF0aGlzLmRlZmluaXRpb24pIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnB1dCBcImRlZmluaXRpb25cIiBpcyBub3Qgc2V0Jyk7XG5cdFx0XHR9XG5cdFx0XHRpZiAoIXRoaXMuc3RlcHNDb25maWd1cmF0aW9uKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcignSW5wdXQgXCJzdGVwc0NvbmZpZ3VyYXRpb25cIiBpcyBub3Qgc2V0Jyk7XG5cdFx0XHR9XG5cdFx0XHRpZiAodGhpcy50b29sYm94Q29uZmlndXJhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdHRocm93IG5ldyBFcnJvcignSW5wdXQgXCJ0b29sYm94Q29uZmlndXJhdGlvblwiIGlzIG5vdCBzZXQnKTtcblx0XHRcdH1cblx0XHRcdGlmICh0aGlzLmNvbnRyb2xCYXIgPT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0lucHV0IFwiY29udHJvbEJhclwiIGlzIG5vdCBzZXQnKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKHRoaXMuZGVzaWduZXIpIHtcblx0XHRcdFx0dGhpcy5kZXNpZ25lci5kZXN0cm95KCk7XG5cdFx0XHRcdHRoaXMuZGVzaWduZXIgPSB1bmRlZmluZWQ7XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IGRlc2lnbmVyID0gRGVzaWduZXIuY3JlYXRlKHRoaXMucGxhY2Vob2xkZXIubmF0aXZlRWxlbWVudCwgdGhpcy5kZWZpbml0aW9uLCB7XG5cdFx0XHRcdHRoZW1lOiB0aGlzLnRoZW1lLFxuXHRcdFx0XHR1bmRvU3RhY2tTaXplOiB0aGlzLnVuZG9TdGFja1NpemUsXG5cdFx0XHRcdGVkaXRvcnM6IHRoaXMuYXJlRWRpdG9yc0hpZGRlblxuXHRcdFx0XHRcdD8gZmFsc2Vcblx0XHRcdFx0XHQ6IHtcblx0XHRcdFx0XHRcdFx0Z2xvYmFsRWRpdG9yUHJvdmlkZXI6IHRoaXMuZ2xvYmFsRWRpdG9yUHJvdmlkZXIsXG5cdFx0XHRcdFx0XHRcdHN0ZXBFZGl0b3JQcm92aWRlcjogdGhpcy5zdGVwRWRpdG9yUHJvdmlkZXJcblx0XHRcdFx0XHQgIH0sXG5cdFx0XHRcdHN0ZXBzOiB0aGlzLnN0ZXBzQ29uZmlndXJhdGlvbixcblx0XHRcdFx0dmFsaWRhdG9yOiB0aGlzLnZhbGlkYXRvckNvbmZpZ3VyYXRpb24sXG5cdFx0XHRcdHRvb2xib3g6IHRoaXMudG9vbGJveENvbmZpZ3VyYXRpb24sXG5cdFx0XHRcdGNvbnRyb2xCYXI6IHRoaXMuY29udHJvbEJhcixcblx0XHRcdFx0Y29udGV4dE1lbnU6IHRoaXMuY29udGV4dE1lbnUsXG5cdFx0XHRcdGV4dGVuc2lvbnM6IHRoaXMuZXh0ZW5zaW9uc1xuXHRcdFx0fSk7XG5cdFx0XHRkZXNpZ25lci5vblJlYWR5LnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5vblJlYWR5LmVtaXQoZGVzaWduZXIpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH0pO1xuXHRcdFx0ZGVzaWduZXIub25EZWZpbml0aW9uQ2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMub25EZWZpbml0aW9uQ2hhbmdlZC5lbWl0KGRlc2lnbmVyLmdldERlZmluaXRpb24oKSk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0XHR0aGlzLmRlc2lnbmVyID0gZGVzaWduZXI7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIHJlYWRvbmx5IGdsb2JhbEVkaXRvclByb3ZpZGVyID0gKGRlZmluaXRpb246IERlZmluaXRpb24sIGNvbnRleHQ6IEdsb2JhbEVkaXRvckNvbnRleHQpID0+IHtcblx0XHRpZiAoIXRoaXMuZ2xvYmFsRWRpdG9yKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0lucHV0IFwiZ2xvYmFsRWRpdG9yXCIgaXMgbm90IHNldCcpO1xuXHRcdH1cblx0XHRpZiAodHlwZW9mIHRoaXMuZ2xvYmFsRWRpdG9yID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5nbG9iYWxFZGl0b3IoZGVmaW5pdGlvbiwgY29udGV4dCk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLmVkaXRvclByb3ZpZGVyPEdsb2JhbEVkaXRvcldyYXBwZXI+KHRoaXMuZ2xvYmFsRWRpdG9yLCB7XG5cdFx0XHRkZWZpbml0aW9uLFxuXHRcdFx0Y29udGV4dFxuXHRcdH0pO1xuXHR9O1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgc3RlcEVkaXRvclByb3ZpZGVyID0gKHN0ZXA6IFN0ZXAsIGNvbnRleHQ6IFN0ZXBFZGl0b3JDb250ZXh0LCBkZWZpbml0aW9uOiBEZWZpbml0aW9uKSA9PiB7XG5cdFx0aWYgKCF0aGlzLnN0ZXBFZGl0b3IpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcignSW5wdXQgXCJzdGVwRWRpdG9yXCIgaXMgbm90IHNldCcpO1xuXHRcdH1cblx0XHRpZiAodHlwZW9mIHRoaXMuc3RlcEVkaXRvciA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdFx0cmV0dXJuIHRoaXMuc3RlcEVkaXRvcihzdGVwLCBjb250ZXh0LCBkZWZpbml0aW9uKTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yUHJvdmlkZXI8U3RlcEVkaXRvcldyYXBwZXI+KHRoaXMuc3RlcEVkaXRvciwge1xuXHRcdFx0c3RlcCxcblx0XHRcdGRlZmluaXRpb24sXG5cdFx0XHRjb250ZXh0XG5cdFx0fSk7XG5cdH07XG5cblx0cHJpdmF0ZSBlZGl0b3JQcm92aWRlcjxFPih0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4sIGVkaXRvcjogRSkge1xuXHRcdHJldHVybiB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuXHRcdFx0aWYgKHRoaXMubGFzdEVtYmVkZGVkVmlldykge1xuXHRcdFx0XHR0aGlzLmFwcGxpY2F0aW9uUmVmLmRldGFjaFZpZXcodGhpcy5sYXN0RW1iZWRkZWRWaWV3KTtcblx0XHRcdFx0dGhpcy5sYXN0RW1iZWRkZWRWaWV3LmRlc3Ryb3koKTtcblx0XHRcdFx0dGhpcy5sYXN0RW1iZWRkZWRWaWV3ID0gdW5kZWZpbmVkO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLmxhc3RFbWJlZGRlZFZpZXcgPSB0ZW1wbGF0ZVJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoe1xuXHRcdFx0XHQkaW1wbGljaXQ6IGVkaXRvclxuXHRcdFx0fSk7XG5cdFx0XHR0aGlzLmFwcGxpY2F0aW9uUmVmLmF0dGFjaFZpZXcodGhpcy5sYXN0RW1iZWRkZWRWaWV3KTtcblxuXHRcdFx0Y29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cdFx0XHRjb250YWluZXIuY2xhc3NOYW1lID0gJ3NxZC1lZGl0b3ItYW5ndWxhcic7XG5cdFx0XHRmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5sYXN0RW1iZWRkZWRWaWV3LnJvb3ROb2Rlcykge1xuXHRcdFx0XHRjb250YWluZXIuYXBwZW5kQ2hpbGQobm9kZSk7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gY29udGFpbmVyO1xuXHRcdH0pO1xuXHR9XG59XG4iLCI8ZGl2ICNwbGFjZWhvbGRlciBjbGFzcz1cInNxZC1kZXNpZ25lci1hbmd1bGFyXCI+PC9kaXY+XG4iXX0=
@@ -13,6 +13,9 @@ class DesignerComponent {
13
13
  if (!this.globalEditor) {
14
14
  throw new Error('Input "globalEditor" is not set');
15
15
  }
16
+ if (typeof this.globalEditor === 'function') {
17
+ return this.globalEditor(definition, context);
18
+ }
16
19
  return this.editorProvider(this.globalEditor, {
17
20
  definition,
18
21
  context
@@ -22,6 +25,9 @@ class DesignerComponent {
22
25
  if (!this.stepEditor) {
23
26
  throw new Error('Input "stepEditor" is not set');
24
27
  }
28
+ if (typeof this.stepEditor === 'function') {
29
+ return this.stepEditor(step, context, definition);
30
+ }
25
31
  return this.editorProvider(this.stepEditor, {
26
32
  step,
27
33
  definition,
@@ -83,6 +89,7 @@ class DesignerComponent {
83
89
  validator: this.validatorConfiguration,
84
90
  toolbox: this.toolboxConfiguration,
85
91
  controlBar: this.controlBar,
92
+ contextMenu: this.contextMenu,
86
93
  extensions: this.extensions
87
94
  });
88
95
  designer.onReady.subscribe(() => {
@@ -119,7 +126,7 @@ class DesignerComponent {
119
126
  }
120
127
  }
121
128
  DesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, deps: [{ token: i0.NgZone }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Component });
122
- DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
129
+ DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", contextMenu: "contextMenu", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
123
130
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, decorators: [{
124
131
  type: Component,
125
132
  args: [{ selector: 'sqd-designer', template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" }]
@@ -147,6 +154,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
147
154
  }], controlBar: [{
148
155
  type: Input,
149
156
  args: ['controlBar']
157
+ }], contextMenu: [{
158
+ type: Input,
159
+ args: ['contextMenu']
150
160
  }], extensions: [{
151
161
  type: Input,
152
162
  args: ['extensions']
@@ -1 +1 @@
1
- {"version":3,"file":"sequential-workflow-designer-angular.mjs","sources":["../../designer/src/designer.component.ts","../../designer/src/designer.component.html","../../designer/src/sequential-workflow-designer.module.ts","../../designer/src/sequential-workflow-designer-angular.ts"],"sourcesContent":["import {\n\tAfterViewInit,\n\tApplicationRef,\n\tComponent,\n\tElementRef,\n\tEmbeddedViewRef,\n\tEventEmitter,\n\tInput,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOutput,\n\tSimpleChanges,\n\tTemplateRef,\n\tViewChild\n} from '@angular/core';\nimport {\n\tDefinition,\n\tDesigner,\n\tDesignerExtension,\n\tGlobalEditorContext,\n\tStep,\n\tStepEditorContext,\n\tStepsConfiguration,\n\tToolboxConfiguration,\n\tValidatorConfiguration\n} from 'sequential-workflow-designer';\n\nexport interface GlobalEditorWrapper {\n\tdefinition: Definition;\n\tcontext: GlobalEditorContext;\n}\n\nexport interface StepEditorWrapper {\n\tstep: Step;\n\tdefinition: Definition;\n\tcontext: StepEditorContext;\n}\n\nexport type AngularToolboxConfiguration = Omit<ToolboxConfiguration, 'isCollapsed'>;\n\n@Component({\n\tselector: 'sqd-designer',\n\ttemplateUrl: './designer.component.html'\n})\nexport class DesignerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\tprivate designer?: Designer;\n\tprivate lastEmbeddedView?: EmbeddedViewRef<unknown>;\n\n\t@ViewChild('placeholder', { static: true })\n\tprivate placeholder?: ElementRef<HTMLElement>;\n\n\t@Input('theme')\n\tpublic theme?: string;\n\t@Input('undoStackSize')\n\tpublic undoStackSize?: number;\n\t@Input('definition')\n\tpublic definition?: Definition;\n\t@Input('stepsConfiguration')\n\tpublic stepsConfiguration?: StepsConfiguration;\n\t@Input('validatorConfiguration')\n\tpublic validatorConfiguration?: ValidatorConfiguration;\n\t@Input('toolboxConfiguration')\n\tpublic toolboxConfiguration?: AngularToolboxConfiguration | false;\n\t@Input('controlBar')\n\tpublic controlBar?: boolean;\n\t@Input('extensions')\n\tpublic extensions?: DesignerExtension[];\n\t@Input('areEditorsHidden')\n\tpublic areEditorsHidden?: boolean;\n\t@Input('globalEditor')\n\tpublic globalEditor?: TemplateRef<unknown>;\n\t@Input('stepEditor')\n\tpublic stepEditor?: TemplateRef<unknown>;\n\n\t@Output()\n\tpublic readonly onReady = new EventEmitter<Designer>();\n\t@Output()\n\tpublic readonly onDefinitionChanged = new EventEmitter<Definition>();\n\n\tpublic constructor(private readonly ngZone: NgZone, private readonly applicationRef: ApplicationRef) {}\n\n\tpublic ngAfterViewInit() {\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnChanges(changes: SimpleChanges) {\n\t\tconst isFirstChange = Object.keys(changes).every(key => changes[key].firstChange);\n\t\tif (isFirstChange) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.designer && changes['definition'] && changes['definition'].currentValue === this.designer.getDefinition()) {\n\t\t\t// The same reference = no change.\n\t\t\treturn;\n\t\t}\n\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tif (this.lastEmbeddedView) {\n\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\tthis.lastEmbeddedView.destroy();\n\t\t}\n\t}\n\n\tprivate attach() {\n\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\tif (!this.placeholder) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!this.definition) {\n\t\t\t\tthrow new Error('Input \"definition\" is not set');\n\t\t\t}\n\t\t\tif (!this.stepsConfiguration) {\n\t\t\t\tthrow new Error('Input \"stepsConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.toolboxConfiguration === undefined) {\n\t\t\t\tthrow new Error('Input \"toolboxConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.controlBar === undefined) {\n\t\t\t\tthrow new Error('Input \"controlBar\" is not set');\n\t\t\t}\n\n\t\t\tif (this.designer) {\n\t\t\t\tthis.designer.destroy();\n\t\t\t\tthis.designer = undefined;\n\t\t\t}\n\n\t\t\tconst designer = Designer.create(this.placeholder.nativeElement, this.definition, {\n\t\t\t\ttheme: this.theme,\n\t\t\t\tundoStackSize: this.undoStackSize,\n\t\t\t\teditors: this.areEditorsHidden\n\t\t\t\t\t? false\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tglobalEditorProvider: this.globalEditorProvider,\n\t\t\t\t\t\t\tstepEditorProvider: this.stepEditorProvider\n\t\t\t\t\t },\n\t\t\t\tsteps: this.stepsConfiguration,\n\t\t\t\tvalidator: this.validatorConfiguration,\n\t\t\t\ttoolbox: this.toolboxConfiguration,\n\t\t\t\tcontrolBar: this.controlBar,\n\t\t\t\textensions: this.extensions\n\t\t\t});\n\t\t\tdesigner.onReady.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onReady.emit(designer);\n\t\t\t\t});\n\t\t\t});\n\t\t\tdesigner.onDefinitionChanged.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onDefinitionChanged.emit(designer.getDefinition());\n\t\t\t\t});\n\t\t\t});\n\t\t\tthis.designer = designer;\n\t\t});\n\t}\n\n\tprivate readonly globalEditorProvider = (definition: Definition, context: GlobalEditorContext) => {\n\t\tif (!this.globalEditor) {\n\t\t\tthrow new Error('Input \"globalEditor\" is not set');\n\t\t}\n\t\treturn this.editorProvider<GlobalEditorWrapper>(this.globalEditor, {\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate readonly stepEditorProvider = (step: Step, context: StepEditorContext, definition: Definition) => {\n\t\tif (!this.stepEditor) {\n\t\t\tthrow new Error('Input \"stepEditor\" is not set');\n\t\t}\n\t\treturn this.editorProvider<StepEditorWrapper>(this.stepEditor, {\n\t\t\tstep,\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate editorProvider<E>(templateRef: TemplateRef<unknown>, editor: E) {\n\t\treturn this.ngZone.run(() => {\n\t\t\tif (this.lastEmbeddedView) {\n\t\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\t\tthis.lastEmbeddedView.destroy();\n\t\t\t\tthis.lastEmbeddedView = undefined;\n\t\t\t}\n\n\t\t\tthis.lastEmbeddedView = templateRef.createEmbeddedView({\n\t\t\t\t$implicit: editor\n\t\t\t});\n\t\t\tthis.applicationRef.attachView(this.lastEmbeddedView);\n\n\t\t\tconst container = document.createElement('div');\n\t\t\tcontainer.className = 'sqd-editor-angular';\n\t\t\tfor (const node of this.lastEmbeddedView.rootNodes) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t\treturn container;\n\t\t});\n\t}\n}\n","<div #placeholder class=\"sqd-designer-angular\"></div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { DesignerComponent } from './designer.component';\n\n@NgModule({\n\tdeclarations: [DesignerComponent],\n\timports: [CommonModule],\n\texports: [DesignerComponent]\n})\nexport class SequentialWorkflowDesignerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequential-workflow-designer-angular.mjs","sources":["../../designer/src/designer.component.ts","../../designer/src/designer.component.html","../../designer/src/sequential-workflow-designer.module.ts","../../designer/src/sequential-workflow-designer-angular.ts"],"sourcesContent":["import {\n\tAfterViewInit,\n\tApplicationRef,\n\tComponent,\n\tElementRef,\n\tEmbeddedViewRef,\n\tEventEmitter,\n\tInput,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOutput,\n\tSimpleChanges,\n\tTemplateRef,\n\tViewChild\n} from '@angular/core';\nimport {\n\tDefinition,\n\tDesigner,\n\tDesignerExtension,\n\tGlobalEditorContext,\n\tGlobalEditorProvider,\n\tStep,\n\tStepEditorContext,\n\tStepEditorProvider,\n\tStepsConfiguration,\n\tToolboxConfiguration,\n\tValidatorConfiguration\n} from 'sequential-workflow-designer';\n\nexport interface GlobalEditorWrapper {\n\tdefinition: Definition;\n\tcontext: GlobalEditorContext;\n}\n\nexport interface StepEditorWrapper {\n\tstep: Step;\n\tdefinition: Definition;\n\tcontext: StepEditorContext;\n}\n\nexport type AngularToolboxConfiguration = Omit<ToolboxConfiguration, 'isCollapsed'>;\n\n@Component({\n\tselector: 'sqd-designer',\n\ttemplateUrl: './designer.component.html'\n})\nexport class DesignerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\tprivate designer?: Designer;\n\tprivate lastEmbeddedView?: EmbeddedViewRef<unknown>;\n\n\t@ViewChild('placeholder', { static: true })\n\tprivate placeholder?: ElementRef<HTMLElement>;\n\n\t@Input('theme')\n\tpublic theme?: string;\n\t@Input('undoStackSize')\n\tpublic undoStackSize?: number;\n\t@Input('definition')\n\tpublic definition?: Definition;\n\t@Input('stepsConfiguration')\n\tpublic stepsConfiguration?: StepsConfiguration;\n\t@Input('validatorConfiguration')\n\tpublic validatorConfiguration?: ValidatorConfiguration;\n\t@Input('toolboxConfiguration')\n\tpublic toolboxConfiguration?: AngularToolboxConfiguration | false;\n\t@Input('controlBar')\n\tpublic controlBar?: boolean;\n\t@Input('contextMenu')\n\tpublic contextMenu?: boolean;\n\t@Input('extensions')\n\tpublic extensions?: DesignerExtension[];\n\t@Input('areEditorsHidden')\n\tpublic areEditorsHidden?: boolean;\n\t@Input('globalEditor')\n\tpublic globalEditor?: TemplateRef<unknown> | GlobalEditorProvider;\n\t@Input('stepEditor')\n\tpublic stepEditor?: TemplateRef<unknown> | StepEditorProvider;\n\n\t@Output()\n\tpublic readonly onReady = new EventEmitter<Designer>();\n\t@Output()\n\tpublic readonly onDefinitionChanged = new EventEmitter<Definition>();\n\n\tpublic constructor(private readonly ngZone: NgZone, private readonly applicationRef: ApplicationRef) {}\n\n\tpublic ngAfterViewInit() {\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnChanges(changes: SimpleChanges) {\n\t\tconst isFirstChange = Object.keys(changes).every(key => changes[key].firstChange);\n\t\tif (isFirstChange) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.designer && changes['definition'] && changes['definition'].currentValue === this.designer.getDefinition()) {\n\t\t\t// The same reference = no change.\n\t\t\treturn;\n\t\t}\n\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tif (this.lastEmbeddedView) {\n\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\tthis.lastEmbeddedView.destroy();\n\t\t}\n\t}\n\n\tprivate attach() {\n\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\tif (!this.placeholder) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!this.definition) {\n\t\t\t\tthrow new Error('Input \"definition\" is not set');\n\t\t\t}\n\t\t\tif (!this.stepsConfiguration) {\n\t\t\t\tthrow new Error('Input \"stepsConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.toolboxConfiguration === undefined) {\n\t\t\t\tthrow new Error('Input \"toolboxConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.controlBar === undefined) {\n\t\t\t\tthrow new Error('Input \"controlBar\" is not set');\n\t\t\t}\n\n\t\t\tif (this.designer) {\n\t\t\t\tthis.designer.destroy();\n\t\t\t\tthis.designer = undefined;\n\t\t\t}\n\n\t\t\tconst designer = Designer.create(this.placeholder.nativeElement, this.definition, {\n\t\t\t\ttheme: this.theme,\n\t\t\t\tundoStackSize: this.undoStackSize,\n\t\t\t\teditors: this.areEditorsHidden\n\t\t\t\t\t? false\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tglobalEditorProvider: this.globalEditorProvider,\n\t\t\t\t\t\t\tstepEditorProvider: this.stepEditorProvider\n\t\t\t\t\t },\n\t\t\t\tsteps: this.stepsConfiguration,\n\t\t\t\tvalidator: this.validatorConfiguration,\n\t\t\t\ttoolbox: this.toolboxConfiguration,\n\t\t\t\tcontrolBar: this.controlBar,\n\t\t\t\tcontextMenu: this.contextMenu,\n\t\t\t\textensions: this.extensions\n\t\t\t});\n\t\t\tdesigner.onReady.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onReady.emit(designer);\n\t\t\t\t});\n\t\t\t});\n\t\t\tdesigner.onDefinitionChanged.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onDefinitionChanged.emit(designer.getDefinition());\n\t\t\t\t});\n\t\t\t});\n\t\t\tthis.designer = designer;\n\t\t});\n\t}\n\n\tprivate readonly globalEditorProvider = (definition: Definition, context: GlobalEditorContext) => {\n\t\tif (!this.globalEditor) {\n\t\t\tthrow new Error('Input \"globalEditor\" is not set');\n\t\t}\n\t\tif (typeof this.globalEditor === 'function') {\n\t\t\treturn this.globalEditor(definition, context);\n\t\t}\n\t\treturn this.editorProvider<GlobalEditorWrapper>(this.globalEditor, {\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate readonly stepEditorProvider = (step: Step, context: StepEditorContext, definition: Definition) => {\n\t\tif (!this.stepEditor) {\n\t\t\tthrow new Error('Input \"stepEditor\" is not set');\n\t\t}\n\t\tif (typeof this.stepEditor === 'function') {\n\t\t\treturn this.stepEditor(step, context, definition);\n\t\t}\n\t\treturn this.editorProvider<StepEditorWrapper>(this.stepEditor, {\n\t\t\tstep,\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate editorProvider<E>(templateRef: TemplateRef<unknown>, editor: E) {\n\t\treturn this.ngZone.run(() => {\n\t\t\tif (this.lastEmbeddedView) {\n\t\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\t\tthis.lastEmbeddedView.destroy();\n\t\t\t\tthis.lastEmbeddedView = undefined;\n\t\t\t}\n\n\t\t\tthis.lastEmbeddedView = templateRef.createEmbeddedView({\n\t\t\t\t$implicit: editor\n\t\t\t});\n\t\t\tthis.applicationRef.attachView(this.lastEmbeddedView);\n\n\t\t\tconst container = document.createElement('div');\n\t\t\tcontainer.className = 'sqd-editor-angular';\n\t\t\tfor (const node of this.lastEmbeddedView.rootNodes) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t\treturn container;\n\t\t});\n\t}\n}\n","<div #placeholder class=\"sqd-designer-angular\"></div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { DesignerComponent } from './designer.component';\n\n@NgModule({\n\tdeclarations: [DesignerComponent],\n\timports: [CommonModule],\n\texports: [DesignerComponent]\n})\nexport class SequentialWorkflowDesignerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@ class DesignerComponent {
13
13
  if (!this.globalEditor) {
14
14
  throw new Error('Input "globalEditor" is not set');
15
15
  }
16
+ if (typeof this.globalEditor === 'function') {
17
+ return this.globalEditor(definition, context);
18
+ }
16
19
  return this.editorProvider(this.globalEditor, {
17
20
  definition,
18
21
  context
@@ -22,6 +25,9 @@ class DesignerComponent {
22
25
  if (!this.stepEditor) {
23
26
  throw new Error('Input "stepEditor" is not set');
24
27
  }
28
+ if (typeof this.stepEditor === 'function') {
29
+ return this.stepEditor(step, context, definition);
30
+ }
25
31
  return this.editorProvider(this.stepEditor, {
26
32
  step,
27
33
  definition,
@@ -83,6 +89,7 @@ class DesignerComponent {
83
89
  validator: this.validatorConfiguration,
84
90
  toolbox: this.toolboxConfiguration,
85
91
  controlBar: this.controlBar,
92
+ contextMenu: this.contextMenu,
86
93
  extensions: this.extensions
87
94
  });
88
95
  designer.onReady.subscribe(() => {
@@ -119,7 +126,7 @@ class DesignerComponent {
119
126
  }
120
127
  }
121
128
  DesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, deps: [{ token: i0.NgZone }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Component });
122
- DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
129
+ DesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DesignerComponent, selector: "sqd-designer", inputs: { theme: "theme", undoStackSize: "undoStackSize", definition: "definition", stepsConfiguration: "stepsConfiguration", validatorConfiguration: "validatorConfiguration", toolboxConfiguration: "toolboxConfiguration", controlBar: "controlBar", contextMenu: "contextMenu", extensions: "extensions", areEditorsHidden: "areEditorsHidden", globalEditor: "globalEditor", stepEditor: "stepEditor" }, outputs: { onReady: "onReady", onDefinitionChanged: "onDefinitionChanged" }, viewQueries: [{ propertyName: "placeholder", first: true, predicate: ["placeholder"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" });
123
130
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DesignerComponent, decorators: [{
124
131
  type: Component,
125
132
  args: [{ selector: 'sqd-designer', template: "<div #placeholder class=\"sqd-designer-angular\"></div>\n" }]
@@ -147,6 +154,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
147
154
  }], controlBar: [{
148
155
  type: Input,
149
156
  args: ['controlBar']
157
+ }], contextMenu: [{
158
+ type: Input,
159
+ args: ['contextMenu']
150
160
  }], extensions: [{
151
161
  type: Input,
152
162
  args: ['extensions']
@@ -1 +1 @@
1
- {"version":3,"file":"sequential-workflow-designer-angular.mjs","sources":["../../designer/src/designer.component.ts","../../designer/src/designer.component.html","../../designer/src/sequential-workflow-designer.module.ts","../../designer/src/sequential-workflow-designer-angular.ts"],"sourcesContent":["import {\n\tAfterViewInit,\n\tApplicationRef,\n\tComponent,\n\tElementRef,\n\tEmbeddedViewRef,\n\tEventEmitter,\n\tInput,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOutput,\n\tSimpleChanges,\n\tTemplateRef,\n\tViewChild\n} from '@angular/core';\nimport {\n\tDefinition,\n\tDesigner,\n\tDesignerExtension,\n\tGlobalEditorContext,\n\tStep,\n\tStepEditorContext,\n\tStepsConfiguration,\n\tToolboxConfiguration,\n\tValidatorConfiguration\n} from 'sequential-workflow-designer';\n\nexport interface GlobalEditorWrapper {\n\tdefinition: Definition;\n\tcontext: GlobalEditorContext;\n}\n\nexport interface StepEditorWrapper {\n\tstep: Step;\n\tdefinition: Definition;\n\tcontext: StepEditorContext;\n}\n\nexport type AngularToolboxConfiguration = Omit<ToolboxConfiguration, 'isCollapsed'>;\n\n@Component({\n\tselector: 'sqd-designer',\n\ttemplateUrl: './designer.component.html'\n})\nexport class DesignerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\tprivate designer?: Designer;\n\tprivate lastEmbeddedView?: EmbeddedViewRef<unknown>;\n\n\t@ViewChild('placeholder', { static: true })\n\tprivate placeholder?: ElementRef<HTMLElement>;\n\n\t@Input('theme')\n\tpublic theme?: string;\n\t@Input('undoStackSize')\n\tpublic undoStackSize?: number;\n\t@Input('definition')\n\tpublic definition?: Definition;\n\t@Input('stepsConfiguration')\n\tpublic stepsConfiguration?: StepsConfiguration;\n\t@Input('validatorConfiguration')\n\tpublic validatorConfiguration?: ValidatorConfiguration;\n\t@Input('toolboxConfiguration')\n\tpublic toolboxConfiguration?: AngularToolboxConfiguration | false;\n\t@Input('controlBar')\n\tpublic controlBar?: boolean;\n\t@Input('extensions')\n\tpublic extensions?: DesignerExtension[];\n\t@Input('areEditorsHidden')\n\tpublic areEditorsHidden?: boolean;\n\t@Input('globalEditor')\n\tpublic globalEditor?: TemplateRef<unknown>;\n\t@Input('stepEditor')\n\tpublic stepEditor?: TemplateRef<unknown>;\n\n\t@Output()\n\tpublic readonly onReady = new EventEmitter<Designer>();\n\t@Output()\n\tpublic readonly onDefinitionChanged = new EventEmitter<Definition>();\n\n\tpublic constructor(private readonly ngZone: NgZone, private readonly applicationRef: ApplicationRef) {}\n\n\tpublic ngAfterViewInit() {\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnChanges(changes: SimpleChanges) {\n\t\tconst isFirstChange = Object.keys(changes).every(key => changes[key].firstChange);\n\t\tif (isFirstChange) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.designer && changes['definition'] && changes['definition'].currentValue === this.designer.getDefinition()) {\n\t\t\t// The same reference = no change.\n\t\t\treturn;\n\t\t}\n\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tif (this.lastEmbeddedView) {\n\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\tthis.lastEmbeddedView.destroy();\n\t\t}\n\t}\n\n\tprivate attach() {\n\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\tif (!this.placeholder) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!this.definition) {\n\t\t\t\tthrow new Error('Input \"definition\" is not set');\n\t\t\t}\n\t\t\tif (!this.stepsConfiguration) {\n\t\t\t\tthrow new Error('Input \"stepsConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.toolboxConfiguration === undefined) {\n\t\t\t\tthrow new Error('Input \"toolboxConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.controlBar === undefined) {\n\t\t\t\tthrow new Error('Input \"controlBar\" is not set');\n\t\t\t}\n\n\t\t\tif (this.designer) {\n\t\t\t\tthis.designer.destroy();\n\t\t\t\tthis.designer = undefined;\n\t\t\t}\n\n\t\t\tconst designer = Designer.create(this.placeholder.nativeElement, this.definition, {\n\t\t\t\ttheme: this.theme,\n\t\t\t\tundoStackSize: this.undoStackSize,\n\t\t\t\teditors: this.areEditorsHidden\n\t\t\t\t\t? false\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tglobalEditorProvider: this.globalEditorProvider,\n\t\t\t\t\t\t\tstepEditorProvider: this.stepEditorProvider\n\t\t\t\t\t },\n\t\t\t\tsteps: this.stepsConfiguration,\n\t\t\t\tvalidator: this.validatorConfiguration,\n\t\t\t\ttoolbox: this.toolboxConfiguration,\n\t\t\t\tcontrolBar: this.controlBar,\n\t\t\t\textensions: this.extensions\n\t\t\t});\n\t\t\tdesigner.onReady.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onReady.emit(designer);\n\t\t\t\t});\n\t\t\t});\n\t\t\tdesigner.onDefinitionChanged.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onDefinitionChanged.emit(designer.getDefinition());\n\t\t\t\t});\n\t\t\t});\n\t\t\tthis.designer = designer;\n\t\t});\n\t}\n\n\tprivate readonly globalEditorProvider = (definition: Definition, context: GlobalEditorContext) => {\n\t\tif (!this.globalEditor) {\n\t\t\tthrow new Error('Input \"globalEditor\" is not set');\n\t\t}\n\t\treturn this.editorProvider<GlobalEditorWrapper>(this.globalEditor, {\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate readonly stepEditorProvider = (step: Step, context: StepEditorContext, definition: Definition) => {\n\t\tif (!this.stepEditor) {\n\t\t\tthrow new Error('Input \"stepEditor\" is not set');\n\t\t}\n\t\treturn this.editorProvider<StepEditorWrapper>(this.stepEditor, {\n\t\t\tstep,\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate editorProvider<E>(templateRef: TemplateRef<unknown>, editor: E) {\n\t\treturn this.ngZone.run(() => {\n\t\t\tif (this.lastEmbeddedView) {\n\t\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\t\tthis.lastEmbeddedView.destroy();\n\t\t\t\tthis.lastEmbeddedView = undefined;\n\t\t\t}\n\n\t\t\tthis.lastEmbeddedView = templateRef.createEmbeddedView({\n\t\t\t\t$implicit: editor\n\t\t\t});\n\t\t\tthis.applicationRef.attachView(this.lastEmbeddedView);\n\n\t\t\tconst container = document.createElement('div');\n\t\t\tcontainer.className = 'sqd-editor-angular';\n\t\t\tfor (const node of this.lastEmbeddedView.rootNodes) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t\treturn container;\n\t\t});\n\t}\n}\n","<div #placeholder class=\"sqd-designer-angular\"></div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { DesignerComponent } from './designer.component';\n\n@NgModule({\n\tdeclarations: [DesignerComponent],\n\timports: [CommonModule],\n\texports: [DesignerComponent]\n})\nexport class SequentialWorkflowDesignerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequential-workflow-designer-angular.mjs","sources":["../../designer/src/designer.component.ts","../../designer/src/designer.component.html","../../designer/src/sequential-workflow-designer.module.ts","../../designer/src/sequential-workflow-designer-angular.ts"],"sourcesContent":["import {\n\tAfterViewInit,\n\tApplicationRef,\n\tComponent,\n\tElementRef,\n\tEmbeddedViewRef,\n\tEventEmitter,\n\tInput,\n\tNgZone,\n\tOnChanges,\n\tOnDestroy,\n\tOutput,\n\tSimpleChanges,\n\tTemplateRef,\n\tViewChild\n} from '@angular/core';\nimport {\n\tDefinition,\n\tDesigner,\n\tDesignerExtension,\n\tGlobalEditorContext,\n\tGlobalEditorProvider,\n\tStep,\n\tStepEditorContext,\n\tStepEditorProvider,\n\tStepsConfiguration,\n\tToolboxConfiguration,\n\tValidatorConfiguration\n} from 'sequential-workflow-designer';\n\nexport interface GlobalEditorWrapper {\n\tdefinition: Definition;\n\tcontext: GlobalEditorContext;\n}\n\nexport interface StepEditorWrapper {\n\tstep: Step;\n\tdefinition: Definition;\n\tcontext: StepEditorContext;\n}\n\nexport type AngularToolboxConfiguration = Omit<ToolboxConfiguration, 'isCollapsed'>;\n\n@Component({\n\tselector: 'sqd-designer',\n\ttemplateUrl: './designer.component.html'\n})\nexport class DesignerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\tprivate designer?: Designer;\n\tprivate lastEmbeddedView?: EmbeddedViewRef<unknown>;\n\n\t@ViewChild('placeholder', { static: true })\n\tprivate placeholder?: ElementRef<HTMLElement>;\n\n\t@Input('theme')\n\tpublic theme?: string;\n\t@Input('undoStackSize')\n\tpublic undoStackSize?: number;\n\t@Input('definition')\n\tpublic definition?: Definition;\n\t@Input('stepsConfiguration')\n\tpublic stepsConfiguration?: StepsConfiguration;\n\t@Input('validatorConfiguration')\n\tpublic validatorConfiguration?: ValidatorConfiguration;\n\t@Input('toolboxConfiguration')\n\tpublic toolboxConfiguration?: AngularToolboxConfiguration | false;\n\t@Input('controlBar')\n\tpublic controlBar?: boolean;\n\t@Input('contextMenu')\n\tpublic contextMenu?: boolean;\n\t@Input('extensions')\n\tpublic extensions?: DesignerExtension[];\n\t@Input('areEditorsHidden')\n\tpublic areEditorsHidden?: boolean;\n\t@Input('globalEditor')\n\tpublic globalEditor?: TemplateRef<unknown> | GlobalEditorProvider;\n\t@Input('stepEditor')\n\tpublic stepEditor?: TemplateRef<unknown> | StepEditorProvider;\n\n\t@Output()\n\tpublic readonly onReady = new EventEmitter<Designer>();\n\t@Output()\n\tpublic readonly onDefinitionChanged = new EventEmitter<Definition>();\n\n\tpublic constructor(private readonly ngZone: NgZone, private readonly applicationRef: ApplicationRef) {}\n\n\tpublic ngAfterViewInit() {\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnChanges(changes: SimpleChanges) {\n\t\tconst isFirstChange = Object.keys(changes).every(key => changes[key].firstChange);\n\t\tif (isFirstChange) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.designer && changes['definition'] && changes['definition'].currentValue === this.designer.getDefinition()) {\n\t\t\t// The same reference = no change.\n\t\t\treturn;\n\t\t}\n\n\t\tthis.attach();\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tif (this.lastEmbeddedView) {\n\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\tthis.lastEmbeddedView.destroy();\n\t\t}\n\t}\n\n\tprivate attach() {\n\t\tthis.ngZone.runOutsideAngular(() => {\n\t\t\tif (!this.placeholder) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!this.definition) {\n\t\t\t\tthrow new Error('Input \"definition\" is not set');\n\t\t\t}\n\t\t\tif (!this.stepsConfiguration) {\n\t\t\t\tthrow new Error('Input \"stepsConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.toolboxConfiguration === undefined) {\n\t\t\t\tthrow new Error('Input \"toolboxConfiguration\" is not set');\n\t\t\t}\n\t\t\tif (this.controlBar === undefined) {\n\t\t\t\tthrow new Error('Input \"controlBar\" is not set');\n\t\t\t}\n\n\t\t\tif (this.designer) {\n\t\t\t\tthis.designer.destroy();\n\t\t\t\tthis.designer = undefined;\n\t\t\t}\n\n\t\t\tconst designer = Designer.create(this.placeholder.nativeElement, this.definition, {\n\t\t\t\ttheme: this.theme,\n\t\t\t\tundoStackSize: this.undoStackSize,\n\t\t\t\teditors: this.areEditorsHidden\n\t\t\t\t\t? false\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tglobalEditorProvider: this.globalEditorProvider,\n\t\t\t\t\t\t\tstepEditorProvider: this.stepEditorProvider\n\t\t\t\t\t },\n\t\t\t\tsteps: this.stepsConfiguration,\n\t\t\t\tvalidator: this.validatorConfiguration,\n\t\t\t\ttoolbox: this.toolboxConfiguration,\n\t\t\t\tcontrolBar: this.controlBar,\n\t\t\t\tcontextMenu: this.contextMenu,\n\t\t\t\textensions: this.extensions\n\t\t\t});\n\t\t\tdesigner.onReady.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onReady.emit(designer);\n\t\t\t\t});\n\t\t\t});\n\t\t\tdesigner.onDefinitionChanged.subscribe(() => {\n\t\t\t\tthis.ngZone.run(() => {\n\t\t\t\t\tthis.onDefinitionChanged.emit(designer.getDefinition());\n\t\t\t\t});\n\t\t\t});\n\t\t\tthis.designer = designer;\n\t\t});\n\t}\n\n\tprivate readonly globalEditorProvider = (definition: Definition, context: GlobalEditorContext) => {\n\t\tif (!this.globalEditor) {\n\t\t\tthrow new Error('Input \"globalEditor\" is not set');\n\t\t}\n\t\tif (typeof this.globalEditor === 'function') {\n\t\t\treturn this.globalEditor(definition, context);\n\t\t}\n\t\treturn this.editorProvider<GlobalEditorWrapper>(this.globalEditor, {\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate readonly stepEditorProvider = (step: Step, context: StepEditorContext, definition: Definition) => {\n\t\tif (!this.stepEditor) {\n\t\t\tthrow new Error('Input \"stepEditor\" is not set');\n\t\t}\n\t\tif (typeof this.stepEditor === 'function') {\n\t\t\treturn this.stepEditor(step, context, definition);\n\t\t}\n\t\treturn this.editorProvider<StepEditorWrapper>(this.stepEditor, {\n\t\t\tstep,\n\t\t\tdefinition,\n\t\t\tcontext\n\t\t});\n\t};\n\n\tprivate editorProvider<E>(templateRef: TemplateRef<unknown>, editor: E) {\n\t\treturn this.ngZone.run(() => {\n\t\t\tif (this.lastEmbeddedView) {\n\t\t\t\tthis.applicationRef.detachView(this.lastEmbeddedView);\n\t\t\t\tthis.lastEmbeddedView.destroy();\n\t\t\t\tthis.lastEmbeddedView = undefined;\n\t\t\t}\n\n\t\t\tthis.lastEmbeddedView = templateRef.createEmbeddedView({\n\t\t\t\t$implicit: editor\n\t\t\t});\n\t\t\tthis.applicationRef.attachView(this.lastEmbeddedView);\n\n\t\t\tconst container = document.createElement('div');\n\t\t\tcontainer.className = 'sqd-editor-angular';\n\t\t\tfor (const node of this.lastEmbeddedView.rootNodes) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t\treturn container;\n\t\t});\n\t}\n}\n","<div #placeholder class=\"sqd-designer-angular\"></div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { DesignerComponent } from './designer.component';\n\n@NgModule({\n\tdeclarations: [DesignerComponent],\n\timports: [CommonModule],\n\texports: [DesignerComponent]\n})\nexport class SequentialWorkflowDesignerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MA+Ca,iBAAiB,CAAA;IAqC7B,WAAoC,CAAA,MAAc,EAAmB,cAA8B,EAAA;QAA/D,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAAmB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AAJnF,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAY,CAAC;AAEvC,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,YAAY,EAAc,CAAC;AAiFpD,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,UAAsB,EAAE,OAA4B,KAAI;AAChG,YAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACvB,gBAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;AACnD,aAAA;AACD,YAAA,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,UAAU,EAAE;gBAC5C,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAC9C,aAAA;AACD,YAAA,OAAO,IAAI,CAAC,cAAc,CAAsB,IAAI,CAAC,YAAY,EAAE;gBAClE,UAAU;gBACV,OAAO;AACP,aAAA,CAAC,CAAC;AACJ,SAAC,CAAC;QAEe,IAAkB,CAAA,kBAAA,GAAG,CAAC,IAAU,EAAE,OAA0B,EAAE,UAAsB,KAAI;AACxG,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACrB,gBAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;AACjD,aAAA;AACD,YAAA,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE;gBAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAClD,aAAA;AACD,YAAA,OAAO,IAAI,CAAC,cAAc,CAAoB,IAAI,CAAC,UAAU,EAAE;gBAC9D,IAAI;gBACJ,UAAU;gBACV,OAAO;AACP,aAAA,CAAC,CAAC;AACJ,SAAC,CAAC;KAxGqG;IAEhG,eAAe,GAAA;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;KACd;AAEM,IAAA,WAAW,CAAC,OAAsB,EAAA;QACxC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;AAClF,QAAA,IAAI,aAAa,EAAE;YAClB,OAAO;AACP,SAAA;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE;;YAEnH,OAAO;AACP,SAAA;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;KACd;IAEM,WAAW,GAAA;QACjB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAC1B,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACtD,YAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;AAChC,SAAA;KACD;IAEO,MAAM,GAAA;AACb,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAK;AAClC,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACtB,OAAO;AACP,aAAA;AACD,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACrB,gBAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;AACjD,aAAA;AACD,YAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;AAC7B,gBAAA,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;AACzD,aAAA;AACD,YAAA,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE;AAC5C,gBAAA,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC3D,aAAA;AACD,YAAA,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE;AAClC,gBAAA,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;AACjD,aAAA;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE;AAClB,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACxB,gBAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;AAC1B,aAAA;AAED,YAAA,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE;gBACjF,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,OAAO,EAAE,IAAI,CAAC,gBAAgB;AAC7B,sBAAE,KAAK;AACP,sBAAE;wBACA,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;wBAC/C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;AAC1C,qBAAA;gBACJ,KAAK,EAAE,IAAI,CAAC,kBAAkB;gBAC9B,SAAS,EAAE,IAAI,CAAC,sBAAsB;gBACtC,OAAO,EAAE,IAAI,CAAC,oBAAoB;gBAClC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3B,aAAA,CAAC,CAAC;AACH,YAAA,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,MAAK;AAC/B,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;AACpB,oBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC7B,iBAAC,CAAC,CAAC;AACJ,aAAC,CAAC,CAAC;AACH,YAAA,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAK;AAC3C,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;oBACpB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;AACzD,iBAAC,CAAC,CAAC;AACJ,aAAC,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,SAAC,CAAC,CAAC;KACH;IA6BO,cAAc,CAAI,WAAiC,EAAE,MAAS,EAAA;AACrE,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAK;YAC3B,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBAC1B,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACtD,gBAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;AAChC,gBAAA,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;AAClC,aAAA;AAED,YAAA,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,kBAAkB,CAAC;AACtD,gBAAA,SAAS,EAAE,MAAM;AACjB,aAAA,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAEtD,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAChD,YAAA,SAAS,CAAC,SAAS,GAAG,oBAAoB,CAAC;YAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE;AACnD,gBAAA,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAC5B,aAAA;AACD,YAAA,OAAO,SAAS,CAAC;AAClB,SAAC,CAAC,CAAC;KACH;;+GAnKW,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,8pBC/C9B,2DACA,EAAA,CAAA,CAAA;4FD8Ca,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;+BACC,cAAc,EAAA,QAAA,EAAA,2DAAA,EAAA,CAAA;0HAQhB,WAAW,EAAA,CAAA;sBADlB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;gBAInC,KAAK,EAAA,CAAA;sBADX,KAAK;uBAAC,OAAO,CAAA;gBAGP,aAAa,EAAA,CAAA;sBADnB,KAAK;uBAAC,eAAe,CAAA;gBAGf,UAAU,EAAA,CAAA;sBADhB,KAAK;uBAAC,YAAY,CAAA;gBAGZ,kBAAkB,EAAA,CAAA;sBADxB,KAAK;uBAAC,oBAAoB,CAAA;gBAGpB,sBAAsB,EAAA,CAAA;sBAD5B,KAAK;uBAAC,wBAAwB,CAAA;gBAGxB,oBAAoB,EAAA,CAAA;sBAD1B,KAAK;uBAAC,sBAAsB,CAAA;gBAGtB,UAAU,EAAA,CAAA;sBADhB,KAAK;uBAAC,YAAY,CAAA;gBAGZ,WAAW,EAAA,CAAA;sBADjB,KAAK;uBAAC,aAAa,CAAA;gBAGb,UAAU,EAAA,CAAA;sBADhB,KAAK;uBAAC,YAAY,CAAA;gBAGZ,gBAAgB,EAAA,CAAA;sBADtB,KAAK;uBAAC,kBAAkB,CAAA;gBAGlB,YAAY,EAAA,CAAA;sBADlB,KAAK;uBAAC,cAAc,CAAA;gBAGd,UAAU,EAAA,CAAA;sBADhB,KAAK;uBAAC,YAAY,CAAA;gBAIH,OAAO,EAAA,CAAA;sBADtB,MAAM;gBAGS,mBAAmB,EAAA,CAAA;sBADlC,MAAM;;;MExEK,gCAAgC,CAAA;;8HAAhC,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,EAJ7B,YAAA,EAAA,CAAA,iBAAiB,CACtB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,iBAAiB,CAAA,EAAA,CAAA,CAAA;+HAEf,gCAAgC,EAAA,OAAA,EAAA,CAHnC,CAAC,YAAY,CAAC,CAAA,EAAA,CAAA,CAAA;4FAGX,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAL5C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC5B,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sequential-workflow-designer-angular",
3
3
  "description": "Angular wrapper for Sequential Workflow Designer component.",
4
- "version": "0.14.0",
4
+ "version": "0.14.1",
5
5
  "author": {
6
6
  "name": "NoCode JS",
7
7
  "url": "https://nocode-js.com/"
@@ -15,7 +15,7 @@
15
15
  "peerDependencies": {
16
16
  "@angular/common": "12 - 16",
17
17
  "@angular/core": "12 - 16",
18
- "sequential-workflow-designer": "^0.14.0"
18
+ "sequential-workflow-designer": "^0.14.1"
19
19
  },
20
20
  "dependencies": {
21
21
  "tslib": "^2.3.0"