@careshiphealth/sdk 2.1.0 → 2.1.2
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/dist/index.esm.js
CHANGED
|
@@ -34,11 +34,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
34
34
|
step((generator = generator.apply(__this, __arguments)).next());
|
|
35
35
|
});
|
|
36
36
|
};
|
|
37
|
-
const
|
|
38
|
-
const packageJson = {
|
|
39
|
-
version
|
|
40
|
-
};
|
|
41
|
-
const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@${packageJson.version}`;
|
|
37
|
+
const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest`;
|
|
42
38
|
const CONSTANTS = {
|
|
43
39
|
WIDGET_JS: `${WIDGET_CDN_URL}/dist/widget.iife.js`,
|
|
44
40
|
WIDGET_CSS: `${WIDGET_CDN_URL}/dist/widget.css`
|
|
@@ -144,9 +140,10 @@ class SuperCareEmbed {
|
|
|
144
140
|
}
|
|
145
141
|
const script = document.createElement("script");
|
|
146
142
|
script.id = "supercare-09u2ekhbpo-script";
|
|
147
|
-
script.dataset[""];
|
|
148
143
|
script.type = "module";
|
|
149
|
-
|
|
144
|
+
const org = encodeURIComponent(this.config.orgId);
|
|
145
|
+
const key = encodeURIComponent(this.config.apiKey);
|
|
146
|
+
script.src = `${CONSTANTS.WIDGET_JS}?orgId=${org}&apiKey=${key}`;
|
|
150
147
|
script.onload = () => {
|
|
151
148
|
this.scriptElement = script;
|
|
152
149
|
resolve();
|
|
@@ -179,17 +176,23 @@ class SuperCareEmbed {
|
|
|
179
176
|
const superCareEmbed = new SuperCareEmbed();
|
|
180
177
|
if (typeof window !== "undefined") {
|
|
181
178
|
window.addEventListener("DOMContentLoaded", () => {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
179
|
+
const current = document.currentScript;
|
|
180
|
+
const candidate = current && current.hasAttribute("data-supercare-org-id") ? current : document.querySelector(
|
|
181
|
+
"script[data-supercare-org-id]"
|
|
182
|
+
);
|
|
183
|
+
if (!candidate) return;
|
|
184
|
+
const orgId = candidate.getAttribute("data-supercare-org-id");
|
|
185
|
+
const apiKey = candidate.getAttribute("data-supercare-api-key") || "";
|
|
186
|
+
let containerId = candidate.getAttribute("data-supercare-container-id") || "";
|
|
187
|
+
if (!containerId) {
|
|
188
|
+
containerId = "supercare-widget-container";
|
|
189
|
+
}
|
|
190
|
+
if (orgId) {
|
|
191
|
+
superCareEmbed.embed({
|
|
192
|
+
orgId,
|
|
193
|
+
apiKey,
|
|
194
|
+
containerId
|
|
195
|
+
}).catch(console.error);
|
|
193
196
|
}
|
|
194
197
|
});
|
|
195
198
|
}
|
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\n// export const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@${packageJson.version}`;\nexport const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest`;\nexport const CONSTANTS = {\n WIDGET_JS: `${WIDGET_CDN_URL}/dist/widget.iife.js`,\n WIDGET_CSS: `${WIDGET_CDN_URL}/dist/widget.css`,\n};\n","import { CONSTANTS } from \"./constant\";\n\nexport interface SuperCareEmbedConfig {\n orgId: string;\n apiKey: string;\n // cssUrl?: string;\n // widgetUrl?: string;\n containerId: string;\n autoInit?: boolean;\n}\n\nexport interface SuperCareEmbedSDK {\n embed: (config: SuperCareEmbedConfig) => Promise<void>;\n remove: () => void;\n isEmbedded: () => boolean;\n}\n\nclass SuperCareEmbed implements SuperCareEmbedSDK {\n private isWidgetEmbedded = false;\n private scriptElement: HTMLScriptElement | null = null;\n private cssElement: HTMLLinkElement | null = null;\n private containerElement: HTMLDivElement | null = null;\n private config: SuperCareEmbedConfig | null = null;\n\n\n\n async embed(config: SuperCareEmbedConfig): Promise<void> {\n if (this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is already embedded\");\n return;\n }\n\n this.config = {\n // widgetUrl: defaultWidgetUrl,\n // cssUrl: defaultCssUrl,\n // containerId: \"supercare-09u2ekhbpo-body\",\n autoInit: true,\n ...config,\n };\n\n try {\n await this.injectCSS();\n await this.injectContainer();\n await this.injectScript();\n this.isWidgetEmbedded = true;\n } catch (error) {\n console.error(\"Failed to embed SuperCare widget:\", error);\n this.cleanup();\n throw error;\n }\n }\n\n\n remove(): void {\n if (!this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is not embedded\");\n return;\n }\n\n this.cleanup();\n this.isWidgetEmbedded = false;\n }\n\n\n isEmbedded(): boolean {\n return this.isWidgetEmbedded;\n }\n\n\n private async injectCSS(): Promise<void> {\n return new Promise((resolve, reject) => {\n // if (!this.config?.cssUrl) {\n // resolve();\n // return;\n // }\n\n const existingCSS = document.querySelector(\n `link[href=\"${CONSTANTS.WIDGET_CSS}\"]`\n );\n if (existingCSS) {\n resolve();\n return;\n }\n\n const link = document.createElement(\"link\");\n link.rel = \"stylesheet\";\n link.href = CONSTANTS.WIDGET_CSS;\n\n link.onload = () => {\n this.cssElement = link;\n resolve();\n };\n\n link.onerror = () => {\n reject(new Error(`Failed to load CSS from ${CONSTANTS.WIDGET_CSS}`));\n };\n\n document.head.appendChild(link);\n });\n }\n\n private async injectContainer(): Promise<void> {\n if (!this.config?.containerId) {\n throw new Error(\"Container ID is required\");\n }\n\n const existingContainer = document.getElementById(this.config.containerId);\n if (existingContainer) {\n this.containerElement = existingContainer as HTMLDivElement;\n return;\n }\n\n const container = document.createElement(\"div\");\n container.id = this.config.containerId;\n document.body.appendChild(container);\n this.containerElement = container;\n }\n\n\n private async injectScript(): Promise<void> {\n return new Promise((resolve, reject) => {\n if (!this.config?.orgId || !this.config?.apiKey) {\n reject(new Error(\"Org ID and API Key are required\"));\n return;\n }\n\n // Check if script is already loaded\n const existingScript = document.getElementById(\n \"supercare-09u2ekhbpo-script\"\n );\n if (existingScript) {\n resolve();\n return;\n }\n\n const script = document.createElement(\"script\");\n script.id = \"supercare-09u2ekhbpo-script\";\n script.type = \"module\";\n const org = encodeURIComponent(this.config.orgId);\n const key = encodeURIComponent(this.config.apiKey);\n script.src = `${CONSTANTS.WIDGET_JS}?orgId=${org}&apiKey=${key}`;\n\n script.onload = () => {\n this.scriptElement = script;\n resolve();\n };\n\n script.onerror = () => {\n reject(\n new Error(`Failed to load script from ${CONSTANTS.WIDGET_JS}`)\n );\n };\n\n document.body.appendChild(script);\n });\n }\n\n\n private cleanup(): void {\n if (this.scriptElement) {\n this.scriptElement.remove();\n this.scriptElement = null;\n }\n\n if (this.cssElement) {\n this.cssElement.remove();\n this.cssElement = null;\n }\n\n if (this.containerElement) {\n this.containerElement.remove();\n this.containerElement = null;\n }\n\n this.config = null;\n }\n}\n\nconst superCareEmbed = new SuperCareEmbed();\n\nexport { SuperCareEmbed };\nexport default superCareEmbed;\n\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"DOMContentLoaded\", () => {\n const current = (document.currentScript as HTMLScriptElement | null);\n const candidate =\n (current && current.hasAttribute(\"data-supercare-org-id\")\n ? current\n : (document.querySelector(\n \"script[data-supercare-org-id]\"\n ) as HTMLScriptElement | null));\n\n if (!candidate) return;\n\n const orgId = candidate.getAttribute(\"data-supercare-org-id\");\n const apiKey = candidate.getAttribute(\"data-supercare-api-key\") || \"\";\n let containerId = candidate.getAttribute(\"data-supercare-container-id\") || \"\";\n \n if (!containerId) {\n containerId = \"supercare-widget-container\";\n }\n\n if (orgId) {\n superCareEmbed\n .embed({\n orgId,\n apiKey,\n containerId,\n })\n .catch(console.error);\n }\n });\n}\n\nif (typeof window !== \"undefined\") {\n (window as any).SuperCareEmbed = superCareEmbed;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var SuperCareEmbedSDK=function(e){"use strict";var t=Object.defineProperty,
|
|
1
|
+
var SuperCareEmbedSDK=function(e){"use strict";var t=Object.defineProperty,n=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,o=(e,n,r)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r,d=(e,t,n)=>new Promise((r,i)=>{var o=e=>{try{s(n.next(e))}catch(t){i(t)}},d=e=>{try{s(n.throw(e))}catch(t){i(t)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(o,d);s((n=n.apply(e,t)).next())});const s="https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest",c={WIDGET_JS:`${s}/dist/widget.iife.js`,WIDGET_CSS:`${s}/dist/widget.css`};class l{constructor(){this.isWidgetEmbedded=!1,this.scriptElement=null,this.cssElement=null,this.containerElement=null,this.config=null}embed(e){return d(this,null,function*(){if(this.isWidgetEmbedded)console.warn("SuperCare widget is already embedded");else{this.config=((e,t)=>{for(var d in t||(t={}))r.call(t,d)&&o(e,d,t[d]);if(n)for(var d of n(t))i.call(t,d)&&o(e,d,t[d]);return e})({autoInit:!0},e);try{yield this.injectCSS(),yield this.injectContainer(),yield this.injectScript(),this.isWidgetEmbedded=!0}catch(t){throw console.error("Failed to embed SuperCare widget:",t),this.cleanup(),t}}})}remove(){this.isWidgetEmbedded?(this.cleanup(),this.isWidgetEmbedded=!1):console.warn("SuperCare widget is not embedded")}isEmbedded(){return this.isWidgetEmbedded}injectCSS(){return d(this,null,function*(){return new Promise((e,t)=>{if(document.querySelector(`link[href="${c.WIDGET_CSS}"]`))return void e();const n=document.createElement("link");n.rel="stylesheet",n.href=c.WIDGET_CSS,n.onload=()=>{this.cssElement=n,e()},n.onerror=()=>{t(new Error(`Failed to load CSS from ${c.WIDGET_CSS}`))},document.head.appendChild(n)})})}injectContainer(){return d(this,null,function*(){var e;if(!(null==(e=this.config)?void 0:e.containerId))throw new Error("Container ID is required");const t=document.getElementById(this.config.containerId);if(t)return void(this.containerElement=t);const n=document.createElement("div");n.id=this.config.containerId,document.body.appendChild(n),this.containerElement=n})}injectScript(){return d(this,null,function*(){return new Promise((e,t)=>{var n,r;if(!(null==(n=this.config)?void 0:n.orgId)||!(null==(r=this.config)?void 0:r.apiKey))return void t(new Error("Org ID and API Key are required"));if(document.getElementById("supercare-09u2ekhbpo-script"))return void e();const i=document.createElement("script");i.id="supercare-09u2ekhbpo-script",i.type="module";const o=encodeURIComponent(this.config.orgId),d=encodeURIComponent(this.config.apiKey);i.src=`${c.WIDGET_JS}?orgId=${o}&apiKey=${d}`,i.onload=()=>{this.scriptElement=i,e()},i.onerror=()=>{t(new Error(`Failed to load script from ${c.WIDGET_JS}`))},document.body.appendChild(i)})})}cleanup(){this.scriptElement&&(this.scriptElement.remove(),this.scriptElement=null),this.cssElement&&(this.cssElement.remove(),this.cssElement=null),this.containerElement&&(this.containerElement.remove(),this.containerElement=null),this.config=null}}const a=new l;return"undefined"!=typeof window&&window.addEventListener("DOMContentLoaded",()=>{const e=document.currentScript,t=e&&e.hasAttribute("data-supercare-org-id")?e:document.querySelector("script[data-supercare-org-id]");if(!t)return;const n=t.getAttribute("data-supercare-org-id"),r=t.getAttribute("data-supercare-api-key")||"";let i=t.getAttribute("data-supercare-container-id")||"";i||(i="supercare-widget-container"),n&&a.embed({orgId:n,apiKey:r,containerId:i}).catch(console.error)}),"undefined"!=typeof window&&(window.SuperCareEmbed=a),e.SuperCareEmbed=l,e.default=a,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}}),e}({});
|
|
2
2
|
//# sourceMappingURL=supercare-embed-sdk.iife.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supercare-embed-sdk.iife.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\
|
|
1
|
+
{"version":3,"file":"supercare-embed-sdk.iife.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\n// export const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@${packageJson.version}`;\nexport const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest`;\nexport const CONSTANTS = {\n WIDGET_JS: `${WIDGET_CDN_URL}/dist/widget.iife.js`,\n WIDGET_CSS: `${WIDGET_CDN_URL}/dist/widget.css`,\n};\n","import { CONSTANTS } from \"./constant\";\n\nexport interface SuperCareEmbedConfig {\n orgId: string;\n apiKey: string;\n // cssUrl?: string;\n // widgetUrl?: string;\n containerId: string;\n autoInit?: boolean;\n}\n\nexport interface SuperCareEmbedSDK {\n embed: (config: SuperCareEmbedConfig) => Promise<void>;\n remove: () => void;\n isEmbedded: () => boolean;\n}\n\nclass SuperCareEmbed implements SuperCareEmbedSDK {\n private isWidgetEmbedded = false;\n private scriptElement: HTMLScriptElement | null = null;\n private cssElement: HTMLLinkElement | null = null;\n private containerElement: HTMLDivElement | null = null;\n private config: SuperCareEmbedConfig | null = null;\n\n\n\n async embed(config: SuperCareEmbedConfig): Promise<void> {\n if (this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is already embedded\");\n return;\n }\n\n this.config = {\n // widgetUrl: defaultWidgetUrl,\n // cssUrl: defaultCssUrl,\n // containerId: \"supercare-09u2ekhbpo-body\",\n autoInit: true,\n ...config,\n };\n\n try {\n await this.injectCSS();\n await this.injectContainer();\n await this.injectScript();\n this.isWidgetEmbedded = true;\n } catch (error) {\n console.error(\"Failed to embed SuperCare widget:\", error);\n this.cleanup();\n throw error;\n }\n }\n\n\n remove(): void {\n if (!this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is not embedded\");\n return;\n }\n\n this.cleanup();\n this.isWidgetEmbedded = false;\n }\n\n\n isEmbedded(): boolean {\n return this.isWidgetEmbedded;\n }\n\n\n private async injectCSS(): Promise<void> {\n return new Promise((resolve, reject) => {\n // if (!this.config?.cssUrl) {\n // resolve();\n // return;\n // }\n\n const existingCSS = document.querySelector(\n `link[href=\"${CONSTANTS.WIDGET_CSS}\"]`\n );\n if (existingCSS) {\n resolve();\n return;\n }\n\n const link = document.createElement(\"link\");\n link.rel = \"stylesheet\";\n link.href = CONSTANTS.WIDGET_CSS;\n\n link.onload = () => {\n this.cssElement = link;\n resolve();\n };\n\n link.onerror = () => {\n reject(new Error(`Failed to load CSS from ${CONSTANTS.WIDGET_CSS}`));\n };\n\n document.head.appendChild(link);\n });\n }\n\n private async injectContainer(): Promise<void> {\n if (!this.config?.containerId) {\n throw new Error(\"Container ID is required\");\n }\n\n const existingContainer = document.getElementById(this.config.containerId);\n if (existingContainer) {\n this.containerElement = existingContainer as HTMLDivElement;\n return;\n }\n\n const container = document.createElement(\"div\");\n container.id = this.config.containerId;\n document.body.appendChild(container);\n this.containerElement = container;\n }\n\n\n private async injectScript(): Promise<void> {\n return new Promise((resolve, reject) => {\n if (!this.config?.orgId || !this.config?.apiKey) {\n reject(new Error(\"Org ID and API Key are required\"));\n return;\n }\n\n // Check if script is already loaded\n const existingScript = document.getElementById(\n \"supercare-09u2ekhbpo-script\"\n );\n if (existingScript) {\n resolve();\n return;\n }\n\n const script = document.createElement(\"script\");\n script.id = \"supercare-09u2ekhbpo-script\";\n script.type = \"module\";\n const org = encodeURIComponent(this.config.orgId);\n const key = encodeURIComponent(this.config.apiKey);\n script.src = `${CONSTANTS.WIDGET_JS}?orgId=${org}&apiKey=${key}`;\n\n script.onload = () => {\n this.scriptElement = script;\n resolve();\n };\n\n script.onerror = () => {\n reject(\n new Error(`Failed to load script from ${CONSTANTS.WIDGET_JS}`)\n );\n };\n\n document.body.appendChild(script);\n });\n }\n\n\n private cleanup(): void {\n if (this.scriptElement) {\n this.scriptElement.remove();\n this.scriptElement = null;\n }\n\n if (this.cssElement) {\n this.cssElement.remove();\n this.cssElement = null;\n }\n\n if (this.containerElement) {\n this.containerElement.remove();\n this.containerElement = null;\n }\n\n this.config = null;\n }\n}\n\nconst superCareEmbed = new SuperCareEmbed();\n\nexport { SuperCareEmbed };\nexport default superCareEmbed;\n\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"DOMContentLoaded\", () => {\n const current = (document.currentScript as HTMLScriptElement | null);\n const candidate =\n (current && current.hasAttribute(\"data-supercare-org-id\")\n ? current\n : (document.querySelector(\n \"script[data-supercare-org-id]\"\n ) as HTMLScriptElement | null));\n\n if (!candidate) return;\n\n const orgId = candidate.getAttribute(\"data-supercare-org-id\");\n const apiKey = candidate.getAttribute(\"data-supercare-api-key\") || \"\";\n let containerId = candidate.getAttribute(\"data-supercare-container-id\") || \"\";\n \n if (!containerId) {\n containerId = \"supercare-widget-container\";\n }\n\n if (orgId) {\n superCareEmbed\n .embed({\n orgId,\n apiKey,\n containerId,\n })\n .catch(console.error);\n }\n });\n}\n\nif (typeof window !== \"undefined\") {\n (window as any).SuperCareEmbed = superCareEmbed;\n}\n"],"names":["WIDGET_CDN_URL","CONSTANTS","WIDGET_JS","WIDGET_CSS","SuperCareEmbed","constructor","this","isWidgetEmbedded","scriptElement","cssElement","containerElement","config","embed","__async","console","warn","__spreadValues","autoInit","injectCSS","injectContainer","injectScript","error","cleanup","remove","isEmbedded","Promise","resolve","reject","document","querySelector","link","createElement","rel","href","onload","onerror","Error","head","appendChild","_a","containerId","existingContainer","getElementById","container","id","body","orgId","_b","apiKey","script","type","org","encodeURIComponent","key","src","superCareEmbed","window","addEventListener","current","currentScript","candidate","hasAttribute","getAttribute","catch"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).SuperCareEmbedSDK={})}(this,function(e){"use strict";var t=Object.defineProperty,
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).SuperCareEmbedSDK={})}(this,function(e){"use strict";var t=Object.defineProperty,n=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable,o=(e,n,i)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[n]=i,d=(e,t,n)=>new Promise((i,r)=>{var o=e=>{try{s(n.next(e))}catch(t){r(t)}},d=e=>{try{s(n.throw(e))}catch(t){r(t)}},s=e=>e.done?i(e.value):Promise.resolve(e.value).then(o,d);s((n=n.apply(e,t)).next())});const s="https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest",c={WIDGET_JS:`${s}/dist/widget.iife.js`,WIDGET_CSS:`${s}/dist/widget.css`};class l{constructor(){this.isWidgetEmbedded=!1,this.scriptElement=null,this.cssElement=null,this.containerElement=null,this.config=null}embed(e){return d(this,null,function*(){if(this.isWidgetEmbedded)console.warn("SuperCare widget is already embedded");else{this.config=((e,t)=>{for(var d in t||(t={}))i.call(t,d)&&o(e,d,t[d]);if(n)for(var d of n(t))r.call(t,d)&&o(e,d,t[d]);return e})({autoInit:!0},e);try{yield this.injectCSS(),yield this.injectContainer(),yield this.injectScript(),this.isWidgetEmbedded=!0}catch(t){throw console.error("Failed to embed SuperCare widget:",t),this.cleanup(),t}}})}remove(){this.isWidgetEmbedded?(this.cleanup(),this.isWidgetEmbedded=!1):console.warn("SuperCare widget is not embedded")}isEmbedded(){return this.isWidgetEmbedded}injectCSS(){return d(this,null,function*(){return new Promise((e,t)=>{if(document.querySelector(`link[href="${c.WIDGET_CSS}"]`))return void e();const n=document.createElement("link");n.rel="stylesheet",n.href=c.WIDGET_CSS,n.onload=()=>{this.cssElement=n,e()},n.onerror=()=>{t(new Error(`Failed to load CSS from ${c.WIDGET_CSS}`))},document.head.appendChild(n)})})}injectContainer(){return d(this,null,function*(){var e;if(!(null==(e=this.config)?void 0:e.containerId))throw new Error("Container ID is required");const t=document.getElementById(this.config.containerId);if(t)return void(this.containerElement=t);const n=document.createElement("div");n.id=this.config.containerId,document.body.appendChild(n),this.containerElement=n})}injectScript(){return d(this,null,function*(){return new Promise((e,t)=>{var n,i;if(!(null==(n=this.config)?void 0:n.orgId)||!(null==(i=this.config)?void 0:i.apiKey))return void t(new Error("Org ID and API Key are required"));if(document.getElementById("supercare-09u2ekhbpo-script"))return void e();const r=document.createElement("script");r.id="supercare-09u2ekhbpo-script",r.type="module";const o=encodeURIComponent(this.config.orgId),d=encodeURIComponent(this.config.apiKey);r.src=`${c.WIDGET_JS}?orgId=${o}&apiKey=${d}`,r.onload=()=>{this.scriptElement=r,e()},r.onerror=()=>{t(new Error(`Failed to load script from ${c.WIDGET_JS}`))},document.body.appendChild(r)})})}cleanup(){this.scriptElement&&(this.scriptElement.remove(),this.scriptElement=null),this.cssElement&&(this.cssElement.remove(),this.cssElement=null),this.containerElement&&(this.containerElement.remove(),this.containerElement=null),this.config=null}}const a=new l;"undefined"!=typeof window&&window.addEventListener("DOMContentLoaded",()=>{const e=document.currentScript,t=e&&e.hasAttribute("data-supercare-org-id")?e:document.querySelector("script[data-supercare-org-id]");if(!t)return;const n=t.getAttribute("data-supercare-org-id"),i=t.getAttribute("data-supercare-api-key")||"";let r=t.getAttribute("data-supercare-container-id")||"";r||(r="supercare-widget-container"),n&&a.embed({orgId:n,apiKey:i,containerId:r}).catch(console.error)}),"undefined"!=typeof window&&(window.SuperCareEmbed=a),e.SuperCareEmbed=l,e.default=a,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
2
2
|
//# sourceMappingURL=supercare-embed-sdk.umd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supercare-embed-sdk.umd.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\
|
|
1
|
+
{"version":3,"file":"supercare-embed-sdk.umd.js","sources":["../src/constant.ts","../src/index.ts"],"sourcesContent":["import packageJson from \"../package.json\";\n\n// export const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@${packageJson.version}`;\nexport const WIDGET_CDN_URL = `https://cdn.jsdelivr.net/npm/@careshiphealth/widget@latest`;\nexport const CONSTANTS = {\n WIDGET_JS: `${WIDGET_CDN_URL}/dist/widget.iife.js`,\n WIDGET_CSS: `${WIDGET_CDN_URL}/dist/widget.css`,\n};\n","import { CONSTANTS } from \"./constant\";\n\nexport interface SuperCareEmbedConfig {\n orgId: string;\n apiKey: string;\n // cssUrl?: string;\n // widgetUrl?: string;\n containerId: string;\n autoInit?: boolean;\n}\n\nexport interface SuperCareEmbedSDK {\n embed: (config: SuperCareEmbedConfig) => Promise<void>;\n remove: () => void;\n isEmbedded: () => boolean;\n}\n\nclass SuperCareEmbed implements SuperCareEmbedSDK {\n private isWidgetEmbedded = false;\n private scriptElement: HTMLScriptElement | null = null;\n private cssElement: HTMLLinkElement | null = null;\n private containerElement: HTMLDivElement | null = null;\n private config: SuperCareEmbedConfig | null = null;\n\n\n\n async embed(config: SuperCareEmbedConfig): Promise<void> {\n if (this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is already embedded\");\n return;\n }\n\n this.config = {\n // widgetUrl: defaultWidgetUrl,\n // cssUrl: defaultCssUrl,\n // containerId: \"supercare-09u2ekhbpo-body\",\n autoInit: true,\n ...config,\n };\n\n try {\n await this.injectCSS();\n await this.injectContainer();\n await this.injectScript();\n this.isWidgetEmbedded = true;\n } catch (error) {\n console.error(\"Failed to embed SuperCare widget:\", error);\n this.cleanup();\n throw error;\n }\n }\n\n\n remove(): void {\n if (!this.isWidgetEmbedded) {\n console.warn(\"SuperCare widget is not embedded\");\n return;\n }\n\n this.cleanup();\n this.isWidgetEmbedded = false;\n }\n\n\n isEmbedded(): boolean {\n return this.isWidgetEmbedded;\n }\n\n\n private async injectCSS(): Promise<void> {\n return new Promise((resolve, reject) => {\n // if (!this.config?.cssUrl) {\n // resolve();\n // return;\n // }\n\n const existingCSS = document.querySelector(\n `link[href=\"${CONSTANTS.WIDGET_CSS}\"]`\n );\n if (existingCSS) {\n resolve();\n return;\n }\n\n const link = document.createElement(\"link\");\n link.rel = \"stylesheet\";\n link.href = CONSTANTS.WIDGET_CSS;\n\n link.onload = () => {\n this.cssElement = link;\n resolve();\n };\n\n link.onerror = () => {\n reject(new Error(`Failed to load CSS from ${CONSTANTS.WIDGET_CSS}`));\n };\n\n document.head.appendChild(link);\n });\n }\n\n private async injectContainer(): Promise<void> {\n if (!this.config?.containerId) {\n throw new Error(\"Container ID is required\");\n }\n\n const existingContainer = document.getElementById(this.config.containerId);\n if (existingContainer) {\n this.containerElement = existingContainer as HTMLDivElement;\n return;\n }\n\n const container = document.createElement(\"div\");\n container.id = this.config.containerId;\n document.body.appendChild(container);\n this.containerElement = container;\n }\n\n\n private async injectScript(): Promise<void> {\n return new Promise((resolve, reject) => {\n if (!this.config?.orgId || !this.config?.apiKey) {\n reject(new Error(\"Org ID and API Key are required\"));\n return;\n }\n\n // Check if script is already loaded\n const existingScript = document.getElementById(\n \"supercare-09u2ekhbpo-script\"\n );\n if (existingScript) {\n resolve();\n return;\n }\n\n const script = document.createElement(\"script\");\n script.id = \"supercare-09u2ekhbpo-script\";\n script.type = \"module\";\n const org = encodeURIComponent(this.config.orgId);\n const key = encodeURIComponent(this.config.apiKey);\n script.src = `${CONSTANTS.WIDGET_JS}?orgId=${org}&apiKey=${key}`;\n\n script.onload = () => {\n this.scriptElement = script;\n resolve();\n };\n\n script.onerror = () => {\n reject(\n new Error(`Failed to load script from ${CONSTANTS.WIDGET_JS}`)\n );\n };\n\n document.body.appendChild(script);\n });\n }\n\n\n private cleanup(): void {\n if (this.scriptElement) {\n this.scriptElement.remove();\n this.scriptElement = null;\n }\n\n if (this.cssElement) {\n this.cssElement.remove();\n this.cssElement = null;\n }\n\n if (this.containerElement) {\n this.containerElement.remove();\n this.containerElement = null;\n }\n\n this.config = null;\n }\n}\n\nconst superCareEmbed = new SuperCareEmbed();\n\nexport { SuperCareEmbed };\nexport default superCareEmbed;\n\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"DOMContentLoaded\", () => {\n const current = (document.currentScript as HTMLScriptElement | null);\n const candidate =\n (current && current.hasAttribute(\"data-supercare-org-id\")\n ? current\n : (document.querySelector(\n \"script[data-supercare-org-id]\"\n ) as HTMLScriptElement | null));\n\n if (!candidate) return;\n\n const orgId = candidate.getAttribute(\"data-supercare-org-id\");\n const apiKey = candidate.getAttribute(\"data-supercare-api-key\") || \"\";\n let containerId = candidate.getAttribute(\"data-supercare-container-id\") || \"\";\n \n if (!containerId) {\n containerId = \"supercare-widget-container\";\n }\n\n if (orgId) {\n superCareEmbed\n .embed({\n orgId,\n apiKey,\n containerId,\n })\n .catch(console.error);\n }\n });\n}\n\nif (typeof window !== \"undefined\") {\n (window as any).SuperCareEmbed = superCareEmbed;\n}\n"],"names":["WIDGET_CDN_URL","CONSTANTS","WIDGET_JS","WIDGET_CSS","SuperCareEmbed","constructor","this","isWidgetEmbedded","scriptElement","cssElement","containerElement","config","embed","__async","console","warn","__spreadValues","autoInit","injectCSS","injectContainer","injectScript","error","cleanup","remove","isEmbedded","Promise","resolve","reject","document","querySelector","link","createElement","rel","href","onload","onerror","Error","head","appendChild","_a","containerId","existingContainer","getElementById","container","id","body","orgId","_b","apiKey","script","type","org","encodeURIComponent","key","src","superCareEmbed","window","addEventListener","current","currentScript","candidate","hasAttribute","getAttribute","catch"],"mappings":"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"}
|