@skyux/text-editor 4.0.0-beta.2 → 5.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/bundles/skyux-text-editor.umd.js +730 -562
- package/bundles/skyux-text-editor.umd.js.map +1 -1
- package/documentation.json +1961 -0
- package/esm2015/modules/rich-text-display/rich-text-display.component.js +17 -20
- package/esm2015/modules/rich-text-display/rich-text-display.module.js +22 -17
- package/esm2015/modules/shared/forms-utility.js +1 -1
- package/esm2015/modules/shared/sky-text-editor-resources.module.js +41 -0
- package/esm2015/modules/text-editor/defaults/font-list-defaults.js +1 -1
- package/esm2015/modules/text-editor/defaults/font-size-list-defaults.js +1 -1
- package/esm2015/modules/text-editor/defaults/menu-defaults.js +1 -1
- package/esm2015/modules/text-editor/defaults/style-state-defaults.js +1 -1
- package/esm2015/modules/text-editor/defaults/toolbar-action-defaults.js +1 -1
- package/esm2015/modules/text-editor/menubar/text-editor-menubar.component.js +32 -36
- package/esm2015/modules/text-editor/services/text-editor-adapter.service.js +17 -22
- package/esm2015/modules/text-editor/services/text-editor-selection.service.js +12 -13
- package/esm2015/modules/text-editor/services/text-editor.service.js +11 -11
- package/esm2015/modules/text-editor/services/text-sanitization.service.js +12 -14
- package/esm2015/modules/text-editor/text-editor.component.js +63 -68
- package/esm2015/modules/text-editor/text-editor.module.js +68 -27
- package/esm2015/modules/text-editor/toolbar/text-editor-toolbar.component.js +40 -42
- package/esm2015/modules/text-editor/types/editor-command.js +2 -1
- package/esm2015/modules/text-editor/types/editor-setting.js +2 -1
- package/esm2015/modules/text-editor/types/font-state.js +2 -1
- package/esm2015/modules/text-editor/types/menu-type.js +2 -1
- package/esm2015/modules/text-editor/types/style-state.js +2 -1
- package/esm2015/modules/text-editor/types/text-editor-merge-field.js +2 -1
- package/esm2015/modules/text-editor/types/toolbar-action-type.js +2 -1
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-context.js +1 -1
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-result.js +2 -1
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal.component.js +21 -18
- package/esm2015/modules/text-editor/url-modal/text-editor-url-target.js +1 -1
- package/esm2015/public-api.js +15 -0
- package/esm2015/skyux-text-editor.js +2 -14
- package/fesm2015/skyux-text-editor.js +359 -312
- package/fesm2015/skyux-text-editor.js.map +1 -1
- package/modules/rich-text-display/rich-text-display.component.d.ts +3 -0
- package/modules/rich-text-display/rich-text-display.module.d.ts +6 -0
- package/modules/shared/sky-text-editor-resources.module.d.ts +14 -0
- package/modules/text-editor/menubar/text-editor-menubar.component.d.ts +3 -0
- package/modules/text-editor/services/text-editor-adapter.service.d.ts +3 -0
- package/modules/text-editor/services/text-editor-selection.service.d.ts +3 -0
- package/modules/text-editor/services/text-editor.service.d.ts +3 -0
- package/modules/text-editor/services/text-sanitization.service.d.ts +3 -0
- package/modules/text-editor/text-editor.component.d.ts +3 -0
- package/modules/text-editor/text-editor.module.d.ts +21 -0
- package/modules/text-editor/toolbar/text-editor-toolbar.component.d.ts +3 -0
- package/modules/text-editor/url-modal/text-editor-url-modal.component.d.ts +3 -0
- package/package.json +20 -36
- package/public-api.d.ts +12 -0
- package/skyux-text-editor.d.ts +2 -13
- package/CHANGELOG.md +0 -13
- package/bundles/skyux-text-editor.umd.min.js +0 -2
- package/bundles/skyux-text-editor.umd.min.js.map +0 -1
- package/esm2015/plugin-resources/text-editor-resources-provider.js +0 -16
- package/esm2015/plugin-resources/text-editor-resources.module.js +0 -19
- package/esm2015/public_api.js +0 -3
- package/esm5/modules/rich-text-display/rich-text-display.component.js +0 -44
- package/esm5/modules/rich-text-display/rich-text-display.module.js +0 -24
- package/esm5/modules/shared/forms-utility.js +0 -14
- package/esm5/modules/text-editor/defaults/font-list-defaults.js +0 -42
- package/esm5/modules/text-editor/defaults/font-size-list-defaults.js +0 -5
- package/esm5/modules/text-editor/defaults/menu-defaults.js +0 -8
- package/esm5/modules/text-editor/defaults/style-state-defaults.js +0 -15
- package/esm5/modules/text-editor/defaults/toolbar-action-defaults.js +0 -12
- package/esm5/modules/text-editor/menubar/text-editor-menubar.component.js +0 -199
- package/esm5/modules/text-editor/services/text-editor-adapter.service.js +0 -470
- package/esm5/modules/text-editor/services/text-editor-selection.service.js +0 -77
- package/esm5/modules/text-editor/services/text-editor.service.js +0 -49
- package/esm5/modules/text-editor/services/text-sanitization.service.js +0 -41
- package/esm5/modules/text-editor/text-editor.component.js +0 -287
- package/esm5/modules/text-editor/text-editor.module.js +0 -63
- package/esm5/modules/text-editor/toolbar/text-editor-toolbar.component.js +0 -178
- package/esm5/modules/text-editor/types/editor-command.js +0 -1
- package/esm5/modules/text-editor/types/editor-setting.js +0 -1
- package/esm5/modules/text-editor/types/font-state.js +0 -1
- package/esm5/modules/text-editor/types/menu-type.js +0 -1
- package/esm5/modules/text-editor/types/style-state.js +0 -1
- package/esm5/modules/text-editor/types/text-editor-merge-field.js +0 -1
- package/esm5/modules/text-editor/types/toolbar-action-type.js +0 -1
- package/esm5/modules/text-editor/url-modal/text-editor-url-modal-context.js +0 -10
- package/esm5/modules/text-editor/url-modal/text-editor-url-modal-result.js +0 -1
- package/esm5/modules/text-editor/url-modal/text-editor-url-modal.component.js +0 -120
- package/esm5/modules/text-editor/url-modal/text-editor-url-target.js +0 -9
- package/esm5/plugin-resources/text-editor-resources-provider.js +0 -17
- package/esm5/plugin-resources/text-editor-resources.module.js +0 -22
- package/esm5/public_api.js +0 -3
- package/esm5/skyux-text-editor.js +0 -17
- package/fesm5/skyux-text-editor.js +0 -1620
- package/fesm5/skyux-text-editor.js.map +0 -1
- package/plugin-resources/text-editor-resources-provider.d.ts +0 -5
- package/plugin-resources/text-editor-resources.module.d.ts +0 -2
- package/public_api.d.ts +0 -7
- package/skyux-text-editor.metadata.json +0 -1
- package/src/assets/img/default-anatomy.png +0 -0
- package/src/assets/img/default-option-menu-toolbar-items.png +0 -0
- package/src/assets/img/default-use-when.png +0 -0
- package/src/assets/img/modern-anatomy.png +0 -0
- package/src/assets/img/modern-option-menu-toolbar-items.png +0 -0
- package/src/assets/img/modern-use-when.png +0 -0
- package/src/assets/locales/resources_en_US.json +0 -130
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
var SkyTextEditorService = /** @class */ (function () {
|
|
8
|
-
function SkyTextEditorService() {
|
|
9
|
-
/**
|
|
10
|
-
* A dictionary representing all active text editors and their settings.
|
|
11
|
-
*/
|
|
12
|
-
this.editors = {};
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Returns the click observable from the editor with the corresponding id.
|
|
16
|
-
*/
|
|
17
|
-
SkyTextEditorService.prototype.clickListener = function (id) {
|
|
18
|
-
return this.editors[id].clickObservable;
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Returns the command change observable from the editor with the corresponding id.
|
|
22
|
-
*/
|
|
23
|
-
SkyTextEditorService.prototype.commandChangeListener = function (id) {
|
|
24
|
-
return this.editors[id].commandChangeObservable;
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* Removes editor from the `editors` index by id.
|
|
28
|
-
*/
|
|
29
|
-
SkyTextEditorService.prototype.removeEditor = function (id) {
|
|
30
|
-
if (id in this.editors) {
|
|
31
|
-
delete this.editors[id];
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* Returns the selection change observable from the editor with the corresponding id.
|
|
36
|
-
*/
|
|
37
|
-
SkyTextEditorService.prototype.selectionChangeListener = function (id) {
|
|
38
|
-
return this.editors[id].selectionChangeObservable;
|
|
39
|
-
};
|
|
40
|
-
SkyTextEditorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SkyTextEditorService_Factory() { return new SkyTextEditorService(); }, token: SkyTextEditorService, providedIn: "root" });
|
|
41
|
-
SkyTextEditorService = __decorate([
|
|
42
|
-
Injectable({
|
|
43
|
-
providedIn: 'root'
|
|
44
|
-
})
|
|
45
|
-
], SkyTextEditorService);
|
|
46
|
-
return SkyTextEditorService;
|
|
47
|
-
}());
|
|
48
|
-
export { SkyTextEditorService };
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC90ZXh0LWVkaXRvci8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvdGV4dC1lZGl0b3Ivc2VydmljZXMvdGV4dC1lZGl0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQzs7QUFVdkI7O0dBRUc7QUFJSDtJQUFBO1FBRUU7O1dBRUc7UUFDSSxZQUFPLEdBQXFDLEVBQUUsQ0FBQztLQWdDdkQ7SUE5QkM7O09BRUc7SUFDSSw0Q0FBYSxHQUFwQixVQUFxQixFQUFVO1FBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUM7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0RBQXFCLEdBQTVCLFVBQTZCLEVBQVU7UUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QixDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNJLDJDQUFZLEdBQW5CLFVBQW9CLEVBQVU7UUFDNUIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxzREFBdUIsR0FBOUIsVUFBK0IsRUFBVTtRQUN2QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMseUJBQXlCLENBQUM7SUFDcEQsQ0FBQzs7SUFuQ1Usb0JBQW9CO1FBSGhDLFVBQVUsQ0FBQztZQUNWLFVBQVUsRUFBRSxNQUFNO1NBQ25CLENBQUM7T0FDVyxvQkFBb0IsQ0FxQ2hDOytCQXZERDtDQXVEQyxBQXJDRCxJQXFDQztTQXJDWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBPYnNlcnZhYmxlXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBFZGl0b3JTZXR0aW5nXG59IGZyb20gJy4uL3R5cGVzL2VkaXRvci1zZXR0aW5nJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dEVkaXRvclNlcnZpY2Uge1xuXG4gIC8qKlxuICAgKiBBIGRpY3Rpb25hcnkgcmVwcmVzZW50aW5nIGFsbCBhY3RpdmUgdGV4dCBlZGl0b3JzIGFuZCB0aGVpciBzZXR0aW5ncy5cbiAgICovXG4gIHB1YmxpYyBlZGl0b3JzOiB7IFtrZXk6IHN0cmluZ106IEVkaXRvclNldHRpbmcgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjbGljayBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIGNsaWNrTGlzdGVuZXIoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmVkaXRvcnNbaWRdLmNsaWNrT2JzZXJ2YWJsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjb21tYW5kIGNoYW5nZSBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIGNvbW1hbmRDaGFuZ2VMaXN0ZW5lcihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yc1tpZF0uY29tbWFuZENoYW5nZU9ic2VydmFibGU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBlZGl0b3IgZnJvbSB0aGUgYGVkaXRvcnNgIGluZGV4IGJ5IGlkLlxuICAgKi9cbiAgcHVibGljIHJlbW92ZUVkaXRvcihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKGlkIGluIHRoaXMuZWRpdG9ycykge1xuICAgICAgZGVsZXRlIHRoaXMuZWRpdG9yc1tpZF07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHNlbGVjdGlvbiBjaGFuZ2Ugb2JzZXJ2YWJsZSBmcm9tIHRoZSBlZGl0b3Igd2l0aCB0aGUgY29ycmVzcG9uZGluZyBpZC5cbiAgICovXG4gIHB1YmxpYyBzZWxlY3Rpb25DaGFuZ2VMaXN0ZW5lcihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yc1tpZF0uc2VsZWN0aW9uQ2hhbmdlT2JzZXJ2YWJsZTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
// TODO: figure out how to get the following `import` to work with docs-tools library.
|
|
5
|
-
// import DOMPurify from 'dompurify';
|
|
6
|
-
var createDOMPurify = require('dompurify');
|
|
7
|
-
var domPurify = createDOMPurify(window);
|
|
8
|
-
domPurify.addHook('afterSanitizeAttributes', function (node) {
|
|
9
|
-
// Set all elements owning target to target=_blank
|
|
10
|
-
// so we only allow the target attribute with that value.
|
|
11
|
-
if (!!node.getAttribute('target')) {
|
|
12
|
-
node.setAttribute('target', '_blank');
|
|
13
|
-
node.setAttribute('rel', 'noopener noreferrer');
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
/**
|
|
17
|
-
* The `SkyTextSanitizationService` user the `DOMPurify` library to sanitize strings for use
|
|
18
|
-
* in the DOM. `DOMPurify` allows more customization than Angular's internal `DomSanitizer` so we
|
|
19
|
-
* can preserve `<style>` tags and allow `target` attributes for new tab links.
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
var SkyTextSanitizationService = /** @class */ (function () {
|
|
23
|
-
function SkyTextSanitizationService() {
|
|
24
|
-
this.allowedAttributes = ['target'];
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Returns a sanitized string, allowing target attribute for new tab links.
|
|
28
|
-
*/
|
|
29
|
-
SkyTextSanitizationService.prototype.sanitize = function (htmlString) {
|
|
30
|
-
return domPurify.sanitize(htmlString, { ADD_ATTR: this.allowedAttributes });
|
|
31
|
-
};
|
|
32
|
-
SkyTextSanitizationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SkyTextSanitizationService_Factory() { return new SkyTextSanitizationService(); }, token: SkyTextSanitizationService, providedIn: "root" });
|
|
33
|
-
SkyTextSanitizationService = __decorate([
|
|
34
|
-
Injectable({
|
|
35
|
-
providedIn: 'root'
|
|
36
|
-
})
|
|
37
|
-
], SkyTextSanitizationService);
|
|
38
|
-
return SkyTextSanitizationService;
|
|
39
|
-
}());
|
|
40
|
-
export { SkyTextSanitizationService };
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zYW5pdGl6YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC90ZXh0LWVkaXRvci8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvdGV4dC1lZGl0b3Ivc2VydmljZXMvdGV4dC1zYW5pdGl6YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsc0ZBQXNGO0FBQ3RGLHFDQUFxQztBQUNyQyxJQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDN0MsSUFBTSxTQUFTLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTFDLFNBQVMsQ0FBQyxPQUFPLENBQUMseUJBQXlCLEVBQUUsVUFBQyxJQUFhO0lBQ3pELGtEQUFrRDtJQUNsRCx5REFBeUQ7SUFDekQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0tBQ2pEO0FBQ0gsQ0FBQyxDQUFDLENBQUM7QUFFSDs7Ozs7R0FLRztBQUlIO0lBQUE7UUFFVSxzQkFBaUIsR0FBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBU2xEO0lBUEM7O09BRUc7SUFDSSw2Q0FBUSxHQUFmLFVBQWdCLFVBQWtCO1FBQ2hDLE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUM5RSxDQUFDOztJQVRVLDBCQUEwQjtRQUh0QyxVQUFVLENBQUM7WUFDVixVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDO09BQ1csMEJBQTBCLENBV3RDO3FDQXRDRDtDQXNDQyxBQVhELElBV0M7U0FYWSwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBUT0RPOiBmaWd1cmUgb3V0IGhvdyB0byBnZXQgdGhlIGZvbGxvd2luZyBgaW1wb3J0YCB0byB3b3JrIHdpdGggZG9jcy10b29scyBsaWJyYXJ5LlxuLy8gaW1wb3J0IERPTVB1cmlmeSBmcm9tICdkb21wdXJpZnknO1xuY29uc3QgY3JlYXRlRE9NUHVyaWZ5ID0gcmVxdWlyZSgnZG9tcHVyaWZ5Jyk7XG5jb25zdCBkb21QdXJpZnkgPSBjcmVhdGVET01QdXJpZnkod2luZG93KTtcblxuZG9tUHVyaWZ5LmFkZEhvb2soJ2FmdGVyU2FuaXRpemVBdHRyaWJ1dGVzJywgKG5vZGU6IEVsZW1lbnQpID0+IHtcbiAgLy8gU2V0IGFsbCBlbGVtZW50cyBvd25pbmcgdGFyZ2V0IHRvIHRhcmdldD1fYmxhbmtcbiAgLy8gc28gd2Ugb25seSBhbGxvdyB0aGUgdGFyZ2V0IGF0dHJpYnV0ZSB3aXRoIHRoYXQgdmFsdWUuXG4gIGlmICghIW5vZGUuZ2V0QXR0cmlidXRlKCd0YXJnZXQnKSkge1xuICAgIG5vZGUuc2V0QXR0cmlidXRlKCd0YXJnZXQnLCAnX2JsYW5rJyk7XG4gICAgbm9kZS5zZXRBdHRyaWJ1dGUoJ3JlbCcsICdub29wZW5lciBub3JlZmVycmVyJyk7XG4gIH1cbn0pO1xuXG4vKipcbiAqIFRoZSBgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2VgIHVzZXIgdGhlIGBET01QdXJpZnlgIGxpYnJhcnkgdG8gc2FuaXRpemUgc3RyaW5ncyBmb3IgdXNlXG4gKiBpbiB0aGUgRE9NLiBgRE9NUHVyaWZ5YCBhbGxvd3MgbW9yZSBjdXN0b21pemF0aW9uIHRoYW4gQW5ndWxhcidzIGludGVybmFsIGBEb21TYW5pdGl6ZXJgIHNvIHdlXG4gKiBjYW4gcHJlc2VydmUgYDxzdHlsZT5gIHRhZ3MgYW5kIGFsbG93IGB0YXJnZXRgIGF0dHJpYnV0ZXMgZm9yIG5ldyB0YWIgbGlua3MuXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgYWxsb3dlZEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gWyd0YXJnZXQnXTtcblxuICAvKipcbiAgICogUmV0dXJucyBhIHNhbml0aXplZCBzdHJpbmcsIGFsbG93aW5nIHRhcmdldCBhdHRyaWJ1dGUgZm9yIG5ldyB0YWIgbGlua3MuXG4gICAqL1xuICBwdWJsaWMgc2FuaXRpemUoaHRtbFN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZG9tUHVyaWZ5LnNhbml0aXplKGh0bWxTdHJpbmcsIHsgQUREX0FUVFI6IHRoaXMuYWxsb3dlZEF0dHJpYnV0ZXMgfSk7XG4gIH1cblxufVxuIl19
|
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
import { __assign, __decorate } from "tslib";
|
|
2
|
-
import { AfterViewInit, ChangeDetectorRef, ChangeDetectionStrategy, Component, ElementRef, forwardRef, Input, OnDestroy, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
3
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
|
-
import { takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { Subject } from 'rxjs';
|
|
6
|
-
import { SkyCoreAdapterService } from '@skyux/core';
|
|
7
|
-
import { MENU_DEFAULTS } from './defaults/menu-defaults';
|
|
8
|
-
import { STYLE_STATE_DEFAULTS } from './defaults/style-state-defaults';
|
|
9
|
-
import { TOOLBAR_ACTION_DEFAULTS } from './defaults/toolbar-action-defaults';
|
|
10
|
-
import { SkyTextEditorAdapterService } from './services/text-editor-adapter.service';
|
|
11
|
-
import { SkyTextEditorService } from './services/text-editor.service';
|
|
12
|
-
import { SkyTextSanitizationService } from './services/text-sanitization.service';
|
|
13
|
-
import { FONT_LIST_DEFAULTS } from './defaults/font-list-defaults';
|
|
14
|
-
import { FONT_SIZE_LIST_DEFAULTS } from './defaults/font-size-list-defaults';
|
|
15
|
-
import { SkyFormsUtility } from '../shared/forms-utility';
|
|
16
|
-
/**
|
|
17
|
-
* Auto-incrementing integer used to generate unique ids for radio components.
|
|
18
|
-
*/
|
|
19
|
-
var nextUniqueId = 0;
|
|
20
|
-
/**
|
|
21
|
-
* The text editor component lets users format and manipulate text.
|
|
22
|
-
*/
|
|
23
|
-
var SkyTextEditorComponent = /** @class */ (function () {
|
|
24
|
-
function SkyTextEditorComponent(changeDetector, coreAdapterService, adapterService, editorService, sanitizationService) {
|
|
25
|
-
this.changeDetector = changeDetector;
|
|
26
|
-
this.coreAdapterService = coreAdapterService;
|
|
27
|
-
this.adapterService = adapterService;
|
|
28
|
-
this.editorService = editorService;
|
|
29
|
-
this.sanitizationService = sanitizationService;
|
|
30
|
-
/**
|
|
31
|
-
* Indicates whether to put focus on the editor after it renders.
|
|
32
|
-
*/
|
|
33
|
-
this.autofocus = false;
|
|
34
|
-
this.editorFocusStream = new Subject();
|
|
35
|
-
// tslint:disable: max-line-length
|
|
36
|
-
/**
|
|
37
|
-
* Specifies the fonts to include in the font picker.
|
|
38
|
-
* @default [{name: 'Blackbaud Sans', value: '"Blackbaud Sans", Arial, sans-serif'}, {name: 'Arial', value: 'Arial'}, {name: 'Arial Black', value: '"Arial Black"'}, {name: 'Courier New', value: '"Courier New"'}, {name: 'Georgia', value: 'Georgia, serif'}, {name: 'Tahoma', value: 'Tahoma, Geneva, sans-serif'}, {name: 'Times New Roman', value: '"Times New Roman"'}, {name: 'Trebuchet MS', value: '"Trebuchet MS", sans-serif'}, {name: 'Verdana', value: 'Verdana, Geneva, sans-serif'}]
|
|
39
|
-
*/
|
|
40
|
-
// tslint:enable: max-line-length
|
|
41
|
-
this.fontList = FONT_LIST_DEFAULTS;
|
|
42
|
-
/**
|
|
43
|
-
* Specifies the font sizes to include in the font size picker.
|
|
44
|
-
* @default [6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48]
|
|
45
|
-
*/
|
|
46
|
-
this.fontSizeList = FONT_SIZE_LIST_DEFAULTS;
|
|
47
|
-
/**
|
|
48
|
-
* Specifies a unique ID attribute for the text editor.
|
|
49
|
-
* By default, the component generates a random ID.
|
|
50
|
-
*/
|
|
51
|
-
this.id = "sky-text-editor-" + ++nextUniqueId;
|
|
52
|
-
/**
|
|
53
|
-
* Specifies the menus to include in the menu bar.
|
|
54
|
-
* @default [ 'edit', 'format' ]
|
|
55
|
-
*/
|
|
56
|
-
this.menus = MENU_DEFAULTS;
|
|
57
|
-
/**
|
|
58
|
-
* Specifies the merge fields to include in the merge field menu.
|
|
59
|
-
*/
|
|
60
|
-
this.mergeFields = [];
|
|
61
|
-
// tslint:disable: max-line-length
|
|
62
|
-
/**
|
|
63
|
-
* Specifies the actions to include in the toolbar and determines their order.
|
|
64
|
-
* @default [ 'font-family', 'font-size', 'font-style', 'color', 'list', 'link ]
|
|
65
|
-
*/
|
|
66
|
-
// tslint:enable: max-line-length
|
|
67
|
-
this.toolbarActions = TOOLBAR_ACTION_DEFAULTS;
|
|
68
|
-
this.focusInitialized = false;
|
|
69
|
-
this.initialized = false;
|
|
70
|
-
this.ngUnsubscribe = new Subject();
|
|
71
|
-
this._disabled = false;
|
|
72
|
-
this._initialStyleState = Object.assign({}, STYLE_STATE_DEFAULTS);
|
|
73
|
-
this._placeholder = '';
|
|
74
|
-
this._value = '<p></p>';
|
|
75
|
-
/* istanbul ignore next */
|
|
76
|
-
this.onTouch = function () { };
|
|
77
|
-
/* istanbul ignore next */
|
|
78
|
-
this._onChange = function (_) { };
|
|
79
|
-
}
|
|
80
|
-
SkyTextEditorComponent_1 = SkyTextEditorComponent;
|
|
81
|
-
Object.defineProperty(SkyTextEditorComponent.prototype, "disabled", {
|
|
82
|
-
get: function () {
|
|
83
|
-
return this._disabled;
|
|
84
|
-
},
|
|
85
|
-
/**
|
|
86
|
-
* Indicates whether to disable the text editor.
|
|
87
|
-
* @default false
|
|
88
|
-
*/
|
|
89
|
-
set: function (value) {
|
|
90
|
-
var coercedValue = SkyFormsUtility.coerceBooleanProperty(value);
|
|
91
|
-
if (coercedValue !== this.disabled) {
|
|
92
|
-
this._disabled = coercedValue;
|
|
93
|
-
if (this._disabled) {
|
|
94
|
-
this.adapterService.disableEditor(this.id, this.focusableChildren, this.iframeRef.nativeElement);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.adapterService.enableEditor(this.id, this.focusableChildren, this.iframeRef.nativeElement);
|
|
98
|
-
}
|
|
99
|
-
this.changeDetector.markForCheck();
|
|
100
|
-
}
|
|
101
|
-
},
|
|
102
|
-
enumerable: true,
|
|
103
|
-
configurable: true
|
|
104
|
-
});
|
|
105
|
-
Object.defineProperty(SkyTextEditorComponent.prototype, "initialStyleState", {
|
|
106
|
-
get: function () {
|
|
107
|
-
return this._initialStyleState;
|
|
108
|
-
},
|
|
109
|
-
/**
|
|
110
|
-
* Specifies the initial styles for all content, including background color, font size, and link state.
|
|
111
|
-
*/
|
|
112
|
-
set: function (state) {
|
|
113
|
-
// Do not update the state after initialization has taken place
|
|
114
|
-
if (!this.initialized) {
|
|
115
|
-
this._initialStyleState = __assign(__assign({}, STYLE_STATE_DEFAULTS), state);
|
|
116
|
-
}
|
|
117
|
-
},
|
|
118
|
-
enumerable: true,
|
|
119
|
-
configurable: true
|
|
120
|
-
});
|
|
121
|
-
Object.defineProperty(SkyTextEditorComponent.prototype, "placeholder", {
|
|
122
|
-
get: function () {
|
|
123
|
-
return this._placeholder;
|
|
124
|
-
},
|
|
125
|
-
/**
|
|
126
|
-
* Specifies placeholder text to display when the text entry area is empty.
|
|
127
|
-
*/
|
|
128
|
-
set: function (value) {
|
|
129
|
-
if (value !== this._placeholder) {
|
|
130
|
-
this._placeholder = value;
|
|
131
|
-
if (this.initialized) {
|
|
132
|
-
this.adapterService.setPlaceholder(this.id, value);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
},
|
|
136
|
-
enumerable: true,
|
|
137
|
-
configurable: true
|
|
138
|
-
});
|
|
139
|
-
Object.defineProperty(SkyTextEditorComponent.prototype, "value", {
|
|
140
|
-
get: function () {
|
|
141
|
-
return this._value;
|
|
142
|
-
},
|
|
143
|
-
set: function (value) {
|
|
144
|
-
// Set clear state to be an empty string
|
|
145
|
-
var valueString = value;
|
|
146
|
-
if (!value || (value.trim() === '<p></p>' && value.trim() === '<br>')) {
|
|
147
|
-
valueString = '';
|
|
148
|
-
}
|
|
149
|
-
valueString = this.sanitizationService.sanitize(valueString).trim();
|
|
150
|
-
if (this._value !== valueString) {
|
|
151
|
-
this._value = valueString;
|
|
152
|
-
// Autofocus isn't testable in Firefox and IE.
|
|
153
|
-
/* istanbul ignore next */
|
|
154
|
-
if (this.autofocus && !this.focusInitialized) {
|
|
155
|
-
this.adapterService.focusEditor(this.id);
|
|
156
|
-
this.focusInitialized = true;
|
|
157
|
-
}
|
|
158
|
-
this.onChange();
|
|
159
|
-
}
|
|
160
|
-
},
|
|
161
|
-
enumerable: true,
|
|
162
|
-
configurable: true
|
|
163
|
-
});
|
|
164
|
-
SkyTextEditorComponent.prototype.ngAfterViewInit = function () {
|
|
165
|
-
var _this = this;
|
|
166
|
-
this.adapterService.addEditor(this.id, this.iframeRef.nativeElement, this.initialStyleState, this.placeholder);
|
|
167
|
-
this.editorService.selectionChangeListener(this.id)
|
|
168
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
169
|
-
.subscribe(function () {
|
|
170
|
-
_this.updateValueAndStyle();
|
|
171
|
-
_this.editorFocusStream.next();
|
|
172
|
-
});
|
|
173
|
-
this.editorService.clickListener(this.id)
|
|
174
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
175
|
-
.subscribe(function () {
|
|
176
|
-
_this.editorFocusStream.next();
|
|
177
|
-
});
|
|
178
|
-
this.editorService.commandChangeListener(this.id)
|
|
179
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
180
|
-
.subscribe(function () {
|
|
181
|
-
_this.updateValueAndStyle();
|
|
182
|
-
});
|
|
183
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
184
|
-
/* istanbul ignore next */
|
|
185
|
-
if (this.autofocus) {
|
|
186
|
-
this.adapterService.focusEditor(this.id);
|
|
187
|
-
}
|
|
188
|
-
this.focusableChildren = this.coreAdapterService.getFocusableChildren(this.iframeRef.nativeElement, {
|
|
189
|
-
ignoreVisibility: true
|
|
190
|
-
});
|
|
191
|
-
this.initialized = true;
|
|
192
|
-
};
|
|
193
|
-
SkyTextEditorComponent.prototype.ngOnDestroy = function () {
|
|
194
|
-
this.adapterService.removeObservers(this.editorService.editors[this.id]);
|
|
195
|
-
this.editorService.removeEditor(this.id);
|
|
196
|
-
this.ngUnsubscribe.next();
|
|
197
|
-
this.ngUnsubscribe.complete();
|
|
198
|
-
};
|
|
199
|
-
SkyTextEditorComponent.prototype.writeValue = function (obj) {
|
|
200
|
-
this.value = obj;
|
|
201
|
-
// Update HTML if necessary.
|
|
202
|
-
var editorValue = this.adapterService.getEditorInnerHtml(this.id);
|
|
203
|
-
if (this.initialized && editorValue !== this._value) {
|
|
204
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
205
|
-
}
|
|
206
|
-
};
|
|
207
|
-
SkyTextEditorComponent.prototype.registerOnChange = function (fn) {
|
|
208
|
-
this._onChange = fn;
|
|
209
|
-
};
|
|
210
|
-
SkyTextEditorComponent.prototype.registerOnTouched = function (fn) {
|
|
211
|
-
this.onTouch = fn;
|
|
212
|
-
};
|
|
213
|
-
/**
|
|
214
|
-
* Implemented as part of ControlValueAccessor.
|
|
215
|
-
*/
|
|
216
|
-
SkyTextEditorComponent.prototype.setDisabledState = function (isDisabled) {
|
|
217
|
-
this.disabled = isDisabled;
|
|
218
|
-
};
|
|
219
|
-
SkyTextEditorComponent.prototype.onChange = function () {
|
|
220
|
-
this._onChange(this.value);
|
|
221
|
-
};
|
|
222
|
-
SkyTextEditorComponent.prototype.updateValueAndStyle = function () {
|
|
223
|
-
this.value = this.adapterService.getEditorInnerHtml(this.id);
|
|
224
|
-
this._initialStyleState = __assign(__assign({}, this._initialStyleState), this.adapterService.getStyleState(this.id));
|
|
225
|
-
};
|
|
226
|
-
var SkyTextEditorComponent_1;
|
|
227
|
-
SkyTextEditorComponent.ctorParameters = function () { return [
|
|
228
|
-
{ type: ChangeDetectorRef },
|
|
229
|
-
{ type: SkyCoreAdapterService },
|
|
230
|
-
{ type: SkyTextEditorAdapterService },
|
|
231
|
-
{ type: SkyTextEditorService },
|
|
232
|
-
{ type: SkyTextSanitizationService }
|
|
233
|
-
]; };
|
|
234
|
-
__decorate([
|
|
235
|
-
Input()
|
|
236
|
-
], SkyTextEditorComponent.prototype, "autofocus", void 0);
|
|
237
|
-
__decorate([
|
|
238
|
-
Input()
|
|
239
|
-
], SkyTextEditorComponent.prototype, "disabled", null);
|
|
240
|
-
__decorate([
|
|
241
|
-
Input()
|
|
242
|
-
], SkyTextEditorComponent.prototype, "fontList", void 0);
|
|
243
|
-
__decorate([
|
|
244
|
-
Input()
|
|
245
|
-
], SkyTextEditorComponent.prototype, "fontSizeList", void 0);
|
|
246
|
-
__decorate([
|
|
247
|
-
Input()
|
|
248
|
-
], SkyTextEditorComponent.prototype, "id", void 0);
|
|
249
|
-
__decorate([
|
|
250
|
-
Input()
|
|
251
|
-
], SkyTextEditorComponent.prototype, "initialStyleState", null);
|
|
252
|
-
__decorate([
|
|
253
|
-
Input()
|
|
254
|
-
], SkyTextEditorComponent.prototype, "menus", void 0);
|
|
255
|
-
__decorate([
|
|
256
|
-
Input()
|
|
257
|
-
], SkyTextEditorComponent.prototype, "mergeFields", void 0);
|
|
258
|
-
__decorate([
|
|
259
|
-
Input()
|
|
260
|
-
], SkyTextEditorComponent.prototype, "placeholder", null);
|
|
261
|
-
__decorate([
|
|
262
|
-
Input()
|
|
263
|
-
], SkyTextEditorComponent.prototype, "toolbarActions", void 0);
|
|
264
|
-
__decorate([
|
|
265
|
-
ViewChild('iframe')
|
|
266
|
-
], SkyTextEditorComponent.prototype, "iframeRef", void 0);
|
|
267
|
-
SkyTextEditorComponent = SkyTextEditorComponent_1 = __decorate([
|
|
268
|
-
Component({
|
|
269
|
-
selector: 'sky-text-editor',
|
|
270
|
-
template: "<div\n class=\"sky-text-editor\"\n>\n <sky-toolbar\n class=\"sky-text-editor-toolbar\"\n >\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"menubar\"\n role=\"toolbar\"\n >\n <sky-text-editor-menubar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [menus]=\"menus\"\n [mergeFields]=\"mergeFields\"\n >\n </sky-text-editor-menubar>\n </sky-toolbar-section>\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"toolbar\"\n role=\"toolbar\"\n >\n <sky-text-editor-toolbar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [fontList]=\"fontList\"\n [fontSizeList]=\"fontSizeList\"\n [toolbarActions]=\"toolbarActions\"\n [styleState]=\"initialStyleState\"\n >\n </sky-text-editor-toolbar>\n </sky-toolbar-section>\n </sky-toolbar>\n <iframe\n class=\"sky-text-editor-wrapper\"\n src=\"about:blank\"\n title=\"Text Editor\"\n [ngClass]=\"{\n 'sky-text-editor-wrapper-disabled': disabled\n }\"\n #iframe\n >\n </iframe>\n</div>\n",
|
|
271
|
-
providers: [
|
|
272
|
-
{
|
|
273
|
-
provide: NG_VALUE_ACCESSOR,
|
|
274
|
-
// tslint:disable-next-line: no-forward-ref
|
|
275
|
-
useExisting: forwardRef(function () { return SkyTextEditorComponent_1; }),
|
|
276
|
-
multi: true
|
|
277
|
-
}
|
|
278
|
-
],
|
|
279
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
280
|
-
encapsulation: ViewEncapsulation.None,
|
|
281
|
-
styles: [".sky-text-editor .sky-text-editor-wrapper{display:flex;flex-wrap:wrap;background-color:#fff;width:100%;height:300px;padding:1rem;font-size:1.2rem;border:1px solid silver;overflow-y:auto;outline:0}.sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ededee}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-left:1px solid #cdcfd2!important;border-right:1px solid #cdcfd2!important}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-dropdown-button{border:none}.sky-text-editor .sky-text-editor-toolbar sky-text-editor-menubar,.sky-text-editor .sky-text-editor-toolbar sky-text-editor-toolbar{display:flex;flex-wrap:wrap}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper{border:1px solid #d2d2d2}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ececed}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar{padding:10px 10px 0}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-top:1px solid #d2d2d2!important;border-left:1px solid #d2d2d2!important;border-right:1px solid #d2d2d2!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 0 0!important}"]
|
|
282
|
-
})
|
|
283
|
-
], SkyTextEditorComponent);
|
|
284
|
-
return SkyTextEditorComponent;
|
|
285
|
-
}());
|
|
286
|
-
export { SkyTextEditorComponent };
|
|
287
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsibW9kdWxlcy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLGlCQUFpQixFQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxTQUFTLEVBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0wsT0FBTyxFQUNSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLHFCQUFxQixFQUN0QixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLGlDQUFpQyxDQUFDO0FBRXpDLE9BQU8sRUFDTCx1QkFBdUIsRUFDeEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUU1QyxPQUFPLEVBQ0wsMkJBQTJCLEVBQzVCLE1BQU0sd0NBQXdDLENBQUM7QUFFaEQsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLGdDQUFnQyxDQUFDO0FBRXhDLE9BQU8sRUFDTCwwQkFBMEIsRUFDM0IsTUFBTSxzQ0FBc0MsQ0FBQztBQUU5QyxPQUFPLEVBQ0wsa0JBQWtCLEVBQ25CLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN4QixNQUFNLG9DQUFvQyxDQUFDO0FBc0I1QyxPQUFPLEVBQ0wsZUFBZSxFQUNoQixNQUFNLHlCQUF5QixDQUFDO0FBRWpDOztH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QUFDOzZEQUNVO0lBOUluQixzQkFBc0I7UUFmbEMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQiw4dENBQTJDO1lBRTNDLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsaUJBQWlCO29CQUMxQiwyQ0FBMkM7b0JBQzNDLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLHdCQUFzQixFQUF0QixDQUFzQixDQUFDO29CQUNyRCxLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1lBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O1NBQ3RDLENBQUM7T0FDVyxzQkFBc0IsQ0FvUWxDO0lBQUQsNkJBQUM7Q0FBQSxBQXBRRCxJQW9RQztTQXBRWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHtcbiAgTUVOVV9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL21lbnUtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTVFlMRV9TVEFURV9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL3N0eWxlLXN0YXRlLWRlZmF1bHRzJztcblxuaW1wb3J0IHtcbiAgVE9PTEJBUl9BQ1RJT05fREVGQVVMVFNcbn0gZnJvbSAnLi9kZWZhdWx0cy90b29sYmFyLWFjdGlvbi1kZWZhdWx0cyc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JBZGFwdGVyU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzL3RleHQtZWRpdG9yLWFkYXB0ZXIuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JTZXJ2aWNlXG59IGZyb20gJy4vc2VydmljZXMvdGV4dC1lZGl0b3Iuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRTYW5pdGl6YXRpb25TZXJ2aWNlXG59IGZyb20gJy4vc2VydmljZXMvdGV4dC1zYW5pdGl6YXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIEZPTlRfTElTVF9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL2ZvbnQtbGlzdC1kZWZhdWx0cyc7XG5cbmltcG9ydCB7XG4gIEZPTlRfU0laRV9MSVNUX0RFRkFVTFRTXG59IGZyb20gJy4vZGVmYXVsdHMvZm9udC1zaXplLWxpc3QtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yRm9udFxufSBmcm9tICcuL3R5cGVzL2ZvbnQtc3RhdGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yTWVudVR5cGVcbn0gZnJvbSAnLi90eXBlcy9tZW51LXR5cGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yU3R5bGVTdGF0ZVxufSBmcm9tICcuL3R5cGVzL3N0eWxlLXN0YXRlJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvck1lcmdlRmllbGRcbn0gZnJvbSAnLi90eXBlcy90ZXh0LWVkaXRvci1tZXJnZS1maWVsZCc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JUb29sYmFyQWN0aW9uVHlwZVxufSBmcm9tICcuL3R5cGVzL3Rvb2xiYXItYWN0aW9uLXR5cGUnO1xuXG5pbXBvcnQge1xuICBTa3lGb3Jtc1V0aWxpdHlcbn0gZnJvbSAnLi4vc2hhcmVkL2Zvcm1zLXV0aWxpdHknO1xuXG4vKipcbiAqIEF1dG8taW5jcmVtZW50aW5nIGludGVnZXIgdXNlZCB0byBnZW5lcmF0ZSB1bmlxdWUgaWRzIGZvciByYWRpbyBjb21wb25lbnRzLlxuICovXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBUaGUgdGV4dCBlZGl0b3IgY29tcG9uZW50IGxldHMgdXNlcnMgZm9ybWF0IGFuZCBtYW5pcHVsYXRlIHRleHQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS10ZXh0LWVkaXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHQtZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1mb3J3YXJkLXJlZlxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2t5VGV4dEVkaXRvckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dEVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBwdXQgZm9jdXMgb24gdGhlIGVkaXRvciBhZnRlciBpdCByZW5kZXJzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9mb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSB0ZXh0IGVkaXRvci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBjb2VyY2VkVmFsdWUgPSBTa3lGb3Jtc1V0aWxpdHkuY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAoY29lcmNlZFZhbHVlICE9PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZWRWYWx1ZTtcbiAgICAgIGlmICh0aGlzLl9kaXNhYmxlZCkge1xuICAgICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmRpc2FibGVFZGl0b3IodGhpcy5pZCwgdGhpcy5mb2N1c2FibGVDaGlsZHJlbiwgdGhpcy5pZnJhbWVSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmVuYWJsZUVkaXRvcih0aGlzLmlkLCB0aGlzLmZvY3VzYWJsZUNoaWxkcmVuLCB0aGlzLmlmcmFtZVJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZWRpdG9yRm9jdXNTdHJlYW0gPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlOiBtYXgtbGluZS1sZW5ndGhcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgZm9udHMgdG8gaW5jbHVkZSBpbiB0aGUgZm9udCBwaWNrZXIuXG4gICAqIEBkZWZhdWx0IFt7bmFtZTogJ0JsYWNrYmF1ZCBTYW5zJywgdmFsdWU6ICdcIkJsYWNrYmF1ZCBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmJ30sIHtuYW1lOiAnQXJpYWwnLCB2YWx1ZTogJ0FyaWFsJ30sIHtuYW1lOiAnQXJpYWwgQmxhY2snLCB2YWx1ZTogJ1wiQXJpYWwgQmxhY2tcIid9LCB7bmFtZTogJ0NvdXJpZXIgTmV3JywgdmFsdWU6ICdcIkNvdXJpZXIgTmV3XCInfSwge25hbWU6ICdHZW9yZ2lhJywgdmFsdWU6ICdHZW9yZ2lhLCBzZXJpZid9LCB7bmFtZTogJ1RhaG9tYScsIHZhbHVlOiAnVGFob21hLCBHZW5ldmEsIHNhbnMtc2VyaWYnfSwge25hbWU6ICdUaW1lcyBOZXcgUm9tYW4nLCB2YWx1ZTogJ1wiVGltZXMgTmV3IFJvbWFuXCInfSwge25hbWU6ICdUcmVidWNoZXQgTVMnLCB2YWx1ZTogJ1wiVHJlYnVjaGV0IE1TXCIsIHNhbnMtc2VyaWYnfSwge25hbWU6ICdWZXJkYW5hJywgdmFsdWU6ICdWZXJkYW5hLCBHZW5ldmEsIHNhbnMtc2VyaWYnfV1cbiAgICovXG4gIC8vIHRzbGludDplbmFibGU6IG1heC1saW5lLWxlbmd0aFxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udExpc3Q6IFNreVRleHRFZGl0b3JGb250W10gPSBGT05UX0xJU1RfREVGQVVMVFM7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgZm9udCBzaXplcyB0byBpbmNsdWRlIGluIHRoZSBmb250IHNpemUgcGlja2VyLlxuICAgKiBAZGVmYXVsdCBbNiwgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDE4LCAyMCwgMjIsIDI0LCAyNiwgMjgsIDM2LCA0OF1cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb250U2l6ZUxpc3Q6IG51bWJlcltdID0gRk9OVF9TSVpFX0xJU1RfREVGQVVMVFM7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhIHVuaXF1ZSBJRCBhdHRyaWJ1dGUgZm9yIHRoZSB0ZXh0IGVkaXRvci5cbiAgICogQnkgZGVmYXVsdCwgdGhlIGNvbXBvbmVudCBnZW5lcmF0ZXMgYSByYW5kb20gSUQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaWQgPSBgc2t5LXRleHQtZWRpdG9yLSR7KytuZXh0VW5pcXVlSWR9YDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBpbml0aWFsIHN0eWxlcyBmb3IgYWxsIGNvbnRlbnQsIGluY2x1ZGluZyBiYWNrZ3JvdW5kIGNvbG9yLCBmb250IHNpemUsIGFuZCBsaW5rIHN0YXRlLlxuICAgKi9cbiAgIEBJbnB1dCgpXG4gICBwdWJsaWMgc2V0IGluaXRpYWxTdHlsZVN0YXRlKHN0YXRlOiBTa3lUZXh0RWRpdG9yU3R5bGVTdGF0ZSkge1xuICAgICAvLyBEbyBub3QgdXBkYXRlIHRoZSBzdGF0ZSBhZnRlciBpbml0aWFsaXphdGlvbiBoYXMgdGFrZW4gcGxhY2VcbiAgICAgaWYgKCF0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgdGhpcy5faW5pdGlhbFN0eWxlU3RhdGUgPSB7XG4gICAgICAgICAuLi5TVFlMRV9TVEFURV9ERUZBVUxUUyxcbiAgICAgICAgIC4uLnN0YXRlXG4gICAgICAgfTtcbiAgICAgfVxuICAgfVxuXG4gICBwdWJsaWMgZ2V0IGluaXRpYWxTdHlsZVN0YXRlKCk6IFNreVRleHRFZGl0b3JTdHlsZVN0YXRlIHtcbiAgICAgcmV0dXJuIHRoaXMuX2luaXRpYWxTdHlsZVN0YXRlO1xuICAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1lbnVzIHRvIGluY2x1ZGUgaW4gdGhlIG1lbnUgYmFyLlxuICAgKiBAZGVmYXVsdCBbICdlZGl0JywgJ2Zvcm1hdCcgXVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1lbnVzOiBTa3lUZXh0RWRpdG9yTWVudVR5cGVbXSA9IE1FTlVfREVGQVVMVFM7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWVyZ2UgZmllbGRzIHRvIGluY2x1ZGUgaW4gdGhlIG1lcmdlIGZpZWxkIG1lbnUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWVyZ2VGaWVsZHM6IFNreVRleHRFZGl0b3JNZXJnZUZpZWxkW10gPSBbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHBsYWNlaG9sZGVyIHRleHQgdG8gZGlzcGxheSB3aGVuIHRoZSB0ZXh0IGVudHJ5IGFyZWEgaXMgZW1wdHkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBsYWNlaG9sZGVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3BsYWNlaG9sZGVyKSB7XG4gICAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5zZXRQbGFjZWhvbGRlcih0aGlzLmlkLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIC8vIHRzbGludDpkaXNhYmxlOiBtYXgtbGluZS1sZW5ndGhcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgYWN0aW9ucyB0byBpbmNsdWRlIGluIHRoZSB0b29sYmFyIGFuZCBkZXRlcm1pbmVzIHRoZWlyIG9yZGVyLlxuICAgKiBAZGVmYXVsdCBbICdmb250LWZhbWlseScsICdmb250LXNpemUnLCAnZm9udC1zdHlsZScsICdjb2xvcicsICdsaXN0JywgJ2xpbmsgXVxuICAgKi9cbiAgLy8gdHNsaW50OmVuYWJsZTogbWF4LWxpbmUtbGVuZ3RoXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0b29sYmFyQWN0aW9uczogU2t5VGV4dEVkaXRvclRvb2xiYXJBY3Rpb25UeXBlW10gPSBUT09MQkFSX0FDVElPTl9ERUZBVUxUUztcblxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAvLyBTZXQgY2xlYXIgc3RhdGUgdG8gYmUgYW4gZW1wdHkgc3RyaW5nXG4gICAgbGV0IHZhbHVlU3RyaW5nOiBzdHJpbmcgPSB2YWx1ZTtcbiAgICBpZiAoIXZhbHVlIHx8ICh2YWx1ZS50cmltKCkgPT09ICc8cD48L3A+JyAmJiB2YWx1ZS50cmltKCkgPT09ICc8YnI+JykpIHtcbiAgICAgIHZhbHVlU3RyaW5nID0gJyc7XG4gICAgfVxuICAgIHZhbHVlU3RyaW5nID0gdGhpcy5zYW5pdGl6YXRpb25TZXJ2aWNlLnNhbml0aXplKHZhbHVlU3RyaW5nKS50cmltKCk7XG5cbiAgICBpZiAodGhpcy5fdmFsdWUgIT09IHZhbHVlU3RyaW5nKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlU3RyaW5nO1xuXG4gICAgICAvLyBBdXRvZm9jdXMgaXNuJ3QgdGVzdGFibGUgaW4gRmlyZWZveCBhbmQgSUUuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgaWYgKHRoaXMuYXV0b2ZvY3VzICYmICF0aGlzLmZvY3VzSW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5mb2N1c0VkaXRvcih0aGlzLmlkKTtcbiAgICAgICAgdGhpcy5mb2N1c0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHRoaXMub25DaGFuZ2UoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c2FibGVDaGlsZHJlbjogSFRNTEVsZW1lbnRbXTtcblxuICBwcml2YXRlIGZvY3VzSW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCdpZnJhbWUnKVxuICBwcml2YXRlIGlmcmFtZVJlZjogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2luaXRpYWxTdHlsZVN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgU1RZTEVfU1RBVEVfREVGQVVMVFMpO1xuXG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyID0gJyc7XG5cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyA9ICc8cD48L3A+JztcblxuICBjb25zdHJ1Y3RvciAoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBjb3JlQWRhcHRlclNlcnZpY2U6IFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgICBwcml2YXRlIGFkYXB0ZXJTZXJ2aWNlOiBTa3lUZXh0RWRpdG9yQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlZGl0b3JTZXJ2aWNlOiBTa3lUZXh0RWRpdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHNhbml0aXphdGlvblNlcnZpY2U6IFNreVRleHRTYW5pdGl6YXRpb25TZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRhcHRlclNlcnZpY2UuYWRkRWRpdG9yKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMuaWZyYW1lUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB0aGlzLmluaXRpYWxTdHlsZVN0YXRlLFxuICAgICAgdGhpcy5wbGFjZWhvbGRlclxuICAgICk7XG5cbiAgICB0aGlzLmVkaXRvclNlcnZpY2Uuc2VsZWN0aW9uQ2hhbmdlTGlzdGVuZXIodGhpcy5pZClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWVBbmRTdHlsZSgpO1xuICAgICAgICB0aGlzLmVkaXRvckZvY3VzU3RyZWFtLm5leHQoKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmNsaWNrTGlzdGVuZXIodGhpcy5pZClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZWRpdG9yRm9jdXNTdHJlYW0ubmV4dCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmVkaXRvclNlcnZpY2UuY29tbWFuZENoYW5nZUxpc3RlbmVyKHRoaXMuaWQpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlQW5kU3R5bGUoKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5hZGFwdGVyU2VydmljZS5zZXRFZGl0b3JJbm5lckh0bWwodGhpcy5pZCwgdGhpcy5fdmFsdWUpO1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAodGhpcy5hdXRvZm9jdXMpIHtcbiAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2UuZm9jdXNFZGl0b3IodGhpcy5pZCk7XG4gICAgfVxuXG4gICAgdGhpcy5mb2N1c2FibGVDaGlsZHJlbiA9IHRoaXMuY29yZUFkYXB0ZXJTZXJ2aWNlLmdldEZvY3VzYWJsZUNoaWxkcmVuKHRoaXMuaWZyYW1lUmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIGlnbm9yZVZpc2liaWxpdHk6IHRydWVcbiAgICB9KTtcblxuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWRhcHRlclNlcnZpY2UucmVtb3ZlT2JzZXJ2ZXJzKHRoaXMuZWRpdG9yU2VydmljZS5lZGl0b3JzW3RoaXMuaWRdKTtcbiAgICB0aGlzLmVkaXRvclNlcnZpY2UucmVtb3ZlRWRpdG9yKHRoaXMuaWQpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShvYmo6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBvYmo7XG5cbiAgICAvLyBVcGRhdGUgSFRNTCBpZiBuZWNlc3NhcnkuXG4gICAgY29uc3QgZWRpdG9yVmFsdWUgPSB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmdldEVkaXRvcklubmVySHRtbCh0aGlzLmlkKTtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiBlZGl0b3JWYWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0RWRpdG9ySW5uZXJIdG1sKHRoaXMuaWQsIHRoaXMuX3ZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZUFuZFN0eWxlKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmdldEVkaXRvcklubmVySHRtbCh0aGlzLmlkKTtcbiAgICB0aGlzLl9pbml0aWFsU3R5bGVTdGF0ZSA9IHtcbiAgICAgIC4uLnRoaXMuX2luaXRpYWxTdHlsZVN0YXRlLFxuICAgICAgLi4udGhpcy5hZGFwdGVyU2VydmljZS5nZXRTdHlsZVN0YXRlKHRoaXMuaWQpIGFzIGFueVxuICAgIH07XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwdWJsaWMgb25Ub3VjaCA9ICgpID0+IHt9O1xuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHByaXZhdGUgX29uQ2hhbmdlID0gKF86IHN0cmluZykgPT4ge307XG59XG4iXX0=
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import { SkyColorpickerModule } from '@skyux/colorpicker';
|
|
6
|
-
import { SkyCoreAdapterModule, SkyIdModule } from '@skyux/core';
|
|
7
|
-
import { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';
|
|
8
|
-
import { SkyModalModule } from '@skyux/modals';
|
|
9
|
-
import { SkyI18nModule } from '@skyux/i18n';
|
|
10
|
-
import { SkyIconModule } from '@skyux/indicators';
|
|
11
|
-
import { SkyToolbarModule } from '@skyux/layout';
|
|
12
|
-
import { SkyDropdownModule } from '@skyux/popovers';
|
|
13
|
-
import { SkyTabsModule } from '@skyux/tabs';
|
|
14
|
-
import { SkyThemeModule } from '@skyux/theme';
|
|
15
|
-
import { SkyTextEditorResourcesModule } from '../../plugin-resources/text-editor-resources.module';
|
|
16
|
-
import { SkyTextEditorMenubarComponent } from './menubar/text-editor-menubar.component';
|
|
17
|
-
import { SkyTextEditorToolbarComponent } from './toolbar/text-editor-toolbar.component';
|
|
18
|
-
import { SkyTextEditorUrlModalComponent } from './url-modal/text-editor-url-modal.component';
|
|
19
|
-
import { SkyTextEditorComponent } from './text-editor.component';
|
|
20
|
-
var SkyTextEditorModule = /** @class */ (function () {
|
|
21
|
-
function SkyTextEditorModule() {
|
|
22
|
-
}
|
|
23
|
-
SkyTextEditorModule = __decorate([
|
|
24
|
-
NgModule({
|
|
25
|
-
imports: [
|
|
26
|
-
CommonModule,
|
|
27
|
-
FormsModule,
|
|
28
|
-
ReactiveFormsModule,
|
|
29
|
-
SkyCoreAdapterModule,
|
|
30
|
-
SkyTextEditorResourcesModule,
|
|
31
|
-
SkyI18nModule,
|
|
32
|
-
SkyIconModule,
|
|
33
|
-
SkyIdModule,
|
|
34
|
-
SkyInputBoxModule,
|
|
35
|
-
SkyColorpickerModule,
|
|
36
|
-
SkyCheckboxModule,
|
|
37
|
-
SkyDropdownModule,
|
|
38
|
-
SkyModalModule,
|
|
39
|
-
SkyTabsModule,
|
|
40
|
-
SkyThemeModule,
|
|
41
|
-
SkyToolbarModule
|
|
42
|
-
],
|
|
43
|
-
exports: [
|
|
44
|
-
SkyTextEditorComponent,
|
|
45
|
-
SkyTextEditorUrlModalComponent,
|
|
46
|
-
SkyTextEditorToolbarComponent,
|
|
47
|
-
SkyTextEditorMenubarComponent
|
|
48
|
-
],
|
|
49
|
-
declarations: [
|
|
50
|
-
SkyTextEditorComponent,
|
|
51
|
-
SkyTextEditorUrlModalComponent,
|
|
52
|
-
SkyTextEditorToolbarComponent,
|
|
53
|
-
SkyTextEditorMenubarComponent
|
|
54
|
-
],
|
|
55
|
-
entryComponents: [
|
|
56
|
-
SkyTextEditorUrlModalComponent
|
|
57
|
-
]
|
|
58
|
-
})
|
|
59
|
-
], SkyTextEditorModule);
|
|
60
|
-
return SkyTextEditorModule;
|
|
61
|
-
}());
|
|
62
|
-
export { SkyTextEditorModule };
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsibW9kdWxlcy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLFlBQVksRUFDYixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNaLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2xCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDTCxjQUFjLEVBQ2YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNMLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsY0FBYyxFQUNmLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDTCw0QkFBNEIsRUFDN0IsTUFBTSxxREFBcUQsQ0FBQztBQUU3RCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzlCLE1BQU0seUNBQXlDLENBQUM7QUFFakQsT0FBTyxFQUNMLDZCQUE2QixFQUM5QixNQUFNLHlDQUF5QyxDQUFDO0FBRWpELE9BQU8sRUFDTCw4QkFBOEIsRUFDL0IsTUFBTSw2Q0FBNkMsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3ZCLE1BQU0seUJBQXlCLENBQUM7QUFxQ2pDO0lBQUE7SUFBbUMsQ0FBQztJQUF2QixtQkFBbUI7UUFuQy9CLFFBQVEsQ0FBQztZQUNSLE9BQU8sRUFBRTtnQkFDUCxZQUFZO2dCQUNaLFdBQVc7Z0JBQ1gsbUJBQW1CO2dCQUNuQixvQkFBb0I7Z0JBQ3BCLDRCQUE0QjtnQkFDNUIsYUFBYTtnQkFDYixhQUFhO2dCQUNiLFdBQVc7Z0JBQ1gsaUJBQWlCO2dCQUNqQixvQkFBb0I7Z0JBQ3BCLGlCQUFpQjtnQkFDakIsaUJBQWlCO2dCQUNqQixjQUFjO2dCQUNkLGFBQWE7Z0JBQ2IsY0FBYztnQkFDZCxnQkFBZ0I7YUFDakI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1Asc0JBQXNCO2dCQUN0Qiw4QkFBOEI7Z0JBQzlCLDZCQUE2QjtnQkFDN0IsNkJBQTZCO2FBQzlCO1lBQ0QsWUFBWSxFQUFFO2dCQUNaLHNCQUFzQjtnQkFDdEIsOEJBQThCO2dCQUM5Qiw2QkFBNkI7Z0JBQzdCLDZCQUE2QjthQUM5QjtZQUNELGVBQWUsRUFBRTtnQkFDZiw4QkFBOEI7YUFDL0I7U0FDRixDQUFDO09BQ1csbUJBQW1CLENBQUk7SUFBRCwwQkFBQztDQUFBLEFBQXBDLElBQW9DO1NBQXZCLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE5nTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBDb21tb25Nb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgRm9ybXNNb2R1bGUsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lDb2xvcnBpY2tlck1vZHVsZVxufSBmcm9tICdAc2t5dXgvY29sb3JwaWNrZXInO1xuXG5pbXBvcnQge1xuICBTa3lDb3JlQWRhcHRlck1vZHVsZSxcbiAgU2t5SWRNb2R1bGVcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lDaGVja2JveE1vZHVsZSxcbiAgU2t5SW5wdXRCb3hNb2R1bGVcbn0gZnJvbSAnQHNreXV4L2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5TW9kYWxNb2R1bGVcbn0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7XG4gIFNreUkxOG5Nb2R1bGVcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQge1xuICBTa3lJY29uTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5VG9vbGJhck1vZHVsZVxufSBmcm9tICdAc2t5dXgvbGF5b3V0JztcblxuaW1wb3J0IHtcbiAgU2t5RHJvcGRvd25Nb2R1bGVcbn0gZnJvbSAnQHNreXV4L3BvcG92ZXJzJztcblxuaW1wb3J0IHtcbiAgU2t5VGFic01vZHVsZVxufSBmcm9tICdAc2t5dXgvdGFicyc7XG5cbmltcG9ydCB7XG4gIFNreVRoZW1lTW9kdWxlXG59IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JSZXNvdXJjZXNNb2R1bGVcbn0gZnJvbSAnLi4vLi4vcGx1Z2luLXJlc291cmNlcy90ZXh0LWVkaXRvci1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvck1lbnViYXJDb21wb25lbnRcbn0gZnJvbSAnLi9tZW51YmFyL3RleHQtZWRpdG9yLW1lbnViYXIuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvclRvb2xiYXJDb21wb25lbnRcbn0gZnJvbSAnLi90b29sYmFyL3RleHQtZWRpdG9yLXRvb2xiYXIuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvclVybE1vZGFsQ29tcG9uZW50XG59IGZyb20gJy4vdXJsLW1vZGFsL3RleHQtZWRpdG9yLXVybC1tb2RhbC5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yQ29tcG9uZW50XG59IGZyb20gJy4vdGV4dC1lZGl0b3IuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFNreUNvcmVBZGFwdGVyTW9kdWxlLFxuICAgIFNreVRleHRFZGl0b3JSZXNvdXJjZXNNb2R1bGUsXG4gICAgU2t5STE4bk1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreUlkTW9kdWxlLFxuICAgIFNreUlucHV0Qm94TW9kdWxlLFxuICAgIFNreUNvbG9ycGlja2VyTW9kdWxlLFxuICAgIFNreUNoZWNrYm94TW9kdWxlLFxuICAgIFNreURyb3Bkb3duTW9kdWxlLFxuICAgIFNreU1vZGFsTW9kdWxlLFxuICAgIFNreVRhYnNNb2R1bGUsXG4gICAgU2t5VGhlbWVNb2R1bGUsXG4gICAgU2t5VG9vbGJhck1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5VGV4dEVkaXRvckNvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yVXJsTW9kYWxDb21wb25lbnQsXG4gICAgU2t5VGV4dEVkaXRvclRvb2xiYXJDb21wb25lbnQsXG4gICAgU2t5VGV4dEVkaXRvck1lbnViYXJDb21wb25lbnRcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5VGV4dEVkaXRvckNvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yVXJsTW9kYWxDb21wb25lbnQsXG4gICAgU2t5VGV4dEVkaXRvclRvb2xiYXJDb21wb25lbnQsXG4gICAgU2t5VGV4dEVkaXRvck1lbnViYXJDb21wb25lbnRcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgU2t5VGV4dEVkaXRvclVybE1vZGFsQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dEVkaXRvck1vZHVsZSB7IH1cbiJdfQ==
|