@arsedizioni/ars-utils 18.2.375 → 18.2.378
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/clipper.common/common/definitions.d.ts +4 -3
- package/clipper.ui/ui/document/document.component.d.ts +3 -3
- package/clipper.ui/ui/document-index/document-index.component.d.ts +2 -2
- package/clipper.ui/ui/document-menu/document-menu.component.d.ts +1 -1
- package/clipper.ui/ui/search-calendar/search-calendar.component.d.ts +1 -2
- package/clipper.ui/ui/search-dialog/search-dialog.component.d.ts +2 -2
- package/clipper.ui/ui/search-facets/search-facets.component.d.ts +1 -2
- package/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.d.ts +1 -2
- package/esm2022/clipper.common/common/definitions.mjs +2 -1
- package/esm2022/clipper.ui/ui/document/document.component.mjs +7 -11
- package/esm2022/clipper.ui/ui/document-index/document-index.component.mjs +3 -5
- package/esm2022/clipper.ui/ui/search-calendar/search-calendar.component.mjs +3 -5
- package/esm2022/clipper.ui/ui/search-dialog/search-dialog.component.mjs +3 -5
- package/esm2022/clipper.ui/ui/search-facets/search-facets.component.mjs +4 -6
- package/esm2022/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.mjs +4 -6
- package/esm2022/evolution.common/common/definitions.mjs +1 -1
- package/esm2022/tinymce/full-screen-editor/full-screen-editor.component.mjs +4 -6
- package/esm2022/ui/ui/dialogs/confirm/confirm-dialog.component.mjs +4 -6
- package/esm2022/ui/ui/dialogs/credentials/credentials-dialog.component.mjs +5 -9
- package/esm2022/ui/ui/dialogs/recover-password/recover-password-dialog.component.mjs +4 -6
- package/esm2022/ui/ui/dialogs/reset-password/reset-password-dialog.component.mjs +4 -6
- package/esm2022/ui/ui/dialogs/toast/toast.component.mjs +4 -6
- package/esm2022/ui.application/ui/components/button-selector/button-selector.component.mjs +5 -9
- package/esm2022/ui.application/ui/components/button-toggle/button-toggle.component.mjs +4 -6
- package/esm2022/ui.application/ui/components/chips-selector/chips-selector.component.mjs +4 -6
- package/esm2022/ui.application/ui/components/file-input/file-input.component.mjs +6 -12
- package/esm2022/ui.application/ui/components/filter-bar/filter-bar.component.mjs +4 -6
- package/esm2022/ui.application/ui/dialogs/prompt/prompt-dialog.component.mjs +3 -5
- package/esm2022/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.mjs +3 -5
- package/esm2022/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.mjs +3 -5
- package/esm2022/ui.application/ui/dialogs/select/select-dialog.component.mjs +10 -26
- package/esm2022/ui.application/ui/dialogs/select-file/select-file-dialog.component.mjs +4 -6
- package/esm2022/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.mjs +4 -6
- package/esm2022/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.mjs +4 -6
- package/esm2022/ui.application/ui/dialogs/send-to/send-to-dialog.component.mjs +5 -9
- package/esm2022/ui.oauth/ui/components/login/login-oauth.component.mjs +4 -6
- package/evolution.common/common/definitions.d.ts +2 -2
- package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs +1 -0
- package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +973 -987
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-evolution.common.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-tinymce.mjs +3 -5
- package/fesm2022/arsedizioni-ars-utils-tinymce.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +34 -82
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.mjs +12 -24
- package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs +3 -5
- package/fesm2022/arsedizioni-ars-utils-ui.oauth.mjs.map +1 -1
- package/package.json +1 -1
- package/tinymce/full-screen-editor/full-screen-editor.component.d.ts +2 -2
- package/ui/ui/dialogs/confirm/confirm-dialog.component.d.ts +2 -2
- package/ui/ui/dialogs/credentials/credentials-dialog.component.d.ts +3 -3
- package/ui/ui/dialogs/recover-password/recover-password-dialog.component.d.ts +1 -2
- package/ui/ui/dialogs/reset-password/reset-password-dialog.component.d.ts +2 -2
- package/ui/ui/dialogs/toast/toast.component.d.ts +1 -2
- package/ui.application/ui/components/button-selector/button-selector.component.d.ts +3 -3
- package/ui.application/ui/components/button-toggle/button-toggle.component.d.ts +2 -2
- package/ui.application/ui/components/chips-selector/chips-selector.component.d.ts +2 -2
- package/ui.application/ui/components/file-input/file-input.component.d.ts +4 -4
- package/ui.application/ui/components/filter-bar/filter-bar.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt/prompt-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/select/select-dialog.component.d.ts +9 -9
- package/ui.application/ui/dialogs/select-file/select-file-dialog.component.d.ts +1 -2
- package/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.d.ts +1 -2
- package/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.d.ts +2 -2
- package/ui.application/ui/dialogs/send-to/send-to-dialog.component.d.ts +3 -3
- package/ui.oauth/ui/components/login/login-oauth.component.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arsedizioni-ars-utils-evolution.common.mjs","sources":["../../../projects/ars-utils/evolution.common/common/messages.ts","../../../projects/ars-utils/evolution.common/common/definitions.ts","../../../projects/ars-utils/evolution.common/common/services/evolution.service.ts","../../../projects/ars-utils/evolution.common/common/interceptors/auth.interceptor.ts","../../../projects/ars-utils/evolution.common/common/common.module.ts","../../../projects/ars-utils/evolution.common/public_api.ts","../../../projects/ars-utils/evolution.common/arsedizioni-ars-utils-evolution.common.ts"],"sourcesContent":["export const EvolutionMessages = {\r\n // Login\r\n LOGIN_CHANGED: '§evo-login-changed',\r\n LOGIN_COMPLETED: '§evo-login-completed',\r\n LOGOUT_COMPLETED: '§evo-logout-completed',\r\n LOGOUT: '§evo-logout'\r\n};\r\n","import { LoginResult } from '@arsedizioni/ars-utils/core';\r\nimport { LoginOAuthType } from '@arsedizioni/ars-utils/ui.oauth';\r\n\r\nexport enum ERPComplianceLawsSelectionType {\r\n Analysis = 1,\r\n Activity = 2,\r\n}\r\n\r\nexport enum ERPComplianceProfileRole {\r\n None = 0,\r\n Analyst = 1,\r\n Planner = 1 << 1,\r\n Validator = 1 << 2,\r\n Executor = 1 << 3,\r\n Observer = 1 << 4,\r\n}\r\n\r\nexport enum ERPComplianceProfileFlags {\r\n\r\n OverrideNotificationRegisterSettings = 1 << 4,\r\n}\r\n\r\nexport enum ERPComplianceScope {\r\n None = 0,\r\n Environment = 1,\r\n Safety = 1 << 1,\r\n FoodSafety = 1 << 2,\r\n Energy = 1 << 3,\r\n Health = 1 << 4,\r\n Maintenance = 1 << 5,\r\n Quality = 1 << 6,\r\n Organization = 1 << 7,\r\n Logistics = 1 << 8,\r\n Facility = 1 << 9,\r\n Security = 1 << 10\r\n}\r\n\r\nexport enum ERPComplianceNotificationLimit {\r\n None = 0,\r\n PlannerOnly = 1,\r\n ExecutorOnly = 2,\r\n Both = 3,\r\n}\r\n\r\nexport enum ERPComplianceRegisterNotificationType {\r\n None = 0,\r\n NewAnalysis = 1,\r\n AnalysisCompleted = 1 << 1,\r\n AnalysisNoticePeriodStarted = 1 << 2,\r\n AnalysisPeriodExpired = 1 << 3,\r\n AnalysisLawChanged = 1 << 14,\r\n NewPlanning = 1 << 13,\r\n PlanningCompleted = 1 << 4,\r\n PlanningNoticePeriodStarted = 1 << 5,\r\n PlanningPeriodExpired = 1 << 6,\r\n NewValidation = 1 << 15,\r\n ValidationCompleted = 1 << 7,\r\n ValidationNoticePeriodStarted = 1 << 8,\r\n ValidationPeriodExpired = 1 << 9,\r\n NewDeadline = 1 << 16,\r\n DeadlineNoticePeriodStarted = 1 << 10,\r\n DeadlineExpired = 1 << 11,\r\n ActivityCompleted = 1 << 12,\r\n //NewNoncompliance = 1 << 17,\r\n //NonComplianceNoticePeriodStarted = 1 << 18,\r\n //NonCompliancePeriodExpired = 1 << 19,\r\n //NonComplianceCompleted = 1 << 20,\r\n LawChanged = 1 << 21,\r\n}\r\n\r\nexport enum ERPComplianceRegisterSiteImportOptions\r\n{\r\n CopyAttachments = 1,\r\n KeepOriginalDates = 1 << 1,\r\n DuplicateLaws = 1 << 2,\r\n DiscardNotApplicables = 1 << 3\r\n}\r\n\r\nexport const ProfileRoles = [\r\n { name: 'Analista', value: ERPComplianceProfileRole.Analyst },\r\n { name: 'Gestore', value: ERPComplianceProfileRole.Planner },\r\n //{ name: 'Validatore', value: ERPComplianceProfileRole.Validator },\r\n { name: 'Esecutore', value: ERPComplianceProfileRole.Executor },\r\n { name: 'Osservatore', value: ERPComplianceProfileRole.Observer },\r\n];\r\n\r\nexport const ProfileFlags = [\r\n { name: 'Deroghe e limitazioni', divider: true },\r\n {\r\n name:\r\n 'Questo profilo riceve regolarmente le notifiche indipendentemente dalla configurazione generale del registro',\r\n value: ERPComplianceProfileFlags.OverrideNotificationRegisterSettings,\r\n },\r\n];\r\n\r\nexport const Scopes = [\r\n { name: 'Ambiente', value: ERPComplianceScope.Environment },\r\n { name: 'Salute e sicurezza', value: ERPComplianceScope.Safety },\r\n {\r\n name: 'Sicurezza alimentare',\r\n value: ERPComplianceScope.FoodSafety,\r\n },\r\n { name: 'Energia', value: ERPComplianceScope.Energy },\r\n { name: 'Servizi generali', value: ERPComplianceScope.Facility },\r\n { name: 'Manutenzione', value: ERPComplianceScope.Maintenance },\r\n { name: 'Qualità', value: ERPComplianceScope.Quality },\r\n { name: 'Organizzazione', value: ERPComplianceScope.Organization },\r\n { name: 'Logistica', value: ERPComplianceScope.Logistics },\r\n { name: 'Security', value: ERPComplianceScope.Security },\r\n \r\n];\r\n\r\nexport const NotificationLimits = [\r\n { name: 'Nessuna limitazione', value: ERPComplianceNotificationLimit.None },\r\n {\r\n name: 'Solo gestore che ha pianificato',\r\n value: ERPComplianceNotificationLimit.PlannerOnly,\r\n },\r\n {\r\n name: \"Solo all'incaricato designato\",\r\n value: ERPComplianceNotificationLimit.ExecutorOnly,\r\n },\r\n {\r\n name: 'Solo a gestore e incaricato designato',\r\n value: ERPComplianceNotificationLimit.Both,\r\n },\r\n];\r\n\r\nexport const Notifications = [\r\n { name: 'Verifica applicabilità e analisi', divider: true },\r\n {\r\n name: 'Richiesta analisi',\r\n value: ERPComplianceRegisterNotificationType.NewAnalysis,\r\n },\r\n {\r\n name: \"Preavviso: sta per scadere il termine fissato per l'analisi\",\r\n value: ERPComplianceRegisterNotificationType.AnalysisNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'analisi\",\r\n value: ERPComplianceRegisterNotificationType.AnalysisPeriodExpired,\r\n },\r\n {\r\n name: 'Analisi completata',\r\n value: ERPComplianceRegisterNotificationType.AnalysisCompleted,\r\n },\r\n {\r\n name: 'Avviso norma modificata dal legislatore',\r\n value: ERPComplianceRegisterNotificationType.AnalysisLawChanged,\r\n },\r\n { name: 'Pianificazioni', divider: true },\r\n {\r\n name: 'Richiesta gestione',\r\n value: ERPComplianceRegisterNotificationType.NewPlanning,\r\n },\r\n {\r\n name: 'Preavviso: sta per scadere il termine fissato per la gestione',\r\n value: ERPComplianceRegisterNotificationType.PlanningNoticePeriodStarted,\r\n },\r\n {\r\n name: 'Allarme: è scaduto il termine fissato per la gestione',\r\n value: ERPComplianceRegisterNotificationType.PlanningPeriodExpired,\r\n },\r\n {\r\n name: 'Gestione completata',\r\n value: ERPComplianceRegisterNotificationType.PlanningCompleted,\r\n },\r\n {\r\n name: 'Attività completata',\r\n value: ERPComplianceRegisterNotificationType.ActivityCompleted,\r\n },\r\n /*{ name: 'Gestione non conformità', divider: true },\r\n {\r\n name: 'Apertura non comformità',\r\n value: ERPComplianceRegisterNotificationType.NewNoncompliance,\r\n },\r\n {\r\n name:\r\n \"Preavviso: sta per scadere il termine fissato per l'azione correttiva\",\r\n value:\r\n ERPComplianceRegisterNotificationType.NonComplianceNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'azione correttiva\",\r\n value: ERPComplianceRegisterNotificationType.NonCompliancePeriodExpired,\r\n },\r\n {\r\n name: 'Chiusura non conformità',\r\n value: ERPComplianceRegisterNotificationType.NonComplianceCompleted,\r\n },*/\r\n /*{ name: 'Approvazioni', divider: true },\r\n { name: 'Richiesta approvazione', value: 1 << 14 },\r\n {\r\n name: \"Preavviso: sta per scadere il termine fissato per l'approvazione\",\r\n value: ERPComplianceRegisterNotificationType.ValidationNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'approvazione\",\r\n value: ERPComplianceRegisterNotificationType.ValidationPeriodExpired,\r\n },\r\n {\r\n name: 'Approvazione concessa o negata',\r\n value: ERPComplianceRegisterNotificationType.ValidationCompleted,\r\n },*/\r\n { name: 'Scadenze', divider: true },\r\n {\r\n name: 'Preavviso: 1° promemoria sulla data di scadenza',\r\n value: ERPComplianceRegisterNotificationType.NewValidation,\r\n },\r\n {\r\n name: 'Avviso: 2° promemoria sulla data di scadenza',\r\n value: ERPComplianceRegisterNotificationType.DeadlineNoticePeriodStarted,\r\n },\r\n {\r\n name: 'Allarme: è scaduto il termine',\r\n value: ERPComplianceRegisterNotificationType.DeadlineExpired,\r\n },\r\n { name: 'Norme collegate', divider: true },\r\n {\r\n name: 'Modifica o abrogazione',\r\n value: ERPComplianceRegisterNotificationType.LawChanged,\r\n },\r\n\r\n];\r\n\r\nexport enum ERPComplianceLawState {\r\n ApplicableOrAknowledged = 1,\r\n NotApplicable = 2,\r\n NotAnalyzed = 3,\r\n ExpiredAnalysis = 4,\r\n UpdatedLaws = 5,\r\n Analyzed = 6,\r\n Abrogated = 7,\r\n Applicable = 8,\r\n Aknowledged = 9\r\n}\r\n\r\nexport enum ERPComplianceLawOrigin {\r\n National = 1,\r\n EU = 2,\r\n Regional = 3,\r\n Local = 4,\r\n Technical = 5,\r\n Voulontary = 6,\r\n Internal = 7,\r\n Other = 8,\r\n}\r\n\r\nexport const LawStates = [\r\n { name: 'Applicabile', value: ERPComplianceLawState.Applicable },\r\n { name: 'Da conoscere', value: ERPComplianceLawState.Aknowledged },\r\n {\r\n name: 'Applicabile / da conoscere',\r\n value: ERPComplianceLawState.ApplicableOrAknowledged,\r\n },\r\n { name: 'Non applicabile', value: ERPComplianceLawState.NotApplicable },\r\n { name: 'Abrogata', value: ERPComplianceLawState.Abrogated },\r\n { name: 'Analizzata', value: ERPComplianceLawState.Analyzed },\r\n { name: 'Da definire', value: ERPComplianceLawState.NotAnalyzed }, \r\n { name: 'In ritardo', value: ERPComplianceLawState.ExpiredAnalysis },\r\n {\r\n name: 'Con aggiornamenti pendenti',\r\n value: ERPComplianceLawState.UpdatedLaws,\r\n },\r\n];\r\n\r\nexport const LawOrigins = [\r\n { name: 'Nazionale', value: ERPComplianceLawOrigin.National },\r\n { name: 'Comunitaria', value: ERPComplianceLawOrigin.EU },\r\n { name: 'Regionale', value: ERPComplianceLawOrigin.Regional },\r\n { name: 'Locale', value: ERPComplianceLawOrigin.Local },\r\n { name: 'Tecnica', value: ERPComplianceLawOrigin.Technical },\r\n { name: 'Interna', value: ERPComplianceLawOrigin.Internal },\r\n { name: 'Volontaria', value: ERPComplianceLawOrigin.Voulontary },\r\n { name: 'Altro', value: ERPComplianceLawOrigin.Other },\r\n];\r\n\r\nexport const LawChangeStates = [\r\n { name: 'Aperto', value: 1 },\r\n { name: 'Chiuso', value: 2 },\r\n];\r\n\r\nexport enum ERPComplianceActivityState {\r\n NotPlanned = 1 << 7,\r\n Closed = 1 << 2, \r\n Expired = 1 << 3,\r\n Planned = 1 << 8,\r\n Cancelled = 1 << 9,\r\n UpdatedLaws = 1 << 10,\r\n AlreadyManaged = 1 << 11\r\n}\r\n\r\nexport const ActivityStates = [ \r\n {\r\n name: 'Da definire',\r\n value: ERPComplianceActivityState.NotPlanned,\r\n },\r\n {\r\n name: 'Pianificata',\r\n value: ERPComplianceActivityState.Planned,\r\n },\r\n {\r\n name: 'Chiusa',\r\n value: ERPComplianceActivityState.Closed,\r\n },\r\n {\r\n name: 'In ritardo',\r\n value: ERPComplianceActivityState.Expired,\r\n },\r\n {\r\n name: 'Annullata',\r\n value: ERPComplianceActivityState.Cancelled,\r\n },\r\n {\r\n name: 'Gestita separatamente',\r\n value: ERPComplianceActivityState.AlreadyManaged,\r\n },\r\n {\r\n name: 'Con aggiornamenti pendenti',\r\n value: ERPComplianceActivityState.UpdatedLaws,\r\n },\r\n];\r\n\r\nexport const ObligationTypes = [\r\n { name: 'Autorizzazione', value: 1 },\r\n { name: 'Verifiche periodiche manutentive', value: 2 },\r\n { name: 'Misure organizzative', value: 3 },\r\n { name: 'Controlli e misurazioni', value: 4 },\r\n { name: 'Entrata in vigore', value: 5 },\r\n { name: 'Documenti aziendali obbligatori', value: 6 },\r\n {\r\n name: 'Altri adempimenti formali (comunicazioni, dichiarazioni, ecc...)',\r\n value: 7,\r\n },\r\n { name: 'Altro', value: 99 },\r\n];\r\n\r\nexport const ObligationAuthorities = [\r\n { name: 'Agenzia ECHA', value: 1 },\r\n { name: 'Albo Nazionale dei Gestori Ambientali', value: 2 },\r\n { name: 'ARPA', value: 4 },\r\n { name: 'ASL', value: 5 },\r\n { name: 'Camera di Commercio', value: 8 },\r\n { name: 'Comando provinciale dei Vigili del Fuoco', value: 10 },\r\n { name: 'Comune', value: 13 },\r\n { name: 'Consorzi gestione rifiuti particolari', value: 14 },\r\n { name: 'Gestore del servizio', value: 21 },\r\n { name: 'Gestore della rete di trasmissione nazionale', value: 22 },\r\n { name: 'INAIL - IPSEMA - ISPESL', value: 23 },\r\n { name: 'ISPRA', value: 26 },\r\n { name: 'Ministero', value: 27 },\r\n { name: 'Genio civile', value: 30 },\r\n { name: 'Organo di vigilanza competente', value: 31 },\r\n { name: 'Provincia', value: 33 },\r\n { name: 'Regione', value: 35 },\r\n { name: 'Uffici tecnici di finanza', value: 36 },\r\n { name: 'Ispettorato del lavoro', value: 37 },\r\n { name: 'Comitato Regionale Tecnico VF', value: 38 },\r\n { name: 'Prefetto', value: 39 },\r\n { name: 'Organismo notificato', value: 40 },\r\n { name: 'Città Metropolitana', value: 41 },\r\n { name: 'Nessuna', value: 28 },\r\n { name: 'Altro', value: 3 }\r\n];\r\n\r\nexport enum ERPRecurrenceFrequencyType {\r\n Day = 1,\r\n Month = 2,\r\n Year = 3,\r\n}\r\nexport const RecurrenceFrequencyTypes = [\r\n { name: 'Anni', value: ERPRecurrenceFrequencyType.Year },\r\n { name: 'Mesi', value: ERPRecurrenceFrequencyType.Month },\r\n { name: 'Giorni', value: ERPRecurrenceFrequencyType.Day },\r\n];\r\n\r\nexport interface EvolutionLoginResult extends LoginResult<EvolutionLoginInfo> {\r\n}\r\n\r\nexport interface EvolutionLoginInfo {\r\n context: any;\r\n complianceContext?: any | null;\r\n userCredentials?: string | null;\r\n userId?: number | null;\r\n OAUTH?: LoginOAuthType | null;\r\n}\r\n\r\nexport interface EvolutionUserLink {\r\n id: number;\r\n userId: number;\r\n userName: string;\r\n key: string;\r\n}","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { inject, Injectable, OnDestroy, signal } from '@angular/core';\r\nimport { ApiResult, BroadcastMessageInfo, BroadcastService, INode, SystemUtils } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { of, Subscription, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { EvolutionLoginInfo, EvolutionLoginResult, EvolutionUserLink } from '../definitions';\r\nimport { EvolutionMessages } from '../messages';\r\nimport { LoginOAuthType } from '@arsedizioni/ars-utils/ui.oauth';\r\n\r\n\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EvolutionService implements OnDestroy {\r\n\r\n\r\n private httpClient = inject(HttpClient);\r\n private broadcastService = inject(BroadcastService);\r\n private broadcastServiceSubscription?: Subscription | null = null;\r\n private dialogService = inject(DialogService);\r\n\r\n private _serviceUri: string | null = null;\r\n get serviceUri(): string | null {\r\n return this._serviceUri;\r\n }\r\n private _loginInfo: EvolutionLoginInfo | null = null;\r\n get loginInfo(): EvolutionLoginInfo | null {\r\n if (!this._loginInfo) {\r\n const loginInfo = localStorage.getItem('clipper_login_evolution');\r\n if (loginInfo) {\r\n try {\r\n this._loginInfo = JSON.parse(loginInfo) as EvolutionLoginInfo;\r\n } catch { }\r\n }\r\n }\r\n return this._loginInfo;\r\n }\r\n public readonly loggedIn = signal<boolean>(false);\r\n public readonly loggingIn = signal<boolean>(false);\r\n\r\n\r\n\r\n ngOnDestroy() {\r\n if (this.broadcastServiceSubscription) {\r\n this.broadcastServiceSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n /**\r\n * Initialize service\r\n * @param serviceUri : the service uri\r\n */\r\n initialize(\r\n serviceUri: string) {\r\n // Create unique client id\r\n if (!localStorage.getItem('evolution_client_id')) {\r\n localStorage.setItem('evolution_client_id', SystemUtils.generateUUID());\r\n }\r\n\r\n // Initialize\r\n this._serviceUri = serviceUri;\r\n\r\n // React to message broadcasting\r\n if (!this.broadcastServiceSubscription) {\r\n this.broadcastServiceSubscription = this.broadcastService.getMessage().subscribe((message: BroadcastMessageInfo) => {\r\n if (message.id === EvolutionMessages.LOGIN_CHANGED) {\r\n setTimeout(() => {\r\n this.login(\r\n message.data.email,\r\n message.data.password,\r\n true,\r\n message.data.oauth,\r\n message.data.oauthAccessToken).subscribe((r: ApiResult<EvolutionLoginResult>) => {\r\n if (!r.success)\r\n this.dialogService.error(r.message, null, \"Errore di Evolution\");\r\n else {\r\n this.dialogService.toast('Connesso a Evolution', 1500, 'power');\r\n }\r\n });\r\n }, 500);\r\n } else if (message.id === EvolutionMessages.LOGOUT_COMPLETED) {\r\n if (this.loggedIn()) {\r\n this.logout().subscribe((r: any) => {\r\n if (!r.success) {\r\n this.dialogService.error(\"<p>\" + r.message + \"</p><br><br><hr><p class='small'><i>Per eliminare la configurazione di Evolution accedere a:<br><b>menu > personalizza > collegamenti</b></i></p>\", null, \"Errore di Evolution\");\r\n } else {\r\n this.dialogService.toast('Disconnesso da Evolution', 1500, 'power_off');\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n // Eveluate current session storage in case of page refresh (F5)\r\n if (!this.loggedIn() && this.getToken()) {\r\n // Auto login\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n /**\r\n* Set JWT token\r\n* @param value : the login result\r\n*/\r\n private setToken(value: EvolutionLoginResult) {\r\n sessionStorage.setItem('evolution_jwt', value.token);\r\n sessionStorage.setItem('evolution_jwt_refresh', value.refreshToken ?? '');\r\n }\r\n\r\n\r\n /**\r\n * Return current JWT token\r\n * @param refresh: true to get the refresh token. Default is false.\r\n */\r\n getToken(refresh: boolean = false): string {\r\n let token = sessionStorage.getItem(refresh ? 'evolution_jwt_refresh' : 'evolution_jwt');\r\n if (token && token[0] === '\"') {\r\n return token.substring(1, token.length - 1);\r\n }\r\n return token ?? '';\r\n }\r\n\r\n\r\n /**\r\n * Perform auto login using current link data\r\n * @param email: the optional email if using OAuth2\r\n * @parma password: the optional password if using OAuth2\r\n * @param remember: remember credentials \r\n * @param oauth: the optional open authentication supported\r\n * @param oauthAccessToken: the optional OAuth2 access token\r\n * @param onSucces: function to execute on seccess\r\n */\r\n autoLogin(\r\n email: string | null | undefined = null,\r\n password: string | null | undefined = null,\r\n remember: boolean | null | undefined = false,\r\n oauth: LoginOAuthType | null | undefined = null,\r\n oauthAccessToken: string | null | undefined = null,\r\n onSucces: Function | null | undefined = null): boolean {\r\n this.login(email, password, remember, oauth, oauthAccessToken)\r\n .subscribe((r: ApiResult<EvolutionLoginResult>) => {\r\n if (!r.success) {\r\n this.dialogService.error(r.message, null, \"Errore in Evolution\");\r\n } else {\r\n this.dialogService.toast('Connesso ad Evolution', 1500, 'power');\r\n if (onSucces) {\r\n onSucces();\r\n }\r\n }\r\n });\r\n return true;\r\n }\r\n\r\n /**\r\n * Perform auto logout\r\n * @param onSucces: function to execute on seccess\r\n */\r\n autoLogout(\r\n onSucces: Function | null | undefined = null) {\r\n if (!this.loggedIn()) return;\r\n this.logout().subscribe({\r\n next: (r: any) => {\r\n if (!r.success) {\r\n this.dialogService.error(r.message, null, \"Errore in Evolution\");\r\n } else {\r\n this.dialogService.toast('Disconnesso da Evolution', 1500, 'power_off');\r\n }\r\n },\r\n complete: () => {\r\n this.clear()\r\n if (onSucces) {\r\n onSucces();\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Perform login \r\n * @param email: the optional email if using OAuth2\r\n * @parma password: the optional password if using OAuth2\r\n * @param remember: remember credentials \r\n * @param oauth: the optional open authentication supported\r\n * @param oauthAccessToken: the optional OAuth2 access token\r\n * @returns: the login result\r\n */\r\n login(email: string | null | undefined = null,\r\n password: string | null | undefined = null,\r\n remember: boolean | null | undefined = false,\r\n oauth: LoginOAuthType | null | undefined = null,\r\n oauthAccessToken: string | null | undefined = null) {\r\n this.clear();\r\n this.loggingIn.set(true);\r\n return this.httpClient\r\n .post<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/login2',\r\n {\r\n user: oauth ? null : email,\r\n password: oauth ? null : password,\r\n clientId: localStorage.getItem(\"evolution_client_id\"),\r\n OAUTH: oauth\r\n },\r\n {\r\n headers:\r\n !oauth\r\n ? new HttpHeaders()\r\n : new HttpHeaders()\r\n .set(\"Authorization\", oauthAccessToken ?? '')\r\n })\r\n .pipe(\r\n catchError(err => {\r\n this.handleLoginError();\r\n return throwError(() => err);\r\n }),\r\n map((r: ApiResult<EvolutionLoginResult>) => {\r\n this.loggingIn.set(false);\r\n if (r.success) {\r\n // Store access token\r\n this.setToken(r.value);\r\n const loginInfo: EvolutionLoginInfo = {\r\n context: r.value.context,\r\n OAUTH: oauth\r\n }\r\n if (!oauth) {\r\n loginInfo.userCredentials =\r\n SystemUtils.cipher(\r\n JSON.stringify({\r\n email: email,\r\n password: password,\r\n remember: remember,\r\n }), loginInfo.context.userId.toString());\r\n }\r\n // Update info\r\n localStorage.setItem(\r\n 'evolution_login',\r\n JSON.stringify(loginInfo)\r\n );\r\n this._loginInfo = loginInfo;\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n\r\n }\r\n return r;\r\n })\r\n );\r\n }\r\n\r\n /**\r\n * Perform logout\r\n */\r\n logout() {\r\n return this.httpClient.post<any>(this._serviceUri + '/logout', {}).pipe(\r\n map(r => {\r\n this.clear();\r\n return r\r\n }),\r\n catchError((_e) => {\r\n this.clear();\r\n return of([]);\r\n }));\r\n }\r\n\r\n\r\n /**\r\n * Switch the current login to a new one with the same credentials except role possibly (context change)\r\n * @param id : new user id\r\n */\r\n loginSwitch(id: number) {\r\n return this.httpClient\r\n .post<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/login-switch/',\r\n {\r\n userId: id,\r\n clientId: localStorage.getItem(\"evolution_client_id\")\r\n }\r\n )\r\n .pipe(\r\n catchError((err) => {\r\n this.handleLoginError();\r\n return throwError(() => err);\r\n }),\r\n map((r: ApiResult<EvolutionLoginResult>) => {\r\n this.loggingIn.set(false);\r\n if (r.success) {\r\n // Store access token\r\n this.setToken(r.value);\r\n this._loginInfo = r.value.context;\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n }\r\n return r;\r\n })\r\n );\r\n }\r\n\r\n /**\r\n * Handle login error\r\n */\r\n private handleLoginError() {\r\n this.loggingIn.set(false);\r\n localStorage.removeItem('evolution_login');\r\n\r\n }\r\n\r\n\r\n /**\r\n * Reset login refresh timer and login state\r\n */\r\n reset() {\r\n // Clear login info\r\n this._loginInfo = null;\r\n // Logged out\r\n this.loggedIn.set(false);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGOUT_COMPLETED);\r\n }\r\n\r\n /**\r\n * Clear login data\r\n */\r\n clear() {\r\n // Clear local storage\r\n sessionStorage.removeItem('evolution_jwt');\r\n sessionStorage.removeItem('evolution_jwt_refresh');\r\n sessionStorage.removeItem('evolution_oauth');\r\n localStorage.removeItem('evolution_login');\r\n // Reset login\r\n this.reset();\r\n }\r\n\r\n /**\r\n * Perform token refresh\r\n */\r\n refresh() {\r\n return this.httpClient.get<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/refresh2/?token=' + this.getToken(true)\r\n ).pipe(map((r: ApiResult<EvolutionLoginResult>) => {\r\n // Update token\r\n this.setToken(r.value);\r\n }));\r\n }\r\n\r\n\r\n /**\r\n * Convert folders in a tree of Node object.\r\n * @param folders : the subfolders group or null to root\r\n */\r\n toNodes(folders: INode[]): INode[] {\r\n return this._toNodes(folders, null);\r\n }\r\n\r\n /**\r\n * Convert folders in a tree of Node object.\r\n * @param folders : the children group or null to root\r\n */\r\n private _toNodes(folders: INode[], parent: INode): INode[] {\r\n let nodes: INode[] = [];\r\n folders.forEach((n) => {\r\n let node: INode = {\r\n id: n.id,\r\n name: n.name,\r\n count: n.count,\r\n parent: parent,\r\n children: null,\r\n bag: n,\r\n };\r\n node.children =\r\n n.children && n.children.length > 0\r\n ? this._toNodes(n.children, node)\r\n : [];\r\n nodes.push(node);\r\n });\r\n return nodes;\r\n }\r\n\r\n /**\r\n * Retrieve the taxonomy\r\n */\r\n getTaxonomy() {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri + '/taxonomy'\r\n );\r\n }\r\n\r\n /**\r\n * Retrieve authorities\r\n */\r\n getAuthorities() {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri + '/compliance/authorities'\r\n );\r\n }\r\n\r\n ////\r\n // CONTEXT\r\n ////\r\n /**\r\n * Change context\r\n */\r\n changeContext(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/context',\r\n params\r\n );\r\n }\r\n\r\n ////\r\n // REGISTERS\r\n ////\r\n\r\n\r\n /**\r\n * Retrieve a register\r\n * @param id the register id\r\n */\r\n getRegister(id: number) {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri +\r\n '/compliance/registers/' + id\r\n );\r\n }\r\n\r\n\r\n /**\r\n * Collect register profiles\r\n * @param params parameters\r\n */\r\n collectRegisterProfiles(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri +\r\n '/compliance/registers/profiles/collect',\r\n params\r\n );\r\n }\r\n\r\n\r\n ////\r\n // LAWS\r\n ////\r\n\r\n /**\r\n * Add one or more laws\r\n * @param params parameters\r\n */\r\n addLaws(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/laws/add',\r\n params\r\n );\r\n }\r\n\r\n ////\r\n // ACTIVITIES\r\n ////\r\n\r\n /**\r\n * Retrieve activity groups\r\n * @param group the group number\r\n * @param site the site id\r\n */\r\n getGroups(group: number = 1, site: number = null) {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri +\r\n (site\r\n ? '/compliance/groups/?group=' +\r\n group +\r\n '&site=' +\r\n site\r\n : '/compliance/groups/?group=' + group)\r\n );\r\n }\r\n\r\n /**\r\n * Add one or more activities\r\n * @param params parameters\r\n */\r\n addActivities(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/activities/add',\r\n params\r\n );\r\n }\r\n\r\n /**\r\n * Export laws\r\n * @param params parameters\r\n */\r\n exportLaws(params: any) {\r\n return this.httpClient.post(\r\n this._serviceUri + '/compliance/laws/export',\r\n params,\r\n { responseType: 'blob' }\r\n );\r\n }\r\n\r\n ///\r\n // LINKS\r\n ///\r\n\r\n /**\r\n * Save a user link\r\n * @param item: the user link\r\n */\r\n saveLink(item: EvolutionUserLink) {\r\n return this.httpClient.post<ApiResult<boolean>>(\r\n this._serviceUri + '/account/links/save',\r\n item\r\n );\r\n }\r\n\r\n /**\r\n * Delete a user link\r\n * @param item: the user link\r\n */\r\n deleteLink(item: EvolutionUserLink) {\r\n return this.httpClient.post<ApiResult<boolean>>(\r\n this._serviceUri + '/account/links/delete',\r\n item\r\n );\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { BroadcastService } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { Observable, catchError, switchMap, throwError } from 'rxjs';\r\nimport { EvolutionService } from '../services/evolution.service';\r\nimport { EvolutionMessages } from '../messages';\r\n\r\n\r\n@Injectable()\r\nexport class EvolutionAuthInterceptor implements HttpInterceptor {\r\n private evolutionService = inject(EvolutionService);\r\n private broadcastService = inject(BroadcastService);\r\n private dialogService = inject(DialogService);\r\n private lastErrorTime: number = -1;\r\n\r\n intercept(\r\n request: HttpRequest<any>,\r\n next: HttpHandler\r\n ): Observable<HttpEvent<any>> {\r\n if (request.url.startsWith(this.evolutionService.serviceUri)) {\r\n request = request.clone({ withCredentials: true });\r\n return next.handle(this.addTokenToRequest(request))\r\n .pipe(\r\n catchError(error => {\r\n this.dialogService.clearBusy();\r\n if (\r\n error instanceof HttpErrorResponse &&\r\n !request.url.includes(\"/login\") &&\r\n error.status === 401\r\n ) {\r\n return this.handle401Error(request, next);\r\n }\r\n const errorTime = new Date().getTime();\r\n if (errorTime - this.lastErrorTime > 5000) {\r\n this.lastErrorTime = errorTime;\r\n const invalidSession = error.status == \"403\";\r\n this.dialogService.error(\r\n \"<p>\" + (error.error?.message ?? error.message ?? \"Impossibile eseguire l'operazione richiesta.\").replaceAll(\"\\r\\n\", \"</p><p>\") + \"</p>\",\r\n null,\r\n \"Errore in Evolution\",\r\n undefined,\r\n undefined,\r\n invalidSession ? 5000 : 15000).afterClosed().subscribe(() => {\r\n if (invalidSession) {\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGOUT);\r\n }\r\n });\r\n }\r\n return throwError(() => error);\r\n }));\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n /**\r\n * Handle 401 error\r\n * @param request : the request\r\n * @param next : the http handler\r\n */\r\n private handle401Error(request: HttpRequest<any>, next: HttpHandler) {\r\n if (this.evolutionService.loggedIn()) {\r\n return this.evolutionService.refresh().pipe(\r\n switchMap(() => {\r\n return next.handle(this.addTokenToRequest(request));\r\n }),\r\n catchError(error => {\r\n return throwError(() => error);\r\n })\r\n );\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n /**\r\n * Add token to request\r\n * @param request : the request\r\n * @param token: the token or null to use curre3nt\r\n */\r\n private addTokenToRequest(\r\n request: HttpRequest<any>,\r\n token: string | null = null\r\n ): HttpRequest<any> {\r\n if (request.url.startsWith(this.evolutionService.serviceUri)) {\r\n if (!token) token = this.evolutionService.getToken();\r\n if (token) {\r\n return request.clone({\r\n setHeaders: {\r\n Authorization: 'Bearer ' + token,\r\n 'ngsw-bypass': 'ngsw-bypass'\r\n },\r\n });\r\n }\r\n }\r\n return request;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\n@NgModule()\r\nexport class EvolutionCommonModule {}\r\n\r\n// Other exports\r\nexport * from './messages';\r\nexport * from './definitions';\r\nexport * from './interceptors/auth.interceptor';\r\nexport * from './services/evolution.service';\r\n","/*\r\n * Public API Surface of ars-utils\r\n */\r\n\r\nexport * from './common/common.module';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["catchError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"arsedizioni-ars-utils-evolution.common.mjs","sources":["../../../projects/ars-utils/evolution.common/common/messages.ts","../../../projects/ars-utils/evolution.common/common/definitions.ts","../../../projects/ars-utils/evolution.common/common/services/evolution.service.ts","../../../projects/ars-utils/evolution.common/common/interceptors/auth.interceptor.ts","../../../projects/ars-utils/evolution.common/common/common.module.ts","../../../projects/ars-utils/evolution.common/public_api.ts","../../../projects/ars-utils/evolution.common/arsedizioni-ars-utils-evolution.common.ts"],"sourcesContent":["export const EvolutionMessages = {\r\n // Login\r\n LOGIN_CHANGED: '§evo-login-changed',\r\n LOGIN_COMPLETED: '§evo-login-completed',\r\n LOGOUT_COMPLETED: '§evo-logout-completed',\r\n LOGOUT: '§evo-logout'\r\n};\r\n","import { LoginResult } from '@arsedizioni/ars-utils/core';\r\nimport { LoginOAuthType } from '@arsedizioni/ars-utils/ui.oauth';\r\n\r\nexport enum ERPComplianceLawsSelectionType {\r\n Analysis = 1,\r\n Activity = 2,\r\n}\r\n\r\nexport enum ERPComplianceProfileRole {\r\n None = 0,\r\n Analyst = 1,\r\n Planner = 1 << 1,\r\n Validator = 1 << 2,\r\n Executor = 1 << 3,\r\n Observer = 1 << 4,\r\n}\r\n\r\nexport enum ERPComplianceProfileFlags {\r\n\r\n OverrideNotificationRegisterSettings = 1 << 4,\r\n}\r\n\r\nexport enum ERPComplianceScope {\r\n None = 0,\r\n Environment = 1,\r\n Safety = 1 << 1,\r\n FoodSafety = 1 << 2,\r\n Energy = 1 << 3,\r\n Health = 1 << 4,\r\n Maintenance = 1 << 5,\r\n Quality = 1 << 6,\r\n Organization = 1 << 7,\r\n Logistics = 1 << 8,\r\n Facility = 1 << 9,\r\n Security = 1 << 10\r\n}\r\n\r\nexport enum ERPComplianceNotificationLimit {\r\n None = 0,\r\n PlannerOnly = 1,\r\n ExecutorOnly = 2,\r\n Both = 3,\r\n}\r\n\r\nexport enum ERPComplianceRegisterNotificationType {\r\n None = 0,\r\n NewAnalysis = 1,\r\n AnalysisCompleted = 1 << 1,\r\n AnalysisNoticePeriodStarted = 1 << 2,\r\n AnalysisPeriodExpired = 1 << 3,\r\n AnalysisLawChanged = 1 << 14,\r\n NewPlanning = 1 << 13,\r\n PlanningCompleted = 1 << 4,\r\n PlanningNoticePeriodStarted = 1 << 5,\r\n PlanningPeriodExpired = 1 << 6,\r\n NewValidation = 1 << 15,\r\n ValidationCompleted = 1 << 7,\r\n ValidationNoticePeriodStarted = 1 << 8,\r\n ValidationPeriodExpired = 1 << 9,\r\n NewDeadline = 1 << 16,\r\n DeadlineNoticePeriodStarted = 1 << 10,\r\n DeadlineExpired = 1 << 11,\r\n ActivityCompleted = 1 << 12,\r\n //NewNoncompliance = 1 << 17,\r\n //NonComplianceNoticePeriodStarted = 1 << 18,\r\n //NonCompliancePeriodExpired = 1 << 19,\r\n //NonComplianceCompleted = 1 << 20,\r\n LawChanged = 1 << 21,\r\n}\r\n\r\nexport enum ERPComplianceRegisterSiteImportOptions\r\n{\r\n CopyAttachments = 1,\r\n KeepOriginalDates = 1 << 1,\r\n DuplicateLaws = 1 << 2,\r\n DiscardNotApplicables = 1 << 3\r\n}\r\n\r\nexport const ProfileRoles = [\r\n { name: 'Analista', value: ERPComplianceProfileRole.Analyst },\r\n { name: 'Gestore', value: ERPComplianceProfileRole.Planner },\r\n //{ name: 'Validatore', value: ERPComplianceProfileRole.Validator },\r\n { name: 'Esecutore', value: ERPComplianceProfileRole.Executor },\r\n { name: 'Osservatore', value: ERPComplianceProfileRole.Observer },\r\n];\r\n\r\nexport const ProfileFlags = [\r\n { name: 'Deroghe e limitazioni', divider: true },\r\n {\r\n name:\r\n 'Questo profilo riceve regolarmente le notifiche indipendentemente dalla configurazione generale del registro',\r\n value: ERPComplianceProfileFlags.OverrideNotificationRegisterSettings,\r\n },\r\n];\r\n\r\nexport const Scopes = [\r\n { name: 'Ambiente', value: ERPComplianceScope.Environment },\r\n { name: 'Salute e sicurezza', value: ERPComplianceScope.Safety },\r\n {\r\n name: 'Sicurezza alimentare',\r\n value: ERPComplianceScope.FoodSafety,\r\n },\r\n { name: 'Energia', value: ERPComplianceScope.Energy },\r\n { name: 'Servizi generali', value: ERPComplianceScope.Facility },\r\n { name: 'Manutenzione', value: ERPComplianceScope.Maintenance },\r\n { name: 'Qualità', value: ERPComplianceScope.Quality },\r\n { name: 'Organizzazione', value: ERPComplianceScope.Organization },\r\n { name: 'Logistica', value: ERPComplianceScope.Logistics },\r\n { name: 'Security', value: ERPComplianceScope.Security },\r\n \r\n];\r\n\r\nexport const NotificationLimits = [\r\n { name: 'Nessuna limitazione', value: ERPComplianceNotificationLimit.None },\r\n {\r\n name: 'Solo gestore che ha pianificato',\r\n value: ERPComplianceNotificationLimit.PlannerOnly,\r\n },\r\n {\r\n name: \"Solo all'incaricato designato\",\r\n value: ERPComplianceNotificationLimit.ExecutorOnly,\r\n },\r\n {\r\n name: 'Solo a gestore e incaricato designato',\r\n value: ERPComplianceNotificationLimit.Both,\r\n },\r\n];\r\n\r\nexport const Notifications = [\r\n { name: 'Verifica applicabilità e analisi', divider: true },\r\n {\r\n name: 'Richiesta analisi',\r\n value: ERPComplianceRegisterNotificationType.NewAnalysis,\r\n },\r\n {\r\n name: \"Preavviso: sta per scadere il termine fissato per l'analisi\",\r\n value: ERPComplianceRegisterNotificationType.AnalysisNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'analisi\",\r\n value: ERPComplianceRegisterNotificationType.AnalysisPeriodExpired,\r\n },\r\n {\r\n name: 'Analisi completata',\r\n value: ERPComplianceRegisterNotificationType.AnalysisCompleted,\r\n },\r\n {\r\n name: 'Avviso norma modificata dal legislatore',\r\n value: ERPComplianceRegisterNotificationType.AnalysisLawChanged,\r\n },\r\n { name: 'Pianificazioni', divider: true },\r\n {\r\n name: 'Richiesta gestione',\r\n value: ERPComplianceRegisterNotificationType.NewPlanning,\r\n },\r\n {\r\n name: 'Preavviso: sta per scadere il termine fissato per la gestione',\r\n value: ERPComplianceRegisterNotificationType.PlanningNoticePeriodStarted,\r\n },\r\n {\r\n name: 'Allarme: è scaduto il termine fissato per la gestione',\r\n value: ERPComplianceRegisterNotificationType.PlanningPeriodExpired,\r\n },\r\n {\r\n name: 'Gestione completata',\r\n value: ERPComplianceRegisterNotificationType.PlanningCompleted,\r\n },\r\n {\r\n name: 'Attività completata',\r\n value: ERPComplianceRegisterNotificationType.ActivityCompleted,\r\n },\r\n /*{ name: 'Gestione non conformità', divider: true },\r\n {\r\n name: 'Apertura non comformità',\r\n value: ERPComplianceRegisterNotificationType.NewNoncompliance,\r\n },\r\n {\r\n name:\r\n \"Preavviso: sta per scadere il termine fissato per l'azione correttiva\",\r\n value:\r\n ERPComplianceRegisterNotificationType.NonComplianceNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'azione correttiva\",\r\n value: ERPComplianceRegisterNotificationType.NonCompliancePeriodExpired,\r\n },\r\n {\r\n name: 'Chiusura non conformità',\r\n value: ERPComplianceRegisterNotificationType.NonComplianceCompleted,\r\n },*/\r\n /*{ name: 'Approvazioni', divider: true },\r\n { name: 'Richiesta approvazione', value: 1 << 14 },\r\n {\r\n name: \"Preavviso: sta per scadere il termine fissato per l'approvazione\",\r\n value: ERPComplianceRegisterNotificationType.ValidationNoticePeriodStarted,\r\n },\r\n {\r\n name: \"Allarme: è scaduto il termine fissato per l'approvazione\",\r\n value: ERPComplianceRegisterNotificationType.ValidationPeriodExpired,\r\n },\r\n {\r\n name: 'Approvazione concessa o negata',\r\n value: ERPComplianceRegisterNotificationType.ValidationCompleted,\r\n },*/\r\n { name: 'Scadenze', divider: true },\r\n {\r\n name: 'Preavviso: 1° promemoria sulla data di scadenza',\r\n value: ERPComplianceRegisterNotificationType.NewValidation,\r\n },\r\n {\r\n name: 'Avviso: 2° promemoria sulla data di scadenza',\r\n value: ERPComplianceRegisterNotificationType.DeadlineNoticePeriodStarted,\r\n },\r\n {\r\n name: 'Allarme: è scaduto il termine',\r\n value: ERPComplianceRegisterNotificationType.DeadlineExpired,\r\n },\r\n { name: 'Norme collegate', divider: true },\r\n {\r\n name: 'Modifica o abrogazione',\r\n value: ERPComplianceRegisterNotificationType.LawChanged,\r\n },\r\n\r\n];\r\n\r\nexport enum ERPComplianceLawState {\r\n ApplicableOrAknowledged = 1,\r\n NotApplicable = 2,\r\n NotAnalyzed = 3,\r\n ExpiredAnalysis = 4,\r\n UpdatedLaws = 5,\r\n Analyzed = 6,\r\n Abrogated = 7,\r\n Applicable = 8,\r\n Aknowledged = 9\r\n}\r\n\r\nexport enum ERPComplianceLawOrigin {\r\n National = 1,\r\n EU = 2,\r\n Regional = 3,\r\n Local = 4,\r\n Technical = 5,\r\n Voulontary = 6,\r\n Internal = 7,\r\n Other = 8,\r\n}\r\n\r\nexport const LawStates = [\r\n { name: 'Applicabile', value: ERPComplianceLawState.Applicable },\r\n { name: 'Da conoscere', value: ERPComplianceLawState.Aknowledged },\r\n {\r\n name: 'Applicabile / da conoscere',\r\n value: ERPComplianceLawState.ApplicableOrAknowledged,\r\n },\r\n { name: 'Non applicabile', value: ERPComplianceLawState.NotApplicable },\r\n { name: 'Abrogata', value: ERPComplianceLawState.Abrogated },\r\n { name: 'Analizzata', value: ERPComplianceLawState.Analyzed },\r\n { name: 'Da definire', value: ERPComplianceLawState.NotAnalyzed }, \r\n { name: 'In ritardo', value: ERPComplianceLawState.ExpiredAnalysis },\r\n {\r\n name: 'Con aggiornamenti pendenti',\r\n value: ERPComplianceLawState.UpdatedLaws,\r\n },\r\n];\r\n\r\nexport const LawOrigins = [\r\n { name: 'Nazionale', value: ERPComplianceLawOrigin.National },\r\n { name: 'Comunitaria', value: ERPComplianceLawOrigin.EU },\r\n { name: 'Regionale', value: ERPComplianceLawOrigin.Regional },\r\n { name: 'Locale', value: ERPComplianceLawOrigin.Local },\r\n { name: 'Tecnica', value: ERPComplianceLawOrigin.Technical },\r\n { name: 'Interna', value: ERPComplianceLawOrigin.Internal },\r\n { name: 'Volontaria', value: ERPComplianceLawOrigin.Voulontary },\r\n { name: 'Altro', value: ERPComplianceLawOrigin.Other },\r\n];\r\n\r\nexport const LawChangeStates = [\r\n { name: 'Aperto', value: 1 },\r\n { name: 'Chiuso', value: 2 },\r\n];\r\n\r\nexport enum ERPComplianceActivityState {\r\n NotPlanned = 1 << 7,\r\n Closed = 1 << 2, \r\n Expired = 1 << 3,\r\n Planned = 1 << 8,\r\n Cancelled = 1 << 9,\r\n UpdatedLaws = 1 << 10,\r\n AlreadyManaged = 1 << 11\r\n}\r\n\r\nexport const ActivityStates = [ \r\n {\r\n name: 'Da definire',\r\n value: ERPComplianceActivityState.NotPlanned,\r\n },\r\n {\r\n name: 'Pianificata',\r\n value: ERPComplianceActivityState.Planned,\r\n },\r\n {\r\n name: 'Chiusa',\r\n value: ERPComplianceActivityState.Closed,\r\n },\r\n {\r\n name: 'In ritardo',\r\n value: ERPComplianceActivityState.Expired,\r\n },\r\n {\r\n name: 'Annullata',\r\n value: ERPComplianceActivityState.Cancelled,\r\n },\r\n {\r\n name: 'Gestita separatamente',\r\n value: ERPComplianceActivityState.AlreadyManaged,\r\n },\r\n {\r\n name: 'Con aggiornamenti pendenti',\r\n value: ERPComplianceActivityState.UpdatedLaws,\r\n },\r\n];\r\n\r\nexport const ObligationTypes = [\r\n { name: 'Autorizzazione', value: 1 },\r\n { name: 'Verifiche periodiche manutentive', value: 2 },\r\n { name: 'Misure organizzative', value: 3 },\r\n { name: 'Controlli e misurazioni', value: 4 },\r\n { name: 'Entrata in vigore', value: 5 },\r\n { name: 'Documenti aziendali obbligatori', value: 6 },\r\n {\r\n name: 'Altri adempimenti formali (comunicazioni, dichiarazioni, ecc...)',\r\n value: 7,\r\n },\r\n { name: 'Altro', value: 99 },\r\n];\r\n\r\nexport const ObligationAuthorities = [\r\n { name: 'Agenzia ECHA', value: 1 },\r\n { name: 'Albo Nazionale dei Gestori Ambientali', value: 2 },\r\n { name: 'ARPA', value: 4 },\r\n { name: 'ASL', value: 5 },\r\n { name: 'Camera di Commercio', value: 8 },\r\n { name: 'Comando provinciale dei Vigili del Fuoco', value: 10 },\r\n { name: 'Comune', value: 13 },\r\n { name: 'Consorzi gestione rifiuti particolari', value: 14 },\r\n { name: 'Gestore del servizio', value: 21 },\r\n { name: 'Gestore della rete di trasmissione nazionale', value: 22 },\r\n { name: 'INAIL - IPSEMA - ISPESL', value: 23 },\r\n { name: 'ISPRA', value: 26 },\r\n { name: 'Ministero', value: 27 },\r\n { name: 'Genio civile', value: 30 },\r\n { name: 'Organo di vigilanza competente', value: 31 },\r\n { name: 'Provincia', value: 33 },\r\n { name: 'Regione', value: 35 },\r\n { name: 'Uffici tecnici di finanza', value: 36 },\r\n { name: 'Ispettorato del lavoro', value: 37 },\r\n { name: 'Comitato Regionale Tecnico VF', value: 38 },\r\n { name: 'Prefetto', value: 39 },\r\n { name: 'Organismo notificato', value: 40 },\r\n { name: 'Città Metropolitana', value: 41 },\r\n { name: 'Nessuna', value: 28 },\r\n { name: 'Altro', value: 3 }\r\n];\r\n\r\nexport enum ERPRecurrenceFrequencyType {\r\n Day = 1,\r\n Month = 2,\r\n Year = 3,\r\n}\r\nexport const RecurrenceFrequencyTypes = [\r\n { name: 'Anni', value: ERPRecurrenceFrequencyType.Year },\r\n { name: 'Mesi', value: ERPRecurrenceFrequencyType.Month },\r\n { name: 'Giorni', value: ERPRecurrenceFrequencyType.Day },\r\n];\r\n\r\nexport interface EvolutionLoginResult extends LoginResult<EvolutionLoginInfo> {\r\n}\r\n\r\nexport interface EvolutionLoginInfo {\r\n context: any;\r\n complianceContext?: any | null;\r\n userCredentials?: string | null;\r\n userId?: number | null;\r\n OAUTH?: LoginOAuthType | null;\r\n}\r\n\r\nexport interface EvolutionUserLink {\r\n id?: number | null;\r\n userId: number;\r\n userName?: string | null;\r\n key: string;\r\n}","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { inject, Injectable, OnDestroy, signal } from '@angular/core';\r\nimport { ApiResult, BroadcastMessageInfo, BroadcastService, INode, SystemUtils } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { of, Subscription, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { EvolutionLoginInfo, EvolutionLoginResult, EvolutionUserLink } from '../definitions';\r\nimport { EvolutionMessages } from '../messages';\r\nimport { LoginOAuthType } from '@arsedizioni/ars-utils/ui.oauth';\r\n\r\n\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EvolutionService implements OnDestroy {\r\n\r\n\r\n private httpClient = inject(HttpClient);\r\n private broadcastService = inject(BroadcastService);\r\n private broadcastServiceSubscription?: Subscription | null = null;\r\n private dialogService = inject(DialogService);\r\n\r\n private _serviceUri: string | null = null;\r\n get serviceUri(): string | null {\r\n return this._serviceUri;\r\n }\r\n private _loginInfo: EvolutionLoginInfo | null = null;\r\n get loginInfo(): EvolutionLoginInfo | null {\r\n if (!this._loginInfo) {\r\n const loginInfo = localStorage.getItem('clipper_login_evolution');\r\n if (loginInfo) {\r\n try {\r\n this._loginInfo = JSON.parse(loginInfo) as EvolutionLoginInfo;\r\n } catch { }\r\n }\r\n }\r\n return this._loginInfo;\r\n }\r\n public readonly loggedIn = signal<boolean>(false);\r\n public readonly loggingIn = signal<boolean>(false);\r\n\r\n\r\n\r\n ngOnDestroy() {\r\n if (this.broadcastServiceSubscription) {\r\n this.broadcastServiceSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n /**\r\n * Initialize service\r\n * @param serviceUri : the service uri\r\n */\r\n initialize(\r\n serviceUri: string) {\r\n // Create unique client id\r\n if (!localStorage.getItem('evolution_client_id')) {\r\n localStorage.setItem('evolution_client_id', SystemUtils.generateUUID());\r\n }\r\n\r\n // Initialize\r\n this._serviceUri = serviceUri;\r\n\r\n // React to message broadcasting\r\n if (!this.broadcastServiceSubscription) {\r\n this.broadcastServiceSubscription = this.broadcastService.getMessage().subscribe((message: BroadcastMessageInfo) => {\r\n if (message.id === EvolutionMessages.LOGIN_CHANGED) {\r\n setTimeout(() => {\r\n this.login(\r\n message.data.email,\r\n message.data.password,\r\n true,\r\n message.data.oauth,\r\n message.data.oauthAccessToken).subscribe((r: ApiResult<EvolutionLoginResult>) => {\r\n if (!r.success)\r\n this.dialogService.error(r.message, null, \"Errore di Evolution\");\r\n else {\r\n this.dialogService.toast('Connesso a Evolution', 1500, 'power');\r\n }\r\n });\r\n }, 500);\r\n } else if (message.id === EvolutionMessages.LOGOUT_COMPLETED) {\r\n if (this.loggedIn()) {\r\n this.logout().subscribe((r: any) => {\r\n if (!r.success) {\r\n this.dialogService.error(\"<p>\" + r.message + \"</p><br><br><hr><p class='small'><i>Per eliminare la configurazione di Evolution accedere a:<br><b>menu > personalizza > collegamenti</b></i></p>\", null, \"Errore di Evolution\");\r\n } else {\r\n this.dialogService.toast('Disconnesso da Evolution', 1500, 'power_off');\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n // Eveluate current session storage in case of page refresh (F5)\r\n if (!this.loggedIn() && this.getToken()) {\r\n // Auto login\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n /**\r\n* Set JWT token\r\n* @param value : the login result\r\n*/\r\n private setToken(value: EvolutionLoginResult) {\r\n sessionStorage.setItem('evolution_jwt', value.token);\r\n sessionStorage.setItem('evolution_jwt_refresh', value.refreshToken ?? '');\r\n }\r\n\r\n\r\n /**\r\n * Return current JWT token\r\n * @param refresh: true to get the refresh token. Default is false.\r\n */\r\n getToken(refresh: boolean = false): string {\r\n let token = sessionStorage.getItem(refresh ? 'evolution_jwt_refresh' : 'evolution_jwt');\r\n if (token && token[0] === '\"') {\r\n return token.substring(1, token.length - 1);\r\n }\r\n return token ?? '';\r\n }\r\n\r\n\r\n /**\r\n * Perform auto login using current link data\r\n * @param email: the optional email if using OAuth2\r\n * @parma password: the optional password if using OAuth2\r\n * @param remember: remember credentials \r\n * @param oauth: the optional open authentication supported\r\n * @param oauthAccessToken: the optional OAuth2 access token\r\n * @param onSucces: function to execute on seccess\r\n */\r\n autoLogin(\r\n email: string | null | undefined = null,\r\n password: string | null | undefined = null,\r\n remember: boolean | null | undefined = false,\r\n oauth: LoginOAuthType | null | undefined = null,\r\n oauthAccessToken: string | null | undefined = null,\r\n onSucces: Function | null | undefined = null): boolean {\r\n this.login(email, password, remember, oauth, oauthAccessToken)\r\n .subscribe((r: ApiResult<EvolutionLoginResult>) => {\r\n if (!r.success) {\r\n this.dialogService.error(r.message, null, \"Errore in Evolution\");\r\n } else {\r\n this.dialogService.toast('Connesso ad Evolution', 1500, 'power');\r\n if (onSucces) {\r\n onSucces();\r\n }\r\n }\r\n });\r\n return true;\r\n }\r\n\r\n /**\r\n * Perform auto logout\r\n * @param onSucces: function to execute on seccess\r\n */\r\n autoLogout(\r\n onSucces: Function | null | undefined = null) {\r\n if (!this.loggedIn()) return;\r\n this.logout().subscribe({\r\n next: (r: any) => {\r\n if (!r.success) {\r\n this.dialogService.error(r.message, null, \"Errore in Evolution\");\r\n } else {\r\n this.dialogService.toast('Disconnesso da Evolution', 1500, 'power_off');\r\n }\r\n },\r\n complete: () => {\r\n this.clear()\r\n if (onSucces) {\r\n onSucces();\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Perform login \r\n * @param email: the optional email if using OAuth2\r\n * @parma password: the optional password if using OAuth2\r\n * @param remember: remember credentials \r\n * @param oauth: the optional open authentication supported\r\n * @param oauthAccessToken: the optional OAuth2 access token\r\n * @returns: the login result\r\n */\r\n login(email: string | null | undefined = null,\r\n password: string | null | undefined = null,\r\n remember: boolean | null | undefined = false,\r\n oauth: LoginOAuthType | null | undefined = null,\r\n oauthAccessToken: string | null | undefined = null) {\r\n this.clear();\r\n this.loggingIn.set(true);\r\n return this.httpClient\r\n .post<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/login2',\r\n {\r\n user: oauth ? null : email,\r\n password: oauth ? null : password,\r\n clientId: localStorage.getItem(\"evolution_client_id\"),\r\n OAUTH: oauth\r\n },\r\n {\r\n headers:\r\n !oauth\r\n ? new HttpHeaders()\r\n : new HttpHeaders()\r\n .set(\"Authorization\", oauthAccessToken ?? '')\r\n })\r\n .pipe(\r\n catchError(err => {\r\n this.handleLoginError();\r\n return throwError(() => err);\r\n }),\r\n map((r: ApiResult<EvolutionLoginResult>) => {\r\n this.loggingIn.set(false);\r\n if (r.success) {\r\n // Store access token\r\n this.setToken(r.value);\r\n const loginInfo: EvolutionLoginInfo = {\r\n context: r.value.context,\r\n OAUTH: oauth\r\n }\r\n if (!oauth) {\r\n loginInfo.userCredentials =\r\n SystemUtils.cipher(\r\n JSON.stringify({\r\n email: email,\r\n password: password,\r\n remember: remember,\r\n }), loginInfo.context.userId.toString());\r\n }\r\n // Update info\r\n localStorage.setItem(\r\n 'evolution_login',\r\n JSON.stringify(loginInfo)\r\n );\r\n this._loginInfo = loginInfo;\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n\r\n }\r\n return r;\r\n })\r\n );\r\n }\r\n\r\n /**\r\n * Perform logout\r\n */\r\n logout() {\r\n return this.httpClient.post<any>(this._serviceUri + '/logout', {}).pipe(\r\n map(r => {\r\n this.clear();\r\n return r\r\n }),\r\n catchError((_e) => {\r\n this.clear();\r\n return of([]);\r\n }));\r\n }\r\n\r\n\r\n /**\r\n * Switch the current login to a new one with the same credentials except role possibly (context change)\r\n * @param id : new user id\r\n */\r\n loginSwitch(id: number) {\r\n return this.httpClient\r\n .post<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/login-switch/',\r\n {\r\n userId: id,\r\n clientId: localStorage.getItem(\"evolution_client_id\")\r\n }\r\n )\r\n .pipe(\r\n catchError((err) => {\r\n this.handleLoginError();\r\n return throwError(() => err);\r\n }),\r\n map((r: ApiResult<EvolutionLoginResult>) => {\r\n this.loggingIn.set(false);\r\n if (r.success) {\r\n // Store access token\r\n this.setToken(r.value);\r\n this._loginInfo = r.value.context;\r\n this.loggedIn.set(true);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGIN_COMPLETED);\r\n }\r\n return r;\r\n })\r\n );\r\n }\r\n\r\n /**\r\n * Handle login error\r\n */\r\n private handleLoginError() {\r\n this.loggingIn.set(false);\r\n localStorage.removeItem('evolution_login');\r\n\r\n }\r\n\r\n\r\n /**\r\n * Reset login refresh timer and login state\r\n */\r\n reset() {\r\n // Clear login info\r\n this._loginInfo = null;\r\n // Logged out\r\n this.loggedIn.set(false);\r\n // Notify\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGOUT_COMPLETED);\r\n }\r\n\r\n /**\r\n * Clear login data\r\n */\r\n clear() {\r\n // Clear local storage\r\n sessionStorage.removeItem('evolution_jwt');\r\n sessionStorage.removeItem('evolution_jwt_refresh');\r\n sessionStorage.removeItem('evolution_oauth');\r\n localStorage.removeItem('evolution_login');\r\n // Reset login\r\n this.reset();\r\n }\r\n\r\n /**\r\n * Perform token refresh\r\n */\r\n refresh() {\r\n return this.httpClient.get<ApiResult<EvolutionLoginResult>>(\r\n this._serviceUri + '/refresh2/?token=' + this.getToken(true)\r\n ).pipe(map((r: ApiResult<EvolutionLoginResult>) => {\r\n // Update token\r\n this.setToken(r.value);\r\n }));\r\n }\r\n\r\n\r\n /**\r\n * Convert folders in a tree of Node object.\r\n * @param folders : the subfolders group or null to root\r\n */\r\n toNodes(folders: INode[]): INode[] {\r\n return this._toNodes(folders, null);\r\n }\r\n\r\n /**\r\n * Convert folders in a tree of Node object.\r\n * @param folders : the children group or null to root\r\n */\r\n private _toNodes(folders: INode[], parent: INode): INode[] {\r\n let nodes: INode[] = [];\r\n folders.forEach((n) => {\r\n let node: INode = {\r\n id: n.id,\r\n name: n.name,\r\n count: n.count,\r\n parent: parent,\r\n children: null,\r\n bag: n,\r\n };\r\n node.children =\r\n n.children && n.children.length > 0\r\n ? this._toNodes(n.children, node)\r\n : [];\r\n nodes.push(node);\r\n });\r\n return nodes;\r\n }\r\n\r\n /**\r\n * Retrieve the taxonomy\r\n */\r\n getTaxonomy() {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri + '/taxonomy'\r\n );\r\n }\r\n\r\n /**\r\n * Retrieve authorities\r\n */\r\n getAuthorities() {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri + '/compliance/authorities'\r\n );\r\n }\r\n\r\n ////\r\n // CONTEXT\r\n ////\r\n /**\r\n * Change context\r\n */\r\n changeContext(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/context',\r\n params\r\n );\r\n }\r\n\r\n ////\r\n // REGISTERS\r\n ////\r\n\r\n\r\n /**\r\n * Retrieve a register\r\n * @param id the register id\r\n */\r\n getRegister(id: number) {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri +\r\n '/compliance/registers/' + id\r\n );\r\n }\r\n\r\n\r\n /**\r\n * Collect register profiles\r\n * @param params parameters\r\n */\r\n collectRegisterProfiles(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri +\r\n '/compliance/registers/profiles/collect',\r\n params\r\n );\r\n }\r\n\r\n\r\n ////\r\n // LAWS\r\n ////\r\n\r\n /**\r\n * Add one or more laws\r\n * @param params parameters\r\n */\r\n addLaws(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/laws/add',\r\n params\r\n );\r\n }\r\n\r\n ////\r\n // ACTIVITIES\r\n ////\r\n\r\n /**\r\n * Retrieve activity groups\r\n * @param group the group number\r\n * @param site the site id\r\n */\r\n getGroups(group: number = 1, site: number = null) {\r\n return this.httpClient.get<ApiResult<any>>(\r\n this._serviceUri +\r\n (site\r\n ? '/compliance/groups/?group=' +\r\n group +\r\n '&site=' +\r\n site\r\n : '/compliance/groups/?group=' + group)\r\n );\r\n }\r\n\r\n /**\r\n * Add one or more activities\r\n * @param params parameters\r\n */\r\n addActivities(params: any) {\r\n return this.httpClient.post<ApiResult<any>>(\r\n this._serviceUri + '/compliance/activities/add',\r\n params\r\n );\r\n }\r\n\r\n /**\r\n * Export laws\r\n * @param params parameters\r\n */\r\n exportLaws(params: any) {\r\n return this.httpClient.post(\r\n this._serviceUri + '/compliance/laws/export',\r\n params,\r\n { responseType: 'blob' }\r\n );\r\n }\r\n\r\n ///\r\n // LINKS\r\n ///\r\n\r\n /**\r\n * Save a user link\r\n * @param item: the user link\r\n */\r\n saveLink(item: EvolutionUserLink) {\r\n return this.httpClient.post<ApiResult<boolean>>(\r\n this._serviceUri + '/account/links/save',\r\n item\r\n );\r\n }\r\n\r\n /**\r\n * Delete a user link\r\n * @param item: the user link\r\n */\r\n deleteLink(item: EvolutionUserLink) {\r\n return this.httpClient.post<ApiResult<boolean>>(\r\n this._serviceUri + '/account/links/delete',\r\n item\r\n );\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { BroadcastService } from '@arsedizioni/ars-utils/core';\r\nimport { DialogService } from '@arsedizioni/ars-utils/ui';\r\nimport { Observable, catchError, switchMap, throwError } from 'rxjs';\r\nimport { EvolutionService } from '../services/evolution.service';\r\nimport { EvolutionMessages } from '../messages';\r\n\r\n\r\n@Injectable()\r\nexport class EvolutionAuthInterceptor implements HttpInterceptor {\r\n private evolutionService = inject(EvolutionService);\r\n private broadcastService = inject(BroadcastService);\r\n private dialogService = inject(DialogService);\r\n private lastErrorTime: number = -1;\r\n\r\n intercept(\r\n request: HttpRequest<any>,\r\n next: HttpHandler\r\n ): Observable<HttpEvent<any>> {\r\n if (request.url.startsWith(this.evolutionService.serviceUri)) {\r\n request = request.clone({ withCredentials: true });\r\n return next.handle(this.addTokenToRequest(request))\r\n .pipe(\r\n catchError(error => {\r\n this.dialogService.clearBusy();\r\n if (\r\n error instanceof HttpErrorResponse &&\r\n !request.url.includes(\"/login\") &&\r\n error.status === 401\r\n ) {\r\n return this.handle401Error(request, next);\r\n }\r\n const errorTime = new Date().getTime();\r\n if (errorTime - this.lastErrorTime > 5000) {\r\n this.lastErrorTime = errorTime;\r\n const invalidSession = error.status == \"403\";\r\n this.dialogService.error(\r\n \"<p>\" + (error.error?.message ?? error.message ?? \"Impossibile eseguire l'operazione richiesta.\").replaceAll(\"\\r\\n\", \"</p><p>\") + \"</p>\",\r\n null,\r\n \"Errore in Evolution\",\r\n undefined,\r\n undefined,\r\n invalidSession ? 5000 : 15000).afterClosed().subscribe(() => {\r\n if (invalidSession) {\r\n this.broadcastService.sendMessage(EvolutionMessages.LOGOUT);\r\n }\r\n });\r\n }\r\n return throwError(() => error);\r\n }));\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n /**\r\n * Handle 401 error\r\n * @param request : the request\r\n * @param next : the http handler\r\n */\r\n private handle401Error(request: HttpRequest<any>, next: HttpHandler) {\r\n if (this.evolutionService.loggedIn()) {\r\n return this.evolutionService.refresh().pipe(\r\n switchMap(() => {\r\n return next.handle(this.addTokenToRequest(request));\r\n }),\r\n catchError(error => {\r\n return throwError(() => error);\r\n })\r\n );\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n /**\r\n * Add token to request\r\n * @param request : the request\r\n * @param token: the token or null to use curre3nt\r\n */\r\n private addTokenToRequest(\r\n request: HttpRequest<any>,\r\n token: string | null = null\r\n ): HttpRequest<any> {\r\n if (request.url.startsWith(this.evolutionService.serviceUri)) {\r\n if (!token) token = this.evolutionService.getToken();\r\n if (token) {\r\n return request.clone({\r\n setHeaders: {\r\n Authorization: 'Bearer ' + token,\r\n 'ngsw-bypass': 'ngsw-bypass'\r\n },\r\n });\r\n }\r\n }\r\n return request;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\n@NgModule()\r\nexport class EvolutionCommonModule {}\r\n\r\n// Other exports\r\nexport * from './messages';\r\nexport * from './definitions';\r\nexport * from './interceptors/auth.interceptor';\r\nexport * from './services/evolution.service';\r\n","/*\r\n * Public API Surface of ars-utils\r\n */\r\n\r\nexport * from './common/common.module';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["catchError"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { NgModule,
|
|
2
|
+
import { NgModule, output, inject, signal, Component, ChangeDetectionStrategy } from '@angular/core';
|
|
3
3
|
import { TINYMCE_SCRIPT_SRC, EditorComponent } from '@tinymce/tinymce-angular';
|
|
4
4
|
import { MatDialogRef, MAT_DIALOG_DATA, MatDialogContent, MatDialogActions, MatDialogClose } from '@angular/material/dialog';
|
|
5
5
|
import { SystemUtils } from '@arsedizioni/ars-utils/core';
|
|
@@ -178,7 +178,7 @@ class TinymceUtils {
|
|
|
178
178
|
|
|
179
179
|
class FullScreenEditorComponent {
|
|
180
180
|
constructor() {
|
|
181
|
-
this.saving =
|
|
181
|
+
this.saving = output();
|
|
182
182
|
this.dialogRef = inject((MatDialogRef));
|
|
183
183
|
this.dialogData = inject(MAT_DIALOG_DATA);
|
|
184
184
|
this.disabled = signal(false);
|
|
@@ -208,9 +208,7 @@ class FullScreenEditorComponent {
|
|
|
208
208
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: FullScreenEditorComponent, decorators: [{
|
|
209
209
|
type: Component,
|
|
210
210
|
args: [{ standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatDialogContent, EditorComponent, FormsModule, MatDialogActions, FlexModule, MatButtonModule, MatDialogClose], template: "<div mat-dialog-content>\r\n <editor style=\"height: 100%;\" #fullScreenTextEditor id=\"fullScreenTextEditor\" [init]=\"tinymceConfig\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxFill>\r\n <div fxFlex=\"30\">\r\n </div>\r\n <div fxFlex=\"70\" fxLayoutAlign=\"end\">\r\n <button mat-flat-button color=\"primary\" (click)=\"ok()\">SALVA</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">ANNULLA</button>\r\n </div>\r\n </div>\r\n</div>", styles: [".mat-mdc-dialog-content{height:calc(100% - 52px)!important;max-height:calc(100% - 52px)!important}::ng-deep #fullScreenTextEditor>.tox-tinymce{height:100%!important}\n"] }]
|
|
211
|
-
}]
|
|
212
|
-
type: Output
|
|
213
|
-
}] } });
|
|
211
|
+
}] });
|
|
214
212
|
|
|
215
213
|
/*
|
|
216
214
|
* Public API Surface of ars-utils-tinymse
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arsedizioni-ars-utils-tinymce.mjs","sources":["../../../projects/ars-utils/tinymce/tinymce.module.ts","../../../projects/ars-utils/tinymce/utils.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":["import { NgModule } from '@angular/core';\r\nimport { TINYMCE_SCRIPT_SRC } from '@tinymce/tinymce-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n providers: [\r\n { provide: TINYMCE_SCRIPT_SRC, useValue: 'tinymce/tinymce.min.js' }\r\n ]\r\n})\r\nexport class ArsTinyMceModule { }\r\n","export class TinymceUtils {\r\n /**\r\n * Configurazione di base per TinyMCE editor\r\n */\r\n static TinymceConfig: Record<string, any> = {\r\n base_url: '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/langs/it.js\",\r\n height: 500,\r\n width: '100%',\r\n min_height: 250,\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 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 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 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 static TinymceCompactExtendedConfig: Record<string, any> = Object.assign({}, this.TinymceCompactConfig, {\r\n license_key: 'gpl',\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 | fullscreen '],\r\n });\r\n}","import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Output, inject, 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 disabled?: boolean | null;\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, MatButtonModule, MatDialogClose]\r\n})\r\nexport class FullScreenEditorComponent implements OnInit {\r\n\r\n @Output() saving = new EventEmitter<string>();\r\n private dialogRef = inject(MatDialogRef<FullScreenEditorComponent>);\r\n protected dialogData: FullScreenEditorDialogData = inject(MAT_DIALOG_DATA);\r\n protected disabled = signal<boolean>(false);\r\n protected text?: string | null = null;\r\n protected tinymceConfig: Record<string, any> = SystemUtils.clone(TinymceUtils.TinymceCompactExtendedConfig);\r\n\r\n ngOnInit(): void {\r\n if (this.dialogData) {\r\n this.text = this.dialogData.text;\r\n if (this.dialogData.configuration) {\r\n this.tinymceConfig = this.dialogData.configuration\r\n }\r\n this.disabled.set(this.dialogData.disabled);\r\n }\r\n this.tinymceConfig[\"toolbar\"] = ['undo redo | formatgroup paragraphgroup insertgroup | code openCodeMirrorButton'];\r\n\r\n }\r\n\r\n /**\r\n * Save data\r\n */\r\n protected ok() {\r\n this.saving.emit(this.text);\r\n this.dialogRef.close();\r\n }\r\n}\r\n","<div mat-dialog-content>\r\n <editor style=\"height: 100%;\" #fullScreenTextEditor id=\"fullScreenTextEditor\" [init]=\"tinymceConfig\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxFill>\r\n <div fxFlex=\"30\">\r\n </div>\r\n <div fxFlex=\"70\" fxLayoutAlign=\"end\">\r\n <button mat-flat-button color=\"primary\" (click)=\"ok()\">SALVA</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">ANNULLA</button>\r\n </div>\r\n </div>\r\n</div>","/*\r\n * Public API Surface of ars-utils-tinymse\r\n */\r\nexport * from './tinymce.module';\r\nexport * from './full-screen-editor/full-screen-editor.component';\r\nexport * from './utils';\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/tinymce.module.ts","../../../projects/ars-utils/tinymce/utils.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":["import { NgModule } from '@angular/core';\r\nimport { TINYMCE_SCRIPT_SRC } from '@tinymce/tinymce-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n providers: [\r\n { provide: TINYMCE_SCRIPT_SRC, useValue: 'tinymce/tinymce.min.js' }\r\n ]\r\n})\r\nexport class ArsTinyMceModule { }\r\n","export class TinymceUtils {\r\n /**\r\n * Configurazione di base per TinyMCE editor\r\n */\r\n static TinymceConfig: Record<string, any> = {\r\n base_url: '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/langs/it.js\",\r\n height: 500,\r\n width: '100%',\r\n min_height: 250,\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 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 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 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 static TinymceCompactExtendedConfig: Record<string, any> = Object.assign({}, this.TinymceCompactConfig, {\r\n license_key: 'gpl',\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 | fullscreen '],\r\n });\r\n}","import { ChangeDetectionStrategy, Component, OnInit, 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 disabled?: boolean | null;\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, MatButtonModule, MatDialogClose]\r\n})\r\nexport class FullScreenEditorComponent implements OnInit {\r\n\r\n saving = output<string>();\r\n private dialogRef = inject(MatDialogRef<FullScreenEditorComponent>);\r\n protected dialogData: FullScreenEditorDialogData = inject(MAT_DIALOG_DATA);\r\n protected disabled = signal<boolean>(false);\r\n protected text?: string | null = null;\r\n protected tinymceConfig: Record<string, any> = SystemUtils.clone(TinymceUtils.TinymceCompactExtendedConfig);\r\n\r\n ngOnInit(): void {\r\n if (this.dialogData) {\r\n this.text = this.dialogData.text;\r\n if (this.dialogData.configuration) {\r\n this.tinymceConfig = this.dialogData.configuration\r\n }\r\n this.disabled.set(this.dialogData.disabled);\r\n }\r\n this.tinymceConfig[\"toolbar\"] = ['undo redo | formatgroup paragraphgroup insertgroup | code openCodeMirrorButton'];\r\n\r\n }\r\n\r\n /**\r\n * Save data\r\n */\r\n protected ok() {\r\n this.saving.emit(this.text);\r\n this.dialogRef.close();\r\n }\r\n}\r\n","<div mat-dialog-content>\r\n <editor style=\"height: 100%;\" #fullScreenTextEditor id=\"fullScreenTextEditor\" [init]=\"tinymceConfig\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"text\" licenseKey=\"gpl\">\r\n </editor>\r\n</div>\r\n<div mat-dialog-actions>\r\n <div fxLayout=\"row\" fxLayoutGap=\"10px\" fxFill>\r\n <div fxFlex=\"30\">\r\n </div>\r\n <div fxFlex=\"70\" fxLayoutAlign=\"end\">\r\n <button mat-flat-button color=\"primary\" (click)=\"ok()\">SALVA</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"primary\">ANNULLA</button>\r\n </div>\r\n </div>\r\n</div>","/*\r\n * Public API Surface of ars-utils-tinymse\r\n */\r\nexport * from './tinymce.module';\r\nexport * from './full-screen-editor/full-screen-editor.component';\r\nexport * from './utils';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|