@skyux/text-editor 5.0.1 → 5.5.0-alpha.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 +370 -223
- package/documentation.json +316 -302
- 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 +411 -265
- 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 +8 -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 +24 -10
- 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 +6 -2
- 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 +13 -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 -451
- package/esm2015/modules/text-editor/services/text-editor-selection.service.js +0 -76
- package/esm2015/modules/text-editor/services/text-editor.service.js +0 -49
- package/esm2015/modules/text-editor/services/text-sanitization.service.js +0 -38
- package/esm2015/modules/text-editor/text-editor.component.js +0 -282
- 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,49 +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 click observable from the editor with the corresponding id.
|
|
15
|
-
*/
|
|
16
|
-
clickListener(id) {
|
|
17
|
-
return this.editors[id].clickObservable;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Returns the command change observable from the editor with the corresponding id.
|
|
21
|
-
*/
|
|
22
|
-
commandChangeListener(id) {
|
|
23
|
-
return this.editors[id].commandChangeObservable;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Removes editor from the `editors` index by id.
|
|
27
|
-
*/
|
|
28
|
-
removeEditor(id) {
|
|
29
|
-
/* istanbul ignore else */
|
|
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
|
-
selectionChangeListener(id) {
|
|
38
|
-
return this.editors[id].selectionChangeObservable;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
SkyTextEditorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextEditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
-
SkyTextEditorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextEditorService, providedIn: 'root' });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextEditorService, decorators: [{
|
|
44
|
-
type: Injectable,
|
|
45
|
-
args: [{
|
|
46
|
-
providedIn: 'root'
|
|
47
|
-
}]
|
|
48
|
-
}] });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3RleHQtZWRpdG9yL3NlcnZpY2VzL3RleHQtZWRpdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQzs7QUFVdkI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBS0U7O1dBRUc7UUFDSSxZQUFPLEdBQXFDLEVBQUUsQ0FBQztLQWlDdkQ7SUEvQkM7O09BRUc7SUFDSSxhQUFhLENBQUMsRUFBVTtRQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsZUFBZSxDQUFDO0lBQzFDLENBQUM7SUFFRDs7T0FFRztJQUNJLHFCQUFxQixDQUFDLEVBQVU7UUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QixDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNJLFlBQVksQ0FBQyxFQUFVO1FBQzVCLDBCQUEwQjtRQUMxQixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLHVCQUF1QixDQUFDLEVBQVU7UUFDdkMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixDQUFDO0lBQ3BELENBQUM7O2tIQXBDVSxvQkFBb0I7c0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBPYnNlcnZhYmxlXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBFZGl0b3JTZXR0aW5nXG59IGZyb20gJy4uL3R5cGVzL2VkaXRvci1zZXR0aW5nJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dEVkaXRvclNlcnZpY2Uge1xuXG4gIC8qKlxuICAgKiBBIGRpY3Rpb25hcnkgcmVwcmVzZW50aW5nIGFsbCBhY3RpdmUgdGV4dCBlZGl0b3JzIGFuZCB0aGVpciBzZXR0aW5ncy5cbiAgICovXG4gIHB1YmxpYyBlZGl0b3JzOiB7IFtrZXk6IHN0cmluZ106IEVkaXRvclNldHRpbmcgfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjbGljayBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIGNsaWNrTGlzdGVuZXIoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmVkaXRvcnNbaWRdLmNsaWNrT2JzZXJ2YWJsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjb21tYW5kIGNoYW5nZSBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIGNvbW1hbmRDaGFuZ2VMaXN0ZW5lcihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yc1tpZF0uY29tbWFuZENoYW5nZU9ic2VydmFibGU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBlZGl0b3IgZnJvbSB0aGUgYGVkaXRvcnNgIGluZGV4IGJ5IGlkLlxuICAgKi9cbiAgcHVibGljIHJlbW92ZUVkaXRvcihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoaWQgaW4gdGhpcy5lZGl0b3JzKSB7XG4gICAgICBkZWxldGUgdGhpcy5lZGl0b3JzW2lkXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2VsZWN0aW9uIGNoYW5nZSBvYnNlcnZhYmxlIGZyb20gdGhlIGVkaXRvciB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlkLlxuICAgKi9cbiAgcHVibGljIHNlbGVjdGlvbkNoYW5nZUxpc3RlbmVyKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+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.12", ngImport: i0, type: SkyTextSanitizationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
-
SkyTextSanitizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextSanitizationService, providedIn: 'root' });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextSanitizationService, decorators: [{
|
|
33
|
-
type: Injectable,
|
|
34
|
-
args: [{
|
|
35
|
-
providedIn: 'root'
|
|
36
|
-
}]
|
|
37
|
-
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zYW5pdGl6YXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3RleHQtZWRpdG9yL3NlcnZpY2VzL3RleHQtc2FuaXRpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLGVBQWUsTUFBTSxXQUFXLENBQUM7O0FBQ3hDLE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUUxQyxTQUFTLENBQUMsT0FBTyxDQUFDLHlCQUF5QixFQUFFLENBQUMsSUFBYSxFQUFFLEVBQUU7SUFDN0Qsa0RBQWtEO0lBQ2xELHlEQUF5RDtJQUN6RCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2pDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLHFCQUFxQixDQUFDLENBQUM7S0FDakQ7QUFDSCxDQUFDLENBQUMsQ0FBQztBQUVIOzs7OztHQUtHO0FBSUgsTUFBTSxPQUFPLDBCQUEwQjtJQUh2QztRQUtVLHNCQUFpQixHQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7S0FTbEQ7SUFQQzs7T0FFRztJQUNJLFFBQVEsQ0FBQyxVQUFrQjtRQUNoQyxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7d0hBVFUsMEJBQTBCOzRIQUExQiwwQkFBMEIsY0FGekIsTUFBTTs0RkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IGNyZWF0ZURPTVB1cmlmeSBmcm9tIFwiZG9tcHVyaWZ5XCI7XG5jb25zdCBkb21QdXJpZnkgPSBjcmVhdGVET01QdXJpZnkod2luZG93KTtcblxuZG9tUHVyaWZ5LmFkZEhvb2soJ2FmdGVyU2FuaXRpemVBdHRyaWJ1dGVzJywgKG5vZGU6IEVsZW1lbnQpID0+IHtcbiAgLy8gU2V0IGFsbCBlbGVtZW50cyBvd25pbmcgdGFyZ2V0IHRvIHRhcmdldD1fYmxhbmtcbiAgLy8gc28gd2Ugb25seSBhbGxvdyB0aGUgdGFyZ2V0IGF0dHJpYnV0ZSB3aXRoIHRoYXQgdmFsdWUuXG4gIGlmICghIW5vZGUuZ2V0QXR0cmlidXRlKCd0YXJnZXQnKSkge1xuICAgIG5vZGUuc2V0QXR0cmlidXRlKCd0YXJnZXQnLCAnX2JsYW5rJyk7XG4gICAgbm9kZS5zZXRBdHRyaWJ1dGUoJ3JlbCcsICdub29wZW5lciBub3JlZmVycmVyJyk7XG4gIH1cbn0pO1xuXG4vKipcbiAqIFRoZSBgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2VgIHVzZXIgdGhlIGBET01QdXJpZnlgIGxpYnJhcnkgdG8gc2FuaXRpemUgc3RyaW5ncyBmb3IgdXNlXG4gKiBpbiB0aGUgRE9NLiBgRE9NUHVyaWZ5YCBhbGxvd3MgbW9yZSBjdXN0b21pemF0aW9uIHRoYW4gQW5ndWxhcidzIGludGVybmFsIGBEb21TYW5pdGl6ZXJgIHNvIHdlXG4gKiBjYW4gcHJlc2VydmUgYDxzdHlsZT5gIHRhZ3MgYW5kIGFsbG93IGB0YXJnZXRgIGF0dHJpYnV0ZXMgZm9yIG5ldyB0YWIgbGlua3MuXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgYWxsb3dlZEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gWyd0YXJnZXQnXTtcblxuICAvKipcbiAgICogUmV0dXJucyBhIHNhbml0aXplZCBzdHJpbmcsIGFsbG93aW5nIHRhcmdldCBhdHRyaWJ1dGUgZm9yIG5ldyB0YWIgbGlua3MuXG4gICAqL1xuICBwdWJsaWMgc2FuaXRpemUoaHRtbFN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZG9tUHVyaWZ5LnNhbml0aXplKGh0bWxTdHJpbmcsIHsgQUREX0FUVFI6IHRoaXMuYWxsb3dlZEF0dHJpYnV0ZXMgfSk7XG4gIH1cblxufVxuIl19
|
|
@@ -1,282 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, Input, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { Subject } from 'rxjs';
|
|
5
|
-
import { MENU_DEFAULTS } from './defaults/menu-defaults';
|
|
6
|
-
import { STYLE_STATE_DEFAULTS } from './defaults/style-state-defaults';
|
|
7
|
-
import { TOOLBAR_ACTION_DEFAULTS } from './defaults/toolbar-action-defaults';
|
|
8
|
-
import { FONT_LIST_DEFAULTS } from './defaults/font-list-defaults';
|
|
9
|
-
import { FONT_SIZE_LIST_DEFAULTS } from './defaults/font-size-list-defaults';
|
|
10
|
-
import { SkyFormsUtility } from '../shared/forms-utility';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@skyux/core";
|
|
13
|
-
import * as i2 from "./services/text-editor-adapter.service";
|
|
14
|
-
import * as i3 from "./services/text-editor.service";
|
|
15
|
-
import * as i4 from "./services/text-sanitization.service";
|
|
16
|
-
import * as i5 from "@skyux/layout";
|
|
17
|
-
import * as i6 from "./menubar/text-editor-menubar.component";
|
|
18
|
-
import * as i7 from "./toolbar/text-editor-toolbar.component";
|
|
19
|
-
import * as i8 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) {
|
|
29
|
-
this.changeDetector = changeDetector;
|
|
30
|
-
this.coreAdapterService = coreAdapterService;
|
|
31
|
-
this.adapterService = adapterService;
|
|
32
|
-
this.editorService = editorService;
|
|
33
|
-
this.sanitizationService = sanitizationService;
|
|
34
|
-
/**
|
|
35
|
-
* Indicates whether to put focus on the editor after it renders.
|
|
36
|
-
*/
|
|
37
|
-
this.autofocus = false;
|
|
38
|
-
this.editorFocusStream = new Subject();
|
|
39
|
-
// tslint:disable: max-line-length
|
|
40
|
-
/**
|
|
41
|
-
* Specifies the fonts to include in the font picker.
|
|
42
|
-
* @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'}]
|
|
43
|
-
*/
|
|
44
|
-
// tslint:enable: max-line-length
|
|
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
|
-
// tslint:disable: max-line-length
|
|
66
|
-
/**
|
|
67
|
-
* Specifies the actions to include in the toolbar and determines their order.
|
|
68
|
-
* @default [ 'font-family', 'font-size', 'font-style', 'color', 'list', 'link ]
|
|
69
|
-
*/
|
|
70
|
-
// tslint:enable: max-line-length
|
|
71
|
-
this.toolbarActions = TOOLBAR_ACTION_DEFAULTS;
|
|
72
|
-
this.focusInitialized = false;
|
|
73
|
-
this.initialized = false;
|
|
74
|
-
this.ngUnsubscribe = new Subject();
|
|
75
|
-
this._disabled = false;
|
|
76
|
-
this._initialStyleState = Object.assign({}, STYLE_STATE_DEFAULTS);
|
|
77
|
-
this._placeholder = '';
|
|
78
|
-
this._value = '<p></p>';
|
|
79
|
-
/* istanbul ignore next */
|
|
80
|
-
this.onTouch = () => { };
|
|
81
|
-
/* istanbul ignore next */
|
|
82
|
-
this._onChange = (_) => { };
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Indicates whether to disable the text editor.
|
|
86
|
-
* @default false
|
|
87
|
-
*/
|
|
88
|
-
set disabled(value) {
|
|
89
|
-
const coercedValue = SkyFormsUtility.coerceBooleanProperty(value);
|
|
90
|
-
if (coercedValue !== this.disabled) {
|
|
91
|
-
this._disabled = coercedValue;
|
|
92
|
-
// Update focusableChildren inside the iframe.
|
|
93
|
-
let focusableChildren;
|
|
94
|
-
/* istanbul ignore else */
|
|
95
|
-
if (this.iframeRef) {
|
|
96
|
-
focusableChildren = this.coreAdapterService.getFocusableChildren(this.iframeRef.nativeElement.contentDocument.body, {
|
|
97
|
-
ignoreVisibility: true,
|
|
98
|
-
ignoreTabIndex: true
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
if (this._disabled) {
|
|
102
|
-
this.adapterService.disableEditor(this.id, focusableChildren, this.iframeRef.nativeElement);
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
this.adapterService.enableEditor(this.id, focusableChildren, this.iframeRef.nativeElement);
|
|
106
|
-
}
|
|
107
|
-
this.changeDetector.markForCheck();
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
get disabled() {
|
|
111
|
-
return this._disabled;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Specifies the initial styles for all content, including background color, font size, and link state.
|
|
115
|
-
*/
|
|
116
|
-
set initialStyleState(state) {
|
|
117
|
-
// Do not update the state after initialization has taken place
|
|
118
|
-
/* istanbul ignore else */
|
|
119
|
-
if (!this.initialized) {
|
|
120
|
-
this._initialStyleState = Object.assign(Object.assign({}, STYLE_STATE_DEFAULTS), state);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
get initialStyleState() {
|
|
124
|
-
return this._initialStyleState;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Specifies placeholder text to display when the text entry area is empty.
|
|
128
|
-
*/
|
|
129
|
-
set placeholder(value) {
|
|
130
|
-
/* istanbul ignore else */
|
|
131
|
-
if (value !== this._placeholder) {
|
|
132
|
-
this._placeholder = value;
|
|
133
|
-
if (this.initialized) {
|
|
134
|
-
this.adapterService.setPlaceholder(this.id, value);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
get placeholder() {
|
|
139
|
-
return this._placeholder;
|
|
140
|
-
}
|
|
141
|
-
set value(value) {
|
|
142
|
-
// Set clear state to be an empty string
|
|
143
|
-
let valueString = value;
|
|
144
|
-
if (!value || value.trim() === '<p></p>' || value.trim() === '<br>') {
|
|
145
|
-
valueString = '';
|
|
146
|
-
}
|
|
147
|
-
valueString = this.sanitizationService.sanitize(valueString).trim();
|
|
148
|
-
if (this._value !== valueString) {
|
|
149
|
-
this._value = valueString;
|
|
150
|
-
// Autofocus isn't testable in Firefox and IE.
|
|
151
|
-
/* istanbul ignore next */
|
|
152
|
-
if (this.autofocus && !this.focusInitialized) {
|
|
153
|
-
this.adapterService.focusEditor(this.id);
|
|
154
|
-
this.focusInitialized = true;
|
|
155
|
-
}
|
|
156
|
-
this.onChange();
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
get value() {
|
|
160
|
-
return this._value;
|
|
161
|
-
}
|
|
162
|
-
ngAfterViewInit() {
|
|
163
|
-
this.initIframe();
|
|
164
|
-
}
|
|
165
|
-
ngOnDestroy() {
|
|
166
|
-
this.adapterService.removeObservers(this.editorService.editors[this.id]);
|
|
167
|
-
this.editorService.removeEditor(this.id);
|
|
168
|
-
this.ngUnsubscribe.next();
|
|
169
|
-
this.ngUnsubscribe.complete();
|
|
170
|
-
}
|
|
171
|
-
onIframeLoad() {
|
|
172
|
-
// Remove editor if it already exists to cover situations where the text editor might have been moved in the DOM.
|
|
173
|
-
/* istanbul ignore else */
|
|
174
|
-
if (this.editorService.editors[this.id]) {
|
|
175
|
-
this.editorService.removeEditor(this.id);
|
|
176
|
-
this.initIframe();
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
writeValue(obj) {
|
|
180
|
-
this.value = obj;
|
|
181
|
-
// Update HTML if necessary.
|
|
182
|
-
const editorValue = this.adapterService.getEditorInnerHtml(this.id);
|
|
183
|
-
if (this.initialized && editorValue !== this._value) {
|
|
184
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
registerOnChange(fn) {
|
|
188
|
-
this._onChange = fn;
|
|
189
|
-
}
|
|
190
|
-
registerOnTouched(fn) {
|
|
191
|
-
this.onTouch = fn;
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* Implemented as part of ControlValueAccessor.
|
|
195
|
-
*/
|
|
196
|
-
setDisabledState(isDisabled) {
|
|
197
|
-
this.disabled = isDisabled;
|
|
198
|
-
}
|
|
199
|
-
onChange() {
|
|
200
|
-
this._onChange(this.value);
|
|
201
|
-
}
|
|
202
|
-
updateValueAndStyle() {
|
|
203
|
-
this.value = this.adapterService.getEditorInnerHtml(this.id);
|
|
204
|
-
this._initialStyleState = Object.assign(Object.assign({}, this._initialStyleState), this.adapterService.getStyleState(this.id));
|
|
205
|
-
}
|
|
206
|
-
initIframe() {
|
|
207
|
-
this.adapterService.addEditor(this.id, this.iframeRef.nativeElement, this.initialStyleState, this.placeholder);
|
|
208
|
-
this.editorService.selectionChangeListener(this.id)
|
|
209
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
210
|
-
.subscribe(() => {
|
|
211
|
-
this.updateValueAndStyle();
|
|
212
|
-
this.editorFocusStream.next();
|
|
213
|
-
});
|
|
214
|
-
this.editorService.clickListener(this.id)
|
|
215
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
216
|
-
.subscribe(() => {
|
|
217
|
-
this.editorFocusStream.next();
|
|
218
|
-
});
|
|
219
|
-
this.editorService.commandChangeListener(this.id)
|
|
220
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
221
|
-
.subscribe(() => {
|
|
222
|
-
this.updateValueAndStyle();
|
|
223
|
-
});
|
|
224
|
-
this.adapterService.setEditorInnerHtml(this.id, this._value);
|
|
225
|
-
/* istanbul ignore next */
|
|
226
|
-
if (this.autofocus) {
|
|
227
|
-
this.adapterService.focusEditor(this.id);
|
|
228
|
-
}
|
|
229
|
-
this.initialized = true;
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
SkyTextEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyCoreAdapterService }, { token: i2.SkyTextEditorAdapterService }, { token: i3.SkyTextEditorService }, { token: i4.SkyTextSanitizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
233
|
-
SkyTextEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.12", 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" }, providers: [
|
|
234
|
-
{
|
|
235
|
-
provide: NG_VALUE_ACCESSOR,
|
|
236
|
-
// tslint:disable-next-line: no-forward-ref
|
|
237
|
-
useExisting: forwardRef(() => SkyTextEditorComponent),
|
|
238
|
-
multi: true
|
|
239
|
-
}
|
|
240
|
-
], 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: i5.λ37, selector: "sky-toolbar" }, { type: i5.λ38, selector: "sky-toolbar-section" }, { type: i6.SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: ["editorFocusStream", "editorId", "menus", "mergeFields", "disabled"] }, { type: i7.SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: ["editorFocusStream", "editorId", "fontList", "fontSizeList", "toolbarActions", "styleState", "disabled"] }], directives: [{ type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
241
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyTextEditorComponent, decorators: [{
|
|
242
|
-
type: Component,
|
|
243
|
-
args: [{
|
|
244
|
-
selector: 'sky-text-editor',
|
|
245
|
-
templateUrl: './text-editor.component.html',
|
|
246
|
-
styleUrls: ['./text-editor.component.scss'],
|
|
247
|
-
providers: [
|
|
248
|
-
{
|
|
249
|
-
provide: NG_VALUE_ACCESSOR,
|
|
250
|
-
// tslint:disable-next-line: no-forward-ref
|
|
251
|
-
useExisting: forwardRef(() => SkyTextEditorComponent),
|
|
252
|
-
multi: true
|
|
253
|
-
}
|
|
254
|
-
],
|
|
255
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
256
|
-
encapsulation: ViewEncapsulation.None
|
|
257
|
-
}]
|
|
258
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyCoreAdapterService }, { type: i2.SkyTextEditorAdapterService }, { type: i3.SkyTextEditorService }, { type: i4.SkyTextSanitizationService }]; }, propDecorators: { autofocus: [{
|
|
259
|
-
type: Input
|
|
260
|
-
}], disabled: [{
|
|
261
|
-
type: Input
|
|
262
|
-
}], fontList: [{
|
|
263
|
-
type: Input
|
|
264
|
-
}], fontSizeList: [{
|
|
265
|
-
type: Input
|
|
266
|
-
}], id: [{
|
|
267
|
-
type: Input
|
|
268
|
-
}], initialStyleState: [{
|
|
269
|
-
type: Input
|
|
270
|
-
}], menus: [{
|
|
271
|
-
type: Input
|
|
272
|
-
}], mergeFields: [{
|
|
273
|
-
type: Input
|
|
274
|
-
}], placeholder: [{
|
|
275
|
-
type: Input
|
|
276
|
-
}], toolbarActions: [{
|
|
277
|
-
type: Input
|
|
278
|
-
}], iframeRef: [{
|
|
279
|
-
type: ViewChild,
|
|
280
|
-
args: ['iframe']
|
|
281
|
-
}] } });
|
|
282
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsVUFBVSxFQUNWLEtBQUssRUFFTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFFTCxpQkFBaUIsRUFDbEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0wsU0FBUyxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLE9BQU8sRUFDUixNQUFNLE1BQU0sQ0FBQztBQU1kLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3JCLE1BQU0saUNBQWlDLENBQUM7QUFFekMsT0FBTyxFQUNMLHVCQUF1QixFQUN4QixNQUFNLG9DQUFvQyxDQUFDO0FBYzVDLE9BQU8sRUFDTCxrQkFBa0IsRUFDbkIsTUFBTSwrQkFBK0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3hCLE1BQU0sb0NBQW9DLENBQUM7QUFzQjVDLE9BQU8sRUFDTCxlQUFlLEVBQ2hCLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7QUFFakM7O0dBRUc7QUFDSCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFFckI7O0dBRUc7QUFnQkgsTUFBTSxPQUFPLHNCQUFzQjtJQXVLakMsWUFDVSxjQUFpQyxFQUNqQyxrQkFBeUMsRUFDekMsY0FBMkMs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S0FDRiwrSEN6R0gsbXZDQWlEQTs0RkQ0RGEsc0JBQXNCO2tCQWZsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsMkNBQTJDOzRCQUMzQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0QztrUUFPUSxTQUFTO3NCQURmLEtBQUs7Z0JBUUssUUFBUTtzQkFEbEIsS0FBSztnQkFzQ0MsUUFBUTtzQkFEZCxLQUFLO2dCQVFDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBUUMsRUFBRTtzQkFEUixLQUFLO2dCQU9LLGlCQUFpQjtzQkFEM0IsS0FBSztnQkFxQkMsS0FBSztzQkFEWCxLQUFLO2dCQU9DLFdBQVc7c0JBRGpCLEtBQUs7Z0JBT0ssV0FBVztzQkFEckIsS0FBSztnQkFzQkMsY0FBYztzQkFEcEIsS0FBSztnQkErQkUsU0FBUztzQkFEaEIsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxVRV9BQ0NFU1NPUlxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIHRha2VVbnRpbFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIFN1YmplY3Rcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIFNreUNvcmVBZGFwdGVyU2VydmljZVxufSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7XG4gIE1FTlVfREVGQVVMVFNcbn0gZnJvbSAnLi9kZWZhdWx0cy9tZW51LWRlZmF1bHRzJztcblxuaW1wb3J0IHtcbiAgU1RZTEVfU1RBVEVfREVGQVVMVFNcbn0gZnJvbSAnLi9kZWZhdWx0cy9zdHlsZS1zdGF0ZS1kZWZhdWx0cyc7XG5cbmltcG9ydCB7XG4gIFRPT0xCQVJfQUNUSU9OX0RFRkFVTFRTXG59IGZyb20gJy4vZGVmYXVsdHMvdG9vbGJhci1hY3Rpb24tZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yQWRhcHRlclNlcnZpY2Vcbn0gZnJvbSAnLi9zZXJ2aWNlcy90ZXh0LWVkaXRvci1hZGFwdGVyLnNlcnZpY2UnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzL3RleHQtZWRpdG9yLnNlcnZpY2UnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0U2FuaXRpemF0aW9uU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzL3RleHQtc2FuaXRpemF0aW9uLnNlcnZpY2UnO1xuXG5pbXBvcnQge1xuICBGT05UX0xJU1RfREVGQVVMVFNcbn0gZnJvbSAnLi9kZWZhdWx0cy9mb250LWxpc3QtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBGT05UX1NJWkVfTElTVF9ERUZBVUxUU1xufSBmcm9tICcuL2RlZmF1bHRzL2ZvbnQtc2l6ZS1saXN0LWRlZmF1bHRzJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvckZvbnRcbn0gZnJvbSAnLi90eXBlcy9mb250LXN0YXRlJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvck1lbnVUeXBlXG59IGZyb20gJy4vdHlwZXMvbWVudS10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvclN0eWxlU3RhdGVcbn0gZnJvbSAnLi90eXBlcy9zdHlsZS1zdGF0ZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JNZXJnZUZpZWxkXG59IGZyb20gJy4vdHlwZXMvdGV4dC1lZGl0b3ItbWVyZ2UtZmllbGQnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yVG9vbGJhckFjdGlvblR5cGVcbn0gZnJvbSAnLi90eXBlcy90b29sYmFyLWFjdGlvbi10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5Rm9ybXNVdGlsaXR5XG59IGZyb20gJy4uL3NoYXJlZC9mb3Jtcy11dGlsaXR5JztcblxuLyoqXG4gKiBBdXRvLWluY3JlbWVudGluZyBpbnRlZ2VyIHVzZWQgdG8gZ2VuZXJhdGUgdW5pcXVlIGlkcyBmb3IgcmFkaW8gY29tcG9uZW50cy5cbiAqL1xubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbi8qKlxuICogVGhlIHRleHQgZWRpdG9yIGNvbXBvbmVudCBsZXRzIHVzZXJzIGZvcm1hdCBhbmQgbWFuaXB1bGF0ZSB0ZXh0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktdGV4dC1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dC1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ZXh0LWVkaXRvci5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tZm9yd2FyZC1yZWZcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreVRleHRFZGl0b3JDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFNreVRleHRFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25EZXN0cm95IHtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gcHV0IGZvY3VzIG9uIHRoZSBlZGl0b3IgYWZ0ZXIgaXQgcmVuZGVycy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhdXRvZm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gZGlzYWJsZSB0aGUgdGV4dCBlZGl0b3IuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgY29lcmNlZFZhbHVlID0gU2t5Rm9ybXNVdGlsaXR5LmNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgaWYgKGNvZXJjZWRWYWx1ZSAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VkVmFsdWU7XG5cbiAgICAgIC8vIFVwZGF0ZSBmb2N1c2FibGVDaGlsZHJlbiBpbnNpZGUgdGhlIGlmcmFtZS5cbiAgICAgIGxldCBmb2N1c2FibGVDaGlsZHJlbjogSFRNTEVsZW1lbnRbXTtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAodGhpcy5pZnJhbWVSZWYpIHtcbiAgICAgICAgZm9jdXNhYmxlQ2hpbGRyZW4gPSB0aGlzLmNvcmVBZGFwdGVyU2VydmljZS5nZXRGb2N1c2FibGVDaGlsZHJlbih0aGlzLmlmcmFtZVJlZi5uYXRpdmVFbGVtZW50LmNvbnRlbnREb2N1bWVudC5ib2R5LCB7XG4gICAgICAgICAgaWdub3JlVmlzaWJpbGl0eTogdHJ1ZSxcbiAgICAgICAgICBpZ25vcmVUYWJJbmRleDogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2UuZGlzYWJsZUVkaXRvcih0aGlzLmlkLCBmb2N1c2FibGVDaGlsZHJlbiwgdGhpcy5pZnJhbWVSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmVuYWJsZUVkaXRvcih0aGlzLmlkLCBmb2N1c2FibGVDaGlsZHJlbiwgdGhpcy5pZnJhbWVSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICB9XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIGVkaXRvckZvY3VzU3RyZWFtID0gbmV3IFN1YmplY3QoKTtcblxuICAvLyB0c2xpbnQ6ZGlzYWJsZTogbWF4LWxpbmUtbGVuZ3RoXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGZvbnRzIHRvIGluY2x1ZGUgaW4gdGhlIGZvbnQgcGlja2VyLlxuICAgKiBAZGVmYXVsdCBbe25hbWU6ICdCbGFja2JhdWQgU2FucycsIHZhbHVlOiAnXCJCbGFja2JhdWQgU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZid9LCB7bmFtZTogJ0FyaWFsJywgdmFsdWU6ICdBcmlhbCd9LCB7bmFtZTogJ0FyaWFsIEJsYWNrJywgdmFsdWU6ICdcIkFyaWFsIEJsYWNrXCInfSwge25hbWU6ICdDb3VyaWVyIE5ldycsIHZhbHVlOiAnXCJDb3VyaWVyIE5ld1wiJ30sIHtuYW1lOiAnR2VvcmdpYScsIHZhbHVlOiAnR2VvcmdpYSwgc2VyaWYnfSwge25hbWU6ICdUYWhvbWEnLCB2YWx1ZTogJ1RhaG9tYSwgR2VuZXZhLCBzYW5zLXNlcmlmJ30sIHtuYW1lOiAnVGltZXMgTmV3IFJvbWFuJywgdmFsdWU6ICdcIlRpbWVzIE5ldyBSb21hblwiJ30sIHtuYW1lOiAnVHJlYnVjaGV0IE1TJywgdmFsdWU6ICdcIlRyZWJ1Y2hldCBNU1wiLCBzYW5zLXNlcmlmJ30sIHtuYW1lOiAnVmVyZGFuYScsIHZhbHVlOiAnVmVyZGFuYSwgR2VuZXZhLCBzYW5zLXNlcmlmJ31dXG4gICAqL1xuICAvLyB0c2xpbnQ6ZW5hYmxlOiBtYXgtbGluZS1sZW5ndGhcbiAgQElucHV0KClcbiAgcHVibGljIGZvbnRMaXN0OiBTa3lUZXh0RWRpdG9yRm9udFtdID0gRk9OVF9MSVNUX0RFRkFVTFRTO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGZvbnQgc2l6ZXMgdG8gaW5jbHVkZSBpbiB0aGUgZm9udCBzaXplIHBpY2tlci5cbiAgICogQGRlZmF1bHQgWzYsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAxOCwgMjAsIDIyLCAyNCwgMjYsIDI4LCAzNiwgNDhdXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udFNpemVMaXN0OiBudW1iZXJbXSA9IEZPTlRfU0laRV9MSVNUX0RFRkFVTFRTO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSB1bmlxdWUgSUQgYXR0cmlidXRlIGZvciB0aGUgdGV4dCBlZGl0b3IuXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBjb21wb25lbnQgZ2VuZXJhdGVzIGEgcmFuZG9tIElELlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGlkID0gYHNreS10ZXh0LWVkaXRvci0keysrbmV4dFVuaXF1ZUlkfWA7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgaW5pdGlhbCBzdHlsZXMgZm9yIGFsbCBjb250ZW50LCBpbmNsdWRpbmcgYmFja2dyb3VuZCBjb2xvciwgZm9udCBzaXplLCBhbmQgbGluayBzdGF0ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaW5pdGlhbFN0eWxlU3RhdGUoc3RhdGU6IFNreVRleHRFZGl0b3JTdHlsZVN0YXRlKSB7XG4gICAgLy8gRG8gbm90IHVwZGF0ZSB0aGUgc3RhdGUgYWZ0ZXIgaW5pdGlhbGl6YXRpb24gaGFzIHRha2VuIHBsYWNlXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuX2luaXRpYWxTdHlsZVN0YXRlID0ge1xuICAgICAgICAuLi5TVFlMRV9TVEFURV9ERUZBVUxUUyxcbiAgICAgICAgLi4uc3RhdGVcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpbml0aWFsU3R5bGVTdGF0ZSgpOiBTa3lUZXh0RWRpdG9yU3R5bGVTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2luaXRpYWxTdHlsZVN0YXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWVudXMgdG8gaW5jbHVkZSBpbiB0aGUgbWVudSBiYXIuXG4gICAqIEBkZWZhdWx0IFsgJ2VkaXQnLCAnZm9ybWF0JyBdXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWVudXM6IFNreVRleHRFZGl0b3JNZW51VHlwZVtdID0gTUVOVV9ERUZBVUxUUztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtZXJnZSBmaWVsZHMgdG8gaW5jbHVkZSBpbiB0aGUgbWVyZ2UgZmllbGQgbWVudS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZXJnZUZpZWxkczogU2t5VGV4dEVkaXRvck1lcmdlRmllbGRbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgcGxhY2Vob2xkZXIgdGV4dCB0byBkaXNwbGF5IHdoZW4gdGhlIHRleHQgZW50cnkgYXJlYSBpcyBlbXB0eS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZykge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLl9wbGFjZWhvbGRlcikge1xuICAgICAgdGhpcy5fcGxhY2Vob2xkZXIgPSB2YWx1ZTtcbiAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0UGxhY2Vob2xkZXIodGhpcy5pZCwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGxhY2Vob2xkZXI7XG4gIH1cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZTogbWF4LWxpbmUtbGVuZ3RoXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGFjdGlvbnMgdG8gaW5jbHVkZSBpbiB0aGUgdG9vbGJhciBhbmQgZGV0ZXJtaW5lcyB0aGVpciBvcmRlci5cbiAgICogQGRlZmF1bHQgWyAnZm9udC1mYW1pbHknLCAnZm9udC1zaXplJywgJ2ZvbnQtc3R5bGUnLCAnY29sb3InLCAnbGlzdCcsICdsaW5rIF1cbiAgICovXG4gIC8vIHRzbGludDplbmFibGU6IG1heC1saW5lLWxlbmd0aFxuICBASW5wdXQoKVxuICBwdWJsaWMgdG9vbGJhckFjdGlvbnM6IFNreVRleHRFZGl0b3JUb29sYmFyQWN0aW9uVHlwZVtdID0gVE9PTEJBUl9BQ1RJT05fREVGQVVMVFM7XG5cbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgLy8gU2V0IGNsZWFyIHN0YXRlIHRvIGJlIGFuIGVtcHR5IHN0cmluZ1xuICAgIGxldCB2YWx1ZVN0cmluZzogc3RyaW5nID0gdmFsdWU7XG4gICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS50cmltKCkgPT09ICc8cD48L3A+JyB8fCB2YWx1ZS50cmltKCkgPT09ICc8YnI+Jykge1xuICAgICAgdmFsdWVTdHJpbmcgPSAnJztcbiAgICB9XG4gICAgdmFsdWVTdHJpbmcgPSB0aGlzLnNhbml0aXphdGlvblNlcnZpY2Uuc2FuaXRpemUodmFsdWVTdHJpbmcpLnRyaW0oKTtcblxuICAgIGlmICh0aGlzLl92YWx1ZSAhPT0gdmFsdWVTdHJpbmcpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWVTdHJpbmc7XG5cbiAgICAgIC8vIEF1dG9mb2N1cyBpc24ndCB0ZXN0YWJsZSBpbiBGaXJlZm94IGFuZCBJRS5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBpZiAodGhpcy5hdXRvZm9jdXMgJiYgIXRoaXMuZm9jdXNJbml0aWFsaXplZCkge1xuICAgICAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmZvY3VzRWRpdG9yKHRoaXMuaWQpO1xuICAgICAgICB0aGlzLmZvY3VzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5vbkNoYW5nZSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzSW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCdpZnJhbWUnKVxuICBwcml2YXRlIGlmcmFtZVJlZjogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2luaXRpYWxTdHlsZVN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgU1RZTEVfU1RBVEVfREVGQVVMVFMpO1xuXG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyID0gJyc7XG5cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyA9ICc8cD48L3A+JztcblxuICBjb25zdHJ1Y3RvciAoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBjb3JlQWRhcHRlclNlcnZpY2U6IFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgICBwcml2YXRlIGFkYXB0ZXJTZXJ2aWNlOiBTa3lUZXh0RWRpdG9yQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlZGl0b3JTZXJ2aWNlOiBTa3lUZXh0RWRpdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHNhbml0aXphdGlvblNlcnZpY2U6IFNreVRleHRTYW5pdGl6YXRpb25TZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdElmcmFtZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWRhcHRlclNlcnZpY2UucmVtb3ZlT2JzZXJ2ZXJzKHRoaXMuZWRpdG9yU2VydmljZS5lZGl0b3JzW3RoaXMuaWRdKTtcbiAgICB0aGlzLmVkaXRvclNlcnZpY2UucmVtb3ZlRWRpdG9yKHRoaXMuaWQpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgb25JZnJhbWVMb2FkKCk6IHZvaWQge1xuICAgIC8vIFJlbW92ZSBlZGl0b3IgaWYgaXQgYWxyZWFkeSBleGlzdHMgdG8gY292ZXIgc2l0dWF0aW9ucyB3aGVyZSB0aGUgdGV4dCBlZGl0b3IgbWlnaHQgaGF2ZSBiZWVuIG1vdmVkIGluIHRoZSBET00uXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5lZGl0b3JTZXJ2aWNlLmVkaXRvcnNbdGhpcy5pZF0pIHtcbiAgICAgIHRoaXMuZWRpdG9yU2VydmljZS5yZW1vdmVFZGl0b3IodGhpcy5pZCk7XG4gICAgICB0aGlzLmluaXRJZnJhbWUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShvYmo6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBvYmo7XG5cbiAgICAvLyBVcGRhdGUgSFRNTCBpZiBuZWNlc3NhcnkuXG4gICAgY29uc3QgZWRpdG9yVmFsdWUgPSB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmdldEVkaXRvcklubmVySHRtbCh0aGlzLmlkKTtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiBlZGl0b3JWYWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0RWRpdG9ySW5uZXJIdG1sKHRoaXMuaWQsIHRoaXMuX3ZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZUFuZFN0eWxlKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmdldEVkaXRvcklubmVySHRtbCh0aGlzLmlkKTtcbiAgICB0aGlzLl9pbml0aWFsU3R5bGVTdGF0ZSA9IHtcbiAgICAgIC4uLnRoaXMuX2luaXRpYWxTdHlsZVN0YXRlLFxuICAgICAgLi4udGhpcy5hZGFwdGVyU2VydmljZS5nZXRTdHlsZVN0YXRlKHRoaXMuaWQpIGFzIGFueVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGluaXRJZnJhbWUoKTogdm9pZCB7XG4gICAgdGhpcy5hZGFwdGVyU2VydmljZS5hZGRFZGl0b3IoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy5pZnJhbWVSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgIHRoaXMuaW5pdGlhbFN0eWxlU3RhdGUsXG4gICAgICB0aGlzLnBsYWNlaG9sZGVyXG4gICAgKTtcblxuICAgIHRoaXMuZWRpdG9yU2VydmljZS5zZWxlY3Rpb25DaGFuZ2VMaXN0ZW5lcih0aGlzLmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZUFuZFN0eWxlKCk7XG4gICAgICAgIHRoaXMuZWRpdG9yRm9jdXNTdHJlYW0ubmV4dCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmVkaXRvclNlcnZpY2UuY2xpY2tMaXN0ZW5lcih0aGlzLmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5lZGl0b3JGb2N1c1N0cmVhbS5uZXh0KCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuZWRpdG9yU2VydmljZS5jb21tYW5kQ2hhbmdlTGlzdGVuZXIodGhpcy5pZClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWVBbmRTdHlsZSgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLnNldEVkaXRvcklubmVySHRtbCh0aGlzLmlkLCB0aGlzLl92YWx1ZSk7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmICh0aGlzLmF1dG9mb2N1cykge1xuICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5mb2N1c0VkaXRvcih0aGlzLmlkKTtcbiAgICB9XG5cbiAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHB1YmxpYyBvblRvdWNoID0gKCkgPT4ge307XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcHJpdmF0ZSBfb25DaGFuZ2UgPSAoXzogc3RyaW5nKSA9PiB7fTtcbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktdGV4dC1lZGl0b3JcIlxuPlxuICA8c2t5LXRvb2xiYXJcbiAgICBjbGFzcz1cInNreS10ZXh0LWVkaXRvci10b29sYmFyXCJcbiAgPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uXG4gICAgICBhcmlhLWxhYmVsPVwiVGV4dCBmb3JtYXR0aW5nXCJcbiAgICAgIGNsYXNzPVwibWVudWJhclwiXG4gICAgICByb2xlPVwidG9vbGJhclwiXG4gICAgPlxuICAgICAgPHNreS10ZXh0LWVkaXRvci1tZW51YmFyXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtlZGl0b3JGb2N1c1N0cmVhbV09XCJlZGl0b3JGb2N1c1N0cmVhbVwiXG4gICAgICAgIFtlZGl0b3JJZF09XCJpZFwiXG4gICAgICAgIFttZW51c109XCJtZW51c1wiXG4gICAgICAgIFttZXJnZUZpZWxkc109XCJtZXJnZUZpZWxkc1wiXG4gICAgICA+XG4gICAgICA8L3NreS10ZXh0LWVkaXRvci1tZW51YmFyPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8c2t5LXRvb2xiYXItc2VjdGlvblxuICAgICAgYXJpYS1sYWJlbD1cIlRleHQgZm9ybWF0dGluZ1wiXG4gICAgICBjbGFzcz1cInRvb2xiYXJcIlxuICAgICAgcm9sZT1cInRvb2xiYXJcIlxuICAgID5cbiAgICAgIDxza3ktdGV4dC1lZGl0b3ItdG9vbGJhclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbZWRpdG9yRm9jdXNTdHJlYW1dPVwiZWRpdG9yRm9jdXNTdHJlYW1cIlxuICAgICAgICBbZWRpdG9ySWRdPVwiaWRcIlxuICAgICAgICBbZm9udExpc3RdPVwiZm9udExpc3RcIlxuICAgICAgICBbZm9udFNpemVMaXN0XT1cImZvbnRTaXplTGlzdFwiXG4gICAgICAgIFt0b29sYmFyQWN0aW9uc109XCJ0b29sYmFyQWN0aW9uc1wiXG4gICAgICAgIFtzdHlsZVN0YXRlXT1cImluaXRpYWxTdHlsZVN0YXRlXCJcbiAgICAgID5cbiAgICAgIDwvc2t5LXRleHQtZWRpdG9yLXRvb2xiYXI+XG4gICAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8L3NreS10b29sYmFyPlxuICA8aWZyYW1lXG4gICAgY2xhc3M9XCJza3ktdGV4dC1lZGl0b3Itd3JhcHBlclwiXG4gICAgc3JjPVwiYWJvdXQ6YmxhbmtcIlxuICAgIHRpdGxlPVwiVGV4dCBFZGl0b3JcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdza3ktdGV4dC1lZGl0b3Itd3JhcHBlci1kaXNhYmxlZCc6IGRpc2FibGVkXG4gICAgfVwiXG4gICAgKGxvYWQpPVwib25JZnJhbWVMb2FkKClcIlxuICAgICNpZnJhbWVcbiAgPlxuICA8L2lmcmFtZT5cbjwvZGl2PlxuIl19
|
|
@@ -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.12", ngImport: i0, type: SkyTextEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
23
|
-
SkyTextEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", 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.12", 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.12", 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
|