@aikaara/chat-sdk 1.5.10 → 1.5.12
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/{AikaaraLinkButton-D8fSaZEy.cjs → AikaaraLinkButton-8s80ku63.cjs} +1 -1
- package/dist/{AikaaraLinkButton-JBlryxQu.mjs → AikaaraLinkButton-DLHFN3om.mjs} +1 -1
- package/dist/{AikaaraPaymentLink-CL4O6gbc.mjs → AikaaraPaymentLink-ZYn2r5t-.mjs} +1 -1
- package/dist/AikaaraPaymentLink-mK1C7vwW.cjs +1 -0
- package/dist/{MountTenant-JKJpnHQ4.cjs → MountTenant-AF0sGJUq.cjs} +59 -59
- package/dist/{MountTenant-BK9Zg0Gy.mjs → MountTenant-SRVHyGJ7.mjs} +4189 -4083
- package/dist/cdn/aikaara-chat.iife.js +48 -48
- package/dist/headless.cjs +1 -1
- package/dist/headless.mjs +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +2 -2
- package/dist/ui.cjs +1 -1
- package/dist/ui.mjs +1 -1
- package/package.json +1 -1
- package/dist/AikaaraPaymentLink-D_SZ081m.cjs +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./MountTenant-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./MountTenant-AF0sGJUq.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 {
|
|
@@ -38,7 +38,7 @@ class w extends HTMLElement {
|
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
40
|
if (!e || !r?.keyId) {
|
|
41
|
-
I(n.url, n.name || "Pay"), this.dispatchEvent(
|
|
41
|
+
n.openLinkInNewTab ? window.open(n.url, "_blank", "noopener,noreferrer") : I(n.url, n.name || "Pay"), this.dispatchEvent(
|
|
42
42
|
new CustomEvent("template-action", {
|
|
43
43
|
detail: {
|
|
44
44
|
text: n.name || "link-click",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w="https://checkout.razorpay.com/v1/checkout.js";let m=null;function y(){return window}class k extends HTMLElement{shadow;payloadData=[];message="";paidIdx={};constructor(){super(),this.shadow=this.attachShadow({mode:"open"})}setPayload(t,n){this.payloadData=Array.isArray(t)?t:[],this.message=n??"",this.render()}render(){const t=this.payloadData.filter(e=>!!e&&typeof e=="object"&&e.type==="link"&&typeof e.url=="string"),n=t.map((e,s)=>{const o=e.name||"Open link",r=!!this.paidIdx[s];return`<button class="link${r?" paid":""}" data-i="${s}" type="button"${r?" disabled":""}><span class="lbl">${g(r?"Paid":o)}</span>`+(r?'<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">${n}</div>`,this.shadow.querySelectorAll(".link").forEach(e=>{e.addEventListener("click",()=>{if(e.disabled)return;const s=Number(e.dataset.i||0),o=t[s];o&&this.handleClick(s,o)})})}handleClick(t,n){const e=b(n),s=y().__aikaara_descriptor__,o=s?.partnerPayment,r=s?.razorpay;if(e&&o?.paymentLinkUrl){this.openPartnerPaymentLink(t,e,n,o);return}if(!e||!r?.keyId){n.openLinkInNewTab?window.open(n.url,"_blank","noopener,noreferrer"):I(n.url,n.name||"Pay"),this.dispatchEvent(new CustomEvent("template-action",{detail:{text:n.name||"link-click",attributes:{action:{type:"link",url:n.url,orderId:e||n.orderId,openedIn:"modal"}}},bubbles:!0,composed:!0}));return}_(r.preferredBanksUrl,e,r.preferredBanksMethod,r.preferredBanksHeaders).catch(c=>(console.warn("[payment_link] preferred-banks fetch failed; continuing with default UI",c),[])).then(c=>P().then(()=>this.openRazorpay(t,e,r,c))).catch(c=>{console.error("[payment_link] Razorpay launch failed",c)})}openPartnerPaymentLink(t,n,e,s){v(n,s).then(o=>{if(!o){f("Failed to generate payment link, please try again later");return}const r=(o.paymentStatus??"").toLowerCase();if(r==="paid"||r==="success"||r==="completed"){this.paidIdx[t]=!0,this.render(),f("Payment already completed");return}const c=o.vendorPaymentLink;if(!c){f("Failed to generate payment link, please try again later");return}const l=navigator.userAgent.toLowerCase();if(l.includes("iphone")||l.includes("ipad")||l.includes("ipod")){window.location.href=c;return}const d=x(c);if(!d){window.open(c,"_blank"),f("Allow popups for the best payment experience");return}this.dispatchEvent(new CustomEvent("template-action",{detail:{text:e.name||"link-click",attributes:{action:{type:"partner-payment",url:c,orderId:n,openedIn:"popup"}}},bubbles:!0,composed:!0})),C(d,s.checkoutOrigin,{onSuccess:()=>{this.paidIdx[t]=!0,this.render()},onError:p=>{f(p||"Payment failed, please try again")},onClose:()=>{}})}).catch(o=>{console.error("[payment_link] partner payment link fetch failed",o),f("Failed to generate payment link, please try again later")})}openRazorpay(t,n,e,s){const o=y(),r=o.__aikaara_runtime__?.identity??{},c={key:e.keyId,order_id:n,name:e.name||o.__aikaara_descriptor__?.title||"Payment",prefill:{},handler:()=>{this.paidIdx[t]=!0,this.render()},modal:{ondismiss:()=>{}}};typeof r.mobile=="string"?c.prefill.contact=r.mobile:typeof r.phone=="string"&&(c.prefill.contact=r.phone),typeof r.email=="string"&&(c.prefill.email=r.email),typeof r.name=="string"?c.prefill.name=r.name:typeof r.userName=="string"&&(c.prefill.name=r.userName),Array.isArray(s)&&s.length&&(c.config={display:{blocks:{utib:{name:"Pay Using Preferred Netbanking",instruments:[{method:"netbanking",banks:s}]}},sequence:["block.utib","netbanking","card","upi"],preferences:{show_default_blocks:!0}}});const l=o.Razorpay;if(typeof l!="function")throw new Error("Razorpay Checkout script not available");const i=new l(c);i.on("payment.failed",d=>{console.warn("[payment_link] payment.failed",d?.error)}),i.open()}}function g(a){return String(a??"").replace(/[&<>]/g,t=>t==="&"?"&":t==="<"?"<":">")}function b(a){if(typeof a.orderId=="string"&&a.orderId)return a.orderId;try{const t=new URL(a.url,window.location.origin),n=t.searchParams.get("orderId")||t.searchParams.get("order_id");if(n)return n;if(t.hash&&t.hash.length>1){const e=new URLSearchParams(t.hash.replace(/^#/,"")),s=e.get("orderId")||e.get("order_id");if(s)return s}}catch{}return null}function P(){return typeof y().Razorpay=="function"?Promise.resolve():m||(m=new Promise((a,t)=>{const n=document.querySelector('script[data-aikaara-razorpay="1"]');if(n){n.addEventListener("load",()=>a()),n.addEventListener("error",()=>t(new Error("checkout.js failed to load")));return}const e=document.createElement("script");e.src=w,e.async=!0,e.dataset.aikaaraRazorpay="1",e.onload=()=>a(),e.onerror=()=>{m=null,t(new Error("checkout.js failed to load"))},document.head.appendChild(e)}),m)}function _(a,t,n,e){if(!a)return Promise.resolve([]);const s=String(n||"GET").toUpperCase()==="POST"?"POST":"GET",o=a.includes("{orderId}")?a.replace("{orderId}",encodeURIComponent(t)):a+(a.includes("?")?"&":"?")+"orderId="+encodeURIComponent(t),r=y().__aikaara_runtime__??{};return(typeof r.getSessionToken=="function"?r.getSessionToken():typeof r.getChatJwt=="function"?r.getChatJwt():Promise.resolve(null)).then(l=>{const i={Accept:"application/json",...e??{}};l&&(i.Authorization=`Bearer ${l}`);const d={method:s,headers:i,credentials:"omit"};return s==="POST"&&(i["Content-Type"]="application/json",d.body=JSON.stringify({orderId:t})),fetch(o,d)}).then(l=>{if(!l.ok)throw new Error(`preferred-banks ${l.status}`);return l.json()}).then(l=>{const i=l,d=i?.data&&typeof i.data=="object"&&!Array.isArray(i.data)?i.data:null;return(Array.isArray(l)?l:Array.isArray(i?.banks)?i.banks:Array.isArray(i?.data)?i.data:Array.isArray(d?.preferredPaymentBank)?d.preferredPaymentBank:Array.isArray(d?.banks)?d.banks:[]).map(u=>{if(typeof u=="string")return u;if(u&&typeof u=="object"){const h=u;return h.code||h.bankCode||h.bank_code||null}return null}).filter(u=>!!u)})}async function v(a,t){const n=String(t.method||"GET").toUpperCase()==="POST"?"POST":"GET",e=t.paymentLinkUrl,s=e.includes("{orderId}")?e.replace("{orderId}",encodeURIComponent(a)):e+(e.includes("?")?"&":"?")+"orderId="+encodeURIComponent(a),o=y().__aikaara_runtime__??{},r=typeof o.getSessionToken=="function"?await o.getSessionToken():typeof o.getChatJwt=="function"?await o.getChatJwt():null,c={Accept:"application/json",...t.headers??{}};r&&(c.Authorization=`Bearer ${r}`);const l={method:n,headers:c,credentials:"omit"};n==="POST"&&(c["Content-Type"]="application/json",l.body=JSON.stringify({orderId:a}));const i=await fetch(s,l);if(!i.ok)throw new Error(`partner-payment-link ${i.status}`);const p=(await i.json())?.data;return!p||typeof p.vendorPaymentLink!="string"?null:{vendorPaymentLink:p.vendorPaymentLink,paymentStatus:p.paymentStatus??""}}function x(a){const e=window.screenX+Math.round((window.outerWidth-520)/2),s=window.screenY+Math.round((window.outerHeight-680)/2);return window.open(a,"taxbuddy_payment",`width=520,height=680,left=${e},top=${s},scrollbars=yes,resizable=yes`)}function C(a,t,n){let e=!1;function s(){clearInterval(c),window.removeEventListener("message",r)}function o(l){e||(e=!0,s(),l())}function r(l){if(t&&l.origin!==t)return;const i=l.data;if(!(!i||typeof i!="object")){if(i.type==="payment-completed"&&i.success===!0){o(()=>n.onSuccess());return}i.type==="payment-error"&&i.success===!1&&o(()=>n.onError(i.error??"Payment failed"))}}const c=setInterval(()=>{a.closed&&o(()=>n.onClose())},500);window.addEventListener("message",r)}function f(a){try{const t=document.querySelector("aikaara-error-banner");if(t&&typeof t.show=="function"){t.show(a);return}}catch{}console.warn("[payment_link]",a)}function I(a,t){if(!a)return;let n=document.querySelector("aikaara-link-modal");n||(n=document.createElement("aikaara-link-modal"),document.body.appendChild(n)),typeof n.show=="function"?n.show(a,t):window.open(a,"_blank","noopener,noreferrer")}function S(){typeof customElements>"u"||customElements.get("aikaara-template-payment-link")||customElements.define("aikaara-template-payment-link",k)}exports.AikaaraPaymentLink=k;exports.registerAikaaraPaymentLink=S;
|