@arsedizioni/ars-utils 21.2.370 → 22.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs +40 -25
  2. package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs.map +1 -1
  3. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +302 -178
  4. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
  5. package/fesm2022/arsedizioni-ars-utils-core.mjs +151 -126
  6. package/fesm2022/arsedizioni-ars-utils-core.mjs.map +1 -1
  7. package/fesm2022/arsedizioni-ars-utils-evolution.common.mjs +14 -12
  8. package/fesm2022/arsedizioni-ars-utils-evolution.common.mjs.map +1 -1
  9. package/fesm2022/arsedizioni-ars-utils-help.mjs +26 -20
  10. package/fesm2022/arsedizioni-ars-utils-help.mjs.map +1 -1
  11. package/fesm2022/arsedizioni-ars-utils-support.common.mjs +9 -8
  12. package/fesm2022/arsedizioni-ars-utils-support.common.mjs.map +1 -1
  13. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs +14 -11
  14. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs.map +1 -1
  15. package/fesm2022/arsedizioni-ars-utils-tinymce.mjs +11 -9
  16. package/fesm2022/arsedizioni-ars-utils-tinymce.mjs.map +1 -1
  17. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +341 -200
  18. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
  19. package/fesm2022/arsedizioni-ars-utils-ui.mjs +197 -152
  20. package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
  21. package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs +28 -19
  22. package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs.map +1 -1
  23. package/package.json +1 -1
  24. package/types/arsedizioni-ars-utils-clipper.ui.d.ts +1 -1
  25. package/types/arsedizioni-ars-utils-ui.application.d.ts +5 -1
@@ -190,11 +190,11 @@ class TinymceUtils {
190
190
  }
191
191
 
192
192
  class ArsTinyMceModule {
193
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsTinyMceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
194
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.15", ngImport: i0, type: ArsTinyMceModule }); }
195
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsTinyMceModule }); }
193
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ArsTinyMceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
194
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.0", ngImport: i0, type: ArsTinyMceModule }); }
195
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ArsTinyMceModule }); }
196
196
  }
197
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ArsTinyMceModule, decorators: [{
197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ArsTinyMceModule, decorators: [{
198
198
  type: NgModule,
199
199
  args: [{}]
200
200
  }] });
@@ -208,9 +208,11 @@ class FullScreenEditorComponent {
208
208
  this.dialogData = signal((() => {
209
209
  const data = inject(MAT_DIALOG_DATA) ?? {};
210
210
  return { ...data, text: data.text ?? '' };
211
- })(), ...(ngDevMode ? [{ debugName: "dialogData" }] : /* istanbul ignore next */ []));
211
+ })(), /* @ts-ignore */
212
+ ...(ngDevMode ? [{ debugName: "dialogData" }] : /* istanbul ignore next */ []));
212
213
  /** Whether the editor is in read-only mode. */
213
- this.disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
214
+ this.disabled = signal(false, /* @ts-ignore */
215
+ ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
214
216
  const data = this.dialogData();
215
217
  this.text = data.text;
216
218
  if (data.configuration) {
@@ -231,10 +233,10 @@ class FullScreenEditorComponent {
231
233
  this.dialogRef.close();
232
234
  }, 500);
233
235
  }
234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FullScreenEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
235
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: FullScreenEditorComponent, isStandalone: true, selector: "ng-component", outputs: { saving: "saving" }, ngImport: i0, template: "<mat-dialog-content style=\"padding: 10px 10px 0 10px\">\r\n <editor style=\"height: 100%;\" [init]=\"tinymceConfig\" class=\"full-screen-editor\" [disabled]=\"disabled()\"\r\n [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" fxFill>\r\n <div fxFlex=\"50\">\r\n @if(dialogData().onShowInfo) {\r\n <button mat-stroked-button (click)=\"dialogData().onShowInfo()\">{{dialogData().infoButtonLabel ?? 'Informazioni'}}\r\n </button>\r\n }\r\n </div>\r\n <div fxFlex=\"50\" fxLayoutAlign=\"end\">\r\n @if (disabled()) {\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Chiudi</button>\r\n } @else {\r\n <button mat-flat-button (click)=\"ok()\">Salva</button>\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".mat-mdc-dialog-content{height:calc(100% - 52px)!important;max-height:calc(100% - 52px)!important}::ng-deep .full-screen-editor>.tox-tinymce{height:100%!important}\n"], dependencies: [{ kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "licenseKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "readonly", "disabled"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: FlexModule }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i2.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
236
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FullScreenEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
237
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.0", type: FullScreenEditorComponent, isStandalone: true, selector: "ng-component", outputs: { saving: "saving" }, ngImport: i0, template: "<mat-dialog-content style=\"padding: 10px 10px 0 10px\">\r\n <editor style=\"height: 100%;\" [init]=\"tinymceConfig\" class=\"full-screen-editor\" [disabled]=\"disabled()\"\r\n [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" fxFill>\r\n <div fxFlex=\"50\">\r\n @if(dialogData().onShowInfo) {\r\n <button mat-stroked-button (click)=\"dialogData().onShowInfo()\">{{dialogData().infoButtonLabel ?? 'Informazioni'}}\r\n </button>\r\n }\r\n </div>\r\n <div fxFlex=\"50\" fxLayoutAlign=\"end\">\r\n @if (disabled()) {\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Chiudi</button>\r\n } @else {\r\n <button mat-flat-button (click)=\"ok()\">Salva</button>\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".mat-mdc-dialog-content{height:calc(100% - 52px)!important;max-height:calc(100% - 52px)!important}::ng-deep .full-screen-editor>.tox-tinymce{height:100%!important}\n"], dependencies: [{ kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "licenseKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "readonly", "disabled"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: FlexModule }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i2.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
236
238
  }
237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: FullScreenEditorComponent, decorators: [{
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FullScreenEditorComponent, decorators: [{
238
240
  type: Component,
239
241
  args: [{ standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatDialogContent, EditorComponent, FormsModule, MatDialogActions, FlexModule,
240
242
  MatButtonModule, MatDialogClose], template: "<mat-dialog-content style=\"padding: 10px 10px 0 10px\">\r\n <editor style=\"height: 100%;\" [init]=\"tinymceConfig\" class=\"full-screen-editor\" [disabled]=\"disabled()\"\r\n [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" fxFill>\r\n <div fxFlex=\"50\">\r\n @if(dialogData().onShowInfo) {\r\n <button mat-stroked-button (click)=\"dialogData().onShowInfo()\">{{dialogData().infoButtonLabel ?? 'Informazioni'}}\r\n </button>\r\n }\r\n </div>\r\n <div fxFlex=\"50\" fxLayoutAlign=\"end\">\r\n @if (disabled()) {\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Chiudi</button>\r\n } @else {\r\n <button mat-flat-button (click)=\"ok()\">Salva</button>\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".mat-mdc-dialog-content{height:calc(100% - 52px)!important;max-height:calc(100% - 52px)!important}::ng-deep .full-screen-editor>.tox-tinymce{height:100%!important}\n"] }]
@@ -1 +1 @@
1
- {"version":3,"file":"arsedizioni-ars-utils-tinymce.mjs","sources":["../../../projects/ars-utils/tinymce/utils.ts","../../../projects/ars-utils/tinymce/tinymce.module.ts","../../../projects/ars-utils/tinymce/full-screen-editor/full-screen-editor.component.ts","../../../projects/ars-utils/tinymce/full-screen-editor/full-screen-editor.component.html","../../../projects/ars-utils/tinymce/public_api.ts","../../../projects/ars-utils/tinymce/arsedizioni-ars-utils-tinymce.ts"],"sourcesContent":["export class TinymceUtils {\r\n /** URL of the TinyMCE script hosted on the Tiny Cloud CDN. */\r\n static readonly CDN_URL = 'https://cdn.tiny.cloud/1/5lnoc6ohmpjau6zyzgqyhyf52cueoennkcs8v1yfoak57ku9/tinymce/7/tinymce.min.js';\r\n /** URL of the locally bundled TinyMCE script. */\r\n static readonly LOCAL_URL = '/assets/tinymce/tinymce.min.js';\r\n\r\n /**\r\n * Full-featured TinyMCE base configuration with all standard plugins and toolbar.\r\n */\r\n static TinymceConfig: Record<string, any> = {\r\n base_url: 'assets/tinymce',\r\n suffix: '.min',\r\n license_key: 'gpl', // per evitare il warning riportarla direttamente nell'html: <editor licenseKey=\"gpl\" ...></editor>\r\n language: 'it',\r\n language_url: \"assets/tinymce/langs/it.js\",\r\n height: 500,\r\n width: '100%',\r\n min_height: 250,\r\n ui_mode: 'split',\r\n onboarding: false,\r\n branding: false,\r\n convert_urls: false,\r\n quickbars_insert_toolbar: false,\r\n quickbars_selection_toolbar: 'removeformat | bold italic | superscript subscript | quicklink h2 h3 blockquote',\r\n fullpage_default_doctype: '<!DOCTYPE html>',\r\n fullpage_default_encoding: 'UTF-8',\r\n fullpage_default_font_family: '\\'Helvetica Neue\\', sans-serif', // '\\'Times New Roman\\', Georgia, Serif',\r\n fullpage_default_xml_pi: false,\r\n fullpage_hide_in_source_view: false,\r\n browser_spellcheck: true,\r\n spellchecker_language: 'it_IT',\r\n save_enablewhendirty: true,\r\n custom_undo_redo_levels: 50,\r\n nonbreaking_force_tab: true, // inserisce 3 &nbsp; per ogni pressione di TAB\r\n nonbreaking_wrap: false,\r\n help_tabs: ['shortcuts', 'keyboardnav', 'versions'],\r\n plugins: 'advlist anchor autolink autosave charmap code fullscreen help hr image insertdatetime link lists media table nonbreaking paste preview print quickbars searchreplace textpattern visualblocks visualchars',\r\n menubar: false,\r\n skin: window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"oxide-dark\" : \"oxide\",\r\n content_css: window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"dark\" : \"default\",\r\n toolbar: [\r\n 'fullscreen | undo redo searchreplace | code openCodeMirrorButton preview fullpage | link image media insertMediaButton charmap nonbreaking | table tableprops tabledelete',\r\n 'bold italic superscript subscript forecolor backcolor | alignleft aligncenter alignright alignjustify | removeformat | bullist numlist checklist'\r\n ],\r\n style_formats: [\r\n {\r\n title: 'Immagini float', items: [\r\n {\r\n title: 'Immagine a SX',\r\n selector: 'img',\r\n styles: { float: 'left', margin: '0 10px 0 10px' }\r\n },\r\n {\r\n title: 'Immagine a DX',\r\n selector: 'img',\r\n styles: { float: 'right', margin: '0 10px 0 10px' }\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Formati', items: [\r\n { title: 'Grassetto', format: 'bold' },\r\n { title: 'Corsivo', format: 'italic' },\r\n { title: 'Sottolineato', format: 'underline' },\r\n { title: 'Barrato', format: 'strikethrough' },\r\n { title: 'Superscript', format: 'superscript' },\r\n { title: 'Subscript', format: 'subscript' },\r\n { title: 'Codice', format: 'code' }\r\n ]\r\n }],\r\n formats: {\r\n underline: { inline: 'span', styles: { 'text-decoration': 'underline' }, exact: true },\r\n strikethrough: { inline: 'span', styles: { 'text-decoration': 'line-through' }, exact: true }\r\n },\r\n insertdatetime_formats: ['%d/%m/%Y', '%d %b %Y', '%A, %d %B %Y'],\r\n link_default_target: '_blank',\r\n link_title: true,\r\n link_assume_external_targets: 'https',\r\n link_class_list: [\r\n { title: 'Nessuno', value: '' },\r\n { title: 'Rilevante', value: 'relevant' },\r\n ],\r\n link_context_toolbar: true,\r\n link_list: [\r\n { title: 'Ars Edizioni', value: 'https://www.arsedizioni.it' },\r\n { title: 'Ars Edizioni - Corsi', value: 'https://www.arsedizioni.it/Events' },\r\n { title: 'Clipper', value: 'https://clipper.arsedizioni.it' },\r\n { title: 'Registro', value: 'https://registro.arsedizioni.it' },\r\n { title: 'Ars EVO', value: 'https://evolution.arsedizioni.it' },\r\n { title: 'DG Info', value: 'https://dginfo.arsedizioni.it' },\r\n { title: 'Lavoro e Ambiente', value: 'https://lavoroeambiente.arsedizioni.it' },\r\n { title: 'Sostanze Alimentari', value: 'https://sostanzealimentari.arsedizioni.it' },\r\n { title: 'OrangeNews', value: 'https://orangenews.arsedizioni.it' },\r\n { title: 'MyARS', value: 'https://my.arsedizioni.it' },\r\n { title: 'Canale Youtube Ars', value: 'https://www.youtube.com/user/ARSEDZ' },\r\n // { title: 'My page 2', value: 'https://about.tiny.cloud' }\r\n ],\r\n link_quicklink: true,\r\n rel_list: false,\r\n image_advtab: true,\r\n paste_data_images: true,\r\n image_caption: true,\r\n image_title: true,\r\n automatic_uploads: true,\r\n images_reuse_filename: true,\r\n images_upload_credentials: true,\r\n file_picker_types: 'file image',\r\n };\r\n\r\n /**\r\n * Compact TinyMCE configuration with autoresize, bottom toolbar, and grouped toolbar buttons.\r\n * Extends `TinymceConfig` with reduced height and a simplified toolbar.\r\n */\r\n static TinymceCompactConfig: Record<string, any> = Object.assign({}, this.TinymceConfig, {\r\n height: 200,\r\n width: '100%',\r\n suffix: '.min',\r\n license_key: 'gpl',\r\n ui_mode: 'split',\r\n min_height: 200,\r\n max_height: 500,\r\n quickbars_insert_toolbar: 'quickimage hr',\r\n quickbars_selection_toolbar: 'removeformat | bold italic | superscript subscript | quicklink h2 h3 blockquote',\r\n plugins: 'advlist anchor autolink autosave autoresize charmap code image insertdatetime link lists media table nonbreaking preview quickbars searchreplace visualblocks visualchars',\r\n statusbar: false,\r\n menubar: false,\r\n contextmenu: false,\r\n toolbar_location: 'bottom',\r\n toolbar: ['undo redo | quickimage | formatgroup paragraphgroup '],\r\n toolbar_groups: {\r\n formatgroup: {\r\n icon: 'format',\r\n tooltip: 'Formatting',\r\n items: 'bold italic underline superscript subscript | forecolor backcolor | removeformat'\r\n },\r\n paragraphgroup: {\r\n icon: 'paragraph',\r\n tooltip: 'Paragraph format',\r\n items: 'h1 h2 h3 | bullist numlist | alignleft aligncenter alignright alignjustify | indent outdent'\r\n },\r\n insertgroup: {\r\n icon: 'plus',\r\n tooltip: 'Insert',\r\n items: 'quickimage media | link charmap nonbreaking | table tableprops tabledelete'\r\n }\r\n },\r\n formats: {\r\n underline: { inline: 'span', styles: { 'text-decoration': 'underline' }, exact: true },\r\n strikethrough: { inline: 'span', styles: { 'text-decoration': 'line-through' }, exact: true }\r\n },\r\n link_default_target: '_blank',\r\n link_title: true,\r\n link_assume_external_targets: 'https',\r\n link_class_list: [],\r\n });\r\n\r\n /**\r\n * Extended compact TinyMCE configuration that adds fullscreen support and an insert group.\r\n * Extends `TinymceCompactConfig`.\r\n */\r\n static TinymceCompactExtendedConfig: Record<string, any> = Object.assign({}, this.TinymceCompactConfig, {\r\n license_key: 'gpl',\r\n ui_mode: 'split',\r\n plugins: 'advlist anchor autolink autosave autoresize charmap code image insertdatetime fullscreen link lists media table nonbreaking preview quickbars searchreplace visualblocks visualchars',\r\n toolbar: ['undo redo | quickimage insertgroup | formatgroup paragraphgroup | code | fullscreen '],\r\n });\r\n\r\n\r\n /**\r\n * Inject the TinyMCE script tag into the document head if it is not already present.\r\n * @param useCDN - When `true`, loads from the Tiny Cloud CDN; otherwise uses the local asset.\r\n */\r\n static loadTinyMCEScript(useCDN?: boolean): void {\r\n const url = useCDN === true ? this.CDN_URL : this.LOCAL_URL;\r\n if (!document.querySelector(`script[src=\"${url}\"]`)) {\r\n const script = document.createElement('script');\r\n script.src = url;\r\n script.referrerPolicy = 'origin';\r\n document.head.appendChild(script);\r\n }\r\n }\r\n}","import { NgModule } from '@angular/core';\r\n\r\n@NgModule({\r\n})\r\nexport class ArsTinyMceModule { }\r\n\r\nexport * from './utils';","import { ChangeDetectionStrategy, Component, inject, output, signal } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA, MatDialogContent, MatDialogActions, MatDialogClose } from '@angular/material/dialog';\r\nimport { SystemUtils } from '@arsedizioni/ars-utils/core';\r\nimport { TinymceUtils } from '../utils';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { FlexModule } from '@ngbracket/ngx-layout/flex';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { EditorComponent } from '@tinymce/tinymce-angular';\r\n\r\nexport interface FullScreenEditorDialogData {\r\n text: string;\r\n configuration: Record<string, any>;\r\n infoButtonLabel?: string;\r\n onShowInfo?: Function,\r\n disabled?: boolean;\r\n useCDN?: boolean;\r\n}\r\n\r\n@Component({\r\n templateUrl: './full-screen-editor.component.html',\r\n styleUrls: ['./full-screen-editor.component.scss'],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [MatDialogContent, EditorComponent, FormsModule, MatDialogActions, FlexModule, \r\n MatButtonModule, MatDialogClose]\r\n})\r\nexport class FullScreenEditorComponent {\r\n\r\n /** Emitted with the edited text when the user saves. */\r\n readonly saving = output<string>();\r\n private readonly dialogRef = inject(MatDialogRef<FullScreenEditorComponent>);\r\n /** Dialog configuration, injected and exposed as a signal. */\r\n protected readonly dialogData = signal<FullScreenEditorDialogData>((() => {\r\n const data: FullScreenEditorDialogData = inject(MAT_DIALOG_DATA) ?? {};\r\n return { ...data, text: data.text ?? '' };\r\n })());\r\n /** Whether the editor is in read-only mode. */\r\n protected readonly disabled = signal<boolean>(false);\r\n /** Current editor content, kept as a plain field for [(ngModel)] two-way binding. */\r\n protected text: string;\r\n /** TinyMCE editor configuration. */\r\n protected tinymceConfig: Record<string, any>;\r\n\r\n constructor() {\r\n const data = this.dialogData();\r\n this.text = data.text;\r\n if (data.configuration) {\r\n this.tinymceConfig = { ...data.configuration, license_key: 'gpl' };\r\n } else {\r\n this.tinymceConfig = SystemUtils.clone(TinymceUtils.TinymceCompactExtendedConfig);\r\n }\r\n this.tinymceConfig['toolbar'] = ['undo redo | formatgroup paragraphgroup insertgroup | code openCodeMirrorButton'];\r\n this.disabled.set(data.disabled ?? false);\r\n }\r\n\r\n\r\n /**\r\n * Save the current editor content and close the dialog.\r\n */\r\n protected ok(): void {\r\n this.saving.emit(this.text ?? '');\r\n setTimeout(() => {\r\n this.dialogRef.close();\r\n }, 500);\r\n }\r\n}\r\n","<mat-dialog-content style=\"padding: 10px 10px 0 10px\">\r\n <editor style=\"height: 100%;\" [init]=\"tinymceConfig\" class=\"full-screen-editor\" [disabled]=\"disabled()\"\r\n [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" fxFill>\r\n <div fxFlex=\"50\">\r\n @if(dialogData().onShowInfo) {\r\n <button mat-stroked-button (click)=\"dialogData().onShowInfo()\">{{dialogData().infoButtonLabel ?? 'Informazioni'}}\r\n </button>\r\n }\r\n </div>\r\n <div fxFlex=\"50\" fxLayoutAlign=\"end\">\r\n @if (disabled()) {\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Chiudi</button>\r\n } @else {\r\n <button mat-flat-button (click)=\"ok()\">Salva</button>\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</mat-dialog-actions>\r\n","/*\r\n * Public API Surface of ars-utils-tinymce\r\n */\r\nexport * from './tinymce.module';\r\nexport * from './utils';\r\nexport * from './full-screen-editor/full-screen-editor.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arsedizioni-ars-utils-tinymce.mjs","sources":["../../../projects/ars-utils/tinymce/utils.ts","../../../projects/ars-utils/tinymce/tinymce.module.ts","../../../projects/ars-utils/tinymce/full-screen-editor/full-screen-editor.component.ts","../../../projects/ars-utils/tinymce/full-screen-editor/full-screen-editor.component.html","../../../projects/ars-utils/tinymce/public_api.ts","../../../projects/ars-utils/tinymce/arsedizioni-ars-utils-tinymce.ts"],"sourcesContent":["export class TinymceUtils {\r\n /** URL of the TinyMCE script hosted on the Tiny Cloud CDN. */\r\n static readonly CDN_URL = 'https://cdn.tiny.cloud/1/5lnoc6ohmpjau6zyzgqyhyf52cueoennkcs8v1yfoak57ku9/tinymce/7/tinymce.min.js';\r\n /** URL of the locally bundled TinyMCE script. */\r\n static readonly LOCAL_URL = '/assets/tinymce/tinymce.min.js';\r\n\r\n /**\r\n * Full-featured TinyMCE base configuration with all standard plugins and toolbar.\r\n */\r\n static TinymceConfig: Record<string, any> = {\r\n base_url: 'assets/tinymce',\r\n suffix: '.min',\r\n license_key: 'gpl', // per evitare il warning riportarla direttamente nell'html: <editor licenseKey=\"gpl\" ...></editor>\r\n language: 'it',\r\n language_url: \"assets/tinymce/langs/it.js\",\r\n height: 500,\r\n width: '100%',\r\n min_height: 250,\r\n ui_mode: 'split',\r\n onboarding: false,\r\n branding: false,\r\n convert_urls: false,\r\n quickbars_insert_toolbar: false,\r\n quickbars_selection_toolbar: 'removeformat | bold italic | superscript subscript | quicklink h2 h3 blockquote',\r\n fullpage_default_doctype: '<!DOCTYPE html>',\r\n fullpage_default_encoding: 'UTF-8',\r\n fullpage_default_font_family: '\\'Helvetica Neue\\', sans-serif', // '\\'Times New Roman\\', Georgia, Serif',\r\n fullpage_default_xml_pi: false,\r\n fullpage_hide_in_source_view: false,\r\n browser_spellcheck: true,\r\n spellchecker_language: 'it_IT',\r\n save_enablewhendirty: true,\r\n custom_undo_redo_levels: 50,\r\n nonbreaking_force_tab: true, // inserisce 3 &nbsp; per ogni pressione di TAB\r\n nonbreaking_wrap: false,\r\n help_tabs: ['shortcuts', 'keyboardnav', 'versions'],\r\n plugins: 'advlist anchor autolink autosave charmap code fullscreen help hr image insertdatetime link lists media table nonbreaking paste preview print quickbars searchreplace textpattern visualblocks visualchars',\r\n menubar: false,\r\n skin: window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"oxide-dark\" : \"oxide\",\r\n content_css: window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"dark\" : \"default\",\r\n toolbar: [\r\n 'fullscreen | undo redo searchreplace | code openCodeMirrorButton preview fullpage | link image media insertMediaButton charmap nonbreaking | table tableprops tabledelete',\r\n 'bold italic superscript subscript forecolor backcolor | alignleft aligncenter alignright alignjustify | removeformat | bullist numlist checklist'\r\n ],\r\n style_formats: [\r\n {\r\n title: 'Immagini float', items: [\r\n {\r\n title: 'Immagine a SX',\r\n selector: 'img',\r\n styles: { float: 'left', margin: '0 10px 0 10px' }\r\n },\r\n {\r\n title: 'Immagine a DX',\r\n selector: 'img',\r\n styles: { float: 'right', margin: '0 10px 0 10px' }\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Formati', items: [\r\n { title: 'Grassetto', format: 'bold' },\r\n { title: 'Corsivo', format: 'italic' },\r\n { title: 'Sottolineato', format: 'underline' },\r\n { title: 'Barrato', format: 'strikethrough' },\r\n { title: 'Superscript', format: 'superscript' },\r\n { title: 'Subscript', format: 'subscript' },\r\n { title: 'Codice', format: 'code' }\r\n ]\r\n }],\r\n formats: {\r\n underline: { inline: 'span', styles: { 'text-decoration': 'underline' }, exact: true },\r\n strikethrough: { inline: 'span', styles: { 'text-decoration': 'line-through' }, exact: true }\r\n },\r\n insertdatetime_formats: ['%d/%m/%Y', '%d %b %Y', '%A, %d %B %Y'],\r\n link_default_target: '_blank',\r\n link_title: true,\r\n link_assume_external_targets: 'https',\r\n link_class_list: [\r\n { title: 'Nessuno', value: '' },\r\n { title: 'Rilevante', value: 'relevant' },\r\n ],\r\n link_context_toolbar: true,\r\n link_list: [\r\n { title: 'Ars Edizioni', value: 'https://www.arsedizioni.it' },\r\n { title: 'Ars Edizioni - Corsi', value: 'https://www.arsedizioni.it/Events' },\r\n { title: 'Clipper', value: 'https://clipper.arsedizioni.it' },\r\n { title: 'Registro', value: 'https://registro.arsedizioni.it' },\r\n { title: 'Ars EVO', value: 'https://evolution.arsedizioni.it' },\r\n { title: 'DG Info', value: 'https://dginfo.arsedizioni.it' },\r\n { title: 'Lavoro e Ambiente', value: 'https://lavoroeambiente.arsedizioni.it' },\r\n { title: 'Sostanze Alimentari', value: 'https://sostanzealimentari.arsedizioni.it' },\r\n { title: 'OrangeNews', value: 'https://orangenews.arsedizioni.it' },\r\n { title: 'MyARS', value: 'https://my.arsedizioni.it' },\r\n { title: 'Canale Youtube Ars', value: 'https://www.youtube.com/user/ARSEDZ' },\r\n // { title: 'My page 2', value: 'https://about.tiny.cloud' }\r\n ],\r\n link_quicklink: true,\r\n rel_list: false,\r\n image_advtab: true,\r\n paste_data_images: true,\r\n image_caption: true,\r\n image_title: true,\r\n automatic_uploads: true,\r\n images_reuse_filename: true,\r\n images_upload_credentials: true,\r\n file_picker_types: 'file image',\r\n };\r\n\r\n /**\r\n * Compact TinyMCE configuration with autoresize, bottom toolbar, and grouped toolbar buttons.\r\n * Extends `TinymceConfig` with reduced height and a simplified toolbar.\r\n */\r\n static TinymceCompactConfig: Record<string, any> = Object.assign({}, this.TinymceConfig, {\r\n height: 200,\r\n width: '100%',\r\n suffix: '.min',\r\n license_key: 'gpl',\r\n ui_mode: 'split',\r\n min_height: 200,\r\n max_height: 500,\r\n quickbars_insert_toolbar: 'quickimage hr',\r\n quickbars_selection_toolbar: 'removeformat | bold italic | superscript subscript | quicklink h2 h3 blockquote',\r\n plugins: 'advlist anchor autolink autosave autoresize charmap code image insertdatetime link lists media table nonbreaking preview quickbars searchreplace visualblocks visualchars',\r\n statusbar: false,\r\n menubar: false,\r\n contextmenu: false,\r\n toolbar_location: 'bottom',\r\n toolbar: ['undo redo | quickimage | formatgroup paragraphgroup '],\r\n toolbar_groups: {\r\n formatgroup: {\r\n icon: 'format',\r\n tooltip: 'Formatting',\r\n items: 'bold italic underline superscript subscript | forecolor backcolor | removeformat'\r\n },\r\n paragraphgroup: {\r\n icon: 'paragraph',\r\n tooltip: 'Paragraph format',\r\n items: 'h1 h2 h3 | bullist numlist | alignleft aligncenter alignright alignjustify | indent outdent'\r\n },\r\n insertgroup: {\r\n icon: 'plus',\r\n tooltip: 'Insert',\r\n items: 'quickimage media | link charmap nonbreaking | table tableprops tabledelete'\r\n }\r\n },\r\n formats: {\r\n underline: { inline: 'span', styles: { 'text-decoration': 'underline' }, exact: true },\r\n strikethrough: { inline: 'span', styles: { 'text-decoration': 'line-through' }, exact: true }\r\n },\r\n link_default_target: '_blank',\r\n link_title: true,\r\n link_assume_external_targets: 'https',\r\n link_class_list: [],\r\n });\r\n\r\n /**\r\n * Extended compact TinyMCE configuration that adds fullscreen support and an insert group.\r\n * Extends `TinymceCompactConfig`.\r\n */\r\n static TinymceCompactExtendedConfig: Record<string, any> = Object.assign({}, this.TinymceCompactConfig, {\r\n license_key: 'gpl',\r\n ui_mode: 'split',\r\n plugins: 'advlist anchor autolink autosave autoresize charmap code image insertdatetime fullscreen link lists media table nonbreaking preview quickbars searchreplace visualblocks visualchars',\r\n toolbar: ['undo redo | quickimage insertgroup | formatgroup paragraphgroup | code | fullscreen '],\r\n });\r\n\r\n\r\n /**\r\n * Inject the TinyMCE script tag into the document head if it is not already present.\r\n * @param useCDN - When `true`, loads from the Tiny Cloud CDN; otherwise uses the local asset.\r\n */\r\n static loadTinyMCEScript(useCDN?: boolean): void {\r\n const url = useCDN === true ? this.CDN_URL : this.LOCAL_URL;\r\n if (!document.querySelector(`script[src=\"${url}\"]`)) {\r\n const script = document.createElement('script');\r\n script.src = url;\r\n script.referrerPolicy = 'origin';\r\n document.head.appendChild(script);\r\n }\r\n }\r\n}","import { NgModule } from '@angular/core';\r\n\r\n@NgModule({\r\n})\r\nexport class ArsTinyMceModule { }\r\n\r\nexport * from './utils';","import { ChangeDetectionStrategy, Component, inject, output, signal } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA, MatDialogContent, MatDialogActions, MatDialogClose } from '@angular/material/dialog';\r\nimport { SystemUtils } from '@arsedizioni/ars-utils/core';\r\nimport { TinymceUtils } from '../utils';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { FlexModule } from '@ngbracket/ngx-layout/flex';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { EditorComponent } from '@tinymce/tinymce-angular';\r\n\r\nexport interface FullScreenEditorDialogData {\r\n text: string;\r\n configuration: Record<string, any>;\r\n infoButtonLabel?: string;\r\n onShowInfo?: Function,\r\n disabled?: boolean;\r\n useCDN?: boolean;\r\n}\r\n\r\n@Component({\r\n templateUrl: './full-screen-editor.component.html',\r\n styleUrls: ['./full-screen-editor.component.scss'],\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [MatDialogContent, EditorComponent, FormsModule, MatDialogActions, FlexModule, \r\n MatButtonModule, MatDialogClose]\r\n})\r\nexport class FullScreenEditorComponent {\r\n\r\n /** Emitted with the edited text when the user saves. */\r\n readonly saving = output<string>();\r\n private readonly dialogRef = inject(MatDialogRef<FullScreenEditorComponent>);\r\n /** Dialog configuration, injected and exposed as a signal. */\r\n protected readonly dialogData = signal<FullScreenEditorDialogData>((() => {\r\n const data: FullScreenEditorDialogData = inject(MAT_DIALOG_DATA) ?? {};\r\n return { ...data, text: data.text ?? '' };\r\n })());\r\n /** Whether the editor is in read-only mode. */\r\n protected readonly disabled = signal<boolean>(false);\r\n /** Current editor content, kept as a plain field for [(ngModel)] two-way binding. */\r\n protected text: string;\r\n /** TinyMCE editor configuration. */\r\n protected tinymceConfig: Record<string, any>;\r\n\r\n constructor() {\r\n const data = this.dialogData();\r\n this.text = data.text;\r\n if (data.configuration) {\r\n this.tinymceConfig = { ...data.configuration, license_key: 'gpl' };\r\n } else {\r\n this.tinymceConfig = SystemUtils.clone(TinymceUtils.TinymceCompactExtendedConfig);\r\n }\r\n this.tinymceConfig['toolbar'] = ['undo redo | formatgroup paragraphgroup insertgroup | code openCodeMirrorButton'];\r\n this.disabled.set(data.disabled ?? false);\r\n }\r\n\r\n\r\n /**\r\n * Save the current editor content and close the dialog.\r\n */\r\n protected ok(): void {\r\n this.saving.emit(this.text ?? '');\r\n setTimeout(() => {\r\n this.dialogRef.close();\r\n }, 500);\r\n }\r\n}\r\n","<mat-dialog-content style=\"padding: 10px 10px 0 10px\">\r\n <editor style=\"height: 100%;\" [init]=\"tinymceConfig\" class=\"full-screen-editor\" [disabled]=\"disabled()\"\r\n [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" fxFill>\r\n <div fxFlex=\"50\">\r\n @if(dialogData().onShowInfo) {\r\n <button mat-stroked-button (click)=\"dialogData().onShowInfo()\">{{dialogData().infoButtonLabel ?? 'Informazioni'}}\r\n </button>\r\n }\r\n </div>\r\n <div fxFlex=\"50\" fxLayoutAlign=\"end\">\r\n @if (disabled()) {\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Chiudi</button>\r\n } @else {\r\n <button mat-flat-button (click)=\"ok()\">Salva</button>\r\n <button mat-stroked-button [mat-dialog-close]=\"true\">Annulla</button>\r\n }\r\n </div>\r\n </div>\r\n</mat-dialog-actions>\r\n","/*\r\n * Public API Surface of ars-utils-tinymce\r\n */\r\nexport * from './tinymce.module';\r\nexport * from './utils';\r\nexport * from './full-screen-editor/full-screen-editor.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}