@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.
Files changed (128) hide show
  1. package/README.md +7 -1
  2. package/bundles/skyux-text-editor.umd.js +270 -170
  3. package/documentation.json +109 -57
  4. package/esm2015/index.js +15 -0
  5. package/esm2015/index.js.map +1 -0
  6. package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js +39 -0
  7. package/esm2015/lib/modules/rich-text-display/rich-text-display.component.js.map +1 -0
  8. package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js +18 -0
  9. package/esm2015/lib/modules/rich-text-display/rich-text-display.module.js.map +1 -0
  10. package/esm2015/lib/modules/shared/forms-utility.js +10 -0
  11. package/esm2015/lib/modules/shared/forms-utility.js.map +1 -0
  12. package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js +106 -0
  13. package/esm2015/lib/modules/shared/sky-text-editor-resources.module.js.map +1 -0
  14. package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js +42 -0
  15. package/esm2015/lib/modules/text-editor/defaults/font-list-defaults.js.map +1 -0
  16. package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js +7 -0
  17. package/esm2015/lib/modules/text-editor/defaults/font-size-list-defaults.js.map +1 -0
  18. package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js +5 -0
  19. package/esm2015/lib/modules/text-editor/defaults/menu-defaults.js.map +1 -0
  20. package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js +15 -0
  21. package/esm2015/lib/modules/text-editor/defaults/style-state-defaults.js.map +1 -0
  22. package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js +12 -0
  23. package/esm2015/lib/modules/text-editor/defaults/toolbar-action-defaults.js.map +1 -0
  24. package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js +196 -0
  25. package/esm2015/lib/modules/text-editor/menubar/text-editor-menubar.component.js.map +1 -0
  26. package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js +473 -0
  27. package/esm2015/lib/modules/text-editor/services/text-editor-adapter.service.js.map +1 -0
  28. package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js +80 -0
  29. package/esm2015/lib/modules/text-editor/services/text-editor-selection.service.js.map +1 -0
  30. package/esm2015/lib/modules/text-editor/services/text-editor.service.js +61 -0
  31. package/esm2015/lib/modules/text-editor/services/text-editor.service.js.map +1 -0
  32. package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js +38 -0
  33. package/esm2015/lib/modules/text-editor/services/text-sanitization.service.js.map +1 -0
  34. package/esm2015/lib/modules/text-editor/text-editor.component.js +322 -0
  35. package/esm2015/lib/modules/text-editor/text-editor.component.js.map +1 -0
  36. package/esm2015/lib/modules/text-editor/text-editor.module.js +99 -0
  37. package/esm2015/lib/modules/text-editor/text-editor.module.js.map +1 -0
  38. package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js +175 -0
  39. package/esm2015/lib/modules/text-editor/toolbar/text-editor-toolbar.component.js.map +1 -0
  40. package/esm2015/lib/modules/text-editor/types/editor-command.js +2 -0
  41. package/esm2015/lib/modules/text-editor/types/editor-command.js.map +1 -0
  42. package/esm2015/lib/modules/text-editor/types/editor-setting.js +2 -0
  43. package/esm2015/lib/modules/text-editor/types/editor-setting.js.map +1 -0
  44. package/esm2015/lib/modules/text-editor/types/font-state.js +2 -0
  45. package/esm2015/lib/modules/text-editor/types/font-state.js.map +1 -0
  46. package/esm2015/lib/modules/text-editor/types/menu-type.js +2 -0
  47. package/esm2015/lib/modules/text-editor/types/menu-type.js.map +1 -0
  48. package/esm2015/lib/modules/text-editor/types/style-state.js +2 -0
  49. package/esm2015/lib/modules/text-editor/types/style-state.js.map +1 -0
  50. package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js +2 -0
  51. package/esm2015/lib/modules/text-editor/types/text-editor-merge-field.js.map +1 -0
  52. package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js +2 -0
  53. package/esm2015/lib/modules/text-editor/types/toolbar-action-type.js.map +1 -0
  54. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js +6 -0
  55. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-context.js.map +1 -0
  56. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js +2 -0
  57. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal-result.js.map +1 -0
  58. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js +121 -0
  59. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-modal.component.js.map +1 -0
  60. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js +9 -0
  61. package/esm2015/lib/modules/text-editor/url-modal/text-editor-url-target.js.map +1 -0
  62. package/esm2015/skyux-text-editor.js +2 -2
  63. package/esm2015/skyux-text-editor.js.map +1 -0
  64. package/fesm2015/skyux-text-editor.js +332 -232
  65. package/fesm2015/skyux-text-editor.js.map +1 -1
  66. package/index.d.ts +12 -0
  67. package/{modules → lib/modules}/rich-text-display/rich-text-display.component.d.ts +0 -0
  68. package/{modules → lib/modules}/rich-text-display/rich-text-display.module.d.ts +0 -0
  69. package/{modules → lib/modules}/shared/forms-utility.d.ts +0 -0
  70. package/{modules → lib/modules}/shared/sky-text-editor-resources.module.d.ts +0 -0
  71. package/{modules → lib/modules}/text-editor/defaults/font-list-defaults.d.ts +0 -0
  72. package/{modules → lib/modules}/text-editor/defaults/font-size-list-defaults.d.ts +0 -0
  73. package/{modules → lib/modules}/text-editor/defaults/menu-defaults.d.ts +0 -0
  74. package/{modules → lib/modules}/text-editor/defaults/style-state-defaults.d.ts +0 -0
  75. package/{modules → lib/modules}/text-editor/defaults/toolbar-action-defaults.d.ts +0 -0
  76. package/{modules → lib/modules}/text-editor/menubar/text-editor-menubar.component.d.ts +0 -0
  77. package/{modules → lib/modules}/text-editor/services/text-editor-adapter.service.d.ts +0 -0
  78. package/{modules → lib/modules}/text-editor/services/text-editor-selection.service.d.ts +0 -0
  79. package/{modules → lib/modules}/text-editor/services/text-editor.service.d.ts +0 -0
  80. package/{modules → lib/modules}/text-editor/services/text-sanitization.service.d.ts +0 -0
  81. package/{modules → lib/modules}/text-editor/text-editor.component.d.ts +0 -0
  82. package/{modules → lib/modules}/text-editor/text-editor.module.d.ts +0 -0
  83. package/{modules → lib/modules}/text-editor/toolbar/text-editor-toolbar.component.d.ts +0 -0
  84. package/{modules → lib/modules}/text-editor/types/editor-command.d.ts +0 -0
  85. package/{modules → lib/modules}/text-editor/types/editor-setting.d.ts +0 -0
  86. package/{modules → lib/modules}/text-editor/types/font-state.d.ts +0 -0
  87. package/{modules → lib/modules}/text-editor/types/menu-type.d.ts +0 -0
  88. package/{modules → lib/modules}/text-editor/types/style-state.d.ts +0 -0
  89. package/{modules → lib/modules}/text-editor/types/text-editor-merge-field.d.ts +0 -0
  90. package/{modules → lib/modules}/text-editor/types/toolbar-action-type.d.ts +0 -0
  91. package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal-context.d.ts +0 -0
  92. package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal-result.d.ts +0 -0
  93. package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-modal.component.d.ts +0 -0
  94. package/{modules → lib/modules}/text-editor/url-modal/text-editor-url-target.d.ts +0 -0
  95. package/package.json +27 -13
  96. package/skyux-text-editor.d.ts +1 -1
  97. package/LICENSE +0 -21
  98. package/bundles/skyux-text-editor.umd.js.map +0 -1
  99. package/esm2015/modules/rich-text-display/rich-text-display.component.js +0 -37
  100. package/esm2015/modules/rich-text-display/rich-text-display.module.js +0 -26
  101. package/esm2015/modules/shared/forms-utility.js +0 -10
  102. package/esm2015/modules/shared/sky-text-editor-resources.module.js +0 -41
  103. package/esm2015/modules/text-editor/defaults/font-list-defaults.js +0 -42
  104. package/esm2015/modules/text-editor/defaults/font-size-list-defaults.js +0 -5
  105. package/esm2015/modules/text-editor/defaults/menu-defaults.js +0 -8
  106. package/esm2015/modules/text-editor/defaults/style-state-defaults.js +0 -15
  107. package/esm2015/modules/text-editor/defaults/toolbar-action-defaults.js +0 -12
  108. package/esm2015/modules/text-editor/menubar/text-editor-menubar.component.js +0 -189
  109. package/esm2015/modules/text-editor/services/text-editor-adapter.service.js +0 -460
  110. package/esm2015/modules/text-editor/services/text-editor-selection.service.js +0 -76
  111. package/esm2015/modules/text-editor/services/text-editor.service.js +0 -61
  112. package/esm2015/modules/text-editor/services/text-sanitization.service.js +0 -38
  113. package/esm2015/modules/text-editor/text-editor.component.js +0 -307
  114. package/esm2015/modules/text-editor/text-editor.module.js +0 -101
  115. package/esm2015/modules/text-editor/toolbar/text-editor-toolbar.component.js +0 -163
  116. package/esm2015/modules/text-editor/types/editor-command.js +0 -2
  117. package/esm2015/modules/text-editor/types/editor-setting.js +0 -2
  118. package/esm2015/modules/text-editor/types/font-state.js +0 -2
  119. package/esm2015/modules/text-editor/types/menu-type.js +0 -2
  120. package/esm2015/modules/text-editor/types/style-state.js +0 -2
  121. package/esm2015/modules/text-editor/types/text-editor-merge-field.js +0 -2
  122. package/esm2015/modules/text-editor/types/toolbar-action-type.js +0 -2
  123. package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-context.js +0 -6
  124. package/esm2015/modules/text-editor/url-modal/text-editor-url-modal-result.js +0 -2
  125. package/esm2015/modules/text-editor/url-modal/text-editor-url-modal.component.js +0 -112
  126. package/esm2015/modules/text-editor/url-modal/text-editor-url-target.js +0 -9
  127. package/esm2015/public-api.js +0 -15
  128. package/public-api.d.ts +0 -12
@@ -67,12 +67,12 @@
67
67
  };
68
68
  return SkyTextSanitizationService;
69
69
  }());
70
- SkyTextSanitizationService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextSanitizationService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
71
- SkyTextSanitizationService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextSanitizationService, providedIn: 'root' });
72
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextSanitizationService, decorators: [{
70
+ SkyTextSanitizationService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextSanitizationService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
71
+ SkyTextSanitizationService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextSanitizationService, providedIn: 'root' });
72
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextSanitizationService, decorators: [{
73
73
  type: i0.Injectable,
74
74
  args: [{
75
- providedIn: 'root'
75
+ providedIn: 'root',
76
76
  }]
77
77
  }] });
78
78
 
@@ -102,13 +102,13 @@
102
102
  });
103
103
  return SkyRichTextDisplayComponent;
104
104
  }());
105
- SkyRichTextDisplayComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayComponent, deps: [{ token: i1__namespace.DomSanitizer }, { token: SkyTextSanitizationService }], target: i0__namespace.ɵɵFactoryTarget.Component });
106
- SkyRichTextDisplayComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyRichTextDisplayComponent, selector: "sky-rich-text-display", inputs: { richText: "richText" }, ngImport: i0__namespace, template: "<span\n class=\"sky-rich-text-display-text\"\n [innerHTML]=\"sanitizedText\"\n>\n</span>\n" });
107
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayComponent, decorators: [{
105
+ SkyRichTextDisplayComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayComponent, deps: [{ token: i1__namespace.DomSanitizer }, { token: SkyTextSanitizationService }], target: i0__namespace.ɵɵFactoryTarget.Component });
106
+ SkyRichTextDisplayComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyRichTextDisplayComponent, selector: "sky-rich-text-display", inputs: { richText: "richText" }, ngImport: i0__namespace, template: "<span class=\"sky-rich-text-display-text\" [innerHTML]=\"sanitizedText\"> </span>\n" });
107
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayComponent, decorators: [{
108
108
  type: i0.Component,
109
109
  args: [{
110
110
  selector: 'sky-rich-text-display',
111
- templateUrl: './rich-text-display.component.html'
111
+ template: "<span class=\"sky-rich-text-display-text\" [innerHTML]=\"sanitizedText\"> </span>\n",
112
112
  }]
113
113
  }], ctorParameters: function () { return [{ type: i1__namespace.DomSanitizer }, { type: SkyTextSanitizationService }]; }, propDecorators: { richText: [{
114
114
  type: i0.Input
@@ -119,23 +119,15 @@
119
119
  }
120
120
  return SkyRichTextDisplayModule;
121
121
  }());
122
- SkyRichTextDisplayModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
123
- SkyRichTextDisplayModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayModule, declarations: [SkyRichTextDisplayComponent], imports: [i5.CommonModule], exports: [SkyRichTextDisplayComponent] });
124
- SkyRichTextDisplayModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayModule, imports: [[
125
- i5.CommonModule
126
- ]] });
127
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyRichTextDisplayModule, decorators: [{
122
+ SkyRichTextDisplayModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
123
+ SkyRichTextDisplayModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayModule, declarations: [SkyRichTextDisplayComponent], imports: [i5.CommonModule], exports: [SkyRichTextDisplayComponent] });
124
+ SkyRichTextDisplayModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayModule, imports: [[i5.CommonModule]] });
125
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyRichTextDisplayModule, decorators: [{
128
126
  type: i0.NgModule,
129
127
  args: [{
130
- imports: [
131
- i5.CommonModule
132
- ],
133
- exports: [
134
- SkyRichTextDisplayComponent
135
- ],
136
- declarations: [
137
- SkyRichTextDisplayComponent
138
- ]
128
+ imports: [i5.CommonModule],
129
+ exports: [SkyRichTextDisplayComponent],
130
+ declarations: [SkyRichTextDisplayComponent],
139
131
  }]
140
132
  }] });
141
133
 
@@ -146,7 +138,68 @@
146
138
  * To update this file, simply rerun the command.
147
139
  */
148
140
  var RESOURCES = {
149
- '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" } },
141
+ 'EN-US': {
142
+ skyux_text_editor_format_menu_action_bold_label: { message: 'Bold' },
143
+ skyux_text_editor_format_menu_action_bold_key_shortcut: {
144
+ message: 'Ctrl+B',
145
+ },
146
+ skyux_text_editor_format_menu_action_italic_label: { message: 'Italic' },
147
+ skyux_text_editor_format_menu_action_italic_key_shortcut: {
148
+ message: 'Ctrl+I',
149
+ },
150
+ skyux_text_editor_format_menu_action_underline_label: {
151
+ message: 'Underline',
152
+ },
153
+ skyux_text_editor_format_menu_action_underline_key_shortcut: {
154
+ message: 'Ctrl+U',
155
+ },
156
+ skyux_text_editor_format_menu_action_strikethrough_label: {
157
+ message: 'Strikethrough',
158
+ },
159
+ skyux_text_editor_format_menu_action_clear_formatting_label: {
160
+ message: 'Clear formatting',
161
+ },
162
+ skyux_text_editor_edit_menu_action_undo_label: { message: 'Undo' },
163
+ skyux_text_editor_edit_menu_action_undo_key_shortcut: { message: 'Ctrl+Z' },
164
+ skyux_text_editor_edit_menu_action_redo_label: { message: 'Redo' },
165
+ skyux_text_editor_edit_menu_action_redo_key_shortcut: { message: 'Ctrl+Y' },
166
+ skyux_text_editor_edit_menu_action_cut_label: { message: 'Cut' },
167
+ skyux_text_editor_edit_menu_action_cut_key_shortcut: { message: 'Ctrl+X' },
168
+ skyux_text_editor_edit_menu_action_copy_label: { message: 'Copy' },
169
+ skyux_text_editor_edit_menu_action_copy_key_shortcut: { message: 'Ctrl+C' },
170
+ skyux_text_editor_edit_menu_action_paste_label: { message: 'Paste' },
171
+ skyux_text_editor_edit_menu_action_paste_key_shortcut: {
172
+ message: 'Ctrl+V',
173
+ },
174
+ skyux_text_editor_edit_menu_action_select_all_label: {
175
+ message: 'Select all',
176
+ },
177
+ skyux_text_editor_edit_menu_action_select_all_key_shortcut: {
178
+ message: 'Ctrl+A',
179
+ },
180
+ skyux_text_editor_menubar_dropdown_button_edit_label: { message: 'Edit' },
181
+ skyux_text_editor_menubar_dropdown_button_format_label: {
182
+ message: 'Format',
183
+ },
184
+ skyux_text_editor_menubar_dropdown_button_insert_label: {
185
+ message: 'Insert merge field',
186
+ },
187
+ skyux_text_editor_url_modal_header_label: { message: 'Create link' },
188
+ skyux_text_editor_url_modal_url_label: {
189
+ message: 'Enter a URL to link to:',
190
+ },
191
+ skyux_text_editor_url_modal_open_label: {
192
+ message: 'Where should it open?',
193
+ },
194
+ skyux_text_editor_url_modal_current_option_label: {
195
+ message: 'Current window',
196
+ },
197
+ skyux_text_editor_url_modal_new_option_label: { message: 'New window' },
198
+ skyux_text_editor_url_modal_email_label: { message: 'Email address' },
199
+ skyux_text_editor_url_modal_subject_label: { message: 'Subject line' },
200
+ skyux_text_editor_url_modal_save_button_label: { message: 'Save' },
201
+ skyux_text_editor_url_modal_cancel_button_label: { message: 'Cancel' },
202
+ },
150
203
  };
151
204
  var SkyTextEditorResourcesProvider = /** @class */ (function () {
152
205
  function SkyTextEditorResourcesProvider() {
@@ -164,22 +217,26 @@
164
217
  }
165
218
  return SkyTextEditorResourcesModule;
166
219
  }());
167
- SkyTextEditorResourcesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
168
- SkyTextEditorResourcesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, exports: [i2.SkyI18nModule] });
169
- SkyTextEditorResourcesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, providers: [{
220
+ SkyTextEditorResourcesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
221
+ SkyTextEditorResourcesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, exports: [i2.SkyI18nModule] });
222
+ SkyTextEditorResourcesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, providers: [
223
+ {
170
224
  provide: i2.SKY_LIB_RESOURCES_PROVIDERS,
171
225
  useClass: SkyTextEditorResourcesProvider,
172
- multi: true
173
- }], imports: [i2.SkyI18nModule] });
174
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, decorators: [{
226
+ multi: true,
227
+ },
228
+ ], imports: [i2.SkyI18nModule] });
229
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorResourcesModule, decorators: [{
175
230
  type: i0.NgModule,
176
231
  args: [{
177
232
  exports: [i2.SkyI18nModule],
178
- providers: [{
233
+ providers: [
234
+ {
179
235
  provide: i2.SKY_LIB_RESOURCES_PROVIDERS,
180
236
  useClass: SkyTextEditorResourcesProvider,
181
- multi: true
182
- }]
237
+ multi: true,
238
+ },
239
+ ],
183
240
  }]
184
241
  }] });
185
242
 
@@ -520,40 +577,40 @@
520
577
  var FONT_LIST_DEFAULTS = [
521
578
  {
522
579
  name: 'Blackbaud Sans',
523
- value: '"Blackbaud Sans", Arial, sans-serif'
580
+ value: '"Blackbaud Sans", Arial, sans-serif',
524
581
  },
525
582
  {
526
583
  name: 'Arial',
527
- value: 'Arial'
584
+ value: 'Arial',
528
585
  },
529
586
  {
530
587
  name: 'Arial Black',
531
- value: '"Arial Black"'
588
+ value: '"Arial Black"',
532
589
  },
533
590
  {
534
591
  name: 'Courier New',
535
- value: '"Courier New"'
592
+ value: '"Courier New"',
536
593
  },
537
594
  {
538
595
  name: 'Georgia',
539
- value: 'Georgia, serif'
596
+ value: 'Georgia, serif',
540
597
  },
541
598
  {
542
599
  name: 'Tahoma',
543
- value: 'Tahoma, Geneva, sans-serif'
600
+ value: 'Tahoma, Geneva, sans-serif',
544
601
  },
545
602
  {
546
603
  name: 'Times New Roman',
547
- value: '"Times New Roman"'
604
+ value: '"Times New Roman"',
548
605
  },
549
606
  {
550
607
  name: 'Trebuchet MS',
551
- value: '"Trebuchet MS", sans-serif'
608
+ value: '"Trebuchet MS", sans-serif',
552
609
  },
553
610
  {
554
611
  name: 'Verdana',
555
- value: 'Verdana, Geneva, sans-serif'
556
- }
612
+ value: 'Verdana, Geneva, sans-serif',
613
+ },
557
614
  ];
558
615
 
559
616
  /**
@@ -567,7 +624,7 @@
567
624
  boldState: false,
568
625
  italicState: false,
569
626
  underlineState: false,
570
- linkState: false
627
+ linkState: false,
571
628
  };
572
629
 
573
630
  /**
@@ -586,10 +643,12 @@
586
643
  function SkyTextEditorSelectionService() {
587
644
  }
588
645
  SkyTextEditorSelectionService.prototype.isElementSelected = function (documentEl, element) {
589
- var selectedNode = this.getCurrentSelection(documentEl).anchorNode;
646
+ var selectedNode = this.getCurrentSelection(documentEl)
647
+ .anchorNode;
590
648
  /* istanbul ignore next */
591
- return selectedNode &&
592
- (element.contains(selectedNode) || (selectedNode.parentNode && element.contains(selectedNode.parentNode)));
649
+ return (selectedNode &&
650
+ (element.contains(selectedNode) ||
651
+ (selectedNode.parentNode && element.contains(selectedNode.parentNode))));
593
652
  };
594
653
  SkyTextEditorSelectionService.prototype.getCurrentSelection = function (documentEl) {
595
654
  return documentEl.getSelection();
@@ -602,7 +661,8 @@
602
661
  selection.getRangeAt &&
603
662
  selection.getRangeAt(0).commonAncestorContainer) {
604
663
  selectedEl = selection.getRangeAt(0).commonAncestorContainer;
605
- selectedEl = selectedEl.nodeType !== 1 ? selectedEl.parentElement : selectedEl;
664
+ selectedEl =
665
+ selectedEl.nodeType !== 1 ? selectedEl.parentElement : selectedEl;
606
666
  }
607
667
  else if (selection && selection.type !== 'Control') {
608
668
  selectedEl = selection.createRange().parentElement();
@@ -621,7 +681,8 @@
621
681
  return sel.getRangeAt(0);
622
682
  }
623
683
  }
624
- else if (documentEl.getSelection() && documentEl.getSelection().getRangeAt) {
684
+ else if (documentEl.getSelection() &&
685
+ documentEl.getSelection().getRangeAt) {
625
686
  return documentEl.getSelection().getRangeAt(0);
626
687
  }
627
688
  };
@@ -647,12 +708,12 @@
647
708
  };
648
709
  return SkyTextEditorSelectionService;
649
710
  }());
650
- SkyTextEditorSelectionService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorSelectionService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
651
- SkyTextEditorSelectionService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorSelectionService, providedIn: 'root' });
652
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorSelectionService, decorators: [{
711
+ SkyTextEditorSelectionService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorSelectionService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
712
+ SkyTextEditorSelectionService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorSelectionService, providedIn: 'root' });
713
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorSelectionService, decorators: [{
653
714
  type: i0.Injectable,
654
715
  args: [{
655
- providedIn: 'root'
716
+ providedIn: 'root',
656
717
  }]
657
718
  }] });
658
719
 
@@ -707,12 +768,12 @@
707
768
  };
708
769
  return SkyTextEditorService;
709
770
  }());
710
- SkyTextEditorService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
711
- SkyTextEditorService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorService, providedIn: 'root' });
712
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorService, decorators: [{
771
+ SkyTextEditorService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
772
+ SkyTextEditorService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorService, providedIn: 'root' });
773
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorService, decorators: [{
713
774
  type: i0.Injectable,
714
775
  args: [{
715
- providedIn: 'root'
776
+ providedIn: 'root',
716
777
  }]
717
778
  }] });
718
779
 
@@ -826,7 +887,7 @@
826
887
  boldState: documentEl.queryCommandState('Bold'),
827
888
  italicState: documentEl.queryCommandState('Italic'),
828
889
  underlineState: documentEl.queryCommandState('Underline'),
829
- linkState: this.hasLink(id)
890
+ linkState: this.hasLink(id),
830
891
  };
831
892
  }
832
893
  /* istanbul ignore next */
@@ -853,7 +914,9 @@
853
914
  var windowEl = this.getContentWindowEl(id);
854
915
  var iframeDocumentEl = this.getIframeDocumentEl(id);
855
916
  var currentSelection = this.selectionService.getCurrentSelectionRange(iframeDocumentEl, windowEl);
856
- var cursorIsNotActiveAndHasReset = currentSelection && (currentSelection.startOffset === 0 && currentSelection.endOffset === 0);
917
+ var cursorIsNotActiveAndHasReset = currentSelection &&
918
+ currentSelection.startOffset === 0 &&
919
+ currentSelection.endOffset === 0;
857
920
  if (!this.editorSelected(id) || cursorIsNotActiveAndHasReset) {
858
921
  // focus the end of the editor
859
922
  var documentEl = this.windowService.nativeWindow.document;
@@ -889,8 +952,10 @@
889
952
  var anchorEl = this.getSelectedAnchorTag(editorId);
890
953
  if (anchorEl && anchorEl.href) {
891
954
  link = {
892
- target: anchorEl.getAttribute('target') === '_blank' ? UrlTarget.NewWindow : UrlTarget.None,
893
- url: anchorEl.href
955
+ target: anchorEl.getAttribute('target') === '_blank'
956
+ ? UrlTarget.NewWindow
957
+ : UrlTarget.None,
958
+ url: anchorEl.href,
894
959
  };
895
960
  }
896
961
  return link;
@@ -918,7 +983,7 @@
918
983
  for (var fontElements_1 = __values(fontElements), fontElements_1_1 = fontElements_1.next(); !fontElements_1_1.done; fontElements_1_1 = fontElements_1.next()) {
919
984
  var element = fontElements_1_1.value;
920
985
  element.removeAttribute('size');
921
- element.style.fontSize = (fontSize + 'px');
986
+ element.style.fontSize = fontSize + 'px';
922
987
  }
923
988
  }
924
989
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
@@ -934,9 +999,9 @@
934
999
  };
935
1000
  SkyTextEditorAdapterService.prototype.removeObservers = function (setting) {
936
1001
  /* istanbul ignore next */
937
- var documentEl = setting.iframeElementRef.contentWindow ?
938
- setting.iframeElementRef.contentWindow.document :
939
- setting.iframeElementRef.contentDocument;
1002
+ var documentEl = setting.iframeElementRef.contentWindow
1003
+ ? setting.iframeElementRef.contentWindow.document
1004
+ : setting.iframeElementRef.contentDocument;
940
1005
  setting.selectionChangeObservable.complete();
941
1006
  setting.clickObservable.complete();
942
1007
  setting.commandChangeObservable.complete();
@@ -968,13 +1033,14 @@
968
1033
  }
969
1034
  var tempRange = document.createRange();
970
1035
  tempRange.selectNodeContents(element);
971
- return (selectedRange.compareBoundaryPoints(Range.START_TO_START, tempRange) !== -1
972
- && selectedRange.compareBoundaryPoints(Range.START_TO_END, tempRange) !== 1) ||
973
- (selectedRange.compareBoundaryPoints(Range.END_TO_START, tempRange) !== -1
974
- && selectedRange.compareBoundaryPoints(Range.END_TO_END, tempRange) !== 1);
1036
+ return ((selectedRange.compareBoundaryPoints(Range.START_TO_START, tempRange) !== -1 &&
1037
+ selectedRange.compareBoundaryPoints(Range.START_TO_END, tempRange) !== 1) ||
1038
+ (selectedRange.compareBoundaryPoints(Range.END_TO_START, tempRange) !== -1 &&
1039
+ selectedRange.compareBoundaryPoints(Range.END_TO_END, tempRange) !==
1040
+ 1));
975
1041
  }
976
1042
  // Normal non-IE
977
- return !!element && !!element.href && selectedRange.intersectsNode(element);
1043
+ return (!!element && !!element.href && selectedRange.intersectsNode(element));
978
1044
  });
979
1045
  };
980
1046
  SkyTextEditorAdapterService.prototype.getIframeDocumentEl = function (id) {
@@ -1011,9 +1077,9 @@
1011
1077
  };
1012
1078
  SkyTextEditorAdapterService.prototype.createObservers = function (id, element) {
1013
1079
  /* istanbul ignore next */
1014
- var documentEl = element.contentWindow ?
1015
- element.contentWindow.document :
1016
- element.contentDocument;
1080
+ var documentEl = element.contentWindow
1081
+ ? element.contentWindow.document
1082
+ : element.contentDocument;
1017
1083
  // Firefox bug where we need to open/close to cancel load so it doesn't overwrite attrs
1018
1084
  documentEl.open();
1019
1085
  documentEl.close();
@@ -1042,7 +1108,7 @@
1042
1108
  clickListener: clickListener,
1043
1109
  inputListener: inputListener,
1044
1110
  pasteListener: pasteListener,
1045
- selectionListener: selectionListener
1111
+ selectionListener: selectionListener,
1046
1112
  };
1047
1113
  };
1048
1114
  /* istanbul ignore next */
@@ -1064,11 +1130,15 @@
1064
1130
  if (typeof commandValue === 'number') {
1065
1131
  /* istanbul ignore next */
1066
1132
  // tslint:disable-next-line: no-bitwise
1067
- return 'rgb(' + (commandValue & 0xFF) + ', ' +
1133
+ return ('rgb(' +
1134
+ (commandValue & 0xff) +
1135
+ ', ' +
1068
1136
  // tslint:disable-next-line: no-bitwise
1069
- ((commandValue & 0xFF00) >> 8) + ', ' +
1137
+ ((commandValue & 0xff00) >> 8) +
1138
+ ', ' +
1070
1139
  // tslint:disable-next-line: no-bitwise
1071
- ((commandValue & 0xFF0000) >> 16) + ')';
1140
+ ((commandValue & 0xff0000) >> 16) +
1141
+ ')');
1072
1142
  }
1073
1143
  // Firefox uses 'Transparent' instead of a color value
1074
1144
  /* istanbul ignore next */
@@ -1143,8 +1213,8 @@
1143
1213
  }
1144
1214
  var removableElements = orphanElements.filter(function (element) {
1145
1215
  var tagName = element.tagName.toUpperCase();
1146
- return (tagName === 'FONT' || tagName === 'SPAN') &&
1147
- (element.attributes.length === 0 || !element.hasChildNodes);
1216
+ return ((tagName === 'FONT' || tagName === 'SPAN') &&
1217
+ (element.attributes.length === 0 || !element.hasChildNodes));
1148
1218
  });
1149
1219
  try {
1150
1220
  for (var removableElements_1 = __values(removableElements), removableElements_1_1 = removableElements_1.next(); !removableElements_1_1.done; removableElements_1_1 = removableElements_1.next()) {
@@ -1169,7 +1239,8 @@
1169
1239
  };
1170
1240
  // Certain values are encoded in html and need to be decoded
1171
1241
  SkyTextEditorAdapterService.prototype.replaceHtmlCodes = function (str) {
1172
- return str.replace(/&nbsp;/, String.fromCharCode(160))
1242
+ return str
1243
+ .replace(/&nbsp;/, String.fromCharCode(160))
1173
1244
  .replace(/&lt;/g, '<')
1174
1245
  .replace(/&gt;/g, '>')
1175
1246
  .replace(/&amp;/g, '&');
@@ -1187,12 +1258,12 @@
1187
1258
  };
1188
1259
  return SkyTextEditorAdapterService;
1189
1260
  }());
1190
- SkyTextEditorAdapterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorAdapterService, deps: [{ token: SkyTextEditorSelectionService }, { token: SkyTextEditorService }, { token: i3__namespace.SkyAppWindowRef }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
1191
- SkyTextEditorAdapterService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorAdapterService, providedIn: 'root' });
1192
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorAdapterService, decorators: [{
1261
+ SkyTextEditorAdapterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorAdapterService, deps: [{ token: SkyTextEditorSelectionService }, { token: SkyTextEditorService }, { token: i3__namespace.SkyAppWindowRef }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
1262
+ SkyTextEditorAdapterService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorAdapterService, providedIn: 'root' });
1263
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorAdapterService, decorators: [{
1193
1264
  type: i0.Injectable,
1194
1265
  args: [{
1195
- providedIn: 'root'
1266
+ providedIn: 'root',
1196
1267
  }]
1197
1268
  }], ctorParameters: function () { return [{ type: SkyTextEditorSelectionService }, { type: SkyTextEditorService }, { type: i3__namespace.SkyAppWindowRef }]; } });
1198
1269
 
@@ -1229,8 +1300,7 @@
1229
1300
  });
1230
1301
  SkyTextEditorMenubarComponent.prototype.ngOnInit = function () {
1231
1302
  var _this = this;
1232
- this.editorFocusStream
1233
- .pipe(operators.takeUntil(this.ngUnsubscribe)).subscribe(function () {
1303
+ this.editorFocusStream.pipe(operators.takeUntil(this.ngUnsubscribe)).subscribe(function () {
1234
1304
  _this.closeDropdowns();
1235
1305
  });
1236
1306
  rxjs.forkJoin([
@@ -1255,7 +1325,7 @@
1255
1325
  this.resources.getString('skyux_text_editor_edit_menu_action_paste_label'),
1256
1326
  this.resources.getString('skyux_text_editor_edit_menu_action_paste_key_shortcut'),
1257
1327
  this.resources.getString('skyux_text_editor_edit_menu_action_select_all_label'),
1258
- this.resources.getString('skyux_text_editor_edit_menu_action_select_all_key_shortcut')
1328
+ this.resources.getString('skyux_text_editor_edit_menu_action_select_all_key_shortcut'),
1259
1329
  ])
1260
1330
  .pipe(operators.take(1))
1261
1331
  .subscribe(function (resources) {
@@ -1263,67 +1333,67 @@
1263
1333
  {
1264
1334
  function: function () { return _this.execCommand('bold'); },
1265
1335
  label: resources[0],
1266
- keyShortcut: resources[1]
1336
+ keyShortcut: resources[1],
1267
1337
  },
1268
1338
  {
1269
1339
  function: function () { return _this.execCommand('italic'); },
1270
1340
  label: resources[2],
1271
- keyShortcut: resources[3]
1341
+ keyShortcut: resources[3],
1272
1342
  },
1273
1343
  {
1274
1344
  function: function () { return _this.execCommand('underline'); },
1275
1345
  label: resources[4],
1276
- keyShortcut: resources[5]
1346
+ keyShortcut: resources[5],
1277
1347
  },
1278
1348
  {
1279
1349
  function: function () { return _this.execCommand('strikethrough'); },
1280
- label: resources[6]
1350
+ label: resources[6],
1281
1351
  },
1282
1352
  {
1283
- isDivider: true
1353
+ isDivider: true,
1284
1354
  },
1285
1355
  {
1286
1356
  function: function () { return _this.clearFormat(); },
1287
- label: resources[7]
1288
- }
1357
+ label: resources[7],
1358
+ },
1289
1359
  ];
1290
1360
  _this.editItems = [
1291
1361
  {
1292
1362
  function: function () { return _this.execCommand('undo'); },
1293
1363
  label: resources[8],
1294
- keyShortcut: resources[9]
1364
+ keyShortcut: resources[9],
1295
1365
  },
1296
1366
  {
1297
1367
  function: function () { return _this.execCommand('redo'); },
1298
1368
  label: resources[10],
1299
- keyShortcut: resources[11]
1369
+ keyShortcut: resources[11],
1300
1370
  },
1301
1371
  {
1302
- isDivider: true
1372
+ isDivider: true,
1303
1373
  },
1304
1374
  {
1305
1375
  function: function () { return _this.execCommand('cut'); },
1306
1376
  label: resources[12],
1307
- keyShortcut: resources[13]
1377
+ keyShortcut: resources[13],
1308
1378
  },
1309
1379
  {
1310
1380
  function: function () { return _this.execCommand('copy'); },
1311
1381
  label: resources[14],
1312
- keyShortcut: resources[15]
1382
+ keyShortcut: resources[15],
1313
1383
  },
1314
1384
  {
1315
1385
  function: function () { return _this.execCommand('paste'); },
1316
1386
  label: resources[16],
1317
- keyShortcut: resources[17]
1387
+ keyShortcut: resources[17],
1318
1388
  },
1319
1389
  {
1320
- isDivider: true
1390
+ isDivider: true,
1321
1391
  },
1322
1392
  {
1323
1393
  function: function () { return _this.execCommand('selectAll'); },
1324
1394
  label: resources[18],
1325
- keyShortcut: resources[19]
1326
- }
1395
+ keyShortcut: resources[19],
1396
+ },
1327
1397
  ];
1328
1398
  });
1329
1399
  };
@@ -1335,13 +1405,18 @@
1335
1405
  if (value === void 0) { value = ''; }
1336
1406
  this.adapterService.execCommand(this.editorId, {
1337
1407
  command: command,
1338
- value: value
1408
+ value: value,
1339
1409
  });
1340
1410
  };
1341
1411
  SkyTextEditorMenubarComponent.prototype.insertMergeField = function (field) {
1342
- this.execCommand('insertHTML', '<img style="display: inline; cursor: grab;" data-fieldid="' + field.id +
1343
- '" data-fielddisplay="' + field.name +
1344
- '" src="' + (field.previewImageUrl || this.adapterService.getMergeFieldDataURI(field.name)) + '">');
1412
+ this.execCommand('insertHTML', '<img style="display: inline; cursor: grab;" data-fieldid="' +
1413
+ field.id +
1414
+ '" data-fielddisplay="' +
1415
+ field.name +
1416
+ '" src="' +
1417
+ (field.previewImageUrl ||
1418
+ this.adapterService.getMergeFieldDataURI(field.name)) +
1419
+ '">');
1345
1420
  };
1346
1421
  SkyTextEditorMenubarComponent.prototype.closeDropdowns = function () {
1347
1422
  this.editDropdownStream.next({ type: i4.SkyDropdownMessageType.Close });
@@ -1351,22 +1426,23 @@
1351
1426
  SkyTextEditorMenubarComponent.prototype.clearFormat = function () {
1352
1427
  var currentSelection = this.adapterService.getCurrentSelection(this.editorId);
1353
1428
  /* istanbul ignore else */
1354
- if (currentSelection.rangeCount > 0 && currentSelection.getRangeAt(0).toString().length <= 0) {
1429
+ if (currentSelection.rangeCount > 0 &&
1430
+ currentSelection.getRangeAt(0).toString().length <= 0) {
1355
1431
  this.execCommand('selectAll');
1356
1432
  }
1357
1433
  this.execCommand('removeFormat');
1358
1434
  };
1359
1435
  return SkyTextEditorMenubarComponent;
1360
1436
  }());
1361
- SkyTextEditorMenubarComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorMenubarComponent, deps: [{ token: SkyTextEditorAdapterService }, { token: i0__namespace.ChangeDetectorRef }, { token: i2__namespace.SkyLibResourcesService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1362
- SkyTextEditorMenubarComponent.ɵcmp = i0__namespace.ɵɵ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__namespace, 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__namespace$1.λ39, selector: "sky-toolbar-item" }, { type: i4__namespace.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i4__namespace.λ2, selector: "sky-dropdown-button" }, { type: i4__namespace.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i4__namespace.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }], directives: [{ type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6__namespace.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], pipes: { "skyLibResources": i2__namespace.SkyLibResourcesPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1363
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorMenubarComponent, decorators: [{
1437
+ SkyTextEditorMenubarComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorMenubarComponent, deps: [{ token: SkyTextEditorAdapterService }, { token: i0__namespace.ChangeDetectorRef }, { token: i2__namespace.SkyLibResourcesService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1438
+ SkyTextEditorMenubarComponent.ɵcmp = i0__namespace.ɵɵ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__namespace, 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__namespace$1.λ39, selector: "sky-toolbar-item" }, { type: i4__namespace.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i4__namespace.λ2, selector: "sky-dropdown-button" }, { type: i4__namespace.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i4__namespace.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }], directives: [{ type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6__namespace.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], pipes: { "skyLibResources": i2__namespace.SkyLibResourcesPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1439
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorMenubarComponent, decorators: [{
1364
1440
  type: i0.Component,
1365
1441
  args: [{
1366
1442
  selector: 'sky-text-editor-menubar',
1367
- templateUrl: './text-editor-menubar.component.html',
1368
- styleUrls: ['./text-editor-menubar.component.scss'],
1369
- changeDetection: i0.ChangeDetectionStrategy.OnPush
1443
+ 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",
1444
+ 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"],
1445
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
1370
1446
  }]
1371
1447
  }], ctorParameters: function () { return [{ type: SkyTextEditorAdapterService }, { type: i0__namespace.ChangeDetectorRef }, { type: i2__namespace.SkyLibResourcesService }]; }, propDecorators: { editorFocusStream: [{
1372
1448
  type: i0.Input
@@ -1408,7 +1484,10 @@
1408
1484
  if (modalContext.urlResult.url.startsWith(emailKey)) {
1409
1485
  this.emailAddress = modalContext.urlResult.url.replace(emailKey, '');
1410
1486
  var queryStringIndex = this.emailAddress.indexOf(queryStringParamKey);
1411
- queryStringIndex = queryStringIndex > -1 ? queryStringIndex : this.emailAddress.indexOf(queryStringParamKey.toLowerCase());
1487
+ queryStringIndex =
1488
+ queryStringIndex > -1
1489
+ ? queryStringIndex
1490
+ : this.emailAddress.indexOf(queryStringParamKey.toLowerCase());
1412
1491
  /* istanbul ignore else */
1413
1492
  if (queryStringIndex > -1) {
1414
1493
  this.subject = decodeURI(this.emailAddress).slice(queryStringIndex + queryStringParamKey.length);
@@ -1418,8 +1497,8 @@
1418
1497
  this.activeTab = 1;
1419
1498
  }
1420
1499
  else {
1421
- this.url = modalContext.urlResult.url,
1422
- this.target = modalContext.urlResult.target;
1500
+ (this.url = modalContext.urlResult.url),
1501
+ (this.target = modalContext.urlResult.target);
1423
1502
  // set active tab to web page
1424
1503
  this.activeTab = 0;
1425
1504
  }
@@ -1467,13 +1546,15 @@
1467
1546
  if (this.activeTab === 0) {
1468
1547
  this.modalInstance.save({
1469
1548
  url: this.url,
1470
- target: this.target ? parseInt(this.target, undefined) : UrlTarget.None
1549
+ target: this.target
1550
+ ? parseInt(this.target, undefined)
1551
+ : UrlTarget.None,
1471
1552
  });
1472
1553
  }
1473
1554
  else {
1474
1555
  this.modalInstance.save({
1475
1556
  url: this.getEmailUrl(),
1476
- target: UrlTarget.None
1557
+ target: UrlTarget.None,
1477
1558
  });
1478
1559
  }
1479
1560
  }
@@ -1482,7 +1563,9 @@
1482
1563
  this.modalInstance.cancel();
1483
1564
  };
1484
1565
  SkyTextEditorUrlModalComponent.prototype.getEmailUrl = function () {
1485
- return emailKey + this.emailAddress + (this.subject ? '?Subject=' + encodeURI(this.subject) : '');
1566
+ return (emailKey +
1567
+ this.emailAddress +
1568
+ (this.subject ? '?Subject=' + encodeURI(this.subject) : ''));
1486
1569
  };
1487
1570
  SkyTextEditorUrlModalComponent.prototype.isValid = function () {
1488
1571
  if (this.activeTab === 0) {
@@ -1492,14 +1575,14 @@
1492
1575
  };
1493
1576
  return SkyTextEditorUrlModalComponent;
1494
1577
  }());
1495
- SkyTextEditorUrlModalComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorUrlModalComponent, deps: [{ token: i1__namespace$1.SkyModalInstance }, { token: SkyUrlModalContext }], target: i0__namespace.ɵɵFactoryTarget.Component });
1496
- SkyTextEditorUrlModalComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyTextEditorUrlModalComponent, selector: "sky-text-editor-url-modal", ngImport: i0__namespace, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_text_editor_url_modal_header_label' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-tabset\n data-sky-id=\"test-tabset\"\n [active]=\"activeTab\"\n (activeChange)=\"activeTabChanged($event)\"\n >\n <sky-tab\n tabHeading=\"Web page\"\n >\n <div class=\"sky-form-group sky-text-editor-url-modal-first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"urlInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_url_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"url\"\n skyId\n #urlInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label\n class=\"sky-control-label\"\n [for]=\"targetInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_open_label' | skyLibResources }}\n </label>\n <select\n class=\"sky-form-control\"\n [(ngModel)]=\"target\"\n skyId\n #targetInput=\"skyId\"\n >\n <option value=\"0\">\n {{ 'skyux_text_editor_url_modal_current_option_label' | skyLibResources }}\n </option>\n <option value=\"1\">\n {{ 'skyux_text_editor_url_modal_new_option_label' | skyLibResources }}\n </option>\n </select>\n </sky-input-box>\n </sky-tab>\n <sky-tab\n tabHeading=\"Email address\"\n >\n <div class=\"sky-form-group first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"emailAddressInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_email_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"emailAddress\"\n skyId\n #emailAddressInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label\n class=\"sky-control-label\"\n [for]=\"subjectInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_subject_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"subject\"\n skyId\n #subjectInput=\"skyId\"\n />\n </sky-input-box>\n </sky-tab>\n </sky-tabset>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n type=\"submit\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!valid\"\n (click)=\"save()\"\n >\n {{ 'skyux_text_editor_url_modal_save_button_label' | skyLibResources }}\n </button>\n <button\n type=\"button\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancel()\"\n >\n {{ 'skyux_text_editor_url_modal_cancel_button_label' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-text-editor-url-modal-first-field{margin-top:15px}\n"], components: [{ type: i1__namespace$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1__namespace$1.λ4, selector: "sky-modal-header" }, { type: i1__namespace$1.λ2, selector: "sky-modal-content" }, { type: i3__namespace$2.λ2, selector: "sky-tabset", inputs: ["active", "ariaLabel", "ariaLabelledBy", "permalinkId", "tabStyle"], outputs: ["activeChange", "newTab", "openTab", "tabIndexesChange"] }, { type: i3__namespace$2.λ1, selector: "sky-tab", inputs: ["active", "disabled", "permalinkValue", "tabHeaderCount", "tabHeading", "tabIndex"], outputs: ["close"] }, { type: i4__namespace$1.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i1__namespace$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i5__namespace$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3__namespace.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { type: i5__namespace$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5__namespace$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5__namespace$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i5__namespace$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i5__namespace$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }], pipes: { "skyLibResources": i2__namespace.SkyLibResourcesPipe } });
1497
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorUrlModalComponent, decorators: [{
1578
+ SkyTextEditorUrlModalComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorUrlModalComponent, deps: [{ token: i1__namespace$1.SkyModalInstance }, { token: SkyUrlModalContext }], target: i0__namespace.ɵɵFactoryTarget.Component });
1579
+ SkyTextEditorUrlModalComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextEditorUrlModalComponent, selector: "sky-text-editor-url-modal", ngImport: i0__namespace, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_text_editor_url_modal_header_label' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-tabset\n data-sky-id=\"test-tabset\"\n [active]=\"activeTab\"\n (activeChange)=\"activeTabChanged($event)\"\n >\n <sky-tab tabHeading=\"Web page\">\n <div class=\"sky-form-group sky-text-editor-url-modal-first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"urlInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_url_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"url\"\n skyId\n #urlInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label class=\"sky-control-label\" [for]=\"targetInput.id\">\n {{ 'skyux_text_editor_url_modal_open_label' | skyLibResources }}\n </label>\n <select\n class=\"sky-form-control\"\n [(ngModel)]=\"target\"\n skyId\n #targetInput=\"skyId\"\n >\n <option value=\"0\">\n {{\n 'skyux_text_editor_url_modal_current_option_label'\n | skyLibResources\n }}\n </option>\n <option value=\"1\">\n {{\n 'skyux_text_editor_url_modal_new_option_label' | skyLibResources\n }}\n </option>\n </select>\n </sky-input-box>\n </sky-tab>\n <sky-tab tabHeading=\"Email address\">\n <div class=\"sky-form-group first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"emailAddressInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_email_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"emailAddress\"\n skyId\n #emailAddressInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label class=\"sky-control-label\" [for]=\"subjectInput.id\">\n {{ 'skyux_text_editor_url_modal_subject_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"subject\"\n skyId\n #subjectInput=\"skyId\"\n />\n </sky-input-box>\n </sky-tab>\n </sky-tabset>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n type=\"submit\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!valid\"\n (click)=\"save()\"\n >\n {{ 'skyux_text_editor_url_modal_save_button_label' | skyLibResources }}\n </button>\n <button type=\"button\" class=\"sky-btn sky-btn-link\" (click)=\"cancel()\">\n {{ 'skyux_text_editor_url_modal_cancel_button_label' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-text-editor-url-modal-first-field{margin-top:15px}\n"], components: [{ type: i1__namespace$1.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i1__namespace$1.λ4, selector: "sky-modal-header" }, { type: i1__namespace$1.λ2, selector: "sky-modal-content" }, { type: i3__namespace$2.λ2, selector: "sky-tabset", inputs: ["active", "ariaLabel", "ariaLabelledBy", "permalinkId", "tabStyle"], outputs: ["activeChange", "newTab", "openTab", "tabIndexesChange"] }, { type: i3__namespace$2.λ1, selector: "sky-tab", inputs: ["active", "disabled", "permalinkValue", "tabHeaderCount", "tabHeading", "tabIndex"], outputs: ["close"] }, { type: i4__namespace$1.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled"] }, { type: i1__namespace$1.λ3, selector: "sky-modal-footer" }], directives: [{ type: i5__namespace$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3__namespace.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { type: i5__namespace$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5__namespace$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5__namespace$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i5__namespace$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i5__namespace$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }], pipes: { "skyLibResources": i2__namespace.SkyLibResourcesPipe } });
1580
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorUrlModalComponent, decorators: [{
1498
1581
  type: i0.Component,
1499
1582
  args: [{
1500
1583
  selector: 'sky-text-editor-url-modal',
1501
- templateUrl: './text-editor-url-modal.component.html',
1502
- styleUrls: ['./text-editor-url-modal.component.scss']
1584
+ template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_text_editor_url_modal_header_label' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-tabset\n data-sky-id=\"test-tabset\"\n [active]=\"activeTab\"\n (activeChange)=\"activeTabChanged($event)\"\n >\n <sky-tab tabHeading=\"Web page\">\n <div class=\"sky-form-group sky-text-editor-url-modal-first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"urlInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_url_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"url\"\n skyId\n #urlInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label class=\"sky-control-label\" [for]=\"targetInput.id\">\n {{ 'skyux_text_editor_url_modal_open_label' | skyLibResources }}\n </label>\n <select\n class=\"sky-form-control\"\n [(ngModel)]=\"target\"\n skyId\n #targetInput=\"skyId\"\n >\n <option value=\"0\">\n {{\n 'skyux_text_editor_url_modal_current_option_label'\n | skyLibResources\n }}\n </option>\n <option value=\"1\">\n {{\n 'skyux_text_editor_url_modal_new_option_label' | skyLibResources\n }}\n </option>\n </select>\n </sky-input-box>\n </sky-tab>\n <sky-tab tabHeading=\"Email address\">\n <div class=\"sky-form-group first-field\">\n <sky-input-box>\n <label\n class=\"sky-control-label sky-control-label-required\"\n [for]=\"emailAddressInput.id\"\n >\n {{ 'skyux_text_editor_url_modal_email_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"emailAddress\"\n skyId\n #emailAddressInput=\"skyId\"\n />\n </sky-input-box>\n </div>\n <sky-input-box class=\"sky-form-group\">\n <label class=\"sky-control-label\" [for]=\"subjectInput.id\">\n {{ 'skyux_text_editor_url_modal_subject_label' | skyLibResources }}\n </label>\n <input\n class=\"sky-form-control\"\n type=\"text\"\n [(ngModel)]=\"subject\"\n skyId\n #subjectInput=\"skyId\"\n />\n </sky-input-box>\n </sky-tab>\n </sky-tabset>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n type=\"submit\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!valid\"\n (click)=\"save()\"\n >\n {{ 'skyux_text_editor_url_modal_save_button_label' | skyLibResources }}\n </button>\n <button type=\"button\" class=\"sky-btn sky-btn-link\" (click)=\"cancel()\">\n {{ 'skyux_text_editor_url_modal_cancel_button_label' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n",
1585
+ styles: [".sky-text-editor-url-modal-first-field{margin-top:15px}\n"],
1503
1586
  }]
1504
1587
  }], ctorParameters: function () { return [{ type: i1__namespace$1.SkyModalInstance }, { type: SkyUrlModalContext }]; } });
1505
1588
 
@@ -1526,7 +1609,7 @@
1526
1609
  set: function (value) {
1527
1610
  this._styleState = value;
1528
1611
  if (value.font !== this.styleStateFontName) {
1529
- if (value.font === '\"Blackbaud Sans\", Arial, sans-serif') {
1612
+ if (value.font === '"Blackbaud Sans", Arial, sans-serif') {
1530
1613
  this.styleStateFontName = this.getFontName('Blackbaud Sans');
1531
1614
  }
1532
1615
  else {
@@ -1563,7 +1646,7 @@
1563
1646
  if (value === void 0) { value = ''; }
1564
1647
  this.adapterService.execCommand(this.editorId, {
1565
1648
  command: command,
1566
- value: value
1649
+ value: value,
1567
1650
  });
1568
1651
  this.styleState = Object.assign(Object.assign({}, this.styleState), this.adapterService.getStyleState(this.editorId));
1569
1652
  };
@@ -1578,10 +1661,12 @@
1578
1661
  var _this = this;
1579
1662
  var priorSelection = this.adapterService.saveSelection(this.editorId);
1580
1663
  var currentLink = this.adapterService.getLink(this.editorId);
1581
- var inputModal = this.modalService.open(SkyTextEditorUrlModalComponent, [{
1664
+ var inputModal = this.modalService.open(SkyTextEditorUrlModalComponent, [
1665
+ {
1582
1666
  provide: SkyUrlModalContext,
1583
- useValue: { urlResult: currentLink }
1584
- }]);
1667
+ useValue: { urlResult: currentLink },
1668
+ },
1669
+ ]);
1585
1670
  inputModal.closed.subscribe(function (result) {
1586
1671
  if (result.reason === 'save' && priorSelection) {
1587
1672
  if (currentLink) {
@@ -1596,13 +1681,19 @@
1596
1681
  else {
1597
1682
  // New Window
1598
1683
  var sText = _this.adapterService.getCurrentSelection(_this.editorId);
1599
- _this.execCommand('insertHTML', '<a href="' + result.data.url + '" rel="noopener noreferrer" target="_blank">' + sText + '</a>');
1684
+ _this.execCommand('insertHTML', '<a href="' +
1685
+ result.data.url +
1686
+ '" rel="noopener noreferrer" target="_blank">' +
1687
+ sText +
1688
+ '</a>');
1600
1689
  }
1601
1690
  }
1602
1691
  });
1603
1692
  };
1604
1693
  SkyTextEditorToolbarComponent.prototype.unlink = function () {
1605
- var currentSelectionRange = this.adapterService.getCurrentSelection(this.editorId).getRangeAt(0);
1694
+ var currentSelectionRange = this.adapterService
1695
+ .getCurrentSelection(this.editorId)
1696
+ .getRangeAt(0);
1606
1697
  if (currentSelectionRange.toString().length <= 0) {
1607
1698
  var anchorTag = this.adapterService.getSelectedAnchorTag(this.editorId);
1608
1699
  this.adapterService.selectElement(this.editorId, anchorTag);
@@ -1618,7 +1709,9 @@
1618
1709
  this.execCommand(isBackground ? 'backColor' : 'foreColor', color.hex);
1619
1710
  };
1620
1711
  SkyTextEditorToolbarComponent.prototype.closeDropdowns = function () {
1621
- var message = { type: i6$1.SkyColorpickerMessageType.Close };
1712
+ var message = {
1713
+ type: i6$1.SkyColorpickerMessageType.Close,
1714
+ };
1622
1715
  this.colorpickerStream.next(message);
1623
1716
  this.backColorpickerStream.next(message);
1624
1717
  this.fontPickerStream.next({ type: i4.SkyDropdownMessageType.Close });
@@ -1633,15 +1726,15 @@
1633
1726
  };
1634
1727
  return SkyTextEditorToolbarComponent;
1635
1728
  }());
1636
- SkyTextEditorToolbarComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorToolbarComponent, deps: [{ token: SkyTextEditorAdapterService }, { token: i0__namespace.ChangeDetectorRef }, { token: i1__namespace$1.SkyModalService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1637
- SkyTextEditorToolbarComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: { editorFocusStream: "editorFocusStream", editorId: "editorId", fontList: "fontList", fontSizeList: "fontSizeList", toolbarActions: "toolbarActions", styleState: "styleState", disabled: "disabled" }, ngImport: i0__namespace, template: "\n <sky-toolbar-item *ngFor=\"let action of toolbarActions\"\n class=\"sky-text-editor-toolbar-action\"\n [ngClass]=\"'sky-text-editor-toolbar-action-' + action\"\n >\n <ng-container\n [ngSwitch]=\"action\"\n >\n <ng-container *ngSwitchCase=\"'font-family'\">\n <sky-dropdown\n class=\"sky-text-editor-font-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font: ' + styleStateFontName\"\n [messageStream]=\"fontPickerStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.font\n }\"\n >\n {{ styleStateFontName }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let fontModel of fontList\">\n <button\n type=\"button\"\n [ngStyle]=\"{\n 'font-family': fontModel.value\n }\"\n (click)=\"execCommand('fontname', fontModel.name)\"\n >\n {{ fontModel.name }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-size'\">\n <sky-dropdown\n class=\"sky-text-editor-font-size-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font size: ' + styleState.fontSize + 'px'\"\n [messageStream]=\"fontSizeStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.fontSize\n }\"\n >\n {{ styleState.fontSize + 'px' }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let size of fontSizeList\">\n <button\n type=\"button\"\n (click)=\"changeFontSize(size)\"\n >\n {{ size + 'px' }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-style'\">\n <div\n class=\"sky-switch-icon-group sky-text-editor-font-style-picker\"\n >\n <sky-checkbox\n icon=\"bold\"\n label=\"Bold\"\n title=\"Bold\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.boldState\"\n (ngModelChange)=\"toggleFontStyle(styleState.boldState, $event, 'bold')\"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"italic\"\n label=\"Italicized\"\n title=\"Italicized\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.italicState\"\n (ngModelChange)=\"toggleFontStyle(styleState.italicState, $event, 'italic')\"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"underline\"\n label=\"Underline\"\n title=\"Underline\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.underlineState\"\n (ngModelChange)=\"toggleFontStyle(styleState.underlineState, $event, 'underline')\"\n >\n </sky-checkbox>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'color'\">\n <div class=\"sky-text-editor-colorpicker-group\">\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-font-color-picker\"\n label=\"Font color\"\n [messageStream]=\"colorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event)\"\n #colorPicker\n >\n <input\n outputFormat=\"hex\"\n type=\"text\"\n [allowTransparency]=\"false\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.fontColor\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n </sky-colorpicker>\n </div>\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-background-color-picker\"\n label=\"Background color\"\n [messageStream]=\"backColorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event, true)\"\n #backColorPicker\n >\n <input\n outputFormat=\"rgba\"\n type=\"text\"\n [allowTransparency]=\"true\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.backColor\"\n [skyColorpickerInput]=\"backColorPicker\"\n />\n </sky-colorpicker>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'list'\">\n <div\n class=\"sky-switch-icon-group\"\n >\n <button\n aria-label=\"Bulleted list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Bulleted list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertUnorderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"list-ul\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"bullet-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Numbered list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Numbered list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertOrderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"list-ol\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"number-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'alignment'\">\n <div\n class=\"sky-switch-icon-group\"\n >\n <button\n aria-label=\"Align left\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align left\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyLeft')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"align-left\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"align-left-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align center\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align center\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyCenter')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"align-center\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"center-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align right\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align right\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyRight')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"align-right\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"align-right-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'indentation'\">\n <div\n class=\"sky-switch-icon-group\"\n >\n <button\n aria-label=\"Outdent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Outdent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('outdent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"outdent\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"outdent-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Indent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Indent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('indent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"indent\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"indent-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'undo-redo'\">\n <div\n class=\"sky-switch-icon-group\"\n >\n <button\n aria-label=\"Undo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Undo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('undo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"undo\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"undo-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Redo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Redo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('redo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"repeat\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"redo-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'link'\">\n <div\n class=\"sky-switch-icon-group\"\n >\n <button\n aria-label=\"Link\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Link\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'icon-btn-active': styleState.linkState\n }\"\n (click)=\"link()\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"link\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"link-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Unlink\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Unlink\"\n [disabled]=\"!styleState.linkState || disabled\"\n (click)=\"unlink()\"\n >\n <sky-icon *skyThemeIf=\"'default'\"\n icon=\"unlink\"\n >\n </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\"\n icon=\"unlink-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n </ng-container>\n </sky-toolbar-item>\n", styles: [".sky-text-editor-toolbar-action .sky-toolbar-item{margin-right:15px}.sky-text-editor-toolbar-action .sky-text-editor-font-picker ::ng-deep .sky-dropdown-button-content-container{width:140px;height:20px;text-align:left}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group{display:flex}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{position:relative;top:3px;margin:0 10px 0 0}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child{margin-right:0}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn{margin-left:0;margin-right:0;border-radius:0;border-right:none}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;border-right:1px solid #cdcfd2}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:first-of-type,:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}:host-context(.sky-theme-modern) .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}.sky-theme-modern .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}.sky-theme-modern .sky-switch-icon-group .sky-btn:first-of-type,.sky-theme-modern .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}.sky-theme-modern .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}\n"], components: [{ type: i3__namespace$1.λ39, selector: "sky-toolbar-item" }, { type: i4__namespace.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i4__namespace.λ2, selector: "sky-dropdown-button" }, { type: i4__namespace.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i4__namespace.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }, { type: i4__namespace$1.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6__namespace$1.λ1, selector: "sky-colorpicker", inputs: ["pickerButtonIcon", "pickerButtonIconType", "label", "labelledBy", "messageStream", "showResetButton"], outputs: ["selectedColorChanged", "selectedColorApplied"] }, { type: i7__namespace.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5__namespace.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5__namespace$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5__namespace$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5__namespace$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6__namespace$1.λ2, selector: "[skyColorpickerInput]", inputs: ["skyColorpickerInput", "initialColor", "returnFormat", "outputFormat", "presetColors", "alphaChannel", "allowTransparency"] }, { type: i6__namespace.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1638
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorToolbarComponent, decorators: [{
1729
+ SkyTextEditorToolbarComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorToolbarComponent, deps: [{ token: SkyTextEditorAdapterService }, { token: i0__namespace.ChangeDetectorRef }, { token: i1__namespace$1.SkyModalService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1730
+ SkyTextEditorToolbarComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: { editorFocusStream: "editorFocusStream", editorId: "editorId", fontList: "fontList", fontSizeList: "fontSizeList", toolbarActions: "toolbarActions", styleState: "styleState", disabled: "disabled" }, ngImport: i0__namespace, template: "<sky-toolbar-item\n *ngFor=\"let action of toolbarActions\"\n class=\"sky-text-editor-toolbar-action\"\n [ngClass]=\"'sky-text-editor-toolbar-action-' + action\"\n>\n <ng-container [ngSwitch]=\"action\">\n <ng-container *ngSwitchCase=\"'font-family'\">\n <sky-dropdown\n class=\"sky-text-editor-font-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font: ' + styleStateFontName\"\n [messageStream]=\"fontPickerStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.font\n }\"\n >\n {{ styleStateFontName }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let fontModel of fontList\">\n <button\n type=\"button\"\n [ngStyle]=\"{\n 'font-family': fontModel.value\n }\"\n (click)=\"execCommand('fontname', fontModel.name)\"\n >\n {{ fontModel.name }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-size'\">\n <sky-dropdown\n class=\"sky-text-editor-font-size-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font size: ' + styleState.fontSize + 'px'\"\n [messageStream]=\"fontSizeStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.fontSize\n }\"\n >\n {{ styleState.fontSize + 'px' }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let size of fontSizeList\">\n <button type=\"button\" (click)=\"changeFontSize(size)\">\n {{ size + 'px' }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-style'\">\n <div class=\"sky-switch-icon-group sky-text-editor-font-style-picker\">\n <sky-checkbox\n icon=\"bold\"\n label=\"Bold\"\n title=\"Bold\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.boldState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.boldState, $event, 'bold')\n \"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"italic\"\n label=\"Italicized\"\n title=\"Italicized\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.italicState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.italicState, $event, 'italic')\n \"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"underline\"\n label=\"Underline\"\n title=\"Underline\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.underlineState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.underlineState, $event, 'underline')\n \"\n >\n </sky-checkbox>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'color'\">\n <div class=\"sky-text-editor-colorpicker-group\">\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-font-color-picker\"\n label=\"Font color\"\n [messageStream]=\"colorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event)\"\n #colorPicker\n >\n <input\n outputFormat=\"hex\"\n type=\"text\"\n [allowTransparency]=\"false\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.fontColor\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n </sky-colorpicker>\n </div>\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-background-color-picker\"\n label=\"Background color\"\n [messageStream]=\"backColorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event, true)\"\n #backColorPicker\n >\n <input\n outputFormat=\"rgba\"\n type=\"text\"\n [allowTransparency]=\"true\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.backColor\"\n [skyColorpickerInput]=\"backColorPicker\"\n />\n </sky-colorpicker>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'list'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Bulleted list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Bulleted list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertUnorderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"list-ul\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"bullet-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Numbered list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Numbered list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertOrderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"list-ol\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"number-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'alignment'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Align left\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align left\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyLeft')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-left\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"align-left-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align center\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align center\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyCenter')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-center\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"center-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align right\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align right\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyRight')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-right\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"align-right-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'indentation'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Outdent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Outdent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('outdent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"outdent\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"outdent-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Indent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Indent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('indent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"indent\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"indent-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'undo-redo'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Undo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Undo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('undo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"undo\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"undo-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Redo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Redo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('redo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"repeat\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"redo-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'link'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Link\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Link\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'icon-btn-active': styleState.linkState\n }\"\n (click)=\"link()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"link\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"link-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Unlink\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Unlink\"\n [disabled]=\"!styleState.linkState || disabled\"\n (click)=\"unlink()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"unlink\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"unlink-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n </ng-container>\n</sky-toolbar-item>\n", styles: [".sky-text-editor-toolbar-action .sky-toolbar-item{margin-right:15px}.sky-text-editor-toolbar-action .sky-text-editor-font-picker ::ng-deep .sky-dropdown-button-content-container{width:140px;height:20px;text-align:left}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group{display:flex}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{position:relative;top:3px;margin:0 10px 0 0}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child{margin-right:0}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn{margin-left:0;margin-right:0;border-radius:0;border-right:none}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;border-right:1px solid #cdcfd2}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:first-of-type,:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}:host-context(.sky-theme-modern) .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}.sky-theme-modern .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}.sky-theme-modern .sky-switch-icon-group .sky-btn:first-of-type,.sky-theme-modern .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}.sky-theme-modern .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}\n"], components: [{ type: i3__namespace$1.λ39, selector: "sky-toolbar-item" }, { type: i4__namespace.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i4__namespace.λ2, selector: "sky-dropdown-button" }, { type: i4__namespace.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i4__namespace.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }, { type: i4__namespace$1.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i6__namespace$1.λ1, selector: "sky-colorpicker", inputs: ["pickerButtonIcon", "pickerButtonIconType", "label", "labelledBy", "messageStream", "showResetButton"], outputs: ["selectedColorChanged", "selectedColorApplied"] }, { type: i7__namespace.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5__namespace.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5__namespace$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5__namespace$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5__namespace$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6__namespace$1.λ2, selector: "[skyColorpickerInput]", inputs: ["skyColorpickerInput", "initialColor", "returnFormat", "outputFormat", "presetColors", "alphaChannel", "allowTransparency"] }, { type: i6__namespace.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1731
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorToolbarComponent, decorators: [{
1639
1732
  type: i0.Component,
1640
1733
  args: [{
1641
1734
  selector: 'sky-text-editor-toolbar',
1642
- templateUrl: './text-editor-toolbar.component.html',
1643
- styleUrls: ['./text-editor-toolbar.component.scss'],
1644
- changeDetection: i0.ChangeDetectionStrategy.OnPush
1735
+ template: "<sky-toolbar-item\n *ngFor=\"let action of toolbarActions\"\n class=\"sky-text-editor-toolbar-action\"\n [ngClass]=\"'sky-text-editor-toolbar-action-' + action\"\n>\n <ng-container [ngSwitch]=\"action\">\n <ng-container *ngSwitchCase=\"'font-family'\">\n <sky-dropdown\n class=\"sky-text-editor-font-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font: ' + styleStateFontName\"\n [messageStream]=\"fontPickerStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.font\n }\"\n >\n {{ styleStateFontName }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let fontModel of fontList\">\n <button\n type=\"button\"\n [ngStyle]=\"{\n 'font-family': fontModel.value\n }\"\n (click)=\"execCommand('fontname', fontModel.name)\"\n >\n {{ fontModel.name }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-size'\">\n <sky-dropdown\n class=\"sky-text-editor-font-size-picker\"\n [disabled]=\"disabled\"\n [label]=\"'Font size: ' + styleState.fontSize + 'px'\"\n [messageStream]=\"fontSizeStream\"\n >\n <sky-dropdown-button\n [ngStyle]=\"{\n 'font-family': styleState.fontSize\n }\"\n >\n {{ styleState.fontSize + 'px' }}\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let size of fontSizeList\">\n <button type=\"button\" (click)=\"changeFontSize(size)\">\n {{ size + 'px' }}\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </ng-container>\n <ng-container *ngSwitchCase=\"'font-style'\">\n <div class=\"sky-switch-icon-group sky-text-editor-font-style-picker\">\n <sky-checkbox\n icon=\"bold\"\n label=\"Bold\"\n title=\"Bold\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.boldState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.boldState, $event, 'bold')\n \"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"italic\"\n label=\"Italicized\"\n title=\"Italicized\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.italicState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.italicState, $event, 'italic')\n \"\n >\n </sky-checkbox>\n <sky-checkbox\n icon=\"underline\"\n label=\"Underline\"\n title=\"Underline\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.underlineState\"\n (ngModelChange)=\"\n toggleFontStyle(styleState.underlineState, $event, 'underline')\n \"\n >\n </sky-checkbox>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'color'\">\n <div class=\"sky-text-editor-colorpicker-group\">\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-font-color-picker\"\n label=\"Font color\"\n [messageStream]=\"colorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event)\"\n #colorPicker\n >\n <input\n outputFormat=\"hex\"\n type=\"text\"\n [allowTransparency]=\"false\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.fontColor\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n </sky-colorpicker>\n </div>\n <div class=\"sky-text-editor-colorpicker-container\">\n <sky-colorpicker\n class=\"sky-text-editor-background-color-picker\"\n label=\"Background color\"\n [messageStream]=\"backColorpickerStream\"\n [showResetButton]=\"false\"\n (selectedColorChanged)=\"onColorpickerColorChanged($event, true)\"\n #backColorPicker\n >\n <input\n outputFormat=\"rgba\"\n type=\"text\"\n [allowTransparency]=\"true\"\n [disabled]=\"disabled\"\n [ngModel]=\"styleState.backColor\"\n [skyColorpickerInput]=\"backColorPicker\"\n />\n </sky-colorpicker>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'list'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Bulleted list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Bulleted list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertUnorderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"list-ul\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"bullet-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Numbered list\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Numbered list\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('insertOrderedList')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"list-ol\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"number-list-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'alignment'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Align left\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align left\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyLeft')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-left\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"align-left-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align center\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align center\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyCenter')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-center\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"center-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n <button\n aria-label=\"Align right\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Align right\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('justifyRight')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"align-right\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"align-right-text-line\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'indentation'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Outdent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Outdent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('outdent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"outdent\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"outdent-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Indent\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Indent\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('indent')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"indent\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"indent-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'undo-redo'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Undo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Undo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('undo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"undo\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"undo-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Redo\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Redo\"\n [disabled]=\"disabled\"\n (click)=\"execCommand('redo')\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"repeat\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"redo-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'link'\">\n <div class=\"sky-switch-icon-group\">\n <button\n aria-label=\"Link\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Link\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'icon-btn-active': styleState.linkState\n }\"\n (click)=\"link()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"link\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"link-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n <button\n aria-label=\"Unlink\"\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Unlink\"\n [disabled]=\"!styleState.linkState || disabled\"\n (click)=\"unlink()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"unlink\"> </sky-icon>\n <sky-icon *skyThemeIf=\"'modern'\" icon=\"unlink-line\" iconType=\"skyux\">\n </sky-icon>\n </button>\n </div>\n </ng-container>\n </ng-container>\n</sky-toolbar-item>\n",
1736
+ styles: [".sky-text-editor-toolbar-action .sky-toolbar-item{margin-right:15px}.sky-text-editor-toolbar-action .sky-text-editor-font-picker ::ng-deep .sky-dropdown-button-content-container{width:140px;height:20px;text-align:left}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group{display:flex}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{position:relative;top:3px;margin:0 10px 0 0}.sky-text-editor-toolbar-action .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child{margin-right:0}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn{margin-left:0;margin-right:0;border-radius:0;border-right:none}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:first-of-type{border-top-left-radius:3px;border-bottom-left-radius:3px}.sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border-top-right-radius:3px;border-bottom-right-radius:3px;border-right:1px solid #cdcfd2}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}:host-context(.sky-theme-modern) .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:first-of-type,:host-context(.sky-theme-modern) .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}:host-context(.sky-theme-modern) .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container{top:-2px;margin:0}.sky-theme-modern .sky-text-editor-colorpicker-group .sky-text-editor-colorpicker-container:last-child ::ng-deep sky-colorpicker .sky-colorpicker-button{margin-right:0}.sky-theme-modern .sky-switch-icon-group .sky-btn{margin:inherit;border-radius:6px}.sky-theme-modern .sky-switch-icon-group .sky-btn:first-of-type,.sky-theme-modern .sky-switch-icon-group .sky-btn:last-of-type{border-radius:6px}.sky-theme-modern .sky-text-editor-toolbar-action .sky-switch-icon-group .sky-btn:last-of-type{border:none}\n"],
1737
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
1645
1738
  }]
1646
1739
  }], ctorParameters: function () { return [{ type: SkyTextEditorAdapterService }, { type: i0__namespace.ChangeDetectorRef }, { type: i1__namespace$1.SkyModalService }]; }, propDecorators: { editorFocusStream: [{
1647
1740
  type: i0.Input
@@ -1662,10 +1755,7 @@
1662
1755
  /**
1663
1756
  * @internal
1664
1757
  */
1665
- var MENU_DEFAULTS = [
1666
- 'edit',
1667
- 'format'
1668
- ];
1758
+ var MENU_DEFAULTS = ['edit', 'format'];
1669
1759
 
1670
1760
  /**
1671
1761
  * @internal
@@ -1676,13 +1766,15 @@
1676
1766
  'font-style',
1677
1767
  'color',
1678
1768
  'list',
1679
- 'link'
1769
+ 'link',
1680
1770
  ];
1681
1771
 
1682
1772
  /**
1683
1773
  * @internal
1684
1774
  */
1685
- var FONT_SIZE_LIST_DEFAULTS = [6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48];
1775
+ var FONT_SIZE_LIST_DEFAULTS = [
1776
+ 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 24, 26, 28, 36, 48,
1777
+ ];
1686
1778
 
1687
1779
  /**
1688
1780
  * Auto-incrementing integer used to generate unique ids for radio components.
@@ -1765,7 +1857,7 @@
1765
1857
  if (this.iframeRef) {
1766
1858
  focusableChildren = this.coreAdapterService.getFocusableChildren(this.iframeRef.nativeElement.contentDocument.body, {
1767
1859
  ignoreVisibility: true,
1768
- ignoreTabIndex: true
1860
+ ignoreTabIndex: true,
1769
1861
  });
1770
1862
  }
1771
1863
  if (this._disabled) {
@@ -1826,7 +1918,10 @@
1826
1918
  set: function (value) {
1827
1919
  // Normalize value and set any empty state to an empty string.
1828
1920
  var normalizedValue = value;
1829
- if (!value || value.trim() === '<p></p>' || value.trim() === '<br>' || value.trim() === '<p><br></p>') {
1921
+ if (!value ||
1922
+ value.trim() === '<p></p>' ||
1923
+ value.trim() === '<br>' ||
1924
+ value.trim() === '<p><br></p>') {
1830
1925
  normalizedValue = '';
1831
1926
  }
1832
1927
  normalizedValue = this.sanitizationService.sanitize(normalizedValue).trim();
@@ -1837,7 +1932,9 @@
1837
1932
  if (this.ngControl && this.ngControl.control) {
1838
1933
  /* istanbul ignore else */
1839
1934
  if (normalizedValue !== this.ngControl.control.value) {
1840
- this.ngControl.control.setValue(normalizedValue, { emitModelToViewChange: false });
1935
+ this.ngControl.control.setValue(normalizedValue, {
1936
+ emitModelToViewChange: false,
1937
+ });
1841
1938
  }
1842
1939
  }
1843
1940
  // Autofocus isn't testable in Firefox and IE.
@@ -1903,7 +2000,8 @@
1903
2000
  SkyTextEditorComponent.prototype.initIframe = function () {
1904
2001
  var _this = this;
1905
2002
  this.adapterService.addEditor(this.id, this.iframeRef.nativeElement, this.initialStyleState, this.placeholder);
1906
- this.editorService.inputListener(this.id)
2003
+ this.editorService
2004
+ .inputListener(this.id)
1907
2005
  .pipe(operators.takeUntil(this.ngUnsubscribe))
1908
2006
  .subscribe(function () {
1909
2007
  // Angular doesn't run change detection for changes originating inside an iframe,
@@ -1912,18 +2010,21 @@
1912
2010
  _this.ViewToModelUpdate();
1913
2011
  });
1914
2012
  });
1915
- this.editorService.selectionChangeListener(this.id)
2013
+ this.editorService
2014
+ .selectionChangeListener(this.id)
1916
2015
  .pipe(operators.takeUntil(this.ngUnsubscribe))
1917
2016
  .subscribe(function () {
1918
2017
  _this.updateStyle();
1919
2018
  _this.editorFocusStream.next();
1920
2019
  });
1921
- this.editorService.clickListener(this.id)
2020
+ this.editorService
2021
+ .clickListener(this.id)
1922
2022
  .pipe(operators.takeUntil(this.ngUnsubscribe))
1923
2023
  .subscribe(function () {
1924
2024
  _this.editorFocusStream.next();
1925
2025
  });
1926
- this.editorService.blurListener(this.id)
2026
+ this.editorService
2027
+ .blurListener(this.id)
1927
2028
  .pipe(operators.takeUntil(this.ngUnsubscribe))
1928
2029
  .subscribe(function () {
1929
2030
  // Angular doesn't run change detection for changes originating inside an iframe,
@@ -1932,7 +2033,8 @@
1932
2033
  _this._onTouched();
1933
2034
  });
1934
2035
  });
1935
- this.editorService.commandChangeListener(this.id)
2036
+ this.editorService
2037
+ .commandChangeListener(this.id)
1936
2038
  .pipe(operators.takeUntil(this.ngUnsubscribe))
1937
2039
  .subscribe(function () {
1938
2040
  _this.updateStyle();
@@ -1955,16 +2057,16 @@
1955
2057
  };
1956
2058
  return SkyTextEditorComponent;
1957
2059
  }());
1958
- SkyTextEditorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }, { token: i3__namespace.SkyCoreAdapterService }, { token: SkyTextEditorAdapterService }, { token: SkyTextEditorService }, { token: SkyTextSanitizationService }, { token: i5__namespace$1.NgControl }, { token: i0__namespace.NgZone }], target: i0__namespace.ɵɵFactoryTarget.Component });
1959
- SkyTextEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyTextEditorComponent, selector: "sky-text-editor", inputs: { autofocus: "autofocus", disabled: "disabled", fontList: "fontList", fontSizeList: "fontSizeList", id: "id", initialStyleState: "initialStyleState", menus: "menus", mergeFields: "mergeFields", placeholder: "placeholder", toolbarActions: "toolbarActions" }, viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["iframe"], descendants: true }], ngImport: i0__namespace, template: "<div\n class=\"sky-text-editor\"\n>\n <sky-toolbar\n class=\"sky-text-editor-toolbar\"\n >\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"menubar\"\n role=\"toolbar\"\n >\n <sky-text-editor-menubar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [menus]=\"menus\"\n [mergeFields]=\"mergeFields\"\n >\n </sky-text-editor-menubar>\n </sky-toolbar-section>\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"toolbar\"\n role=\"toolbar\"\n >\n <sky-text-editor-toolbar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [fontList]=\"fontList\"\n [fontSizeList]=\"fontSizeList\"\n [toolbarActions]=\"toolbarActions\"\n [styleState]=\"initialStyleState\"\n >\n </sky-text-editor-toolbar>\n </sky-toolbar-section>\n </sky-toolbar>\n <iframe\n class=\"sky-text-editor-wrapper\"\n src=\"about:blank\"\n title=\"Text Editor\"\n [ngClass]=\"{\n 'sky-text-editor-wrapper-disabled': disabled\n }\"\n (load)=\"onIframeLoad()\"\n #iframe\n >\n </iframe>\n</div>\n", styles: [".sky-text-editor .sky-text-editor-wrapper{display:flex;flex-wrap:wrap;background-color:#fff;width:100%;height:300px;padding:1rem;font-size:1.2rem;border:1px solid #C0C0C0;overflow-y:auto;outline:none}.sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ededee}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-left:1px solid #cdcfd2!important;border-right:1px solid #cdcfd2!important}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-dropdown-button{border:none}.sky-text-editor .sky-text-editor-toolbar sky-text-editor-menubar,.sky-text-editor .sky-text-editor-toolbar sky-text-editor-toolbar{display:flex;flex-wrap:wrap}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper{border:1px solid #d2d2d2}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ececed}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar{padding:10px 10px 0}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-top:1px solid #d2d2d2!important;border-left:1px solid #d2d2d2!important;border-right:1px solid #d2d2d2!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 0 0!important}\n"], components: [{ type: i3__namespace$1.λ37, selector: "sky-toolbar" }, { type: i3__namespace$1.λ38, selector: "sky-toolbar-section" }, { type: SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: ["editorFocusStream", "editorId", "menus", "mergeFields", "disabled"] }, { type: SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: ["editorFocusStream", "editorId", "fontList", "fontSizeList", "toolbarActions", "styleState", "disabled"] }], directives: [{ type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
1960
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorComponent, decorators: [{
2060
+ SkyTextEditorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }, { token: i3__namespace.SkyCoreAdapterService }, { token: SkyTextEditorAdapterService }, { token: SkyTextEditorService }, { token: SkyTextSanitizationService }, { token: i5__namespace$1.NgControl }, { token: i0__namespace.NgZone }], target: i0__namespace.ɵɵFactoryTarget.Component });
2061
+ SkyTextEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextEditorComponent, selector: "sky-text-editor", inputs: { autofocus: "autofocus", disabled: "disabled", fontList: "fontList", fontSizeList: "fontSizeList", id: "id", initialStyleState: "initialStyleState", menus: "menus", mergeFields: "mergeFields", placeholder: "placeholder", toolbarActions: "toolbarActions" }, viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["iframe"], descendants: true }], ngImport: i0__namespace, template: "<div class=\"sky-text-editor\">\n <sky-toolbar class=\"sky-text-editor-toolbar\">\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"menubar\"\n role=\"toolbar\"\n >\n <sky-text-editor-menubar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [menus]=\"menus\"\n [mergeFields]=\"mergeFields\"\n >\n </sky-text-editor-menubar>\n </sky-toolbar-section>\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"toolbar\"\n role=\"toolbar\"\n >\n <sky-text-editor-toolbar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [fontList]=\"fontList\"\n [fontSizeList]=\"fontSizeList\"\n [toolbarActions]=\"toolbarActions\"\n [styleState]=\"initialStyleState\"\n >\n </sky-text-editor-toolbar>\n </sky-toolbar-section>\n </sky-toolbar>\n <iframe\n class=\"sky-text-editor-wrapper\"\n src=\"about:blank\"\n title=\"Text Editor\"\n [ngClass]=\"{\n 'sky-text-editor-wrapper-disabled': disabled\n }\"\n (load)=\"onIframeLoad()\"\n #iframe\n >\n </iframe>\n</div>\n", styles: [".sky-text-editor .sky-text-editor-wrapper{display:flex;flex-wrap:wrap;background-color:#fff;width:100%;height:300px;padding:1rem;font-size:1.2rem;border:1px solid #c0c0c0;overflow-y:auto;outline:none}.sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ededee}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-left:1px solid #cdcfd2!important;border-right:1px solid #cdcfd2!important}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-dropdown-button{border:none}.sky-text-editor .sky-text-editor-toolbar sky-text-editor-menubar,.sky-text-editor .sky-text-editor-toolbar sky-text-editor-toolbar{display:flex;flex-wrap:wrap}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper{border:1px solid #d2d2d2}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ececed}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar{padding:10px 10px 0}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-top:1px solid #d2d2d2!important;border-left:1px solid #d2d2d2!important;border-right:1px solid #d2d2d2!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 0 0!important}\n"], components: [{ type: i3__namespace$1.λ37, selector: "sky-toolbar" }, { type: i3__namespace$1.λ38, selector: "sky-toolbar-section" }, { type: SkyTextEditorMenubarComponent, selector: "sky-text-editor-menubar", inputs: ["editorFocusStream", "editorId", "menus", "mergeFields", "disabled"] }, { type: SkyTextEditorToolbarComponent, selector: "sky-text-editor-toolbar", inputs: ["editorFocusStream", "editorId", "fontList", "fontSizeList", "toolbarActions", "styleState", "disabled"] }], directives: [{ type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
2062
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorComponent, decorators: [{
1961
2063
  type: i0.Component,
1962
2064
  args: [{
1963
2065
  selector: 'sky-text-editor',
1964
- templateUrl: './text-editor.component.html',
1965
- styleUrls: ['./text-editor.component.scss'],
2066
+ template: "<div class=\"sky-text-editor\">\n <sky-toolbar class=\"sky-text-editor-toolbar\">\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"menubar\"\n role=\"toolbar\"\n >\n <sky-text-editor-menubar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [menus]=\"menus\"\n [mergeFields]=\"mergeFields\"\n >\n </sky-text-editor-menubar>\n </sky-toolbar-section>\n <sky-toolbar-section\n aria-label=\"Text formatting\"\n class=\"toolbar\"\n role=\"toolbar\"\n >\n <sky-text-editor-toolbar\n [disabled]=\"disabled\"\n [editorFocusStream]=\"editorFocusStream\"\n [editorId]=\"id\"\n [fontList]=\"fontList\"\n [fontSizeList]=\"fontSizeList\"\n [toolbarActions]=\"toolbarActions\"\n [styleState]=\"initialStyleState\"\n >\n </sky-text-editor-toolbar>\n </sky-toolbar-section>\n </sky-toolbar>\n <iframe\n class=\"sky-text-editor-wrapper\"\n src=\"about:blank\"\n title=\"Text Editor\"\n [ngClass]=\"{\n 'sky-text-editor-wrapper-disabled': disabled\n }\"\n (load)=\"onIframeLoad()\"\n #iframe\n >\n </iframe>\n</div>\n",
2067
+ styles: [".sky-text-editor .sky-text-editor-wrapper{display:flex;flex-wrap:wrap;background-color:#fff;width:100%;height:300px;padding:1rem;font-size:1.2rem;border:1px solid #c0c0c0;overflow-y:auto;outline:none}.sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ededee}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-left:1px solid #cdcfd2!important;border-right:1px solid #cdcfd2!important}.sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 10px 0}.sky-text-editor .sky-text-editor-toolbar .sky-dropdown-button{border:none}.sky-text-editor .sky-text-editor-toolbar sky-text-editor-menubar,.sky-text-editor .sky-text-editor-toolbar sky-text-editor-toolbar{display:flex;flex-wrap:wrap}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper{border:1px solid #d2d2d2}.sky-theme-modern .sky-text-editor .sky-text-editor-wrapper.sky-text-editor-wrapper-disabled{background-color:#ececed}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar{padding:10px 10px 0}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-section{padding:10px!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-sectioned{border-top:1px solid #d2d2d2!important;border-left:1px solid #d2d2d2!important;border-right:1px solid #d2d2d2!important}.sky-theme-modern .sky-text-editor .sky-text-editor-toolbar .sky-toolbar-item{margin:0 20px 0 0!important}\n"],
1966
2068
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
1967
- encapsulation: i0.ViewEncapsulation.None
2069
+ encapsulation: i0.ViewEncapsulation.None,
1968
2070
  }]
1969
2071
  }], ctorParameters: function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: i3__namespace.SkyCoreAdapterService }, { type: SkyTextEditorAdapterService }, { type: SkyTextEditorService }, { type: SkyTextSanitizationService }, { type: i5__namespace$1.NgControl }, { type: i0__namespace.NgZone }]; }, propDecorators: { autofocus: [{
1970
2072
  type: i0.Input
@@ -1996,8 +2098,8 @@
1996
2098
  }
1997
2099
  return SkyTextEditorModule;
1998
2100
  }());
1999
- SkyTextEditorModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
2000
- SkyTextEditorModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorModule, declarations: [SkyTextEditorComponent,
2101
+ SkyTextEditorModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
2102
+ SkyTextEditorModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorModule, declarations: [SkyTextEditorComponent,
2001
2103
  SkyTextEditorUrlModalComponent,
2002
2104
  SkyTextEditorToolbarComponent,
2003
2105
  SkyTextEditorMenubarComponent], imports: [i5.CommonModule,
@@ -2019,7 +2121,7 @@
2019
2121
  SkyTextEditorUrlModalComponent,
2020
2122
  SkyTextEditorToolbarComponent,
2021
2123
  SkyTextEditorMenubarComponent] });
2022
- SkyTextEditorModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorModule, imports: [[
2124
+ SkyTextEditorModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorModule, imports: [[
2023
2125
  i5.CommonModule,
2024
2126
  i5$1.FormsModule,
2025
2127
  i5$1.ReactiveFormsModule,
@@ -2035,9 +2137,9 @@
2035
2137
  i1$1.SkyModalModule,
2036
2138
  i3$2.SkyTabsModule,
2037
2139
  i6.SkyThemeModule,
2038
- i3$1.SkyToolbarModule
2140
+ i3$1.SkyToolbarModule,
2039
2141
  ]] });
2040
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: SkyTextEditorModule, decorators: [{
2142
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SkyTextEditorModule, decorators: [{
2041
2143
  type: i0.NgModule,
2042
2144
  args: [{
2043
2145
  imports: [
@@ -2056,23 +2158,21 @@
2056
2158
  i1$1.SkyModalModule,
2057
2159
  i3$2.SkyTabsModule,
2058
2160
  i6.SkyThemeModule,
2059
- i3$1.SkyToolbarModule
2161
+ i3$1.SkyToolbarModule,
2060
2162
  ],
2061
2163
  exports: [
2062
2164
  SkyTextEditorComponent,
2063
2165
  SkyTextEditorUrlModalComponent,
2064
2166
  SkyTextEditorToolbarComponent,
2065
- SkyTextEditorMenubarComponent
2167
+ SkyTextEditorMenubarComponent,
2066
2168
  ],
2067
2169
  declarations: [
2068
2170
  SkyTextEditorComponent,
2069
2171
  SkyTextEditorUrlModalComponent,
2070
2172
  SkyTextEditorToolbarComponent,
2071
- SkyTextEditorMenubarComponent
2173
+ SkyTextEditorMenubarComponent,
2072
2174
  ],
2073
- entryComponents: [
2074
- SkyTextEditorUrlModalComponent
2075
- ]
2175
+ entryComponents: [SkyTextEditorUrlModalComponent],
2076
2176
  }]
2077
2177
  }] });
2078
2178