@skyux/text-editor 5.7.2 → 6.0.0-beta.2
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/documentation.json +2 -2
- package/esm2020/index.mjs +15 -0
- package/esm2020/lib/modules/rich-text-display/rich-text-display.component.mjs +36 -0
- package/esm2020/lib/modules/rich-text-display/rich-text-display.module.mjs +18 -0
- package/esm2020/lib/modules/shared/forms-utility.mjs +10 -0
- package/esm2020/lib/modules/shared/sky-text-editor-resources.module.mjs +106 -0
- package/esm2020/lib/modules/text-editor/defaults/font-list-defaults.mjs +42 -0
- package/esm2020/lib/modules/text-editor/defaults/font-size-list-defaults.mjs +7 -0
- package/esm2020/lib/modules/text-editor/defaults/menu-defaults.mjs +5 -0
- package/esm2020/lib/modules/text-editor/defaults/style-state-defaults.mjs +15 -0
- package/esm2020/lib/modules/text-editor/defaults/toolbar-action-defaults.mjs +12 -0
- package/esm2020/lib/modules/text-editor/menubar/text-editor-menubar.component.mjs +191 -0
- package/esm2020/lib/modules/text-editor/services/text-editor-adapter.service.mjs +477 -0
- package/esm2020/lib/modules/text-editor/services/text-editor-selection.service.mjs +80 -0
- package/esm2020/lib/modules/text-editor/services/text-editor.service.mjs +61 -0
- package/esm2020/lib/modules/text-editor/services/text-sanitization.service.mjs +38 -0
- package/esm2020/lib/modules/text-editor/text-editor.component.mjs +322 -0
- package/esm2020/lib/modules/text-editor/text-editor.module.mjs +98 -0
- package/esm2020/lib/modules/text-editor/toolbar/text-editor-toolbar.component.mjs +179 -0
- package/esm2020/lib/modules/text-editor/types/editor-command.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/editor-setting.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/font-state.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/menu-type.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/style-state.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/text-editor-merge-field.mjs +2 -0
- package/esm2020/lib/modules/text-editor/types/toolbar-action-type.mjs +2 -0
- package/esm2020/lib/modules/text-editor/url-modal/text-editor-url-modal-context.mjs +6 -0
- package/esm2020/lib/modules/text-editor/url-modal/text-editor-url-modal-result.mjs +2 -0
- package/esm2020/lib/modules/text-editor/url-modal/text-editor-url-modal.component.mjs +117 -0
- package/esm2020/lib/modules/text-editor/url-modal/text-editor-url-target.mjs +9 -0
- package/esm2020/skyux-text-editor.mjs +5 -0
- package/fesm2015/{skyux-text-editor.js → skyux-text-editor.mjs} +45 -69
- package/fesm2015/skyux-text-editor.mjs.map +1 -0
- package/fesm2020/skyux-text-editor.mjs +1743 -0
- package/fesm2020/skyux-text-editor.mjs.map +1 -0
- package/package.json +38 -22
- package/bundles/skyux-text-editor.umd.js +0 -2195
- package/esm2015/index.js +0 -15
- package/esm2015/index.js.map +0 -1
- package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js +0 -39
- package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js.map +0 -1
- package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js +0 -18
- package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js.map +0 -1
- package/esm2015/lib/modules/shared/forms-utility.js +0 -10
- package/esm2015/lib/modules/shared/forms-utility.js.map +0 -1
- package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js +0 -106
- package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js.map +0 -1
- package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js +0 -42
- package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js.map +0 -1
- package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js +0 -7
- package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js.map +0 -1
- package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js +0 -5
- package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js.map +0 -1
- package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js +0 -15
- package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js.map +0 -1
- package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js +0 -12
- package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js.map +0 -1
- package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js +0 -196
- package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js.map +0 -1
- package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js +0 -474
- package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js.map +0 -1
- package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js +0 -80
- package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js.map +0 -1
- package/esm2015/lib/modules/text-editor/services/text-editor.service.js +0 -61
- package/esm2015/lib/modules/text-editor/services/text-editor.service.js.map +0 -1
- package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js +0 -38
- package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js.map +0 -1
- package/esm2015/lib/modules/text-editor/text-editor.component.js +0 -322
- package/esm2015/lib/modules/text-editor/text-editor.component.js.map +0 -1
- package/esm2015/lib/modules/text-editor/text-editor.module.js +0 -99
- package/esm2015/lib/modules/text-editor/text-editor.module.js.map +0 -1
- package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js +0 -175
- package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/editor-command.js +0 -2
- package/esm2015/lib/modules/text-editor/types/editor-command.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/editor-setting.js +0 -2
- package/esm2015/lib/modules/text-editor/types/editor-setting.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/font-state.js +0 -2
- package/esm2015/lib/modules/text-editor/types/font-state.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/menu-type.js +0 -2
- package/esm2015/lib/modules/text-editor/types/menu-type.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/style-state.js +0 -2
- package/esm2015/lib/modules/text-editor/types/style-state.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js +0 -2
- package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js.map +0 -1
- package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js +0 -2
- package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js.map +0 -1
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js +0 -6
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js.map +0 -1
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js +0 -2
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js.map +0 -1
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js +0 -121
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js.map +0 -1
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js +0 -9
- package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js.map +0 -1
- package/esm2015/skyux-text-editor.js +0 -5
- package/esm2015/skyux-text-editor.js.map +0 -1
- package/fesm2015/skyux-text-editor.js.map +0 -1
package/esm2015/index.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export * from './lib/modules/rich-text-display/rich-text-display.module';
|
|
2
|
-
export * from './lib/modules/text-editor/types/font-state';
|
|
3
|
-
export * from './lib/modules/text-editor/types/menu-type';
|
|
4
|
-
export * from './lib/modules/text-editor/types/style-state';
|
|
5
|
-
export * from './lib/modules/text-editor/types/text-editor-merge-field';
|
|
6
|
-
export * from './lib/modules/text-editor/types/toolbar-action-type';
|
|
7
|
-
export * from './lib/modules/text-editor/text-editor.module';
|
|
8
|
-
// Components and directives must be exported to support Angular's "partial" Ivy compiler.
|
|
9
|
-
// Obscure names are used to indicate types are not part of the public API.
|
|
10
|
-
export { SkyRichTextDisplayComponent as λ1 } from './lib/modules/rich-text-display/rich-text-display.component';
|
|
11
|
-
export { SkyTextEditorMenubarComponent as λ2 } from './lib/modules/text-editor/menubar/text-editor-menubar.component';
|
|
12
|
-
export { SkyTextEditorUrlModalComponent as λ3 } from './lib/modules/text-editor/url-modal/text-editor-url-modal.component';
|
|
13
|
-
export { SkyTextEditorToolbarComponent as λ4 } from './lib/modules/text-editor/toolbar/text-editor-toolbar.component';
|
|
14
|
-
export { SkyTextEditorComponent as λ5 } from './lib/modules/text-editor/text-editor.component';
|
|
15
|
-
//# sourceMappingURL=index.js.map
|
package/esm2015/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/components/text-editor/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0DAA0D,CAAC;AAEzE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yDAAyD,CAAC;AACxE,cAAc,qDAAqD,CAAC;AAEpE,cAAc,8CAA8C,CAAC;AAE7D,0FAA0F;AAC1F,2EAA2E;AAC3E,OAAO,EAAE,2BAA2B,IAAI,EAAE,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,EAAE,6BAA6B,IAAI,EAAE,EAAE,MAAM,iEAAiE,CAAC;AACtH,OAAO,EAAE,8BAA8B,IAAI,EAAE,EAAE,MAAM,qEAAqE,CAAC;AAC3H,OAAO,EAAE,6BAA6B,IAAI,EAAE,EAAE,MAAM,iEAAiE,CAAC;AACtH,OAAO,EAAE,sBAAsB,IAAI,EAAE,EAAE,MAAM,iDAAiD,CAAC","sourcesContent":["export * from './lib/modules/rich-text-display/rich-text-display.module';\n\nexport * from './lib/modules/text-editor/types/font-state';\nexport * from './lib/modules/text-editor/types/menu-type';\nexport * from './lib/modules/text-editor/types/style-state';\nexport * from './lib/modules/text-editor/types/text-editor-merge-field';\nexport * from './lib/modules/text-editor/types/toolbar-action-type';\n\nexport * from './lib/modules/text-editor/text-editor.module';\n\n// Components and directives must be exported to support Angular's \"partial\" Ivy compiler.\n// Obscure names are used to indicate types are not part of the public API.\nexport { SkyRichTextDisplayComponent as λ1 } from './lib/modules/rich-text-display/rich-text-display.component';\nexport { SkyTextEditorMenubarComponent as λ2 } from './lib/modules/text-editor/menubar/text-editor-menubar.component';\nexport { SkyTextEditorUrlModalComponent as λ3 } from './lib/modules/text-editor/url-modal/text-editor-url-modal.component';\nexport { SkyTextEditorToolbarComponent as λ4 } from './lib/modules/text-editor/toolbar/text-editor-toolbar.component';\nexport { SkyTextEditorComponent as λ5 } from './lib/modules/text-editor/text-editor.component';\n"]}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
3
|
-
import { SkyTextSanitizationService } from '../text-editor/services/text-sanitization.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/platform-browser";
|
|
6
|
-
import * as i2 from "../text-editor/services/text-sanitization.service";
|
|
7
|
-
export class SkyRichTextDisplayComponent {
|
|
8
|
-
constructor(sanitizer, sanitizationService) {
|
|
9
|
-
this.sanitizer = sanitizer;
|
|
10
|
-
this.sanitizationService = sanitizationService;
|
|
11
|
-
this.sanitizedText = '';
|
|
12
|
-
this._richText = '';
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Specifies the rich text to display.
|
|
16
|
-
*/
|
|
17
|
-
set richText(value) {
|
|
18
|
-
const cleaned = this.sanitizationService.sanitize(value);
|
|
19
|
-
/* istanbul ignore else */
|
|
20
|
-
if (cleaned !== this._richText) {
|
|
21
|
-
this._richText = cleaned;
|
|
22
|
-
// Text has already been sanitized with DOMPurifier.
|
|
23
|
-
// Tell Angular to bypass its own internal sanitization.
|
|
24
|
-
this.sanitizedText = this.sanitizer.bypassSecurityTrustHtml(cleaned);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
SkyRichTextDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRichTextDisplayComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.SkyTextSanitizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
SkyRichTextDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyRichTextDisplayComponent, selector: "sky-rich-text-display", inputs: { richText: "richText" }, ngImport: i0, template: "<span class=\"sky-rich-text-display-text\" [innerHTML]=\"sanitizedText\"> </span>\n" });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRichTextDisplayComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{
|
|
33
|
-
selector: 'sky-rich-text-display',
|
|
34
|
-
templateUrl: './rich-text-display.component.html',
|
|
35
|
-
}]
|
|
36
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }, { type: i2.SkyTextSanitizationService }]; }, propDecorators: { richText: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}] } });
|
|
39
|
-
//# sourceMappingURL=rich-text-display.component.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rich-text-display.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/text-editor/src/lib/modules/rich-text-display/rich-text-display.component.ts","../../../../../../../../libs/components/text-editor/src/lib/modules/rich-text-display/rich-text-display.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAY,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;;;;AAM/F,MAAM,OAAO,2BAA2B;IAqBtC,YACU,SAAuB,EACvB,mBAA+C;QAD/C,cAAS,GAAT,SAAS,CAAc;QACvB,wBAAmB,GAAnB,mBAAmB,CAA4B;QANlD,kBAAa,GAAa,EAAE,CAAC;QAE5B,cAAS,GAAG,EAAE,CAAC;IAKpB,CAAC;IAvBJ;;OAEG;IACH,IACW,QAAQ,CAAC,KAAa;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzD,0BAA0B;QAC1B,IAAI,OAAO,KAAK,IAAI,CAAC,SAAS,EAAE;YAC9B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;YAEzB,oDAAoD;YACpD,wDAAwD;YACxD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;SACtE;IACH,CAAC;;yHAfU,2BAA2B;6GAA3B,2BAA2B,+FCTxC,qFACA;4FDQa,2BAA2B;kBAJvC,SAAS;mBAAC;oBACT,QAAQ,EAAE,uBAAuB;oBACjC,WAAW,EAAE,oCAAoC;iBAClD;4IAMY,QAAQ;sBADlB,KAAK","sourcesContent":["import { Component, Input } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\nimport { SkyTextSanitizationService } from '../text-editor/services/text-sanitization.service';\n\n@Component({\n selector: 'sky-rich-text-display',\n templateUrl: './rich-text-display.component.html',\n})\nexport class SkyRichTextDisplayComponent {\n /**\n * Specifies the rich text to display.\n */\n @Input()\n public set richText(value: string) {\n const cleaned = this.sanitizationService.sanitize(value);\n /* istanbul ignore else */\n if (cleaned !== this._richText) {\n this._richText = cleaned;\n\n // Text has already been sanitized with DOMPurifier.\n // Tell Angular to bypass its own internal sanitization.\n this.sanitizedText = this.sanitizer.bypassSecurityTrustHtml(cleaned);\n }\n }\n\n public sanitizedText: SafeHtml = '';\n\n private _richText = '';\n\n constructor(\n private sanitizer: DomSanitizer,\n private sanitizationService: SkyTextSanitizationService\n ) {}\n}\n","<span class=\"sky-rich-text-display-text\" [innerHTML]=\"sanitizedText\"> </span>\n"]}
|
|
@@ -1,18 +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.16", ngImport: i0, type: SkyRichTextDisplayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
-
SkyRichTextDisplayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRichTextDisplayModule, declarations: [SkyRichTextDisplayComponent], imports: [CommonModule], exports: [SkyRichTextDisplayComponent] });
|
|
9
|
-
SkyRichTextDisplayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRichTextDisplayModule, imports: [[CommonModule]] });
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRichTextDisplayModule, decorators: [{
|
|
11
|
-
type: NgModule,
|
|
12
|
-
args: [{
|
|
13
|
-
imports: [CommonModule],
|
|
14
|
-
exports: [SkyRichTextDisplayComponent],
|
|
15
|
-
declarations: [SkyRichTextDisplayComponent],
|
|
16
|
-
}]
|
|
17
|
-
}] });
|
|
18
|
-
//# sourceMappingURL=rich-text-display.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rich-text-display.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/text-editor/src/lib/modules/rich-text-display/rich-text-display.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;;AAO5E,MAAM,OAAO,wBAAwB;;sHAAxB,wBAAwB;uHAAxB,wBAAwB,iBAFpB,2BAA2B,aAFhC,YAAY,aACZ,2BAA2B;uHAG1B,wBAAwB,YAJ1B,CAAC,YAAY,CAAC;4FAIZ,wBAAwB;kBALpC,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,2BAA2B,CAAC;oBACtC,YAAY,EAAE,CAAC,2BAA2B,CAAC;iBAC5C","sourcesContent":["import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { SkyRichTextDisplayComponent } from './rich-text-display.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [SkyRichTextDisplayComponent],\n declarations: [SkyRichTextDisplayComponent],\n})\nexport class SkyRichTextDisplayModule {}\n"]}
|
|
@@ -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=forms-utility.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forms-utility.js","sourceRoot":"","sources":["../../../../../../../../libs/components/text-editor/src/lib/modules/shared/forms-utility.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,2DAA2D;AAC3D,WAAW;AACX,MAAM,OAAO,eAAe;IAC1B,oEAAoE;IAC7D,MAAM,CAAC,qBAAqB,CAAC,KAAU;QAC5C,OAAO,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,KAAK,OAAO,CAAC;IACvD,CAAC;CACF","sourcesContent":["// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\nexport class SkyFormsUtility {\n /** Coerces a data-bound value (typically a string) to a boolean. */\n public static coerceBooleanProperty(value: any): boolean {\n return value !== undefined && `${value}` !== 'false';\n }\n}\n"]}
|
|
@@ -1,106 +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 lib/modules/shared/sky-text-editor' schematic.
|
|
5
|
-
* To update this file, simply rerun the command.
|
|
6
|
-
*/
|
|
7
|
-
import { NgModule } from '@angular/core';
|
|
8
|
-
import { SKY_LIB_RESOURCES_PROVIDERS, SkyI18nModule, getLibStringForLocale, } from '@skyux/i18n';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
const RESOURCES = {
|
|
11
|
-
'EN-US': {
|
|
12
|
-
skyux_text_editor_format_menu_action_bold_label: { message: 'Bold' },
|
|
13
|
-
skyux_text_editor_format_menu_action_bold_key_shortcut: {
|
|
14
|
-
message: 'Ctrl+B',
|
|
15
|
-
},
|
|
16
|
-
skyux_text_editor_format_menu_action_italic_label: { message: 'Italic' },
|
|
17
|
-
skyux_text_editor_format_menu_action_italic_key_shortcut: {
|
|
18
|
-
message: 'Ctrl+I',
|
|
19
|
-
},
|
|
20
|
-
skyux_text_editor_format_menu_action_underline_label: {
|
|
21
|
-
message: 'Underline',
|
|
22
|
-
},
|
|
23
|
-
skyux_text_editor_format_menu_action_underline_key_shortcut: {
|
|
24
|
-
message: 'Ctrl+U',
|
|
25
|
-
},
|
|
26
|
-
skyux_text_editor_format_menu_action_strikethrough_label: {
|
|
27
|
-
message: 'Strikethrough',
|
|
28
|
-
},
|
|
29
|
-
skyux_text_editor_format_menu_action_clear_formatting_label: {
|
|
30
|
-
message: 'Clear formatting',
|
|
31
|
-
},
|
|
32
|
-
skyux_text_editor_edit_menu_action_undo_label: { message: 'Undo' },
|
|
33
|
-
skyux_text_editor_edit_menu_action_undo_key_shortcut: { message: 'Ctrl+Z' },
|
|
34
|
-
skyux_text_editor_edit_menu_action_redo_label: { message: 'Redo' },
|
|
35
|
-
skyux_text_editor_edit_menu_action_redo_key_shortcut: { message: 'Ctrl+Y' },
|
|
36
|
-
skyux_text_editor_edit_menu_action_cut_label: { message: 'Cut' },
|
|
37
|
-
skyux_text_editor_edit_menu_action_cut_key_shortcut: { message: 'Ctrl+X' },
|
|
38
|
-
skyux_text_editor_edit_menu_action_copy_label: { message: 'Copy' },
|
|
39
|
-
skyux_text_editor_edit_menu_action_copy_key_shortcut: { message: 'Ctrl+C' },
|
|
40
|
-
skyux_text_editor_edit_menu_action_paste_label: { message: 'Paste' },
|
|
41
|
-
skyux_text_editor_edit_menu_action_paste_key_shortcut: {
|
|
42
|
-
message: 'Ctrl+V',
|
|
43
|
-
},
|
|
44
|
-
skyux_text_editor_edit_menu_action_select_all_label: {
|
|
45
|
-
message: 'Select all',
|
|
46
|
-
},
|
|
47
|
-
skyux_text_editor_edit_menu_action_select_all_key_shortcut: {
|
|
48
|
-
message: 'Ctrl+A',
|
|
49
|
-
},
|
|
50
|
-
skyux_text_editor_menubar_dropdown_button_edit_label: { message: 'Edit' },
|
|
51
|
-
skyux_text_editor_menubar_dropdown_button_format_label: {
|
|
52
|
-
message: 'Format',
|
|
53
|
-
},
|
|
54
|
-
skyux_text_editor_menubar_dropdown_button_insert_label: {
|
|
55
|
-
message: 'Insert merge field',
|
|
56
|
-
},
|
|
57
|
-
skyux_text_editor_url_modal_header_label: { message: 'Create link' },
|
|
58
|
-
skyux_text_editor_url_modal_url_label: {
|
|
59
|
-
message: 'Enter a URL to link to:',
|
|
60
|
-
},
|
|
61
|
-
skyux_text_editor_url_modal_open_label: {
|
|
62
|
-
message: 'Where should it open?',
|
|
63
|
-
},
|
|
64
|
-
skyux_text_editor_url_modal_current_option_label: {
|
|
65
|
-
message: 'Current window',
|
|
66
|
-
},
|
|
67
|
-
skyux_text_editor_url_modal_new_option_label: { message: 'New window' },
|
|
68
|
-
skyux_text_editor_url_modal_email_label: { message: 'Email address' },
|
|
69
|
-
skyux_text_editor_url_modal_subject_label: { message: 'Subject line' },
|
|
70
|
-
skyux_text_editor_url_modal_save_button_label: { message: 'Save' },
|
|
71
|
-
skyux_text_editor_url_modal_cancel_button_label: { message: 'Cancel' },
|
|
72
|
-
},
|
|
73
|
-
};
|
|
74
|
-
export class SkyTextEditorResourcesProvider {
|
|
75
|
-
getString(localeInfo, name) {
|
|
76
|
-
return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Import into any component library module that needs to use resource strings.
|
|
81
|
-
*/
|
|
82
|
-
export class SkyTextEditorResourcesModule {
|
|
83
|
-
}
|
|
84
|
-
SkyTextEditorResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
85
|
-
SkyTextEditorResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorResourcesModule, exports: [SkyI18nModule] });
|
|
86
|
-
SkyTextEditorResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorResourcesModule, providers: [
|
|
87
|
-
{
|
|
88
|
-
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
89
|
-
useClass: SkyTextEditorResourcesProvider,
|
|
90
|
-
multi: true,
|
|
91
|
-
},
|
|
92
|
-
], imports: [SkyI18nModule] });
|
|
93
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorResourcesModule, decorators: [{
|
|
94
|
-
type: NgModule,
|
|
95
|
-
args: [{
|
|
96
|
-
exports: [SkyI18nModule],
|
|
97
|
-
providers: [
|
|
98
|
-
{
|
|
99
|
-
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
100
|
-
useClass: SkyTextEditorResourcesProvider,
|
|
101
|
-
multi: true,
|
|
102
|
-
},
|
|
103
|
-
],
|
|
104
|
-
}]
|
|
105
|
-
}] });
|
|
106
|
-
//# sourceMappingURL=sky-text-editor-resources.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sky-text-editor-resources.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/text-editor/src/lib/modules/shared/sky-text-editor-resources.module.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-text-editor' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_text_editor_format_menu_action_bold_label: { message: 'Bold' },\n skyux_text_editor_format_menu_action_bold_key_shortcut: {\n message: 'Ctrl+B',\n },\n skyux_text_editor_format_menu_action_italic_label: { message: 'Italic' },\n skyux_text_editor_format_menu_action_italic_key_shortcut: {\n message: 'Ctrl+I',\n },\n skyux_text_editor_format_menu_action_underline_label: {\n message: 'Underline',\n },\n skyux_text_editor_format_menu_action_underline_key_shortcut: {\n message: 'Ctrl+U',\n },\n skyux_text_editor_format_menu_action_strikethrough_label: {\n message: 'Strikethrough',\n },\n skyux_text_editor_format_menu_action_clear_formatting_label: {\n message: 'Clear formatting',\n },\n skyux_text_editor_edit_menu_action_undo_label: { message: 'Undo' },\n skyux_text_editor_edit_menu_action_undo_key_shortcut: { message: 'Ctrl+Z' },\n skyux_text_editor_edit_menu_action_redo_label: { message: 'Redo' },\n skyux_text_editor_edit_menu_action_redo_key_shortcut: { message: 'Ctrl+Y' },\n skyux_text_editor_edit_menu_action_cut_label: { message: 'Cut' },\n skyux_text_editor_edit_menu_action_cut_key_shortcut: { message: 'Ctrl+X' },\n skyux_text_editor_edit_menu_action_copy_label: { message: 'Copy' },\n skyux_text_editor_edit_menu_action_copy_key_shortcut: { message: 'Ctrl+C' },\n skyux_text_editor_edit_menu_action_paste_label: { message: 'Paste' },\n skyux_text_editor_edit_menu_action_paste_key_shortcut: {\n message: 'Ctrl+V',\n },\n skyux_text_editor_edit_menu_action_select_all_label: {\n message: 'Select all',\n },\n skyux_text_editor_edit_menu_action_select_all_key_shortcut: {\n message: 'Ctrl+A',\n },\n skyux_text_editor_menubar_dropdown_button_edit_label: { message: 'Edit' },\n skyux_text_editor_menubar_dropdown_button_format_label: {\n message: 'Format',\n },\n skyux_text_editor_menubar_dropdown_button_insert_label: {\n message: 'Insert merge field',\n },\n skyux_text_editor_url_modal_header_label: { message: 'Create link' },\n skyux_text_editor_url_modal_url_label: {\n message: 'Enter a URL to link to:',\n },\n skyux_text_editor_url_modal_open_label: {\n message: 'Where should it open?',\n },\n skyux_text_editor_url_modal_current_option_label: {\n message: 'Current window',\n },\n skyux_text_editor_url_modal_new_option_label: { message: 'New window' },\n skyux_text_editor_url_modal_email_label: { message: 'Email address' },\n skyux_text_editor_url_modal_subject_label: { message: 'Subject line' },\n skyux_text_editor_url_modal_save_button_label: { message: 'Save' },\n skyux_text_editor_url_modal_cancel_button_label: { message: 'Cancel' },\n },\n};\n\nexport class SkyTextEditorResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyTextEditorResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyTextEditorResourcesModule {}\n"]}
|
|
@@ -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=font-list-defaults.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"font-list-defaults.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/defaults/font-list-defaults.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAwB;IACrD;QACE,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,qCAAqC;KAC7C;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;KACf;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,eAAe;KACvB;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,eAAe;KACvB;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,gBAAgB;KACxB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,4BAA4B;KACpC;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,mBAAmB;KAC3B;IACD;QACE,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,4BAA4B;KACpC;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,6BAA6B;KACrC;CACF,CAAC","sourcesContent":["import { SkyTextEditorFont } from '../types/font-state';\n\n/**\n * @internal\n */\nexport const FONT_LIST_DEFAULTS: SkyTextEditorFont[] = [\n {\n name: 'Blackbaud Sans',\n value: '\"Blackbaud Sans\", Arial, sans-serif',\n },\n {\n name: 'Arial',\n value: 'Arial',\n },\n {\n name: 'Arial Black',\n value: '\"Arial Black\"',\n },\n {\n name: 'Courier New',\n value: '\"Courier New\"',\n },\n {\n name: 'Georgia',\n value: 'Georgia, serif',\n },\n {\n name: 'Tahoma',\n value: 'Tahoma, Geneva, sans-serif',\n },\n {\n name: 'Times New Roman',\n value: '\"Times New Roman\"',\n },\n {\n name: 'Trebuchet MS',\n value: '\"Trebuchet MS\", sans-serif',\n },\n {\n name: 'Verdana',\n value: 'Verdana, Geneva, sans-serif',\n },\n];\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"font-size-list-defaults.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/defaults/font-size-list-defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;CACpE,CAAC","sourcesContent":["/**\n * @internal\n */\nexport const FONT_SIZE_LIST_DEFAULTS: number[] = [\n 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48,\n];\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"menu-defaults.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/defaults/menu-defaults.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAA4B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC","sourcesContent":["import { SkyTextEditorMenuType } from '../types/menu-type';\n\n/**\n * @internal\n */\nexport const MENU_DEFAULTS: SkyTextEditorMenuType[] = ['edit', 'format'];\n"]}
|
|
@@ -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=style-state-defaults.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"style-state-defaults.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/defaults/style-state-defaults.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA4B;IAC3D,SAAS,EAAE,kBAAkB;IAC7B,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK;IACjC,SAAS,EAAE,KAAK;IAChB,WAAW,EAAE,KAAK;IAClB,cAAc,EAAE,KAAK;IACrB,SAAS,EAAE,KAAK;CACjB,CAAC","sourcesContent":["import { SkyTextEditorStyleState } from '../types/style-state';\n\nimport { FONT_LIST_DEFAULTS } from './font-list-defaults';\n\n/**\n * @internal\n */\nexport const STYLE_STATE_DEFAULTS: SkyTextEditorStyleState = {\n backColor: 'rgba(0, 0, 0, 0)',\n fontColor: '#000',\n fontSize: 14,\n font: FONT_LIST_DEFAULTS[0].value,\n boldState: false,\n italicState: false,\n underlineState: false,\n linkState: false,\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toolbar-action-defaults.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/defaults/toolbar-action-defaults.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAqC;IACvE,aAAa;IACb,WAAW;IACX,YAAY;IACZ,OAAO;IACP,MAAM;IACN,MAAM;CACP,CAAC","sourcesContent":["import { SkyTextEditorToolbarActionType } from '../types/toolbar-action-type';\n\n/**\n * @internal\n */\nexport const TOOLBAR_ACTION_DEFAULTS: SkyTextEditorToolbarActionType[] = [\n 'font-family',\n 'font-size',\n 'font-style',\n 'color',\n 'list',\n 'link',\n];\n"]}
|
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
|
|
2
|
-
import { SkyLibResourcesService } from '@skyux/i18n';
|
|
3
|
-
import { SkyDropdownMessageType } from '@skyux/popovers';
|
|
4
|
-
import { Subject, forkJoin } from 'rxjs';
|
|
5
|
-
import { take, takeUntil } from 'rxjs/operators';
|
|
6
|
-
import { SkyFormsUtility } from '../../shared/forms-utility';
|
|
7
|
-
import { SkyTextEditorAdapterService } from '../services/text-editor-adapter.service';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../services/text-editor-adapter.service";
|
|
10
|
-
import * as i2 from "@skyux/i18n";
|
|
11
|
-
import * as i3 from "@skyux/layout";
|
|
12
|
-
import * as i4 from "@skyux/popovers";
|
|
13
|
-
import * as i5 from "@angular/common";
|
|
14
|
-
import * as i6 from "@skyux/theme";
|
|
15
|
-
/**
|
|
16
|
-
* @internal
|
|
17
|
-
*/
|
|
18
|
-
export class SkyTextEditorMenubarComponent {
|
|
19
|
-
constructor(adapterService, changeDetector, resources) {
|
|
20
|
-
this.adapterService = adapterService;
|
|
21
|
-
this.changeDetector = changeDetector;
|
|
22
|
-
this.resources = resources;
|
|
23
|
-
this.editorFocusStream = new Subject();
|
|
24
|
-
this.menus = [];
|
|
25
|
-
this.mergeFields = [];
|
|
26
|
-
this._disabled = false;
|
|
27
|
-
this.editDropdownStream = new Subject();
|
|
28
|
-
this.formatDropdownStream = new Subject();
|
|
29
|
-
this.mergeFieldDropdownStream = new Subject();
|
|
30
|
-
this.ngUnsubscribe = new Subject();
|
|
31
|
-
}
|
|
32
|
-
set disabled(value) {
|
|
33
|
-
const coercedValue = SkyFormsUtility.coerceBooleanProperty(value);
|
|
34
|
-
if (coercedValue !== this.disabled) {
|
|
35
|
-
this._disabled = coercedValue;
|
|
36
|
-
this.changeDetector.markForCheck();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
get disabled() {
|
|
40
|
-
return this._disabled;
|
|
41
|
-
}
|
|
42
|
-
ngOnInit() {
|
|
43
|
-
this.editorFocusStream.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {
|
|
44
|
-
this.closeDropdowns();
|
|
45
|
-
});
|
|
46
|
-
forkJoin([
|
|
47
|
-
// Format menu strings.
|
|
48
|
-
this.resources.getString('skyux_text_editor_format_menu_action_bold_label'),
|
|
49
|
-
this.resources.getString('skyux_text_editor_format_menu_action_bold_key_shortcut'),
|
|
50
|
-
this.resources.getString('skyux_text_editor_format_menu_action_italic_label'),
|
|
51
|
-
this.resources.getString('skyux_text_editor_format_menu_action_italic_key_shortcut'),
|
|
52
|
-
this.resources.getString('skyux_text_editor_format_menu_action_underline_label'),
|
|
53
|
-
this.resources.getString('skyux_text_editor_format_menu_action_underline_key_shortcut'),
|
|
54
|
-
this.resources.getString('skyux_text_editor_format_menu_action_strikethrough_label'),
|
|
55
|
-
this.resources.getString('skyux_text_editor_format_menu_action_clear_formatting_label'),
|
|
56
|
-
// Edit menu string - start at index 8.
|
|
57
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_undo_label'),
|
|
58
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_undo_key_shortcut'),
|
|
59
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_redo_label'),
|
|
60
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_redo_key_shortcut'),
|
|
61
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_cut_label'),
|
|
62
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_cut_key_shortcut'),
|
|
63
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_copy_label'),
|
|
64
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_copy_key_shortcut'),
|
|
65
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_paste_label'),
|
|
66
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_paste_key_shortcut'),
|
|
67
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_select_all_label'),
|
|
68
|
-
this.resources.getString('skyux_text_editor_edit_menu_action_select_all_key_shortcut'),
|
|
69
|
-
])
|
|
70
|
-
.pipe(take(1))
|
|
71
|
-
.subscribe((resources) => {
|
|
72
|
-
this.formatItems = [
|
|
73
|
-
{
|
|
74
|
-
function: () => this.execCommand('bold'),
|
|
75
|
-
label: resources[0],
|
|
76
|
-
keyShortcut: resources[1],
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
function: () => this.execCommand('italic'),
|
|
80
|
-
label: resources[2],
|
|
81
|
-
keyShortcut: resources[3],
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
function: () => this.execCommand('underline'),
|
|
85
|
-
label: resources[4],
|
|
86
|
-
keyShortcut: resources[5],
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
function: () => this.execCommand('strikethrough'),
|
|
90
|
-
label: resources[6],
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
isDivider: true,
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
function: () => this.clearFormat(),
|
|
97
|
-
label: resources[7],
|
|
98
|
-
},
|
|
99
|
-
];
|
|
100
|
-
this.editItems = [
|
|
101
|
-
{
|
|
102
|
-
function: () => this.execCommand('undo'),
|
|
103
|
-
label: resources[8],
|
|
104
|
-
keyShortcut: resources[9],
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
function: () => this.execCommand('redo'),
|
|
108
|
-
label: resources[10],
|
|
109
|
-
keyShortcut: resources[11],
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
isDivider: true,
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
function: () => this.execCommand('cut'),
|
|
116
|
-
label: resources[12],
|
|
117
|
-
keyShortcut: resources[13],
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
function: () => this.execCommand('copy'),
|
|
121
|
-
label: resources[14],
|
|
122
|
-
keyShortcut: resources[15],
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
function: () => this.execCommand('paste'),
|
|
126
|
-
label: resources[16],
|
|
127
|
-
keyShortcut: resources[17],
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
isDivider: true,
|
|
131
|
-
},
|
|
132
|
-
{
|
|
133
|
-
function: () => this.execCommand('selectAll'),
|
|
134
|
-
label: resources[18],
|
|
135
|
-
keyShortcut: resources[19],
|
|
136
|
-
},
|
|
137
|
-
];
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
ngOnDestroy() {
|
|
141
|
-
this.ngUnsubscribe.next();
|
|
142
|
-
this.ngUnsubscribe.complete();
|
|
143
|
-
}
|
|
144
|
-
execCommand(command, value = '') {
|
|
145
|
-
this.adapterService.execCommand(this.editorId, {
|
|
146
|
-
command: command,
|
|
147
|
-
value: value,
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
insertMergeField(field) {
|
|
151
|
-
this.execCommand('insertHTML', '<img style="display: inline; cursor: grab;" data-fieldid="' +
|
|
152
|
-
field.id +
|
|
153
|
-
'" data-fielddisplay="' +
|
|
154
|
-
field.name +
|
|
155
|
-
'" src="' +
|
|
156
|
-
(field.previewImageUrl ||
|
|
157
|
-
this.adapterService.getMergeFieldDataURI(field.name)) +
|
|
158
|
-
'">');
|
|
159
|
-
}
|
|
160
|
-
closeDropdowns() {
|
|
161
|
-
this.editDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
162
|
-
this.formatDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
163
|
-
this.mergeFieldDropdownStream.next({ type: SkyDropdownMessageType.Close });
|
|
164
|
-
}
|
|
165
|
-
clearFormat() {
|
|
166
|
-
const currentSelection = this.adapterService.getCurrentSelection(this.editorId);
|
|
167
|
-
/* istanbul ignore else */
|
|
168
|
-
if (currentSelection.rangeCount > 0 &&
|
|
169
|
-
currentSelection.getRangeAt(0).toString().length <= 0) {
|
|
170
|
-
this.execCommand('selectAll');
|
|
171
|
-
}
|
|
172
|
-
this.execCommand('removeFormat');
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
SkyTextEditorMenubarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorMenubarComponent, deps: [{ token: i1.SkyTextEditorAdapterService }, { token: i0.ChangeDetectorRef }, { token: i2.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
176
|
-
SkyTextEditorMenubarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: { editorFocusStream: "editorFocusStream", editorId: "editorId", menus: "menus", mergeFields: "mergeFields", disabled: "disabled" }, ngImport: i0, template: "<sky-toolbar-item\n *ngFor=\"let menu of menus\"\n class=\"sky-text-editor-menu\"\n [ngClass]=\"'sky-text-editor-menu-' + menu\"\n>\n <ng-container [ngSwitch]=\"menu\">\n <ng-container *ngSwitchCase=\"'edit'\">\n <sky-dropdown\n label=\"Edit menu\"\n [disabled]=\"disabled\"\n [messageStream]=\"editDropdownStream\"\n >\n <sky-dropdown-button>\n {{\n 'skyux_text_editor_menubar_dropdown_button_edit_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let editItem of editItems\">\n <button\n *ngIf=\"!editItem.isDivider\"\n type=\"button\"\n (click)=\"editItem.function()\"\n >\n {{ editItem.label }}\n <div\n *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\n *ngIf=\"editItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\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 {{\n 'skyux_text_editor_menubar_dropdown_button_format_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let formatItem of formatItems\">\n <button\n *ngIf=\"!formatItem.isDivider\"\n type=\"button\"\n (click)=\"formatItem.function()\"\n >\n {{ formatItem.label }}\n <div\n *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\n *ngIf=\"formatItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\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\n *ngIf=\"mergeFields && mergeFields.length > 0\"\n label=\"Insert merge field\"\n [disabled]=\"disabled\"\n [messageStream]=\"mergeFieldDropdownStream\"\n >\n <sky-dropdown-button>\n {{\n 'skyux_text_editor_menubar_dropdown_button_insert_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let mergeField of mergeFields\">\n <button type=\"button\" (click)=\"insertMergeField(mergeField)\">\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 });
|
|
177
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextEditorMenubarComponent, decorators: [{
|
|
178
|
-
type: Component,
|
|
179
|
-
args: [{
|
|
180
|
-
selector: 'sky-text-editor-menubar',
|
|
181
|
-
templateUrl: './text-editor-menubar.component.html',
|
|
182
|
-
styleUrls: ['./text-editor-menubar.component.scss'],
|
|
183
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
184
|
-
}]
|
|
185
|
-
}], ctorParameters: function () { return [{ type: i1.SkyTextEditorAdapterService }, { type: i0.ChangeDetectorRef }, { type: i2.SkyLibResourcesService }]; }, propDecorators: { editorFocusStream: [{
|
|
186
|
-
type: Input
|
|
187
|
-
}], editorId: [{
|
|
188
|
-
type: Input
|
|
189
|
-
}], menus: [{
|
|
190
|
-
type: Input
|
|
191
|
-
}], mergeFields: [{
|
|
192
|
-
type: Input
|
|
193
|
-
}], disabled: [{
|
|
194
|
-
type: Input
|
|
195
|
-
}] } });
|
|
196
|
-
//# sourceMappingURL=text-editor-menubar.component.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"text-editor-menubar.component.js","sourceRoot":"","sources":["../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/menubar/text-editor-menubar.component.ts","../../../../../../../../../libs/components/text-editor/src/lib/modules/text-editor/menubar/text-editor-menubar.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,KAAK,GAGN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAsB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE7E,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;;;;;;;;AAItF;;GAEG;AAOH,MAAM,OAAO,6BAA6B;IAkDxC,YACU,cAA2C,EAC3C,cAAiC,EACjC,SAAiC;QAFjC,mBAAc,GAAd,cAAc,CAA6B;QAC3C,mBAAc,GAAd,cAAc,CAAmB;QACjC,cAAS,GAAT,SAAS,CAAwB;QAnDpC,sBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;QAMlC,UAAK,GAA4B,EAAE,CAAC;QAGpC,gBAAW,GAA8B,EAAE,CAAC;QAe3C,cAAS,GAAG,KAAK,CAAC;QAEnB,uBAAkB,GAAG,IAAI,OAAO,EAAsB,CAAC;QASvD,yBAAoB,GAAG,IAAI,OAAO,EAAsB,CAAC;QASzD,6BAAwB,GAAG,IAAI,OAAO,EAAsB,CAAC;QAE5D,kBAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;IAMzC,CAAC;IAzCJ,IACW,QAAQ,CAAC,KAAc;QAChC,MAAM,YAAY,GAAG,eAAe,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,YAAY,KAAK,IAAI,CAAC,QAAQ,EAAE;YAClC,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;YAC9B,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;SACpC;IACH,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAgCM,QAAQ;QACb,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACxE,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC;YACP,uBAAuB;YACvB,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,iDAAiD,CAClD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,wDAAwD,CACzD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,mDAAmD,CACpD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,0DAA0D,CAC3D;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,sDAAsD,CACvD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,6DAA6D,CAC9D;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,0DAA0D,CAC3D;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,6DAA6D,CAC9D;YAED,uCAAuC;YACvC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+CAA+C,CAAC;YACzE,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,sDAAsD,CACvD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+CAA+C,CAAC;YACzE,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,sDAAsD,CACvD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,8CAA8C,CAAC;YACxE,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,qDAAqD,CACtD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+CAA+C,CAAC;YACzE,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,sDAAsD,CACvD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,gDAAgD,CACjD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,uDAAuD,CACxD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,qDAAqD,CACtD;YACD,IAAI,CAAC,SAAS,CAAC,SAAS,CACtB,4DAA4D,CAC7D;SACF,CAAC;aACC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACb,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE;YACvB,IAAI,CAAC,WAAW,GAAG;gBACjB;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;oBACnB,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;iBAC1B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC1C,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;oBACnB,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;iBAC1B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;oBAC7C,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;oBACnB,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;iBAC1B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;oBACjD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;iBACpB;gBACD;oBACE,SAAS,EAAE,IAAI;iBAChB;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;oBAClC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;iBACpB;aACF,CAAC;YACF,IAAI,CAAC,SAAS,GAAG;gBACf;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;oBACnB,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;iBAC1B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpB,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;iBAC3B;gBACD;oBACE,SAAS,EAAE,IAAI;iBAChB;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;oBACvC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpB,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;iBAC3B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpB,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;iBAC3B;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;oBACzC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpB,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;iBAC3B;gBACD;oBACE,SAAS,EAAE,IAAI;iBAChB;gBACD;oBACE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;oBAC7C,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpB,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;iBAC3B;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,WAAW;QAChB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAEM,WAAW,CAAC,OAAe,EAAE,QAAa,EAAE;QACjD,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC7C,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAEM,gBAAgB,CAAC,KAA8B;QACpD,IAAI,CAAC,WAAW,CACd,YAAY,EACZ,4DAA4D;YAC1D,KAAK,CAAC,EAAE;YACR,uBAAuB;YACvB,KAAK,CAAC,IAAI;YACV,SAAS;YACT,CAAC,KAAK,CAAC,eAAe;gBACpB,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,CACP,CAAC;IACJ,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;IAEO,WAAW;QACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAC9D,IAAI,CAAC,QAAQ,CACd,CAAC;QACF,0BAA0B;QAC1B,IACE,gBAAgB,CAAC,UAAU,GAAG,CAAC;YAC/B,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,EACrD;YACA,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC/B;QACD,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACnC,CAAC;;2HAzOU,6BAA6B;+GAA7B,6BAA6B,2MC5B1C,8pHA8GA;4FDlFa,6BAA6B;kBANzC,SAAS;mBAAC;oBACT,QAAQ,EAAE,yBAAyB;oBACnC,WAAW,EAAE,sCAAsC;oBACnD,SAAS,EAAE,CAAC,sCAAsC,CAAC;oBACnD,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;uLAGQ,iBAAiB;sBADvB,KAAK;gBAIC,QAAQ;sBADd,KAAK;gBAIC,KAAK;sBADX,KAAK;gBAIC,WAAW;sBADjB,KAAK;gBAIK,QAAQ;sBADlB,KAAK","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport { SkyDropdownMessage, SkyDropdownMessageType } from '@skyux/popovers';\n\nimport { Subject, forkJoin } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyFormsUtility } from '../../shared/forms-utility';\nimport { SkyTextEditorAdapterService } from '../services/text-editor-adapter.service';\nimport { SkyTextEditorMenuType } from '../types/menu-type';\nimport { SkyTextEditorMergeField } from '../types/text-editor-merge-field';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-text-editor-menubar',\n templateUrl: './text-editor-menubar.component.html',\n styleUrls: ['./text-editor-menubar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyTextEditorMenubarComponent implements OnDestroy, OnInit {\n @Input()\n public editorFocusStream = new Subject();\n\n @Input()\n public editorId: string;\n\n @Input()\n public menus: SkyTextEditorMenuType[] = [];\n\n @Input()\n public mergeFields: SkyTextEditorMergeField[] = [];\n\n @Input()\n public set disabled(value: boolean) {\n const coercedValue = SkyFormsUtility.coerceBooleanProperty(value);\n if (coercedValue !== this.disabled) {\n this._disabled = coercedValue;\n this.changeDetector.markForCheck();\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n\n private _disabled = false;\n\n public editDropdownStream = new Subject<SkyDropdownMessage>();\n\n public editItems: {\n function?: () => void;\n isDivider?: boolean;\n label?: string;\n keyShortcut?: string;\n }[];\n\n public formatDropdownStream = new Subject<SkyDropdownMessage>();\n\n public formatItems: {\n function?: () => void;\n isDivider?: boolean;\n label?: string;\n keyShortcut?: string;\n }[];\n\n public mergeFieldDropdownStream = new Subject<SkyDropdownMessage>();\n\n private ngUnsubscribe = new Subject<void>();\n\n constructor(\n private adapterService: SkyTextEditorAdapterService,\n private changeDetector: ChangeDetectorRef,\n private resources: SkyLibResourcesService\n ) {}\n\n public ngOnInit(): void {\n this.editorFocusStream.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {\n this.closeDropdowns();\n });\n\n forkJoin([\n // Format menu strings.\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_bold_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_bold_key_shortcut'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_italic_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_italic_key_shortcut'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_underline_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_underline_key_shortcut'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_strikethrough_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_format_menu_action_clear_formatting_label'\n ),\n\n // Edit menu string - start at index 8.\n this.resources.getString('skyux_text_editor_edit_menu_action_undo_label'),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_undo_key_shortcut'\n ),\n this.resources.getString('skyux_text_editor_edit_menu_action_redo_label'),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_redo_key_shortcut'\n ),\n this.resources.getString('skyux_text_editor_edit_menu_action_cut_label'),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_cut_key_shortcut'\n ),\n this.resources.getString('skyux_text_editor_edit_menu_action_copy_label'),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_copy_key_shortcut'\n ),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_paste_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_paste_key_shortcut'\n ),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_select_all_label'\n ),\n this.resources.getString(\n 'skyux_text_editor_edit_menu_action_select_all_key_shortcut'\n ),\n ])\n .pipe(take(1))\n .subscribe((resources) => {\n this.formatItems = [\n {\n function: () => this.execCommand('bold'),\n label: resources[0],\n keyShortcut: resources[1],\n },\n {\n function: () => this.execCommand('italic'),\n label: resources[2],\n keyShortcut: resources[3],\n },\n {\n function: () => this.execCommand('underline'),\n label: resources[4],\n keyShortcut: resources[5],\n },\n {\n function: () => this.execCommand('strikethrough'),\n label: resources[6],\n },\n {\n isDivider: true,\n },\n {\n function: () => this.clearFormat(),\n label: resources[7],\n },\n ];\n this.editItems = [\n {\n function: () => this.execCommand('undo'),\n label: resources[8],\n keyShortcut: resources[9],\n },\n {\n function: () => this.execCommand('redo'),\n label: resources[10],\n keyShortcut: resources[11],\n },\n {\n isDivider: true,\n },\n {\n function: () => this.execCommand('cut'),\n label: resources[12],\n keyShortcut: resources[13],\n },\n {\n function: () => this.execCommand('copy'),\n label: resources[14],\n keyShortcut: resources[15],\n },\n {\n function: () => this.execCommand('paste'),\n label: resources[16],\n keyShortcut: resources[17],\n },\n {\n isDivider: true,\n },\n {\n function: () => this.execCommand('selectAll'),\n label: resources[18],\n keyShortcut: resources[19],\n },\n ];\n });\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public execCommand(command: string, value: any = ''): void {\n this.adapterService.execCommand(this.editorId, {\n command: command,\n value: value,\n });\n }\n\n public insertMergeField(field: SkyTextEditorMergeField): void {\n this.execCommand(\n 'insertHTML',\n '<img style=\"display: inline; cursor: grab;\" data-fieldid=\"' +\n field.id +\n '\" data-fielddisplay=\"' +\n field.name +\n '\" src=\"' +\n (field.previewImageUrl ||\n this.adapterService.getMergeFieldDataURI(field.name)) +\n '\">'\n );\n }\n\n private closeDropdowns(): void {\n this.editDropdownStream.next({ type: SkyDropdownMessageType.Close });\n this.formatDropdownStream.next({ type: SkyDropdownMessageType.Close });\n this.mergeFieldDropdownStream.next({ type: SkyDropdownMessageType.Close });\n }\n\n private clearFormat(): void {\n const currentSelection = this.adapterService.getCurrentSelection(\n this.editorId\n );\n /* istanbul ignore else */\n if (\n currentSelection.rangeCount > 0 &&\n currentSelection.getRangeAt(0).toString().length <= 0\n ) {\n this.execCommand('selectAll');\n }\n this.execCommand('removeFormat');\n }\n}\n","<sky-toolbar-item\n *ngFor=\"let menu of menus\"\n class=\"sky-text-editor-menu\"\n [ngClass]=\"'sky-text-editor-menu-' + menu\"\n>\n <ng-container [ngSwitch]=\"menu\">\n <ng-container *ngSwitchCase=\"'edit'\">\n <sky-dropdown\n label=\"Edit menu\"\n [disabled]=\"disabled\"\n [messageStream]=\"editDropdownStream\"\n >\n <sky-dropdown-button>\n {{\n 'skyux_text_editor_menubar_dropdown_button_edit_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let editItem of editItems\">\n <button\n *ngIf=\"!editItem.isDivider\"\n type=\"button\"\n (click)=\"editItem.function()\"\n >\n {{ editItem.label }}\n <div\n *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\n *ngIf=\"editItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\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 {{\n 'skyux_text_editor_menubar_dropdown_button_format_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let formatItem of formatItems\">\n <button\n *ngIf=\"!formatItem.isDivider\"\n type=\"button\"\n (click)=\"formatItem.function()\"\n >\n {{ formatItem.label }}\n <div\n *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\n *ngIf=\"formatItem.isDivider\"\n class=\"sky-text-editor-dropdown-item-divider\"\n role=\"divider\"\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\n *ngIf=\"mergeFields && mergeFields.length > 0\"\n label=\"Insert merge field\"\n [disabled]=\"disabled\"\n [messageStream]=\"mergeFieldDropdownStream\"\n >\n <sky-dropdown-button>\n {{\n 'skyux_text_editor_menubar_dropdown_button_insert_label'\n | skyLibResources\n }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let mergeField of mergeFields\">\n <button type=\"button\" (click)=\"insertMergeField(mergeField)\">\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"]}
|