{"version":3,"file":"bootkit-angular-analytics.mjs","sources":["../../../projects/bootkit/analytics/google-analytics.service.ts","../../../projects/bootkit/analytics/bootkit-angular-analytics.ts"],"sourcesContent":["import { isPlatformBrowser } from \"@angular/common\";\r\nimport { Injectable, Inject, PLATFORM_ID } from \"@angular/core\";\r\n\r\ndeclare var window: any;\r\n\r\n/**\r\n * Service to handle Google Analytics integration.\r\n * \r\n * @remarks\r\n * This service is designed to work with Angular applications and ensures that \r\n * the Google Analytics script is only loaded in the browser environment.\r\n * \r\n * @example\r\n * ```typescript\r\n * constructor(private googleAnalyticsService: GoogleAnalyticsService) {\r\n *   this.googleAnalyticsService.loadScript('YOUR_GOOGLE_TAG_MANAGER_ID');\r\n * }\r\n * ```\r\n * \r\n * @public\r\n */\r\n@Injectable({\r\n    providedIn: 'root'\r\n})\r\nexport class GoogleAnalyticsService {\r\n    constructor(@Inject(PLATFORM_ID) private platformId: any) { }\r\n\r\n    /**\r\n     * Loads the Google Analytics script dynamically.\r\n     * @param googleTagManagerId - The Google Tag Manager ID to be used for loading the script.\r\n     **/\r\n    loadScript(googleTagManagerId: string) {\r\n        if (isPlatformBrowser(this.platformId)) {\r\n            const script = document.createElement('script');\r\n            script.src = `https://www.googletagmanager.com/gtag/js?id=${googleTagManagerId}`;\r\n            document.head.appendChild(script);\r\n            script.onload = (e) => {\r\n                window.dataLayer = window.dataLayer || [];\r\n                function gtag(...params: any[]) { window.dataLayer.push(arguments); }\r\n                gtag('js', new Date());\r\n                gtag('config', googleTagManagerId);\r\n            };\r\n        }\r\n    }\r\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAKA;;;;;;;;;;;;;;;AAeG;MAIU,sBAAsB,CAAA;AACU,IAAA,UAAA,CAAA;AAAzC,IAAA,WAAA,CAAyC,UAAe,EAAA;QAAf,IAAU,CAAA,UAAA,GAAV,UAAU,CAAK;KAAK;AAE7D;;;AAGI;AACJ,IAAA,UAAU,CAAC,kBAA0B,EAAA;AACjC,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAChD,YAAA,MAAM,CAAC,GAAG,GAAG,CAA+C,4CAAA,EAAA,kBAAkB,EAAE,CAAC;AACjF,YAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAClC,YAAA,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAI;gBAClB,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;AAC1C,gBAAA,SAAS,IAAI,CAAC,GAAG,MAAa,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE;AACrE,gBAAA,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;AACvB,gBAAA,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AACvC,aAAC,CAAC;SACL;KACJ;AAnBQ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,kBACX,WAAW,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AADtB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAET,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAEgB,MAAM;2BAAC,WAAW,CAAA;;;ACzBnC;;AAEG;;;;"}