@tinkerlandai/indiana-sdk 0.8.1 → 0.8.3

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/{ai-usage-JoM7ZWk-.d.ts → ai-usage-BV-FlgWr.d.ts} +1 -1
  3. package/dist/{api-JVC7x2FV.d.ts → api-B3FIE41b.d.ts} +381 -7
  4. package/dist/chunk-2QPETWDX.js +1 -0
  5. package/dist/chunk-ANOOBDW5.js +350 -0
  6. package/dist/chunk-BNU6IG3F.js +1 -0
  7. package/dist/{chunk-YWFNWK7C.js → chunk-GRLMT5PR.js} +1 -1
  8. package/dist/chunk-LMR2TM3X.js +1 -0
  9. package/dist/chunk-OBYJWIRB.js +1 -0
  10. package/dist/{chunk-USLZX2ZA.js → chunk-SHSNIJJM.js} +1 -1
  11. package/dist/{chunk-6HG7U6AU.js → chunk-SOQO2RDZ.js} +1 -1
  12. package/dist/{chunk-KSNOXNTC.js → chunk-VVV3JNS3.js} +1 -1
  13. package/dist/{chunk-56AYS7RS.js → chunk-Y32NPIYY.js} +1 -1
  14. package/dist/chunk-ZT66RIFU.js +10 -0
  15. package/dist/{configuration-sync-BexM2qbg.d.ts → configuration-sync-DNvKXHk-.d.ts} +2 -2
  16. package/dist/{content-YNL2CRJZ.js → content-J3FKZTGT.js} +1 -1
  17. package/dist/{errors-DrdTlPwf.d.ts → errors-C8lRYZ0n.d.ts} +48 -1
  18. package/dist/{funnel-local-client-D1Fe7CZ6.d.ts → funnel-local-client-wbz-4gFx.d.ts} +28 -19
  19. package/dist/{funnel-runtime-host-CAMI6BJS.js → funnel-runtime-host-C5P5JTV3.js} +1 -1
  20. package/dist/index.d.ts +104 -14
  21. package/dist/index.js +1 -1
  22. package/dist/native-shell.js +1 -1
  23. package/dist/openrouter.d.ts +3 -3
  24. package/dist/openrouter.js +1 -1
  25. package/dist/page.d.ts +2 -2
  26. package/dist/{paywall-MXRMMF3R.js → paywall-3GIRKSHN.js} +1 -1
  27. package/dist/popup.d.ts +1 -1
  28. package/dist/popup.js +1 -1
  29. package/dist/react-native.d.ts +97 -4
  30. package/dist/react-native.js +1 -1
  31. package/dist/{screen-renderer-P7MLBHY5.js → screen-renderer-5FPYVSPW.js} +1 -1
  32. package/dist/server.d.ts +11 -8
  33. package/dist/server.js +1 -1
  34. package/dist/src-BMJCIMIF.js +1 -0
  35. package/dist/visual.js +1 -1
  36. package/package.json +1 -1
  37. package/dist/chunk-3BQFJANQ.js +0 -1
  38. package/dist/chunk-AE4CUTUE.js +0 -1
  39. package/dist/chunk-AEUFCOFG.js +0 -1
  40. package/dist/chunk-F767CM3T.js +0 -7
  41. package/dist/chunk-X7JJAEQQ.js +0 -350
  42. package/dist/src-G7UQB3QE.js +0 -1
  43. package/dist/{screen-i6eHL11m.d.ts → screen-BpAejkn0.d.ts} +1 -1
@@ -1,8 +1,8 @@
1
1
  import { OpenRouter } from '@openrouter/sdk';
2
2
  import { ChatUsage } from '@openrouter/sdk/models';
3
- import { F as FoundationApi } from './api-JVC7x2FV.js';
4
- import { c as createAiPricing, A as AiUsageContext, a as AiTokenUsage, b as AiTokenQuote } from './ai-usage-JoM7ZWk-.js';
5
- import './screen-i6eHL11m.js';
3
+ import { F as FoundationApi } from './api-B3FIE41b.js';
4
+ import { c as createAiPricing, A as AiUsageContext, a as AiTokenUsage, b as AiTokenQuote } from './ai-usage-BV-FlgWr.js';
5
+ import './screen-BpAejkn0.js';
6
6
  import 'zod';
7
7
  import 'zod/v4';
8
8
  import '@ai-sdk/provider';
@@ -1 +1 @@
1
- import"./chunk-USLZX2ZA.js";import"./chunk-AEUFCOFG.js";import"./chunk-F767CM3T.js";import{a as i}from"./chunk-6HG7U6AU.js";import"./chunk-3BQFJANQ.js";import"./chunk-AE4CUTUE.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";import{z as k}from"zod";var c=k.number().int().min(0).max(1e9);function R(e,o){let a=c.parse(e.promptTokens),p=c.parse(e.completionTokens),s=c.parse(e.promptTokensDetails?.cachedTokens??0),t=c.parse(e.promptTokensDetails?.cacheWriteTokens??0),r=c.parse(e.promptTokensDetails?.audioTokens??0),l=c.parse(e.completionTokensDetails?.audioTokens??0),n=c.parse(e.completionTokensDetails?.reasoningTokens??0);if(c.parse(e.totalTokens)!==a+p||s+t+r>a||n+l>p||(e.promptTokensDetails?.videoTokens??0)>0)throw new i("AI_USAGE_UNAVAILABLE","Token pools must conserve usage; video needs an explicit token mapper");return{input:a-s-t-r,output:p-l-(o==="separate"?n:0),cache_read:s,cache_write:t,input_audio:r,output_audio:l,reasoning:o==="separate"?n:0}}function I(e){if(!Number.isFinite(e)||e<0)throw new i("AI_USAGE_UNAVAILABLE","Provider cost must be a nonnegative USD amount");let o=String(e),a=o.includes("e")?e.toFixed(18).replace(/0+$/,"").replace(/\.$/,""):o;if(!/^(0|[1-9]\d{0,11})(\.\d{1,18})?$/.test(a)||Number(a)!==e)throw new i("AI_USAGE_UNAVAILABLE","Provider cost exceeds the supported precision");return a}async function f(e){if(typeof window<"u")throw new i("SERVER_ONLY","OpenRouter accounting requires your backend");if(!["output","separate"].includes(e.reasoning)||!e.modelId||!e.generationId)throw new i("INVALID_REQUEST","Actual model, generation ID and reasoning pricing are required");let o={context:e.context,generationId:e.generationId,modelId:`openrouter/${e.modelId}`,usage:e.usage,tokens:null,quote:null,receipt:null,phase:"captured"};await e.persist(o);let a=e.mapTokens?e.mapTokens(e.usage):R(e.usage,e.reasoning),p=e.usage.cost==null?void 0:I(e.usage.cost),s=e.quote??await e.pricing.quoteTokens({modelId:o.modelId,tokens:a});if(s.pricing.modelId!==o.modelId||Object.keys(a).some(l=>a[l]!==s.tokens[l]))throw new i("INVALID_REQUEST","Saved quote must match the provider model and token pools");await e.persist({...o,tokens:a,quote:s,phase:"quoted"});let t=await e.pricing.trackTokens(e.client,{...e.context,quote:s,providerCostUsd:p,generationId:e.generationId});if(!t.receipt.accepted)throw new i("AI_BALANCE_REJECTED","OpenRouter usage was saved but the balance request was rejected");let r={...o,tokens:a,quote:s,receipt:t,phase:"settled"};return await e.persist(r),r}function T(e){if(typeof window<"u")throw new i("SERVER_ONLY","OpenRouter accounting requires your backend");if(!["output","separate"].includes(e.reasoning))throw new i("INVALID_REQUEST","Reasoning pricing is required");let o=e.openRouter.chat;async function a(t){if(!t.usage||!t.modelId||!t.generationId)throw new i("AI_USAGE_UNAVAILABLE","OpenRouter did not return final usage and the actual model");await f({...e,context:t.context,generationId:t.generationId,modelId:t.modelId.slice(11),usage:t.usage})}let p=async(t,r)=>{let n={context:await e.context(),generationId:null,modelId:null,usage:null,tokens:null,quote:null,receipt:null,phase:"incomplete"},d;try{d=await o.send(t,r)}catch(g){throw await e.persist(n),g}if(!(d instanceof ReadableStream)){if(n={...n,generationId:d.id,modelId:d.model?`openrouter/${d.model}`:null,usage:d.usage??null},!n.usage||!n.modelId)throw await e.persist(n),new i("AI_USAGE_UNAVAILABLE","OpenRouter omitted final accounting");return await a(n),d}let w=d.getReader(),m=!1;return new ReadableStream({async pull(g){try{let{value:u,done:A}=await w.read();if(A){if(m=!0,!n.usage||!n.modelId)throw await e.persist(n),new i("AI_USAGE_UNAVAILABLE","OpenRouter stream ended without final accounting");await a(n),g.close();return}if(u.error)throw new i("AI_PROVIDER_ERROR",u.error.message);u.usage&&(n={...n,generationId:u.id,modelId:u.model?`openrouter/${u.model}`:null,usage:u.usage}),g.enqueue(u)}catch(u){m||(m=!0,await e.persist(n)),await w.cancel(u),g.error(u)}},async cancel(g){m||(m=!0,await e.persist(n)),await w.cancel(g)}})},s=new Proxy(o,{get(t,r){return r==="send"?p:Reflect.get(t,r,t)}});return new Proxy(e.openRouter,{get(t,r){return r==="chat"?s:Reflect.get(t,r,t)}})}export{T as createOpenRouterUsageClient,f as trackOpenRouterUsage};
1
+ import"./chunk-SHSNIJJM.js";import"./chunk-2QPETWDX.js";import"./chunk-ZT66RIFU.js";import{a as i}from"./chunk-SOQO2RDZ.js";import"./chunk-LMR2TM3X.js";import"./chunk-OBYJWIRB.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";import{z as k}from"zod";var c=k.number().int().min(0).max(1e9);function R(e,o){let a=c.parse(e.promptTokens),p=c.parse(e.completionTokens),s=c.parse(e.promptTokensDetails?.cachedTokens??0),t=c.parse(e.promptTokensDetails?.cacheWriteTokens??0),r=c.parse(e.promptTokensDetails?.audioTokens??0),l=c.parse(e.completionTokensDetails?.audioTokens??0),n=c.parse(e.completionTokensDetails?.reasoningTokens??0);if(c.parse(e.totalTokens)!==a+p||s+t+r>a||n+l>p||(e.promptTokensDetails?.videoTokens??0)>0)throw new i("AI_USAGE_UNAVAILABLE","Token pools must conserve usage; video needs an explicit token mapper");return{input:a-s-t-r,output:p-l-(o==="separate"?n:0),cache_read:s,cache_write:t,input_audio:r,output_audio:l,reasoning:o==="separate"?n:0}}function I(e){if(!Number.isFinite(e)||e<0)throw new i("AI_USAGE_UNAVAILABLE","Provider cost must be a nonnegative USD amount");let o=String(e),a=o.includes("e")?e.toFixed(18).replace(/0+$/,"").replace(/\.$/,""):o;if(!/^(0|[1-9]\d{0,11})(\.\d{1,18})?$/.test(a)||Number(a)!==e)throw new i("AI_USAGE_UNAVAILABLE","Provider cost exceeds the supported precision");return a}async function f(e){if(typeof window<"u")throw new i("SERVER_ONLY","OpenRouter accounting requires your backend");if(!["output","separate"].includes(e.reasoning)||!e.modelId||!e.generationId)throw new i("INVALID_REQUEST","Actual model, generation ID and reasoning pricing are required");let o={context:e.context,generationId:e.generationId,modelId:`openrouter/${e.modelId}`,usage:e.usage,tokens:null,quote:null,receipt:null,phase:"captured"};await e.persist(o);let a=e.mapTokens?e.mapTokens(e.usage):R(e.usage,e.reasoning),p=e.usage.cost==null?void 0:I(e.usage.cost),s=e.quote??await e.pricing.quoteTokens({modelId:o.modelId,tokens:a});if(s.pricing.modelId!==o.modelId||Object.keys(a).some(l=>a[l]!==s.tokens[l]))throw new i("INVALID_REQUEST","Saved quote must match the provider model and token pools");await e.persist({...o,tokens:a,quote:s,phase:"quoted"});let t=await e.pricing.trackTokens(e.client,{...e.context,quote:s,providerCostUsd:p,generationId:e.generationId});if(!t.receipt.accepted)throw new i("AI_BALANCE_REJECTED","OpenRouter usage was saved but the balance request was rejected");let r={...o,tokens:a,quote:s,receipt:t,phase:"settled"};return await e.persist(r),r}function T(e){if(typeof window<"u")throw new i("SERVER_ONLY","OpenRouter accounting requires your backend");if(!["output","separate"].includes(e.reasoning))throw new i("INVALID_REQUEST","Reasoning pricing is required");let o=e.openRouter.chat;async function a(t){if(!t.usage||!t.modelId||!t.generationId)throw new i("AI_USAGE_UNAVAILABLE","OpenRouter did not return final usage and the actual model");await f({...e,context:t.context,generationId:t.generationId,modelId:t.modelId.slice(11),usage:t.usage})}let p=async(t,r)=>{let n={context:await e.context(),generationId:null,modelId:null,usage:null,tokens:null,quote:null,receipt:null,phase:"incomplete"},d;try{d=await o.send(t,r)}catch(g){throw await e.persist(n),g}if(!(d instanceof ReadableStream)){if(n={...n,generationId:d.id,modelId:d.model?`openrouter/${d.model}`:null,usage:d.usage??null},!n.usage||!n.modelId)throw await e.persist(n),new i("AI_USAGE_UNAVAILABLE","OpenRouter omitted final accounting");return await a(n),d}let w=d.getReader(),m=!1;return new ReadableStream({async pull(g){try{let{value:u,done:A}=await w.read();if(A){if(m=!0,!n.usage||!n.modelId)throw await e.persist(n),new i("AI_USAGE_UNAVAILABLE","OpenRouter stream ended without final accounting");await a(n),g.close();return}if(u.error)throw new i("AI_PROVIDER_ERROR",u.error.message);u.usage&&(n={...n,generationId:u.id,modelId:u.model?`openrouter/${u.model}`:null,usage:u.usage}),g.enqueue(u)}catch(u){m||(m=!0,await e.persist(n)),await w.cancel(u),g.error(u)}},async cancel(g){m||(m=!0,await e.persist(n)),await w.cancel(g)}})},s=new Proxy(o,{get(t,r){return r==="send"?p:Reflect.get(t,r,t)}});return new Proxy(e.openRouter,{get(t,r){return r==="chat"?s:Reflect.get(t,r,t)}})}export{T as createOpenRouterUsageClient,f as trackOpenRouterUsage};
package/dist/page.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { C as ConfigurationSync } from './configuration-sync-BexM2qbg.js';
1
+ import { C as ConfigurationSync } from './configuration-sync-DNvKXHk-.js';
2
2
  import { J as JsonValue, R as Result } from './growth-rules-B4YYy64R.js';
3
3
  import { z } from 'zod';
4
- import './screen-i6eHL11m.js';
4
+ import './screen-BpAejkn0.js';
5
5
 
6
6
  /** GET /api/v1/page-experiments/{environmentId}: page experiments and the saved groups they reference only. */
7
7
  declare const pageExperimentPayloadSchema: z.ZodObject<{
@@ -1 +1 @@
1
- import{a as z}from"./chunk-DSPLGTQI.js";import"./chunk-AEUFCOFG.js";import{Qd as q,kj as j}from"./chunk-F767CM3T.js";import{a as w}from"./chunk-6HG7U6AU.js";import{ka as N,v as $}from"./chunk-3BQFJANQ.js";import"./chunk-AE4CUTUE.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";async function W(b,n,h){if(n.status!=="complete")throw new w("INVALID_RESPONSE","A verified completed purchase is required");if(await h.onComplete?.(n),!b||!h.check)return;let t=N.parse(await h.check());if(t.internal_feature_id!==b.internal_feature_id||t.quantity!==b.quantity)throw new w("INVALID_RESPONSE","The access requirement changed");t.allowed&&await h.onAccessGranted?.(t)}async function ie(b,n){let h=n.check?N.parse(await n.check()):null;if(h?.allowed)return await n.onAccessGranted?.(h),{check:h,host:null};let t=await n.start(),y=t.view??await t.refresh();if(!y)throw new w("INVALID_RESPONSE","Paywall presentation is missing");let{mountScreenPreview:J}=await import("./screen-renderer-P7MLBHY5.js"),a=b.ownerDocument,S=new AbortController,v=a.createElement("section"),Q=a.createElement("div"),O=a.createElement("div"),P=a.createElement("p"),c=a.createElement("button"),L=a.createElement("button"),u=a.createElement("dialog"),_=a.activeElement,p=y.document.screen.strings.defaultLocale.startsWith("zh");v.dataset.indianaPaywall="",v.setAttribute("aria-label",y.document.name),v.style.cssText="width:100%;box-sizing:border-box;background:#fff;color:#172033;font:14px/1.5 system-ui,sans-serif",O.style.cssText="display:flex;gap:12px;padding:12px 20px;align-items:center;flex-wrap:wrap",P.setAttribute("role","status"),L.textContent=p?"\u5173\u95ED":"Close",c.textContent=p?"\u91CD\u8BD5":"Retry",c.hidden=!0,O.append(P,c,L),v.append(Q,O);let D=y.document.presentation,A,d=!1,T=!1,f=null,G=!1,m=()=>!G&&n.canInteract?.()!==!1,M=!1,r=null,I=null,U=e=>{P.textContent=e instanceof Error?e.message:p?"\u8BF7\u6C42\u5931\u8D25":"Request failed",z(n.onError,e),c.hidden=r===null};async function k(e){if(!(T||d||!m())){T=!0,c.hidden=!0,P.textContent="";try{await e()}catch(s){d||U(s)}finally{T=!1}}}async function K(e){await W(h,e,n)}async function E(e){if(d)return;if(!m()){r=async()=>E(await t.read()),c.hidden=!1;return}if(P.textContent=e.status,e.status==="complete"){r=null,await K(e);return}if(e.status!=="pending"){if(t.canReselect===!1){P.textContent=p?"\u6B63\u5728\u6838\u5BF9\u539F\u8D2D\u4E70\u7ED3\u679C":"Checking the original purchase result",c.textContent=p?"\u67E5\u8BE2\u7ED3\u679C":"Check result",r=async()=>E(await t.read()),c.hidden=!1;return}c.textContent=p?"\u91CD\u8BD5":"Retry",r=null,f=null;return}let s=Date.now()+6e5,l=2e3;for(;!d&&Date.now()<s;){if(await new Promise(C=>{let R=()=>{clearTimeout(x),C()},x=setTimeout(()=>{S.signal.removeEventListener("abort",R),C()},l);S.signal.addEventListener("abort",R,{once:!0})}),d)return;if(!m()){r=async()=>E(await t.read()),c.hidden=!1;return}let i=await t.read();if(i.status!=="pending"){await E(i);return}l=Math.min(l*1.5,3e4)}r=async()=>E(await t.read()),c.hidden=!1}async function V(){I?.remove(),I=null,r=V;let e=await t.confirm();if(!m()){r=V,c.hidden=!1;return}if(e.status==="pending"){if(e.checkoutUrl)n.onCheckoutUrl?await n.onCheckoutUrl(e.checkoutUrl):a.defaultView?.location.assign(e.checkoutUrl);else if(e.execution||e.nativePurchase){if(!n.onPurchase)throw new w("PURCHASE_HANDLER_REQUIRED","Provide the merchant or native purchase handler");await n.onPurchase({operation:e,signal:S.signal})}}r=async()=>E(await t.read()),await E(e)}function X(e){I?.remove();let s=a.createElement("div"),l=a.createElement("button"),i=a.createElement("button"),C=a.createElement("p");C.textContent=e.lines.map(o=>o.productName).join(", ")+" \xB7 "+$(e.charge?.totalMinor??e.catalogAmountMinor-(e.discount?.amountMinor??0),e.currency),l.textContent=p?"\u786E\u8BA4\u8D2D\u4E70":"Confirm purchase",i.textContent=p?"\u53D6\u6D88":"Cancel",l.onclick=()=>{k(V)};let R=async()=>{let o=await t.cancel();d||(s.remove(),I=null,await E(o))};i.onclick=()=>{r=R,k(R)};let x=a.createElement("div");for(let o of e.lines){let B=a.createElement("p");if(B.textContent=`${o.productName} \xB7 ${$(o.catalogAmountMinor,e.currency)}${j(o.interval,p?"zh-CN":"en",o.intervalCount??1)}`,x.append(B),o.trial){let F=a.createElement("p");F.textContent=p?`\u8BD5\u7528 ${o.trial.days} \u5929\uFF1B${o.trial.cardRequired?"\u9700\u8981\u63D0\u4F9B\u4ED8\u6B3E\u65B9\u5F0F":"\u65E0\u9700\u63D0\u4F9B\u4ED8\u6B3E\u65B9\u5F0F"}`:`Trial days: ${o.trial.days}; ${o.trial.cardRequired?"a payment method is required":"no payment method is required"}`,x.append(F)}}if(!e.charge){let o=a.createElement("p");o.textContent=p?"\u76EE\u5F55\u4EF7\u683C\uFF1B\u6700\u7EC8\u91D1\u989D\u4EE5\u7ED3\u8D26\u65F6\u7A0E\u8D39\u548C\u8BD5\u7528\u89C4\u5219\u4E3A\u51C6\u3002":"Catalog price; the final charge depends on checkout taxes and trial terms.",x.append(o)}s.append(C,x,l,i),O.prepend(s),I=s,r=null}async function H(){if(!f)return;if(r=H,!M){let s=t.view,l=s?.document.buttons[f.actionId],i=s&&l?.type==="checkout"?q(l.product,f.selection,s.capabilities):null;if(!i)throw new w("PRODUCT_UNAVAILABLE","Choose an available Product in this purchase area");let C=await n.resolveOfferId?.({actionId:f.actionId,productVersionId:i});if(d)return;C!==void 0&&(f.offerId=C),M=!0}if(!m()){c.hidden=!1;return}let e=await t.preview(f);d||X(e)}function g(e="destroy"){d||(d=!0,S.abort(),A?.destroy(),t.destroy(),u.open&&u.close(),u.remove(),v.remove(),_ instanceof HTMLElement&&_.isConnected&&_.focus(),e==="dismiss"&&z(n.onDismiss))}L.onclick=()=>{m()&&g("dismiss")},u.addEventListener("cancel",e=>{e.preventDefault(),m()&&g("dismiss")}),c.onclick=()=>{r&&k(r)};try{if(D.type==="inline")b.append(v);else{let e={sm:420,md:640,lg:900};u.style.cssText=`padding:0;border:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;width:${"size"in D?e[D.size]+"px":"100vw"}`,u.setAttribute("aria-label",y.document.name),u.append(v),b.append(u),m()&&u.showModal()}A=J(Q,{mode:"live",rendererUrl:t.webViewUrl,title:y.document.name,onAction(e,s={}){if(!m())return;let l=t.view,i=l?.document.buttons[e];if(i){if(i.type==="close"){k(async()=>{await n.onAction?.(e),g(n.onAction?"action":"dismiss")});return}if(i.type==="action"){r=async()=>{if(i.action.type==="event"){if(!n.onEvent)throw new w("EVENT_HANDLER_REQUIRED","Provide the event handler");await n.onEvent(i.action.event)}else n.onOpenUrl?await n.onOpenUrl(i.action.url):a.defaultView?.location.assign(i.action.url);await n.onAction?.(e),r=null},k(r);return}if((t.quote||f)&&t.canReselect===!1){r=t.quote?async()=>E(await t.read()):H,k(r);return}if(!l||!q(i.product,s,l.capabilities)){U(new w("PRODUCT_UNAVAILABLE","Choose an available Product in this purchase area"));return}if(f&&f.actionId!==e){U(new w("COMMAND_PENDING","Finish the current purchase"));return}f||(f={requestId:crypto.randomUUID(),actionId:e,selection:s},M=!1),k(H)}},onEscape:()=>{m()&&g("dismiss")},onError:e=>U(new Error(e))}),A.update(y.document.screen,y.document.screen.strings.defaultLocale,{capabilities:y.capabilities,serverInput:{bindings:[],answers:{}}}),await A.ready}catch(e){throw g(),e}return{check:h,host:{setSuspended(e){G=e,v.hidden=e,e&&u.open?u.close():!e&&!d&&D.type!=="inline"&&!u.open&&u.showModal()},destroy:g,refresh:async()=>{if(!m()){if(t.view)return t.view;throw new w("PRECONDITION_FAILED","Paywall presentation is suspended")}let e=await t.refresh();return d||A?.updateCapabilities(e.capabilities),e}}}}export{ie as showPaywall};
1
+ import{a as z}from"./chunk-DSPLGTQI.js";import"./chunk-2QPETWDX.js";import{Sj as j,ue as q}from"./chunk-ZT66RIFU.js";import{a as w}from"./chunk-SOQO2RDZ.js";import{ka as N,v as $}from"./chunk-LMR2TM3X.js";import"./chunk-OBYJWIRB.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";async function W(b,n,h){if(n.status!=="complete")throw new w("INVALID_RESPONSE","A verified completed purchase is required");if(await h.onComplete?.(n),!b||!h.check)return;let t=N.parse(await h.check());if(t.internal_feature_id!==b.internal_feature_id||t.quantity!==b.quantity)throw new w("INVALID_RESPONSE","The access requirement changed");t.allowed&&await h.onAccessGranted?.(t)}async function ie(b,n){let h=n.check?N.parse(await n.check()):null;if(h?.allowed)return await n.onAccessGranted?.(h),{check:h,host:null};let t=await n.start(),y=t.view??await t.refresh();if(!y)throw new w("INVALID_RESPONSE","Paywall presentation is missing");let{mountScreenPreview:J}=await import("./screen-renderer-5FPYVSPW.js"),a=b.ownerDocument,S=new AbortController,v=a.createElement("section"),Q=a.createElement("div"),O=a.createElement("div"),P=a.createElement("p"),c=a.createElement("button"),L=a.createElement("button"),u=a.createElement("dialog"),_=a.activeElement,p=y.document.screen.strings.defaultLocale.startsWith("zh");v.dataset.indianaPaywall="",v.setAttribute("aria-label",y.document.name),v.style.cssText="width:100%;box-sizing:border-box;background:#fff;color:#172033;font:14px/1.5 system-ui,sans-serif",O.style.cssText="display:flex;gap:12px;padding:12px 20px;align-items:center;flex-wrap:wrap",P.setAttribute("role","status"),L.textContent=p?"\u5173\u95ED":"Close",c.textContent=p?"\u91CD\u8BD5":"Retry",c.hidden=!0,O.append(P,c,L),v.append(Q,O);let D=y.document.presentation,A,d=!1,T=!1,f=null,G=!1,m=()=>!G&&n.canInteract?.()!==!1,M=!1,r=null,I=null,U=e=>{P.textContent=e instanceof Error?e.message:p?"\u8BF7\u6C42\u5931\u8D25":"Request failed",z(n.onError,e),c.hidden=r===null};async function k(e){if(!(T||d||!m())){T=!0,c.hidden=!0,P.textContent="";try{await e()}catch(s){d||U(s)}finally{T=!1}}}async function K(e){await W(h,e,n)}async function E(e){if(d)return;if(!m()){r=async()=>E(await t.read()),c.hidden=!1;return}if(P.textContent=e.status,e.status==="complete"){r=null,await K(e);return}if(e.status!=="pending"){if(t.canReselect===!1){P.textContent=p?"\u6B63\u5728\u6838\u5BF9\u539F\u8D2D\u4E70\u7ED3\u679C":"Checking the original purchase result",c.textContent=p?"\u67E5\u8BE2\u7ED3\u679C":"Check result",r=async()=>E(await t.read()),c.hidden=!1;return}c.textContent=p?"\u91CD\u8BD5":"Retry",r=null,f=null;return}let s=Date.now()+6e5,l=2e3;for(;!d&&Date.now()<s;){if(await new Promise(C=>{let R=()=>{clearTimeout(x),C()},x=setTimeout(()=>{S.signal.removeEventListener("abort",R),C()},l);S.signal.addEventListener("abort",R,{once:!0})}),d)return;if(!m()){r=async()=>E(await t.read()),c.hidden=!1;return}let i=await t.read();if(i.status!=="pending"){await E(i);return}l=Math.min(l*1.5,3e4)}r=async()=>E(await t.read()),c.hidden=!1}async function V(){I?.remove(),I=null,r=V;let e=await t.confirm();if(!m()){r=V,c.hidden=!1;return}if(e.status==="pending"){if(e.checkoutUrl)n.onCheckoutUrl?await n.onCheckoutUrl(e.checkoutUrl):a.defaultView?.location.assign(e.checkoutUrl);else if(e.execution||e.nativePurchase){if(!n.onPurchase)throw new w("PURCHASE_HANDLER_REQUIRED","Provide the merchant or native purchase handler");await n.onPurchase({operation:e,signal:S.signal})}}r=async()=>E(await t.read()),await E(e)}function X(e){I?.remove();let s=a.createElement("div"),l=a.createElement("button"),i=a.createElement("button"),C=a.createElement("p");C.textContent=e.lines.map(o=>o.productName).join(", ")+" \xB7 "+$(e.charge?.totalMinor??e.catalogAmountMinor-(e.discount?.amountMinor??0),e.currency),l.textContent=p?"\u786E\u8BA4\u8D2D\u4E70":"Confirm purchase",i.textContent=p?"\u53D6\u6D88":"Cancel",l.onclick=()=>{k(V)};let R=async()=>{let o=await t.cancel();d||(s.remove(),I=null,await E(o))};i.onclick=()=>{r=R,k(R)};let x=a.createElement("div");for(let o of e.lines){let B=a.createElement("p");if(B.textContent=`${o.productName} \xB7 ${$(o.catalogAmountMinor,e.currency)}${j(o.interval,p?"zh-CN":"en",o.intervalCount??1)}`,x.append(B),o.trial){let F=a.createElement("p");F.textContent=p?`\u8BD5\u7528 ${o.trial.days} \u5929\uFF1B${o.trial.cardRequired?"\u9700\u8981\u63D0\u4F9B\u4ED8\u6B3E\u65B9\u5F0F":"\u65E0\u9700\u63D0\u4F9B\u4ED8\u6B3E\u65B9\u5F0F"}`:`Trial days: ${o.trial.days}; ${o.trial.cardRequired?"a payment method is required":"no payment method is required"}`,x.append(F)}}if(!e.charge){let o=a.createElement("p");o.textContent=p?"\u76EE\u5F55\u4EF7\u683C\uFF1B\u6700\u7EC8\u91D1\u989D\u4EE5\u7ED3\u8D26\u65F6\u7A0E\u8D39\u548C\u8BD5\u7528\u89C4\u5219\u4E3A\u51C6\u3002":"Catalog price; the final charge depends on checkout taxes and trial terms.",x.append(o)}s.append(C,x,l,i),O.prepend(s),I=s,r=null}async function H(){if(!f)return;if(r=H,!M){let s=t.view,l=s?.document.buttons[f.actionId],i=s&&l?.type==="checkout"?q(l.product,f.selection,s.capabilities):null;if(!i)throw new w("PRODUCT_UNAVAILABLE","Choose an available Product in this purchase area");let C=await n.resolveOfferId?.({actionId:f.actionId,productVersionId:i});if(d)return;C!==void 0&&(f.offerId=C),M=!0}if(!m()){c.hidden=!1;return}let e=await t.preview(f);d||X(e)}function g(e="destroy"){d||(d=!0,S.abort(),A?.destroy(),t.destroy(),u.open&&u.close(),u.remove(),v.remove(),_ instanceof HTMLElement&&_.isConnected&&_.focus(),e==="dismiss"&&z(n.onDismiss))}L.onclick=()=>{m()&&g("dismiss")},u.addEventListener("cancel",e=>{e.preventDefault(),m()&&g("dismiss")}),c.onclick=()=>{r&&k(r)};try{if(D.type==="inline")b.append(v);else{let e={sm:420,md:640,lg:900};u.style.cssText=`padding:0;border:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;width:${"size"in D?e[D.size]+"px":"100vw"}`,u.setAttribute("aria-label",y.document.name),u.append(v),b.append(u),m()&&u.showModal()}A=J(Q,{mode:"live",rendererUrl:t.webViewUrl,title:y.document.name,onAction(e,s={}){if(!m())return;let l=t.view,i=l?.document.buttons[e];if(i){if(i.type==="close"){k(async()=>{await n.onAction?.(e),g(n.onAction?"action":"dismiss")});return}if(i.type==="action"){r=async()=>{if(i.action.type==="event"){if(!n.onEvent)throw new w("EVENT_HANDLER_REQUIRED","Provide the event handler");await n.onEvent(i.action.event)}else n.onOpenUrl?await n.onOpenUrl(i.action.url):a.defaultView?.location.assign(i.action.url);await n.onAction?.(e),r=null},k(r);return}if((t.quote||f)&&t.canReselect===!1){r=t.quote?async()=>E(await t.read()):H,k(r);return}if(!l||!q(i.product,s,l.capabilities)){U(new w("PRODUCT_UNAVAILABLE","Choose an available Product in this purchase area"));return}if(f&&f.actionId!==e){U(new w("COMMAND_PENDING","Finish the current purchase"));return}f||(f={requestId:crypto.randomUUID(),actionId:e,selection:s},M=!1),k(H)}},onEscape:()=>{m()&&g("dismiss")},onError:e=>U(new Error(e))}),A.update(y.document.screen,y.document.screen.strings.defaultLocale,{capabilities:y.capabilities,serverInput:{bindings:[],answers:{}}}),await A.ready}catch(e){throw g(),e}return{check:h,host:{setSuspended(e){G=e,v.hidden=e,e&&u.open?u.close():!e&&!d&&D.type!=="inline"&&!u.open&&u.showModal()},destroy:g,refresh:async()=>{if(!m()){if(t.view)return t.view;throw new w("PRECONDITION_FAILED","Paywall presentation is suspended")}let e=await t.refresh();return d||A?.updateCapabilities(e.capabilities),e}}}}export{ie as showPaywall};
package/dist/popup.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as ScreenAction, b as ScreenNode, c as ScreenDocument } from './screen-i6eHL11m.js';
1
+ import { a as ScreenAction, b as ScreenNode, c as ScreenDocument } from './screen-BpAejkn0.js';
2
2
  import { O as Offer, c as OfferUnavailableReason, d as CustomerPageData, a as SurfaceData, e as ScreenParameters, f as ScreenRendererInput, S as ScreenAnswers, b as CustomerDataIntent } from './customer-page-WUQVK_tp.js';
3
3
  import { WindowLike } from 'dompurify';
4
4
  import 'zod';
package/dist/popup.js CHANGED
@@ -1 +1 @@
1
- import{a as o,b as r,c as e,d as f,e as m,f as p,g as t,h as x}from"./chunk-X7JJAEQQ.js";import"./chunk-DSPLGTQI.js";import"./chunk-6HG7U6AU.js";import"./chunk-3BQFJANQ.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";export{p as formatCustomerDecimal,r as hostedRendererScript,o as hostedRendererShell,f as inspectCustomHtml,x as mountScreenPreview,m as prepareScreen,e as sanitizeCustomHtml,t as showPopup};
1
+ import{a as o,b as r,c as e,d as f,e as m,f as p,g as t,h as x}from"./chunk-ANOOBDW5.js";import"./chunk-DSPLGTQI.js";import"./chunk-SOQO2RDZ.js";import"./chunk-LMR2TM3X.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";export{p as formatCustomerDecimal,r as hostedRendererScript,o as hostedRendererShell,f as inspectCustomHtml,x as mountScreenPreview,m as prepareScreen,e as sanitizeCustomHtml,t as showPopup};
@@ -1,6 +1,9 @@
1
- import { S as Scope } from './errors-DrdTlPwf.js';
2
- export { I as IndianaError } from './errors-DrdTlPwf.js';
1
+ import { S as Scope, a as PushHost, P as PushAddressObservation } from './errors-C8lRYZ0n.js';
2
+ export { I as IndianaError, b as PushJournal } from './errors-C8lRYZ0n.js';
3
3
  import { z } from 'zod';
4
+ import { a as apiOperations } from './api-B3FIE41b.js';
5
+ import './screen-BpAejkn0.js';
6
+ import 'zod/v4';
4
7
 
5
8
  declare const usageCommandSchema: z.ZodUnion<readonly [z.ZodObject<{
6
9
  eventName: z.ZodString;
@@ -157,11 +160,101 @@ interface IndianaReactNativeOptions {
157
160
  fetch?: typeof globalThis.fetch;
158
161
  timeoutMs?: number;
159
162
  scope: Scope;
163
+ push?: PushHost;
160
164
  /** Authenticate the app user on your backend and select its Customer there. No Indiana credential is passed to this callback. */
161
165
  usageReporter?: (command: UsageCommand) => Promise<z.output<typeof usageResponseSchema>>;
162
166
  }
163
167
  /** React Native core APIs. No DOM, WebView, store SDK or server credential is required. */
164
168
  declare function createIndianaReactNative(options: IndianaReactNativeOptions): {
169
+ messaging: {
170
+ preference(channel: "email" | "sms" | "voice" | "push"): Promise<{
171
+ channel: "email" | "sms" | "voice" | "push";
172
+ state: "unknown" | "denied" | "allowed";
173
+ revision: number;
174
+ updatedAt: string | null;
175
+ }>;
176
+ setPreference(input: z.input<typeof apiOperations.setMessagingPreference.request>): Promise<{
177
+ channel: "email" | "sms" | "voice" | "push";
178
+ state: "unknown" | "denied" | "allowed";
179
+ revision: number;
180
+ updatedAt: string | null;
181
+ }>;
182
+ };
183
+ push: {
184
+ sync: () => Promise<{
185
+ installationId: string;
186
+ bound: boolean;
187
+ identitySeq: number;
188
+ bindingGeneration: number;
189
+ addressSeq: number;
190
+ addressRevision: number;
191
+ connectionId: string | null;
192
+ addressStatus: "active" | "invalid" | null;
193
+ permission: "unknown" | "denied" | "provisional" | "granted";
194
+ } | null>;
195
+ read: () => Promise<{
196
+ installationId: string;
197
+ bound: boolean;
198
+ identitySeq: number;
199
+ bindingGeneration: number;
200
+ addressSeq: number;
201
+ addressRevision: number;
202
+ connectionId: string | null;
203
+ addressStatus: "active" | "invalid" | null;
204
+ permission: "unknown" | "denied" | "provisional" | "granted";
205
+ }>;
206
+ recover: () => Promise<{
207
+ installationId: string;
208
+ bound: boolean;
209
+ identitySeq: number;
210
+ bindingGeneration: number;
211
+ addressSeq: number;
212
+ addressRevision: number;
213
+ connectionId: string | null;
214
+ addressStatus: "active" | "invalid" | null;
215
+ permission: "unknown" | "denied" | "provisional" | "granted";
216
+ } | null>;
217
+ tokenObserver: () => (observation: PushAddressObservation) => Promise<{
218
+ installationId: string;
219
+ bound: boolean;
220
+ identitySeq: number;
221
+ bindingGeneration: number;
222
+ addressSeq: number;
223
+ addressRevision: number;
224
+ connectionId: string | null;
225
+ addressStatus: "active" | "invalid" | null;
226
+ permission: "unknown" | "denied" | "provisional" | "granted";
227
+ } | null>;
228
+ recoveryObserver: () => {
229
+ request(observation: PushAddressObservation): Promise<{
230
+ requested: true;
231
+ expiresAt: string;
232
+ }>;
233
+ confirm(challenge: string, observation: PushAddressObservation): Promise<{
234
+ installationId: string;
235
+ bound: boolean;
236
+ identitySeq: number;
237
+ bindingGeneration: number;
238
+ addressSeq: number;
239
+ addressRevision: number;
240
+ connectionId: string | null;
241
+ addressStatus: "active" | "invalid" | null;
242
+ permission: "unknown" | "denied" | "provisional" | "granted";
243
+ }>;
244
+ };
245
+ preference(): Promise<{
246
+ channel: "email" | "sms" | "voice" | "push";
247
+ state: "unknown" | "denied" | "allowed";
248
+ revision: number;
249
+ updatedAt: string | null;
250
+ }>;
251
+ setPreference(input: Omit<z.input<typeof apiOperations.setMessagingPreference.request>, "channel">): Promise<{
252
+ channel: "email" | "sms" | "voice" | "push";
253
+ state: "unknown" | "denied" | "allowed";
254
+ revision: number;
255
+ updatedAt: string | null;
256
+ }>;
257
+ };
165
258
  identify(customerToken: string): void;
166
259
  reset(): void;
167
260
  readHoldings(): Promise<{
@@ -183,7 +276,7 @@ declare function createIndianaReactNative(options: IndianaReactNativeOptions): {
183
276
  name: string;
184
277
  groupId: string | null;
185
278
  membershipType: "main" | "addon";
186
- status: "unknown" | "pending" | "active" | "expired" | "scheduled" | "trial" | "past_due" | "paused" | "ended" | "trialing";
279
+ status: "unknown" | "active" | "pending" | "expired" | "scheduled" | "trial" | "past_due" | "paused" | "ended" | "trialing";
187
280
  cancelAtPeriodEnd: boolean;
188
281
  accessEnabled: boolean;
189
282
  renewalChange: {
@@ -324,4 +417,4 @@ declare function createIndianaReactNative(options: IndianaReactNativeOptions): {
324
417
  }>;
325
418
  };
326
419
 
327
- export { type IndianaReactNativeOptions, type UsageCommand, createIndianaReactNative };
420
+ export { type IndianaReactNativeOptions, PushHost, type UsageCommand, createIndianaReactNative };
@@ -1 +1 @@
1
- import{a as X}from"./chunk-KSNOXNTC.js";import{a as wA}from"./chunk-AEUFCOFG.js";import{ei as $}from"./chunk-F767CM3T.js";import{a as R}from"./chunk-6HG7U6AU.js";import"./chunk-3BQFJANQ.js";import{b as mA}from"./chunk-AE4CUTUE.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";function P(A){return typeof A=="string"?A:String(A)}var MA=/[\ud800-\udbff](?![\udc00-\udfff])|(^|[^\ud800-\udbff])[\udc00-\udfff]/g;function jA(A){return A.replace(MA,"$1\uFFFD")}function eA(A,e){if(typeof A!="object"||A==null){let t="";throw t+="The provided value is not an object",new TypeError(t)}return A}function qA(A){if(A!=null&&(typeof A=="object"||typeof A=="function")){let e=A[Symbol.iterator];if(e==null)return;if(typeof e!="function")throw new TypeError("The provided value is not iterable");let t=e.call(A);if(!t||typeof t!="object")throw new TypeError("Result of the Symbol.iterator method is not an object");return t}}function PA(A){let e;if(Array.isArray(A)){let t=A.map(P);if(t.length===2)return t}else if((e=qA(A))!=null){let t=eA(e.next()),r=eA(e.next());if(!t.done&&!r.done)return[P(t.value),P(r.value)]}throw new TypeError("Each query pair must be an iterable [name, value] tuple")}var yA="0123456789ABCDEF",QA=/(?:%[0-9A-Fa-f]{2})+/g;function B(A){return`%${yA[A>>4&15]}${yA[15&A]}`}function vA(A,e,t=!1){return A>=55296&&A<=57343&&(A=65533),A<=127?t&&A===32?"+":e(A)?B(A):String.fromCharCode(A):A<=2047?B(192|A>>6)+B(128|63&A):A<=65535?B(224|A>>12)+B(128|A>>6&63)+B(128|63&A):B(240|A>>18)+B(128|A>>12&63)+B(128|A>>6&63)+B(128|63&A)}function tA(A){return A>=48&&A<=57?A-48:A>=65&&A<=70?A-65+10:A>=97&&A<=102?A-97+10:-1}function rA(A,e=!1){let t=0;for(;t<A.length;t++){let r=A.charCodeAt(t);if(r===37||e&&r===43)break}return t===A.length?A:(e?A.replace(/\+/g," "):A).replace(QA,r=>{try{return decodeURIComponent(r)}catch{return"\uFFFD".repeat(r.length/3)}})}function M(A){return A<=31||A>126}function FA(A){switch(A){case 32:case 34:case 60:case 62:case 96:return!0;default:return M(A)}}function cA(A){switch(A){case 32:case 34:case 35:case 60:case 62:return!0;default:return M(A)}}function _A(A){return cA(A)||A===39}function nA(A){switch(A){case 63:case 94:case 96:case 123:case 125:return!0;default:return cA(A)}}function G(A){switch(A){case 47:case 58:case 59:case 61:case 64:case 91:case 92:case 93:case 124:return!0;default:return nA(A)}}function DA(A){switch(A){case 33:case 39:case 40:case 41:case 126:return!0;default:return(function(t){switch(t){case 36:case 37:case 38:case 43:case 44:return!0;default:return G(t)}})(A)}}function BA(A,e){return vA(A=A||0,e)}function k(A,e,t=!1){let r=0;for(;r<A.length;r++){let u=A.charCodeAt(r);if(u>=128||t&&u===32||e(u))break}if(r===A.length)return A;let n=A.slice(0,r);for(;r<A.length;r++){let u=A.charCodeAt(r),o=u;if(u>=55296&&u<=56319&&r+1<A.length){let f=A.charCodeAt(r+1);f>=56320&&f<=57343&&(o=(u-55296<<10)+f-56320+65536,r++)}n+=vA(o,e,t)}return n}function fA(A){let e=[],t=0,r=0;for(;r<=A.length;){if(r=A.indexOf("&",t),r<0&&(r=A.length),r!==t){let n=A.slice(t,r),u=n.indexOf("=");u<0&&(u=n.length),e.push([rA(n.slice(0,u),!0),rA(n.slice(u+1),!0)])}if(t=r+1,r===A.length)break}return e}function sA(A){let e="";for(let t=0;t<A.length;t++){let r=k(A[t][0],DA,!0),n=k(A[t][1],DA,!0);e+=t!==0?`&${r}=${n}`:`${r}=${n}`}return e}var YA=[2191,2191,3164,3164,3292,3292,6863,6877,6880,6891,8385,8385,11158,11158,42958,42959,42962,42962,42964,42964,42993,42993,64451,64466,64912,64913,64968,64974,67904,67929,69317,69319,69328,69336,69370,69371,72544,72551,73136,73179,73184,73193,93856,93880,93883,93907,94194,94198,100344,100351,101641,101662,101760,101874,118010,118012,118458,118480,118496,118512,124608,124638,124640,124661,124670,124671,128728,128728,128887,128890,129232,129240,129620,129623,129674,129674,129678,129678,129736,129736,129741,129741,129770,129770,129775,129775,130042,130042,177978,177983,183970,183981,205744,210041],GA=[7296,7297,7298,7299,7300,7301,7302,7303,7304,42958,42962,42964,42993],JA=["\u0432","\u0434","\u043E","\u0441","\u0442","\u0442","\u044A","\u0463","\uA64B","\uA7CF","\uA7D3","\uA7D5","s"],WA=[2381,2381,2509,2509,2637,2637,2765,2765,2893,2893,3021,3021,3149,3149,3277,3277,3387,3388,3405,3405,3530,3530,3642,3642,3770,3770,3972,3972,4153,4154,5908,5909,5940,5940,6098,6098,6752,6752,6980,6980,7082,7083,7154,7155,11647,11647,43014,43014,43052,43052,43204,43204,43347,43347,43456,43456,43766,43766,44013,44013,68159,68159,69702,69702,69744,69744,69759,69759,69817,69817,69939,69940,70080,70080,70197,70197,70378,70378,70477,70477,70606,70608,70722,70722,70850,70850,71103,71103,71231,71231,71350,71350,71467,71467,71737,71737,71997,71998,72160,72160,72244,72244,72263,72263,72345,72345,72767,72767,73028,73029,73111,73111,73537,73538,90415,90415];function VA(A){for(let e=0;e<A.length;e++){let t=A.codePointAt(e);if(t>65535&&e++,t<=32||t===37||t===127||t>=55296&&t<=57343||t>=128&&t<=159||t>=64976&&t<=65007||!(65534&~t)||t===65533)return!0}return!1}var[XA,KA,ZA,CA]=[[[],"0,6,7,8,m,w,10,1b,1d,1f,72,73,7k,8k,dt,2rk","AAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAA/AAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAADAAABwfwAAAAAAAMADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhAAAAQAAAAAAAAQCAAABAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgACAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAP///////////////wAAAAAAAAAAAAAAAAAAAAA="],[[],"6,7,8,o,4o,7e,7f,7h,7i,7j,dl","AAAAAEF9+P/+BwAAAMAA//8AAPz/////BlADAAAAAJwAAPz///8AAADA//H/5+X8AAAAAAAAAAAA/P///wcAAAAAAAAAAAAAPv0vAD0BAABA/gAA/5/5/f8BAAAAAAAAgAAAAP//////////////AYD/////BQAAAAAAAAAAAAAAAAAAAAAAAP///////wcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8g+N8B+AAAAAAAAAAAAAAAAAAAAAAAAP//AwAAYAAAAAAAAAAAAAD/////CwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAA//8fAB4AAAD//wMAAAAAAH3/HgwAAAAAAAD//////////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="],[[],"6,7,8,o,4o,7e,7f,7h,7i,7j,dl","AAAAAP3////+BwAAAMDu//////////////8vAADAAJwAAP3///8AAADg////////AAAAAAAAAAAA/P///wcAAAAAAAAAAAAA////Ab0H//9H/gAA/9////8BAAAAAAAAgAAAAP//////////////AYD/////BQAAAAAAAAAAAAAAAAAAAAAAAP///////wcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL/G//8T+AAAAAAAAAAAAAAAAAAAAAAAAP//AwAAfgAAAAAAAAAAAAD+////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANwAAAAAAAAAAAAAAAAA//8fAB4AAAD//wMAAAAAAH3/Hg4AAAAAAAD//////////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="],[[],"0,3,4,5,6,7,8,9,a,b,c,d,e,f,g,j,n,o,p,q,r,s,t,w,18,19,1c,4m,4o,4p,4q,4r,6z,72,73,75,76,77,7e,7h,7i,7j,7k,7l,7m,7n,7o,7p,7q,7r,7s,7t,7u,7v,7w,7x,7y,7z,8k,9t,a2,a3,a7,cc,cv,cx,cy,d6,dc,dd,de,dg,dh,di,dk,dl,2rk,2rl","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AAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAwAAAAAAwAcFAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//4H/PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD/4wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAAAAB/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAgAcAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAPAAAAAAAAAAAAAAD//////z///38AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAD+P/nDwAAADwAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////9/+P//////HyAAEAAA+P7/AAAAAAAAAAAAAH////nbBwAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASMAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAADwDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA////////////////AAAAAAAAAAAAAAAAAAAAAP///////////////////////////////////////wAA"]].map(function([e,t,r]){return[e,t.split(",").map(n=>parseInt(n,36)),Uint8Array.from(atob(r),n=>n.charCodeAt(0))]});function Ae(A,e){return e===931||e===1010||e===120531||e===120589||e===120647||e===120705||e===120763?"\u03C3":e>=5112&&e<=5117?String.fromCodePoint(e-8):e>=43888&&e<=43967?String.fromCodePoint(e-38864):e>=93856&&e<=93880?String.fromCodePoint(e+27):e===837||e===890||e>=8064&&e<=8111||e>=8114&&e<=8188?A.normalize("NFD").replace(/\u0345/g,"\u03B9").normalize("NFC").toLowerCase():""}function kA(A,e){for(let t=0;t<A.length;t+=2)if(e>=A[t]&&e<=A[t+1])return!0;return!1}function x(A,e){let[t,r,n]=A,u=e>>8;for(let h=0;h<t.length;h+=2)if(u>=t[h]&&u<=t[h+1])return!0;let o=r.indexOf(u);if(o<0)return!1;let f=255&e;return!!(n[32*o+(f>>3)]&1<<(7&f))}function ee(A){let e=Array.from(A,t=>t.codePointAt(0));for(let t=0;t<e.length;t++){let r=e[t];if(r!==8204&&r!==8205||t>0&&kA(WA,e[t-1]))continue;if(r===8205)return!1;let n=t-1;for(;n>=0&&x(CA,e[n]);)n--;let u=t+1;for(;u<e.length&&x(CA,e[u]);)u++;if(!(n>=0&&u<e.length&&x(KA,e[n])&&x(ZA,e[u])))return!1}return!0}var te=/(?![\p{Mark}\p{Decimal_Number}])[\p{Script=Arabic}\p{Script=Hebrew}]/u,re=/\p{Script=Latin}/u;function ne(A){return!te.test(A)||!re.test(A)}var z=36,F=1,iA=26,se=38,ie=700,le=72,oe=128,ue=2147483647;function bA(A){return String.fromCharCode(A+22+75*+(A<26))}function ce(A,e,t){let r=0;for(A=t?Math.floor(A/ie):A>>1,A+=Math.floor(A/e);A>(z-F)*iA>>1;r+=z)A=Math.floor(A/(z-F));return Math.floor(r+(z-F+1)*A/(A+se))}function fe(A){let e=Array.from(A,h=>h.codePointAt(0)),t="",r=0;for(let h=0;h<e.length;h++){let p=e[h];p<128&&(t+=String.fromCharCode(p),r++)}let n=r;n&&(t+="-");let u=oe,o=0,f=le;for(;r<e.length;){let h=ue;for(let p=0;p<e.length;p++){let d=e[p];d>=u&&d<h&&(h=d)}o+=(h-u)*(r+1),u=h;for(let p=0;p<e.length;p++){let d=e[p];if(d<u&&o++,d===u){let D=o;for(let S=z;;S+=z){let E=S<=f?F:S>=f+iA?iA:S-f;if(D<E)break;t+=bA(E+(D-E)%(z-E)),D=Math.floor((D-E)/(z-E))}t+=bA(D),f=ce(o,r+1,r===n),o=0,r++}}o++,u++}return t}function K(A){let e=10;if(A.length>=2&&A[0]==="0"&&(A[1]==="x"||A[1]==="X"))A=A.slice(2),e=16;else if(A.length>=2&&A[0]==="0")A=A.slice(1),e=8;else if(A==="")return-1;let t=0;for(let r=0;r<A.length;r++){let n=tA(A.charCodeAt(r));if(n>=e||n<0)return-1;t=t*e+n}return t}function SA(A){switch(A){case".":case"%2e":case"%2E":return!0;default:return!1}}function UA(A,e){return(A>=65&&A<=90||A>=97&&A<=122)&&(e===58||e===124)}function RA(A){return A.length===2&&UA(A.codePointAt(0),A.codePointAt(1))}function EA(A){return A.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|<|>|\?|@|\[|\\|\]|\^|\|/u)!==-1}function C(A){switch(A){case"ftp":case"http":case"https":case"ws":case"wss":case"file":return!0;default:return!1}}function zA(A){switch(A){case"ftp":return 21;case"http":case"ws":return 80;case"https":case"wss":return 443;default:return null}}function lA(A,e){if(A[0]==="[")return A[A.length-1]==="]"?(function(r){let n=[0,0,0,0,0,0,0,0],u=null,o=0,f=0,h=Array.from(r,p=>p.codePointAt(0));if(h[f]===58){if(h[f+1]!==58)return null;f+=2,o++,u=o}for(;f<h.length;){if(o===8)return null;if(h[f]===58){if(u!==null)return null;f++,o++,u=o;continue}let p=0,d=0,D=0;for(;D<4&&(p=tA(h[f]))>=0;)d=(d<<4)+p,f++,D++;if(h[f]===46){if(D===0||o>6)return null;f-=D;let S=0;for(;h[f]!==void 0;){let E=0;if(S>0)if(h[f]===46&&S<4)f++;else return null;if(h[f]==null||h[f]<48||h[f]>57)return null;for(;h[f]>=48&&h[f]<=57;){if(E=10*E+tA(h[f]),E>255)return null;f++}n[o]=256*n[o]+E,S++,S%2==0&&o++}if(S!==4)return null;break}else if(h[f]===58){if(h[++f]===void 0)return null}else if(h[f]!==void 0)return null;n[o]=d,o++}if(u!==null){let p=o-u;for(o=7;o!==0&&p>0;){let d=n[u+p-1];n[u+p-1]=n[o],n[o]=d,o--,p--}}else if(u===null&&o!==8)return null;return n})(A.substring(1,A.length-1)):null;if(e)return(function(r){return EA(r)?null:k(r,M)})(A);{let t=(function(n){let u=!1,o=!1;for(let h=0;h<n.length;h++){let p=n.charCodeAt(h);if(p<=32||p===37||p===127)return null;if(p>=128){u=!0;break}p>=65&&p<=90&&(o=!0)}if(!u)return n!==""?o?n.toLowerCase():n:null;if((function(p){for(let d of p){let D=d.codePointAt(0);if(/[\p{Cn}\p{Co}\p{Cs}\p{Noncharacter_Code_Point}]/u.test(d)&&!kA(YA,D)||x(XA,D))return!0}return!1})(n))return null;let f=(n=(function(p){let d="";for(let D of p){let S=D.codePointAt(0);if(S!==8204&&S!==8205&&/\p{Default_Ignorable_Code_Point}/u.test(D))continue;let E=Ae(D,S);if(E){d+=E;continue}let dA=GA.indexOf(S);d+=dA<0?D:JA[dA]}return d})(n).normalize("NFKC").replace(/[\u3002\uff0e\uff61]/g,".").toLowerCase()).split(".");for(let h=0;h<f.length;h++){let p=f[h];if(p==="")continue;let d=/[^\0-\x7f]/.test(p);if(VA(p)||d&&(/^\p{Mark}/u.test(p)||!ee(p)||!ne(p)||p.startsWith("xn--")))return null;d&&(f[h]=`xn--${fe(p)}`)}return(n=f.join("."))!==""?n:null})(A.indexOf("%")===-1?A:rA(A));return t===null||EA(t)?null:(function(n){let u=n.length,o=n.lastIndexOf(".",u-2)+1;if(n.charCodeAt(u-1)===46&&u--,u<=o)return!1;if(K(n.slice(o,u))>=0)return!0;for(;o<u;o++){let f=n.charCodeAt(o);if(f<48||f>57)return!1}return!0})(t)?(function(n){let u=n.split("."),o=u.length;if(u[o-1]||o--,o>4)return null;let f=0;for(let p=0;p<o-1;p++){let d=K(u[p]);if(d<0||d>255)return null;f+=d*(1<<8*(3-p))}let h=K(u[o-1]);return h<0||h>=256**(5-o)?null:(f+=h,f)})(t):t}}function oA(A){return typeof A=="number"?(function(t){let n="";return n+=`${(t>>>24&255).toString(10)}.`,n+=`${(t>>>16&255).toString(10)}.`,n+=`${(t>>>8&255).toString(10)}.`,n+=(t&255).toString(10),n})(A):Array.isArray(A)?`[${(function(t){let r=(function(f){let h=-1,p=-1,d=1,D=0;for(let S=0;S<f.length;++S)f[S]!==0?(D>d&&(h=p,d=D),p=-1,D=0):(p===-1&&(p=S),++D);return D>d?p:h})(t),n="",u=!1;for(let o=0;o<=7;++o)if(!(u&&t[o]===0)){if(u&&(u=!1),r===o){n+=o===0?"::":":",u=!0;continue}n+=t[o].toString(16),o!==7&&(n+=":")}return n})(A)}]`:A}function HA(A){A.path.length>0&&(A.path.length!==1||A.scheme!=="file"||!(function(t){return/^[A-Za-z]:$/u.test(t)})(A.path[0]))&&A.path.pop()}function LA(A){return A.username!==""||A.password!==""}function Z(A){return A.host===null||A.host===""||A.scheme==="file"}var s=0,i="",g="",m=null,l,_=!1,Y=!1,L=!1,b;function I(A,e,t,r){e||(A=(function(o){let f=0,h=o.length;for(;f<h&&!(o.charCodeAt(f)>32);++f);for(;h>f&&!(o.charCodeAt(h-1)>32);--h);return o.substring(f,h)})(A)),A=(function(o){let f=0;for(;f<o.length;f++){let p=o.charCodeAt(f);if(p===9||p===10||p===13)break}if(f===o.length)return o;let h=o.slice(0,f);for(;f<o.length;f++){let p=o.charCodeAt(f);p!==9&&p!==10&&p!==13&&(h+=o[f])}return h})(A),s=0,i=A,g="",m=t||null,l=e||{scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,opaquePath:!1},_=!1,Y=!1,L=!1,b=r||0;let n=ae;switch(r){case 3:case 4:n=J;break;case 5:n=hA;break;case 6:n=N;break;case 7:n=H;break;case 8:n=U}return n(c(A,s))!==1?l:null}function a(A,e){return s+=s===A?q(e):1,s<=i.length}function c(A,e){return e<A.length?A.codePointAt(e):void 0}function q(A){return A!=null&&A>65535?2:1}function NA(A){return A==null?"":A<=65535?String.fromCharCode(A):String.fromCodePoint(A)}var ae=A=>{let e=s;if(A!=null&&(A>=65&&A<=90||A>=97&&A<=122)){let t=s+1;for(A=i.charCodeAt(t);A===43||A===45||A===46||A>=65&&A<=90||A>=97&&A<=122||A>=48&&A<=57;)t++,A=i.charCodeAt(t);return g=i.slice(s,t).toLowerCase(),s=t,he(t<i.length?A:void 0)}else return b?1:(--s,a(e,A)?$A(c(i,s)):0)},he=A=>{let e=s;if(A===58){if(b){if(C(l.scheme)!==C(g))return 0;if((LA(l)||l.port!==null)&&g==="file")return 0;if(l.scheme==="file"&&l.host==="")return 0}return l.scheme=g,b?(l.port===zA(l.scheme)&&(l.port=null),0):(g="",l.scheme==="file"?a(e,A)?pA(c(i,s)):0:C(l.scheme)&&m!==null&&m.scheme===l.scheme?a(e,A)?pe(c(i,s)):0:C(l.scheme)?a(e,A)?de(c(i,s)):0:c(i,s+1)===47?(s++,a(e,A)?ge(c(i,s)):0):(l.path=[""],l.opaquePath=!0,a(e,A)?xA(c(i,s)):0))}else return b?1:(g="",s=-1,a(e,A)?$A(c(i,s)):0)},$A=A=>{let e=s;return m===null||m.opaquePath&&A!==35?1:m.opaquePath&&A===35?(l.scheme=m.scheme,l.path=m.path.slice(),l.opaquePath=m.opaquePath,l.query=m.query,l.fragment="",a(e,A)?U(c(i,s)):0):m.scheme==="file"?(s--,a(e,A)?pA(c(i,s)):0):(s--,a(e,A)?aA(c(i,s)):0)},pe=A=>{let e=s;return A===47&&c(i,s+1)===47?(++s,a(e,A)?V(c(i,s)):0):(s--,a(e,A)?aA(c(i,s)):0)},ge=A=>{let e=s;return A===47?a(e,A)?T(c(i,s)):0:(s--,a(e,A)?v(c(i,s)):0)},aA=A=>{let e=s;return l.scheme=m.scheme,A===47||C(l.scheme)&&A===92?a(e,A)?IA(c(i,s)):0:(l.username=m.username,l.password=m.password,l.host=m.host,l.port=m.port,l.path=m.path.slice(),l.query=m.query,A===63?(l.query="",a(e,A)?H(c(i,s)):0):A===35?(l.fragment="",a(e,A)?U(c(i,s)):0):A!=null?(l.query=null,l.path.pop(),s--,a(e,A)?v(c(i,s)):0):a(e,A)?aA(c(i,s)):0)},IA=A=>{let e=s;return C(l.scheme)&&(A===47||A===92)?a(e,A)?V(c(i,s)):0:A===47?a(e,A)?T(c(i,s)):0:(l.username=m.username,l.password=m.password,l.host=m.host,l.port=m.port,s--,a(e,A)?v(c(i,s)):0)},de=A=>{let e=s;return A===47&&c(i,s+1)===47?s++:s--,a(e,A)?V(c(i,s)):0},V=A=>{let e=s;return A!==47&&A!==92?(s--,a(e,A)?T(c(i,s)):0):a(e,A)?V(c(i,s)):0},T=A=>{let e=s;if(A!=null&&A!==64&&A!==35&&A!==47&&A!==63&&(A!==92||!C(l.scheme))){let t=s+q(A);for(;t<i.length;){let r=c(i,t);if(r==null||r===64||r===35||r===47||r===63||r===92&&C(l.scheme))break;t+=q(r)}return g+=i.slice(s,t),s=t-1,a(e,A)?T(c(i,s)):0}if(A===64){_&&(g=`%40${g}`),_=!0;for(let t=0;t<g.length;t++){let r=g.codePointAt(t);if(r===58&&!Y){Y=!0;continue}let n=BA(r,G);Y?l.password+=n:l.username+=n,r!=null&&r>65535&&t++}return g="",a(e,A)?T(c(i,s)):0}else return A==null||A===35||A===47||A===63||A===92&&C(l.scheme)?_&&g===""?1:(s-=g.length+1,g="",a(e,A)?J(c(i,s)):0):(g+=NA(A),a(e,A)?T(c(i,s)):0)},J=A=>{let e=s;if(b&&l.scheme==="file")return s--,a(e,A)?gA(c(i,s)):0;if(A!=null&&A!==58&&A!==35&&A!==47&&A!==63&&(A!==92||!C(l.scheme))){let t=s+q(A);for(A===91?L=!0:A===93&&(L=!1);t<i.length;){let r=c(i,t);if(r==null||!L&&r===58||r===35||r===47||r===63||r===92&&C(l.scheme))break;r===91?L=!0:r===93&&(L=!1),t+=q(r)}return g+=i.slice(s,t),s=t-1,a(e,A)?J(c(i,s)):0}else if(A===58&&!L){if(g===""||b===4)return 1;let t=lA(g,!C(l.scheme));return t===null?1:(l.host=oA(t),g="",a(e,A)?hA(c(i,s)):0)}else if(A==null||A===35||A===47||A===63||A===92&&C(l.scheme)){if(s--,C(l.scheme)&&g==="")return 1;if(b&&g===""&&(LA(l)||l.port!==null))return 1;let t=lA(g,!C(l.scheme));return t===null?1:(l.host=oA(t),g="",b?0:a(e,A)?N(c(i,s)):0)}else return g+=NA(A),a(e,A)?J(c(i,s)):0},hA=A=>{let e=s;if(A!=null&&A>=48&&A<=57){let t=s+1;for(;t<i.length;){let r=i.charCodeAt(t);if(r<48||r>57)break;t++}return g+=i.slice(s,t),s=t-1,a(e,A)?hA(c(i,s)):0}else if(b||A==null||A===35||A===47||A===63||A===92&&C(l.scheme)){if(g!==""){let t=parseInt(g,10);if(t>65535)return 1;if(l.port=t===zA(l.scheme)?null:t,g="",b)return 0}return b?1:(s--,a(e,A)?N(c(i,s)):0)}else return 1};function TA(A,e){let t=A.length-e;if(t<2)return!1;if(UA(c(A,e),c(A,e+1))){if(t===2)return!0;{let r=c(A,e+2);return r===47||r===92||r===63||r===35}}else return!1}var pA=A=>{let e=s;return l.scheme="file",l.host="",A===47||A===92?a(e,A)?me(c(i,s)):0:m?.scheme==="file"?(l.host=m.host,l.path=m.path.slice(),l.opaquePath=m.opaquePath,l.query=m.query,A===63?(l.query="",a(e,A)?H(c(i,s)):0):A===35?(l.fragment="",a(e,A)?U(c(i,s)):0):A!=null?(l.query=null,TA(i,s)?l.path=[]:HA(l),s--,a(e,A)?v(c(i,s)):0):a(e,A)?pA(c(i,s)):0):(s--,a(e,A)?v(c(i,s)):0)},me=A=>{let e=s;return A===47||A===92?a(e,A)?gA(c(i,s)):0:(m!==null&&m.scheme==="file"&&(!TA(i,s)&&(function(r){if(r.length===2){let n=r.codePointAt(0),u=r.codePointAt(1);return(n>=65&&n<=90||n>=97&&n<=122)&&u===58}else return!1})(m.path[0])&&l.path.push(m.path[0]),l.host=m.host),s--,a(e,A)?v(c(i,s)):0)},gA=A=>{let e=s;if(A!=null&&A!==47&&A!==92&&A!==63&&A!==35){let t=s+q(A);for(;t<i.length;){let r=c(i,t);if(r==null||r===47||r===92||r===63||r===35)break;t+=q(r)}return g+=i.slice(s,t),s=t-1,a(e,A)?gA(c(i,s)):0}else if(A==null||A===47||A===92||A===63||A===35){if(s--,!b&&RA(g))return a(e,A)?v(c(i,s)):0;if(g==="")return l.host="",b?0:a(e,A)?N(c(i,s)):0;{let t=lA(g,!C(l.scheme));return t===null?1:(t==="localhost"&&(t=""),l.host=oA(t),g="",b?0:a(e,A)?N(c(i,s)):0)}}return 1},N=A=>{let e=s;return C(l.scheme)?(A!==92&&A!==47&&s--,a(e,A)?v(c(i,s)):0):!b&&A===63?(l.query="",a(e,A)?H(c(i,s)):0):!b&&A===35?(l.fragment="",a(e,A)?U(c(i,s)):0):A!=null?(A!==47&&s--,a(e,A)?v(c(i,s)):0):(b&&l.host===null&&l.path.push(""),a(e,A)?N(c(i,s)):0)},v=A=>{let e=s;if(A!=null&&A!==47&&(!C(l.scheme)||A!==92)&&(b||A!==63&&A!==35)){let t=s+q(A);for(;t<i.length;){let r=c(i,t);if(r==null||r===47||C(l.scheme)&&r===92||!b&&(r===63||r===35))break;t+=q(r)}g+=k(i.slice(s,t),nA),s=t,A=c(i,t)}if(A==null||A===47||C(l.scheme)&&A===92||!b&&(A===63||A===35)){let t=C(l.scheme)&&A===92;return(function(n){switch(n){case"..":case"%2e.":case"%2E.":case".%2e":case".%2E":case"%2e%2e":case"%2E%2e":case"%2e%2E":case"%2E%2E":return!0;default:return!1}})(g)?(HA(l),A!==47&&!t&&l.path.push("")):SA(g)&&A!==47&&!t?l.path.push(""):SA(g)||(l.scheme==="file"&&l.path.length===0&&RA(g)&&(g=`${g[0]}:`),l.path.push(g)),g="",A===63?(l.query="",a(e,A)?H(c(i,s)):0):A===35?(l.fragment="",a(e,A)?U(c(i,s)):0):a(e,A)?v(c(i,s)):0}else return g+=BA(A,nA),a(e,A)?v(c(i,s)):0},xA=A=>{let e=s;if(A===63)return l.query="",a(e,A)?H(c(i,s)):0;if(A===35)return l.fragment="",a(e,A)?U(c(i,s)):0;if(A!=null){let t=s+q(A);for(;t<i.length;){let n=c(i,t);if(n===63||n===35)break;t+=q(n)}let r=i.slice(s,t);if(t<i.length&&r.charCodeAt(r.length-1)===32?l.path[0]+=k(r.slice(0,-1),M)+"%20":l.path[0]+=k(r,M),s=t,(A=c(i,t))===63)return l.query="",a(e,A)?H(c(i,s)):0;if(A===35)return l.fragment="",a(e,A)?U(c(i,s)):0}return a(e,A)?xA(c(i,s)):0},H=A=>{let e=s,t=s;if(A!=null){if(b)t=i.length;else{let n=i.indexOf("#",s);t=n===-1?i.length:n}let r=C(l.scheme)?_A:cA;l.query+=k(i.slice(s,t),r)}return s=t,c(i,t)===35&&!b?(l.fragment="",a(e,A)?U(c(i,s)):0):a(e,A)?H(c(i,s)):0},U=A=>{let e=s;return A!=null&&(l.fragment+=k(i.slice(s),FA),s=i.length),a(e,A)?U(c(i,s)):0};function uA(A){if(A.opaquePath)return A.path[0];{let e="";for(let t of A.path)e+=`/${t}`;return e}}function OA(A){switch(A.scheme){case"blob":{let e=I(uA(A),null,null,0);return e===null||e.scheme!=="http"&&e.scheme!=="https"?"null":OA(e)}case"ftp":case"http":case"https":case"ws":case"wss":return(function(t){let r=`${t.scheme}://`;return r+=t.host,t.port!==null&&(r+=`:${t.port}`),r})(A);default:return"null"}}var w=Symbol("URLImpl"),j=class A{constructor(e,t){if(e===void 0&&t===void 0)throw new TypeError('The "url" argument must be specified.');e=P(e),t!=null&&(t=P(t));let r=null;if(t!=null&&(r=I(t,null,null,0),r==null))throw new TypeError(`Invalid base URL: ${t}`);let n=I(e,null,r,0);if(n==null)throw new TypeError(`Invalid URL: ${e}`);this[w]={url:n,query:null}}static createObjectURL(e){throw new TypeError("URL.createObjetURL is unsupported")}static revokeObjectURL(e){}static parse(e,t){e=P(e),t!==void 0&&(t=P(t));try{return new A(e,t)}catch{return null}}static canParse(e,t){e=P(e),t!==void 0&&(t=P(t));let r=null;return t!=null&&(r=I(t,null,null,0),r==null)?!1:I(e,null,r,0)!=null}get href(){return(function(t){let r=`${t.scheme}:`;return t.host!==null&&(r+="//",(t.username!==""||t.password!=="")&&(r+=t.username,t.password!==""&&(r+=`:${t.password}`),r+="@"),r+=t.host,t.port!==null&&(r+=`:${t.port}`)),t.host===null&&!t.opaquePath&&t.path.length>1&&t.path[0]===""&&(r+="/."),r+=uA(t),t.query!==null&&(r+=`?${t.query}`),t.fragment!==null&&(r+=`#${t.fragment}`),r})(this[w].url)}set href(e){let t=I(e=P(e),null,null,0);if(t==null)throw new TypeError(`Invalid URL: ${e}`);this[w].url=t,this[w].query&&AA(this[w].query,t.query)}get origin(){return OA(this[w].url)}get protocol(){return`${this[w].url.scheme}:`}set protocol(e){I(`${e=P(e)}:`,this[w].url,null,2)}get username(){return this[w].url.username}set username(e){e=P(e),Z(this[w].url)||(function(r,n){r.username=k(n,G)})(this[w].url,e)}get password(){return this[w].url.password}set password(e){e=P(e),Z(this[w].url)||(function(r,n){r.password=k(n,G)})(this[w].url,e)}get host(){let{url:e}=this[w];return e.host==null?"":e.port==null?e.host:`${e.host}:${e.port}`}set host(e){e=P(e),this[w].url.opaquePath||I(e,this[w].url,null,3)}get hostname(){let{url:e}=this[w];return e.host!=null?e.host:""}set hostname(e){e=P(e),this[w].url.opaquePath||I(e,this[w].url,null,4)}get port(){let{url:e}=this[w];return e.port!=null?`${e.port}`:""}set port(e){e=P(e);let{url:t}=this[w];Z(t)||(e?I(e,t,null,5):t.port=null)}get pathname(){return uA(this[w].url)}set pathname(e){e=P(e);let{url:t}=this[w];t.opaquePath||(t.path=[],I(e,t,null,6))}get search(){let{url:e}=this[w];return e.query?`?${e.query}`:""}set search(e){e=P(e);let{url:t,query:r}=this[w];if(!e)t.query=null,r&&AA(r,null);else{let n=e[0]==="?"?e.substring(1):e;t.query="",I(n,t,null,7),r&&AA(r,t.query)}}get searchParams(){let e=this[w],t=e.query;return t==null&&(t=e.query=(function(n,u){let o=new W;return o[y].url=n,o[y].serialized=u==null,u&&(o[y].list=fA(u)),o})(this,e.url.query)),t}get hash(){let{url:e}=this[w];return e.fragment?`#${e.fragment}`:""}set hash(e){e=P(e);let{url:t}=this[w];if(!e)t.fragment=null;else{let r=e[0]==="#"?e.substring(1):e;t.fragment="",I(r,t,null,8)}}toJSON(){return this.href}toString(){return this.href}};Object.defineProperty(j.prototype,Symbol.toStringTag,{value:"URL",configurable:!0});var y=Symbol("URLSearchParamsImpl"),we=Symbol.dispose||Symbol.for("dispose");function AA(A,e){e?A[y].list=fA(e):A[y].list.length=0,A[y].serialized=e==null}function Q(A){if(A.url){let e=sA(A.list);(function(r,n){r[w].url.query=n})(A.url,e||null),A.serialized=!0}}var Pe=typeof Iterator<"u"?Iterator:Object,O=class extends Pe{constructor(e,t){super(),this[y]={ptr:e,map:t,index:0}}next(){let e=this[y];return e.index<e.ptr.list.length?{value:e.map(e.ptr.list[e.index++]),done:!1}:{value:void 0,done:!0}}[Symbol.iterator](){return this}[we](){}},W=class{constructor(e){let t=this[y]={list:[],url:null,serialized:!0},r;if(Array.isArray(e))for(let n=0;n<e.length;n++)t.list.push(PA(e[n]));else if((r=qA(e))!=null){let n;for(;!(n=eA(r.next())).done;)t.list.push(PA(n.value))}else if((typeof e=="object"||typeof e=="function")&&e!=null){let n=Object.keys(e);for(let u=0;u<n.length;u++){let o=n[u],f=jA(o),h=P(e[o]),p=t.list.find(d=>d[0]===f);p?p[1]=h:t.list.push([f,h])}}else if(e!==void 0){let n=P(e);n=n[0]==="?"?n.substring(1):n,t.list=fA(n)}}get size(){return this[y].list.length}append(e,t){e=P(e),t=P(t),this[y].list.push([e,t]);let r=this[y];r.url&&r.serialized?(function(u,o){let f=u[w].url;f.query=f.query?`${f.query}&${o}`:o})(r.url,sA([[e,t]])):Q(r)}delete(e,t){e=P(e),t=t!=null?P(t):void 0;let{list:r}=this[y],n=0;for(;n<r.length;)r[n][0]===e&&(t==null||r[n][1]===t)?r.splice(n,1):n++;Q(this[y])}get(e){e=P(e);let{list:t}=this[y];for(let r=0;r<t.length;r++)if(t[r][0]===e)return t[r][1];return null}getAll(e){e=P(e);let t=[],{list:r}=this[y];for(let n=0;n<r.length;n++)r[n][0]===e&&t.push(r[n][1]);return t}has(e,t){e=P(e),t=t!=null?P(t):void 0;let{list:r}=this[y];for(let n=0;n<r.length;n++)if(r[n][0]===e&&(t==null||r[n][1]===t))return!0;return!1}set(e,t){e=P(e),t=P(t);let{list:r}=this[y],n=!1,u=!1,o=0;for(;o<r.length;)r[o][0]===e?n?(r.splice(o,1),u=!0):(n=!0,r[o][1]!==t&&(r[o][1]=t,u=!0),o++):o++;n||(r.push([e,t]),u=!0),u&&Q(this[y])}sort(){this[y].list.sort((e,t)=>e[0]<t[0]?-1:e[0]>t[0]?1:0),Q(this[y])}forEach(e,t){if(typeof e!="function")throw new TypeError('The "callback" argument must be of type function');let{list:r}=this[y];for(let n=0;n<r.length;n++)e.call(t,r[n][1],r[n][0],this)}entries(){return new O(this[y],e=>e)}keys(){return new O(this[y],e=>e[0])}values(){return new O(this[y],e=>e[1])}toString(){return sA(this[y].list)}[Symbol.iterator](){return this.entries()}};Object.defineProperty(W.prototype,Symbol.toStringTag,{value:"URLSearchParams",configurable:!0});var ye=$.trackUsage.request.shape.command,De=$.trackUsage.response,Ce=$.checkEntitlement.request.omit({customerId:!0}).strict();function ve(A){let e=mA.parse(A.scope),t=wA({...A,scope:e},void 0,j),r=0,n=!1;return{identify(u){if(!/^gg_ct_[A-Za-z0-9_-]{32,128}$/.test(u))throw new R("INVALID_TOKEN","A Customer Token is required");r++,t.identify(u),n=!0},reset(){r++,n=!1,t.reset()},async readHoldings(){let u=$.readHoldings;return X(t.request,u,{})},async checkEntitlement(u){let o=$.checkEntitlement;return X(t.request,{...o,request:Ce},u)},async trackUsage(u){if(!n)throw new R("UNAUTHENTICATED","Identify the Customer first");if(!A.usageReporter)throw new R("INVALID_REQUEST","Configure your authenticated backend usageReporter");let o=ye.parse(u),f=r,h;try{h=await A.usageReporter(o)}catch(d){throw f!==r?new R("IDENTITY_CHANGED","Customer identity changed during usage reporting"):d}if(f!==r)throw new R("IDENTITY_CHANGED","Customer identity changed during usage reporting");let p=De.parse(h);if(p.scope.projectId!==e.projectId||p.scope.environment!==e.environment)throw new R("INVALID_RESPONSE","Usage response scope differs");return p}}}export{R as IndianaError,ve as createIndianaReactNative};
1
+ import{a as wA}from"./chunk-BNU6IG3F.js";import{a as X}from"./chunk-VVV3JNS3.js";import{a as PA}from"./chunk-2QPETWDX.js";import{Ki as B}from"./chunk-ZT66RIFU.js";import{a as H}from"./chunk-SOQO2RDZ.js";import"./chunk-LMR2TM3X.js";import{b as mA}from"./chunk-OBYJWIRB.js";import"./chunk-EXCPE2XH.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";function P(A){return typeof A=="string"?A:String(A)}var jA=/[\ud800-\udbff](?![\udc00-\udfff])|(^|[^\ud800-\udbff])[\udc00-\udfff]/g;function QA(A){return A.replace(jA,"$1\uFFFD")}function eA(A,e){if(typeof A!="object"||A==null){let t="";throw t+="The provided value is not an object",new TypeError(t)}return A}function IA(A){if(A!=null&&(typeof A=="object"||typeof A=="function")){let e=A[Symbol.iterator];if(e==null)return;if(typeof e!="function")throw new TypeError("The provided value is not iterable");let t=e.call(A);if(!t||typeof t!="object")throw new TypeError("Result of the Symbol.iterator method is not an object");return t}}function yA(A){let e;if(Array.isArray(A)){let t=A.map(P);if(t.length===2)return t}else if((e=IA(A))!=null){let t=eA(e.next()),r=eA(e.next());if(!t.done&&!r.done)return[P(t.value),P(r.value)]}throw new TypeError("Each query pair must be an iterable [name, value] tuple")}var DA="0123456789ABCDEF",FA=/(?:%[0-9A-Fa-f]{2})+/g;function k(A){return`%${DA[A>>4&15]}${DA[15&A]}`}function BA(A,e,t=!1){return A>=55296&&A<=57343&&(A=65533),A<=127?t&&A===32?"+":e(A)?k(A):String.fromCharCode(A):A<=2047?k(192|A>>6)+k(128|63&A):A<=65535?k(224|A>>12)+k(128|A>>6&63)+k(128|63&A):k(240|A>>18)+k(128|A>>12&63)+k(128|A>>6&63)+k(128|63&A)}function tA(A){return A>=48&&A<=57?A-48:A>=65&&A<=70?A-65+10:A>=97&&A<=102?A-97+10:-1}function rA(A,e=!1){let t=0;for(;t<A.length;t++){let r=A.charCodeAt(t);if(r===37||e&&r===43)break}return t===A.length?A:(e?A.replace(/\+/g," "):A).replace(FA,r=>{try{return decodeURIComponent(r)}catch{return"\uFFFD".repeat(r.length/3)}})}function T(A){return A<=31||A>126}function _A(A){switch(A){case 32:case 34:case 60:case 62:case 96:return!0;default:return T(A)}}function cA(A){switch(A){case 32:case 34:case 35:case 60:case 62:return!0;default:return T(A)}}function YA(A){return cA(A)||A===39}function nA(A){switch(A){case 63:case 94:case 96:case 123:case 125:return!0;default:return cA(A)}}function G(A){switch(A){case 47:case 58:case 59:case 61:case 64:case 91:case 92:case 93:case 124:return!0;default:return nA(A)}}function CA(A){switch(A){case 33:case 39:case 40:case 41:case 126:return!0;default:return(function(t){switch(t){case 36:case 37:case 38:case 43:case 44:return!0;default:return G(t)}})(A)}}function kA(A,e){return BA(A=A||0,e)}function U(A,e,t=!1){let r=0;for(;r<A.length;r++){let c=A.charCodeAt(r);if(c>=128||t&&c===32||e(c))break}if(r===A.length)return A;let n=A.slice(0,r);for(;r<A.length;r++){let c=A.charCodeAt(r),i=c;if(c>=55296&&c<=56319&&r+1<A.length){let u=A.charCodeAt(r+1);u>=56320&&u<=57343&&(i=(c-55296<<10)+u-56320+65536,r++)}n+=BA(i,e,t)}return n}function aA(A){let e=[],t=0,r=0;for(;r<=A.length;){if(r=A.indexOf("&",t),r<0&&(r=A.length),r!==t){let n=A.slice(t,r),c=n.indexOf("=");c<0&&(c=n.length),e.push([rA(n.slice(0,c),!0),rA(n.slice(c+1),!0)])}if(t=r+1,r===A.length)break}return e}function sA(A){let e="";for(let t=0;t<A.length;t++){let r=U(A[t][0],CA,!0),n=U(A[t][1],CA,!0);e+=t!==0?`&${r}=${n}`:`${r}=${n}`}return e}var GA=[2191,2191,3164,3164,3292,3292,6863,6877,6880,6891,8385,8385,11158,11158,42958,42959,42962,42962,42964,42964,42993,42993,64451,64466,64912,64913,64968,64974,67904,67929,69317,69319,69328,69336,69370,69371,72544,72551,73136,73179,73184,73193,93856,93880,93883,93907,94194,94198,100344,100351,101641,101662,101760,101874,118010,118012,118458,118480,118496,118512,124608,124638,124640,124661,124670,124671,128728,128728,128887,128890,129232,129240,129620,129623,129674,129674,129678,129678,129736,129736,129741,129741,129770,129770,129775,129775,130042,130042,177978,177983,183970,183981,205744,210041],JA=[7296,7297,7298,7299,7300,7301,7302,7303,7304,42958,42962,42964,42993],WA=["\u0432","\u0434","\u043E","\u0441","\u0442","\u0442","\u044A","\u0463","\uA64B","\uA7CF","\uA7D3","\uA7D5","s"],VA=[2381,2381,2509,2509,2637,2637,2765,2765,2893,2893,3021,3021,3149,3149,3277,3277,3387,3388,3405,3405,3530,3530,3642,3642,3770,3770,3972,3972,4153,4154,5908,5909,5940,5940,6098,6098,6752,6752,6980,6980,7082,7083,7154,7155,11647,11647,43014,43014,43052,43052,43204,43204,43347,43347,43456,43456,43766,43766,44013,44013,68159,68159,69702,69702,69744,69744,69759,69759,69817,69817,69939,69940,70080,70080,70197,70197,70378,70378,70477,70477,70606,70608,70722,70722,70850,70850,71103,71103,71231,71231,71350,71350,71467,71467,71737,71737,71997,71998,72160,72160,72244,72244,72263,72263,72345,72345,72767,72767,73028,73029,73111,73111,73537,73538,90415,90415];function XA(A){for(let e=0;e<A.length;e++){let t=A.codePointAt(e);if(t>65535&&e++,t<=32||t===37||t===127||t>=55296&&t<=57343||t>=128&&t<=159||t>=64976&&t<=65007||!(65534&~t)||t===65533)return!0}return!1}var[KA,ZA,Ae,bA]=[[[],"0,6,7,8,m,w,10,1b,1d,1f,72,73,7k,8k,dt,2rk","AAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAA/AAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAADAAABwfwAAAAAAAMADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhAAAAQAAAAAAAAQCAAABAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgACAAAAAAAAAAAAAAAAD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAP///////////////wAAAAAAAAAAAAAAAAAAAAA="],[[],"6,7,8,o,4o,7e,7f,7h,7i,7j,dl","AAAAAEF9+P/+BwAAAMAA//8AAPz/////BlADAAAAAJwAAPz///8AAADA//H/5+X8AAAAAAAAAAAA/P///wcAAAAAAAAAAAAAPv0vAD0BAABA/gAA/5/5/f8BAAAAAAAAgAAAAP//////////////AYD/////BQAAAAAAAAAAAAAAAAAAAAAAAP///////wcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8g+N8B+AAAAAAAAAAAAAAAAAAAAAAAAP//AwAAYAAAAAAAAAAAAAD/////CwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAAAAAAAAAAAAAAA//8fAB4AAAD//wMAAAAAAH3/HgwAAAAAAAD//////////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="],[[],"6,7,8,o,4o,7e,7f,7h,7i,7j,dl","AAAAAP3////+BwAAAMDu//////////////8vAADAAJwAAP3///8AAADg////////AAAAAAAAAAAA/P///wcAAAAAAAAAAAAA////Ab0H//9H/gAA/9////8BAAAAAAAAgAAAAP//////////////AYD/////BQAAAAAAAAAAAAAAAAAAAAAAAP///////wcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL/G//8T+AAAAAAAAAAAAAAAAAAAAAAAAP//AwAAfgAAAAAAAAAAAAD+////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANwAAAAAAAAAAAAAAAAA//8fAB4AAAD//wMAAAAAAH3/Hg4AAAAAAAD//////////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="],[[],"0,3,4,5,6,7,8,9,a,b,c,d,e,f,g,j,n,o,p,q,r,s,t,w,18,19,1c,4m,4o,4p,4q,4r,6z,72,73,75,76,77,7e,7h,7i,7j,7k,7l,7m,7n,7o,7p,7q,7r,7s,7t,7u,7v,7w,7x,7y,7z,8k,9t,a2,a3,a7,cc,cv,cx,cy,d6,dc,dd,de,dg,dh,di,dk,dl,2rk,2rl","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AAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAwAAAAAAwAcFAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//4H/PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD/4wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAAAAB/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAgAcAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAPAAAAAAAAAAAAAAD//////z///38AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAD+P/nDwAAADwAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////9/+P//////HyAAEAAA+P7/AAAAAAAAAAAAAH////nbBwAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASMAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAADwDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA////////////////AAAAAAAAAAAAAAAAAAAAAP///////////////////////////////////////wAA"]].map(function([e,t,r]){return[e,t.split(",").map(n=>parseInt(n,36)),Uint8Array.from(atob(r),n=>n.charCodeAt(0))]});function ee(A,e){return e===931||e===1010||e===120531||e===120589||e===120647||e===120705||e===120763?"\u03C3":e>=5112&&e<=5117?String.fromCodePoint(e-8):e>=43888&&e<=43967?String.fromCodePoint(e-38864):e>=93856&&e<=93880?String.fromCodePoint(e+27):e===837||e===890||e>=8064&&e<=8111||e>=8114&&e<=8188?A.normalize("NFD").replace(/\u0345/g,"\u03B9").normalize("NFC").toLowerCase():""}function UA(A,e){for(let t=0;t<A.length;t+=2)if(e>=A[t]&&e<=A[t+1])return!0;return!1}function M(A,e){let[t,r,n]=A,c=e>>8;for(let h=0;h<t.length;h+=2)if(c>=t[h]&&c<=t[h+1])return!0;let i=r.indexOf(c);if(i<0)return!1;let u=255&e;return!!(n[32*i+(u>>3)]&1<<(7&u))}function te(A){let e=Array.from(A,t=>t.codePointAt(0));for(let t=0;t<e.length;t++){let r=e[t];if(r!==8204&&r!==8205||t>0&&UA(VA,e[t-1]))continue;if(r===8205)return!1;let n=t-1;for(;n>=0&&M(bA,e[n]);)n--;let c=t+1;for(;c<e.length&&M(bA,e[c]);)c++;if(!(n>=0&&c<e.length&&M(ZA,e[n])&&M(Ae,e[c])))return!1}return!0}var re=/(?![\p{Mark}\p{Decimal_Number}])[\p{Script=Arabic}\p{Script=Hebrew}]/u,ne=/\p{Script=Latin}/u;function se(A){return!re.test(A)||!ne.test(A)}var R=36,F=1,iA=26,ie=38,le=700,oe=72,ue=128,ce=2147483647;function SA(A){return String.fromCharCode(A+22+75*+(A<26))}function ae(A,e,t){let r=0;for(A=t?Math.floor(A/le):A>>1,A+=Math.floor(A/e);A>(R-F)*iA>>1;r+=R)A=Math.floor(A/(R-F));return Math.floor(r+(R-F+1)*A/(A+ie))}function fe(A){let e=Array.from(A,h=>h.codePointAt(0)),t="",r=0;for(let h=0;h<e.length;h++){let p=e[h];p<128&&(t+=String.fromCharCode(p),r++)}let n=r;n&&(t+="-");let c=ue,i=0,u=oe;for(;r<e.length;){let h=ce;for(let p=0;p<e.length;p++){let d=e[p];d>=c&&d<h&&(h=d)}i+=(h-c)*(r+1),c=h;for(let p=0;p<e.length;p++){let d=e[p];if(d<c&&i++,d===c){let y=i;for(let S=R;;S+=R){let q=S<=u?F:S>=u+iA?iA:S-u;if(y<q)break;t+=SA(q+(y-q)%(R-q)),y=Math.floor((y-q)/(R-q))}t+=SA(y),u=ae(i,r+1,r===n),i=0,r++}}i++,c++}return t}function K(A){let e=10;if(A.length>=2&&A[0]==="0"&&(A[1]==="x"||A[1]==="X"))A=A.slice(2),e=16;else if(A.length>=2&&A[0]==="0")A=A.slice(1),e=8;else if(A==="")return-1;let t=0;for(let r=0;r<A.length;r++){let n=tA(A.charCodeAt(r));if(n>=e||n<0)return-1;t=t*e+n}return t}function qA(A){switch(A){case".":case"%2e":case"%2E":return!0;default:return!1}}function zA(A,e){return(A>=65&&A<=90||A>=97&&A<=122)&&(e===58||e===124)}function HA(A){return A.length===2&&zA(A.codePointAt(0),A.codePointAt(1))}function vA(A){return A.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|<|>|\?|@|\[|\\|\]|\^|\|/u)!==-1}function C(A){switch(A){case"ftp":case"http":case"https":case"ws":case"wss":case"file":return!0;default:return!1}}function RA(A){switch(A){case"ftp":return 21;case"http":case"ws":return 80;case"https":case"wss":return 443;default:return null}}function lA(A,e){if(A[0]==="[")return A[A.length-1]==="]"?(function(r){let n=[0,0,0,0,0,0,0,0],c=null,i=0,u=0,h=Array.from(r,p=>p.codePointAt(0));if(h[u]===58){if(h[u+1]!==58)return null;u+=2,i++,c=i}for(;u<h.length;){if(i===8)return null;if(h[u]===58){if(c!==null)return null;u++,i++,c=i;continue}let p=0,d=0,y=0;for(;y<4&&(p=tA(h[u]))>=0;)d=(d<<4)+p,u++,y++;if(h[u]===46){if(y===0||i>6)return null;u-=y;let S=0;for(;h[u]!==void 0;){let q=0;if(S>0)if(h[u]===46&&S<4)u++;else return null;if(h[u]==null||h[u]<48||h[u]>57)return null;for(;h[u]>=48&&h[u]<=57;){if(q=10*q+tA(h[u]),q>255)return null;u++}n[i]=256*n[i]+q,S++,S%2==0&&i++}if(S!==4)return null;break}else if(h[u]===58){if(h[++u]===void 0)return null}else if(h[u]!==void 0)return null;n[i]=d,i++}if(c!==null){let p=i-c;for(i=7;i!==0&&p>0;){let d=n[c+p-1];n[c+p-1]=n[i],n[i]=d,i--,p--}}else if(c===null&&i!==8)return null;return n})(A.substring(1,A.length-1)):null;if(e)return(function(r){return vA(r)?null:U(r,T)})(A);{let t=(function(n){let c=!1,i=!1;for(let h=0;h<n.length;h++){let p=n.charCodeAt(h);if(p<=32||p===37||p===127)return null;if(p>=128){c=!0;break}p>=65&&p<=90&&(i=!0)}if(!c)return n!==""?i?n.toLowerCase():n:null;if((function(p){for(let d of p){let y=d.codePointAt(0);if(/[\p{Cn}\p{Co}\p{Cs}\p{Noncharacter_Code_Point}]/u.test(d)&&!UA(GA,y)||M(KA,y))return!0}return!1})(n))return null;let u=(n=(function(p){let d="";for(let y of p){let S=y.codePointAt(0);if(S!==8204&&S!==8205&&/\p{Default_Ignorable_Code_Point}/u.test(y))continue;let q=ee(y,S);if(q){d+=q;continue}let dA=JA.indexOf(S);d+=dA<0?y:WA[dA]}return d})(n).normalize("NFKC").replace(/[\u3002\uff0e\uff61]/g,".").toLowerCase()).split(".");for(let h=0;h<u.length;h++){let p=u[h];if(p==="")continue;let d=/[^\0-\x7f]/.test(p);if(XA(p)||d&&(/^\p{Mark}/u.test(p)||!te(p)||!se(p)||p.startsWith("xn--")))return null;d&&(u[h]=`xn--${fe(p)}`)}return(n=u.join("."))!==""?n:null})(A.indexOf("%")===-1?A:rA(A));return t===null||vA(t)?null:(function(n){let c=n.length,i=n.lastIndexOf(".",c-2)+1;if(n.charCodeAt(c-1)===46&&c--,c<=i)return!1;if(K(n.slice(i,c))>=0)return!0;for(;i<c;i++){let u=n.charCodeAt(i);if(u<48||u>57)return!1}return!0})(t)?(function(n){let c=n.split("."),i=c.length;if(c[i-1]||i--,i>4)return null;let u=0;for(let p=0;p<i-1;p++){let d=K(c[p]);if(d<0||d>255)return null;u+=d*(1<<8*(3-p))}let h=K(c[i-1]);return h<0||h>=256**(5-i)?null:(u+=h,u)})(t):t}}function oA(A){return typeof A=="number"?(function(t){let n="";return n+=`${(t>>>24&255).toString(10)}.`,n+=`${(t>>>16&255).toString(10)}.`,n+=`${(t>>>8&255).toString(10)}.`,n+=(t&255).toString(10),n})(A):Array.isArray(A)?`[${(function(t){let r=(function(u){let h=-1,p=-1,d=1,y=0;for(let S=0;S<u.length;++S)u[S]!==0?(y>d&&(h=p,d=y),p=-1,y=0):(p===-1&&(p=S),++y);return y>d?p:h})(t),n="",c=!1;for(let i=0;i<=7;++i)if(!(c&&t[i]===0)){if(c&&(c=!1),r===i){n+=i===0?"::":":",c=!0;continue}n+=t[i].toString(16),i!==7&&(n+=":")}return n})(A)}]`:A}function LA(A){A.path.length>0&&(A.path.length!==1||A.scheme!=="file"||!(function(t){return/^[A-Za-z]:$/u.test(t)})(A.path[0]))&&A.path.pop()}function OA(A){return A.username!==""||A.password!==""}function Z(A){return A.host===null||A.host===""||A.scheme==="file"}var s=0,l="",g="",m=null,o,_=!1,Y=!1,O=!1,b;function v(A,e,t,r){e||(A=(function(i){let u=0,h=i.length;for(;u<h&&!(i.charCodeAt(u)>32);++u);for(;h>u&&!(i.charCodeAt(h-1)>32);--h);return i.substring(u,h)})(A)),A=(function(i){let u=0;for(;u<i.length;u++){let p=i.charCodeAt(u);if(p===9||p===10||p===13)break}if(u===i.length)return i;let h=i.slice(0,u);for(;u<i.length;u++){let p=i.charCodeAt(u);p!==9&&p!==10&&p!==13&&(h+=i[u])}return h})(A),s=0,l=A,g="",m=t||null,o=e||{scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,opaquePath:!1},_=!1,Y=!1,O=!1,b=r||0;let n=he;switch(r){case 3:case 4:n=J;break;case 5:n=hA;break;case 6:n=N;break;case 7:n=L;break;case 8:n=z}return n(a(A,s))!==1?o:null}function f(A,e){return s+=s===A?E(e):1,s<=l.length}function a(A,e){return e<A.length?A.codePointAt(e):void 0}function E(A){return A!=null&&A>65535?2:1}function NA(A){return A==null?"":A<=65535?String.fromCharCode(A):String.fromCodePoint(A)}var he=A=>{let e=s;if(A!=null&&(A>=65&&A<=90||A>=97&&A<=122)){let t=s+1;for(A=l.charCodeAt(t);A===43||A===45||A===46||A>=65&&A<=90||A>=97&&A<=122||A>=48&&A<=57;)t++,A=l.charCodeAt(t);return g=l.slice(s,t).toLowerCase(),s=t,pe(t<l.length?A:void 0)}else return b?1:(--s,f(e,A)?$A(a(l,s)):0)},pe=A=>{let e=s;if(A===58){if(b){if(C(o.scheme)!==C(g))return 0;if((OA(o)||o.port!==null)&&g==="file")return 0;if(o.scheme==="file"&&o.host==="")return 0}return o.scheme=g,b?(o.port===RA(o.scheme)&&(o.port=null),0):(g="",o.scheme==="file"?f(e,A)?pA(a(l,s)):0:C(o.scheme)&&m!==null&&m.scheme===o.scheme?f(e,A)?ge(a(l,s)):0:C(o.scheme)?f(e,A)?me(a(l,s)):0:a(l,s+1)===47?(s++,f(e,A)?de(a(l,s)):0):(o.path=[""],o.opaquePath=!0,f(e,A)?xA(a(l,s)):0))}else return b?1:(g="",s=-1,f(e,A)?$A(a(l,s)):0)},$A=A=>{let e=s;return m===null||m.opaquePath&&A!==35?1:m.opaquePath&&A===35?(o.scheme=m.scheme,o.path=m.path.slice(),o.opaquePath=m.opaquePath,o.query=m.query,o.fragment="",f(e,A)?z(a(l,s)):0):m.scheme==="file"?(s--,f(e,A)?pA(a(l,s)):0):(s--,f(e,A)?fA(a(l,s)):0)},ge=A=>{let e=s;return A===47&&a(l,s+1)===47?(++s,f(e,A)?V(a(l,s)):0):(s--,f(e,A)?fA(a(l,s)):0)},de=A=>{let e=s;return A===47?f(e,A)?$(a(l,s)):0:(s--,f(e,A)?I(a(l,s)):0)},fA=A=>{let e=s;return o.scheme=m.scheme,A===47||C(o.scheme)&&A===92?f(e,A)?EA(a(l,s)):0:(o.username=m.username,o.password=m.password,o.host=m.host,o.port=m.port,o.path=m.path.slice(),o.query=m.query,A===63?(o.query="",f(e,A)?L(a(l,s)):0):A===35?(o.fragment="",f(e,A)?z(a(l,s)):0):A!=null?(o.query=null,o.path.pop(),s--,f(e,A)?I(a(l,s)):0):f(e,A)?fA(a(l,s)):0)},EA=A=>{let e=s;return C(o.scheme)&&(A===47||A===92)?f(e,A)?V(a(l,s)):0:A===47?f(e,A)?$(a(l,s)):0:(o.username=m.username,o.password=m.password,o.host=m.host,o.port=m.port,s--,f(e,A)?I(a(l,s)):0)},me=A=>{let e=s;return A===47&&a(l,s+1)===47?s++:s--,f(e,A)?V(a(l,s)):0},V=A=>{let e=s;return A!==47&&A!==92?(s--,f(e,A)?$(a(l,s)):0):f(e,A)?V(a(l,s)):0},$=A=>{let e=s;if(A!=null&&A!==64&&A!==35&&A!==47&&A!==63&&(A!==92||!C(o.scheme))){let t=s+E(A);for(;t<l.length;){let r=a(l,t);if(r==null||r===64||r===35||r===47||r===63||r===92&&C(o.scheme))break;t+=E(r)}return g+=l.slice(s,t),s=t-1,f(e,A)?$(a(l,s)):0}if(A===64){_&&(g=`%40${g}`),_=!0;for(let t=0;t<g.length;t++){let r=g.codePointAt(t);if(r===58&&!Y){Y=!0;continue}let n=kA(r,G);Y?o.password+=n:o.username+=n,r!=null&&r>65535&&t++}return g="",f(e,A)?$(a(l,s)):0}else return A==null||A===35||A===47||A===63||A===92&&C(o.scheme)?_&&g===""?1:(s-=g.length+1,g="",f(e,A)?J(a(l,s)):0):(g+=NA(A),f(e,A)?$(a(l,s)):0)},J=A=>{let e=s;if(b&&o.scheme==="file")return s--,f(e,A)?gA(a(l,s)):0;if(A!=null&&A!==58&&A!==35&&A!==47&&A!==63&&(A!==92||!C(o.scheme))){let t=s+E(A);for(A===91?O=!0:A===93&&(O=!1);t<l.length;){let r=a(l,t);if(r==null||!O&&r===58||r===35||r===47||r===63||r===92&&C(o.scheme))break;r===91?O=!0:r===93&&(O=!1),t+=E(r)}return g+=l.slice(s,t),s=t-1,f(e,A)?J(a(l,s)):0}else if(A===58&&!O){if(g===""||b===4)return 1;let t=lA(g,!C(o.scheme));return t===null?1:(o.host=oA(t),g="",f(e,A)?hA(a(l,s)):0)}else if(A==null||A===35||A===47||A===63||A===92&&C(o.scheme)){if(s--,C(o.scheme)&&g==="")return 1;if(b&&g===""&&(OA(o)||o.port!==null))return 1;let t=lA(g,!C(o.scheme));return t===null?1:(o.host=oA(t),g="",b?0:f(e,A)?N(a(l,s)):0)}else return g+=NA(A),f(e,A)?J(a(l,s)):0},hA=A=>{let e=s;if(A!=null&&A>=48&&A<=57){let t=s+1;for(;t<l.length;){let r=l.charCodeAt(t);if(r<48||r>57)break;t++}return g+=l.slice(s,t),s=t-1,f(e,A)?hA(a(l,s)):0}else if(b||A==null||A===35||A===47||A===63||A===92&&C(o.scheme)){if(g!==""){let t=parseInt(g,10);if(t>65535)return 1;if(o.port=t===RA(o.scheme)?null:t,g="",b)return 0}return b?1:(s--,f(e,A)?N(a(l,s)):0)}else return 1};function MA(A,e){let t=A.length-e;if(t<2)return!1;if(zA(a(A,e),a(A,e+1))){if(t===2)return!0;{let r=a(A,e+2);return r===47||r===92||r===63||r===35}}else return!1}var pA=A=>{let e=s;return o.scheme="file",o.host="",A===47||A===92?f(e,A)?we(a(l,s)):0:m?.scheme==="file"?(o.host=m.host,o.path=m.path.slice(),o.opaquePath=m.opaquePath,o.query=m.query,A===63?(o.query="",f(e,A)?L(a(l,s)):0):A===35?(o.fragment="",f(e,A)?z(a(l,s)):0):A!=null?(o.query=null,MA(l,s)?o.path=[]:LA(o),s--,f(e,A)?I(a(l,s)):0):f(e,A)?pA(a(l,s)):0):(s--,f(e,A)?I(a(l,s)):0)},we=A=>{let e=s;return A===47||A===92?f(e,A)?gA(a(l,s)):0:(m!==null&&m.scheme==="file"&&(!MA(l,s)&&(function(r){if(r.length===2){let n=r.codePointAt(0),c=r.codePointAt(1);return(n>=65&&n<=90||n>=97&&n<=122)&&c===58}else return!1})(m.path[0])&&o.path.push(m.path[0]),o.host=m.host),s--,f(e,A)?I(a(l,s)):0)},gA=A=>{let e=s;if(A!=null&&A!==47&&A!==92&&A!==63&&A!==35){let t=s+E(A);for(;t<l.length;){let r=a(l,t);if(r==null||r===47||r===92||r===63||r===35)break;t+=E(r)}return g+=l.slice(s,t),s=t-1,f(e,A)?gA(a(l,s)):0}else if(A==null||A===47||A===92||A===63||A===35){if(s--,!b&&HA(g))return f(e,A)?I(a(l,s)):0;if(g==="")return o.host="",b?0:f(e,A)?N(a(l,s)):0;{let t=lA(g,!C(o.scheme));return t===null?1:(t==="localhost"&&(t=""),o.host=oA(t),g="",b?0:f(e,A)?N(a(l,s)):0)}}return 1},N=A=>{let e=s;return C(o.scheme)?(A!==92&&A!==47&&s--,f(e,A)?I(a(l,s)):0):!b&&A===63?(o.query="",f(e,A)?L(a(l,s)):0):!b&&A===35?(o.fragment="",f(e,A)?z(a(l,s)):0):A!=null?(A!==47&&s--,f(e,A)?I(a(l,s)):0):(b&&o.host===null&&o.path.push(""),f(e,A)?N(a(l,s)):0)},I=A=>{let e=s;if(A!=null&&A!==47&&(!C(o.scheme)||A!==92)&&(b||A!==63&&A!==35)){let t=s+E(A);for(;t<l.length;){let r=a(l,t);if(r==null||r===47||C(o.scheme)&&r===92||!b&&(r===63||r===35))break;t+=E(r)}g+=U(l.slice(s,t),nA),s=t,A=a(l,t)}if(A==null||A===47||C(o.scheme)&&A===92||!b&&(A===63||A===35)){let t=C(o.scheme)&&A===92;return(function(n){switch(n){case"..":case"%2e.":case"%2E.":case".%2e":case".%2E":case"%2e%2e":case"%2E%2e":case"%2e%2E":case"%2E%2E":return!0;default:return!1}})(g)?(LA(o),A!==47&&!t&&o.path.push("")):qA(g)&&A!==47&&!t?o.path.push(""):qA(g)||(o.scheme==="file"&&o.path.length===0&&HA(g)&&(g=`${g[0]}:`),o.path.push(g)),g="",A===63?(o.query="",f(e,A)?L(a(l,s)):0):A===35?(o.fragment="",f(e,A)?z(a(l,s)):0):f(e,A)?I(a(l,s)):0}else return g+=kA(A,nA),f(e,A)?I(a(l,s)):0},xA=A=>{let e=s;if(A===63)return o.query="",f(e,A)?L(a(l,s)):0;if(A===35)return o.fragment="",f(e,A)?z(a(l,s)):0;if(A!=null){let t=s+E(A);for(;t<l.length;){let n=a(l,t);if(n===63||n===35)break;t+=E(n)}let r=l.slice(s,t);if(t<l.length&&r.charCodeAt(r.length-1)===32?o.path[0]+=U(r.slice(0,-1),T)+"%20":o.path[0]+=U(r,T),s=t,(A=a(l,t))===63)return o.query="",f(e,A)?L(a(l,s)):0;if(A===35)return o.fragment="",f(e,A)?z(a(l,s)):0}return f(e,A)?xA(a(l,s)):0},L=A=>{let e=s,t=s;if(A!=null){if(b)t=l.length;else{let n=l.indexOf("#",s);t=n===-1?l.length:n}let r=C(o.scheme)?YA:cA;o.query+=U(l.slice(s,t),r)}return s=t,a(l,t)===35&&!b?(o.fragment="",f(e,A)?z(a(l,s)):0):f(e,A)?L(a(l,s)):0},z=A=>{let e=s;return A!=null&&(o.fragment+=U(l.slice(s),_A),s=l.length),f(e,A)?z(a(l,s)):0};function uA(A){if(A.opaquePath)return A.path[0];{let e="";for(let t of A.path)e+=`/${t}`;return e}}function TA(A){switch(A.scheme){case"blob":{let e=v(uA(A),null,null,0);return e===null||e.scheme!=="http"&&e.scheme!=="https"?"null":TA(e)}case"ftp":case"http":case"https":case"ws":case"wss":return(function(t){let r=`${t.scheme}://`;return r+=t.host,t.port!==null&&(r+=`:${t.port}`),r})(A);default:return"null"}}var w=Symbol("URLImpl"),j=class A{constructor(e,t){if(e===void 0&&t===void 0)throw new TypeError('The "url" argument must be specified.');e=P(e),t!=null&&(t=P(t));let r=null;if(t!=null&&(r=v(t,null,null,0),r==null))throw new TypeError(`Invalid base URL: ${t}`);let n=v(e,null,r,0);if(n==null)throw new TypeError(`Invalid URL: ${e}`);this[w]={url:n,query:null}}static createObjectURL(e){throw new TypeError("URL.createObjetURL is unsupported")}static revokeObjectURL(e){}static parse(e,t){e=P(e),t!==void 0&&(t=P(t));try{return new A(e,t)}catch{return null}}static canParse(e,t){e=P(e),t!==void 0&&(t=P(t));let r=null;return t!=null&&(r=v(t,null,null,0),r==null)?!1:v(e,null,r,0)!=null}get href(){return(function(t){let r=`${t.scheme}:`;return t.host!==null&&(r+="//",(t.username!==""||t.password!=="")&&(r+=t.username,t.password!==""&&(r+=`:${t.password}`),r+="@"),r+=t.host,t.port!==null&&(r+=`:${t.port}`)),t.host===null&&!t.opaquePath&&t.path.length>1&&t.path[0]===""&&(r+="/."),r+=uA(t),t.query!==null&&(r+=`?${t.query}`),t.fragment!==null&&(r+=`#${t.fragment}`),r})(this[w].url)}set href(e){let t=v(e=P(e),null,null,0);if(t==null)throw new TypeError(`Invalid URL: ${e}`);this[w].url=t,this[w].query&&AA(this[w].query,t.query)}get origin(){return TA(this[w].url)}get protocol(){return`${this[w].url.scheme}:`}set protocol(e){v(`${e=P(e)}:`,this[w].url,null,2)}get username(){return this[w].url.username}set username(e){e=P(e),Z(this[w].url)||(function(r,n){r.username=U(n,G)})(this[w].url,e)}get password(){return this[w].url.password}set password(e){e=P(e),Z(this[w].url)||(function(r,n){r.password=U(n,G)})(this[w].url,e)}get host(){let{url:e}=this[w];return e.host==null?"":e.port==null?e.host:`${e.host}:${e.port}`}set host(e){e=P(e),this[w].url.opaquePath||v(e,this[w].url,null,3)}get hostname(){let{url:e}=this[w];return e.host!=null?e.host:""}set hostname(e){e=P(e),this[w].url.opaquePath||v(e,this[w].url,null,4)}get port(){let{url:e}=this[w];return e.port!=null?`${e.port}`:""}set port(e){e=P(e);let{url:t}=this[w];Z(t)||(e?v(e,t,null,5):t.port=null)}get pathname(){return uA(this[w].url)}set pathname(e){e=P(e);let{url:t}=this[w];t.opaquePath||(t.path=[],v(e,t,null,6))}get search(){let{url:e}=this[w];return e.query?`?${e.query}`:""}set search(e){e=P(e);let{url:t,query:r}=this[w];if(!e)t.query=null,r&&AA(r,null);else{let n=e[0]==="?"?e.substring(1):e;t.query="",v(n,t,null,7),r&&AA(r,t.query)}}get searchParams(){let e=this[w],t=e.query;return t==null&&(t=e.query=(function(n,c){let i=new W;return i[D].url=n,i[D].serialized=c==null,c&&(i[D].list=aA(c)),i})(this,e.url.query)),t}get hash(){let{url:e}=this[w];return e.fragment?`#${e.fragment}`:""}set hash(e){e=P(e);let{url:t}=this[w];if(!e)t.fragment=null;else{let r=e[0]==="#"?e.substring(1):e;t.fragment="",v(r,t,null,8)}}toJSON(){return this.href}toString(){return this.href}};Object.defineProperty(j.prototype,Symbol.toStringTag,{value:"URL",configurable:!0});var D=Symbol("URLSearchParamsImpl"),Pe=Symbol.dispose||Symbol.for("dispose");function AA(A,e){e?A[D].list=aA(e):A[D].list.length=0,A[D].serialized=e==null}function Q(A){if(A.url){let e=sA(A.list);(function(r,n){r[w].url.query=n})(A.url,e||null),A.serialized=!0}}var ye=typeof Iterator<"u"?Iterator:Object,x=class extends ye{constructor(e,t){super(),this[D]={ptr:e,map:t,index:0}}next(){let e=this[D];return e.index<e.ptr.list.length?{value:e.map(e.ptr.list[e.index++]),done:!1}:{value:void 0,done:!0}}[Symbol.iterator](){return this}[Pe](){}},W=class{constructor(e){let t=this[D]={list:[],url:null,serialized:!0},r;if(Array.isArray(e))for(let n=0;n<e.length;n++)t.list.push(yA(e[n]));else if((r=IA(e))!=null){let n;for(;!(n=eA(r.next())).done;)t.list.push(yA(n.value))}else if((typeof e=="object"||typeof e=="function")&&e!=null){let n=Object.keys(e);for(let c=0;c<n.length;c++){let i=n[c],u=QA(i),h=P(e[i]),p=t.list.find(d=>d[0]===u);p?p[1]=h:t.list.push([u,h])}}else if(e!==void 0){let n=P(e);n=n[0]==="?"?n.substring(1):n,t.list=aA(n)}}get size(){return this[D].list.length}append(e,t){e=P(e),t=P(t),this[D].list.push([e,t]);let r=this[D];r.url&&r.serialized?(function(c,i){let u=c[w].url;u.query=u.query?`${u.query}&${i}`:i})(r.url,sA([[e,t]])):Q(r)}delete(e,t){e=P(e),t=t!=null?P(t):void 0;let{list:r}=this[D],n=0;for(;n<r.length;)r[n][0]===e&&(t==null||r[n][1]===t)?r.splice(n,1):n++;Q(this[D])}get(e){e=P(e);let{list:t}=this[D];for(let r=0;r<t.length;r++)if(t[r][0]===e)return t[r][1];return null}getAll(e){e=P(e);let t=[],{list:r}=this[D];for(let n=0;n<r.length;n++)r[n][0]===e&&t.push(r[n][1]);return t}has(e,t){e=P(e),t=t!=null?P(t):void 0;let{list:r}=this[D];for(let n=0;n<r.length;n++)if(r[n][0]===e&&(t==null||r[n][1]===t))return!0;return!1}set(e,t){e=P(e),t=P(t);let{list:r}=this[D],n=!1,c=!1,i=0;for(;i<r.length;)r[i][0]===e?n?(r.splice(i,1),c=!0):(n=!0,r[i][1]!==t&&(r[i][1]=t,c=!0),i++):i++;n||(r.push([e,t]),c=!0),c&&Q(this[D])}sort(){this[D].list.sort((e,t)=>e[0]<t[0]?-1:e[0]>t[0]?1:0),Q(this[D])}forEach(e,t){if(typeof e!="function")throw new TypeError('The "callback" argument must be of type function');let{list:r}=this[D];for(let n=0;n<r.length;n++)e.call(t,r[n][1],r[n][0],this)}entries(){return new x(this[D],e=>e)}keys(){return new x(this[D],e=>e[0])}values(){return new x(this[D],e=>e[1])}toString(){return sA(this[D].list)}[Symbol.iterator](){return this.entries()}};Object.defineProperty(W.prototype,Symbol.toStringTag,{value:"URLSearchParams",configurable:!0});var De=B.trackUsage.request.shape.command,Ce=B.trackUsage.response,be=B.checkEntitlement.request.omit({customerId:!0}).strict();function ke(A){let e=mA.parse(A.scope),t=PA({...A,scope:e},void 0,j),r=wA(A.push,t,e),n=0,c=!1;return{messaging:{async preference(i){let u=B.readMessagingPreference;return u.response.parse(await t.request(u.path,u.request.parse({channel:i}))).preference},async setPreference(i){let u=B.setMessagingPreference;return u.response.parse(await t.request(u.path,u.request.parse(i))).preference}},push:{sync:r.sync,read:r.read,recover:r.recover,tokenObserver:r.tokenObserver,recoveryObserver:r.recoveryObserver,async preference(){let i=B.readMessagingPreference;return i.response.parse(await t.request(i.path,{channel:"push"})).preference},async setPreference(i){let u=B.setMessagingPreference;return u.response.parse(await t.request(u.path,u.request.parse({...i,channel:"push"}))).preference}},identify(i){if(!/^gg_ct_[A-Za-z0-9_-]{32,128}$/.test(i))throw new H("INVALID_TOKEN","A Customer Token is required");r.identify(i),n++,t.identify(i),c=!0,r.start()},reset(){try{r.reset()}finally{n++,c=!1,t.reset(),r.start()}},async readHoldings(){let i=B.readHoldings;return X(t.request,i,{})},async checkEntitlement(i){let u=B.checkEntitlement;return X(t.request,{...u,request:be},i)},async trackUsage(i){if(!c)throw new H("UNAUTHENTICATED","Identify the Customer first");if(!A.usageReporter)throw new H("INVALID_REQUEST","Configure your authenticated backend usageReporter");let u=De.parse(i),h=n,p;try{p=await A.usageReporter(u)}catch(y){throw h!==n?new H("IDENTITY_CHANGED","Customer identity changed during usage reporting"):y}if(h!==n)throw new H("IDENTITY_CHANGED","Customer identity changed during usage reporting");let d=Ce.parse(p);if(d.scope.projectId!==e.projectId||d.scope.environment!==e.environment)throw new H("INVALID_RESPONSE","Usage response scope differs");return d}}}export{H as IndianaError,ke as createIndianaReactNative};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h}from"./chunk-X7JJAEQQ.js";import"./chunk-DSPLGTQI.js";import"./chunk-6HG7U6AU.js";import"./chunk-3BQFJANQ.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";export{f as formatCustomerDecimal,b as hostedRendererScript,a as hostedRendererShell,d as inspectCustomHtml,h as mountScreenPreview,e as prepareScreen,c as sanitizeCustomHtml,g as showPopup};
1
+ import{a,b,c,d,e,f,g,h}from"./chunk-ANOOBDW5.js";import"./chunk-DSPLGTQI.js";import"./chunk-SOQO2RDZ.js";import"./chunk-LMR2TM3X.js";import"./chunk-RRII2DMC.js";import"./chunk-KQCTDXVD.js";export{f as formatCustomerDecimal,b as hostedRendererScript,a as hostedRendererShell,d as inspectCustomHtml,h as mountScreenPreview,e as prepareScreen,c as sanitizeCustomHtml,g as showPopup};
package/dist/server.d.ts CHANGED
@@ -1,14 +1,14 @@
1
- import { F as FoundationApi, I as InvoiceModeParams } from './api-JVC7x2FV.js';
2
- import { u as IndianaServerOptions, v as FunnelLocalConfiguration, p as PaywallStartInput, g as PaywallSession, h as FeatureClientOptions, R as RemoteFeatureResult } from './funnel-local-client-D1Fe7CZ6.js';
3
- export { k as FeatureClient, l as FunnelNodeEvaluationContext, j as FunnelStartInput, L as LocalFunnelClient, n as LocalFunnelClientOptions, q as createFeatureClient, w as createFunnelStartClient, r as createLocalFunnelClient, t as evaluateFunnelNode } from './funnel-local-client-D1Fe7CZ6.js';
1
+ import { F as FoundationApi, I as InvoiceModeParams } from './api-B3FIE41b.js';
2
+ import { u as IndianaServerOptions, v as FunnelLocalConfiguration, p as PaywallStartInput, g as PaywallSession, h as FeatureClientOptions, R as RemoteFeatureResult } from './funnel-local-client-wbz-4gFx.js';
3
+ export { k as FeatureClient, l as FunnelNodeEvaluationContext, j as FunnelStartInput, L as LocalFunnelClient, n as LocalFunnelClientOptions, q as createFeatureClient, w as createFunnelStartClient, r as createLocalFunnelClient, t as evaluateFunnelNode } from './funnel-local-client-wbz-4gFx.js';
4
4
  import * as zod from 'zod';
5
5
  import { z } from 'zod';
6
- import { S as StackNode } from './screen-i6eHL11m.js';
7
- import { C as ConfigurationSync } from './configuration-sync-BexM2qbg.js';
8
- export { c as createConfigurationSync } from './configuration-sync-BexM2qbg.js';
6
+ import { S as StackNode } from './screen-BpAejkn0.js';
7
+ import { C as ConfigurationSync } from './configuration-sync-DNvKXHk-.js';
8
+ export { c as createConfigurationSync } from './configuration-sync-DNvKXHk-.js';
9
9
  import { J as JsonValue, E as EvaluationContext, s as stickyAssignmentDocumentSchema, F as FeatureResult } from './growth-rules-B4YYy64R.js';
10
- import { I as IndianaError } from './errors-DrdTlPwf.js';
11
- export { d as AiPricingOptions, b as AiTokenQuote, a as AiTokenUsage, A as AiUsageContext, e as AiUsageMiddlewareOptions, f as AiUsageRecord, g as aiPriceSnapshotSchema, h as aiTokenQuoteSchema, c as createAiPricing, i as createAiUsageMiddleware, j as createConfiguredAiPricing } from './ai-usage-JoM7ZWk-.js';
10
+ import { I as IndianaError } from './errors-C8lRYZ0n.js';
11
+ export { d as AiPricingOptions, b as AiTokenQuote, a as AiTokenUsage, A as AiUsageContext, e as AiUsageMiddlewareOptions, f as AiUsageRecord, g as aiPriceSnapshotSchema, h as aiTokenQuoteSchema, c as createAiPricing, i as createAiUsageMiddleware, j as createConfiguredAiPricing } from './ai-usage-BV-FlgWr.js';
12
12
  import 'zod/v4';
13
13
  import '@ai-sdk/provider';
14
14
 
@@ -34,6 +34,7 @@ declare const funnelDecisionCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<
34
34
  customerData: z.ZodOptional<z.ZodObject<{
35
35
  name: z.ZodOptional<z.ZodString>;
36
36
  email: z.ZodOptional<z.ZodUnion<readonly [z.ZodEmail, z.ZodLiteral<"">]>>;
37
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
37
38
  attributes: z.ZodOptional<z.ZodIntersection<z.ZodRecord<z.ZodString, z.ZodJSONSchema>, z.ZodObject<{
38
39
  tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
39
40
  }, z.core.$loose>>>;
@@ -144,6 +145,7 @@ declare const funnelCampaignCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<
144
145
  customerData: z.ZodOptional<z.ZodObject<{
145
146
  name: z.ZodOptional<z.ZodString>;
146
147
  email: z.ZodOptional<z.ZodUnion<readonly [z.ZodEmail, z.ZodLiteral<"">]>>;
148
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
147
149
  attributes: z.ZodOptional<z.ZodIntersection<z.ZodRecord<z.ZodString, z.ZodJSONSchema>, z.ZodObject<{
148
150
  tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
149
151
  }, z.core.$loose>>>;
@@ -165,6 +167,7 @@ declare const funnelCampaignCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<
165
167
  customerData: z.ZodOptional<z.ZodObject<{
166
168
  name: z.ZodOptional<z.ZodString>;
167
169
  email: z.ZodOptional<z.ZodUnion<readonly [z.ZodEmail, z.ZodLiteral<"">]>>;
170
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
168
171
  attributes: z.ZodOptional<z.ZodIntersection<z.ZodRecord<z.ZodString, z.ZodJSONSchema>, z.ZodObject<{
169
172
  tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
170
173
  }, z.core.$loose>>>;