{"version":3,"file":"angular-freshdesk.mjs","sources":["../../../src/lib/freshdesk-webwidget.model.ts","../../../src/lib/freshdesk-webwidget.service.ts","../../../src/lib/freshdesk-webwidget.module.ts","../../../src/angular-freshdesk.ts"],"sourcesContent":["export abstract class FreshdeskWebwidgetConfig {\n  abstract widgetId: number;\n  abstract locale: string;\n  abstract callback(FreshworksWidget): any;\n}\n","import { Injectable } from '@angular/core';\n\nimport { FreshdeskWebwidgetConfig } from './freshdesk-webwidget.model';\n\nfunction getWindow(): any {\n  return window;\n}\n\n@Injectable()\nexport class FreshdeskWebwidgetService {\n  constructor(private freshdeskWebwidgetConfig?: FreshdeskWebwidgetConfig) {\n    if (!this.freshdeskWebwidgetConfig.widgetId) {\n      throw new Error(\n        'Missing widgetId. Please set in app config via FreshdeskWidgetProvider'\n      );\n    }\n    const window = getWindow();\n\n    const script = document.createElement('script');\n\n    script.type = 'text/javascript';\n    script.async = true;\n    script.src = `https://widget.freshworks.com/widgets/${this.freshdeskWebwidgetConfig.widgetId}.js`;\n\n    window.fwSettings = {\n      widget_id: freshdeskWebwidgetConfig.widgetId,\n      locale: freshdeskWebwidgetConfig.locale,\n    };\n\n    window.FreshworksWidget ||\n      (function () {\n        if ('function' != typeof window.FreshworksWidget) {\n          let n = function () {\n            n['q'].push(arguments);\n          };\n          (n['q'] = []), (window.FreshworksWidget = n);\n        }\n      })();\n\n    script.onload = function (event) {\n      try {\n        freshdeskWebwidgetConfig.callback(window.FreshworksWidget);\n      } catch (error) {\n        console.log('error.: ', error);\n      }\n    };\n\n    script.onerror = function (event) {\n      console.log('error Onerror.: ', event);\n    };\n\n    document.body.append(script);\n  }\n\n  get FreshworksWidget() {\n    const window = getWindow();\n    return window.FreshworksWidget;\n  }\n}\n","import { ModuleWithProviders, NgModule, Type } from '@angular/core';\nimport { FreshdeskWebwidgetConfig } from './freshdesk-webwidget.model';\nimport { FreshdeskWebwidgetService } from './freshdesk-webwidget.service';\n\n@NgModule()\nexport class FreshdeskWebwidgetModule {\n  static forRoot(freshdeskConfig: Type<FreshdeskWebwidgetConfig>): ModuleWithProviders<FreshdeskWebwidgetModule> {\n    return {\n      ngModule: FreshdeskWebwidgetModule,\n      providers: [\n        {provide: FreshdeskWebwidgetConfig, useClass: freshdeskConfig },\n        {provide: FreshdeskWebwidgetService, useClass: FreshdeskWebwidgetService, deps: [FreshdeskWebwidgetConfig] }\n      ]\n    };\n  }\n}\n\nexport {\n  FreshdeskWebwidgetService,\n  FreshdeskWebwidgetConfig\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.FreshdeskWebwidgetConfig"],"mappings":"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"}