@skyux/text-editor 5.0.2 → 5.5.0-beta.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.
- package/README.md +7 -1
- package/bundles/skyux-text-editor.umd.js +270 -170
- package/documentation.json +109 -57
- package/esm2015/index.js +15 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js +39 -0
- package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js.map +1 -0
- package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js +18 -0
- package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js.map +1 -0
- package/esm2015/lib/modules/shared/forms-utility.js +10 -0
- package/esm2015/lib/modules/shared/forms-utility.js.map +1 -0
- package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js +106 -0
- package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js.map +1 -0
- package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js +42 -0
- package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js.map +1 -0
- package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js +7 -0
- package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js.map +1 -0
- package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js +5 -0
- package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js.map +1 -0
- package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js +15 -0
- package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js.map +1 -0
- package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js +12 -0
- package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js.map +1 -0
- package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js +196 -0
- package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js.map +1 -0
- package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js +473 -0
- package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js.map +1 -0
- package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js +80 -0
- package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js.map +1 -0
- package/esm2015/lib/modules/text-editor/services/text-editor.service.js +61 -0
- package/esm2015/lib/modules/text-editor/services/text-editor.service.js.map +1 -0
- package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js +38 -0
- package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js.map +1 -0
- package/esm2015/lib/modules/text-editor/text-editor.component.js +322 -0
- package/esm2015/lib/modules/text-editor/text-editor.component.js.map +1 -0
- package/esm2015/lib/modules/text-editor/text-editor.module.js +99 -0
- package/esm2015/lib/modules/text-editor/text-editor.module.js.map +1 -0
- package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js +175 -0
- package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/editor-command.js +2 -0
- package/esm2015/lib/modules/text-editor/types/editor-command.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/editor-setting.js +2 -0
- package/esm2015/lib/modules/text-editor/types/editor-setting.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/font-state.js +2 -0
- package/esm2015/lib/modules/text-editor/types/font-state.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/menu-type.js +2 -0
- package/esm2015/lib/modules/text-editor/types/menu-type.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/style-state.js +2 -0
- package/esm2015/lib/modules/text-editor/types/style-state.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js +2 -0
- package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js.map +1 -0
- package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js +2 -0
- package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js.map +1 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js +6 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js.map +1 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js +2 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js.map +1 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js +121 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js.map +1 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js +9 -0
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js.map +1 -0
- package/esm2015/skyux-text-editor.js +2 -2
- package/esm2015/skyux-text-editor.js.map +1 -0
- package/fesm2015/skyux-text-editor.js +332 -232
- package/fesm2015/skyux-text-editor.js.map +1 -1
- package/index.d.ts +12 -0
- package/{modules → lib/modules}/rich-text-display/rich-text-display.component.d.ts +0 -0
- package/{modules → lib/modules}/rich-text-display/rich-text-display.module.d.ts +0 -0
- package/{modules → lib/modules}/shared/forms-utility.d.ts +0 -0
- package/{modules → lib/modules}/shared/sky-text-editor-resources.module.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/defaults/font-list-defaults.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/defaults/font-size-list-defaults.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/defaults/menu-defaults.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/defaults/style-state-defaults.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/defaults/toolbar-action-defaults.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/menubar/text-editor-menubar.component.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/services/text-editor-adapter.service.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/services/text-editor-selection.service.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/services/text-editor.service.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/services/text-sanitization.service.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/text-editor.component.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/text-editor.module.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/toolbar/text-editor-toolbar.component.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/editor-command.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/editor-setting.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/font-state.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/menu-type.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/style-state.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/text-editor-merge-field.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/types/toolbar-action-type.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal-context.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal-result.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal.component.d.ts +0 -0
- package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-target.d.ts +0 -0
- package/package.json +27 -13
- package/skyux-text-editor.d.ts +1 -1
- package/LICENSE +0 -21
- package/bundles/skyux-text-editor.umd.js.map +0 -1
- package/esm2015/modules/rich-text-display/rich-text-display.component.js +0 -37
- package/esm2015/modules/rich-text-display/rich-text-display.module.js +0 -26
- package/esm2015/modules/shared/forms-utility.js +0 -10
- package/esm2015/modules/shared/sky-text-editor-resources.module.js +0 -41
- package/esm2015/modules/text-editor/defaults/font-list-defaults.js +0 -42
- package/esm2015/modules/text-editor/defaults/font-size-list-defaults.js +0 -5
- package/esm2015/modules/text-editor/defaults/menu-defaults.js +0 -8
- package/esm2015/modules/text-editor/defaults/style-state-defaults.js +0 -15
- package/esm2015/modules/text-editor/defaults/toolbar-action-defaults.js +0 -12
- package/esm2015/modules/text-editor/menubar/text-editor-menubar.component.js +0 -189
- package/esm2015/modules/text-editor/services/text-editor-adapter.service.js +0 -460
- package/esm2015/modules/text-editor/services/text-editor-selection.service.js +0 -76
- package/esm2015/modules/text-editor/services/text-editor.service.js +0 -61
- package/esm2015/modules/text-editor/services/text-sanitization.service.js +0 -38
- package/esm2015/modules/text-editor/text-editor.component.js +0 -307
- package/esm2015/modules/text-editor/text-editor.module.js +0 -101
- package/esm2015/modules/text-editor/toolbar/text-editor-toolbar.component.js +0 -163
- package/esm2015/modules/text-editor/types/editor-command.js +0 -2
- package/esm2015/modules/text-editor/types/editor-setting.js +0 -2
- package/esm2015/modules/text-editor/types/font-state.js +0 -2
- package/esm2015/modules/text-editor/types/menu-type.js +0 -2
- package/esm2015/modules/text-editor/types/style-state.js +0 -2
- package/esm2015/modules/text-editor/types/text-editor-merge-field.js +0 -2
- package/esm2015/modules/text-editor/types/toolbar-action-type.js +0 -2
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-context.js +0 -6
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-result.js +0 -2
- package/esm2015/modules/text-editor/url-modal/text-editor-url-modal.component.js +0 -112
- package/esm2015/modules/text-editor/url-modal/text-editor-url-target.js +0 -9
- package/esm2015/public-api.js +0 -15
- package/public-api.d.ts +0 -12
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export class SkyTextEditorService {
|
|
7
|
-
constructor() {
|
|
8
|
-
/**
|
|
9
|
-
* A dictionary representing all active text editors and their settings.
|
|
10
|
-
*/
|
|
11
|
-
this.editors = {};
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Returns the blur observable from the editor with the corresponding id.
|
|
15
|
-
*/
|
|
16
|
-
blurListener(id) {
|
|
17
|
-
return this.editors[id].blurObservable;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Returns the click observable from the editor with the corresponding id.
|
|
21
|
-
*/
|
|
22
|
-
clickListener(id) {
|
|
23
|
-
return this.editors[id].clickObservable;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Returns the command change observable from the editor with the corresponding id.
|
|
27
|
-
*/
|
|
28
|
-
commandChangeListener(id) {
|
|
29
|
-
return this.editors[id].commandChangeObservable;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Returns the input change observable from the editor with the corresponding id.
|
|
33
|
-
*/
|
|
34
|
-
inputListener(id) {
|
|
35
|
-
return this.editors[id].inputObservable;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Removes editor from the `editors` index by id.
|
|
39
|
-
*/
|
|
40
|
-
removeEditor(id) {
|
|
41
|
-
/* istanbul ignore else */
|
|
42
|
-
if (id in this.editors) {
|
|
43
|
-
delete this.editors[id];
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Returns the selection change observable from the editor with the corresponding id.
|
|
48
|
-
*/
|
|
49
|
-
selectionChangeListener(id) {
|
|
50
|
-
return this.editors[id].selectionChangeObservable;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
SkyTextEditorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
54
|
-
SkyTextEditorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorService, providedIn: 'root' });
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorService, decorators: [{
|
|
56
|
-
type: Injectable,
|
|
57
|
-
args: [{
|
|
58
|
-
providedIn: 'root'
|
|
59
|
-
}]
|
|
60
|
-
}] });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3RleHQtZWRpdG9yL3NlcnZpY2VzL3RleHQtZWRpdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQzs7QUFVdkI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBS0U7O1dBRUc7UUFDSSxZQUFPLEdBQXFDLEVBQUUsQ0FBQztLQStDdkQ7SUE3Q0M7O09BRUc7SUFDSyxZQUFZLENBQUMsRUFBVTtRQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNJLGFBQWEsQ0FBQyxFQUFVO1FBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUM7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0kscUJBQXFCLENBQUMsRUFBVTtRQUNyQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsdUJBQXVCLENBQUM7SUFDbEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksYUFBYSxDQUFDLEVBQVU7UUFDN0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxZQUFZLENBQUMsRUFBVTtRQUM1QiwwQkFBMEI7UUFDMUIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSx1QkFBdUIsQ0FBQyxFQUFVO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQztJQUNwRCxDQUFDOztrSEFsRFUsb0JBQW9CO3NIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs0RkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgT2JzZXJ2YWJsZVxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgRWRpdG9yU2V0dGluZ1xufSBmcm9tICcuLi90eXBlcy9lZGl0b3Itc2V0dGluZyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNreVRleHRFZGl0b3JTZXJ2aWNlIHtcblxuICAvKipcbiAgICogQSBkaWN0aW9uYXJ5IHJlcHJlc2VudGluZyBhbGwgYWN0aXZlIHRleHQgZWRpdG9ycyBhbmQgdGhlaXIgc2V0dGluZ3MuXG4gICAqL1xuICBwdWJsaWMgZWRpdG9yczogeyBba2V5OiBzdHJpbmddOiBFZGl0b3JTZXR0aW5nIH0gPSB7fTtcblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgYmx1ciBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgIHB1YmxpYyBibHVyTGlzdGVuZXIoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmVkaXRvcnNbaWRdLmJsdXJPYnNlcnZhYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGNsaWNrIG9ic2VydmFibGUgZnJvbSB0aGUgZWRpdG9yIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgaWQuXG4gICAqL1xuICBwdWJsaWMgY2xpY2tMaXN0ZW5lcihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yc1tpZF0uY2xpY2tPYnNlcnZhYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGNvbW1hbmQgY2hhbmdlIG9ic2VydmFibGUgZnJvbSB0aGUgZWRpdG9yIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgaWQuXG4gICAqL1xuICBwdWJsaWMgY29tbWFuZENoYW5nZUxpc3RlbmVyKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5lZGl0b3JzW2lkXS5jb21tYW5kQ2hhbmdlT2JzZXJ2YWJsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBpbnB1dCBjaGFuZ2Ugb2JzZXJ2YWJsZSBmcm9tIHRoZSBlZGl0b3Igd2l0aCB0aGUgY29ycmVzcG9uZGluZyBpZC5cbiAgICovXG4gIHB1YmxpYyBpbnB1dExpc3RlbmVyKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5lZGl0b3JzW2lkXS5pbnB1dE9ic2VydmFibGU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBlZGl0b3IgZnJvbSB0aGUgYGVkaXRvcnNgIGluZGV4IGJ5IGlkLlxuICAgKi9cbiAgcHVibGljIHJlbW92ZUVkaXRvcihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoaWQgaW4gdGhpcy5lZGl0b3JzKSB7XG4gICAgICBkZWxldGUgdGhpcy5lZGl0b3JzW2lkXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2VsZWN0aW9uIGNoYW5nZSBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIHNlbGVjdGlvbkNoYW5nZUxpc3RlbmVyKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5lZGl0b3JzW2lkXS5zZWxlY3Rpb25DaGFuZ2VPYnNlcnZhYmxlO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import createDOMPurify from "dompurify";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
const domPurify = createDOMPurify(window);
|
|
5
|
-
domPurify.addHook('afterSanitizeAttributes', (node) => {
|
|
6
|
-
// Set all elements owning target to target=_blank
|
|
7
|
-
// so we only allow the target attribute with that value.
|
|
8
|
-
if (!!node.getAttribute('target')) {
|
|
9
|
-
node.setAttribute('target', '_blank');
|
|
10
|
-
node.setAttribute('rel', 'noopener noreferrer');
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
/**
|
|
14
|
-
* The `SkyTextSanitizationService` user the `DOMPurify` library to sanitize strings for use
|
|
15
|
-
* in the DOM. `DOMPurify` allows more customization than Angular's internal `DomSanitizer` so we
|
|
16
|
-
* can preserve `<style>` tags and allow `target` attributes for new tab links.
|
|
17
|
-
* @internal
|
|
18
|
-
*/
|
|
19
|
-
export class SkyTextSanitizationService {
|
|
20
|
-
constructor() {
|
|
21
|
-
this.allowedAttributes = ['target'];
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Returns a sanitized string, allowing target attribute for new tab links.
|
|
25
|
-
*/
|
|
26
|
-
sanitize(htmlString) {
|
|
27
|
-
return domPurify.sanitize(htmlString, { ADD_ATTR: this.allowedAttributes });
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
SkyTextSanitizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextSanitizationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
-
SkyTextSanitizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextSanitizationService, providedIn: 'root' });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextSanitizationService, decorators: [{
|
|
33
|
-
type: Injectable,
|
|
34
|
-
args: [{
|
|
35
|
-
providedIn: 'root'
|
|
36
|
-
}]
|
|
37
|
-
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zYW5pdGl6YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3RleHQtZWRpdG9yL3NlcnZpY2VzL3RleHQtc2FuaXRpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLGVBQWUsTUFBTSxXQUFXLENBQUM7O0FBQ3hDLE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUUxQyxTQUFTLENBQUMsT0FBTyxDQUFDLHlCQUF5QixFQUFFLENBQUMsSUFBYSxFQUFFLEVBQUU7SUFDN0Qsa0RBQWtEO0lBQ2xELHlEQUF5RDtJQUN6RCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2pDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLHFCQUFxQixDQUFDLENBQUM7S0FDakQ7QUFDSCxDQUFDLENBQUMsQ0FBQztBQUVIOzs7OztHQUtHO0FBSUgsTUFBTSxPQUFPLDBCQUEwQjtJQUh2QztRQUtVLHNCQUFpQixHQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7S0FTbEQ7SUFQQzs7T0FFRztJQUNJLFFBQVEsQ0FBQyxVQUFrQjtRQUNoQyxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7d0hBVFUsMEJBQTBCOzRIQUExQiwwQkFBMEIsY0FGekIsTUFBTTs0RkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IGNyZWF0ZURPTVB1cmlmeSBmcm9tIFwiZG9tcHVyaWZ5XCI7XG5jb25zdCBkb21QdXJpZnkgPSBjcmVhdGVET01QdXJpZnkod2luZG93KTtcblxuZG9tUHVyaWZ5LmFkZEhvb2soJ2FmdGVyU2FuaXRpemVBdHRyaWJ1dGVzJywgKG5vZGU6IEVsZW1lbnQpID0+IHtcbiAgLy8gU2V0IGFsbCBlbGVtZW50cyBvd25pbmcgdGFyZ2V0IHRvIHRhcmdldD1fYmxhbmtcbiAgLy8gc28gd2Ugb25seSBhbGxvdyB0aGUgdGFyZ2V0IGF0dHJpYnV0ZSB3aXRoIHRoYXQgdmFsdWUuXG4gIGlmICghIW5vZGUuZ2V0QXR0cmlidXRlKCd0YXJnZXQnKSkge1xuICAgIG5vZGUuc2V0QXR0cmlidXRlKCd0YXJnZXQnLCAnX2JsYW5rJyk7XG4gICAgbm9kZS5zZXRBdHRyaWJ1dGUoJ3JlbCcsICdub29wZW5lciBub3JlZmVycmVyJyk7XG4gIH1cbn0pO1xuXG4vKipcbiAqIFRoZSBgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2VgIHVzZXIgdGhlIGBET01QdXJpZnlgIGxpYnJhcnkgdG8gc2FuaXRpemUgc3RyaW5ncyBmb3IgdXNlXG4gKiBpbiB0aGUgRE9NLiBgRE9NUHVyaWZ5YCBhbGxvd3MgbW9yZSBjdXN0b21pemF0aW9uIHRoYW4gQW5ndWxhcidzIGludGVybmFsIGBEb21TYW5pdGl6ZXJgIHNvIHdlXG4gKiBjYW4gcHJlc2VydmUgYDxzdHlsZT5gIHRhZ3MgYW5kIGFsbG93IGB0YXJnZXRgIGF0dHJpYnV0ZXMgZm9yIG5ldyB0YWIgbGlua3MuXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgYWxsb3dlZEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gWyd0YXJnZXQnXTtcblxuICAvKipcbiAgICogUmV0dXJucyBhIHNhbml0aXplZCBzdHJpbmcsIGFsbG93aW5nIHRhcmdldCBhdHRyaWJ1dGUgZm9yIG5ldyB0YWIgbGlua3MuXG4gICAqL1xuICBwdWJsaWMgc2FuaXRpemUoaHRtbFN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZG9tUHVyaWZ5LnNhbml0aXplKGh0bWxTdHJpbmcsIHsgQUREX0FUVFI6IHRoaXMuYWxsb3dlZEF0dHJpYnV0ZXMgfSk7XG4gIH1cblxufVxuIl19
|
|
@@ -1,307 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { takeUntil } from 'rxjs/operators';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
4
|
-
import { MENU_DEFAULTS } from './defaults/menu-defaults';
|
|
5
|
-
import { STYLE_STATE_DEFAULTS } from './defaults/style-state-defaults';
|
|
6
|
-
import { TOOLBAR_ACTION_DEFAULTS } from './defaults/toolbar-action-defaults';
|
|
7
|
-
import { FONT_LIST_DEFAULTS } from './defaults/font-list-defaults';
|
|
8
|
-
import { FONT_SIZE_LIST_DEFAULTS } from './defaults/font-size-list-defaults';
|
|
9
|
-
import { SkyFormsUtility } from '../shared/forms-utility';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@skyux/core";
|
|
12
|
-
import * as i2 from "./services/text-editor-adapter.service";
|
|
13
|
-
import * as i3 from "./services/text-editor.service";
|
|
14
|
-
import * as i4 from "./services/text-sanitization.service";
|
|
15
|
-
import * as i5 from "@angular/forms";
|
|
16
|
-
import * as i6 from "@skyux/layout";
|
|
17
|
-
import * as i7 from "./menubar/text-editor-menubar.component";
|
|
18
|
-
import * as i8 from "./toolbar/text-editor-toolbar.component";
|
|
19
|
-
import * as i9 from "@angular/common";
|
|
20
|
-
/**
|
|
21
|
-
* Auto-incrementing integer used to generate unique ids for radio components.
|
|
22
|
-
*/
|
|
23
|
-
let nextUniqueId = 0;
|
|
24
|
-
/**
|
|
25
|
-
* The text editor component lets users format and manipulate text.
|
|
26
|
-
*/
|
|
27
|
-
export class SkyTextEditorComponent {
|
|
28
|
-
constructor(changeDetector, coreAdapterService, adapterService, editorService, sanitizationService, ngControl, zone) {
|
|
29
|
-
this.changeDetector = changeDetector;
|
|
30
|
-
this.coreAdapterService = coreAdapterService;
|
|
31
|
-
this.adapterService = adapterService;
|
|
32
|
-
this.editorService = editorService;
|
|
33
|
-
this.sanitizationService = sanitizationService;
|
|
34
|
-
this.ngControl = ngControl;
|
|
35
|
-
this.zone = zone;
|
|
36
|
-
/**
|
|
37
|
-
* Indicates whether to put focus on the editor after it renders.
|
|
38
|
-
*/
|
|
39
|
-
this.autofocus = false;
|
|
40
|
-
this.editorFocusStream = new Subject();
|
|
41
|
-
/**
|
|
42
|
-
* Specifies the fonts to include in the font picker.
|
|
43
|
-
* @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'}]
|
|
44
|
-
*/
|
|
45
|
-
this.fontList = FONT_LIST_DEFAULTS;
|
|
46
|
-
/**
|
|
47
|
-
* Specifies the font sizes to include in the font size picker.
|
|
48
|
-
* @default [6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48]
|
|
49
|
-
*/
|
|
50
|
-
this.fontSizeList = FONT_SIZE_LIST_DEFAULTS;
|
|
51
|
-
/**
|
|
52
|
-
* Specifies a unique ID attribute for the text editor.
|
|
53
|
-
* By default, the component generates a random ID.
|
|
54
|
-
*/
|
|
55
|
-
this.id = `sky-text-editor-${++nextUniqueId}`;
|
|
56
|
-
/**
|
|
57
|
-
* Specifies the menus to include in the menu bar.
|
|
58
|
-
* @default [ 'edit', 'format' ]
|
|
59
|
-
*/
|
|
60
|
-
this.menus = MENU_DEFAULTS;
|
|
61
|
-
/**
|
|
62
|
-
* Specifies the merge fields to include in the merge field menu.
|
|
63
|
-
*/
|
|
64
|
-
this.mergeFields = [];
|
|
65
|
-
/**
|
|
66
|
-
* Specifies the actions to include in the toolbar and determines their order.
|
|
67
|
-
* @default [ 'font-family', 'font-size', 'font-style', 'color', 'list', 'link ]
|
|
68
|
-
*/
|
|
69
|
-
this.toolbarActions = TOOLBAR_ACTION_DEFAULTS;
|
|
70
|
-
this.focusInitialized = false;
|
|
71
|
-
this.initialized = false;
|
|
72
|
-
this.ngUnsubscribe = new Subject();
|
|
73
|
-
this._disabled = false;
|
|
74
|
-
this._initialStyleState = Object.assign({}, STYLE_STATE_DEFAULTS);
|
|
75
|
-
this._placeholder = '';
|
|
76
|
-
this._value = '<p></p>';
|
|
77
|
-
/* istanbul ignore next */
|
|
78
|
-
this._onTouched = () => { };
|
|
79
|
-
/* istanbul ignore next */
|
|
80
|
-
this._onChange = () => { };
|
|
81
|
-
this.ngControl.valueAccessor = this;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Indicates whether to disable the text editor.
|
|
85
|
-
* @default false
|
|
86
|
-
*/
|
|
87
|
-
set disabled(value) {
|
|
88
|
-
const coercedValue = SkyFormsUtility.coerceBooleanProperty(value);
|
|
89
|
-
if (coercedValue !== this.disabled) {
|
|
90
|
-
this._disabled = coercedValue;
|
|
91
|
-
// Update focusableChildren inside the iframe.
|
|
92
|
-
let focusableChildren;
|
|
93
|
-
/* istanbul ignore else */
|
|
94
|
-
if (this.iframeRef) {
|
|
95
|
-
focusableChildren = this.coreAdapterService.getFocusableChildren(this.iframeRef.nativeElement.contentDocument.body, {
|
|
96
|
-
ignoreVisibility: true,
|
|
97
|
-
ignoreTabIndex: true
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
if (this._disabled) {
|
|
101
|
-
this.adapterService.disableEditor(this.id, focusableChildren, this.iframeRef.nativeElement);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
this.adapterService.enableEditor(this.id, focusableChildren, this.iframeRef.nativeElement);
|
|
105
|
-
}
|
|
106
|
-
this.changeDetector.markForCheck();
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
get disabled() {
|
|
110
|
-
return this._disabled;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Specifies the initial styles for all content, including background color, font size, and link state.
|
|
114
|
-
*/
|
|
115
|
-
set initialStyleState(state) {
|
|
116
|
-
// Do not update the state after initialization has taken place
|
|
117
|
-
/* istanbul ignore else */
|
|
118
|
-
if (!this.initialized) {
|
|
119
|
-
this._initialStyleState = Object.assign(Object.assign({}, STYLE_STATE_DEFAULTS), state);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
get initialStyleState() {
|
|
123
|
-
return this._initialStyleState;
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Specifies placeholder text to display when the text entry area is empty.
|
|
127
|
-
*/
|
|
128
|
-
set placeholder(value) {
|
|
129
|
-
/* istanbul ignore else */
|
|
130
|
-
if (value !== this._placeholder) {
|
|
131
|
-
this._placeholder = value;
|
|
132
|
-
if (this.initialized) {
|
|
133
|
-
this.adapterService.setPlaceholder(this.id, value);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
get placeholder() {
|
|
138
|
-
return this._placeholder;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* The internal value of the control.
|
|
142
|
-
*/
|
|
143
|
-
set value(value) {
|
|
144
|
-
// Normalize value and set any empty state to an empty string.
|
|
145
|
-
let normalizedValue = value;
|
|
146
|
-
if (!value || value.trim() === '<p></p>' || value.trim() === '<br>' || value.trim() === '<p><br></p>') {
|
|
147
|
-
normalizedValue = '';
|
|
148
|
-
}
|
|
149
|
-
normalizedValue = this.sanitizationService.sanitize(normalizedValue).trim();
|
|
150
|
-
if (this._value !== normalizedValue) {
|
|
151
|
-
this._value = normalizedValue;
|
|
152
|
-
// Update angular form control if model has been normalized.
|
|
153
|
-
/* istanbul ignore else */
|
|
154
|
-
if (this.ngControl && this.ngControl.control) {
|
|
155
|
-
/* istanbul ignore else */
|
|
156
|
-
if (normalizedValue !== this.ngControl.control.value) {
|
|
157
|
-
this.ngControl.control.setValue(normalizedValue, { emitModelToViewChange: false });
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
// Autofocus isn't testable in Firefox and IE.
|
|
161
|
-
/* istanbul ignore next */
|
|
162
|
-
if (this.autofocus && !this.focusInitialized) {
|
|
163
|
-
this.adapterService.focusEditor(this.id);
|
|
164
|
-
this.focusInitialized = true;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
get value() {
|
|
169
|
-
return this._value;
|
|
170
|
-
}
|
|
171
|
-
ngAfterViewInit() {
|
|
172
|
-
this.initIframe();
|
|
173
|
-
}
|
|
174
|
-
ngOnDestroy() {
|
|
175
|
-
this.adapterService.removeObservers(this.editorService.editors[this.id]);
|
|
176
|
-
this.editorService.removeEditor(this.id);
|
|
177
|
-
this.ngUnsubscribe.next();
|
|
178
|
-
this.ngUnsubscribe.complete();
|
|
179
|
-
}
|
|
180
|
-
onIframeLoad() {
|
|
181
|
-
// Remove editor if it already exists to cover situations where the text editor might have been moved in the DOM.
|
|
182
|
-
/* istanbul ignore else */
|
|
183
|
-
if (this.editorService.editors[this.id]) {
|
|
184
|
-
this.editorService.removeEditor(this.id);
|
|
185
|
-
this.initIframe();
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Implemented as part of ControlValueAccessor.
|
|
190
|
-
*/
|
|
191
|
-
writeValue(value) {
|
|
192
|
-
this.value = value;
|
|
193
|
-
// Update HTML if necessary.
|
|
194
|
-
const editorValue = this.adapterService.getEditorInnerHtml(this.id);
|
|
195
|
-
if (this.initialized && editorValue !== this._value) {
|
|
196
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
/**
|
|
200
|
-
* Implemented as part of ControlValueAccessor.
|
|
201
|
-
*/
|
|
202
|
-
registerOnChange(fn) {
|
|
203
|
-
this._onChange = fn;
|
|
204
|
-
}
|
|
205
|
-
/**
|
|
206
|
-
* Implemented as part of ControlValueAccessor.
|
|
207
|
-
*/
|
|
208
|
-
registerOnTouched(fn) {
|
|
209
|
-
this._onTouched = fn;
|
|
210
|
-
}
|
|
211
|
-
/**
|
|
212
|
-
* Implemented as part of ControlValueAccessor.
|
|
213
|
-
*/
|
|
214
|
-
setDisabledState(isDisabled) {
|
|
215
|
-
this.disabled = isDisabled;
|
|
216
|
-
}
|
|
217
|
-
updateStyle() {
|
|
218
|
-
this._initialStyleState = Object.assign(Object.assign({}, this._initialStyleState), this.adapterService.getStyleState(this.id));
|
|
219
|
-
}
|
|
220
|
-
initIframe() {
|
|
221
|
-
this.adapterService.addEditor(this.id, this.iframeRef.nativeElement, this.initialStyleState, this.placeholder);
|
|
222
|
-
this.editorService.inputListener(this.id)
|
|
223
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
224
|
-
.subscribe(() => {
|
|
225
|
-
// Angular doesn't run change detection for changes originating inside an iframe,
|
|
226
|
-
// so we have to call the onChange() event inside NgZone to force change propigation to consuming components.
|
|
227
|
-
this.zone.run(() => {
|
|
228
|
-
this.ViewToModelUpdate();
|
|
229
|
-
});
|
|
230
|
-
});
|
|
231
|
-
this.editorService.selectionChangeListener(this.id)
|
|
232
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
233
|
-
.subscribe(() => {
|
|
234
|
-
this.updateStyle();
|
|
235
|
-
this.editorFocusStream.next();
|
|
236
|
-
});
|
|
237
|
-
this.editorService.clickListener(this.id)
|
|
238
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
239
|
-
.subscribe(() => {
|
|
240
|
-
this.editorFocusStream.next();
|
|
241
|
-
});
|
|
242
|
-
this.editorService.blurListener(this.id)
|
|
243
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
244
|
-
.subscribe(() => {
|
|
245
|
-
// Angular doesn't run change detection for changes originating inside an iframe,
|
|
246
|
-
// so we have to run markForCheck() inside the NgZone to force change propigation to consuming components.
|
|
247
|
-
this.zone.run(() => {
|
|
248
|
-
this._onTouched();
|
|
249
|
-
});
|
|
250
|
-
});
|
|
251
|
-
this.editorService.commandChangeListener(this.id)
|
|
252
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
253
|
-
.subscribe(() => {
|
|
254
|
-
this.updateStyle();
|
|
255
|
-
this.ViewToModelUpdate();
|
|
256
|
-
});
|
|
257
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
258
|
-
/* istanbul ignore next */
|
|
259
|
-
if (this.autofocus) {
|
|
260
|
-
this.adapterService.focusEditor(this.id);
|
|
261
|
-
}
|
|
262
|
-
this.initialized = true;
|
|
263
|
-
}
|
|
264
|
-
ViewToModelUpdate(emitChange = true) {
|
|
265
|
-
this.value = this.adapterService.getEditorInnerHtml(this.id);
|
|
266
|
-
/* istanbul ignore else */
|
|
267
|
-
if (emitChange) {
|
|
268
|
-
this._onChange(this._value);
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
SkyTextEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyCoreAdapterService }, { token: i2.SkyTextEditorAdapterService }, { token: i3.SkyTextEditorService }, { token: i4.SkyTextSanitizationService }, { token: i5.NgControl }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
273
|
-
SkyTextEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyTextEditorComponent, selector: "sky-text-editor", inputs: { autofocus: "autofocus", disabled: "disabled", fontList: "fontList", fontSizeList: "fontSizeList", id: "id", initialStyleState: "initialStyleState", menus: "menus", mergeFields: "mergeFields", placeholder: "placeholder", toolbarActions: "toolbarActions" }, viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["iframe"], descendants: true }], ngImport: i0, 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 (load)=\"onIframeLoad()\"\n #iframe\n >\n </iframe>\n</div>\n", 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 #C0C0C0;overflow-y:auto;outline:none}.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}\n"], components: [{ type: i6.λ37, selector: "sky-toolbar" }, { type: i6.λ38, selector: "sky-toolbar-section" }, { type: i7.SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: ["editorFocusStream", "editorId", "menus", "mergeFields", "disabled"] }, { type: i8.SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: ["editorFocusStream", "editorId", "fontList", "fontSizeList", "toolbarActions", "styleState", "disabled"] }], directives: [{ type: i9.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
274
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorComponent, decorators: [{
|
|
275
|
-
type: Component,
|
|
276
|
-
args: [{
|
|
277
|
-
selector: 'sky-text-editor',
|
|
278
|
-
templateUrl: './text-editor.component.html',
|
|
279
|
-
styleUrls: ['./text-editor.component.scss'],
|
|
280
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
281
|
-
encapsulation: ViewEncapsulation.None
|
|
282
|
-
}]
|
|
283
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyCoreAdapterService }, { type: i2.SkyTextEditorAdapterService }, { type: i3.SkyTextEditorService }, { type: i4.SkyTextSanitizationService }, { type: i5.NgControl }, { type: i0.NgZone }]; }, propDecorators: { autofocus: [{
|
|
284
|
-
type: Input
|
|
285
|
-
}], disabled: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}], fontList: [{
|
|
288
|
-
type: Input
|
|
289
|
-
}], fontSizeList: [{
|
|
290
|
-
type: Input
|
|
291
|
-
}], id: [{
|
|
292
|
-
type: Input
|
|
293
|
-
}], initialStyleState: [{
|
|
294
|
-
type: Input
|
|
295
|
-
}], menus: [{
|
|
296
|
-
type: Input
|
|
297
|
-
}], mergeFields: [{
|
|
298
|
-
type: Input
|
|
299
|
-
}], placeholder: [{
|
|
300
|
-
type: Input
|
|
301
|
-
}], toolbarActions: [{
|
|
302
|
-
type: Input
|
|
303
|
-
}], iframeRef: [{
|
|
304
|
-
type: ViewChild,
|
|
305
|
-
args: ['iframe']
|
|
306
|
-
}] } });
|
|
307
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsS0FBSyxFQUdMLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFNdkIsT0FBTyxFQUNMLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFNZCxPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLGlDQUFpQyxDQUFDO0FBRXpDLE9BQU8sRUFDTCx1QkFBdUIsRUFDeEIsTUFBTSxvQ0FBb0MsQ0FBQztBQWM1QyxPQUFPLEVBQ0wsa0JBQWtCLEVBQ25CLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN4QixNQUFNLG9DQUFvQyxDQUFDO0FBc0I1QyxPQUFPLEVBQ0wsZUFBZSxFQUNoQixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7OztBQUVqQzs7R0FFRztBQUNILElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztBQUVyQjs7R0FFRztBQVFILE1BQU0sT0FBTyxzQkFBc0I7SUErS2pDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLGNBQTJDLEVBQzNDLGFBQW1DLEVBQ25DLG1CQUErQyxFQUMvQyxTQUFvQixFQUNwQixJQUFZO1FBTlosbUJB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aUI7b0JBQzNCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOytTQU9RLFNBQVM7c0JBRGYsS0FBSztnQkFRSyxRQUFRO3NCQURsQixLQUFLO2dCQW9DQyxRQUFRO3NCQURkLEtBQUs7Z0JBUUMsWUFBWTtzQkFEbEIsS0FBSztnQkFRQyxFQUFFO3NCQURSLEtBQUs7Z0JBT0ssaUJBQWlCO3NCQUQzQixLQUFLO2dCQXFCQyxLQUFLO3NCQURYLEtBQUs7Z0JBT0MsV0FBVztzQkFEakIsS0FBSztnQkFPSyxXQUFXO3NCQURyQixLQUFLO2dCQW9CQyxjQUFjO3NCQURwQixLQUFLO2dCQTJDRSxTQUFTO3NCQURoQixTQUFTO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgTmdDb250cm9sXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHtcbiAgTUVOVV9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL21lbnUtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTVFlMRV9TVEFURV9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL3N0eWxlLXN0YXRlLWRlZmF1bHRzJztcblxuaW1wb3J0IHtcbiAgVE9PTEJBUl9BQ1RJT05fREVGQVVMVFNcbn0gZnJvbSAnLi9kZWZhdWx0cy90b29sYmFyLWFjdGlvbi1kZWZhdWx0cyc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JBZGFwdGVyU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzL3RleHQtZWRpdG9yLWFkYXB0ZXIuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JTZXJ2aWNlXG59IGZyb20gJy4vc2VydmljZXMvdGV4dC1lZGl0b3Iuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRTYW5pdGl6YXRpb25TZXJ2aWNlXG59IGZyb20gJy4vc2VydmljZXMvdGV4dC1zYW5pdGl6YXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIEZPTlRfTElTVF9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL2ZvbnQtbGlzdC1kZWZhdWx0cyc7XG5cbmltcG9ydCB7XG4gIEZPTlRfU0laRV9MSVNUX0RFRkFVTFRTXG59IGZyb20gJy4vZGVmYXVsdHMvZm9udC1zaXplLWxpc3QtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yRm9udFxufSBmcm9tICcuL3R5cGVzL2ZvbnQtc3RhdGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yTWVudVR5cGVcbn0gZnJvbSAnLi90eXBlcy9tZW51LXR5cGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yU3R5bGVTdGF0ZVxufSBmcm9tICcuL3R5cGVzL3N0eWxlLXN0YXRlJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvck1lcmdlRmllbGRcbn0gZnJvbSAnLi90eXBlcy90ZXh0LWVkaXRvci1tZXJnZS1maWVsZCc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JUb29sYmFyQWN0aW9uVHlwZVxufSBmcm9tICcuL3R5cGVzL3Rvb2xiYXItYWN0aW9uLXR5cGUnO1xuXG5pbXBvcnQge1xuICBTa3lGb3Jtc1V0aWxpdHlcbn0gZnJvbSAnLi4vc2hhcmVkL2Zvcm1zLXV0aWxpdHknO1xuXG4vKipcbiAqIEF1dG8taW5jcmVtZW50aW5nIGludGVnZXIgdXNlZCB0byBnZW5lcmF0ZSB1bmlxdWUgaWRzIGZvciByYWRpbyBjb21wb25lbnRzLlxuICovXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBUaGUgdGV4dCBlZGl0b3IgY29tcG9uZW50IGxldHMgdXNlcnMgZm9ybWF0IGFuZCBtYW5pcHVsYXRlIHRleHQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS10ZXh0LWVkaXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHQtZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFNreVRleHRFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBwdXQgZm9jdXMgb24gdGhlIGVkaXRvciBhZnRlciBpdCByZW5kZXJzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9mb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSB0ZXh0IGVkaXRvci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBjb2VyY2VkVmFsdWUgPSBTa3lGb3Jtc1V0aWxpdHkuY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAoY29lcmNlZFZhbHVlICE9PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZWRWYWx1ZTtcblxuICAgICAgLy8gVXBkYXRlIGZvY3VzYWJsZUNoaWxkcmVuIGluc2lkZSB0aGUgaWZyYW1lLlxuICAgICAgbGV0IGZvY3VzYWJsZUNoaWxkcmVuOiBIVE1MRWxlbWVudFtdO1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmICh0aGlzLmlmcmFtZVJlZikge1xuICAgICAgICBmb2N1c2FibGVDaGlsZHJlbiA9IHRoaXMuY29yZUFkYXB0ZXJTZXJ2aWNlLmdldEZvY3VzYWJsZUNoaWxkcmVuKHRoaXMuaWZyYW1lUmVmLm5hdGl2ZUVsZW1lbnQuY29udGVudERvY3VtZW50LmJvZHksIHtcbiAgICAgICAgICBpZ25vcmVWaXNpYmlsaXR5OiB0cnVlLFxuICAgICAgICAgIGlnbm9yZVRhYkluZGV4OiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5kaXNhYmxlRWRpdG9yKHRoaXMuaWQsIGZvY3VzYWJsZUNoaWxkcmVuLCB0aGlzLmlmcmFtZVJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2UuZW5hYmxlRWRpdG9yKHRoaXMuaWQsIGZvY3VzYWJsZUNoaWxkcmVuLCB0aGlzLmlmcmFtZVJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZWRpdG9yRm9jdXNTdHJlYW0gPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGZvbnRzIHRvIGluY2x1ZGUgaW4gdGhlIGZvbnQgcGlja2VyLlxuICAgKiBAZGVmYXVsdCBbe25hbWU6ICdCbGFja2JhdWQgU2FucycsIHZhbHVlOiAnXCJCbGFja2JhdWQgU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZid9LCB7bmFtZTogJ0FyaWFsJywgdmFsdWU6ICdBcmlhbCd9LCB7bmFtZTogJ0FyaWFsIEJsYWNrJywgdmFsdWU6ICdcIkFyaWFsIEJsYWNrXCInfSwge25hbWU6ICdDb3VyaWVyIE5ldycsIHZhbHVlOiAnXCJDb3VyaWVyIE5ld1wiJ30sIHtuYW1lOiAnR2VvcmdpYScsIHZhbHVlOiAnR2VvcmdpYSwgc2VyaWYnfSwge25hbWU6ICdUYWhvbWEnLCB2YWx1ZTogJ1RhaG9tYSwgR2VuZXZhLCBzYW5zLXNlcmlmJ30sIHtuYW1lOiAnVGltZXMgTmV3IFJvbWFuJywgdmFsdWU6ICdcIlRpbWVzIE5ldyBSb21hblwiJ30sIHtuYW1lOiAnVHJlYnVjaGV0IE1TJywgdmFsdWU6ICdcIlRyZWJ1Y2hldCBNU1wiLCBzYW5zLXNlcmlmJ30sIHtuYW1lOiAnVmVyZGFuYScsIHZhbHVlOiAnVmVyZGFuYSwgR2VuZXZhLCBzYW5zLXNlcmlmJ31dXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udExpc3Q6IFNreVRleHRFZGl0b3JGb250W10gPSBGT05UX0xJU1RfREVGQVVMVFM7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgZm9udCBzaXplcyB0byBpbmNsdWRlIGluIHRoZSBmb250IHNpemUgcGlja2VyLlxuICAgKiBAZGVmYXVsdCBbNiwgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDE4LCAyMCwgMjIsIDI0LCAyNiwgMjgsIDM2LCA0OF1cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb250U2l6ZUxpc3Q6IG51bWJlcltdID0gRk9OVF9TSVpFX0xJU1RfREVGQVVMVFM7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhIHVuaXF1ZSBJRCBhdHRyaWJ1dGUgZm9yIHRoZSB0ZXh0IGVkaXRvci5cbiAgICogQnkgZGVmYXVsdCwgdGhlIGNvbXBvbmVudCBnZW5lcmF0ZXMgYSByYW5kb20gSUQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaWQgPSBgc2t5LXRleHQtZWRpdG9yLSR7KytuZXh0VW5pcXVlSWR9YDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBpbml0aWFsIHN0eWxlcyBmb3IgYWxsIGNvbnRlbnQsIGluY2x1ZGluZyBiYWNrZ3JvdW5kIGNvbG9yLCBmb250IHNpemUsIGFuZCBsaW5rIHN0YXRlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpbml0aWFsU3R5bGVTdGF0ZShzdGF0ZTogU2t5VGV4dEVkaXRvclN0eWxlU3RhdGUpIHtcbiAgICAvLyBEbyBub3QgdXBkYXRlIHRoZSBzdGF0ZSBhZnRlciBpbml0aWFsaXphdGlvbiBoYXMgdGFrZW4gcGxhY2VcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICghdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5faW5pdGlhbFN0eWxlU3RhdGUgPSB7XG4gICAgICAgIC4uLlNUWUxFX1NUQVRFX0RFRkFVTFRTLFxuICAgICAgICAuLi5zdGF0ZVxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGluaXRpYWxTdHlsZVN0YXRlKCk6IFNreVRleHRFZGl0b3JTdHlsZVN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5faW5pdGlhbFN0eWxlU3RhdGU7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtZW51cyB0byBpbmNsdWRlIGluIHRoZSBtZW51IGJhci5cbiAgICogQGRlZmF1bHQgWyAnZWRpdCcsICdmb3JtYXQnIF1cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZW51czogU2t5VGV4dEVkaXRvck1lbnVUeXBlW10gPSBNRU5VX0RFRkFVTFRTO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1lcmdlIGZpZWxkcyB0byBpbmNsdWRlIGluIHRoZSBtZXJnZSBmaWVsZCBtZW51LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1lcmdlRmllbGRzOiBTa3lUZXh0RWRpdG9yTWVyZ2VGaWVsZFtdID0gW107XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBwbGFjZWhvbGRlciB0ZXh0IHRvIGRpc3BsYXkgd2hlbiB0aGUgdGV4dCBlbnRyeSBhcmVhIGlzIGVtcHR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwbGFjZWhvbGRlcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3BsYWNlaG9sZGVyKSB7XG4gICAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5zZXRQbGFjZWhvbGRlcih0aGlzLmlkLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGFjdGlvbnMgdG8gaW5jbHVkZSBpbiB0aGUgdG9vbGJhciBhbmQgZGV0ZXJtaW5lcyB0aGVpciBvcmRlci5cbiAgICogQGRlZmF1bHQgWyAnZm9udC1mYW1pbHknLCAnZm9udC1zaXplJywgJ2ZvbnQtc3R5bGUnLCAnY29sb3InLCAnbGlzdCcsICdsaW5rIF1cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0b29sYmFyQWN0aW9uczogU2t5VGV4dEVkaXRvclRvb2xiYXJBY3Rpb25UeXBlW10gPSBUT09MQkFSX0FDVElPTl9ERUZBVUxUUztcblxuICAvKipcbiAgICogVGhlIGludGVybmFsIHZhbHVlIG9mIHRoZSBjb250cm9sLlxuICAgKi9cbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG5cbiAgICAvLyBOb3JtYWxpemUgdmFsdWUgYW5kIHNldCBhbnkgZW1wdHkgc3RhdGUgdG8gYW4gZW1wdHkgc3RyaW5nLlxuICAgIGxldCBub3JtYWxpemVkVmFsdWU6IHN0cmluZyA9IHZhbHVlO1xuICAgIGlmICghdmFsdWUgfHwgdmFsdWUudHJpbSgpID09PSAnPHA+PC9wPicgfHwgdmFsdWUudHJpbSgpID09PSAnPGJyPicgfHwgdmFsdWUudHJpbSgpID09PSAnPHA+PGJyPjwvcD4nKSB7XG4gICAgICBub3JtYWxpemVkVmFsdWUgPSAnJztcbiAgICB9XG4gICAgbm9ybWFsaXplZFZhbHVlID0gdGhpcy5zYW5pdGl6YXRpb25TZXJ2aWNlLnNhbml0aXplKG5vcm1hbGl6ZWRWYWx1ZSkudHJpbSgpO1xuXG4gICAgaWYgKHRoaXMuX3ZhbHVlICE9PSBub3JtYWxpemVkVmFsdWUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gbm9ybWFsaXplZFZhbHVlO1xuXG4gICAgICAvLyBVcGRhdGUgYW5ndWxhciBmb3JtIGNvbnRyb2wgaWYgbW9kZWwgaGFzIGJlZW4gbm9ybWFsaXplZC5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAodGhpcy5uZ0NvbnRyb2wgJiYgdGhpcy5uZ0NvbnRyb2wuY29udHJvbCkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAobm9ybWFsaXplZFZhbHVlICE9PSB0aGlzLm5nQ29udHJvbC5jb250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5uZ0NvbnRyb2wuY29udHJvbC5zZXRWYWx1ZShub3JtYWxpemVkVmFsdWUsIHsgZW1pdE1vZGVsVG9WaWV3Q2hhbmdlOiBmYWxzZSB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBBdXRvZm9jdXMgaXNuJ3QgdGVzdGFibGUgaW4gRmlyZWZveCBhbmQgSUUuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgaWYgKHRoaXMuYXV0b2ZvY3VzICYmICF0aGlzLmZvY3VzSW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5mb2N1c0VkaXRvcih0aGlzLmlkKTtcbiAgICAgICAgdGhpcy5mb2N1c0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c0luaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lJylcbiAgcHJpdmF0ZSBpZnJhbWVSZWY6IEVsZW1lbnRSZWY7XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIF9pbml0aWFsU3R5bGVTdGF0ZSA9IE9iamVjdC5hc3NpZ24oe30sIFNUWUxFX1NUQVRFX0RFRkFVTFRTKTtcblxuICBwcml2YXRlIF9wbGFjZWhvbGRlciA9ICcnO1xuXG4gIHByaXZhdGUgX3ZhbHVlOiBzdHJpbmcgPSAnPHA+PC9wPic7XG5cbiAgY29uc3RydWN0b3IgKFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgY29yZUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhZGFwdGVyU2VydmljZTogU2t5VGV4dEVkaXRvckFkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWRpdG9yU2VydmljZTogU2t5VGV4dEVkaXRvclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzYW5pdGl6YXRpb25TZXJ2aWNlOiBTa3lUZXh0U2FuaXRpemF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICApIHtcbiAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0SWZyYW1lKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hZGFwdGVyU2VydmljZS5yZW1vdmVPYnNlcnZlcnModGhpcy5lZGl0b3JTZXJ2aWNlLmVkaXRvcnNbdGhpcy5pZF0pO1xuICAgIHRoaXMuZWRpdG9yU2VydmljZS5yZW1vdmVFZGl0b3IodGhpcy5pZCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbklmcmFtZUxvYWQoKTogdm9pZCB7XG4gICAgLy8gUmVtb3ZlIGVkaXRvciBpZiBpdCBhbHJlYWR5IGV4aXN0cyB0byBjb3ZlciBzaXR1YXRpb25zIHdoZXJlIHRoZSB0ZXh0IGVkaXRvciBtaWdodCBoYXZlIGJlZW4gbW92ZWQgaW4gdGhlIERPTS5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmVkaXRvclNlcnZpY2UuZWRpdG9yc1t0aGlzLmlkXSkge1xuICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnJlbW92ZUVkaXRvcih0aGlzLmlkKTtcbiAgICAgIHRoaXMuaW5pdElmcmFtZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcblxuICAgIC8vIFVwZGF0ZSBIVE1MIGlmIG5lY2Vzc2FyeS5cbiAgICBjb25zdCBlZGl0b3JWYWx1ZSA9IHRoaXMuYWRhcHRlclNlcnZpY2UuZ2V0RWRpdG9ySW5uZXJIdG1sKHRoaXMuaWQpO1xuICAgIGlmICh0aGlzLmluaXRpYWxpemVkICYmIGVkaXRvclZhbHVlICE9PSB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5zZXRFZGl0b3JJbm5lckh0bWwodGhpcy5pZCwgdGhpcy5fdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU3R5bGUoKTogdm9pZCB7XG4gICAgdGhpcy5faW5pdGlhbFN0eWxlU3RhdGUgPSB7XG4gICAgICAuLi50aGlzLl9pbml0aWFsU3R5bGVTdGF0ZSxcbiAgICAgIC4uLnRoaXMuYWRhcHRlclNlcnZpY2UuZ2V0U3R5bGVTdGF0ZSh0aGlzLmlkKSBhcyBhbnlcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0SWZyYW1lKCk6IHZvaWQge1xuICAgIHRoaXMuYWRhcHRlclNlcnZpY2UuYWRkRWRpdG9yKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMuaWZyYW1lUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB0aGlzLmluaXRpYWxTdHlsZVN0YXRlLFxuICAgICAgdGhpcy5wbGFjZWhvbGRlclxuICAgICk7XG5cbiAgICB0aGlzLmVkaXRvclNlcnZpY2UuaW5wdXRMaXN0ZW5lcih0aGlzLmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLy8gQW5ndWxhciBkb2Vzbid0IHJ1biBjaGFuZ2UgZGV0ZWN0aW9uIGZvciBjaGFuZ2VzIG9yaWdpbmF0aW5nIGluc2lkZSBhbiBpZnJhbWUsXG4gICAgICAgIC8vIHNvIHdlIGhhdmUgdG8gY2FsbCB0aGUgb25DaGFuZ2UoKSBldmVudCBpbnNpZGUgTmdab25lIHRvIGZvcmNlIGNoYW5nZSBwcm9waWdhdGlvbiB0byBjb25zdW1pbmcgY29tcG9uZW50cy5cbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5WaWV3VG9Nb2RlbFVwZGF0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnNlbGVjdGlvbkNoYW5nZUxpc3RlbmVyKHRoaXMuaWQpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVN0eWxlKCk7XG4gICAgICAgIHRoaXMuZWRpdG9yRm9jdXNTdHJlYW0ubmV4dCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmVkaXRvclNlcnZpY2UuY2xpY2tMaXN0ZW5lcih0aGlzLmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5lZGl0b3JGb2N1c1N0cmVhbS5uZXh0KCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuZWRpdG9yU2VydmljZS5ibHVyTGlzdGVuZXIodGhpcy5pZClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vIEFuZ3VsYXIgZG9lc24ndCBydW4gY2hhbmdlIGRldGVjdGlvbiBmb3IgY2hhbmdlcyBvcmlnaW5hdGluZyBpbnNpZGUgYW4gaWZyYW1lLFxuICAgICAgICAvLyBzbyB3ZSBoYXZlIHRvIHJ1biBtYXJrRm9yQ2hlY2soKSBpbnNpZGUgdGhlIE5nWm9uZSB0byBmb3JjZSBjaGFuZ2UgcHJvcGlnYXRpb24gdG8gY29uc3VtaW5nIGNvbXBvbmVudHMuXG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX29uVG91Y2hlZCgpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmNvbW1hbmRDaGFuZ2VMaXN0ZW5lcih0aGlzLmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVTdHlsZSgpO1xuICAgICAgICB0aGlzLlZpZXdUb01vZGVsVXBkYXRlKCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0RWRpdG9ySW5uZXJIdG1sKHRoaXMuaWQsIHRoaXMuX3ZhbHVlKTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKHRoaXMuYXV0b2ZvY3VzKSB7XG4gICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmZvY3VzRWRpdG9yKHRoaXMuaWQpO1xuICAgIH1cblxuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBWaWV3VG9Nb2RlbFVwZGF0ZShlbWl0Q2hhbmdlOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmdldEVkaXRvcklubmVySHRtbCh0aGlzLmlkKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChlbWl0Q2hhbmdlKSB7XG4gICAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLl92YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcHJpdmF0ZSBfb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcHJpdmF0ZSBfb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2t5LXRleHQtZWRpdG9yXCJcbj5cbiAgPHNreS10b29sYmFyXG4gICAgY2xhc3M9XCJza3ktdGV4dC1lZGl0b3ItdG9vbGJhclwiXG4gID5cbiAgICA8c2t5LXRvb2xiYXItc2VjdGlvblxuICAgICAgYXJpYS1sYWJlbD1cIlRleHQgZm9ybWF0dGluZ1wiXG4gICAgICBjbGFzcz1cIm1lbnViYXJcIlxuICAgICAgcm9sZT1cInRvb2xiYXJcIlxuICAgID5cbiAgICAgIDxza3ktdGV4dC1lZGl0b3ItbWVudWJhclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbZWRpdG9yRm9jdXNTdHJlYW1dPVwiZWRpdG9yRm9jdXNTdHJlYW1cIlxuICAgICAgICBbZWRpdG9ySWRdPVwiaWRcIlxuICAgICAgICBbbWVudXNdPVwibWVudXNcIlxuICAgICAgICBbbWVyZ2VGaWVsZHNdPVwibWVyZ2VGaWVsZHNcIlxuICAgICAgPlxuICAgICAgPC9za3ktdGV4dC1lZGl0b3ItbWVudWJhcj5cbiAgICA8L3NreS10b29sYmFyLXNlY3Rpb24+XG4gICAgPHNreS10b29sYmFyLXNlY3Rpb25cbiAgICAgIGFyaWEtbGFiZWw9XCJUZXh0IGZvcm1hdHRpbmdcIlxuICAgICAgY2xhc3M9XCJ0b29sYmFyXCJcbiAgICAgIHJvbGU9XCJ0b29sYmFyXCJcbiAgICA+XG4gICAgICA8c2t5LXRleHQtZWRpdG9yLXRvb2xiYXJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2VkaXRvckZvY3VzU3RyZWFtXT1cImVkaXRvckZvY3VzU3RyZWFtXCJcbiAgICAgICAgW2VkaXRvcklkXT1cImlkXCJcbiAgICAgICAgW2ZvbnRMaXN0XT1cImZvbnRMaXN0XCJcbiAgICAgICAgW2ZvbnRTaXplTGlzdF09XCJmb250U2l6ZUxpc3RcIlxuICAgICAgICBbdG9vbGJhckFjdGlvbnNdPVwidG9vbGJhckFjdGlvbnNcIlxuICAgICAgICBbc3R5bGVTdGF0ZV09XCJpbml0aWFsU3R5bGVTdGF0ZVwiXG4gICAgICA+XG4gICAgICA8L3NreS10ZXh0LWVkaXRvci10b29sYmFyPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgPC9za3ktdG9vbGJhcj5cbiAgPGlmcmFtZVxuICAgIGNsYXNzPVwic2t5LXRleHQtZWRpdG9yLXdyYXBwZXJcIlxuICAgIHNyYz1cImFib3V0OmJsYW5rXCJcbiAgICB0aXRsZT1cIlRleHQgRWRpdG9yXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2t5LXRleHQtZWRpdG9yLXdyYXBwZXItZGlzYWJsZWQnOiBkaXNhYmxlZFxuICAgIH1cIlxuICAgIChsb2FkKT1cIm9uSWZyYW1lTG9hZCgpXCJcbiAgICAjaWZyYW1lXG4gID5cbiAgPC9pZnJhbWU+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { SkyColorpickerModule } from '@skyux/colorpicker';
|
|
5
|
-
import { SkyCoreAdapterModule, SkyIdModule } from '@skyux/core';
|
|
6
|
-
import { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';
|
|
7
|
-
import { SkyModalModule } from '@skyux/modals';
|
|
8
|
-
import { SkyI18nModule } from '@skyux/i18n';
|
|
9
|
-
import { SkyIconModule } from '@skyux/indicators';
|
|
10
|
-
import { SkyToolbarModule } from '@skyux/layout';
|
|
11
|
-
import { SkyDropdownModule } from '@skyux/popovers';
|
|
12
|
-
import { SkyTabsModule } from '@skyux/tabs';
|
|
13
|
-
import { SkyThemeModule } from '@skyux/theme';
|
|
14
|
-
import { SkyTextEditorResourcesModule } from '../../modules/shared/sky-text-editor-resources.module';
|
|
15
|
-
import { SkyTextEditorMenubarComponent } from './menubar/text-editor-menubar.component';
|
|
16
|
-
import { SkyTextEditorToolbarComponent } from './toolbar/text-editor-toolbar.component';
|
|
17
|
-
import { SkyTextEditorUrlModalComponent } from './url-modal/text-editor-url-modal.component';
|
|
18
|
-
import { SkyTextEditorComponent } from './text-editor.component';
|
|
19
|
-
import * as i0 from "@angular/core";
|
|
20
|
-
export class SkyTextEditorModule {
|
|
21
|
-
}
|
|
22
|
-
SkyTextEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
23
|
-
SkyTextEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorModule, declarations: [SkyTextEditorComponent,
|
|
24
|
-
SkyTextEditorUrlModalComponent,
|
|
25
|
-
SkyTextEditorToolbarComponent,
|
|
26
|
-
SkyTextEditorMenubarComponent], imports: [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], exports: [SkyTextEditorComponent,
|
|
42
|
-
SkyTextEditorUrlModalComponent,
|
|
43
|
-
SkyTextEditorToolbarComponent,
|
|
44
|
-
SkyTextEditorMenubarComponent] });
|
|
45
|
-
SkyTextEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorModule, imports: [[
|
|
46
|
-
CommonModule,
|
|
47
|
-
FormsModule,
|
|
48
|
-
ReactiveFormsModule,
|
|
49
|
-
SkyCoreAdapterModule,
|
|
50
|
-
SkyTextEditorResourcesModule,
|
|
51
|
-
SkyI18nModule,
|
|
52
|
-
SkyIconModule,
|
|
53
|
-
SkyIdModule,
|
|
54
|
-
SkyInputBoxModule,
|
|
55
|
-
SkyColorpickerModule,
|
|
56
|
-
SkyCheckboxModule,
|
|
57
|
-
SkyDropdownModule,
|
|
58
|
-
SkyModalModule,
|
|
59
|
-
SkyTabsModule,
|
|
60
|
-
SkyThemeModule,
|
|
61
|
-
SkyToolbarModule
|
|
62
|
-
]] });
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorModule, decorators: [{
|
|
64
|
-
type: NgModule,
|
|
65
|
-
args: [{
|
|
66
|
-
imports: [
|
|
67
|
-
CommonModule,
|
|
68
|
-
FormsModule,
|
|
69
|
-
ReactiveFormsModule,
|
|
70
|
-
SkyCoreAdapterModule,
|
|
71
|
-
SkyTextEditorResourcesModule,
|
|
72
|
-
SkyI18nModule,
|
|
73
|
-
SkyIconModule,
|
|
74
|
-
SkyIdModule,
|
|
75
|
-
SkyInputBoxModule,
|
|
76
|
-
SkyColorpickerModule,
|
|
77
|
-
SkyCheckboxModule,
|
|
78
|
-
SkyDropdownModule,
|
|
79
|
-
SkyModalModule,
|
|
80
|
-
SkyTabsModule,
|
|
81
|
-
SkyThemeModule,
|
|
82
|
-
SkyToolbarModule
|
|
83
|
-
],
|
|
84
|
-
exports: [
|
|
85
|
-
SkyTextEditorComponent,
|
|
86
|
-
SkyTextEditorUrlModalComponent,
|
|
87
|
-
SkyTextEditorToolbarComponent,
|
|
88
|
-
SkyTextEditorMenubarComponent
|
|
89
|
-
],
|
|
90
|
-
declarations: [
|
|
91
|
-
SkyTextEditorComponent,
|
|
92
|
-
SkyTextEditorUrlModalComponent,
|
|
93
|
-
SkyTextEditorToolbarComponent,
|
|
94
|
-
SkyTextEditorMenubarComponent
|
|
95
|
-
],
|
|
96
|
-
entryComponents: [
|
|
97
|
-
SkyTextEditorUrlModalComponent
|
|
98
|
-
]
|
|
99
|
-
}]
|
|
100
|
-
}] });
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLFlBQVksRUFDYixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLG9CQUFvQixFQUNyQixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNaLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2xCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDTCxjQUFjLEVBQ2YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNMLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsY0FBYyxFQUNmLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDTCw0QkFBNEIsRUFDN0IsTUFBTSx1REFBdUQsQ0FBQztBQUUvRCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzlCLE1BQU0seUNBQXlDLENBQUM7QUFFakQsT0FBTyxFQUNMLDZCQUE2QixFQUM5QixNQUFNLHlDQUF5QyxDQUFDO0FBRWpELE9BQU8sRUFDTCw4QkFBOEIsRUFDL0IsTUFBTSw2Q0FBNkMsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3ZCLE1BQU0seUJBQXlCLENBQUM7O0FBcUNqQyxNQUFNLE9BQU8sbUJBQW1COztpSEFBbkIsbUJBQW1CO2tIQUFuQixtQkFBbUIsaUJBVDVCLHNCQUFzQjtRQUN0Qiw4QkFBOEI7UUFDOUIsNkJBQTZCO1FBQzdCLDZCQUE2QixhQTNCN0IsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLDRCQUE0QjtRQUM1QixhQUFhO1FBQ2IsYUFBYTtRQUNiLFdBQVc7UUFDWCxpQkFBaUI7UUFDakIsb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLGFBQWE7UUFDYixjQUFjO1FBQ2QsZ0JBQWdCLGFBR2hCLHNCQUFzQjtRQUN0Qiw4QkFBOEI7UUFDOUIsNkJBQTZCO1FBQzdCLDZCQUE2QjtrSEFZcEIsbUJBQW1CLFlBbENyQjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQiw0QkFBNEI7WUFDNUIsYUFBYTtZQUNiLGFBQWE7WUFDYixXQUFXO1lBQ1gsaUJBQWlCO1lBQ2pCLG9CQUFvQjtZQUNwQixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsY0FBYztZQUNkLGdCQUFnQjtTQUNqQjs0RkFpQlUsbUJBQW1CO2tCQW5DL0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiw0QkFBNEI7d0JBQzVCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asc0JBQXNCO3dCQUN0Qiw4QkFBOEI7d0JBQzlCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUM5QjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3dCQUN0Qiw4QkFBOEI7d0JBQzlCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3FCQUM5QjtvQkFDRCxlQUFlLEVBQUU7d0JBQ2YsOEJBQThCO3FCQUMvQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE5nTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBDb21tb25Nb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgRm9ybXNNb2R1bGUsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lDb2xvcnBpY2tlck1vZHVsZVxufSBmcm9tICdAc2t5dXgvY29sb3JwaWNrZXInO1xuXG5pbXBvcnQge1xuICBTa3lDb3JlQWRhcHRlck1vZHVsZSxcbiAgU2t5SWRNb2R1bGVcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lDaGVja2JveE1vZHVsZSxcbiAgU2t5SW5wdXRCb3hNb2R1bGVcbn0gZnJvbSAnQHNreXV4L2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5TW9kYWxNb2R1bGVcbn0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7XG4gIFNreUkxOG5Nb2R1bGVcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQge1xuICBTa3lJY29uTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5VG9vbGJhck1vZHVsZVxufSBmcm9tICdAc2t5dXgvbGF5b3V0JztcblxuaW1wb3J0IHtcbiAgU2t5RHJvcGRvd25Nb2R1bGVcbn0gZnJvbSAnQHNreXV4L3BvcG92ZXJzJztcblxuaW1wb3J0IHtcbiAgU2t5VGFic01vZHVsZVxufSBmcm9tICdAc2t5dXgvdGFicyc7XG5cbmltcG9ydCB7XG4gIFNreVRoZW1lTW9kdWxlXG59IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JSZXNvdXJjZXNNb2R1bGVcbn0gZnJvbSAnLi4vLi4vbW9kdWxlcy9zaGFyZWQvc2t5LXRleHQtZWRpdG9yLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yTWVudWJhckNvbXBvbmVudFxufSBmcm9tICcuL21lbnViYXIvdGV4dC1lZGl0b3ItbWVudWJhci5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yVG9vbGJhckNvbXBvbmVudFxufSBmcm9tICcuL3Rvb2xiYXIvdGV4dC1lZGl0b3ItdG9vbGJhci5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yVXJsTW9kYWxDb21wb25lbnRcbn0gZnJvbSAnLi91cmwtbW9kYWwvdGV4dC1lZGl0b3ItdXJsLW1vZGFsLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JDb21wb25lbnRcbn0gZnJvbSAnLi90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgU2t5Q29yZUFkYXB0ZXJNb2R1bGUsXG4gICAgU2t5VGV4dEVkaXRvclJlc291cmNlc01vZHVsZSxcbiAgICBTa3lJMThuTW9kdWxlLFxuICAgIFNreUljb25Nb2R1bGUsXG4gICAgU2t5SWRNb2R1bGUsXG4gICAgU2t5SW5wdXRCb3hNb2R1bGUsXG4gICAgU2t5Q29sb3JwaWNrZXJNb2R1bGUsXG4gICAgU2t5Q2hlY2tib3hNb2R1bGUsXG4gICAgU2t5RHJvcGRvd25Nb2R1bGUsXG4gICAgU2t5TW9kYWxNb2R1bGUsXG4gICAgU2t5VGFic01vZHVsZSxcbiAgICBTa3lUaGVtZU1vZHVsZSxcbiAgICBTa3lUb29sYmFyTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTa3lUZXh0RWRpdG9yQ29tcG9uZW50LFxuICAgIFNreVRleHRFZGl0b3JVcmxNb2RhbENvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yVG9vbGJhckNvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yTWVudWJhckNvbXBvbmVudFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lUZXh0RWRpdG9yQ29tcG9uZW50LFxuICAgIFNreVRleHRFZGl0b3JVcmxNb2RhbENvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yVG9vbGJhckNvbXBvbmVudCxcbiAgICBTa3lUZXh0RWRpdG9yTWVudWJhckNvbXBvbmVudFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICBTa3lUZXh0RWRpdG9yVXJsTW9kYWxDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lUZXh0RWRpdG9yTW9kdWxlIHsgfVxuIl19
|