{"version":3,"sources":["jsdelivr-header.js","/npm/@easyteam/launcher@1.1.19/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@easyteam/launcher@1.1.19/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.48.0.\n * Original file: /npm/@easyteam/launcher@1.1.19/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use client'\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n\n// src/types.ts\nvar Pages = /* @__PURE__ */ ((Pages2) => {\n  Pages2[\"TIMESHEET\"] = \"\";\n  Pages2[\"EMPLOYEE_TIMESHEET\"] = \":employeeId\";\n  Pages2[\"SETTINGS\"] = \"settings\";\n  Pages2[\"TIME_OFF_SETTINGS\"] = \"time-off-settings\";\n  Pages2[\"TIME_OFF\"] = \"time-off\";\n  Pages2[\"WEEKLY_SCHEDULE\"] = \"weekly-schedule\";\n  Pages2[\"POLICY\"] = \"policy\";\n  Pages2[\"CALENDAR_SYNC\"] = \"calendar-sync\";\n  Pages2[\"GEOLOCATION_SETTINGS\"] = \"geolocation-settings\";\n  Pages2[\"SCHEDULING_SETTINGS\"] = \"scheduling-settings\";\n  Pages2[\"TIME_CLOCK\"] = \"time-clock\";\n  return Pages2;\n})(Pages || {});\n\n// src/launcher.ts\nvar EasyTeamEmbedLauncher = class {\n  constructor(token, options) {\n    __publicField(this, \"eventData\");\n    __publicField(this, \"baseURL\");\n    __publicField(this, \"iframe\");\n    __publicField(this, \"token\");\n    __publicField(this, \"abortController\");\n    __publicField(this, \"verbose\");\n    this.eventData = {\n      employees: options.employees || [],\n      fonts: options.fonts,\n      basePath: options.apiBaseURL || \"https://www.easyteam.io/embed\",\n      isGlobalTimeTrackingEnabled: options.isGlobalTimeTrackingEnabled,\n      locations: options.locations,\n      theme: options.theme,\n      roles: options.roles,\n      timesheet: options.timesheet,\n      organization: options.organization\n    };\n    this.token = token;\n    this.baseURL = options.baseURL || \"https://www.easyteam.io/embed/iframe\";\n    this.verbose = options.verbose || false;\n    const iframe = document.createElement(\"iframe\");\n    iframe.width = \"100%\";\n    iframe.height = \"100%\";\n    iframe.referrerPolicy = \"origin-when-cross-origin\";\n    iframe.setAttribute(\"style\", \"outline: 0;border: 0;margin:0;padding:0\");\n    this.iframe = iframe;\n    this.iframe.onload = (() => {\n      this.logDebug(\"iframe loaded\");\n      try {\n        this.setEmbedContext();\n      } catch (ex) {\n        this.logError(\"sending context into iframe\", ex);\n      }\n    }).bind(this);\n    this.abortController = new AbortController();\n    window.addEventListener(\n      \"message\",\n      (event) => {\n        this.logDebug(\"Got Message\", event);\n        if (!this.baseURL.startsWith(event.origin) || !event.data) return;\n        if (event.data.type === \"ready\") {\n          this.setEmbedContext();\n          return;\n        }\n        if (options.onEvent && event.data.type === \"subscription\") {\n          options.onEvent(event.data.data);\n        }\n      },\n      { signal: this.abortController.signal }\n    );\n  }\n  clean() {\n    this.abortController.abort();\n  }\n  navigate(route, options) {\n    const query = (options == null ? void 0 : options.searchParams) ? Object.fromEntries(options.searchParams.entries()) : {};\n    const search = new URLSearchParams({ token: this.token, ...query });\n    let path = route;\n    if (options == null ? void 0 : options.urlParams) {\n      path = String(route).split(\":\").map((routePath) => {\n        var _a;\n        if (routePath[0] === \":\") {\n          return (_a = options.urlParams) == null ? void 0 : _a.get(routePath.substring(1) || \"\");\n        }\n        return routePath;\n      }).join(\"/\");\n    }\n    this.iframe.src = `${this.baseURL}/${path}?${search.toString()}`;\n  }\n  run(elementId, page, options) {\n    const container = document.getElementById(elementId);\n    this.navigate(page || \"\" /* TIMESHEET */, options);\n    if (!container) {\n      console.error(\"container element id not found\");\n      return;\n    }\n    if (container.children.length > 0) {\n      console.error(\"container element is not empty\");\n      return;\n    }\n    container.appendChild(this.iframe);\n  }\n  setEmbedContext() {\n    var _a;\n    this.logDebug(\n      \"Sending event data\",\n      this.eventData,\n      this.iframe,\n      (_a = this.iframe) == null ? void 0 : _a.contentWindow\n    );\n    if (!this.iframe || !this.iframe.contentWindow) {\n      this.logWarning(\n        \"Cannot set embed context: iframe or contentWindow is not available. This may occur during iframe navigation or if run() has not been called yet. The context will be sent automatically once the iframe is ready.\"\n      );\n      return;\n    }\n    try {\n      this.iframe.contentWindow.postMessage(this.eventData, \"*\");\n    } catch (ex) {\n      this.logError(\"Error sending data to iframe\", ex);\n    }\n  }\n  logDebug(message, ...args) {\n    if (this.verbose) {\n      console.debug(`EasyTeamEmbedLauncher: ${message}`, ...args);\n    }\n  }\n  logWarning(message, ...args) {\n    if (this.verbose) {\n      console.warn(`EasyTeamEmbedLauncher: ${message}`, ...args);\n    }\n  }\n  logError(message, ex) {\n    console.error(`EasyTeamEmbedLauncher: ${message}`, ex);\n  }\n};\nvar IFrameNotInitialized = class extends Error {\n  constructor() {\n    super();\n    this.name = \"IFrameNotInitialized\";\n  }\n};\nexport {\n  EasyTeamEmbedLauncher,\n  IFrameNotInitialized,\n  Pages\n};\n"]}