{ "version": 3, "sources": ["src/app/services/Utilities/theme.service.ts", "src/app/theme/theme-settings.ts", "src/app/pages/redirect-component/components/redirect-component.component.ts", "src/app/pages/redirect-component/components/redirect-component.component.html"], "sourcesContent": ["import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable, OnDestroy, Renderer2, RendererFactory2 } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators'; \r\nimport { ThemeSettings } from 'src/app/theme/theme-settings';\r\n/**\r\n * User interface theme manager (dark or light).\r\n *\r\n * It implements the default theme of the operating system.\r\n *\r\n * This service can change the theme mode:\r\n * - When requested by the user within the application.\r\n * - When requested by the user from the theme configuration in the operating system.\r\n *\r\n * If user chooses the theme mode from the web application its configuration is persisted in local storage.\r\n *\r\n * @export\r\n * @class ThemeService\r\n * @implements {OnDestroy}\r\n */\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ThemeService implements OnDestroy {\r\n\r\n /** The light mode background css class name to be attached to HTML Body element. */\r\n private static readonly LIGHT_MODE_CSS_CLASS_NAME : string = 'dark';\r\n\r\n /** Name of the local storage key value to query and persist the theme settings. */\r\n private static readonly SETTINGS_KEY: string = 'theme';\r\n\r\n /**\r\n * CSS media feature that is used to detect if the user has requested a light or dark color theme.\r\n * The user might indicate this preference through an operating system setting (e.g. light or dark mode).\r\n * */\r\n private static readonly SYSTEM_DARK_MODE_MEDIA_QUERY = '(prefers-color-scheme: dark)';\r\n\r\n /** DOM renderer */\r\n private renderer: Renderer2;\r\n\r\n /** Settings for the visual appearance of the user interface. */\r\n private settings: ThemeSettings;\r\n\r\n private destructionSubject: Subject | null = null;\r\n\r\n private _kendouiStylesheetHtmlElement?: HTMLLinkElement;\r\n\r\n /**\r\n * Load or create the Html element that should link the url of the stylesheet of the Kendo UI component theme.\r\n *\r\n * @readonly\r\n */\r\n get kendouiStylesheetHtmlElement() {\r\n if (!this._kendouiStylesheetHtmlElement)\r\n {\r\n this._kendouiStylesheetHtmlElement = this.renderer.createElement('link');\r\n this.renderer.setAttribute(this._kendouiStylesheetHtmlElement, 'rel', 'stylesheet');\r\n const headHtmlElement: HTMLHeadElement = this.document.getElementsByTagName('head')[0];\r\n this.renderer.appendChild(headHtmlElement, this._kendouiStylesheetHtmlElement)\r\n }\r\n return this._kendouiStylesheetHtmlElement;\r\n }\r\n\r\n /**\r\n * Serializes and sets the value of the pair identified by key to value in Local Storage, creating a new key/value pair if none existed for key previously.\r\n *\r\n * @param {string} key The name of the key you want to create/update.\r\n * @param {*} value The value you want to give the key you are creating/updating.\r\n * @private\r\n */\r\n private setLocalStorageItem(key: string, value: any): void\r\n {\r\n const serializedValue: string = JSON.stringify(value);\r\n localStorage.setItem(key, serializedValue);\r\n }\r\n\r\n /**\r\n * Returns and deserializes the current value associated with the given key in Local Storage, or null if the given key\r\n *\r\n * @param {string} key The name of the key you want to retrieve the value of.\r\n * @returns {*} The value of the key. If the key does not exist, undefined is returned.\r\n * @private\r\n */\r\n private getLocalStorageItem(key: string): any\r\n {\r\n const serializedValue: string | null = localStorage.getItem(key);\r\n const result: any = (serializedValue) ? JSON.parse(serializedValue) : undefined;\r\n return result;\r\n }\r\n\r\n /**\r\n * Removes the key/value pair with the given key from the list associated with the object in Local Storage, if a key/value pair with the given key exists.\r\n *\r\n * @param {string} key The name of the key you want to remove.\r\n * @private\r\n */\r\n private removeLocalStorageItem(key: string)\r\n {\r\n localStorage.removeItem(key);\r\n }\r\n\r\n /**\r\n * Constructor.\r\n * @param {Document} document Web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree..\r\n * @param {RendererFactory2} rendererFactory Creates and initializes a custom renderer that implements the Renderer2 base class.\r\n */\r\n constructor(@Inject(DOCUMENT) private document: Document,\r\n rendererFactory: RendererFactory2)\r\n {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n this.settings = this.getLocalStorageItem(ThemeService.SETTINGS_KEY);\r\n if (!this.settings)\r\n {\r\n this.settings = new ThemeSettings();\r\n this.settings.darkMode = this.isSystemDark();\r\n this.startSystemModeSynchronization();\r\n }\r\n }\r\n\r\n //** Check if the user Operative System theme preference is dark mode. */\r\n isSystemDark(): boolean\r\n {\r\n const result: boolean = this.document.defaultView?.matchMedia(ThemeService.SYSTEM_DARK_MODE_MEDIA_QUERY).matches!;\r\n return result;\r\n }\r\n\r\n /**\r\n * Set stylesheet url for Kendo UI components.\r\n * @param stylesheetFilePath Kendo UI components css style sheet file path.\r\n */\r\n private setKendoUiControlsMode(stylesheetFilePath: string): void\r\n {\r\n this.renderer.setProperty(this.kendouiStylesheetHtmlElement, 'href', stylesheetFilePath);\r\n }\r\n\r\n /**\r\n * Set the theme mode.\r\n * @param darkMode True for dark mode. False for light mode.\r\n */\r\n private setMode(darkMode: boolean): void\r\n {\r\n if (darkMode)\r\n {\r\n this.renderer.addClass(this.document.body, ThemeService.LIGHT_MODE_CSS_CLASS_NAME);\r\n this.setKendoUiControlsMode('kendoui-dark.css');\r\n }\r\n else\r\n {\r\n this.renderer.removeClass(this.document.body, ThemeService.LIGHT_MODE_CSS_CLASS_NAME);\r\n this.setKendoUiControlsMode('kendoui-light.css');\r\n }\r\n }\r\n\r\n isDarkModeMode(){ \r\n if(!this.getLocalStorageItem(ThemeService.SETTINGS_KEY)){\r\n return false;\r\n }else{\r\n return this.getLocalStorageItem(ThemeService.SETTINGS_KEY).darkMode;\r\n }\r\n }\r\n\r\n /** Apply the theme mode stored in the settings. */\r\n apply(): void\r\n {\r\n this.setMode(this.settings.darkMode);\r\n }\r\n\r\n /**\r\n * Observe and apply any future changes of user preferences of the theme mode through the operating system (dark or light).\r\n *\r\n * If the user decides to change the theme through the operating system, the changes will be immediately reflected in the application.\r\n *\r\n * @private\r\n */\r\n private startSystemModeSynchronization(): void\r\n {\r\n if ((!this.destructionSubject) && (this.document.defaultView))\r\n {\r\n this.destructionSubject = new Subject();\r\n fromEvent(this.document.defaultView.matchMedia(ThemeService.SYSTEM_DARK_MODE_MEDIA_QUERY), 'change').pipe(\r\n takeUntil(this.destructionSubject)\r\n ).subscribe((e: Event) =>\r\n {\r\n const mediaqueryListEventMediaQueryListEvent: MediaQueryListEvent = e as MediaQueryListEvent;\r\n const darkMode = (mediaqueryListEventMediaQueryListEvent) ? mediaqueryListEventMediaQueryListEvent.matches : this.isSystemDark();\r\n this.setMode(darkMode);\r\n })\r\n }\r\n }\r\n\r\n /**\r\n * Stop observing and reflecting in the application the user's preferences about the theme in the operating system (dark or light).\r\n *\r\n * @private\r\n * @memberof ThemeService\r\n */\r\n private stopSystemModeSynchronization(): void\r\n {\r\n if (this.destructionSubject)\r\n {\r\n this.destructionSubject.next();\r\n this.destructionSubject.complete();\r\n this.destructionSubject = null;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stopSystemModeSynchronization();\r\n }\r\n\r\n /** Apply the theme mode according to the user's operating system preferences. */\r\n setSystemMode(): void\r\n {\r\n const darkMode = this.isSystemDark();\r\n this.setMode(darkMode);\r\n this.startSystemModeSynchronization();\r\n this.removeLocalStorageItem(ThemeService.SETTINGS_KEY);\r\n }\r\n\r\n /**\r\n * Apply and persist in the configuration the theme mode chosen by the user within the application.\r\n * @param darkMode True for dark mode. False for light mode.\r\n */\r\n setUserDefinedMode(darkMode: boolean): void\r\n {\r\n this.setMode(darkMode);\r\n this.stopSystemModeSynchronization();\r\n this.settings.darkMode = darkMode;\r\n this.setLocalStorageItem(ThemeService.SETTINGS_KEY, this.settings);\r\n }\r\n\r\n //** Apply light mode. */\r\n setLightMode()\r\n {\r\n this.setUserDefinedMode(false);\r\n }\r\n\r\n /** Apply dark mode. */\r\n setDarkMode()\r\n {\r\n this.setUserDefinedMode(true);\r\n }\r\n}", "/**\r\n * Settings for the visual appearance of the user interface.\r\n *\r\n * * @export\r\n * @class ThemeSettings\r\n */\r\nexport class ThemeSettings {\r\n /**\r\n *\r\n * Dark mode status enabled.\r\n * @type {boolean}\r\n * @memberof ThemeSettings\r\n */\r\n public darkMode: boolean = false;\r\n }\r\n ", "import {\r\n AfterViewInit,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { Router, NavigationEnd } from \"@angular/router\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\nimport { AuthenticationService } from \"src/app/services/Security/authentication.service\";\r\nimport { PersistenceService } from \"@src/app/services/Utilities/data.persistence.service\";\r\nimport { LocalStorageList } from \"@src/app/helpers/enums/enums.keys\";\r\nimport { ReportEnvironment } from \"@src/app/models/Report/report-setting\";\r\nimport { SettingsService } from \"@src/app/services/Utilities/settings.service\";\r\nimport { ThemeService } from \"@src/app/services/Utilities/theme.service\";\r\n\r\n@Component({\r\n selector: \"app-redirect-component\",\r\n templateUrl: \"./redirect-component.component.html\",\r\n styleUrls: [\"./redirect-component.component.scss\"],\r\n})\r\n// apunta a v1\r\nexport class RedirectComponentComponent implements OnInit, AfterViewInit {\r\n public url = \"\";\r\n host = \"\";\r\n sub: Subscription;\r\n a_field: string = \"\";\r\n @ViewChild(\"form\") postForm: ElementRef;\r\n ready = false;\r\n //private source = interval(3000);\r\n\r\n @Input() inputHost: string = \"\";\r\n themeSwitcher = false;\r\n constructor(\r\n private router: Router,\r\n private authenticationService: AuthenticationService,\r\n private persistenceService: PersistenceService,\r\n private settingsService: SettingsService,\r\n themeService: ThemeService\r\n ) {\r\n this.a_field = this.authenticationService.getToken();\r\n this.host = settingsService.getBaseUrlV1;\r\n this.themeSwitcher = themeService.isDarkModeMode();\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.sub = this.router.events.subscribe((e) => {\r\n if (e instanceof NavigationEnd) {\r\n this.createUrl(e.url);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.createUrl(this.router.url);\r\n }\r\n\r\n createUrl(goTo: string) {\r\n\r\n //sobre escribimos la ruta porque fue enviada\r\n if(this.inputHost){\r\n goTo = this.inputHost;\r\n }\r\n\r\n \r\n const hostNew = this.persistenceService.getData(\r\n LocalStorageList.servidorV1\r\n );\r\n var env = this.settingsService.getBaseUrlReportViewer;\r\n console.log(`ReportViewer: ${env}`)\r\n if (env === ReportEnvironment.Production) {\r\n if (hostNew !== \"null\" && hostNew !== undefined && hostNew !== null && hostNew !== 'undefined') {\r\n this.host = hostNew;\r\n console.log(`UrlV1: ${hostNew}`)\r\n }\r\n }\r\n\r\n\r\n this.url = `${this.host}/instituciones/?origen=1&theme=${this.themeSwitcher}&time=${new Date().getTime()}#${goTo}`;\r\n //this.url=\"http://testv1.saludplusweb.com/pruebas/ejemplos\"\r\n console.log(this.url);\r\n setTimeout(() => {\r\n this.postForm.nativeElement.submit();\r\n }, 500);\r\n\r\n // console.warn(this.url);\r\n }\r\n\r\n /*\r\n ngOnDestroy() {\r\n if (this.sub) { this.sub.unsubscribe(); }\r\n }*/\r\n}\r\n", "
\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n "], "mappings": "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", "names": ["init_esm", "init_operators", "ThemeSettings", "constructor", "darkMode", "ThemeService", "LIGHT_MODE_CSS_CLASS_NAME", "SETTINGS_KEY", "SYSTEM_DARK_MODE_MEDIA_QUERY", "kendouiStylesheetHtmlElement", "_kendouiStylesheetHtmlElement", "renderer", "createElement", "setAttribute", "headHtmlElement", "document", "getElementsByTagName", "appendChild", "setLocalStorageItem", "key", "value", "serializedValue", "JSON", "stringify", "localStorage", "setItem", "getLocalStorageItem", "getItem", "parse", "undefined", "removeLocalStorageItem", "removeItem", "constructor", "rendererFactory", "destructionSubject", "createRenderer", "settings", "ThemeSettings", "darkMode", "isSystemDark", "startSystemModeSynchronization", "defaultView", "matchMedia", "matches", "setKendoUiControlsMode", "stylesheetFilePath", "setProperty", "setMode", "addClass", "body", "removeClass", "isDarkModeMode", "apply", "Subject", "fromEvent", "pipe", "takeUntil", "subscribe", "e", "mediaqueryListEventMediaQueryListEvent", "stopSystemModeSynchronization", "next", "complete", "ngOnDestroy", "setSystemMode", "setUserDefinedMode", "setLightMode", "setDarkMode", "\u0275\u0275inject", "DOCUMENT", "RendererFactory2", "factory", "\u0275fac", "providedIn", "RedirectComponentComponent", "constructor", "router", "authenticationService", "persistenceService", "settingsService", "themeService", "url", "host", "a_field", "ready", "inputHost", "themeSwitcher", "getToken", "getBaseUrlV1", "isDarkModeMode", "ngAfterViewInit", "sub", "events", "subscribe", "e", "NavigationEnd", "createUrl", "ngOnInit", "goTo", "hostNew", "getData", "LocalStorageList", "servidorV1", "env", "getBaseUrlReportViewer", "console", "log", "ReportEnvironment", "Production", "undefined", "Date", "getTime", "setTimeout", "postForm", "nativeElement", "submit", "\u0275\u0275directiveInject", "Router", "AuthenticationService", "PersistenceService", "SettingsService", "ThemeService", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "\u0275\u0275pipeBind1", "\u0275\u0275sanitizeResourceUrl", "\u0275\u0275pureFunction2", "_c1", "\u0275\u0275sanitizeUrl"] }