@tinymce/tinymce-angular 3.6.0 → 4.2.0

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.
@@ -1,4 +1,4 @@
1
- import * as tslib_1 from "tslib";
1
+ import { __assign, __extends } from "tslib";
2
2
  import { isPlatformBrowser } from '@angular/common';
3
3
  import { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';
4
4
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
@@ -13,7 +13,7 @@ var EDITOR_COMPONENT_VALUE_ACCESSOR = {
13
13
  multi: true
14
14
  };
15
15
  var EditorComponent = /** @class */ (function (_super) {
16
- tslib_1.__extends(EditorComponent, _super);
16
+ __extends(EditorComponent, _super);
17
17
  function EditorComponent(elementRef, ngZone, platformId, tinymceScriptSrc) {
18
18
  var _this = _super.call(this) || this;
19
19
  _this.platformId = platformId;
@@ -21,7 +21,7 @@ var EditorComponent = /** @class */ (function (_super) {
21
21
  _this.cloudChannel = '5';
22
22
  _this.apiKey = 'no-api-key';
23
23
  _this.id = '';
24
- _this.modelEvents = 'change keyup undo redo';
24
+ _this.modelEvents = 'change input undo redo';
25
25
  _this.onTouchedCallback = noop;
26
26
  _this.onChangeCallback = noop;
27
27
  _this._elementRef = elementRef;
@@ -39,14 +39,14 @@ var EditorComponent = /** @class */ (function (_super) {
39
39
  this._editor.setMode(val ? 'readonly' : 'design');
40
40
  }
41
41
  },
42
- enumerable: true,
42
+ enumerable: false,
43
43
  configurable: true
44
44
  });
45
45
  Object.defineProperty(EditorComponent.prototype, "editor", {
46
46
  get: function () {
47
47
  return this._editor;
48
48
  },
49
- enumerable: true,
49
+ enumerable: false,
50
50
  configurable: true
51
51
  });
52
52
  EditorComponent.prototype.writeValue = function (value) {
@@ -68,7 +68,7 @@ var EditorComponent = /** @class */ (function (_super) {
68
68
  this._editor.setMode(isDisabled ? 'readonly' : 'design');
69
69
  }
70
70
  else if (isDisabled) {
71
- this.init = tslib_1.__assign({}, this.init, { readonly: true });
71
+ this.init = __assign(__assign({}, this.init), { readonly: true });
72
72
  }
73
73
  };
74
74
  EditorComponent.prototype.ngAfterViewInit = function () {
@@ -103,7 +103,7 @@ var EditorComponent = /** @class */ (function (_super) {
103
103
  };
104
104
  EditorComponent.prototype.initialise = function () {
105
105
  var _this = this;
106
- var finalInit = tslib_1.__assign({}, this.init, { target: this._element, inline: this.inline, readonly: this.disabled, plugins: mergePlugins(this.init && this.init.plugins, this.plugins), toolbar: this.toolbar || (this.init && this.init.toolbar), setup: function (editor) {
106
+ var finalInit = __assign(__assign({}, this.init), { target: this._element, inline: this.inline, readonly: this.disabled, plugins: mergePlugins(this.init && this.init.plugins, this.plugins), toolbar: this.toolbar || (this.init && this.init.toolbar), setup: function (editor) {
107
107
  _this._editor = editor;
108
108
  editor.on('init', function (e) {
109
109
  _this.initEditor(editor);
@@ -132,7 +132,15 @@ var EditorComponent = /** @class */ (function (_super) {
132
132
  _this.ngZone.run(function () { return _this.onChangeCallback(editor.getContent({ format: _this.outputFormat })); });
133
133
  });
134
134
  if (typeof this.initialValue === 'string') {
135
- this.ngZone.run(function () { return editor.setContent(_this.initialValue); });
135
+ this.ngZone.run(function () {
136
+ editor.setContent(_this.initialValue);
137
+ if (editor.getContent() !== _this.initialValue) {
138
+ _this.onChangeCallback(editor.getContent({ format: _this.outputFormat }));
139
+ }
140
+ if (_this.onInitNgModel !== undefined) {
141
+ _this.onInitNgModel.emit(editor);
142
+ }
143
+ });
136
144
  }
137
145
  };
138
146
  EditorComponent.ctorParameters = function () { return [
@@ -141,53 +149,37 @@ var EditorComponent = /** @class */ (function (_super) {
141
149
  { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },
142
150
  { type: String, decorators: [{ type: Optional }, { type: Inject, args: [TINYMCE_SCRIPT_SRC,] }] }
143
151
  ]; };
144
- tslib_1.__decorate([
145
- Input()
146
- ], EditorComponent.prototype, "disabled", null);
147
- tslib_1.__decorate([
148
- Input()
149
- ], EditorComponent.prototype, "cloudChannel", void 0);
150
- tslib_1.__decorate([
151
- Input()
152
- ], EditorComponent.prototype, "apiKey", void 0);
153
- tslib_1.__decorate([
154
- Input()
155
- ], EditorComponent.prototype, "init", void 0);
156
- tslib_1.__decorate([
157
- Input()
158
- ], EditorComponent.prototype, "id", void 0);
159
- tslib_1.__decorate([
160
- Input()
161
- ], EditorComponent.prototype, "initialValue", void 0);
162
- tslib_1.__decorate([
163
- Input()
164
- ], EditorComponent.prototype, "outputFormat", void 0);
165
- tslib_1.__decorate([
166
- Input()
167
- ], EditorComponent.prototype, "inline", void 0);
168
- tslib_1.__decorate([
169
- Input()
170
- ], EditorComponent.prototype, "tagName", void 0);
171
- tslib_1.__decorate([
172
- Input()
173
- ], EditorComponent.prototype, "plugins", void 0);
174
- tslib_1.__decorate([
175
- Input()
176
- ], EditorComponent.prototype, "toolbar", void 0);
177
- tslib_1.__decorate([
178
- Input()
179
- ], EditorComponent.prototype, "modelEvents", void 0);
180
- EditorComponent = tslib_1.__decorate([
181
- Component({
182
- selector: 'editor',
183
- template: '<ng-template></ng-template>',
184
- providers: [EDITOR_COMPONENT_VALUE_ACCESSOR],
185
- styles: [':host { display: block; }']
186
- }),
187
- tslib_1.__param(2, Inject(PLATFORM_ID)),
188
- tslib_1.__param(3, Optional()), tslib_1.__param(3, Inject(TINYMCE_SCRIPT_SRC))
189
- ], EditorComponent);
152
+ EditorComponent.decorators = [
153
+ { type: Component, args: [{
154
+ selector: 'editor',
155
+ template: '<ng-template></ng-template>',
156
+ providers: [EDITOR_COMPONENT_VALUE_ACCESSOR],
157
+ styles: [':host { display: block; }']
158
+ },] }
159
+ ];
160
+ EditorComponent.ctorParameters = function () { return [
161
+ { type: ElementRef },
162
+ { type: NgZone },
163
+ { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },
164
+ { type: String, decorators: [{ type: Optional }, { type: Inject, args: [TINYMCE_SCRIPT_SRC,] }] }
165
+ ]; };
166
+ EditorComponent.propDecorators = {
167
+ disabled: [{ type: Input }],
168
+ cloudChannel: [{ type: Input }],
169
+ apiKey: [{ type: Input }],
170
+ init: [{ type: Input }],
171
+ id: [{ type: Input }],
172
+ initialValue: [{ type: Input }],
173
+ outputFormat: [{ type: Input }],
174
+ inline: [{ type: Input }],
175
+ tagName: [{ type: Input }],
176
+ plugins: [{ type: Input }],
177
+ toolbar: [{ type: Input }],
178
+ modelEvents: [{ type: Input }],
179
+ allowedEvents: [{ type: Input }],
180
+ ignoreEvents: [{ type: Input }]
181
+ };
190
182
  return EditorComponent;
191
183
  }(Events));
192
184
  export { EditorComponent };
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0aW55bWNlL3RpbnltY2UtYW5ndWxhci8iLCJzb3VyY2VzIjpbImVkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE1BQU0sQ0FBQyxJQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFTLG9CQUFvQixDQUFDLENBQUM7QUFFbkYsSUFBTSwrQkFBK0IsR0FBRztJQUN0QyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLGVBQWUsRUFBZixDQUFlLENBQUM7SUFDOUMsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBUUY7SUFBcUMsMkNBQU07SUF3QzNDLHlCQUNFLFVBQXNCLEVBQ3RCLE1BQWMsRUFDZSxVQUFrQixFQUNDLGdCQUF5QjtRQUozRSxZQU1JLGlCQUFPLFNBSVI7UUFQNEIs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QUFDLFdBQVc7NkNBQ2xCLFFBQVEsWUFBSSxNQUFNLFNBQUMsa0JBQWtCOztJQXpDdEM7UUFEQyxLQUFLLEVBQUU7bURBTVA7SUFZUTtRQUFSLEtBQUssRUFBRTt5REFBMkI7SUFDMUI7UUFBUixLQUFLLEVBQUU7bURBQThCO0lBQzdCO1FBQVIsS0FBSyxFQUFFO2lEQUE4QztJQUM3QztRQUFSLEtBQUssRUFBRTsrQ0FBZ0I7SUFDZjtRQUFSLEtBQUssRUFBRTt5REFBeUM7SUFDeEM7UUFBUixLQUFLLEVBQUU7eURBQWtEO0lBQ2pEO1FBQVIsS0FBSyxFQUFFO21EQUFvQztJQUNuQztRQUFSLEtBQUssRUFBRTtvREFBb0M7SUFDbkM7UUFBUixLQUFLLEVBQUU7b0RBQW9DO0lBQ25DO1FBQVIsS0FBSyxFQUFFO29EQUErQztJQUM5QztRQUFSLEtBQUssRUFBRTt3REFBK0M7SUE5QjVDLGVBQWU7UUFOM0IsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLFFBQVE7WUFDbEIsUUFBUSxFQUFFLDZCQUE2QjtZQUV2QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztxQkFEbkMsMkJBQTJCO1NBRXJDLENBQUM7UUE0Q0MsbUJBQUEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ25CLG1CQUFBLFFBQVEsRUFBRSxDQUFBLEVBQUUsbUJBQUEsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUE7T0E1QzVCLGVBQWUsQ0E2SjNCO0lBQUQsc0JBQUM7Q0FBQSxBQTdKRCxDQUFxQyxNQUFNLEdBNkoxQztTQTdKWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgUExBVEZPUk1fSUQsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZ2V0VGlueW1jZSB9IGZyb20gJy4uL1RpbnlNQ0UnO1xuaW1wb3J0IHsgYmluZEhhbmRsZXJzLCBpc1RleHRhcmVhLCBtZXJnZVBsdWdpbnMsIHV1aWQsIG5vb3AsIGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnLi4vdXRpbHMvVXRpbHMnO1xuaW1wb3J0IHsgRXZlbnRzIH0gZnJvbSAnLi9FdmVudHMnO1xuaW1wb3J0IHsgU2NyaXB0TG9hZGVyIH0gZnJvbSAnLi4vdXRpbHMvU2NyaXB0TG9hZGVyJztcblxuZXhwb3J0IGNvbnN0IFRJTllNQ0VfU0NSSVBUX1NSQyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdUSU5ZTUNFX1NDUklQVF9TUkMnKTtcblxuY29uc3QgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlZGl0b3InLFxuICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZT48L25nLXRlbXBsYXRlPicsXG4gIHN0eWxlczogWyc6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9J10sXG4gIHByb3ZpZGVyczogW0VESVRPUl9DT01QT05FTlRfVkFMVUVfQUNDRVNTT1JdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEV2ZW50cyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkaXNhYmxlZCh2YWwpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbDtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUodmFsID8gJ3JlYWRvbmx5JyA6ICdkZXNpZ24nKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgZ2V0IGVkaXRvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIG5nWm9uZTogTmdab25lO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG91ZENoYW5uZWwgPSAnNSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBhcGlLZXkgPSAnbm8tYXBpLWtleSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWQgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0Rm9ybWF0OiAnaHRtbCcgfCAndGV4dCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0YWdOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbHVnaW5zOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG1vZGVsRXZlbnRzID0gJ2NoYW5nZSBrZXl1cCB1bmRvIHJlZG8nO1xuXG4gIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9lZGl0b3I6IGFueTtcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gbm9vcDtcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrID0gbm9vcDtcblxuY29uc3RydWN0b3IoXG4gIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gIG5nWm9uZTogTmdab25lLFxuICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgQE9wdGlvbmFsKCkgQEluamVjdChUSU5ZTUNFX1NDUklQVF9TUkMpIHByaXZhdGUgdGlueW1jZVNjcmlwdFNyYz86IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMubmdab25lID0gbmdab25lO1xuICAgIHRoaXMuaW5pdGlhbGlzZSA9IHRoaXMuaW5pdGlhbGlzZS5iaW5kKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldENvbnRlbnQoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpID8gJycgOiB2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdmFsdWUgPT09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUoaXNEaXNhYmxlZCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgfSBlbHNlIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmluaXQgPSB7IC4uLnRoaXMuaW5pdCwgcmVhZG9ubHk6IHRydWUgfTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCB1dWlkKCd0aW55LWFuZ3VsYXInKTtcbiAgICAgIHRoaXMuaW5saW5lID1cbiAgICAgICAgdHlwZW9mIHRoaXMuaW5saW5lICE9PSAndW5kZWZpbmVkJyA/ICh0eXBlb2YgdGhpcy5pbmxpbmUgPT09ICdib29sZWFuJyA/IHRoaXMuaW5saW5lIDogdHJ1ZSkgOiB0aGlzLmluaXQgJiYgdGhpcy5pbml0LmlubGluZTtcbiAgICAgIHRoaXMuY3JlYXRlRWxlbWVudCgpO1xuICAgICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpc2UoKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQpIHtcbiAgICAgICAgU2NyaXB0TG9hZGVyLmxvYWQoXG4gICAgICAgICAgdGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LFxuICAgICAgICAgIHRoaXMuZ2V0U2NyaXB0U3JjKCksXG4gICAgICAgICAgdGhpcy5pbml0aWFsaXNlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIGlmIChnZXRUaW55bWNlKCkgIT09IG51bGwpIHtcbiAgICAgIGdldFRpbnltY2UoKS5yZW1vdmUodGhpcy5fZWRpdG9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlRWxlbWVudCgpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdHlwZW9mIHRoaXMudGFnTmFtZSA9PT0gJ3N0cmluZycgPyB0aGlzLnRhZ05hbWUgOiAnZGl2JztcbiAgICB0aGlzLl9lbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0aGlzLmlubGluZSA/IHRhZ05hbWUgOiAndGV4dGFyZWEnKTtcbiAgICBpZiAodGhpcy5fZWxlbWVudCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5pZCA9IHRoaXMuaWQ7XG4gICAgICBpZiAoaXNUZXh0YXJlYSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGlzZSgpIHtcbiAgICBjb25zdCBmaW5hbEluaXQgPSB7XG4gICAgICAuLi50aGlzLmluaXQsXG4gICAgICB0YXJnZXQ6IHRoaXMuX2VsZW1lbnQsXG4gICAgICBpbmxpbmU6IHRoaXMuaW5saW5lLFxuICAgICAgcmVhZG9ubHk6IHRoaXMuZGlzYWJsZWQsXG4gICAgICBwbHVnaW5zOiBtZXJnZVBsdWdpbnModGhpcy5pbml0ICYmIHRoaXMuaW5pdC5wbHVnaW5zLCB0aGlzLnBsdWdpbnMpLFxuICAgICAgdG9vbGJhcjogdGhpcy50b29sYmFyIHx8ICh0aGlzLmluaXQgJiYgdGhpcy5pbml0LnRvb2xiYXIpLFxuICAgICAgc2V0dXA6IChlZGl0b3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLl9lZGl0b3IgPSBlZGl0b3I7XG4gICAgICAgIGVkaXRvci5vbignaW5pdCcsIChlOiBFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuaW5pdEVkaXRvcihlZGl0b3IpO1xuICAgICAgICB9KTtcbiAgICAgICAgYmluZEhhbmRsZXJzKHRoaXMsIGVkaXRvcik7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdCAmJiB0eXBlb2YgdGhpcy5pbml0LnNldHVwID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgdGhpcy5pbml0LnNldHVwKGVkaXRvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKGlzVGV4dGFyZWEodGhpcy5fZWxlbWVudCkpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuICAgIH1cblxuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGdldFRpbnltY2UoKS5pbml0KGZpbmFsSW5pdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFNjcmlwdFNyYygpIHtcbiAgICByZXR1cm4gaXNOdWxsT3JVbmRlZmluZWQodGhpcy50aW55bWNlU2NyaXB0U3JjKSA/XG4gICAgICBgaHR0cHM6Ly9jZG4udGlueS5jbG91ZC8xLyR7dGhpcy5hcGlLZXl9L3RpbnltY2UvJHt0aGlzLmNsb3VkQ2hhbm5lbH0vdGlueW1jZS5taW4uanNgIDpcbiAgICAgIHRoaXMudGlueW1jZVNjcmlwdFNyYztcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEVkaXRvcihlZGl0b3I6IGFueSkge1xuICAgIGVkaXRvci5vbignYmx1cicsICgpID0+IHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCkpKTtcbiAgICBlZGl0b3Iub24odGhpcy5tb2RlbEV2ZW50cywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMub25DaGFuZ2VDYWxsYmFjayhlZGl0b3IuZ2V0Q29udGVudCh7IGZvcm1hdDogdGhpcy5vdXRwdXRGb3JtYXQgfSkpKTtcbiAgICB9KTtcbiAgICBpZiAodHlwZW9mIHRoaXMuaW5pdGlhbFZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IGVkaXRvci5zZXRDb250ZW50KHRoaXMuaW5pdGlhbFZhbHVlKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0aW55bWNlL3RpbnltY2UtYW5ndWxhci8iLCJzb3VyY2VzIjpbImVkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE1BQU0sQ0FBQyxJQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFTLG9CQUFvQixDQUFDLENBQUM7QUFFbkYsSUFBTSwrQkFBK0IsR0FBRztJQUN0QyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLGVBQWUsRUFBZixDQUFlLENBQUM7SUFDOUMsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUY7SUFNcUMsbUNBQU07SUEwQzNDLHlCQUNFLFVBQXNCLEVBQ3RCLE1BQWMsRUFDZSxVQUFrQixFQUNDLGdCQUF5QjtRQUozRSxZQU1JLGlCQUFPLFNBSVI7UUFQNEIs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LE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDekU7Z0JBQ0QsSUFBSSxLQUFJLENBQUMsYUFBYSxLQUFLLFNBQVMsRUFBRTtvQkFDcEMsS0FBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQ2pDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7O2dCQTNIVyxVQUFVO2dCQUNkLE1BQU07Z0JBQzJCLE1BQU0sdUJBQTlDLE1BQU0sU0FBQyxXQUFXOzZDQUNsQixRQUFRLFlBQUksTUFBTSxTQUFDLGtCQUFrQjs7O2dCQXBEdkMsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxRQUFRO29CQUNsQixRQUFRLEVBQUUsNkJBQTZCO29CQUV2QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQzs2QkFEbkMsMkJBQTJCO2lCQUVyQzs7O2dCQXBCa0MsVUFBVTtnQkFBNkIsTUFBTTtnQkFrRXJDLE1BQU0sdUJBQTlDLE1BQU0sU0FBQyxXQUFXOzZDQUNsQixRQUFRLFlBQUksTUFBTSxTQUFDLGtCQUFrQjs7OzJCQTVDckMsS0FBSzsrQkFrQkwsS0FBSzt5QkFDTCxLQUFLO3VCQUNMLEtBQUs7cUJBQ0wsS0FBSzsrQkFDTCxLQUFLOytCQUNMLEtBQUs7eUJBQ0wsS0FBSzswQkFDTCxLQUFLOzBCQUNMLEtBQUs7MEJBQ0wsS0FBSzs4QkFDTCxLQUFLO2dDQUNMLEtBQUs7K0JBQ0wsS0FBSzs7SUF1SVIsc0JBQUM7Q0FBQSxBQTdLRCxDQU1xQyxNQUFNLEdBdUsxQztTQXZLWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgUExBVEZPUk1fSUQsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZ2V0VGlueW1jZSB9IGZyb20gJy4uL1RpbnlNQ0UnO1xuaW1wb3J0IHsgYmluZEhhbmRsZXJzLCBpc1RleHRhcmVhLCBtZXJnZVBsdWdpbnMsIHV1aWQsIG5vb3AsIGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnLi4vdXRpbHMvVXRpbHMnO1xuaW1wb3J0IHsgRXZlbnRzIH0gZnJvbSAnLi9FdmVudHMnO1xuaW1wb3J0IHsgU2NyaXB0TG9hZGVyIH0gZnJvbSAnLi4vdXRpbHMvU2NyaXB0TG9hZGVyJztcblxuZXhwb3J0IGNvbnN0IFRJTllNQ0VfU0NSSVBUX1NSQyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdUSU5ZTUNFX1NDUklQVF9TUkMnKTtcblxuY29uc3QgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlZGl0b3InLFxuICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZT48L25nLXRlbXBsYXRlPicsXG4gIHN0eWxlczogWyc6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9J10sXG4gIHByb3ZpZGVyczogW0VESVRPUl9DT01QT05FTlRfVkFMVUVfQUNDRVNTT1JdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEV2ZW50cyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkaXNhYmxlZCh2YWwpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbDtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUodmFsID8gJ3JlYWRvbmx5JyA6ICdkZXNpZ24nKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgZ2V0IGVkaXRvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIG5nWm9uZTogTmdab25lO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG91ZENoYW5uZWwgPSAnNSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBhcGlLZXkgPSAnbm8tYXBpLWtleSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWQgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0Rm9ybWF0OiAnaHRtbCcgfCAndGV4dCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0YWdOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbHVnaW5zOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG1vZGVsRXZlbnRzID0gJ2NoYW5nZSBpbnB1dCB1bmRvIHJlZG8nO1xuICBASW5wdXQoKSBwdWJsaWMgYWxsb3dlZEV2ZW50czogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZ25vcmVFdmVudHM6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9lZGl0b3I6IGFueTtcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gbm9vcDtcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrID0gbm9vcDtcblxuY29uc3RydWN0b3IoXG4gIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gIG5nWm9uZTogTmdab25lLFxuICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgQE9wdGlvbmFsKCkgQEluamVjdChUSU5ZTUNFX1NDUklQVF9TUkMpIHByaXZhdGUgdGlueW1jZVNjcmlwdFNyYz86IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMubmdab25lID0gbmdab25lO1xuICAgIHRoaXMuaW5pdGlhbGlzZSA9IHRoaXMuaW5pdGlhbGlzZS5iaW5kKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldENvbnRlbnQoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpID8gJycgOiB2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdmFsdWUgPT09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUoaXNEaXNhYmxlZCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgfSBlbHNlIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmluaXQgPSB7IC4uLnRoaXMuaW5pdCwgcmVhZG9ubHk6IHRydWUgfTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCB1dWlkKCd0aW55LWFuZ3VsYXInKTtcbiAgICAgIHRoaXMuaW5saW5lID1cbiAgICAgICAgdHlwZW9mIHRoaXMuaW5saW5lICE9PSAndW5kZWZpbmVkJyA/ICh0eXBlb2YgdGhpcy5pbmxpbmUgPT09ICdib29sZWFuJyA/IHRoaXMuaW5saW5lIDogdHJ1ZSkgOiB0aGlzLmluaXQgJiYgdGhpcy5pbml0LmlubGluZTtcbiAgICAgIHRoaXMuY3JlYXRlRWxlbWVudCgpO1xuICAgICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpc2UoKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQpIHtcbiAgICAgICAgU2NyaXB0TG9hZGVyLmxvYWQoXG4gICAgICAgICAgdGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LFxuICAgICAgICAgIHRoaXMuZ2V0U2NyaXB0U3JjKCksXG4gICAgICAgICAgdGhpcy5pbml0aWFsaXNlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIGlmIChnZXRUaW55bWNlKCkgIT09IG51bGwpIHtcbiAgICAgIGdldFRpbnltY2UoKS5yZW1vdmUodGhpcy5fZWRpdG9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlRWxlbWVudCgpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdHlwZW9mIHRoaXMudGFnTmFtZSA9PT0gJ3N0cmluZycgPyB0aGlzLnRhZ05hbWUgOiAnZGl2JztcbiAgICB0aGlzLl9lbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0aGlzLmlubGluZSA/IHRhZ05hbWUgOiAndGV4dGFyZWEnKTtcbiAgICBpZiAodGhpcy5fZWxlbWVudCkge1xuICAgICAgdGhpcy5fZWxlbWVudC5pZCA9IHRoaXMuaWQ7XG4gICAgICBpZiAoaXNUZXh0YXJlYSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGlzZSgpIHtcbiAgICBjb25zdCBmaW5hbEluaXQgPSB7XG4gICAgICAuLi50aGlzLmluaXQsXG4gICAgICB0YXJnZXQ6IHRoaXMuX2VsZW1lbnQsXG4gICAgICBpbmxpbmU6IHRoaXMuaW5saW5lLFxuICAgICAgcmVhZG9ubHk6IHRoaXMuZGlzYWJsZWQsXG4gICAgICBwbHVnaW5zOiBtZXJnZVBsdWdpbnModGhpcy5pbml0ICYmIHRoaXMuaW5pdC5wbHVnaW5zLCB0aGlzLnBsdWdpbnMpLFxuICAgICAgdG9vbGJhcjogdGhpcy50b29sYmFyIHx8ICh0aGlzLmluaXQgJiYgdGhpcy5pbml0LnRvb2xiYXIpLFxuICAgICAgc2V0dXA6IChlZGl0b3I6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLl9lZGl0b3IgPSBlZGl0b3I7XG4gICAgICAgIGVkaXRvci5vbignaW5pdCcsIChlOiBFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuaW5pdEVkaXRvcihlZGl0b3IpO1xuICAgICAgICB9KTtcbiAgICAgICAgYmluZEhhbmRsZXJzKHRoaXMsIGVkaXRvcik7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdCAmJiB0eXBlb2YgdGhpcy5pbml0LnNldHVwID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgdGhpcy5pbml0LnNldHVwKGVkaXRvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKGlzVGV4dGFyZWEodGhpcy5fZWxlbWVudCkpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuICAgIH1cblxuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGdldFRpbnltY2UoKS5pbml0KGZpbmFsSW5pdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFNjcmlwdFNyYygpIHtcbiAgICByZXR1cm4gaXNOdWxsT3JVbmRlZmluZWQodGhpcy50aW55bWNlU2NyaXB0U3JjKSA/XG4gICAgICBgaHR0cHM6Ly9jZG4udGlueS5jbG91ZC8xLyR7dGhpcy5hcGlLZXl9L3RpbnltY2UvJHt0aGlzLmNsb3VkQ2hhbm5lbH0vdGlueW1jZS5taW4uanNgIDpcbiAgICAgIHRoaXMudGlueW1jZVNjcmlwdFNyYztcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEVkaXRvcihlZGl0b3I6IGFueSkge1xuICAgIGVkaXRvci5vbignYmx1cicsICgpID0+IHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCkpKTtcbiAgICBlZGl0b3Iub24odGhpcy5tb2RlbEV2ZW50cywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMub25DaGFuZ2VDYWxsYmFjayhlZGl0b3IuZ2V0Q29udGVudCh7IGZvcm1hdDogdGhpcy5vdXRwdXRGb3JtYXQgfSkpKTtcbiAgICB9KTtcbiAgICBpZiAodHlwZW9mIHRoaXMuaW5pdGlhbFZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgZWRpdG9yLnNldENvbnRlbnQodGhpcy5pbml0aWFsVmFsdWUpO1xuICAgICAgICBpZiAoZWRpdG9yLmdldENvbnRlbnQoKSAhPT0gdGhpcy5pbml0aWFsVmFsdWUpIHtcbiAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2soZWRpdG9yLmdldENvbnRlbnQoeyBmb3JtYXQ6IHRoaXMub3V0cHV0Rm9ybWF0IH0pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5vbkluaXROZ01vZGVsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm9uSW5pdE5nTW9kZWwuZW1pdChlZGl0b3IpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- import * as tslib_1 from "tslib";
2
1
  import { NgModule } from '@angular/core';
3
2
  import { CommonModule } from '@angular/common';
4
3
  import { FormsModule } from '@angular/forms';
@@ -6,14 +5,14 @@ import { EditorComponent } from './editor.component';
6
5
  var EditorModule = /** @class */ (function () {
7
6
  function EditorModule() {
8
7
  }
9
- EditorModule = tslib_1.__decorate([
10
- NgModule({
11
- imports: [CommonModule, FormsModule],
12
- declarations: [EditorComponent],
13
- exports: [EditorComponent]
14
- })
15
- ], EditorModule);
8
+ EditorModule.decorators = [
9
+ { type: NgModule, args: [{
10
+ imports: [CommonModule, FormsModule],
11
+ declarations: [EditorComponent],
12
+ exports: [EditorComponent]
13
+ },] }
14
+ ];
16
15
  return EditorModule;
17
16
  }());
18
17
  export { EditorModule };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0aW55bWNlL3RpbnltY2UtYW5ndWxhci8iLCJzb3VyY2VzIjpbImVkaXRvci9lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBT3JEO0lBQUE7SUFBMkIsQ0FBQztJQUFmLFlBQVk7UUFMeEIsUUFBUSxDQUFDO1lBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQztZQUNwQyxZQUFZLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDL0IsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDO1NBQzNCLENBQUM7T0FDVyxZQUFZLENBQUc7SUFBRCxtQkFBQztDQUFBLEFBQTVCLElBQTRCO1NBQWYsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vZWRpdG9yLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbRWRpdG9yQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0VkaXRvckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yTW9kdWxlIHt9XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0aW55bWNlL3RpbnltY2UtYW5ndWxhci8iLCJzb3VyY2VzIjpbImVkaXRvci9lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQ7SUFBQTtJQUsyQixDQUFDOztnQkFMM0IsUUFBUSxTQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUM7b0JBQ3BDLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDO2lCQUMzQjs7SUFDMEIsbUJBQUM7Q0FBQSxBQUw1QixJQUs0QjtTQUFmLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2VkaXRvci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0VkaXRvckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtFZGl0b3JDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvck1vZHVsZSB7fVxuIl19
@@ -7,12 +7,29 @@
7
7
  */
8
8
  import { validEvents } from '../editor/Events';
9
9
  var bindHandlers = function (ctx, editor) {
10
- validEvents.forEach(function (eventName) {
10
+ var allowedEvents = getValidEvents(ctx);
11
+ allowedEvents.forEach(function (eventName) {
11
12
  var eventEmitter = ctx[eventName];
12
13
  editor.on(eventName.substring(2), function (event) { return ctx.ngZone.run(function () { return eventEmitter.emit({ event: event, editor: editor }); }); });
13
14
  });
14
15
  };
15
16
  var ɵ0 = bindHandlers;
17
+ var getValidEvents = function (ctx) {
18
+ var ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);
19
+ var allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(function (event) { return validEvents.includes(event) && !ignoredEvents.includes(event); });
20
+ return allowedEvents;
21
+ };
22
+ var ɵ1 = getValidEvents;
23
+ var parseStringProperty = function (property, defaultValue) {
24
+ if (typeof property === 'string') {
25
+ return property.split(',').map(function (value) { return value.trim(); });
26
+ }
27
+ if (Array.isArray(property)) {
28
+ return property;
29
+ }
30
+ return defaultValue;
31
+ };
32
+ var ɵ2 = parseStringProperty;
16
33
  var unique = 0;
17
34
  var uuid = function (prefix) {
18
35
  var date = new Date();
@@ -21,27 +38,27 @@ var uuid = function (prefix) {
21
38
  unique++;
22
39
  return prefix + '_' + random + unique + String(time);
23
40
  };
24
- var ɵ1 = uuid;
41
+ var ɵ3 = uuid;
25
42
  var isTextarea = function (element) {
26
43
  return typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';
27
44
  };
28
- var ɵ2 = isTextarea;
45
+ var ɵ4 = isTextarea;
29
46
  var normalizePluginArray = function (plugins) {
30
47
  if (typeof plugins === 'undefined' || plugins === '') {
31
48
  return [];
32
49
  }
33
50
  return Array.isArray(plugins) ? plugins : plugins.split(' ');
34
51
  };
35
- var ɵ3 = normalizePluginArray;
52
+ var ɵ5 = normalizePluginArray;
36
53
  var mergePlugins = function (initPlugins, inputPlugins) {
37
54
  return normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));
38
55
  };
39
- var ɵ4 = mergePlugins;
56
+ var ɵ6 = mergePlugins;
40
57
  // tslint:disable-next-line:no-empty
41
58
  var noop = function () { };
42
- var ɵ5 = noop;
59
+ var ɵ7 = noop;
43
60
  var isNullOrUndefined = function (value) { return value === null || value === undefined; };
44
- var ɵ6 = isNullOrUndefined;
61
+ var ɵ8 = isNullOrUndefined;
45
62
  export { bindHandlers, uuid, isTextarea, normalizePluginArray, mergePlugins, noop, isNullOrUndefined };
46
- export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6 };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGlueW1jZS90aW55bWNlLWFuZ3VsYXIvIiwic291cmNlcyI6WyJ1dGlscy9VdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsSUFBTSxZQUFZLEdBQUcsVUFBQyxHQUFvQixFQUFFLE1BQVc7SUFDckQsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFDLFNBQVM7UUFDNUIsSUFBTSxZQUFZLEdBQXNCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RCxNQUFNLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBQyxLQUFVLElBQUssT0FBQSxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFNLE9BQUEsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssT0FBQSxFQUFFLE1BQU0sUUFBQSxFQUFFLENBQUMsRUFBcEMsQ0FBb0MsQ0FBQyxFQUExRCxDQUEwRCxDQUFDLENBQUM7SUFDaEgsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7O0FBRUYsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBRWYsSUFBTSxJQUFJLEdBQUcsVUFBQyxNQUFjO0lBQzFCLElBQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDeEIsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzVCLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDO0lBRXRELE1BQU0sRUFBRSxDQUFDO0lBRVQsT0FBTyxNQUFNLEdBQUcsR0FBRyxHQUFHLE1BQU0sR0FBRyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZELENBQUMsQ0FBQzs7QUFFRixJQUFNLFVBQVUsR0FBRyxVQUFDLE9BQWlCO0lBQ25DLE9BQU8sT0FBTyxPQUFPLEtBQUssV0FBVyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssVUFBVSxDQUFDO0FBQ3hGLENBQUMsQ0FBQzs7QUFFRixJQUFNLG9CQUFvQixHQUFHLFVBQUMsT0FBMkI7SUFDdkQsSUFBSSxPQUFPLE9BQU8sS0FBSyxXQUFXLElBQUksT0FBTyxLQUFLLEVBQUUsRUFBRTtRQUNwRCxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBRUQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUFDOztBQUVGLElBQU0sWUFBWSxHQUFHLFVBQUMsV0FBOEIsRUFBRSxZQUFnQztJQUNwRixPQUFBLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUE1RSxDQUE0RSxDQUFDOztBQUUvRSxvQ0FBb0M7QUFDcEMsSUFBTSxJQUFJLEdBQTZCLGNBQVEsQ0FBQyxDQUFDOztBQUVqRCxJQUFNLGlCQUFpQixHQUFHLFVBQUMsS0FBVSxJQUFnQyxPQUFBLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBckMsQ0FBcUMsQ0FBQzs7QUFFM0csT0FBTyxFQUNMLFlBQVksRUFDWixJQUFJLEVBQ0osVUFBVSxFQUNWLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osSUFBSSxFQUNKLGlCQUFpQixFQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRXBob3gsIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgMiBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICpcbiAqL1xuXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uL2VkaXRvci9lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IHZhbGlkRXZlbnRzIH0gZnJvbSAnLi4vZWRpdG9yL0V2ZW50cyc7XG5cbmNvbnN0IGJpbmRIYW5kbGVycyA9IChjdHg6IEVkaXRvckNvbXBvbmVudCwgZWRpdG9yOiBhbnkpOiB2b2lkID0+IHtcbiAgdmFsaWRFdmVudHMuZm9yRWFjaCgoZXZlbnROYW1lKSA9PiB7XG4gICAgY29uc3QgZXZlbnRFbWl0dGVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IGN0eFtldmVudE5hbWVdO1xuICAgIGVkaXRvci5vbihldmVudE5hbWUuc3Vic3RyaW5nKDIpLCAoZXZlbnQ6IGFueSkgPT4gY3R4Lm5nWm9uZS5ydW4oKCkgPT4gZXZlbnRFbWl0dGVyLmVtaXQoeyBldmVudCwgZWRpdG9yIH0pKSk7XG4gIH0pO1xufTtcblxubGV0IHVuaXF1ZSA9IDA7XG5cbmNvbnN0IHV1aWQgPSAocHJlZml4OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgY29uc3QgdGltZSA9IGRhdGUuZ2V0VGltZSgpO1xuICBjb25zdCByYW5kb20gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMDAwMDAwMDAwKTtcblxuICB1bmlxdWUrKztcblxuICByZXR1cm4gcHJlZml4ICsgJ18nICsgcmFuZG9tICsgdW5pcXVlICsgU3RyaW5nKHRpbWUpO1xufTtcblxuY29uc3QgaXNUZXh0YXJlYSA9IChlbGVtZW50PzogRWxlbWVudCk6IGVsZW1lbnQgaXMgSFRNTFRleHRBcmVhRWxlbWVudCA9PiB7XG4gIHJldHVybiB0eXBlb2YgZWxlbWVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICd0ZXh0YXJlYSc7XG59O1xuXG5jb25zdCBub3JtYWxpemVQbHVnaW5BcnJheSA9IChwbHVnaW5zPzogc3RyaW5nIHwgc3RyaW5nW10pOiBzdHJpbmdbXSA9PiB7XG4gIGlmICh0eXBlb2YgcGx1Z2lucyA9PT0gJ3VuZGVmaW5lZCcgfHwgcGx1Z2lucyA9PT0gJycpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICByZXR1cm4gQXJyYXkuaXNBcnJheShwbHVnaW5zKSA/IHBsdWdpbnMgOiBwbHVnaW5zLnNwbGl0KCcgJyk7XG59O1xuXG5jb25zdCBtZXJnZVBsdWdpbnMgPSAoaW5pdFBsdWdpbnM6IHN0cmluZyB8IHN0cmluZ1tdLCBpbnB1dFBsdWdpbnM/OiBzdHJpbmcgfCBzdHJpbmdbXSkgPT5cbiAgbm9ybWFsaXplUGx1Z2luQXJyYXkoaW5pdFBsdWdpbnMpLmNvbmNhdChub3JtYWxpemVQbHVnaW5BcnJheShpbnB1dFBsdWdpbnMpKTtcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWVtcHR5XG5jb25zdCBub29wOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQgPSAoKSA9PiB7IH07XG5cbmNvbnN0IGlzTnVsbE9yVW5kZWZpbmVkID0gKHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyBudWxsIHwgdW5kZWZpbmVkID0+IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQ7XG5cbmV4cG9ydCB7XG4gIGJpbmRIYW5kbGVycyxcbiAgdXVpZCxcbiAgaXNUZXh0YXJlYSxcbiAgbm9ybWFsaXplUGx1Z2luQXJyYXksXG4gIG1lcmdlUGx1Z2lucyxcbiAgbm9vcCxcbiAgaXNOdWxsT3JVbmRlZmluZWRcbn07XG4iXX0=
63
+ export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8 };
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGlueW1jZS90aW55bWNlLWFuZ3VsYXIvIiwic291cmNlcyI6WyJ1dGlscy9VdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFJSCxPQUFPLEVBQUUsV0FBVyxFQUFVLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsSUFBTSxZQUFZLEdBQUcsVUFBQyxHQUFvQixFQUFFLE1BQVc7SUFDckQsSUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsVUFBQyxTQUFTO1FBQzlCLElBQU0sWUFBWSxHQUFzQixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQUMsS0FBVSxJQUFLLE9BQUEsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBTSxPQUFBLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLE9BQUEsRUFBRSxNQUFNLFFBQUEsRUFBRSxDQUFDLEVBQXBDLENBQW9DLENBQUMsRUFBMUQsQ0FBMEQsQ0FBQyxDQUFDO0lBQ2hILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDOztBQUVGLElBQU0sY0FBYyxHQUFHLFVBQUMsR0FBb0I7SUFDMUMsSUFBTSxhQUFhLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRSxJQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FDOUUsVUFBQyxLQUFLLElBQUssT0FBQSxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQXVCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQS9FLENBQStFLENBQXFCLENBQUM7SUFDbEgsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQyxDQUFBOztBQUVELElBQU0sbUJBQW1CLEdBQUcsVUFBQyxRQUF1QyxFQUFFLFlBQThCO0lBQ2xHLElBQUssT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFO1FBQ2pDLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBQyxLQUFLLElBQUssT0FBQSxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQVosQ0FBWSxDQUFDLENBQUM7S0FDekQ7SUFDRCxJQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDNUIsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFDRCxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDLENBQUM7O0FBRUYsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBRWYsSUFBTSxJQUFJLEdBQUcsVUFBQyxNQUFjO0lBQzFCLElBQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDeEIsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzVCLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDO0lBRXRELE1BQU0sRUFBRSxDQUFDO0lBRVQsT0FBTyxNQUFNLEdBQUcsR0FBRyxHQUFHLE1BQU0sR0FBRyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZELENBQUMsQ0FBQzs7QUFFRixJQUFNLFVBQVUsR0FBRyxVQUFDLE9BQWlCO0lBQ25DLE9BQU8sT0FBTyxPQUFPLEtBQUssV0FBVyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssVUFBVSxDQUFDO0FBQ3hGLENBQUMsQ0FBQzs7QUFFRixJQUFNLG9CQUFvQixHQUFHLFVBQUMsT0FBMkI7SUFDdkQsSUFBSSxPQUFPLE9BQU8sS0FBSyxXQUFXLElBQUksT0FBTyxLQUFLLEVBQUUsRUFBRTtRQUNwRCxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBRUQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUFDOztBQUVGLElBQU0sWUFBWSxHQUFHLFVBQUMsV0FBOEIsRUFBRSxZQUFnQztJQUNwRixPQUFBLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUE1RSxDQUE0RSxDQUFDOztBQUUvRSxvQ0FBb0M7QUFDcEMsSUFBTSxJQUFJLEdBQTZCLGNBQVEsQ0FBQyxDQUFDOztBQUVqRCxJQUFNLGlCQUFpQixHQUFHLFVBQUMsS0FBVSxJQUFnQyxPQUFBLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBckMsQ0FBcUMsQ0FBQzs7QUFFM0csT0FBTyxFQUNMLFlBQVksRUFDWixJQUFJLEVBQ0osVUFBVSxFQUNWLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osSUFBSSxFQUNKLGlCQUFpQixFQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRXBob3gsIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgMiBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICpcbiAqL1xuXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uL2VkaXRvci9lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IHZhbGlkRXZlbnRzLCBFdmVudHMgfSBmcm9tICcuLi9lZGl0b3IvRXZlbnRzJztcblxuY29uc3QgYmluZEhhbmRsZXJzID0gKGN0eDogRWRpdG9yQ29tcG9uZW50LCBlZGl0b3I6IGFueSk6IHZvaWQgPT4ge1xuICBjb25zdCBhbGxvd2VkRXZlbnRzID0gZ2V0VmFsaWRFdmVudHMoY3R4KTtcbiAgYWxsb3dlZEV2ZW50cy5mb3JFYWNoKChldmVudE5hbWUpID0+IHtcbiAgICBjb25zdCBldmVudEVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gY3R4W2V2ZW50TmFtZV07XG4gICAgZWRpdG9yLm9uKGV2ZW50TmFtZS5zdWJzdHJpbmcoMiksIChldmVudDogYW55KSA9PiBjdHgubmdab25lLnJ1bigoKSA9PiBldmVudEVtaXR0ZXIuZW1pdCh7IGV2ZW50LCBlZGl0b3IgfSkpKTtcbiAgfSk7XG59O1xuXG5jb25zdCBnZXRWYWxpZEV2ZW50cyA9IChjdHg6IEVkaXRvckNvbXBvbmVudCk6IChrZXlvZiBFdmVudHMpW10gPT4ge1xuICBjb25zdCBpZ25vcmVkRXZlbnRzID0gcGFyc2VTdHJpbmdQcm9wZXJ0eShjdHguaWdub3JlRXZlbnRzLCBbXSk7XG4gIGNvbnN0IGFsbG93ZWRFdmVudHMgPSBwYXJzZVN0cmluZ1Byb3BlcnR5KGN0eC5hbGxvd2VkRXZlbnRzLCB2YWxpZEV2ZW50cykuZmlsdGVyKFxuICAgIChldmVudCkgPT4gdmFsaWRFdmVudHMuaW5jbHVkZXMoZXZlbnQgYXMgKGtleW9mIEV2ZW50cykpICYmICFpZ25vcmVkRXZlbnRzLmluY2x1ZGVzKGV2ZW50KSkgYXMgKGtleW9mIEV2ZW50cylbXTtcbiAgcmV0dXJuIGFsbG93ZWRFdmVudHM7XG59XG5cbmNvbnN0IHBhcnNlU3RyaW5nUHJvcGVydHkgPSAocHJvcGVydHk6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkLCBkZWZhdWx0VmFsdWU6IChrZXlvZiBFdmVudHMpW10pOiBzdHJpbmdbXSA9PiB7XG4gIGlmICggdHlwZW9mIHByb3BlcnR5ID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBwcm9wZXJ0eS5zcGxpdCgnLCcpLm1hcCgodmFsdWUpID0+IHZhbHVlLnRyaW0oKSk7XG4gIH1cbiAgaWYgKCBBcnJheS5pc0FycmF5KHByb3BlcnR5KSkge1xuICAgIHJldHVybiBwcm9wZXJ0eTtcbiAgfVxuICByZXR1cm4gZGVmYXVsdFZhbHVlO1xufTtcblxubGV0IHVuaXF1ZSA9IDA7XG5cbmNvbnN0IHV1aWQgPSAocHJlZml4OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgY29uc3QgdGltZSA9IGRhdGUuZ2V0VGltZSgpO1xuICBjb25zdCByYW5kb20gPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMDAwMDAwMDAwKTtcblxuICB1bmlxdWUrKztcblxuICByZXR1cm4gcHJlZml4ICsgJ18nICsgcmFuZG9tICsgdW5pcXVlICsgU3RyaW5nKHRpbWUpO1xufTtcblxuY29uc3QgaXNUZXh0YXJlYSA9IChlbGVtZW50PzogRWxlbWVudCk6IGVsZW1lbnQgaXMgSFRNTFRleHRBcmVhRWxlbWVudCA9PiB7XG4gIHJldHVybiB0eXBlb2YgZWxlbWVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICd0ZXh0YXJlYSc7XG59O1xuXG5jb25zdCBub3JtYWxpemVQbHVnaW5BcnJheSA9IChwbHVnaW5zPzogc3RyaW5nIHwgc3RyaW5nW10pOiBzdHJpbmdbXSA9PiB7XG4gIGlmICh0eXBlb2YgcGx1Z2lucyA9PT0gJ3VuZGVmaW5lZCcgfHwgcGx1Z2lucyA9PT0gJycpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICByZXR1cm4gQXJyYXkuaXNBcnJheShwbHVnaW5zKSA/IHBsdWdpbnMgOiBwbHVnaW5zLnNwbGl0KCcgJyk7XG59O1xuXG5jb25zdCBtZXJnZVBsdWdpbnMgPSAoaW5pdFBsdWdpbnM6IHN0cmluZyB8IHN0cmluZ1tdLCBpbnB1dFBsdWdpbnM/OiBzdHJpbmcgfCBzdHJpbmdbXSkgPT5cbiAgbm9ybWFsaXplUGx1Z2luQXJyYXkoaW5pdFBsdWdpbnMpLmNvbmNhdChub3JtYWxpemVQbHVnaW5BcnJheShpbnB1dFBsdWdpbnMpKTtcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWVtcHR5XG5jb25zdCBub29wOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQgPSAoKSA9PiB7IH07XG5cbmNvbnN0IGlzTnVsbE9yVW5kZWZpbmVkID0gKHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyBudWxsIHwgdW5kZWZpbmVkID0+IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQ7XG5cbmV4cG9ydCB7XG4gIGJpbmRIYW5kbGVycyxcbiAgdXVpZCxcbiAgaXNUZXh0YXJlYSxcbiAgbm9ybWFsaXplUGx1Z2luQXJyYXksXG4gIG1lcmdlUGx1Z2lucyxcbiAgbm9vcCxcbiAgaXNOdWxsT3JVbmRlZmluZWRcbn07XG4iXX0=