@mochabug/adapt-web 1.0.0-rc47 → 1.0.0-rc48

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.
@@ -230,8 +230,10 @@ export class AdaptCapWidget {
230
230
  const token = e.detail?.token;
231
231
  const expiresStr = e.detail?.expires;
232
232
  const expires = expiresStr ? new Date(expiresStr) : new Date();
233
- // Auto-destroy after successful solve
234
- this.destroy();
233
+ // Defer destroy to next microtask so Cap.js solve() can finish
234
+ // without its internal state being nulled mid-execution by
235
+ // disconnectedCallback → cleanup when we remove the element.
236
+ queueMicrotask(() => this.destroy());
235
237
  if (token) {
236
238
  this.options.onSolve(token, expires);
237
239
  }
@@ -244,7 +246,7 @@ export class AdaptCapWidget {
244
246
  if (this.destroyed)
245
247
  return;
246
248
  console.error("[AdaptCapWidget] Cap.js error:", e.detail);
247
- this.destroy();
249
+ queueMicrotask(() => this.destroy());
248
250
  this.options.onError?.(new Error(e.detail?.message || "Cap.js error"));
249
251
  }));
250
252
  // Mount to DOM
@@ -1 +1 @@
1
- {"version":3,"file":"AdaptCapWidget.js","sourceRoot":"","sources":["../../src/AdaptCapWidget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdaptCapWidget.js","sourceRoot":"","sources":["../../src/AdaptCapWidget.ts"],"names":[],"mappings":"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"}
@@ -7136,7 +7136,7 @@ var MbAdapt = (() => {
7136
7136
  const token = e.detail?.token;
7137
7137
  const expiresStr = e.detail?.expires;
7138
7138
  const expires = expiresStr ? new Date(expiresStr) : /* @__PURE__ */ new Date();
7139
- this.destroy();
7139
+ queueMicrotask(() => this.destroy());
7140
7140
  if (token) {
7141
7141
  this.options.onSolve(token, expires);
7142
7142
  } else {
@@ -7146,7 +7146,7 @@ var MbAdapt = (() => {
7146
7146
  this.widgetElement.addEventListener("error", ((e) => {
7147
7147
  if (this.destroyed) return;
7148
7148
  console.error("[AdaptCapWidget] Cap.js error:", e.detail);
7149
- this.destroy();
7149
+ queueMicrotask(() => this.destroy());
7150
7150
  this.options.onError?.(new Error(e.detail?.message || "Cap.js error"));
7151
7151
  }));
7152
7152
  innerContainer.appendChild(this.widgetElement);
@@ -7485,7 +7485,7 @@ var MbAdapt = (() => {
7485
7485
  // src/index.ts
7486
7486
  if (typeof window !== "undefined" && true && !window.CAP_CUSTOM_WASM_URL) {
7487
7487
  window.CAP_CUSTOM_WASM_URL = new URL(
7488
- "https://cdn.mochabug.com/adapt/web/1.0.0-rc47/cap_wasm.js",
7488
+ "https://cdn.mochabug.com/adapt/web/1.0.0-rc48/cap_wasm.js",
7489
7489
  window.location.href
7490
7490
  ).href;
7491
7491
  }
@@ -136,7 +136,7 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
136
136
  --mb-cap-font-size: 14px;
137
137
  }
138
138
  }
139
- `,document.head.appendChild(t)}mountWidget(){this.widgetContainer=document.createElement("div"),this.widgetContainer.className="mb-adapt-cap";let t=document.createElement("div");if(t.className="mb-adapt-cap__container",this.widgetElement=document.createElement("cap-widget"),this.widgetElement.setAttribute("data-cap-api-endpoint",`/adapt-cap-${this.options.automationId}/`),this.options.workerCount&&this.widgetElement.setAttribute("data-cap-worker-count",String(this.options.workerCount)),this.options.i18n){let{i18n:n}=this.options;n.verifyingLabel&&this.widgetElement.setAttribute("data-cap-i18n-verifying-label",n.verifyingLabel),n.initialState&&this.widgetElement.setAttribute("data-cap-i18n-initial-state",n.initialState),n.solvedLabel&&this.widgetElement.setAttribute("data-cap-i18n-solved-label",n.solvedLabel),n.errorLabel&&this.widgetElement.setAttribute("data-cap-i18n-error-label",n.errorLabel)}this.widgetElement.addEventListener("solve",(n=>{if(this.destroyed)return;let r=n.detail?.token,o=n.detail?.expires,a=o?new Date(o):new Date;this.destroy(),r?this.options.onSolve(r,a):this.options.onError?.(new Error("No token received from Cap.js"))})),this.widgetElement.addEventListener("error",(n=>{this.destroyed||(console.error("[AdaptCapWidget] Cap.js error:",n.detail),this.destroy(),this.options.onError?.(new Error(n.detail?.message||"Cap.js error")))})),t.appendChild(this.widgetElement),this.widgetContainer.appendChild(t),this.containerElement.appendChild(this.widgetContainer)}setDarkMode(t){this.widgetContainer&&(t?this.widgetContainer.classList.add("mb-adapt-cap--dark"):this.widgetContainer.classList.remove("mb-adapt-cap--dark"))}destroy(){this.destroyed||(this.destroyed=!0,Za(),this.widgetContainer&&this.widgetContainer.parentNode&&this.widgetContainer.parentNode.removeChild(this.widgetContainer),this.widgetContainer=null,this.widgetElement=null)}};function Qn(e,t){return`${e}${t?`#mb_token=${encodeURIComponent(t)}`:""}`}var Vs=["automation-id","session-token","auth-token","transmitter","challenge-token","requires-challenge","inherit-token","fork-display-mode","side-by-side-split","dialog-backdrop-close","dark-mode","auto-resizing"],xs=typeof HTMLElement<"u"?HTMLElement:class{},Qe=class extends xs{constructor(){super();this._client=null}static get observedAttributes(){return Vs}get automationId(){return this.getAttribute("automation-id")}set automationId(n){n===null?this.removeAttribute("automation-id"):this.setAttribute("automation-id",n)}get darkMode(){return this.hasAttribute("dark-mode")}set darkMode(n){n?this.setAttribute("dark-mode",""):this.removeAttribute("dark-mode")}get autoResizing(){return this.hasAttribute("auto-resizing")}set autoResizing(n){n?this.setAttribute("auto-resizing",""):this.removeAttribute("auto-resizing")}get forkDisplayMode(){return this.getAttribute("fork-display-mode")==="dialog"?"dialog":"side-by-side"}set forkDisplayMode(n){this.setAttribute("fork-display-mode",n)}get dialogBackdropClose(){return this.hasAttribute("dialog-backdrop-close")}set dialogBackdropClose(n){n?this.setAttribute("dialog-backdrop-close",""):this.removeAttribute("dialog-backdrop-close")}connectedCallback(){queueMicrotask(()=>this._tryInit())}disconnectedCallback(){this._destroyClient()}attributeChangedCallback(n,r,o){if(r!==o){if(n==="automation-id"){this._destroyClient(),queueMicrotask(()=>this._tryInit());return}if(this._client)switch(n){case"fork-display-mode":this._client.setForkDisplayMode(this.forkDisplayMode);break;case"dialog-backdrop-close":this._client.setDialogBackdropClose(this.dialogBackdropClose);break;case"dark-mode":this._client.setDarkMode(this.darkMode);break;case"auto-resizing":this._client.setAutoResizing(this.autoResizing);break}}}_tryInit(){if(this._client||!this.isConnected)return;let n=this.automationId;if(!n)return;let r=this.getAttribute("session-token"),o=this.getAttribute("auth-token"),a=this.getAttribute("transmitter"),i=this.getAttribute("challenge-token"),s=this.hasAttribute("requires-challenge"),u=this.getAttribute("inherit-token"),m=this.getAttribute("side-by-side-split"),f={container:this,id:n,forkDisplayMode:this.forkDisplayMode,dialogBackdropClose:this.dialogBackdropClose,darkMode:this.darkMode,autoResizing:this.autoResizing,onSession:(I,d)=>{this.onSessionCallback?.(I,d),this.dispatchEvent(new CustomEvent("adapt-session",{detail:{status:I,fork:d},bubbles:!0}))},onOutput:I=>{this.onOutputCallback?.(I),this.dispatchEvent(new CustomEvent("adapt-output",{detail:{output:I},bubbles:!0}))}};r&&(f.sessionToken=r),o&&(f.authToken=o),a&&(f.transmitter=a),i&&(f.challengeToken=i),s&&(f.requiresChallenge=!0),u&&(f.inheritToken=u),m!==null&&(f.sideBySideSplit=Number(m)),this.signals!==void 0&&(f.signals=this.signals),this.capWidgetOptions!==void 0&&(f.capWidgetOptions=this.capWidgetOptions),this.inheritFrom!==void 0&&(f.inheritFrom=this.inheritFrom),this.classNames!==void 0&&(f.classNames=this.classNames),this.styles!==void 0&&(f.styles=this.styles),this._client=new _e(f)}_destroyClient(){this._client&&(this._client.destroy(),this._client=null)}};if(typeof customElements<"u"&&!customElements.get("adapt-automation")){customElements.define("adapt-automation",Qe);let e="adapt-element-display";if(!document.getElementById(e)){let t=document.createElement("style");t.id=e,t.textContent="adapt-automation, adapt-cap { display: block; }",document.head.appendChild(t)}}var Xs=["automation-id","dark-mode","worker-count"],Ss=typeof HTMLElement<"u"?HTMLElement:class{},Oe=class extends Ss{constructor(){super();this._widget=null}static get observedAttributes(){return Xs}get client(){return this._client}set client(n){this._client=n,this._destroyWidget(),this._tryInit()}get automationId(){return this.getAttribute("automation-id")}set automationId(n){n===null?this.removeAttribute("automation-id"):this.setAttribute("automation-id",n)}get darkMode(){return this.hasAttribute("dark-mode")}set darkMode(n){n?this.setAttribute("dark-mode",""):this.removeAttribute("dark-mode")}connectedCallback(){this._tryInit()}disconnectedCallback(){this._destroyWidget()}attributeChangedCallback(n,r,o){if(r!==o){if(n==="automation-id"){this._destroyWidget(),this._tryInit();return}if(n==="dark-mode"){this._widget?.setDarkMode(this.darkMode);return}}}_tryInit(){if(this._widget||!this.isConnected)return;let n=this.automationId;if(!n||!this._client)return;let r=this.getAttribute("worker-count");this._widget=new ie({container:this,automationId:n,client:this._client,onSolve:(o,a)=>{this.onSolveCallback?.(o,a),this.dispatchEvent(new CustomEvent("adapt-cap-solve",{detail:{token:o,expires:a},bubbles:!0}))},onError:o=>{this.onErrorCallback?.(o),this.dispatchEvent(new CustomEvent("adapt-cap-error",{detail:{error:o},bubbles:!0}))},...r!==null&&{workerCount:Number(r)},...this.i18n!==void 0&&{i18n:this.i18n}}),this.darkMode&&this._widget.setDarkMode(!0)}_destroyWidget(){this._widget&&(this._widget.destroy(),this._widget=null)}};if(typeof customElements<"u"&&!customElements.get("adapt-cap")){customElements.define("adapt-cap",Oe);let e="adapt-element-display";if(!document.getElementById(e)){let t=document.createElement("style");t.id=e,t.textContent="adapt-automation, adapt-cap { display: block; }",document.head.appendChild(t)}}typeof window<"u"&&!window.CAP_CUSTOM_WASM_URL&&(window.CAP_CUSTOM_WASM_URL=new URL("https://cdn.mochabug.com/adapt/web/1.0.0-rc47/cap_wasm.js",window.location.href).href);var Bs=`
139
+ `,document.head.appendChild(t)}mountWidget(){this.widgetContainer=document.createElement("div"),this.widgetContainer.className="mb-adapt-cap";let t=document.createElement("div");if(t.className="mb-adapt-cap__container",this.widgetElement=document.createElement("cap-widget"),this.widgetElement.setAttribute("data-cap-api-endpoint",`/adapt-cap-${this.options.automationId}/`),this.options.workerCount&&this.widgetElement.setAttribute("data-cap-worker-count",String(this.options.workerCount)),this.options.i18n){let{i18n:n}=this.options;n.verifyingLabel&&this.widgetElement.setAttribute("data-cap-i18n-verifying-label",n.verifyingLabel),n.initialState&&this.widgetElement.setAttribute("data-cap-i18n-initial-state",n.initialState),n.solvedLabel&&this.widgetElement.setAttribute("data-cap-i18n-solved-label",n.solvedLabel),n.errorLabel&&this.widgetElement.setAttribute("data-cap-i18n-error-label",n.errorLabel)}this.widgetElement.addEventListener("solve",(n=>{if(this.destroyed)return;let r=n.detail?.token,o=n.detail?.expires,a=o?new Date(o):new Date;queueMicrotask(()=>this.destroy()),r?this.options.onSolve(r,a):this.options.onError?.(new Error("No token received from Cap.js"))})),this.widgetElement.addEventListener("error",(n=>{this.destroyed||(console.error("[AdaptCapWidget] Cap.js error:",n.detail),queueMicrotask(()=>this.destroy()),this.options.onError?.(new Error(n.detail?.message||"Cap.js error")))})),t.appendChild(this.widgetElement),this.widgetContainer.appendChild(t),this.containerElement.appendChild(this.widgetContainer)}setDarkMode(t){this.widgetContainer&&(t?this.widgetContainer.classList.add("mb-adapt-cap--dark"):this.widgetContainer.classList.remove("mb-adapt-cap--dark"))}destroy(){this.destroyed||(this.destroyed=!0,Za(),this.widgetContainer&&this.widgetContainer.parentNode&&this.widgetContainer.parentNode.removeChild(this.widgetContainer),this.widgetContainer=null,this.widgetElement=null)}};function Qn(e,t){return`${e}${t?`#mb_token=${encodeURIComponent(t)}`:""}`}var Vs=["automation-id","session-token","auth-token","transmitter","challenge-token","requires-challenge","inherit-token","fork-display-mode","side-by-side-split","dialog-backdrop-close","dark-mode","auto-resizing"],xs=typeof HTMLElement<"u"?HTMLElement:class{},Qe=class extends xs{constructor(){super();this._client=null}static get observedAttributes(){return Vs}get automationId(){return this.getAttribute("automation-id")}set automationId(n){n===null?this.removeAttribute("automation-id"):this.setAttribute("automation-id",n)}get darkMode(){return this.hasAttribute("dark-mode")}set darkMode(n){n?this.setAttribute("dark-mode",""):this.removeAttribute("dark-mode")}get autoResizing(){return this.hasAttribute("auto-resizing")}set autoResizing(n){n?this.setAttribute("auto-resizing",""):this.removeAttribute("auto-resizing")}get forkDisplayMode(){return this.getAttribute("fork-display-mode")==="dialog"?"dialog":"side-by-side"}set forkDisplayMode(n){this.setAttribute("fork-display-mode",n)}get dialogBackdropClose(){return this.hasAttribute("dialog-backdrop-close")}set dialogBackdropClose(n){n?this.setAttribute("dialog-backdrop-close",""):this.removeAttribute("dialog-backdrop-close")}connectedCallback(){queueMicrotask(()=>this._tryInit())}disconnectedCallback(){this._destroyClient()}attributeChangedCallback(n,r,o){if(r!==o){if(n==="automation-id"){this._destroyClient(),queueMicrotask(()=>this._tryInit());return}if(this._client)switch(n){case"fork-display-mode":this._client.setForkDisplayMode(this.forkDisplayMode);break;case"dialog-backdrop-close":this._client.setDialogBackdropClose(this.dialogBackdropClose);break;case"dark-mode":this._client.setDarkMode(this.darkMode);break;case"auto-resizing":this._client.setAutoResizing(this.autoResizing);break}}}_tryInit(){if(this._client||!this.isConnected)return;let n=this.automationId;if(!n)return;let r=this.getAttribute("session-token"),o=this.getAttribute("auth-token"),a=this.getAttribute("transmitter"),i=this.getAttribute("challenge-token"),s=this.hasAttribute("requires-challenge"),u=this.getAttribute("inherit-token"),m=this.getAttribute("side-by-side-split"),f={container:this,id:n,forkDisplayMode:this.forkDisplayMode,dialogBackdropClose:this.dialogBackdropClose,darkMode:this.darkMode,autoResizing:this.autoResizing,onSession:(I,d)=>{this.onSessionCallback?.(I,d),this.dispatchEvent(new CustomEvent("adapt-session",{detail:{status:I,fork:d},bubbles:!0}))},onOutput:I=>{this.onOutputCallback?.(I),this.dispatchEvent(new CustomEvent("adapt-output",{detail:{output:I},bubbles:!0}))}};r&&(f.sessionToken=r),o&&(f.authToken=o),a&&(f.transmitter=a),i&&(f.challengeToken=i),s&&(f.requiresChallenge=!0),u&&(f.inheritToken=u),m!==null&&(f.sideBySideSplit=Number(m)),this.signals!==void 0&&(f.signals=this.signals),this.capWidgetOptions!==void 0&&(f.capWidgetOptions=this.capWidgetOptions),this.inheritFrom!==void 0&&(f.inheritFrom=this.inheritFrom),this.classNames!==void 0&&(f.classNames=this.classNames),this.styles!==void 0&&(f.styles=this.styles),this._client=new _e(f)}_destroyClient(){this._client&&(this._client.destroy(),this._client=null)}};if(typeof customElements<"u"&&!customElements.get("adapt-automation")){customElements.define("adapt-automation",Qe);let e="adapt-element-display";if(!document.getElementById(e)){let t=document.createElement("style");t.id=e,t.textContent="adapt-automation, adapt-cap { display: block; }",document.head.appendChild(t)}}var Xs=["automation-id","dark-mode","worker-count"],Ss=typeof HTMLElement<"u"?HTMLElement:class{},Oe=class extends Ss{constructor(){super();this._widget=null}static get observedAttributes(){return Xs}get client(){return this._client}set client(n){this._client=n,this._destroyWidget(),this._tryInit()}get automationId(){return this.getAttribute("automation-id")}set automationId(n){n===null?this.removeAttribute("automation-id"):this.setAttribute("automation-id",n)}get darkMode(){return this.hasAttribute("dark-mode")}set darkMode(n){n?this.setAttribute("dark-mode",""):this.removeAttribute("dark-mode")}connectedCallback(){this._tryInit()}disconnectedCallback(){this._destroyWidget()}attributeChangedCallback(n,r,o){if(r!==o){if(n==="automation-id"){this._destroyWidget(),this._tryInit();return}if(n==="dark-mode"){this._widget?.setDarkMode(this.darkMode);return}}}_tryInit(){if(this._widget||!this.isConnected)return;let n=this.automationId;if(!n||!this._client)return;let r=this.getAttribute("worker-count");this._widget=new ie({container:this,automationId:n,client:this._client,onSolve:(o,a)=>{this.onSolveCallback?.(o,a),this.dispatchEvent(new CustomEvent("adapt-cap-solve",{detail:{token:o,expires:a},bubbles:!0}))},onError:o=>{this.onErrorCallback?.(o),this.dispatchEvent(new CustomEvent("adapt-cap-error",{detail:{error:o},bubbles:!0}))},...r!==null&&{workerCount:Number(r)},...this.i18n!==void 0&&{i18n:this.i18n}}),this.darkMode&&this._widget.setDarkMode(!0)}_destroyWidget(){this._widget&&(this._widget.destroy(),this._widget=null)}};if(typeof customElements<"u"&&!customElements.get("adapt-cap")){customElements.define("adapt-cap",Oe);let e="adapt-element-display";if(!document.getElementById(e)){let t=document.createElement("style");t.id=e,t.textContent="adapt-automation, adapt-cap { display: block; }",document.head.appendChild(t)}}typeof window<"u"&&!window.CAP_CUSTOM_WASM_URL&&(window.CAP_CUSTOM_WASM_URL=new URL("https://cdn.mochabug.com/adapt/web/1.0.0-rc48/cap_wasm.js",window.location.href).href);var Bs=`
140
140
  .mb-adapt {
141
141
  width: 100%;
142
142
  min-height: inherit;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mochabug/adapt-web",
3
- "version": "1.0.0-rc47",
3
+ "version": "1.0.0-rc48",
4
4
  "description": "Browser client library for Adapt automation platform",
5
5
  "type": "module",
6
6
  "main": "./dist/esm/index.js",
@@ -48,6 +48,6 @@
48
48
  },
49
49
  "dependencies": {
50
50
  "@cap.js/widget": "^0.1.41",
51
- "@mochabug/adapt-core": "^1.0.0-rc43"
51
+ "@mochabug/adapt-core": "^1.0.0-rc44"
52
52
  }
53
53
  }