@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,37 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/platform-browser";
|
|
4
|
-
import * as i2 from "../text-editor/services/text-sanitization.service";
|
|
5
|
-
export class SkyRichTextDisplayComponent {
|
|
6
|
-
constructor(sanitizer, sanitizationService) {
|
|
7
|
-
this.sanitizer = sanitizer;
|
|
8
|
-
this.sanitizationService = sanitizationService;
|
|
9
|
-
this.sanitizedText = '';
|
|
10
|
-
this._richText = '';
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Specifies the rich text to display.
|
|
14
|
-
*/
|
|
15
|
-
set richText(value) {
|
|
16
|
-
const cleaned = this.sanitizationService.sanitize(value);
|
|
17
|
-
/* istanbul ignore else */
|
|
18
|
-
if (cleaned !== this._richText) {
|
|
19
|
-
this._richText = cleaned;
|
|
20
|
-
// Text has already been sanitized with DOMPurifier.
|
|
21
|
-
// Tell Angular to bypass its own internal sanitization.
|
|
22
|
-
this.sanitizedText = this.sanitizer.bypassSecurityTrustHtml(cleaned);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
SkyRichTextDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.SkyTextSanitizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
-
SkyRichTextDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyRichTextDisplayComponent, selector: "sky-rich-text-display", inputs: { richText: "richText" }, ngImport: i0, template: "<span\n class=\"sky-rich-text-display-text\"\n [innerHTML]=\"sanitizedText\"\n>\n</span>\n" });
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayComponent, decorators: [{
|
|
29
|
-
type: Component,
|
|
30
|
-
args: [{
|
|
31
|
-
selector: 'sky-rich-text-display',
|
|
32
|
-
templateUrl: './rich-text-display.component.html'
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }, { type: i2.SkyTextSanitizationService }]; }, propDecorators: { richText: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LWRpc3BsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvcmljaC10ZXh0LWRpc3BsYXkvcmljaC10ZXh0LWRpc3BsYXkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvcmljaC10ZXh0LWRpc3BsYXkvcmljaC10ZXh0LWRpc3BsYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ04sTUFBTSxlQUFlLENBQUM7Ozs7QUFldkIsTUFBTSxPQUFPLDJCQUEyQjtJQXNCdEMsWUFDVSxTQUF1QixFQUN2QixtQkFBK0M7UUFEL0MsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUN2Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTRCO1FBTmxELGtCQUFhLEdBQWEsRUFBRSxDQUFDO1FBRTVCLGNBQVMsR0FBVyxFQUFFLENBQUM7SUFLM0IsQ0FBQztJQXZCTDs7T0FFRztJQUNILElBQ1csUUFBUSxDQUFDLEtBQWE7UUFDL0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RCwwQkFBMEI7UUFDMUIsSUFBSSxPQUFPLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQztZQUV6QixvREFBb0Q7WUFDcEQsd0RBQXdEO1lBQ3hELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN0RTtJQUNILENBQUM7O3lIQWhCVSwyQkFBMkI7NkdBQTNCLDJCQUEyQiwrRkNsQnhDLDhGQUtBOzRGRGFhLDJCQUEyQjtrQkFKdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO2lCQUNsRDs0SUFPWSxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgRG9tU2FuaXRpemVyLFxuICBTYWZlSHRtbFxufSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dFNhbml0aXphdGlvblNlcnZpY2Vcbn0gZnJvbSAnLi4vdGV4dC1lZGl0b3Ivc2VydmljZXMvdGV4dC1zYW5pdGl6YXRpb24uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1yaWNoLXRleHQtZGlzcGxheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yaWNoLXRleHQtZGlzcGxheS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU2t5UmljaFRleHREaXNwbGF5Q29tcG9uZW50IHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSByaWNoIHRleHQgdG8gZGlzcGxheS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcmljaFRleHQodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IGNsZWFuZWQgPSB0aGlzLnNhbml0aXphdGlvblNlcnZpY2Uuc2FuaXRpemUodmFsdWUpO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGNsZWFuZWQgIT09IHRoaXMuX3JpY2hUZXh0KSB7XG4gICAgICB0aGlzLl9yaWNoVGV4dCA9IGNsZWFuZWQ7XG5cbiAgICAgIC8vIFRleHQgaGFzIGFscmVhZHkgYmVlbiBzYW5pdGl6ZWQgd2l0aCBET01QdXJpZmllci5cbiAgICAgIC8vIFRlbGwgQW5ndWxhciB0byBieXBhc3MgaXRzIG93biBpbnRlcm5hbCBzYW5pdGl6YXRpb24uXG4gICAgICB0aGlzLnNhbml0aXplZFRleHQgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChjbGVhbmVkKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2FuaXRpemVkVGV4dDogU2FmZUh0bWwgPSAnJztcblxuICBwcml2YXRlIF9yaWNoVGV4dDogc3RyaW5nID0gJyc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICBwcml2YXRlIHNhbml0aXphdGlvblNlcnZpY2U6IFNreVRleHRTYW5pdGl6YXRpb25TZXJ2aWNlXG4gICkgeyB9XG5cbn1cbiIsIjxzcGFuXG4gIGNsYXNzPVwic2t5LXJpY2gtdGV4dC1kaXNwbGF5LXRleHRcIlxuICBbaW5uZXJIVE1MXT1cInNhbml0aXplZFRleHRcIlxuPlxuPC9zcGFuPlxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { SkyRichTextDisplayComponent } from './rich-text-display.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class SkyRichTextDisplayModule {
|
|
6
|
-
}
|
|
7
|
-
SkyRichTextDisplayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
-
SkyRichTextDisplayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayModule, declarations: [SkyRichTextDisplayComponent], imports: [CommonModule], exports: [SkyRichTextDisplayComponent] });
|
|
9
|
-
SkyRichTextDisplayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayModule, imports: [[
|
|
10
|
-
CommonModule
|
|
11
|
-
]] });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyRichTextDisplayModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
imports: [
|
|
16
|
-
CommonModule
|
|
17
|
-
],
|
|
18
|
-
exports: [
|
|
19
|
-
SkyRichTextDisplayComponent
|
|
20
|
-
],
|
|
21
|
-
declarations: [
|
|
22
|
-
SkyRichTextDisplayComponent
|
|
23
|
-
]
|
|
24
|
-
}]
|
|
25
|
-
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LWRpc3BsYXkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvcmljaC10ZXh0LWRpc3BsYXkvcmljaC10ZXh0LWRpc3BsYXkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQ0wsUUFBUSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCwyQkFBMkIsRUFDNUIsTUFBTSwrQkFBK0IsQ0FBQzs7QUFhdkMsTUFBTSxPQUFPLHdCQUF3Qjs7c0hBQXhCLHdCQUF3Qjt1SEFBeEIsd0JBQXdCLGlCQUhqQywyQkFBMkIsYUFOM0IsWUFBWSxhQUdaLDJCQUEyQjt1SEFNbEIsd0JBQXdCLFlBVjFCO1lBQ1AsWUFBWTtTQUNiOzRGQVFVLHdCQUF3QjtrQkFYcEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMkJBQTJCO3FCQUM1QjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3FCQUM1QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbW1vbk1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBOZ01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5UmljaFRleHREaXNwbGF5Q29tcG9uZW50XG59IGZyb20gJy4vcmljaC10ZXh0LWRpc3BsYXkuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5UmljaFRleHREaXNwbGF5Q29tcG9uZW50XG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreVJpY2hUZXh0RGlzcGxheUNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreVJpY2hUZXh0RGlzcGxheU1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// Need to add the following to classes which contain static methods.
|
|
2
|
-
// See: https://github.com/ng-packagr/ng-packagr/issues/641
|
|
3
|
-
// @dynamic
|
|
4
|
-
export class SkyFormsUtility {
|
|
5
|
-
/** Coerces a data-bound value (typically a string) to a boolean. */
|
|
6
|
-
static coerceBooleanProperty(value) {
|
|
7
|
-
return value !== undefined && `${value}` !== 'false';
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMtdXRpbGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3NoYXJlZC9mb3Jtcy11dGlsaXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFFQUFxRTtBQUNyRSwyREFBMkQ7QUFDM0QsV0FBVztBQUNYLE1BQU0sT0FBTyxlQUFlO0lBRTFCLG9FQUFvRTtJQUM3RCxNQUFNLENBQUMscUJBQXFCLENBQUMsS0FBVTtRQUM1QyxPQUFPLEtBQUssS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLEVBQUUsS0FBSyxPQUFPLENBQUM7SUFDdkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyB0byBjbGFzc2VzIHdoaWNoIGNvbnRhaW4gc3RhdGljIG1ldGhvZHMuXG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzY0MVxuLy8gQGR5bmFtaWNcbmV4cG9ydCBjbGFzcyBTa3lGb3Jtc1V0aWxpdHkge1xuXG4gIC8qKiBDb2VyY2VzIGEgZGF0YS1ib3VuZCB2YWx1ZSAodHlwaWNhbGx5IGEgc3RyaW5nKSB0byBhIGJvb2xlYW4uICovXG4gIHB1YmxpYyBzdGF0aWMgY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsdWUgIT09IHVuZGVmaW5lZCAmJiBgJHt2YWx1ZX1gICE9PSAnZmFsc2UnO1xuICB9XG59XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* NOTICE: DO NOT MODIFY THIS FILE!
|
|
3
|
-
* The contents of this file were automatically generated by
|
|
4
|
-
* the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-text-editor' schematic.
|
|
5
|
-
* To update this file, simply rerun the command.
|
|
6
|
-
*/
|
|
7
|
-
import { NgModule } from '@angular/core';
|
|
8
|
-
import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
const RESOURCES = {
|
|
11
|
-
'EN-US': { "skyux_text_editor_format_menu_action_bold_label": { "message": "Bold" }, "skyux_text_editor_format_menu_action_bold_key_shortcut": { "message": "Ctrl+B" }, "skyux_text_editor_format_menu_action_italic_label": { "message": "Italic" }, "skyux_text_editor_format_menu_action_italic_key_shortcut": { "message": "Ctrl+I" }, "skyux_text_editor_format_menu_action_underline_label": { "message": "Underline" }, "skyux_text_editor_format_menu_action_underline_key_shortcut": { "message": "Ctrl+U" }, "skyux_text_editor_format_menu_action_strikethrough_label": { "message": "Strikethrough" }, "skyux_text_editor_format_menu_action_clear_formatting_label": { "message": "Clear formatting" }, "skyux_text_editor_edit_menu_action_undo_label": { "message": "Undo" }, "skyux_text_editor_edit_menu_action_undo_key_shortcut": { "message": "Ctrl+Z" }, "skyux_text_editor_edit_menu_action_redo_label": { "message": "Redo" }, "skyux_text_editor_edit_menu_action_redo_key_shortcut": { "message": "Ctrl+Y" }, "skyux_text_editor_edit_menu_action_cut_label": { "message": "Cut" }, "skyux_text_editor_edit_menu_action_cut_key_shortcut": { "message": "Ctrl+X" }, "skyux_text_editor_edit_menu_action_copy_label": { "message": "Copy" }, "skyux_text_editor_edit_menu_action_copy_key_shortcut": { "message": "Ctrl+C" }, "skyux_text_editor_edit_menu_action_paste_label": { "message": "Paste" }, "skyux_text_editor_edit_menu_action_paste_key_shortcut": { "message": "Ctrl+V" }, "skyux_text_editor_edit_menu_action_select_all_label": { "message": "Select all" }, "skyux_text_editor_edit_menu_action_select_all_key_shortcut": { "message": "Ctrl+A" }, "skyux_text_editor_menubar_dropdown_button_edit_label": { "message": "Edit" }, "skyux_text_editor_menubar_dropdown_button_format_label": { "message": "Format" }, "skyux_text_editor_menubar_dropdown_button_insert_label": { "message": "Insert merge field" }, "skyux_text_editor_url_modal_header_label": { "message": "Create link" }, "skyux_text_editor_url_modal_url_label": { "message": "Enter a URL to link to:" }, "skyux_text_editor_url_modal_open_label": { "message": "Where should it open?" }, "skyux_text_editor_url_modal_current_option_label": { "message": "Current window" }, "skyux_text_editor_url_modal_new_option_label": { "message": "New window" }, "skyux_text_editor_url_modal_email_label": { "message": "Email address" }, "skyux_text_editor_url_modal_subject_label": { "message": "Subject line" }, "skyux_text_editor_url_modal_save_button_label": { "message": "Save" }, "skyux_text_editor_url_modal_cancel_button_label": { "message": "Cancel" } },
|
|
12
|
-
};
|
|
13
|
-
export class SkyTextEditorResourcesProvider {
|
|
14
|
-
getString(localeInfo, name) {
|
|
15
|
-
return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Import into any component library module that needs to use resource strings.
|
|
20
|
-
*/
|
|
21
|
-
export class SkyTextEditorResourcesModule {
|
|
22
|
-
}
|
|
23
|
-
SkyTextEditorResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
24
|
-
SkyTextEditorResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorResourcesModule, exports: [SkyI18nModule] });
|
|
25
|
-
SkyTextEditorResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorResourcesModule, providers: [{
|
|
26
|
-
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
27
|
-
useClass: SkyTextEditorResourcesProvider,
|
|
28
|
-
multi: true
|
|
29
|
-
}], imports: [SkyI18nModule] });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorResourcesModule, decorators: [{
|
|
31
|
-
type: NgModule,
|
|
32
|
-
args: [{
|
|
33
|
-
exports: [SkyI18nModule],
|
|
34
|
-
providers: [{
|
|
35
|
-
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
36
|
-
useClass: SkyTextEditorResourcesProvider,
|
|
37
|
-
multi: true
|
|
38
|
-
}]
|
|
39
|
-
}]
|
|
40
|
-
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LXRleHQtZWRpdG9yLXJlc291cmNlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZXh0LWVkaXRvci9zcmMvbW9kdWxlcy9zaGFyZWQvc2t5LXRleHQtZWRpdG9yLXJlc291cmNlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxxQkFBcUIsRUFFckIsYUFBYSxFQUdiLDJCQUEyQixFQUM1QixNQUFNLGFBQWEsQ0FBQzs7QUFFckIsTUFBTSxTQUFTLEdBQTBDO0lBQ3ZELE9BQU8sRUFBRSxFQUFDLGlEQUFpRCxFQUFDLEVBQUMsU0FBUyxFQUFDLE1BQU0sRUFBQyxFQUFDLHdEQUF3RCxFQUFDLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxFQUFDLG1EQUFtRCxFQUFDLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxFQUFDLDBEQUEwRCxFQUFDLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxFQUFDLHNEQUFzRCxFQUFDLEVBQUMsU0FBUyxFQUFDLFdBQVcsRUFBQyxFQUFDLDZEQUE2RCxFQUFDLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxFQUFDLDBEQUEwRCxFQUFDLEVBQUMsU0FBUyxFQUFDLGVBQWUsRUFBQyxFQUFDLDZEQUE2RCxFQUFDLEVBQUMsU0FBUyxFQUFDLGtCQUFrQixFQUFDLEVBQUMsK0NBQStDLEVBQUMsRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsc0RBQXNELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsK0NBQStDLEVBQUMsRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsc0RBQXNELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsOENBQThDLEVBQUMsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMscURBQXFELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsK0NBQStDLEVBQUMsRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsc0RBQXNELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsZ0RBQWdELEVBQUMsRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFDLEVBQUMsdURBQXVELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMscURBQXFELEVBQUMsRUFBQyxTQUFTLEVBQUMsWUFBWSxFQUFDLEVBQUMsNERBQTRELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsc0RBQXNELEVBQUMsRUFBQyxTQUFTLEVBQUMsTUFBTSxFQUFDLEVBQUMsd0RBQXdELEVBQUMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLEVBQUMsd0RBQXdELEVBQUMsRUFBQyxTQUFTLEVBQUMsb0JBQW9CLEVBQUMsRUFBQywwQ0FBMEMsRUFBQyxFQUFDLFNBQVMsRUFBQyxhQUFhLEVBQUMsRUFBQyx1Q0FBdUMsRUFBQyxFQUFDLFNBQVMsRUFBQyx5QkFBeUIsRUFBQyxFQUFDLHdDQUF3QyxFQUFDLEVBQUMsU0FBUyxFQUFDLHVCQUF1QixFQUFDLEVBQUMsa0RBQWtELEVBQUMsRUFBQyxTQUFTLEVBQUMsZ0JBQWdCLEVBQUMsRUFBQyw4Q0FBOEMsRUFBQyxFQUFDLFNBQVMsRUFBQyxZQUFZLEVBQUMsRUFBQyx5Q0FBeUMsRUFBQyxFQUFDLFNBQVMsRUFBQyxlQUFlLEVBQUMsRUFBQywyQ0FBMkMsRUFBQyxFQUFDLFNBQVMsRUFBQyxjQUFjLEVBQUMsRUFBQywrQ0FBK0MsRUFBQyxFQUFDLFNBQVMsRUFBQyxNQUFNLEVBQUMsRUFBQyxpREFBaUQsRUFBQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsRUFBQztDQUMxM0UsQ0FBQztBQUVGLE1BQU0sT0FBTyw4QkFBOEI7SUFDbEMsU0FBUyxDQUFDLFVBQTRCLEVBQUUsSUFBWTtRQUN6RCxPQUFPLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDRjtBQUVEOztHQUVHO0FBU0gsTUFBTSxPQUFPLDRCQUE0Qjs7MEhBQTVCLDRCQUE0QjsySEFBNUIsNEJBQTRCLFlBUDdCLGFBQWE7MkhBT1osNEJBQTRCLGFBTjVCLENBQUM7WUFDVixPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFFBQVEsRUFBRSw4QkFBOEI7WUFDeEMsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDLFlBTFEsYUFBYTs0RkFPWiw0QkFBNEI7a0JBUnhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUN4QixTQUFTLEVBQUUsQ0FBQzs0QkFDVixPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxRQUFRLEVBQUUsOEJBQThCOzRCQUN4QyxLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDO2lCQUNIIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBOT1RJQ0U6IERPIE5PVCBNT0RJRlkgVEhJUyBGSUxFIVxuICogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB3ZXJlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5XG4gKiB0aGUgJ25nIGdlbmVyYXRlIEBza3l1eC9pMThuOmxpYi1yZXNvdXJjZXMtbW9kdWxlIG1vZHVsZXMvc2hhcmVkL3NreS10ZXh0LWVkaXRvcicgc2NoZW1hdGljLlxuICogVG8gdXBkYXRlIHRoaXMgZmlsZSwgc2ltcGx5IHJlcnVuIHRoZSBjb21tYW5kLlxuICovXG5cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBnZXRMaWJTdHJpbmdGb3JMb2NhbGUsXG4gIFNreUFwcExvY2FsZUluZm8sXG4gIFNreUkxOG5Nb2R1bGUsXG4gIFNreUxpYlJlc291cmNlcyxcbiAgU2t5TGliUmVzb3VyY2VzUHJvdmlkZXIsXG4gIFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSU1xufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmNvbnN0IFJFU09VUkNFUzogeyBbbG9jYWxlOiBzdHJpbmddOiBTa3lMaWJSZXNvdXJjZXMgfSA9IHtcbiAgJ0VOLVVTJzoge1wic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2JvbGRfbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJCb2xkXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2JvbGRfa2V5X3Nob3J0Y3V0XCI6e1wibWVzc2FnZVwiOlwiQ3RybCtCXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2l0YWxpY19sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIkl0YWxpY1wifSxcInNreXV4X3RleHRfZWRpdG9yX2Zvcm1hdF9tZW51X2FjdGlvbl9pdGFsaWNfa2V5X3Nob3J0Y3V0XCI6e1wibWVzc2FnZVwiOlwiQ3RybCtJXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX3VuZGVybGluZV9sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIlVuZGVybGluZVwifSxcInNreXV4X3RleHRfZWRpdG9yX2Zvcm1hdF9tZW51X2FjdGlvbl91bmRlcmxpbmVfa2V5X3Nob3J0Y3V0XCI6e1wibWVzc2FnZVwiOlwiQ3RybCtVXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX3N0cmlrZXRocm91Z2hfbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJTdHJpa2V0aHJvdWdoXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2NsZWFyX2Zvcm1hdHRpbmdfbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJDbGVhciBmb3JtYXR0aW5nXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl91bmRvX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiVW5kb1wifSxcInNreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fdW5kb19rZXlfc2hvcnRjdXRcIjp7XCJtZXNzYWdlXCI6XCJDdHJsK1pcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9lZGl0X21lbnVfYWN0aW9uX3JlZG9fbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJSZWRvXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9yZWRvX2tleV9zaG9ydGN1dFwiOntcIm1lc3NhZ2VcIjpcIkN0cmwrWVwifSxcInNreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fY3V0X2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiQ3V0XCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9jdXRfa2V5X3Nob3J0Y3V0XCI6e1wibWVzc2FnZVwiOlwiQ3RybCtYXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9jb3B5X2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiQ29weVwifSxcInNreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fY29weV9rZXlfc2hvcnRjdXRcIjp7XCJtZXNzYWdlXCI6XCJDdHJsK0NcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9lZGl0X21lbnVfYWN0aW9uX3Bhc3RlX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiUGFzdGVcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9lZGl0X21lbnVfYWN0aW9uX3Bhc3RlX2tleV9zaG9ydGN1dFwiOntcIm1lc3NhZ2VcIjpcIkN0cmwrVlwifSxcInNreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fc2VsZWN0X2FsbF9sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIlNlbGVjdCBhbGxcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9lZGl0X21lbnVfYWN0aW9uX3NlbGVjdF9hbGxfa2V5X3Nob3J0Y3V0XCI6e1wibWVzc2FnZVwiOlwiQ3RybCtBXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfbWVudWJhcl9kcm9wZG93bl9idXR0b25fZWRpdF9sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIkVkaXRcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9tZW51YmFyX2Ryb3Bkb3duX2J1dHRvbl9mb3JtYXRfbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJGb3JtYXRcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl9tZW51YmFyX2Ryb3Bkb3duX2J1dHRvbl9pbnNlcnRfbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJJbnNlcnQgbWVyZ2UgZmllbGRcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl91cmxfbW9kYWxfaGVhZGVyX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiQ3JlYXRlIGxpbmtcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl91cmxfbW9kYWxfdXJsX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiRW50ZXIgYSBVUkwgdG8gbGluayB0bzpcIn0sXCJza3l1eF90ZXh0X2VkaXRvcl91cmxfbW9kYWxfb3Blbl9sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIldoZXJlIHNob3VsZCBpdCBvcGVuP1wifSxcInNreXV4X3RleHRfZWRpdG9yX3VybF9tb2RhbF9jdXJyZW50X29wdGlvbl9sYWJlbFwiOntcIm1lc3NhZ2VcIjpcIkN1cnJlbnQgd2luZG93XCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfdXJsX21vZGFsX25ld19vcHRpb25fbGFiZWxcIjp7XCJtZXNzYWdlXCI6XCJOZXcgd2luZG93XCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfdXJsX21vZGFsX2VtYWlsX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiRW1haWwgYWRkcmVzc1wifSxcInNreXV4X3RleHRfZWRpdG9yX3VybF9tb2RhbF9zdWJqZWN0X2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiU3ViamVjdCBsaW5lXCJ9LFwic2t5dXhfdGV4dF9lZGl0b3JfdXJsX21vZGFsX3NhdmVfYnV0dG9uX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiU2F2ZVwifSxcInNreXV4X3RleHRfZWRpdG9yX3VybF9tb2RhbF9jYW5jZWxfYnV0dG9uX2xhYmVsXCI6e1wibWVzc2FnZVwiOlwiQ2FuY2VsXCJ9fSxcbn07XG5cbmV4cG9ydCBjbGFzcyBTa3lUZXh0RWRpdG9yUmVzb3VyY2VzUHJvdmlkZXIgaW1wbGVtZW50cyBTa3lMaWJSZXNvdXJjZXNQcm92aWRlciB7XG4gIHB1YmxpYyBnZXRTdHJpbmcobG9jYWxlSW5mbzogU2t5QXBwTG9jYWxlSW5mbywgbmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0TGliU3RyaW5nRm9yTG9jYWxlKFJFU09VUkNFUywgbG9jYWxlSW5mby5sb2NhbGUsIG5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogSW1wb3J0IGludG8gYW55IGNvbXBvbmVudCBsaWJyYXJ5IG1vZHVsZSB0aGF0IG5lZWRzIHRvIHVzZSByZXNvdXJjZSBzdHJpbmdzLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5STE4bk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBTS1lfTElCX1JFU09VUkNFU19QUk9WSURFUlMsXG4gICAgdXNlQ2xhc3M6IFNreVRleHRFZGl0b3JSZXNvdXJjZXNQcm92aWRlcixcbiAgICBtdWx0aTogdHJ1ZVxuICB9XVxufSlcbmV4cG9ydCBjbGFzcyBTa3lUZXh0RWRpdG9yUmVzb3VyY2VzTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @internal
|
|
3
|
-
*/
|
|
4
|
-
export const FONT_LIST_DEFAULTS = [
|
|
5
|
-
{
|
|
6
|
-
name: 'Blackbaud Sans',
|
|
7
|
-
value: '"Blackbaud Sans", Arial, sans-serif'
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
name: 'Arial',
|
|
11
|
-
value: 'Arial'
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
name: 'Arial Black',
|
|
15
|
-
value: '"Arial Black"'
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
name: 'Courier New',
|
|
19
|
-
value: '"Courier New"'
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
name: 'Georgia',
|
|
23
|
-
value: 'Georgia, serif'
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
name: 'Tahoma',
|
|
27
|
-
value: 'Tahoma, Geneva, sans-serif'
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
name: 'Times New Roman',
|
|
31
|
-
value: '"Times New Roman"'
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
name: 'Trebuchet MS',
|
|
35
|
-
value: '"Trebuchet MS", sans-serif'
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
name: 'Verdana',
|
|
39
|
-
value: 'Verdana, Geneva, sans-serif'
|
|
40
|
-
}
|
|
41
|
-
];
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1saXN0LWRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvZGVmYXVsdHMvZm9udC1saXN0LWRlZmF1bHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQXdCO0lBQ3JEO1FBQ0UsSUFBSSxFQUFFLGdCQUFnQjtRQUN0QixLQUFLLEVBQUUscUNBQXFDO0tBQzdDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsT0FBTztRQUNiLEtBQUssRUFBRSxPQUFPO0tBQ2Y7SUFDRDtRQUNFLElBQUksRUFBRSxhQUFhO1FBQ25CLEtBQUssRUFBRSxlQUFlO0tBQ3ZCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsYUFBYTtRQUNuQixLQUFLLEVBQUUsZUFBZTtLQUN2QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixLQUFLLEVBQUUsZ0JBQWdCO0tBQ3hCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsUUFBUTtRQUNkLEtBQUssRUFBRSw0QkFBNEI7S0FDcEM7SUFDRDtRQUNFLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsS0FBSyxFQUFFLG1CQUFtQjtLQUMzQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLDRCQUE0QjtLQUNwQztJQUNEO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixLQUFLLEVBQUUsNkJBQTZCO0tBQ3JDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JGb250XG59IGZyb20gJy4uL3R5cGVzL2ZvbnQtc3RhdGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgRk9OVF9MSVNUX0RFRkFVTFRTOiBTa3lUZXh0RWRpdG9yRm9udFtdID0gW1xuICB7XG4gICAgbmFtZTogJ0JsYWNrYmF1ZCBTYW5zJyxcbiAgICB2YWx1ZTogJ1wiQmxhY2tiYXVkIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYnXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnQXJpYWwnLFxuICAgIHZhbHVlOiAnQXJpYWwnXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnQXJpYWwgQmxhY2snLFxuICAgIHZhbHVlOiAnXCJBcmlhbCBCbGFja1wiJ1xuICB9LFxuICB7XG4gICAgbmFtZTogJ0NvdXJpZXIgTmV3JyxcbiAgICB2YWx1ZTogJ1wiQ291cmllciBOZXdcIidcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdHZW9yZ2lhJyxcbiAgICB2YWx1ZTogJ0dlb3JnaWEsIHNlcmlmJ1xuICB9LFxuICB7XG4gICAgbmFtZTogJ1RhaG9tYScsXG4gICAgdmFsdWU6ICdUYWhvbWEsIEdlbmV2YSwgc2Fucy1zZXJpZidcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdUaW1lcyBOZXcgUm9tYW4nLFxuICAgIHZhbHVlOiAnXCJUaW1lcyBOZXcgUm9tYW5cIidcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdUcmVidWNoZXQgTVMnLFxuICAgIHZhbHVlOiAnXCJUcmVidWNoZXQgTVNcIiwgc2Fucy1zZXJpZidcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdWZXJkYW5hJyxcbiAgICB2YWx1ZTogJ1ZlcmRhbmEsIEdlbmV2YSwgc2Fucy1zZXJpZidcbiAgfVxuXTtcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @internal
|
|
3
|
-
*/
|
|
4
|
-
export const FONT_SIZE_LIST_DEFAULTS = [6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48];
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zaXplLWxpc3QtZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZXh0LWVkaXRvci9zcmMvbW9kdWxlcy90ZXh0LWVkaXRvci9kZWZhdWx0cy9mb250LXNpemUtbGlzdC1kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBGT05UX1NJWkVfTElTVF9ERUZBVUxUUzogbnVtYmVyW10gPSBbNiwgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDE4LCAyMCwgMjIsIDI0LCAyNiwgMjgsIDM2LCA0OF07XG4iXX0=
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @internal
|
|
3
|
-
*/
|
|
4
|
-
export const MENU_DEFAULTS = [
|
|
5
|
-
'edit',
|
|
6
|
-
'format'
|
|
7
|
-
];
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kZWZhdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RleHQtZWRpdG9yL3NyYy9tb2R1bGVzL3RleHQtZWRpdG9yL2RlZmF1bHRzL21lbnUtZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUE7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQTRCO0lBQ3BELE1BQU07SUFDTixRQUFRO0NBQ1QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JNZW51VHlwZVxufSBmcm9tICcuLi90eXBlcy9tZW51LXR5cGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgTUVOVV9ERUZBVUxUUzogU2t5VGV4dEVkaXRvck1lbnVUeXBlW10gPSBbXG4gICdlZGl0JyxcbiAgJ2Zvcm1hdCdcbl07XG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FONT_LIST_DEFAULTS } from './font-list-defaults';
|
|
2
|
-
/**
|
|
3
|
-
* @internal
|
|
4
|
-
*/
|
|
5
|
-
export const STYLE_STATE_DEFAULTS = {
|
|
6
|
-
backColor: 'rgba(0, 0, 0, 0)',
|
|
7
|
-
fontColor: '#000',
|
|
8
|
-
fontSize: 14,
|
|
9
|
-
font: FONT_LIST_DEFAULTS[0].value,
|
|
10
|
-
boldState: false,
|
|
11
|
-
italicState: false,
|
|
12
|
-
underlineState: false,
|
|
13
|
-
linkState: false
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtc3RhdGUtZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZXh0LWVkaXRvci9zcmMvbW9kdWxlcy90ZXh0LWVkaXRvci9kZWZhdWx0cy9zdHlsZS1zdGF0ZS1kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsa0JBQWtCLEVBQ25CLE1BQU0sc0JBQXNCLENBQUM7QUFNOUI7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBNEI7SUFDM0QsU0FBUyxFQUFFLGtCQUFrQjtJQUM3QixTQUFTLEVBQUUsTUFBTTtJQUNqQixRQUFRLEVBQUUsRUFBRTtJQUNaLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO0lBQ2pDLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLFdBQVcsRUFBRSxLQUFLO0lBQ2xCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLFNBQVMsRUFBRSxLQUFLO0NBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGT05UX0xJU1RfREVGQVVMVFNcbn0gZnJvbSAnLi9mb250LWxpc3QtZGVmYXVsdHMnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yU3R5bGVTdGF0ZVxufSBmcm9tICcuLi90eXBlcy9zdHlsZS1zdGF0ZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBTVFlMRV9TVEFURV9ERUZBVUxUUzogU2t5VGV4dEVkaXRvclN0eWxlU3RhdGUgPSB7XG4gIGJhY2tDb2xvcjogJ3JnYmEoMCwgMCwgMCwgMCknLFxuICBmb250Q29sb3I6ICcjMDAwJyxcbiAgZm9udFNpemU6IDE0LFxuICBmb250OiBGT05UX0xJU1RfREVGQVVMVFNbMF0udmFsdWUsXG4gIGJvbGRTdGF0ZTogZmFsc2UsXG4gIGl0YWxpY1N0YXRlOiBmYWxzZSxcbiAgdW5kZXJsaW5lU3RhdGU6IGZhbHNlLFxuICBsaW5rU3RhdGU6IGZhbHNlXG59O1xuIl19
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @internal
|
|
3
|
-
*/
|
|
4
|
-
export const TOOLBAR_ACTION_DEFAULTS = [
|
|
5
|
-
'font-family',
|
|
6
|
-
'font-size',
|
|
7
|
-
'font-style',
|
|
8
|
-
'color',
|
|
9
|
-
'list',
|
|
10
|
-
'link'
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1hY3Rpb24tZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZXh0LWVkaXRvci9zcmMvbW9kdWxlcy90ZXh0LWVkaXRvci9kZWZhdWx0cy90b29sYmFyLWFjdGlvbi1kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFxQztJQUN2RSxhQUFhO0lBQ2IsV0FBVztJQUNYLFlBQVk7SUFDWixPQUFPO0lBQ1AsTUFBTTtJQUNOLE1BQU07Q0FDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvclRvb2xiYXJBY3Rpb25UeXBlXG59IGZyb20gJy4uL3R5cGVzL3Rvb2xiYXItYWN0aW9uLXR5cGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgVE9PTEJBUl9BQ1RJT05fREVGQVVMVFM6IFNreVRleHRFZGl0b3JUb29sYmFyQWN0aW9uVHlwZVtdID0gW1xuICAnZm9udC1mYW1pbHknLFxuICAnZm9udC1zaXplJyxcbiAgJ2ZvbnQtc3R5bGUnLFxuICAnY29sb3InLFxuICAnbGlzdCcsXG4gICdsaW5rJ1xuXTtcbiJdfQ==
|
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { SkyDropdownMessageType } from '@skyux/popovers';
|
|
3
|
-
import { forkJoin, Subject } from 'rxjs';
|
|
4
|
-
import { take, takeUntil } from 'rxjs/operators';
|
|
5
|
-
import { SkyFormsUtility } from '../../shared/forms-utility';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../services/text-editor-adapter.service";
|
|
8
|
-
import * as i2 from "@skyux/i18n";
|
|
9
|
-
import * as i3 from "@skyux/layout";
|
|
10
|
-
import * as i4 from "@skyux/popovers";
|
|
11
|
-
import * as i5 from "@angular/common";
|
|
12
|
-
import * as i6 from "@skyux/theme";
|
|
13
|
-
/**
|
|
14
|
-
* @internal
|
|
15
|
-
*/
|
|
16
|
-
export class SkyTextEditorMenubarComponent {
|
|
17
|
-
constructor(adapterService, changeDetector, resources) {
|
|
18
|
-
this.adapterService = adapterService;
|
|
19
|
-
this.changeDetector = changeDetector;
|
|
20
|
-
this.resources = resources;
|
|
21
|
-
this.editorFocusStream = new Subject();
|
|
22
|
-
this.menus = [];
|
|
23
|
-
this.mergeFields = [];
|
|
24
|
-
this._disabled = false;
|
|
25
|
-
this.editDropdownStream = new Subject();
|
|
26
|
-
this.formatDropdownStream = new Subject();
|
|
27
|
-
this.mergeFieldDropdownStream = new Subject();
|
|
28
|
-
this.ngUnsubscribe = new Subject();
|
|
29
|
-
}
|
|
30
|
-
set disabled(value) {
|
|
31
|
-
const coercedValue = SkyFormsUtility.coerceBooleanProperty(value);
|
|
32
|
-
if (coercedValue !== this.disabled) {
|
|
33
|
-
this._disabled = coercedValue;
|
|
34
|
-
this.changeDetector.markForCheck();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
get disabled() {
|
|
38
|
-
return this._disabled;
|
|
39
|
-
}
|
|
40
|
-
ngOnInit() {
|
|
41
|
-
this.editorFocusStream
|
|
42
|
-
.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {
|
|
43
|
-
this.closeDropdowns();
|
|
44
|
-
});
|
|
45
|
-
forkJoin([
|
|
46
|
-
// Format menu strings.
|
|
47
|
-
this.resources.getString('skyux_text_editor_format_menu_action_bold_label'),
|
|
48
|
-
this.resources.getString('skyux_text_editor_format_menu_action_bold_key_shortcut'),
|
|
49
|
-
this.resources.getString('skyux_text_editor_format_menu_action_italic_label'),
|
|
50
|
-
this.resources.getString('skyux_text_editor_format_menu_action_italic_key_shortcut'),
|
|
51
|
-
this.resources.getString('skyux_text_editor_format_menu_action_underline_label'),
|
|
52
|
-
this.resources.getString('skyux_text_editor_format_menu_action_underline_key_shortcut'),
|
|
53
|
-
this.resources.getString('skyux_text_editor_format_menu_action_strikethrough_label'),
|
|
54
|
-
this.resources.getString('skyux_text_editor_format_menu_action_clear_formatting_label'),
|
|
55
|
-
// Edit menu string - start at index 8.
|
|
56
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_undo_label'),
|
|
57
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_undo_key_shortcut'),
|
|
58
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_redo_label'),
|
|
59
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_redo_key_shortcut'),
|
|
60
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_cut_label'),
|
|
61
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_cut_key_shortcut'),
|
|
62
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_copy_label'),
|
|
63
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_copy_key_shortcut'),
|
|
64
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_paste_label'),
|
|
65
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_paste_key_shortcut'),
|
|
66
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_select_all_label'),
|
|
67
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_select_all_key_shortcut')
|
|
68
|
-
])
|
|
69
|
-
.pipe(take(1))
|
|
70
|
-
.subscribe(resources => {
|
|
71
|
-
this.formatItems = [
|
|
72
|
-
{
|
|
73
|
-
function: () => this.execCommand('bold'),
|
|
74
|
-
label: resources[0],
|
|
75
|
-
keyShortcut: resources[1]
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
function: () => this.execCommand('italic'),
|
|
79
|
-
label: resources[2],
|
|
80
|
-
keyShortcut: resources[3]
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
function: () => this.execCommand('underline'),
|
|
84
|
-
label: resources[4],
|
|
85
|
-
keyShortcut: resources[5]
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
function: () => this.execCommand('strikethrough'),
|
|
89
|
-
label: resources[6]
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
isDivider: true
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
function: () => this.clearFormat(),
|
|
96
|
-
label: resources[7]
|
|
97
|
-
}
|
|
98
|
-
];
|
|
99
|
-
this.editItems = [
|
|
100
|
-
{
|
|
101
|
-
function: () => this.execCommand('undo'),
|
|
102
|
-
label: resources[8],
|
|
103
|
-
keyShortcut: resources[9]
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
function: () => this.execCommand('redo'),
|
|
107
|
-
label: resources[10],
|
|
108
|
-
keyShortcut: resources[11]
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
isDivider: true
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
function: () => this.execCommand('cut'),
|
|
115
|
-
label: resources[12],
|
|
116
|
-
keyShortcut: resources[13]
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
function: () => this.execCommand('copy'),
|
|
120
|
-
label: resources[14],
|
|
121
|
-
keyShortcut: resources[15]
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
function: () => this.execCommand('paste'),
|
|
125
|
-
label: resources[16],
|
|
126
|
-
keyShortcut: resources[17]
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
isDivider: true
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
function: () => this.execCommand('selectAll'),
|
|
133
|
-
label: resources[18],
|
|
134
|
-
keyShortcut: resources[19]
|
|
135
|
-
}
|
|
136
|
-
];
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
ngOnDestroy() {
|
|
140
|
-
this.ngUnsubscribe.next();
|
|
141
|
-
this.ngUnsubscribe.complete();
|
|
142
|
-
}
|
|
143
|
-
execCommand(command, value = '') {
|
|
144
|
-
this.adapterService.execCommand(this.editorId, {
|
|
145
|
-
command: command,
|
|
146
|
-
value: value
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
insertMergeField(field) {
|
|
150
|
-
this.execCommand('insertHTML', '<img style="display: inline; cursor: grab;" data-fieldid="' + field.id +
|
|
151
|
-
'" data-fielddisplay="' + field.name +
|
|
152
|
-
'" src="' + (field.previewImageUrl || this.adapterService.getMergeFieldDataURI(field.name)) + '">');
|
|
153
|
-
}
|
|
154
|
-
closeDropdowns() {
|
|
155
|
-
this.editDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
156
|
-
this.formatDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
157
|
-
this.mergeFieldDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
158
|
-
}
|
|
159
|
-
clearFormat() {
|
|
160
|
-
let currentSelection = this.adapterService.getCurrentSelection(this.editorId);
|
|
161
|
-
/* istanbul ignore else */
|
|
162
|
-
if (currentSelection.rangeCount > 0 && currentSelection.getRangeAt(0).toString().length <= 0) {
|
|
163
|
-
this.execCommand('selectAll');
|
|
164
|
-
}
|
|
165
|
-
this.execCommand('removeFormat');
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
SkyTextEditorMenubarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorMenubarComponent, deps: [{ token: i1.SkyTextEditorAdapterService }, { token: i0.ChangeDetectorRef }, { token: i2.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
169
|
-
SkyTextEditorMenubarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: { editorFocusStream: "editorFocusStream", editorId: "editorId", menus: "menus", mergeFields: "mergeFields", disabled: "disabled" }, ngImport: i0, template: "\n <sky-toolbar-item *ngFor=\"let menu of menus\"\n class=\"sky-text-editor-menu\"\n [ngClass]=\"'sky-text-editor-menu-' + menu\"\n >\n <ng-container\n [ngSwitch]=\"menu\"\n >\n <ng-container *ngSwitchCase=\"'edit'\">\n <sky-dropdown\n label=\"Edit menu\"\n [disabled]=\"disabled\"\n [messageStream]=\"editDropdownStream\"\n >\n <sky-dropdown-button>\n {{ 'skyux_text_editor_menubar_dropdown_button_edit_label' | skyLibResources }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let editItem of editItems\">\n <button *ngIf=\"!editItem.isDivider\"\n type=\"button\"\n (click)=\"editItem.function()\"\n >\n {{ editItem.label }}\n <div *ngIf=\"editItem.keyShortcut\"\n class=\"sky-text-editor-menu-key-shortcut\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized' : 'modern',\n 'sky-deemphasized' : 'default'\n }\"\n >\n {{ editItem.keyShortcut }}\n </div>\n </button>\n <div *ngIf=\"editItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\n >\n </div>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'format'\">\n <sky-dropdown\n label=\"Format menu\"\n [disabled]=\"disabled\"\n [messageStream]=\"formatDropdownStream\"\n >\n <sky-dropdown-button>\n {{ 'skyux_text_editor_menubar_dropdown_button_format_label' | skyLibResources }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let formatItem of formatItems\">\n <button *ngIf=\"!formatItem.isDivider\"\n type=\"button\"\n (click)=\"formatItem.function()\"\n >\n {{ formatItem.label }}\n <div *ngIf=\"formatItem.keyShortcut\"\n class=\"sky-text-editor-menu-key-shortcut\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized' : 'modern',\n 'sky-deemphasized' : 'default'\n }\"\n >\n {{ formatItem.keyShortcut}}\n </div>\n </button>\n <div *ngIf=\"formatItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\n >\n </div>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'merge-field'\">\n <sky-dropdown *ngIf=\"mergeFields && mergeFields.length > 0\"\n label=\"Insert merge field\"\n [disabled]=\"disabled\"\n [messageStream]=\"mergeFieldDropdownStream\"\n >\n <sky-dropdown-button>\n {{ 'skyux_text_editor_menubar_dropdown_button_insert_label' | skyLibResources }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let mergeField of mergeFields\">\n <button\n type=\"button\"\n (click)=\"insertMergeField(mergeField)\"\n >\n {{ mergeField.name }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n </ng-container>\n </sky-toolbar-item>\n", styles: [".sky-text-editor-dropdown-item-divider{border:0;padding:0;height:1px;margin:9px 1px;overflow:hidden;background:transparent;border-bottom:1px solid rgba(0,0,0,.1);cursor:default;filter:none}.sky-text-editor-menu-key-shortcut{float:right;margin-left:15px}\n"], components: [{ type: i3.λ39, selector: "sky-toolbar-item" }, { type: i4.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i4.λ2, selector: "sky-dropdown-button" }, { type: i4.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i4.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], pipes: { "skyLibResources": i2.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
170
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyTextEditorMenubarComponent, decorators: [{
|
|
171
|
-
type: Component,
|
|
172
|
-
args: [{
|
|
173
|
-
selector: 'sky-text-editor-menubar',
|
|
174
|
-
templateUrl: './text-editor-menubar.component.html',
|
|
175
|
-
styleUrls: ['./text-editor-menubar.component.scss'],
|
|
176
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
177
|
-
}]
|
|
178
|
-
}], ctorParameters: function () { return [{ type: i1.SkyTextEditorAdapterService }, { type: i0.ChangeDetectorRef }, { type: i2.SkyLibResourcesService }]; }, propDecorators: { editorFocusStream: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], editorId: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], menus: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], mergeFields: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], disabled: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}] } });
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3ItbWVudWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZXh0LWVkaXRvci9zcmMvbW9kdWxlcy90ZXh0LWVkaXRvci9tZW51YmFyL3RleHQtZWRpdG9yLW1lbnViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGV4dC1lZGl0b3Ivc3JjL21vZHVsZXMvdGV4dC1lZGl0b3IvbWVudWJhci90ZXh0LWVkaXRvci1tZW51YmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFHTixNQUFNLGVBQWUsQ0FBQztBQU12QixPQUFPLEVBRUwsc0JBQXNCLEVBQ3ZCLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLFFBQVEsRUFDUixPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsSUFBSSxFQUNKLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBY3hCLE9BQU8sRUFDTCxlQUFlLEVBQ2hCLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7O0FBRXBDOztHQUVHO0FBT0gsTUFBTSxPQUFPLDZCQUE2QjtJQW1EeEMsWUFDVSxjQUEyQyxFQUMzQyxjQUFpQyxFQUNqQyxTQUFpQztRQUZqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBNkI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQXdCO1FBbkRwQyxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBTWxDLFVBQUssR0FBNEIsRUFBRSxDQUFDO1FBR3BDLGdCQUFXLEdBQThCLEVBQUUsQ0FBQztRQWUzQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRTVCLHVCQUFrQixHQUFHLElBQUksT0FBTyxFQUFzQixDQUFD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LDZCQUE2QjsrR0FBN0IsNkJBQTZCLDJNQ3JEMUMsNnRIQXFHQTs0RkRoRGEsNkJBQTZCO2tCQU56QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFdBQVcsRUFBRSxzQ0FBc0M7b0JBQ25ELFNBQVMsRUFBRSxDQUFDLHNDQUFzQyxDQUFDO29CQUNuRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7dUxBSVEsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFJSyxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5TGliUmVzb3VyY2VzU2VydmljZVxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7XG4gIFNreURyb3Bkb3duTWVzc2FnZSxcbiAgU2t5RHJvcGRvd25NZXNzYWdlVHlwZVxufSBmcm9tICdAc2t5dXgvcG9wb3ZlcnMnO1xuXG5pbXBvcnQge1xuICBmb3JrSm9pbixcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgdGFrZSxcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5VGV4dEVkaXRvckFkYXB0ZXJTZXJ2aWNlXG59IGZyb20gJy4uL3NlcnZpY2VzL3RleHQtZWRpdG9yLWFkYXB0ZXIuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreVRleHRFZGl0b3JNZW51VHlwZVxufSBmcm9tICcuLi90eXBlcy9tZW51LXR5cGUnO1xuXG5pbXBvcnQge1xuICBTa3lUZXh0RWRpdG9yTWVyZ2VGaWVsZFxufSBmcm9tICcuLi90eXBlcy90ZXh0LWVkaXRvci1tZXJnZS1maWVsZCc7XG5cbmltcG9ydCB7XG4gIFNreUZvcm1zVXRpbGl0eVxufSBmcm9tICcuLi8uLi9zaGFyZWQvZm9ybXMtdXRpbGl0eSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS10ZXh0LWVkaXRvci1tZW51YmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHQtZWRpdG9yLW1lbnViYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ZXh0LWVkaXRvci1tZW51YmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFNreVRleHRFZGl0b3JNZW51YmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlZGl0b3JGb2N1c1N0cmVhbSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGVkaXRvcklkOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG1lbnVzOiBTa3lUZXh0RWRpdG9yTWVudVR5cGVbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZXJnZUZpZWxkczogU2t5VGV4dEVkaXRvck1lcmdlRmllbGRbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBjb2VyY2VkVmFsdWUgPSBTa3lGb3Jtc1V0aWxpdHkuY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAoY29lcmNlZFZhbHVlICE9PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZWRWYWx1ZTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgZWRpdERyb3Bkb3duU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5RHJvcGRvd25NZXNzYWdlPigpO1xuXG4gIHB1YmxpYyBlZGl0SXRlbXM6IHtcbiAgICBmdW5jdGlvbj86ICgpID0+IHZvaWQsXG4gICAgaXNEaXZpZGVyPzogYm9vbGVhbixcbiAgICBsYWJlbD86IHN0cmluZyxcbiAgICBrZXlTaG9ydGN1dD86IHN0cmluZ1xuICB9W107XG5cbiAgcHVibGljIGZvcm1hdERyb3Bkb3duU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5RHJvcGRvd25NZXNzYWdlPigpO1xuXG4gIHB1YmxpYyBmb3JtYXRJdGVtczoge1xuICAgIGZ1bmN0aW9uPzogKCkgPT4gdm9pZCxcbiAgICBpc0RpdmlkZXI/OiBib29sZWFuLFxuICAgIGxhYmVsPzogc3RyaW5nLFxuICAgIGtleVNob3J0Y3V0Pzogc3RyaW5nXG4gIH1bXTtcblxuICBwdWJsaWMgbWVyZ2VGaWVsZERyb3Bkb3duU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5RHJvcGRvd25NZXNzYWdlPigpO1xuXG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhZGFwdGVyU2VydmljZTogU2t5VGV4dEVkaXRvckFkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVzb3VyY2VzOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0b3JGb2N1c1N0cmVhbVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpXG4gICAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bnMoKTtcbiAgICAgIH0pO1xuXG4gICAgZm9ya0pvaW4oW1xuICAgICAgLy8gRm9ybWF0IG1lbnUgc3RyaW5ncy5cbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2JvbGRfbGFiZWwnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2JvbGRfa2V5X3Nob3J0Y3V0JyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2Zvcm1hdF9tZW51X2FjdGlvbl9pdGFsaWNfbGFiZWwnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX2l0YWxpY19rZXlfc2hvcnRjdXQnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZm9ybWF0X21lbnVfYWN0aW9uX3VuZGVybGluZV9sYWJlbCcpLFxuICAgICAgdGhpcy5yZXNvdXJjZXMuZ2V0U3RyaW5nKCdza3l1eF90ZXh0X2VkaXRvcl9mb3JtYXRfbWVudV9hY3Rpb25fdW5kZXJsaW5lX2tleV9zaG9ydGN1dCcpLFxuICAgICAgdGhpcy5yZXNvdXJjZXMuZ2V0U3RyaW5nKCdza3l1eF90ZXh0X2VkaXRvcl9mb3JtYXRfbWVudV9hY3Rpb25fc3RyaWtldGhyb3VnaF9sYWJlbCcpLFxuICAgICAgdGhpcy5yZXNvdXJjZXMuZ2V0U3RyaW5nKCdza3l1eF90ZXh0X2VkaXRvcl9mb3JtYXRfbWVudV9hY3Rpb25fY2xlYXJfZm9ybWF0dGluZ19sYWJlbCcpLFxuXG4gICAgICAvLyBFZGl0IG1lbnUgc3RyaW5nIC0gc3RhcnQgYXQgaW5kZXggOC5cbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl91bmRvX2xhYmVsJyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fdW5kb19rZXlfc2hvcnRjdXQnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9yZWRvX2xhYmVsJyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fcmVkb19rZXlfc2hvcnRjdXQnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9jdXRfbGFiZWwnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9jdXRfa2V5X3Nob3J0Y3V0JyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fY29weV9sYWJlbCcpLFxuICAgICAgdGhpcy5yZXNvdXJjZXMuZ2V0U3RyaW5nKCdza3l1eF90ZXh0X2VkaXRvcl9lZGl0X21lbnVfYWN0aW9uX2NvcHlfa2V5X3Nob3J0Y3V0JyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fcGFzdGVfbGFiZWwnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9wYXN0ZV9rZXlfc2hvcnRjdXQnKSxcbiAgICAgIHRoaXMucmVzb3VyY2VzLmdldFN0cmluZygnc2t5dXhfdGV4dF9lZGl0b3JfZWRpdF9tZW51X2FjdGlvbl9zZWxlY3RfYWxsX2xhYmVsJyksXG4gICAgICB0aGlzLnJlc291cmNlcy5nZXRTdHJpbmcoJ3NreXV4X3RleHRfZWRpdG9yX2VkaXRfbWVudV9hY3Rpb25fc2VsZWN0X2FsbF9rZXlfc2hvcnRjdXQnKVxuXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKHJlc291cmNlcyA9PiB7XG4gICAgICAgIHRoaXMuZm9ybWF0SXRlbXMgPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZnVuY3Rpb246ICgpID0+IHRoaXMuZXhlY0NvbW1hbmQoJ2JvbGQnKSxcbiAgICAgICAgICAgIGxhYmVsOiByZXNvdXJjZXNbMF0sXG4gICAgICAgICAgICBrZXlTaG9ydGN1dDogcmVzb3VyY2VzWzFdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmdW5jdGlvbjogKCkgPT4gdGhpcy5leGVjQ29tbWFuZCgnaXRhbGljJyksXG4gICAgICAgICAgICBsYWJlbDogcmVzb3VyY2VzWzJdLFxuICAgICAgICAgICAga2V5U2hvcnRjdXQ6IHJlc291cmNlc1szXVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgZnVuY3Rpb246ICgpID0+IHRoaXMuZXhlY0NvbW1hbmQoJ3VuZGVybGluZScpLFxuICAgICAgICAgICAgbGFiZWw6IHJlc291cmNlc1s0XSxcbiAgICAgICAgICAgIGtleVNob3J0Y3V0OiByZXNvdXJjZXNbNV1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZ1bmN0aW9uOiAoKSA9PiB0aGlzLmV4ZWNDb21tYW5kKCdzdHJpa2V0aHJvdWdoJyksXG4gICAgICAgICAgICBsYWJlbDogcmVzb3VyY2VzWzZdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpc0RpdmlkZXI6IHRydWVcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZ1bmN0aW9uOiAoKSA9PiB0aGlzLmNsZWFyRm9ybWF0KCksXG4gICAgICAgICAgICBsYWJlbDogcmVzb3VyY2VzWzddXG4gICAgICAgICAgfVxuICAgICAgICBdO1xuICAgICAgICB0aGlzLmVkaXRJdGVtcyA9IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmdW5jdGlvbjogKCkgPT4gdGhpcy5leGVjQ29tbWFuZCgndW5kbycpLFxuICAgICAgICAgICAgbGFiZWw6IHJlc291cmNlc1s4XSxcbiAgICAgICAgICAgIGtleVNob3J0Y3V0OiByZXNvdXJjZXNbOV1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZ1bmN0aW9uOiAoKSA9PiB0aGlzLmV4ZWNDb21tYW5kKCdyZWRvJyksXG4gICAgICAgICAgICBsYWJlbDogcmVzb3VyY2VzWzEwXSxcbiAgICAgICAgICAgIGtleVNob3J0Y3V0OiByZXNvdXJjZXNbMTFdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpc0RpdmlkZXI6IHRydWVcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZ1bmN0aW9uOiAoKSA9PiB0aGlzLmV4ZWNDb21tYW5kKCdjdXQnKSxcbiAgICAgICAgICAgIGxhYmVsOiByZXNvdXJjZXNbMTJdLFxuICAgICAgICAgICAga2V5U2hvcnRjdXQ6IHJlc291cmNlc1sxM11cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZ1bmN0aW9uOiAoKSA9PiB0aGlzLmV4ZWNDb21tYW5kKCdjb3B5JyksXG4gICAgICAgICAgICBsYWJlbDogcmVzb3VyY2VzWzE0XSxcbiAgICAgICAgICAgIGtleVNob3J0Y3V0OiByZXNvdXJjZXNbMTVdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmdW5jdGlvbjogKCkgPT4gdGhpcy5leGVjQ29tbWFuZCgncGFzdGUnKSxcbiAgICAgICAgICAgIGxhYmVsOiByZXNvdXJjZXNbMTZdLFxuICAgICAgICAgICAga2V5U2hvcnRjdXQ6IHJlc291cmNlc1sxN11cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlzRGl2aWRlcjogdHJ1ZVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgZnVuY3Rpb246ICgpID0+IHRoaXMuZXhlY0NvbW1hbmQoJ3NlbGVjdEFsbCcpLFxuICAgICAgICAgICAgbGFiZWw6IHJlc291cmNlc1sxOF0sXG4gICAgICAgICAgICBrZXlTaG9ydGN1dDogcmVzb3VyY2VzWzE5XVxuICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgZXhlY0NvbW1hbmQoY29tbWFuZDogc3RyaW5nLCB2YWx1ZTogYW55ID0gJycpOiB2b2lkIHtcbiAgICB0aGlzLmFkYXB0ZXJTZXJ2aWNlLmV4ZWNDb21tYW5kKHRoaXMuZWRpdG9ySWQsIHtcbiAgICAgIGNvbW1hbmQ6IGNvbW1hbmQsXG4gICAgICB2YWx1ZTogdmFsdWVcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBpbnNlcnRNZXJnZUZpZWxkKGZpZWxkOiBTa3lUZXh0RWRpdG9yTWVyZ2VGaWVsZCk6IHZvaWQge1xuICAgIHRoaXMuZXhlY0NvbW1hbmQoXG4gICAgICAnaW5zZXJ0SFRNTCcsXG4gICAgICAnPGltZyBzdHlsZT1cImRpc3BsYXk6IGlubGluZTsgY3Vyc29yOiBncmFiO1wiIGRhdGEtZmllbGRpZD1cIicgKyBmaWVsZC5pZCArXG4gICAgICAgICdcIiBkYXRhLWZpZWxkZGlzcGxheT1cIicgKyBmaWVsZC5uYW1lICtcbiAgICAgICAgJ1wiIHNyYz1cIicgKyAoZmllbGQucHJldmlld0ltYWdlVXJsIHx8IHRoaXMuYWRhcHRlclNlcnZpY2UuZ2V0TWVyZ2VGaWVsZERhdGFVUkkoZmllbGQubmFtZSkpICsgJ1wiPidcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZURyb3Bkb3ducygpOiB2b2lkIHtcbiAgICB0aGlzLmVkaXREcm9wZG93blN0cmVhbS5uZXh0KHsgdHlwZTogU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZSB9KTtcbiAgICB0aGlzLmZvcm1hdERyb3Bkb3duU3RyZWFtLm5leHQoeyB0eXBlOiBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlIH0pO1xuICAgIHRoaXMubWVyZ2VGaWVsZERyb3Bkb3duU3RyZWFtLm5leHQoeyB0eXBlOiBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckZvcm1hdCgpOiB2b2lkIHtcbiAgICBsZXQgY3VycmVudFNlbGVjdGlvbiA9IHRoaXMuYWRhcHRlclNlcnZpY2UuZ2V0Q3VycmVudFNlbGVjdGlvbih0aGlzLmVkaXRvcklkKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChjdXJyZW50U2VsZWN0aW9uLnJhbmdlQ291bnQgPiAwICYmIGN1cnJlbnRTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS50b1N0cmluZygpLmxlbmd0aCA8PSAwKSB7XG4gICAgICB0aGlzLmV4ZWNDb21tYW5kKCdzZWxlY3RBbGwnKTtcbiAgICB9XG4gICAgdGhpcy5leGVjQ29tbWFuZCgncmVtb3ZlRm9ybWF0Jyk7XG4gIH1cblxufVxuIiwiXG4gIDxza3ktdG9vbGJhci1pdGVtICpuZ0Zvcj1cImxldCBtZW51IG9mIG1lbnVzXCJcbiAgICBjbGFzcz1cInNreS10ZXh0LWVkaXRvci1tZW51XCJcbiAgICBbbmdDbGFzc109XCInc2t5LXRleHQtZWRpdG9yLW1lbnUtJyArIG1lbnVcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nU3dpdGNoXT1cIm1lbnVcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidlZGl0J1wiPlxuICAgICAgICA8c2t5LWRyb3Bkb3duXG4gICAgICAgICAgbGFiZWw9XCJFZGl0IG1lbnVcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgW21lc3NhZ2VTdHJlYW1dPVwiZWRpdERyb3Bkb3duU3RyZWFtXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktZHJvcGRvd24tYnV0dG9uPlxuICAgICAgICAgICAge3sgJ3NreXV4X3RleHRfZWRpdG9yX21lbnViYXJfZHJvcGRvd25fYnV0dG9uX2VkaXRfbGFiZWwnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgICAgICAgPC9za3ktZHJvcGRvd24tYnV0dG9uPlxuICAgICAgICAgIDxza3ktZHJvcGRvd24tbWVudT5cbiAgICAgICAgICAgIDxza3ktZHJvcGRvd24taXRlbSAqbmdGb3I9XCJsZXQgZWRpdEl0ZW0gb2YgZWRpdEl0ZW1zXCI+XG4gICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhZWRpdEl0ZW0uaXNEaXZpZGVyXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZWRpdEl0ZW0uZnVuY3Rpb24oKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBlZGl0SXRlbS5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJlZGl0SXRlbS5rZXlTaG9ydGN1dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNreS10ZXh0LWVkaXRvci1tZW51LWtleS1zaG9ydGN1dFwiXG4gICAgICAgICAgICAgICAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICdza3ktZm9udC1kZWVtcGhhc2l6ZWQnIDogJ21vZGVybicsXG4gICAgICAgICAgICAgICAgICAgICdza3ktZGVlbXBoYXNpemVkJyA6ICdkZWZhdWx0J1xuICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgZWRpdEl0ZW0ua2V5U2hvcnRjdXQgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJlZGl0SXRlbS5pc0RpdmlkZXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2t5LXRleHQtZWRpdG9yLWRyb3Bkb3duLWl0ZW0tZGl2aWRlclwiXG4gICAgICAgICAgICAgICAgcm9sZT1cImRpdmlkZXJcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9za3ktZHJvcGRvd24taXRlbT5cbiAgICAgICAgICA8L3NreS1kcm9wZG93bi1tZW51PlxuICAgICAgICA8L3NreS1kcm9wZG93bj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2Zvcm1hdCdcIj5cbiAgICAgICAgPHNreS1kcm9wZG93blxuICAgICAgICAgIGxhYmVsPVwiRm9ybWF0IG1lbnVcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgW21lc3NhZ2VTdHJlYW1dPVwiZm9ybWF0RHJvcGRvd25TdHJlYW1cIlxuICAgICAgICA+XG4gICAgICAgICAgPHNreS1kcm9wZG93bi1idXR0b24+XG4gICAgICAgICAgICB7eyAnc2t5dXhfdGV4dF9lZGl0b3JfbWVudWJhcl9kcm9wZG93bl9idXR0b25fZm9ybWF0X2xhYmVsJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgICAgIDwvc2t5LWRyb3Bkb3duLWJ1dHRvbj5cbiAgICAgICAgICA8c2t5LWRyb3Bkb3duLW1lbnU+XG4gICAgICAgICAgICA8c2t5LWRyb3Bkb3duLWl0ZW0gKm5nRm9yPVwibGV0IGZvcm1hdEl0ZW0gb2YgZm9ybWF0SXRlbXNcIj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFmb3JtYXRJdGVtLmlzRGl2aWRlclwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImZvcm1hdEl0ZW0uZnVuY3Rpb24oKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBmb3JtYXRJdGVtLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvcm1hdEl0ZW0ua2V5U2hvcnRjdXRcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJza3ktdGV4dC1lZGl0b3ItbWVudS1rZXktc2hvcnRjdXRcIlxuICAgICAgICAgICAgICAgICAgW3NreVRoZW1lQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAnc2t5LWZvbnQtZGVlbXBoYXNpemVkJyA6ICdtb2Rlcm4nLFxuICAgICAgICAgICAgICAgICAgICAnc2t5LWRlZW1waGFzaXplZCcgOiAnZGVmYXVsdCdcbiAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGZvcm1hdEl0ZW0ua2V5U2hvcnRjdXR9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvcm1hdEl0ZW0uaXNEaXZpZGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNreS10ZXh0LWVkaXRvci1kcm9wZG93bi1pdGVtLWRpdmlkZXJcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJkaXZpZGVyXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvc2t5LWRyb3Bkb3duLWl0ZW0+XG4gICAgICAgICAgPC9za3ktZHJvcGRvd24tbWVudT5cbiAgICAgICAgPC9za3ktZHJvcGRvd24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtZXJnZS1maWVsZCdcIj5cbiAgICAgICAgPHNreS1kcm9wZG93biAqbmdJZj1cIm1lcmdlRmllbGRzICYmIG1lcmdlRmllbGRzLmxlbmd0aCA+IDBcIlxuICAgICAgICAgIGxhYmVsPVwiSW5zZXJ0IG1lcmdlIGZpZWxkXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFttZXNzYWdlU3RyZWFtXT1cIm1lcmdlRmllbGREcm9wZG93blN0cmVhbVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWRyb3Bkb3duLWJ1dHRvbj5cbiAgICAgICAgICAgIHt7ICdza3l1eF90ZXh0X2VkaXRvcl9tZW51YmFyX2Ryb3Bkb3duX2J1dHRvbl9pbnNlcnRfbGFiZWwnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgICAgICAgPC9za3ktZHJvcGRvd24tYnV0dG9uPlxuICAgICAgICAgIDxza3ktZHJvcGRvd24tbWVudT5cbiAgICAgICAgICAgIDxza3ktZHJvcGRvd24taXRlbSAqbmdGb3I9XCJsZXQgbWVyZ2VGaWVsZCBvZiBtZXJnZUZpZWxkc1wiPlxuICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImluc2VydE1lcmdlRmllbGQobWVyZ2VGaWVsZClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbWVyZ2VGaWVsZC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9za3ktZHJvcGRvd24taXRlbT5cbiAgICAgICAgICA8L3NreS1kcm9wZG93bi1tZW51PlxuICAgICAgICA8L3NreS1kcm9wZG93bj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3NreS10b29sYmFyLWl0ZW0+XG4iXX0=
|