@syncfusion/ej2-angular-diagrams 20.4.54 → 21.1.35

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 (49) hide show
  1. package/esm2020/src/diagram/diagram.component.mjs +3 -3
  2. package/fesm2015/syncfusion-ej2-angular-diagrams.mjs +2 -2
  3. package/fesm2015/syncfusion-ej2-angular-diagrams.mjs.map +1 -1
  4. package/fesm2020/syncfusion-ej2-angular-diagrams.mjs +2 -2
  5. package/fesm2020/syncfusion-ej2-angular-diagrams.mjs.map +1 -1
  6. package/package.json +9 -9
  7. package/schematics/utils/lib-details.d.ts +2 -2
  8. package/schematics/utils/lib-details.js +2 -2
  9. package/schematics/utils/lib-details.ts +2 -2
  10. package/src/diagram/diagram.component.d.ts +2 -1
  11. package/styles/bootstrap-dark.css +22 -11
  12. package/styles/bootstrap.css +22 -11
  13. package/styles/bootstrap4.css +22 -11
  14. package/styles/bootstrap5-dark.css +24 -13
  15. package/styles/bootstrap5.css +24 -13
  16. package/styles/diagram/_bootstrap-dark-definition.scss +1 -1
  17. package/styles/diagram/_bootstrap-definition.scss +1 -1
  18. package/styles/diagram/_bootstrap4-definition.scss +1 -1
  19. package/styles/diagram/_bootstrap5-definition.scss +1 -1
  20. package/styles/diagram/_definition.scss +1 -1
  21. package/styles/diagram/_fluent-definition.scss +1 -1
  22. package/styles/diagram/_tailwind-definition.scss +1 -1
  23. package/styles/diagram/_theme.scss +39 -24
  24. package/styles/diagram/bootstrap-dark.css +22 -11
  25. package/styles/diagram/bootstrap.css +22 -11
  26. package/styles/diagram/bootstrap4.css +22 -11
  27. package/styles/diagram/bootstrap5-dark.css +24 -13
  28. package/styles/diagram/bootstrap5.css +24 -13
  29. package/styles/diagram/fabric-dark.css +22 -11
  30. package/styles/diagram/fabric.css +22 -11
  31. package/styles/diagram/fluent-dark.css +24 -13
  32. package/styles/diagram/fluent.css +24 -13
  33. package/styles/diagram/highcontrast-light.css +22 -11
  34. package/styles/diagram/highcontrast.css +22 -11
  35. package/styles/diagram/material-dark.css +22 -11
  36. package/styles/diagram/material.css +22 -11
  37. package/styles/diagram/tailwind-dark.css +23 -12
  38. package/styles/diagram/tailwind.css +23 -12
  39. package/styles/fabric-dark.css +22 -11
  40. package/styles/fabric.css +22 -11
  41. package/styles/fluent-dark.css +24 -13
  42. package/styles/fluent.css +24 -13
  43. package/styles/highcontrast-light.css +22 -11
  44. package/styles/highcontrast.css +22 -11
  45. package/styles/material-dark.css +22 -11
  46. package/styles/material.css +22 -11
  47. package/styles/tailwind-dark.css +23 -12
  48. package/styles/tailwind.css +23 -12
  49. package/styles/diagram/_material3-definition.scss +0 -103
@@ -9,7 +9,7 @@ import { ConnectorsDirective } from './connectors.directive';
9
9
  import { NodesDirective } from './nodes.directive';
10
10
  import * as i0 from "@angular/core";
11
11
  export const inputs = ['addInfo', 'annotationTemplate', 'backgroundColor', 'bridgeDirection', 'commandManager', 'connectorDefaults', 'connectors', 'constraints', 'contextMenuSettings', 'customCursor', 'dataSourceSettings', 'diagramSettings', 'drawingObject', 'enableConnectorSplit', 'enablePersistence', 'enableRtl', 'getConnectorDefaults', 'getCustomCursor', 'getCustomProperty', 'getCustomTool', 'getDescription', 'getNodeDefaults', 'height', 'historyManager', 'layers', 'layout', 'locale', 'mode', 'nodeDefaults', 'nodeTemplate', 'nodes', 'pageSettings', 'rulerSettings', 'scrollSettings', 'segmentThumbShape', 'selectedItems', 'serializationSettings', 'setNodeTemplate', 'snapSettings', 'tool', 'tooltip', 'updateSelection', 'userHandleTemplate', 'width'];
12
- export const outputs = ['animationComplete', 'click', 'collectionChange', 'commandExecute', 'connectionChange', 'contextMenuBeforeItemRender', 'contextMenuClick', 'contextMenuOpen', 'created', 'dataLoaded', 'doubleClick', 'dragEnter', 'dragLeave', 'dragOver', 'drop', 'expandStateChange', 'fixedUserHandleClick', 'historyChange', 'historyStateChange', 'keyDown', 'keyUp', 'mouseEnter', 'mouseLeave', 'mouseOver', 'mouseWheel', 'onImageLoad', 'onUserHandleMouseDown', 'onUserHandleMouseEnter', 'onUserHandleMouseLeave', 'onUserHandleMouseUp', 'positionChange', 'propertyChange', 'rotateChange', 'scrollChange', 'segmentCollectionChange', 'selectionChange', 'sizeChange', 'sourcePointChange', 'targetPointChange', 'textEdit', 'elementDraw'];
12
+ export const outputs = ['animationComplete', 'click', 'collectionChange', 'commandExecute', 'connectionChange', 'contextMenuBeforeItemRender', 'contextMenuClick', 'contextMenuOpen', 'created', 'dataLoaded', 'doubleClick', 'dragEnter', 'dragLeave', 'dragOver', 'drop', 'expandStateChange', 'fixedUserHandleClick', 'historyChange', 'historyStateChange', 'keyDown', 'keyUp', 'mouseEnter', 'mouseLeave', 'mouseOver', 'mouseWheel', 'onImageLoad', 'onUserHandleMouseDown', 'onUserHandleMouseEnter', 'onUserHandleMouseLeave', 'onUserHandleMouseUp', 'positionChange', 'propertyChange', 'rotateChange', 'scrollChange', 'segmentChange', 'segmentCollectionChange', 'selectionChange', 'sizeChange', 'sourcePointChange', 'targetPointChange', 'textEdit', 'elementDraw'];
13
13
  export const twoWays = [''];
14
14
  /**
15
15
  * Diagram Component
@@ -175,7 +175,7 @@ let DiagramComponent = class DiagramComponent extends Diagram {
175
175
  }
176
176
  };
177
177
  DiagramComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DiagramComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
178
- DiagramComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DiagramComponent, selector: "ejs-diagram", inputs: { addInfo: "addInfo", annotationTemplate: "annotationTemplate", backgroundColor: "backgroundColor", bridgeDirection: "bridgeDirection", commandManager: "commandManager", connectorDefaults: "connectorDefaults", connectors: "connectors", constraints: "constraints", contextMenuSettings: "contextMenuSettings", customCursor: "customCursor", dataSourceSettings: "dataSourceSettings", diagramSettings: "diagramSettings", drawingObject: "drawingObject", enableConnectorSplit: "enableConnectorSplit", enablePersistence: "enablePersistence", enableRtl: "enableRtl", getConnectorDefaults: "getConnectorDefaults", getCustomCursor: "getCustomCursor", getCustomProperty: "getCustomProperty", getCustomTool: "getCustomTool", getDescription: "getDescription", getNodeDefaults: "getNodeDefaults", height: "height", historyManager: "historyManager", layers: "layers", layout: "layout", locale: "locale", mode: "mode", nodeDefaults: "nodeDefaults", nodeTemplate: "nodeTemplate", nodes: "nodes", pageSettings: "pageSettings", rulerSettings: "rulerSettings", scrollSettings: "scrollSettings", segmentThumbShape: "segmentThumbShape", selectedItems: "selectedItems", serializationSettings: "serializationSettings", setNodeTemplate: "setNodeTemplate", snapSettings: "snapSettings", tool: "tool", tooltip: "tooltip", updateSelection: "updateSelection", userHandleTemplate: "userHandleTemplate", width: "width" }, outputs: { animationComplete: "animationComplete", click: "click", collectionChange: "collectionChange", commandExecute: "commandExecute", connectionChange: "connectionChange", contextMenuBeforeItemRender: "contextMenuBeforeItemRender", contextMenuClick: "contextMenuClick", contextMenuOpen: "contextMenuOpen", created: "created", dataLoaded: "dataLoaded", doubleClick: "doubleClick", dragEnter: "dragEnter", dragLeave: "dragLeave", dragOver: "dragOver", drop: "drop", expandStateChange: "expandStateChange", fixedUserHandleClick: "fixedUserHandleClick", historyChange: "historyChange", historyStateChange: "historyStateChange", keyDown: "keyDown", keyUp: "keyUp", mouseEnter: "mouseEnter", mouseLeave: "mouseLeave", mouseOver: "mouseOver", mouseWheel: "mouseWheel", onImageLoad: "onImageLoad", onUserHandleMouseDown: "onUserHandleMouseDown", onUserHandleMouseEnter: "onUserHandleMouseEnter", onUserHandleMouseLeave: "onUserHandleMouseLeave", onUserHandleMouseUp: "onUserHandleMouseUp", positionChange: "positionChange", propertyChange: "propertyChange", rotateChange: "rotateChange", scrollChange: "scrollChange", segmentCollectionChange: "segmentCollectionChange", selectionChange: "selectionChange", sizeChange: "sizeChange", sourcePointChange: "sourcePointChange", targetPointChange: "targetPointChange", textEdit: "textEdit", elementDraw: "elementDraw" }, queries: [{ propertyName: "annotationTemplate", first: true, predicate: ["annotationTemplate"], descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: ["nodeTemplate"], descendants: true }, { propertyName: "userHandleTemplate", first: true, predicate: ["userHandleTemplate"], descendants: true }, { propertyName: "childLayers", first: true, predicate: LayersDirective, descendants: true }, { propertyName: "childCustomCursor", first: true, predicate: CustomCursorsDirective, descendants: true }, { propertyName: "childConnectors", first: true, predicate: ConnectorsDirective, descendants: true }, { propertyName: "childNodes", first: true, predicate: NodesDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
178
+ DiagramComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DiagramComponent, selector: "ejs-diagram", inputs: { addInfo: "addInfo", annotationTemplate: "annotationTemplate", backgroundColor: "backgroundColor", bridgeDirection: "bridgeDirection", commandManager: "commandManager", connectorDefaults: "connectorDefaults", connectors: "connectors", constraints: "constraints", contextMenuSettings: "contextMenuSettings", customCursor: "customCursor", dataSourceSettings: "dataSourceSettings", diagramSettings: "diagramSettings", drawingObject: "drawingObject", enableConnectorSplit: "enableConnectorSplit", enablePersistence: "enablePersistence", enableRtl: "enableRtl", getConnectorDefaults: "getConnectorDefaults", getCustomCursor: "getCustomCursor", getCustomProperty: "getCustomProperty", getCustomTool: "getCustomTool", getDescription: "getDescription", getNodeDefaults: "getNodeDefaults", height: "height", historyManager: "historyManager", layers: "layers", layout: "layout", locale: "locale", mode: "mode", nodeDefaults: "nodeDefaults", nodeTemplate: "nodeTemplate", nodes: "nodes", pageSettings: "pageSettings", rulerSettings: "rulerSettings", scrollSettings: "scrollSettings", segmentThumbShape: "segmentThumbShape", selectedItems: "selectedItems", serializationSettings: "serializationSettings", setNodeTemplate: "setNodeTemplate", snapSettings: "snapSettings", tool: "tool", tooltip: "tooltip", updateSelection: "updateSelection", userHandleTemplate: "userHandleTemplate", width: "width" }, outputs: { animationComplete: "animationComplete", click: "click", collectionChange: "collectionChange", commandExecute: "commandExecute", connectionChange: "connectionChange", contextMenuBeforeItemRender: "contextMenuBeforeItemRender", contextMenuClick: "contextMenuClick", contextMenuOpen: "contextMenuOpen", created: "created", dataLoaded: "dataLoaded", doubleClick: "doubleClick", dragEnter: "dragEnter", dragLeave: "dragLeave", dragOver: "dragOver", drop: "drop", expandStateChange: "expandStateChange", fixedUserHandleClick: "fixedUserHandleClick", historyChange: "historyChange", historyStateChange: "historyStateChange", keyDown: "keyDown", keyUp: "keyUp", mouseEnter: "mouseEnter", mouseLeave: "mouseLeave", mouseOver: "mouseOver", mouseWheel: "mouseWheel", onImageLoad: "onImageLoad", onUserHandleMouseDown: "onUserHandleMouseDown", onUserHandleMouseEnter: "onUserHandleMouseEnter", onUserHandleMouseLeave: "onUserHandleMouseLeave", onUserHandleMouseUp: "onUserHandleMouseUp", positionChange: "positionChange", propertyChange: "propertyChange", rotateChange: "rotateChange", scrollChange: "scrollChange", segmentChange: "segmentChange", segmentCollectionChange: "segmentCollectionChange", selectionChange: "selectionChange", sizeChange: "sizeChange", sourcePointChange: "sourcePointChange", targetPointChange: "targetPointChange", textEdit: "textEdit", elementDraw: "elementDraw" }, queries: [{ propertyName: "annotationTemplate", first: true, predicate: ["annotationTemplate"], descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: ["nodeTemplate"], descendants: true }, { propertyName: "userHandleTemplate", first: true, predicate: ["userHandleTemplate"], descendants: true }, { propertyName: "childLayers", first: true, predicate: LayersDirective, descendants: true }, { propertyName: "childCustomCursor", first: true, predicate: CustomCursorsDirective, descendants: true }, { propertyName: "childConnectors", first: true, predicate: ConnectorsDirective, descendants: true }, { propertyName: "childNodes", first: true, predicate: NodesDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
179
179
  __decorate([
180
180
  Template()
181
181
  ], DiagramComponent.prototype, "annotationTemplate", void 0);
@@ -214,4 +214,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
214
214
  type: ContentChild,
215
215
  args: ['userHandleTemplate']
216
216
  }] } });
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlhZ3JhbS9kaWFncmFtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZ0MsdUJBQXVCLEVBQWlELFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SixPQUFPLEVBQUUsYUFBYSxFQUErQixlQUFlLEVBQTBCLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdJLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFbkQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFhLENBQUMsU0FBUyxFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLGlCQUFpQixFQUFDLGdCQUFnQixFQUFDLG1CQUFtQixFQUFDLFlBQVksRUFBQyxhQUFhLEVBQUMscUJBQXFCLEVBQUMsY0FBYyxFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLGVBQWUsRUFBQyxzQkFBc0IsRUFBQyxtQkFBbUIsRUFBQyxXQUFXLEVBQUMsc0JBQXNCLEVBQUMsaUJBQWlCLEVBQUMsbUJBQW1CLEVBQUMsZUFBZSxFQUFDLGdCQUFnQixFQUFDLGlCQUFpQixFQUFDLFFBQVEsRUFBQyxnQkFBZ0IsRUFBQyxRQUFRLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxNQUFNLEVBQUMsY0FBYyxFQUFDLGNBQWMsRUFB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QkFDTCxXQUFXLEVBQUUsSUFBSSxZQUFZLENBQUMsZUFBZSxDQUFDO3dCQUM5QyxpQkFBaUIsRUFBRSxJQUFJLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQzt3QkFDM0QsZUFBZSxFQUFFLElBQUksWUFBWSxDQUFDLG1CQUFtQixDQUFDO3dCQUN0RCxVQUFVLEVBQUUsSUFBSSxZQUFZLENBQUMsY0FBYyxDQUFDO3FCQUMvQztpQkFDSjsrS0F5RFUsa0JBQWtCO3NCQUZ4QixZQUFZO3VCQUFDLG9CQUFvQjtnQkFTM0IsWUFBWTtzQkFGbEIsWUFBWTt1QkFBQyxjQUFjO2dCQVNyQixrQkFBa0I7c0JBRnhCLFlBQVk7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgUXVlcnlMaXN0LCBSZW5kZXJlcjIsIEluamVjdG9yLCBWYWx1ZVByb3ZpZGVyLCBDb250ZW50Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudEJhc2UsIElDb21wb25lbnRCYXNlLCBhcHBseU1peGlucywgQ29tcG9uZW50TWl4aW5zLCBQcm9wZXJ0eUNvbGxlY3Rpb25JbmZvLCBzZXRWYWx1ZSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWJhc2UnO1xuaW1wb3J0IHsgRGlhZ3JhbSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1kaWFncmFtcyc7XG5pbXBvcnQgeyBUZW1wbGF0ZSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWJhc2UnO1xuaW1wb3J0IHsgTGF5ZXJzRGlyZWN0aXZlIH0gZnJvbSAnLi9sYXllcnMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEN1c3RvbUN1cnNvcnNEaXJlY3RpdmUgfSBmcm9tICcuL2N1c3RvbWN1cnNvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29ubmVjdG9yc0RpcmVjdGl2ZSB9IGZyb20gJy4vY29ubmVjdG9ycy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTm9kZXNEaXJlY3RpdmUgfSBmcm9tICcuL25vZGVzLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBpbnB1dHM6IHN0cmluZ1tdID0gWydhZGRJbmZvJywnYW5ub3RhdGlvblRlbXBsYXRlJywnYmFja2dyb3VuZENvbG9yJywnYnJpZGdlRGlyZWN0aW9uJywnY29tbWFuZE1hbmFnZXInLCdjb25uZWN0b3JEZWZhdWx0cycsJ2Nvbm5lY3RvcnMnLCdjb25zdHJhaW50cycsJ2NvbnRleHRNZW51U2V0dGluZ3MnLCdjdXN0b21DdXJzb3InLCdkYXRhU291cmNlU2V0dGluZ3MnLCdkaWFncmFtU2V0dGluZ3MnLCdkcmF3aW5nT2JqZWN0JywnZW5hYmxlQ29ubmVjdG9yU3BsaXQnLCdlbmFibGVQZXJzaXN0ZW5jZScsJ2VuYWJsZVJ0bCcsJ2dldENvbm5lY3RvckRlZmF1bHRzJywnZ2V0Q3VzdG9tQ3Vyc29yJywnZ2V0Q3VzdG9tUHJvcGVydHknLCdnZXRDdXN0b21Ub29sJywnZ2V0RGVzY3JpcHRpb24nLCdnZXROb2RlRGVmYXVsdHMnLCdoZWlnaHQnLCdoaXN0b3J5TWFuYWdlcicsJ2xheWVycycsJ2xheW91dCcsJ2xvY2FsZScsJ21vZGUnLCdub2RlRGVmYXVsdHMnLCdub2RlVGVtcGxhdGUnLCdub2RlcycsJ3BhZ2VTZXR0aW5ncycsJ3J1bGVyU2V0dGluZ3MnLCdzY3JvbGxTZXR0aW5ncycsJ3NlZ21lbnRUaHVtYlNoYXBlJywnc2VsZWN0ZWRJdGVtcycsJ3NlcmlhbGl6YXRpb25TZXR0aW5ncycsJ3NldE5vZGVUZW1wbGF0ZScsJ3NuYXBTZXR0aW5ncycsJ3Rvb2wnLCd0b29sdGlwJywndXBkYXRlU2VsZWN0aW9uJywndXNlckhhbmRsZVRlbXBsYXRlJywnd2lkdGgnXTtcbmV4cG9ydCBjb25zdCBvdXRwdXRzOiBzdHJpbmdbXSA9IFsnYW5pbWF0aW9uQ29tcGxldGUnLCdjbGljaycsJ2NvbGxlY3Rpb25DaGFuZ2UnLCdjb21tYW5kRXhlY3V0ZScsJ2Nvbm5lY3Rpb25DaGFuZ2UnLCdjb250ZXh0TWVudUJlZm9yZUl0ZW1SZW5kZXInLCdjb250ZXh0TWVudUNsaWNrJywnY29udGV4dE1lbnVPcGVuJywnY3JlYXRlZCcsJ2RhdGFMb2FkZWQnLCdkb3VibGVDbGljaycsJ2RyYWdFbnRlcicsJ2RyYWdMZWF2ZScsJ2RyYWdPdmVyJywnZHJvcCcsJ2V4cGFuZFN0YXRlQ2hhbmdlJywnZml4ZWRVc2VySGFuZGxlQ2xpY2snLCdoaXN0b3J5Q2hhbmdlJywnaGlzdG9yeVN0YXRlQ2hhbmdlJywna2V5RG93bicsJ2tleVVwJywnbW91c2VFbnRlcicsJ21vdXNlTGVhdmUnLCdtb3VzZU92ZXInLCdtb3VzZVdoZWVsJywnb25JbWFnZUxvYWQnLCdvblVzZXJIYW5kbGVNb3VzZURvd24nLCdvblVzZXJIYW5kbGVNb3VzZUVudGVyJywnb25Vc2VySGFuZGxlTW91c2VMZWF2ZScsJ29uVXNlckhhbmRsZU1vdXNlVXAnLCdwb3NpdGlvbkNoYW5nZScsJ3Byb3BlcnR5Q2hhbmdlJywncm90YXRlQ2hhbmdlJywnc2Nyb2xsQ2hhbmdlJywnc2VnbWVudENvbGxlY3Rpb25DaGFuZ2UnLCdzZWxlY3Rpb25DaGFuZ2UnLCdzaXplQ2hhbmdlJywnc291cmNlUG9pbnRDaGFuZ2UnLCd0YXJnZXRQb2ludENoYW5nZScsJ3RleHRFZGl0JywnZWxlbWVudERyYXcnXTtcbmV4cG9ydCBjb25zdCB0d29XYXlzOiBzdHJpbmdbXSA9IFsnJ107XG5cbi8qKlxuICogRGlhZ3JhbSBDb21wb25lbnRcbiAqIGBgYGh0bWxcbiAqIDxlai1kaWFncmFtPjwvZWotZGlhZ3JhbT5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Vqcy1kaWFncmFtJyxcbiAgICBpbnB1dHM6IGlucHV0cyxcbiAgICBvdXRwdXRzOiBvdXRwdXRzLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBxdWVyaWVzOiB7XG4gICAgICAgIGNoaWxkTGF5ZXJzOiBuZXcgQ29udGVudENoaWxkKExheWVyc0RpcmVjdGl2ZSksIFxuICAgICAgICBjaGlsZEN1c3RvbUN1cnNvcjogbmV3IENvbnRlbnRDaGlsZChDdXN0b21DdXJzb3JzRGlyZWN0aXZlKSwgXG4gICAgICAgIGNoaWxkQ29ubmVjdG9yczogbmV3IENvbnRlbnRDaGlsZChDb25uZWN0b3JzRGlyZWN0aXZlKSwgXG4gICAgICAgIGNoaWxkTm9kZXM6IG5ldyBDb250ZW50Q2hpbGQoTm9kZXNEaXJlY3RpdmUpXG4gICAgfVxufSlcbkBDb21wb25lbnRNaXhpbnMoW0NvbXBvbmVudEJhc2VdKVxuZXhwb3J0IGNsYXNzIERpYWdyYW1Db21wb25lbnQgZXh0ZW5kcyBEaWFncmFtIGltcGxlbWVudHMgSUNvbXBvbmVudEJhc2Uge1xuICAgIHB1YmxpYyBjb250ZXh0IDogYW55O1xuICAgIHB1YmxpYyB0YWdPYmplY3RzOiBhbnk7XG5cdGFuaW1hdGlvbkNvbXBsZXRlOiBhbnk7XG5cdGNsaWNrOiBhbnk7XG5cdGNvbGxlY3Rpb25DaGFuZ2U6IGFueTtcblx0Y29tbWFuZEV4ZWN1dGU6IGFueTtcblx0Y29ubmVjdGlvbkNoYW5nZTogYW55O1xuXHRjb250ZXh0TWVudUJlZm9yZUl0ZW1SZW5kZXI6IGFueTtcblx0Y29udGV4dE1lbnVDbGljazogYW55O1xuXHRjb250ZXh0TWVudU9wZW46IGFueTtcblx0Y3JlYXRlZDogYW55O1xuXHRkYXRhTG9hZGVkOiBhbnk7XG5cdGRvdWJsZUNsaWNrOiBhbnk7XG5cdGRyYWdFbnRlcjogYW55O1xuXHRkcmFnTGVhdmU6IGFueTtcblx0ZHJhZ092ZXI6IGFueTtcblx0ZHJvcDogYW55O1xuXHRleHBhbmRTdGF0ZUNoYW5nZTogYW55O1xuXHRmaXhlZFVzZXJIYW5kbGVDbGljazogYW55O1xuXHRoaXN0b3J5Q2hhbmdlOiBhbnk7XG5cdGhpc3RvcnlTdGF0ZUNoYW5nZTogYW55O1xuXHRrZXlEb3duOiBhbnk7XG5cdGtleVVwOiBhbnk7XG5cdG1vdXNlRW50ZXI6IGFueTtcblx0bW91c2VMZWF2ZTogYW55O1xuXHRtb3VzZU92ZXI6IGFueTtcblx0bW91c2VXaGVlbDogYW55O1xuXHRvbkltYWdlTG9hZDogYW55O1xuXHRvblVzZXJIYW5kbGVNb3VzZURvd246IGFueTtcblx0b25Vc2VySGFuZGxlTW91c2VFbnRlcjogYW55O1xuXHRvblVzZXJIYW5kbGVNb3VzZUxlYXZlOiBhbnk7XG5cdG9uVXNlckhhbmRsZU1vdXNlVXA6IGFueTtcblx0cG9zaXRpb25DaGFuZ2U6IGFueTtcblx0cHJvcGVydHlDaGFuZ2U6IGFueTtcblx0cm90YXRlQ2hhbmdlOiBhbnk7XG5cdHNjcm9sbENoYW5nZTogYW55O1xuXHRzZWdtZW50Q29sbGVjdGlvbkNoYW5nZTogYW55O1xuXHRzZWxlY3Rpb25DaGFuZ2U6IGFueTtcblx0c2l6ZUNoYW5nZTogYW55O1xuXHRzb3VyY2VQb2ludENoYW5nZTogYW55O1xuXHR0YXJnZXRQb2ludENoYW5nZTogYW55O1xuXHR0ZXh0RWRpdDogYW55O1xuXHRwdWJsaWMgZWxlbWVudERyYXc6IGFueTtcbiAgICBwdWJsaWMgY2hpbGRMYXllcnM6IFF1ZXJ5TGlzdDxMYXllcnNEaXJlY3RpdmU+O1xuICAgIHB1YmxpYyBjaGlsZEN1c3RvbUN1cnNvcjogUXVlcnlMaXN0PEN1c3RvbUN1cnNvcnNEaXJlY3RpdmU+O1xuICAgIHB1YmxpYyBjaGlsZENvbm5lY3RvcnM6IFF1ZXJ5TGlzdDxDb25uZWN0b3JzRGlyZWN0aXZlPjtcbiAgICBwdWJsaWMgY2hpbGROb2RlczogUXVlcnlMaXN0PE5vZGVzRGlyZWN0aXZlPjtcbiAgICBwdWJsaWMgdGFnczogc3RyaW5nW10gPSBbJ2xheWVycycsICdjdXN0b21DdXJzb3InLCAnY29ubmVjdG9ycycsICdub2RlcyddO1xuICAgIC8qKiBcbiAgICAgKiBDdXN0b21pemVzIHRoZSBhbm5vdGF0aW9uIHRlbXBsYXRlXG4gICAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnYW5ub3RhdGlvblRlbXBsYXRlJylcbiAgICBAVGVtcGxhdGUoKVxuICAgIHB1YmxpYyBhbm5vdGF0aW9uVGVtcGxhdGU6IGFueTtcbiAgICAvKiogXG4gICAgICogQ3VzdG9taXplcyB0aGUgbm9kZSB0ZW1wbGF0ZVxuICAgICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ25vZGVUZW1wbGF0ZScpXG4gICAgQFRlbXBsYXRlKClcbiAgICBwdWJsaWMgbm9kZVRlbXBsYXRlOiBhbnk7XG4gICAgLyoqIFxuICAgICAqIFRoaXMgcHJvcGVydHkgcmVwcmVzZW50cyB0aGUgdGVtcGxhdGUgY29udGVudCBvZiBhIHVzZXIgaGFuZGxlLiBUaGUgdXNlciBjYW4gZGVmaW5lIGFueSBIVE1MIGVsZW1lbnQgYXMgYSB0ZW1wbGF0ZS5cbiAgICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCd1c2VySGFuZGxlVGVtcGxhdGUnKVxuICAgIEBUZW1wbGF0ZSgpXG4gICAgcHVibGljIHVzZXJIYW5kbGVUZW1wbGF0ZTogYW55O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ0VsZTogRWxlbWVudFJlZiwgcHJpdmF0ZSBzcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOlZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZWxlbWVudCA9IHRoaXMubmdFbGUubmF0aXZlRWxlbWVudDtcbiAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMgPSB0aGlzLmluamVjdGVkTW9kdWxlcyB8fCBbXTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zSGllcmFyY2hpY2FsVHJlZScpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNNaW5kTWFwJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc1JhZGlhbFRyZWUnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zQ29tcGxleEhpZXJhcmNoaWNhbFRyZWUnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zRGF0YUJpbmRpbmcnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zU25hcHBpbmcnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zUHJpbnRBbmRFeHBvcnQnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zQnBtbkRpYWdyYW1zJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc1N5bW1ldHJpY0xheW91dCcpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNDb25uZWN0b3JCcmlkZ2luZycpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNVbmRvUmVkbycpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNMYXlvdXRBbmltYXRpb24nKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zRGlhZ3JhbUNvbnRleHRNZW51Jyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0xpbmVSb3V0aW5nJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0Nvbm5lY3RvckVkaXRpbmcnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zQmxhem9yVG9vbHRpcCcpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNMaW5lRGlzdHJpYnV0aW9uJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHJcbiAgICAgICAgdGhpcy5yZWdpc3RlckV2ZW50cyhvdXRwdXRzKTtcbiAgICAgICAgdGhpcy5hZGRUd29XYXkuY2FsbCh0aGlzLCB0d29XYXlzKTtcbiAgICAgICAgc2V0VmFsdWUoJ2N1cnJlbnRJbnN0YW5jZScsIHRoaXMsIHRoaXMudmlld0NvbnRhaW5lclJlZik7XG4gICAgICAgIHRoaXMuY29udGV4dCAgPSBuZXcgQ29tcG9uZW50QmFzZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb250ZXh0Lm5nT25Jbml0KHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGV4dC5uZ0FmdGVyVmlld0luaXQodGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQubmdPbkRlc3Ryb3kodGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50YWdPYmplY3RzWzBdLmluc3RhbmNlID0gdGhpcy5jaGlsZExheWVycztcbiAgICAgICAgXG5cdCAgICBpZiAodGhpcy5jaGlsZEN1c3RvbUN1cnNvcikge1xuICAgICAgICAgICAgdGhpcy50YWdPYmplY3RzWzFdLmluc3RhbmNlID0gdGhpcy5jaGlsZEN1c3RvbUN1cnNvcjtcbiAgICAgICAgfVxuICAgICAgICBcblx0ICAgIGlmICh0aGlzLmNoaWxkQ29ubmVjdG9ycykge1xuICAgICAgICAgICAgdGhpcy50YWdPYmplY3RzWzJdLmluc3RhbmNlID0gdGhpcy5jaGlsZENvbm5lY3RvcnM7XG4gICAgICAgIH1cbiAgICAgICAgXG5cdCAgICBpZiAodGhpcy5jaGlsZE5vZGVzKSB7XG4gICAgICAgICAgICB0aGlzLnRhZ09iamVjdHNbM10uaW5zdGFuY2UgPSB0aGlzLmNoaWxkTm9kZXM7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb250ZXh0Lm5nQWZ0ZXJDb250ZW50Q2hlY2tlZCh0aGlzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJFdmVudHM6IChldmVudExpc3Q6IHN0cmluZ1tdKSA9PiB2b2lkO1xuICAgIHB1YmxpYyBhZGRUd29XYXk6IChwcm9wTGlzdDogc3RyaW5nW10pID0+IHZvaWQ7XG59XG5cbiJdfQ==
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlhZ3JhbS9kaWFncmFtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZ0MsdUJBQXVCLEVBQWlELFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SixPQUFPLEVBQUUsYUFBYSxFQUErQixlQUFlLEVBQTBCLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdJLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFbkQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFhLENBQUMsU0FBUyxFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLGlCQUFpQixFQUFDLGdCQUFnQixFQUFDLG1CQUFtQixFQUFDLFlBQVksRUFBQyxhQUFhLEVBQUMscUJBQXFCLEVBQUMsY0FBYyxFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLGVBQWUsRUFBQyxzQkFBc0IsRUFBQyxtQkFBbUIsRUFBQyxXQUFXLEVBQUMsc0JBQXNCLEVBQUMsaUJBQWlCLEVBQUMsbUJBQW1CLEVBQUMsZUFBZSxFQUFDLGdCQUFnQixFQUFDLGlCQUFpQixFQUFDLFFBQVEsRUFBQyxnQkFBZ0IsRUFBQyxRQUFRLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxNQUFNLEVBQUMsY0FBYyxFQUFDLGNBQWMsRUFB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QUFPLEVBQUU7d0JBQ0wsV0FBVyxFQUFFLElBQUksWUFBWSxDQUFDLGVBQWUsQ0FBQzt3QkFDOUMsaUJBQWlCLEVBQUUsSUFBSSxZQUFZLENBQUMsc0JBQXNCLENBQUM7d0JBQzNELGVBQWUsRUFBRSxJQUFJLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQzt3QkFDdEQsVUFBVSxFQUFFLElBQUksWUFBWSxDQUFDLGNBQWMsQ0FBQztxQkFDL0M7aUJBQ0o7K0tBMERVLGtCQUFrQjtzQkFGeEIsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBUzNCLFlBQVk7c0JBRmxCLFlBQVk7dUJBQUMsY0FBYztnQkFTckIsa0JBQWtCO3NCQUZ4QixZQUFZO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgVmlld0NvbnRhaW5lclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFF1ZXJ5TGlzdCwgUmVuZGVyZXIyLCBJbmplY3RvciwgVmFsdWVQcm92aWRlciwgQ29udGVudENoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRCYXNlLCBJQ29tcG9uZW50QmFzZSwgYXBwbHlNaXhpbnMsIENvbXBvbmVudE1peGlucywgUHJvcGVydHlDb2xsZWN0aW9uSW5mbywgc2V0VmFsdWUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1iYXNlJztcbmltcG9ydCB7IERpYWdyYW0gfSBmcm9tICdAc3luY2Z1c2lvbi9lajItZGlhZ3JhbXMnO1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1iYXNlJztcbmltcG9ydCB7IExheWVyc0RpcmVjdGl2ZSB9IGZyb20gJy4vbGF5ZXJzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDdXN0b21DdXJzb3JzRGlyZWN0aXZlIH0gZnJvbSAnLi9jdXN0b21jdXJzb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbm5lY3RvcnNEaXJlY3RpdmUgfSBmcm9tICcuL2Nvbm5lY3RvcnMuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5vZGVzRGlyZWN0aXZlIH0gZnJvbSAnLi9ub2Rlcy5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY29uc3QgaW5wdXRzOiBzdHJpbmdbXSA9IFsnYWRkSW5mbycsJ2Fubm90YXRpb25UZW1wbGF0ZScsJ2JhY2tncm91bmRDb2xvcicsJ2JyaWRnZURpcmVjdGlvbicsJ2NvbW1hbmRNYW5hZ2VyJywnY29ubmVjdG9yRGVmYXVsdHMnLCdjb25uZWN0b3JzJywnY29uc3RyYWludHMnLCdjb250ZXh0TWVudVNldHRpbmdzJywnY3VzdG9tQ3Vyc29yJywnZGF0YVNvdXJjZVNldHRpbmdzJywnZGlhZ3JhbVNldHRpbmdzJywnZHJhd2luZ09iamVjdCcsJ2VuYWJsZUNvbm5lY3RvclNwbGl0JywnZW5hYmxlUGVyc2lzdGVuY2UnLCdlbmFibGVSdGwnLCdnZXRDb25uZWN0b3JEZWZhdWx0cycsJ2dldEN1c3RvbUN1cnNvcicsJ2dldEN1c3RvbVByb3BlcnR5JywnZ2V0Q3VzdG9tVG9vbCcsJ2dldERlc2NyaXB0aW9uJywnZ2V0Tm9kZURlZmF1bHRzJywnaGVpZ2h0JywnaGlzdG9yeU1hbmFnZXInLCdsYXllcnMnLCdsYXlvdXQnLCdsb2NhbGUnLCdtb2RlJywnbm9kZURlZmF1bHRzJywnbm9kZVRlbXBsYXRlJywnbm9kZXMnLCdwYWdlU2V0dGluZ3MnLCdydWxlclNldHRpbmdzJywnc2Nyb2xsU2V0dGluZ3MnLCdzZWdtZW50VGh1bWJTaGFwZScsJ3NlbGVjdGVkSXRlbXMnLCdzZXJpYWxpemF0aW9uU2V0dGluZ3MnLCdzZXROb2RlVGVtcGxhdGUnLCdzbmFwU2V0dGluZ3MnLCd0b29sJywndG9vbHRpcCcsJ3VwZGF0ZVNlbGVjdGlvbicsJ3VzZXJIYW5kbGVUZW1wbGF0ZScsJ3dpZHRoJ107XG5leHBvcnQgY29uc3Qgb3V0cHV0czogc3RyaW5nW10gPSBbJ2FuaW1hdGlvbkNvbXBsZXRlJywnY2xpY2snLCdjb2xsZWN0aW9uQ2hhbmdlJywnY29tbWFuZEV4ZWN1dGUnLCdjb25uZWN0aW9uQ2hhbmdlJywnY29udGV4dE1lbnVCZWZvcmVJdGVtUmVuZGVyJywnY29udGV4dE1lbnVDbGljaycsJ2NvbnRleHRNZW51T3BlbicsJ2NyZWF0ZWQnLCdkYXRhTG9hZGVkJywnZG91YmxlQ2xpY2snLCdkcmFnRW50ZXInLCdkcmFnTGVhdmUnLCdkcmFnT3ZlcicsJ2Ryb3AnLCdleHBhbmRTdGF0ZUNoYW5nZScsJ2ZpeGVkVXNlckhhbmRsZUNsaWNrJywnaGlzdG9yeUNoYW5nZScsJ2hpc3RvcnlTdGF0ZUNoYW5nZScsJ2tleURvd24nLCdrZXlVcCcsJ21vdXNlRW50ZXInLCdtb3VzZUxlYXZlJywnbW91c2VPdmVyJywnbW91c2VXaGVlbCcsJ29uSW1hZ2VMb2FkJywnb25Vc2VySGFuZGxlTW91c2VEb3duJywnb25Vc2VySGFuZGxlTW91c2VFbnRlcicsJ29uVXNlckhhbmRsZU1vdXNlTGVhdmUnLCdvblVzZXJIYW5kbGVNb3VzZVVwJywncG9zaXRpb25DaGFuZ2UnLCdwcm9wZXJ0eUNoYW5nZScsJ3JvdGF0ZUNoYW5nZScsJ3Njcm9sbENoYW5nZScsJ3NlZ21lbnRDaGFuZ2UnLCdzZWdtZW50Q29sbGVjdGlvbkNoYW5nZScsJ3NlbGVjdGlvbkNoYW5nZScsJ3NpemVDaGFuZ2UnLCdzb3VyY2VQb2ludENoYW5nZScsJ3RhcmdldFBvaW50Q2hhbmdlJywndGV4dEVkaXQnLCdlbGVtZW50RHJhdyddO1xuZXhwb3J0IGNvbnN0IHR3b1dheXM6IHN0cmluZ1tdID0gWycnXTtcblxuLyoqXG4gKiBEaWFncmFtIENvbXBvbmVudFxuICogYGBgaHRtbFxuICogPGVqLWRpYWdyYW0+PC9lai1kaWFncmFtPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWpzLWRpYWdyYW0nLFxuICAgIGlucHV0czogaW5wdXRzLFxuICAgIG91dHB1dHM6IG91dHB1dHMsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgICAgY2hpbGRMYXllcnM6IG5ldyBDb250ZW50Q2hpbGQoTGF5ZXJzRGlyZWN0aXZlKSwgXG4gICAgICAgIGNoaWxkQ3VzdG9tQ3Vyc29yOiBuZXcgQ29udGVudENoaWxkKEN1c3RvbUN1cnNvcnNEaXJlY3RpdmUpLCBcbiAgICAgICAgY2hpbGRDb25uZWN0b3JzOiBuZXcgQ29udGVudENoaWxkKENvbm5lY3RvcnNEaXJlY3RpdmUpLCBcbiAgICAgICAgY2hpbGROb2RlczogbmV3IENvbnRlbnRDaGlsZChOb2Rlc0RpcmVjdGl2ZSlcbiAgICB9XG59KVxuQENvbXBvbmVudE1peGlucyhbQ29tcG9uZW50QmFzZV0pXG5leHBvcnQgY2xhc3MgRGlhZ3JhbUNvbXBvbmVudCBleHRlbmRzIERpYWdyYW0gaW1wbGVtZW50cyBJQ29tcG9uZW50QmFzZSB7XG4gICAgcHVibGljIGNvbnRleHQgOiBhbnk7XG4gICAgcHVibGljIHRhZ09iamVjdHM6IGFueTtcblx0YW5pbWF0aW9uQ29tcGxldGU6IGFueTtcblx0Y2xpY2s6IGFueTtcblx0Y29sbGVjdGlvbkNoYW5nZTogYW55O1xuXHRjb21tYW5kRXhlY3V0ZTogYW55O1xuXHRjb25uZWN0aW9uQ2hhbmdlOiBhbnk7XG5cdGNvbnRleHRNZW51QmVmb3JlSXRlbVJlbmRlcjogYW55O1xuXHRjb250ZXh0TWVudUNsaWNrOiBhbnk7XG5cdGNvbnRleHRNZW51T3BlbjogYW55O1xuXHRjcmVhdGVkOiBhbnk7XG5cdGRhdGFMb2FkZWQ6IGFueTtcblx0ZG91YmxlQ2xpY2s6IGFueTtcblx0ZHJhZ0VudGVyOiBhbnk7XG5cdGRyYWdMZWF2ZTogYW55O1xuXHRkcmFnT3ZlcjogYW55O1xuXHRkcm9wOiBhbnk7XG5cdGV4cGFuZFN0YXRlQ2hhbmdlOiBhbnk7XG5cdGZpeGVkVXNlckhhbmRsZUNsaWNrOiBhbnk7XG5cdGhpc3RvcnlDaGFuZ2U6IGFueTtcblx0aGlzdG9yeVN0YXRlQ2hhbmdlOiBhbnk7XG5cdGtleURvd246IGFueTtcblx0a2V5VXA6IGFueTtcblx0bW91c2VFbnRlcjogYW55O1xuXHRtb3VzZUxlYXZlOiBhbnk7XG5cdG1vdXNlT3ZlcjogYW55O1xuXHRtb3VzZVdoZWVsOiBhbnk7XG5cdG9uSW1hZ2VMb2FkOiBhbnk7XG5cdG9uVXNlckhhbmRsZU1vdXNlRG93bjogYW55O1xuXHRvblVzZXJIYW5kbGVNb3VzZUVudGVyOiBhbnk7XG5cdG9uVXNlckhhbmRsZU1vdXNlTGVhdmU6IGFueTtcblx0b25Vc2VySGFuZGxlTW91c2VVcDogYW55O1xuXHRwb3NpdGlvbkNoYW5nZTogYW55O1xuXHRwcm9wZXJ0eUNoYW5nZTogYW55O1xuXHRyb3RhdGVDaGFuZ2U6IGFueTtcblx0c2Nyb2xsQ2hhbmdlOiBhbnk7XG5cdHNlZ21lbnRDaGFuZ2U6IGFueTtcblx0c2VnbWVudENvbGxlY3Rpb25DaGFuZ2U6IGFueTtcblx0c2VsZWN0aW9uQ2hhbmdlOiBhbnk7XG5cdHNpemVDaGFuZ2U6IGFueTtcblx0c291cmNlUG9pbnRDaGFuZ2U6IGFueTtcblx0dGFyZ2V0UG9pbnRDaGFuZ2U6IGFueTtcblx0dGV4dEVkaXQ6IGFueTtcblx0cHVibGljIGVsZW1lbnREcmF3OiBhbnk7XG4gICAgcHVibGljIGNoaWxkTGF5ZXJzOiBRdWVyeUxpc3Q8TGF5ZXJzRGlyZWN0aXZlPjtcbiAgICBwdWJsaWMgY2hpbGRDdXN0b21DdXJzb3I6IFF1ZXJ5TGlzdDxDdXN0b21DdXJzb3JzRGlyZWN0aXZlPjtcbiAgICBwdWJsaWMgY2hpbGRDb25uZWN0b3JzOiBRdWVyeUxpc3Q8Q29ubmVjdG9yc0RpcmVjdGl2ZT47XG4gICAgcHVibGljIGNoaWxkTm9kZXM6IFF1ZXJ5TGlzdDxOb2Rlc0RpcmVjdGl2ZT47XG4gICAgcHVibGljIHRhZ3M6IHN0cmluZ1tdID0gWydsYXllcnMnLCAnY3VzdG9tQ3Vyc29yJywgJ2Nvbm5lY3RvcnMnLCAnbm9kZXMnXTtcbiAgICAvKiogXG4gICAgICogQ3VzdG9taXplcyB0aGUgYW5ub3RhdGlvbiB0ZW1wbGF0ZVxuICAgICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ2Fubm90YXRpb25UZW1wbGF0ZScpXG4gICAgQFRlbXBsYXRlKClcbiAgICBwdWJsaWMgYW5ub3RhdGlvblRlbXBsYXRlOiBhbnk7XG4gICAgLyoqIFxuICAgICAqIEN1c3RvbWl6ZXMgdGhlIG5vZGUgdGVtcGxhdGVcbiAgICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdub2RlVGVtcGxhdGUnKVxuICAgIEBUZW1wbGF0ZSgpXG4gICAgcHVibGljIG5vZGVUZW1wbGF0ZTogYW55O1xuICAgIC8qKiBcbiAgICAgKiBUaGlzIHByb3BlcnR5IHJlcHJlc2VudHMgdGhlIHRlbXBsYXRlIGNvbnRlbnQgb2YgYSB1c2VyIGhhbmRsZS4gVGhlIHVzZXIgY2FuIGRlZmluZSBhbnkgSFRNTCBlbGVtZW50IGFzIGEgdGVtcGxhdGUuXG4gICAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgndXNlckhhbmRsZVRlbXBsYXRlJylcbiAgICBAVGVtcGxhdGUoKVxuICAgIHB1YmxpYyB1c2VySGFuZGxlVGVtcGxhdGU6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbmdFbGU6IEVsZW1lbnRSZWYsIHByaXZhdGUgc3JlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjpWaWV3Q29udGFpbmVyUmVmLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmVsZW1lbnQgPSB0aGlzLm5nRWxlLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzID0gdGhpcy5pbmplY3RlZE1vZHVsZXMgfHwgW107XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0hpZXJhcmNoaWNhbFRyZWUnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zTWluZE1hcCcpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNSYWRpYWxUcmVlJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0NvbXBsZXhIaWVyYXJjaGljYWxUcmVlJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0RhdGFCaW5kaW5nJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc1NuYXBwaW5nJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc1ByaW50QW5kRXhwb3J0Jyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0JwbW5EaWFncmFtcycpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNTeW1tZXRyaWNMYXlvdXQnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zQ29ubmVjdG9yQnJpZGdpbmcnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zVW5kb1JlZG8nKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zTGF5b3V0QW5pbWF0aW9uJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0RpYWdyYW1Db250ZXh0TWVudScpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNMaW5lUm91dGluZycpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxldCBtb2QgPSB0aGlzLmluamVjdG9yLmdldCgnRGlhZ3JhbXNDb25uZWN0b3JFZGl0aW5nJyk7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5pbmplY3RlZE1vZHVsZXMuaW5kZXhPZihtb2QpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluamVjdGVkTW9kdWxlcy5wdXNoKG1vZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHsgfVxuXHIgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgbGV0IG1vZCA9IHRoaXMuaW5qZWN0b3IuZ2V0KCdEaWFncmFtc0JsYXpvclRvb2x0aXAnKTtcbiAgICAgICAgICAgICAgICBpZih0aGlzLmluamVjdGVkTW9kdWxlcy5pbmRleE9mKG1vZCkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRNb2R1bGVzLnB1c2gobW9kKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggeyB9XG5cciAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgbW9kID0gdGhpcy5pbmplY3Rvci5nZXQoJ0RpYWdyYW1zTGluZURpc3RyaWJ1dGlvbicpO1xuICAgICAgICAgICAgICAgIGlmKHRoaXMuaW5qZWN0ZWRNb2R1bGVzLmluZGV4T2YobW9kKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbmplY3RlZE1vZHVsZXMucHVzaChtb2QpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCB7IH1cblxyXG4gICAgICAgIHRoaXMucmVnaXN0ZXJFdmVudHMob3V0cHV0cyk7XG4gICAgICAgIHRoaXMuYWRkVHdvV2F5LmNhbGwodGhpcywgdHdvV2F5cyk7XG4gICAgICAgIHNldFZhbHVlKCdjdXJyZW50SW5zdGFuY2UnLCB0aGlzLCB0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuICAgICAgICB0aGlzLmNvbnRleHQgID0gbmV3IENvbXBvbmVudEJhc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuY29udGV4dC5uZ09uSW5pdCh0aGlzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQubmdBZnRlclZpZXdJbml0KHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZXh0Lm5nT25EZXN0cm95KHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFnT2JqZWN0c1swXS5pbnN0YW5jZSA9IHRoaXMuY2hpbGRMYXllcnM7XG4gICAgICAgIFxuXHQgICAgaWYgKHRoaXMuY2hpbGRDdXN0b21DdXJzb3IpIHtcbiAgICAgICAgICAgIHRoaXMudGFnT2JqZWN0c1sxXS5pbnN0YW5jZSA9IHRoaXMuY2hpbGRDdXN0b21DdXJzb3I7XG4gICAgICAgIH1cbiAgICAgICAgXG5cdCAgICBpZiAodGhpcy5jaGlsZENvbm5lY3RvcnMpIHtcbiAgICAgICAgICAgIHRoaXMudGFnT2JqZWN0c1syXS5pbnN0YW5jZSA9IHRoaXMuY2hpbGRDb25uZWN0b3JzO1xuICAgICAgICB9XG4gICAgICAgIFxuXHQgICAgaWYgKHRoaXMuY2hpbGROb2Rlcykge1xuICAgICAgICAgICAgdGhpcy50YWdPYmplY3RzWzNdLmluc3RhbmNlID0gdGhpcy5jaGlsZE5vZGVzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29udGV4dC5uZ0FmdGVyQ29udGVudENoZWNrZWQodGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyRXZlbnRzOiAoZXZlbnRMaXN0OiBzdHJpbmdbXSkgPT4gdm9pZDtcbiAgICBwdWJsaWMgYWRkVHdvV2F5OiAocHJvcExpc3Q6IHN0cmluZ1tdKSA9PiB2b2lkO1xufVxuXG4iXX0=
@@ -500,7 +500,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
500
500
  }], ctorParameters: function () { return []; } });
501
501
 
502
502
  const inputs$2 = ['addInfo', 'annotationTemplate', 'backgroundColor', 'bridgeDirection', 'commandManager', 'connectorDefaults', 'connectors', 'constraints', 'contextMenuSettings', 'customCursor', 'dataSourceSettings', 'diagramSettings', 'drawingObject', 'enableConnectorSplit', 'enablePersistence', 'enableRtl', 'getConnectorDefaults', 'getCustomCursor', 'getCustomProperty', 'getCustomTool', 'getDescription', 'getNodeDefaults', 'height', 'historyManager', 'layers', 'layout', 'locale', 'mode', 'nodeDefaults', 'nodeTemplate', 'nodes', 'pageSettings', 'rulerSettings', 'scrollSettings', 'segmentThumbShape', 'selectedItems', 'serializationSettings', 'setNodeTemplate', 'snapSettings', 'tool', 'tooltip', 'updateSelection', 'userHandleTemplate', 'width'];
503
- const outputs$3 = ['animationComplete', 'click', 'collectionChange', 'commandExecute', 'connectionChange', 'contextMenuBeforeItemRender', 'contextMenuClick', 'contextMenuOpen', 'created', 'dataLoaded', 'doubleClick', 'dragEnter', 'dragLeave', 'dragOver', 'drop', 'expandStateChange', 'fixedUserHandleClick', 'historyChange', 'historyStateChange', 'keyDown', 'keyUp', 'mouseEnter', 'mouseLeave', 'mouseOver', 'mouseWheel', 'onImageLoad', 'onUserHandleMouseDown', 'onUserHandleMouseEnter', 'onUserHandleMouseLeave', 'onUserHandleMouseUp', 'positionChange', 'propertyChange', 'rotateChange', 'scrollChange', 'segmentCollectionChange', 'selectionChange', 'sizeChange', 'sourcePointChange', 'targetPointChange', 'textEdit', 'elementDraw'];
503
+ const outputs$3 = ['animationComplete', 'click', 'collectionChange', 'commandExecute', 'connectionChange', 'contextMenuBeforeItemRender', 'contextMenuClick', 'contextMenuOpen', 'created', 'dataLoaded', 'doubleClick', 'dragEnter', 'dragLeave', 'dragOver', 'drop', 'expandStateChange', 'fixedUserHandleClick', 'historyChange', 'historyStateChange', 'keyDown', 'keyUp', 'mouseEnter', 'mouseLeave', 'mouseOver', 'mouseWheel', 'onImageLoad', 'onUserHandleMouseDown', 'onUserHandleMouseEnter', 'onUserHandleMouseLeave', 'onUserHandleMouseUp', 'positionChange', 'propertyChange', 'rotateChange', 'scrollChange', 'segmentChange', 'segmentCollectionChange', 'selectionChange', 'sizeChange', 'sourcePointChange', 'targetPointChange', 'textEdit', 'elementDraw'];
504
504
  const twoWays$2 = [''];
505
505
  /**
506
506
  * Diagram Component
@@ -666,7 +666,7 @@ let DiagramComponent = class DiagramComponent extends Diagram {
666
666
  }
667
667
  };
668
668
  DiagramComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DiagramComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
669
- DiagramComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DiagramComponent, selector: "ejs-diagram", inputs: { addInfo: "addInfo", annotationTemplate: "annotationTemplate", backgroundColor: "backgroundColor", bridgeDirection: "bridgeDirection", commandManager: "commandManager", connectorDefaults: "connectorDefaults", connectors: "connectors", constraints: "constraints", contextMenuSettings: "contextMenuSettings", customCursor: "customCursor", dataSourceSettings: "dataSourceSettings", diagramSettings: "diagramSettings", drawingObject: "drawingObject", enableConnectorSplit: "enableConnectorSplit", enablePersistence: "enablePersistence", enableRtl: "enableRtl", getConnectorDefaults: "getConnectorDefaults", getCustomCursor: "getCustomCursor", getCustomProperty: "getCustomProperty", getCustomTool: "getCustomTool", getDescription: "getDescription", getNodeDefaults: "getNodeDefaults", height: "height", historyManager: "historyManager", layers: "layers", layout: "layout", locale: "locale", mode: "mode", nodeDefaults: "nodeDefaults", nodeTemplate: "nodeTemplate", nodes: "nodes", pageSettings: "pageSettings", rulerSettings: "rulerSettings", scrollSettings: "scrollSettings", segmentThumbShape: "segmentThumbShape", selectedItems: "selectedItems", serializationSettings: "serializationSettings", setNodeTemplate: "setNodeTemplate", snapSettings: "snapSettings", tool: "tool", tooltip: "tooltip", updateSelection: "updateSelection", userHandleTemplate: "userHandleTemplate", width: "width" }, outputs: { animationComplete: "animationComplete", click: "click", collectionChange: "collectionChange", commandExecute: "commandExecute", connectionChange: "connectionChange", contextMenuBeforeItemRender: "contextMenuBeforeItemRender", contextMenuClick: "contextMenuClick", contextMenuOpen: "contextMenuOpen", created: "created", dataLoaded: "dataLoaded", doubleClick: "doubleClick", dragEnter: "dragEnter", dragLeave: "dragLeave", dragOver: "dragOver", drop: "drop", expandStateChange: "expandStateChange", fixedUserHandleClick: "fixedUserHandleClick", historyChange: "historyChange", historyStateChange: "historyStateChange", keyDown: "keyDown", keyUp: "keyUp", mouseEnter: "mouseEnter", mouseLeave: "mouseLeave", mouseOver: "mouseOver", mouseWheel: "mouseWheel", onImageLoad: "onImageLoad", onUserHandleMouseDown: "onUserHandleMouseDown", onUserHandleMouseEnter: "onUserHandleMouseEnter", onUserHandleMouseLeave: "onUserHandleMouseLeave", onUserHandleMouseUp: "onUserHandleMouseUp", positionChange: "positionChange", propertyChange: "propertyChange", rotateChange: "rotateChange", scrollChange: "scrollChange", segmentCollectionChange: "segmentCollectionChange", selectionChange: "selectionChange", sizeChange: "sizeChange", sourcePointChange: "sourcePointChange", targetPointChange: "targetPointChange", textEdit: "textEdit", elementDraw: "elementDraw" }, queries: [{ propertyName: "annotationTemplate", first: true, predicate: ["annotationTemplate"], descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: ["nodeTemplate"], descendants: true }, { propertyName: "userHandleTemplate", first: true, predicate: ["userHandleTemplate"], descendants: true }, { propertyName: "childLayers", first: true, predicate: LayersDirective, descendants: true }, { propertyName: "childCustomCursor", first: true, predicate: CustomCursorsDirective, descendants: true }, { propertyName: "childConnectors", first: true, predicate: ConnectorsDirective, descendants: true }, { propertyName: "childNodes", first: true, predicate: NodesDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
669
+ DiagramComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DiagramComponent, selector: "ejs-diagram", inputs: { addInfo: "addInfo", annotationTemplate: "annotationTemplate", backgroundColor: "backgroundColor", bridgeDirection: "bridgeDirection", commandManager: "commandManager", connectorDefaults: "connectorDefaults", connectors: "connectors", constraints: "constraints", contextMenuSettings: "contextMenuSettings", customCursor: "customCursor", dataSourceSettings: "dataSourceSettings", diagramSettings: "diagramSettings", drawingObject: "drawingObject", enableConnectorSplit: "enableConnectorSplit", enablePersistence: "enablePersistence", enableRtl: "enableRtl", getConnectorDefaults: "getConnectorDefaults", getCustomCursor: "getCustomCursor", getCustomProperty: "getCustomProperty", getCustomTool: "getCustomTool", getDescription: "getDescription", getNodeDefaults: "getNodeDefaults", height: "height", historyManager: "historyManager", layers: "layers", layout: "layout", locale: "locale", mode: "mode", nodeDefaults: "nodeDefaults", nodeTemplate: "nodeTemplate", nodes: "nodes", pageSettings: "pageSettings", rulerSettings: "rulerSettings", scrollSettings: "scrollSettings", segmentThumbShape: "segmentThumbShape", selectedItems: "selectedItems", serializationSettings: "serializationSettings", setNodeTemplate: "setNodeTemplate", snapSettings: "snapSettings", tool: "tool", tooltip: "tooltip", updateSelection: "updateSelection", userHandleTemplate: "userHandleTemplate", width: "width" }, outputs: { animationComplete: "animationComplete", click: "click", collectionChange: "collectionChange", commandExecute: "commandExecute", connectionChange: "connectionChange", contextMenuBeforeItemRender: "contextMenuBeforeItemRender", contextMenuClick: "contextMenuClick", contextMenuOpen: "contextMenuOpen", created: "created", dataLoaded: "dataLoaded", doubleClick: "doubleClick", dragEnter: "dragEnter", dragLeave: "dragLeave", dragOver: "dragOver", drop: "drop", expandStateChange: "expandStateChange", fixedUserHandleClick: "fixedUserHandleClick", historyChange: "historyChange", historyStateChange: "historyStateChange", keyDown: "keyDown", keyUp: "keyUp", mouseEnter: "mouseEnter", mouseLeave: "mouseLeave", mouseOver: "mouseOver", mouseWheel: "mouseWheel", onImageLoad: "onImageLoad", onUserHandleMouseDown: "onUserHandleMouseDown", onUserHandleMouseEnter: "onUserHandleMouseEnter", onUserHandleMouseLeave: "onUserHandleMouseLeave", onUserHandleMouseUp: "onUserHandleMouseUp", positionChange: "positionChange", propertyChange: "propertyChange", rotateChange: "rotateChange", scrollChange: "scrollChange", segmentChange: "segmentChange", segmentCollectionChange: "segmentCollectionChange", selectionChange: "selectionChange", sizeChange: "sizeChange", sourcePointChange: "sourcePointChange", targetPointChange: "targetPointChange", textEdit: "textEdit", elementDraw: "elementDraw" }, queries: [{ propertyName: "annotationTemplate", first: true, predicate: ["annotationTemplate"], descendants: true }, { propertyName: "nodeTemplate", first: true, predicate: ["nodeTemplate"], descendants: true }, { propertyName: "userHandleTemplate", first: true, predicate: ["userHandleTemplate"], descendants: true }, { propertyName: "childLayers", first: true, predicate: LayersDirective, descendants: true }, { propertyName: "childCustomCursor", first: true, predicate: CustomCursorsDirective, descendants: true }, { propertyName: "childConnectors", first: true, predicate: ConnectorsDirective, descendants: true }, { propertyName: "childNodes", first: true, predicate: NodesDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
670
670
  __decorate([
671
671
  Template()
672
672
  ], DiagramComponent.prototype, "annotationTemplate", void 0);