@aikaara/chat-sdk 1.4.6 → 1.4.8

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.
@@ -1,4 +1,4 @@
1
- import { H as p } from "./MountTenant-xtZIgPSM.mjs";
1
+ import { H as p } from "./MountTenant-DOYMoJu4.mjs";
2
2
  class c extends HTMLElement {
3
3
  shadow;
4
4
  payload = null;
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./MountTenant-DUSZye2K.cjs");class l extends HTMLElement{shadow;payload=null;constructor(){super(),this.shadow=this.attachShadow({mode:"open"})}connectedCallback(){this.render()}setPayload(e){this.payload=e,this.render()}render(){const e=this.payload;this.shadow.innerHTML=`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./MountTenant-LbcBXsS9.cjs");class l extends HTMLElement{shadow;payload=null;constructor(){super(),this.shadow=this.attachShadow({mode:"open"})}connectedCallback(){this.render()}setPayload(e){this.payload=e,this.render()}render(){const e=this.payload;this.shadow.innerHTML=`
2
2
  <style>
3
3
  :host { display: block; margin-top: 8px; }
4
4
  button {
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y="https://checkout.razorpay.com/v1/checkout.js";let u=null;function f(){return window}class h extends HTMLElement{shadow;payloadData=[];message="";paidIdx={};constructor(){super(),this.shadow=this.attachShadow({mode:"open"})}setPayload(r,t){this.payloadData=Array.isArray(r)?r:[],this.message=t??"",this.render()}render(){const r=this.payloadData.filter(e=>!!e&&typeof e=="object"&&e.type==="link"&&typeof e.url=="string"),t=r.map((e,a)=>{const i=e.name||"Open link",o=!!this.paidIdx[a];return`<button class="link${o?" paid":""}" data-i="${a}" type="button"${o?" disabled":""}><span class="lbl">${k(o?"Paid":i)}</span>`+(o?'<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 8.5 L7 12 L13 5"/></svg>':'<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"><path d="M5 11 L11 5 M6 5 H11 V10"/></svg>')+"</button>"}).join("");this.shadow.innerHTML="<style>:host { display:block; margin:6px 0; font-family:inherit; }.bubble { padding:12px 16px; border-radius:14px; background:var(--aikaara-bot-bubble-bg, #d8e5f5); color:var(--aikaara-bot-bubble-text, #1a2845); font-size:14px; line-height:1.55; margin-bottom:10px; }.links { display:flex; flex-direction:column; gap:8px; }.link { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 22px; border:1.5px solid var(--aikaara-primary, #1849a9); background:var(--aikaara-primary, #1849a9); color:var(--aikaara-primary-contrast, #fff); border-radius:24px; font-size:14px; font-weight:600; cursor:pointer; font-family:inherit; text-decoration:none; transition: filter 120ms; width:150px; align-self:flex-start; }.link:hover:not(:disabled) { filter: brightness(0.94); }.link.paid, .link:disabled { background:#e7f5ec; color:#0e7c3a; border-color:#0e7c3a; cursor:default; }.icon { width:13px; height:13px; }</style>"+(this.message?`<div class="bubble">${this.message}</div>`:"")+`<div class="links">${t}</div>`,this.shadow.querySelectorAll(".link").forEach(e=>{e.addEventListener("click",()=>{if(e.disabled)return;const a=Number(e.dataset.i||0),i=r[a];i&&this.handleClick(a,i)})})}handleClick(r,t){const e=b(t),a=f().__aikaara_descriptor__?.razorpay;if(!e||!a?.keyId){_(t.url,t.name||"Pay"),this.dispatchEvent(new CustomEvent("template-action",{detail:{text:t.name||"link-click",attributes:{action:{type:"link",url:t.url,orderId:e||t.orderId,openedIn:"modal"}}},bubbles:!0,composed:!0}));return}w(a.preferredBanksUrl,e,a.preferredBanksMethod,a.preferredBanksHeaders).catch(i=>(console.warn("[payment_link] preferred-banks fetch failed; continuing with default UI",i),[])).then(i=>g().then(()=>this.openRazorpay(r,e,a,i))).catch(i=>{console.error("[payment_link] Razorpay launch failed",i)})}openRazorpay(r,t,e,a){const i=f(),o=i.__aikaara_runtime__?.identity??{},c={key:e.keyId,order_id:t,name:e.name||i.__aikaara_descriptor__?.title||"Payment",prefill:{},handler:()=>{this.paidIdx[r]=!0,this.render()},modal:{ondismiss:()=>{}}};typeof o.mobile=="string"?c.prefill.contact=o.mobile:typeof o.phone=="string"&&(c.prefill.contact=o.phone),typeof o.email=="string"&&(c.prefill.email=o.email),typeof o.name=="string"?c.prefill.name=o.name:typeof o.userName=="string"&&(c.prefill.name=o.userName),Array.isArray(a)&&a.length&&(c.config={display:{blocks:{utib:{name:"Pay Using Preferred Netbanking",instruments:[{method:"netbanking",banks:a}]}},sequence:["block.utib","netbanking","card","upi"],preferences:{show_default_blocks:!0}}});const d=i.Razorpay;if(typeof d!="function")throw new Error("Razorpay Checkout script not available");const s=new d(c);s.on("payment.failed",l=>{console.warn("[payment_link] payment.failed",l?.error)}),s.open()}}function k(n){return String(n??"").replace(/[&<>]/g,r=>r==="&"?"&amp;":r==="<"?"&lt;":"&gt;")}function b(n){if(typeof n.orderId=="string"&&n.orderId)return n.orderId;try{const r=new URL(n.url,window.location.origin),t=r.searchParams.get("orderId")||r.searchParams.get("order_id");if(t)return t;if(r.hash&&r.hash.length>1){const e=new URLSearchParams(r.hash.replace(/^#/,"")),a=e.get("orderId")||e.get("order_id");if(a)return a}}catch{}return null}function g(){return typeof f().Razorpay=="function"?Promise.resolve():u||(u=new Promise((n,r)=>{const t=document.querySelector('script[data-aikaara-razorpay="1"]');if(t){t.addEventListener("load",()=>n()),t.addEventListener("error",()=>r(new Error("checkout.js failed to load")));return}const e=document.createElement("script");e.src=y,e.async=!0,e.dataset.aikaaraRazorpay="1",e.onload=()=>n(),e.onerror=()=>{u=null,r(new Error("checkout.js failed to load"))},document.head.appendChild(e)}),u)}function w(n,r,t,e){if(!n)return Promise.resolve([]);const a=String(t||"GET").toUpperCase()==="POST"?"POST":"GET",i=n.includes("{orderId}")?n.replace("{orderId}",encodeURIComponent(r)):n+(n.includes("?")?"&":"?")+"orderId="+encodeURIComponent(r),o=f().__aikaara_runtime__??{};return(typeof o.getSessionToken=="function"?o.getSessionToken():typeof o.getChatJwt=="function"?o.getChatJwt():Promise.resolve(null)).then(d=>{const s={Accept:"application/json",...e??{}};d&&(s.Authorization=`Bearer ${d}`);const l={method:a,headers:s,credentials:"omit"};return a==="POST"&&(s["Content-Type"]="application/json",l.body=JSON.stringify({orderId:r})),fetch(i,l)}).then(d=>{if(!d.ok)throw new Error(`preferred-banks ${d.status}`);return d.json()}).then(d=>{const s=d,l=s?.data&&typeof s.data=="object"&&!Array.isArray(s.data)?s.data:null;return(Array.isArray(d)?d:Array.isArray(s?.banks)?s.banks:Array.isArray(s?.data)?s.data:Array.isArray(l?.preferredPaymentBank)?l.preferredPaymentBank:Array.isArray(l?.banks)?l.banks:[]).map(p=>{if(typeof p=="string")return p;if(p&&typeof p=="object"){const m=p;return m.code||m.bankCode||m.bank_code||null}return null}).filter(p=>!!p)})}function _(n,r){if(!n)return;let t=document.querySelector("aikaara-link-modal");t||(t=document.createElement("aikaara-link-modal"),document.body.appendChild(t)),typeof t.show=="function"?t.show(n,r):window.open(n,"_blank","noopener,noreferrer")}function x(){typeof customElements>"u"||customElements.get("aikaara-template-payment-link")||customElements.define("aikaara-template-payment-link",h)}exports.AikaaraPaymentLink=h;exports.registerAikaaraPaymentLink=x;
@@ -1,9 +1,9 @@
1
1
  const h = "https://checkout.razorpay.com/v1/checkout.js";
2
- let p = null;
3
- function u() {
2
+ let u = null;
3
+ function f() {
4
4
  return window;
5
5
  }
6
- class m extends HTMLElement {
6
+ class y extends HTMLElement {
7
7
  shadow;
8
8
  payloadData = [];
9
9
  message = "";
@@ -20,8 +20,8 @@ class m extends HTMLElement {
20
20
  const r = this.payloadData.filter(
21
21
  (e) => !!e && typeof e == "object" && e.type === "link" && typeof e.url == "string"
22
22
  ), t = r.map((e, a) => {
23
- const i = e.name || "Open link", s = !!this.paidIdx[a];
24
- return `<button class="link${s ? " paid" : ""}" data-i="${a}" type="button"${s ? " disabled" : ""}><span class="lbl">${y(s ? "Paid" : i)}</span>` + (s ? '<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 8.5 L7 12 L13 5"/></svg>' : '<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"><path d="M5 11 L11 5 M6 5 H11 V10"/></svg>') + "</button>";
23
+ const i = e.name || "Open link", o = !!this.paidIdx[a];
24
+ return `<button class="link${o ? " paid" : ""}" data-i="${a}" type="button"${o ? " disabled" : ""}><span class="lbl">${k(o ? "Paid" : i)}</span>` + (o ? '<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 8.5 L7 12 L13 5"/></svg>' : '<svg class="icon" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"><path d="M5 11 L11 5 M6 5 H11 V10"/></svg>') + "</button>";
25
25
  }).join("");
26
26
  this.shadow.innerHTML = "<style>:host { display:block; margin:6px 0; font-family:inherit; }.bubble { padding:12px 16px; border-radius:14px; background:var(--aikaara-bot-bubble-bg, #d8e5f5); color:var(--aikaara-bot-bubble-text, #1a2845); font-size:14px; line-height:1.55; margin-bottom:10px; }.links { display:flex; flex-direction:column; gap:8px; }.link { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 22px; border:1.5px solid var(--aikaara-primary, #1849a9); background:var(--aikaara-primary, #1849a9); color:var(--aikaara-primary-contrast, #fff); border-radius:24px; font-size:14px; font-weight:600; cursor:pointer; font-family:inherit; text-decoration:none; transition: filter 120ms; width:150px; align-self:flex-start; }.link:hover:not(:disabled) { filter: brightness(0.94); }.link.paid, .link:disabled { background:#e7f5ec; color:#0e7c3a; border-color:#0e7c3a; cursor:default; }.icon { width:13px; height:13px; }</style>" + (this.message ? `<div class="bubble">${this.message}</div>` : "") + `<div class="links">${t}</div>`, this.shadow.querySelectorAll(".link").forEach((e) => {
27
27
  e.addEventListener("click", () => {
@@ -32,9 +32,9 @@ class m extends HTMLElement {
32
32
  });
33
33
  }
34
34
  handleClick(r, t) {
35
- const e = k(t), a = u().__aikaara_descriptor__?.razorpay;
35
+ const e = b(t), a = f().__aikaara_descriptor__?.razorpay;
36
36
  if (!e || !a?.keyId) {
37
- w(t.url, t.name || "Pay"), this.dispatchEvent(
37
+ x(t.url, t.name || "Pay"), this.dispatchEvent(
38
38
  new CustomEvent("template-action", {
39
39
  detail: {
40
40
  text: t.name || "link-click",
@@ -48,12 +48,12 @@ class m extends HTMLElement {
48
48
  );
49
49
  return;
50
50
  }
51
- g(a.preferredBanksUrl, e, a.preferredBanksMethod).catch((i) => (console.warn("[payment_link] preferred-banks fetch failed; continuing with default UI", i), [])).then((i) => b().then(() => this.openRazorpay(r, e, a, i))).catch((i) => {
51
+ w(a.preferredBanksUrl, e, a.preferredBanksMethod, a.preferredBanksHeaders).catch((i) => (console.warn("[payment_link] preferred-banks fetch failed; continuing with default UI", i), [])).then((i) => g().then(() => this.openRazorpay(r, e, a, i))).catch((i) => {
52
52
  console.error("[payment_link] Razorpay launch failed", i);
53
53
  });
54
54
  }
55
55
  openRazorpay(r, t, e, a) {
56
- const i = u(), s = i.__aikaara_runtime__?.identity ?? {}, o = {
56
+ const i = f(), o = i.__aikaara_runtime__?.identity ?? {}, c = {
57
57
  key: e.keyId,
58
58
  order_id: t,
59
59
  name: e.name || i.__aikaara_descriptor__?.title || "Payment",
@@ -68,31 +68,31 @@ class m extends HTMLElement {
68
68
  }
69
69
  }
70
70
  };
71
- typeof s.mobile == "string" ? o.prefill.contact = s.mobile : typeof s.phone == "string" && (o.prefill.contact = s.phone), typeof s.email == "string" && (o.prefill.email = s.email), typeof s.name == "string" ? o.prefill.name = s.name : typeof s.userName == "string" && (o.prefill.name = s.userName), Array.isArray(a) && a.length && (o.config = {
71
+ typeof o.mobile == "string" ? c.prefill.contact = o.mobile : typeof o.phone == "string" && (c.prefill.contact = o.phone), typeof o.email == "string" && (c.prefill.email = o.email), typeof o.name == "string" ? c.prefill.name = o.name : typeof o.userName == "string" && (c.prefill.name = o.userName), Array.isArray(a) && a.length && (c.config = {
72
72
  display: {
73
73
  blocks: {
74
- banks: {
75
- name: "Preferred Netbanking",
74
+ utib: {
75
+ name: "Pay Using Preferred Netbanking",
76
76
  instruments: [{ method: "netbanking", banks: a }]
77
77
  }
78
78
  },
79
- sequence: ["block.banks", "netbanking", "card", "upi"],
79
+ sequence: ["block.utib", "netbanking", "card", "upi"],
80
80
  preferences: { show_default_blocks: !0 }
81
81
  }
82
82
  });
83
83
  const d = i.Razorpay;
84
84
  if (typeof d != "function")
85
85
  throw new Error("Razorpay Checkout script not available");
86
- const c = new d(o);
87
- c.on("payment.failed", (l) => {
86
+ const s = new d(c);
87
+ s.on("payment.failed", (l) => {
88
88
  console.warn("[payment_link] payment.failed", l?.error);
89
- }), c.open();
89
+ }), s.open();
90
90
  }
91
91
  }
92
- function y(n) {
92
+ function k(n) {
93
93
  return String(n ?? "").replace(/[&<>]/g, (r) => r === "&" ? "&amp;" : r === "<" ? "&lt;" : "&gt;");
94
94
  }
95
- function k(n) {
95
+ function b(n) {
96
96
  if (typeof n.orderId == "string" && n.orderId) return n.orderId;
97
97
  try {
98
98
  const r = new URL(n.url, window.location.origin), t = r.searchParams.get("orderId") || r.searchParams.get("order_id");
@@ -105,8 +105,8 @@ function k(n) {
105
105
  }
106
106
  return null;
107
107
  }
108
- function b() {
109
- return typeof u().Razorpay == "function" ? Promise.resolve() : p || (p = new Promise((n, r) => {
108
+ function g() {
109
+ return typeof f().Razorpay == "function" ? Promise.resolve() : u || (u = new Promise((n, r) => {
110
110
  const t = document.querySelector('script[data-aikaara-razorpay="1"]');
111
111
  if (t) {
112
112
  t.addEventListener("load", () => n()), t.addEventListener("error", () => r(new Error("checkout.js failed to load")));
@@ -114,42 +114,42 @@ function b() {
114
114
  }
115
115
  const e = document.createElement("script");
116
116
  e.src = h, e.async = !0, e.dataset.aikaaraRazorpay = "1", e.onload = () => n(), e.onerror = () => {
117
- p = null, r(new Error("checkout.js failed to load"));
117
+ u = null, r(new Error("checkout.js failed to load"));
118
118
  }, document.head.appendChild(e);
119
- }), p);
119
+ }), u);
120
120
  }
121
- function g(n, r, t) {
121
+ function w(n, r, t, e) {
122
122
  if (!n) return Promise.resolve([]);
123
- const e = String(t || "GET").toUpperCase() === "POST" ? "POST" : "GET", a = n.includes("{orderId}") ? n.replace("{orderId}", encodeURIComponent(r)) : n + (n.includes("?") ? "&" : "?") + "orderId=" + encodeURIComponent(r), i = u().__aikaara_runtime__ ?? {};
124
- return (typeof i.getChatJwt == "function" ? i.getChatJwt() : Promise.resolve(null)).then((o) => {
125
- const d = { Accept: "application/json" };
126
- o && (d.Authorization = `Bearer ${o}`);
127
- const c = { method: e, headers: d, credentials: "omit" };
128
- return e === "POST" && (d["Content-Type"] = "application/json", c.body = JSON.stringify({ orderId: r })), fetch(a, c);
129
- }).then((o) => {
130
- if (!o.ok) throw new Error(`preferred-banks ${o.status}`);
131
- return o.json();
132
- }).then((o) => {
133
- const d = o;
134
- return (Array.isArray(o) ? o : Array.isArray(d?.banks) ? d.banks : Array.isArray(d?.data) ? d.data : Array.isArray(d?.data?.banks) ? d.data.banks : []).map((l) => {
135
- if (typeof l == "string") return l;
136
- if (l && typeof l == "object") {
137
- const f = l;
138
- return f.code || f.bankCode || f.bank_code || null;
123
+ const a = String(t || "GET").toUpperCase() === "POST" ? "POST" : "GET", i = n.includes("{orderId}") ? n.replace("{orderId}", encodeURIComponent(r)) : n + (n.includes("?") ? "&" : "?") + "orderId=" + encodeURIComponent(r), o = f().__aikaara_runtime__ ?? {};
124
+ return (typeof o.getSessionToken == "function" ? o.getSessionToken() : typeof o.getChatJwt == "function" ? o.getChatJwt() : Promise.resolve(null)).then((d) => {
125
+ const s = { Accept: "application/json", ...e ?? {} };
126
+ d && (s.Authorization = `Bearer ${d}`);
127
+ const l = { method: a, headers: s, credentials: "omit" };
128
+ return a === "POST" && (s["Content-Type"] = "application/json", l.body = JSON.stringify({ orderId: r })), fetch(i, l);
129
+ }).then((d) => {
130
+ if (!d.ok) throw new Error(`preferred-banks ${d.status}`);
131
+ return d.json();
132
+ }).then((d) => {
133
+ const s = d, l = s?.data && typeof s.data == "object" && !Array.isArray(s.data) ? s.data : null;
134
+ return (Array.isArray(d) ? d : Array.isArray(s?.banks) ? s.banks : Array.isArray(s?.data) ? s.data : Array.isArray(l?.preferredPaymentBank) ? l.preferredPaymentBank : Array.isArray(l?.banks) ? l.banks : []).map((p) => {
135
+ if (typeof p == "string") return p;
136
+ if (p && typeof p == "object") {
137
+ const m = p;
138
+ return m.code || m.bankCode || m.bank_code || null;
139
139
  }
140
140
  return null;
141
- }).filter((l) => !!l);
141
+ }).filter((p) => !!p);
142
142
  });
143
143
  }
144
- function w(n, r) {
144
+ function x(n, r) {
145
145
  if (!n) return;
146
146
  let t = document.querySelector("aikaara-link-modal");
147
147
  t || (t = document.createElement("aikaara-link-modal"), document.body.appendChild(t)), typeof t.show == "function" ? t.show(n, r) : window.open(n, "_blank", "noopener,noreferrer");
148
148
  }
149
- function x() {
150
- typeof customElements > "u" || customElements.get("aikaara-template-payment-link") || customElements.define("aikaara-template-payment-link", m);
149
+ function v() {
150
+ typeof customElements > "u" || customElements.get("aikaara-template-payment-link") || customElements.define("aikaara-template-payment-link", y);
151
151
  }
152
152
  export {
153
- m as AikaaraPaymentLink,
154
- x as registerAikaaraPaymentLink
153
+ y as AikaaraPaymentLink,
154
+ v as registerAikaaraPaymentLink
155
155
  };