@mochabug/adapt-web 1.0.0-rc49 → 1.0.0-rc51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/index.js +80 -25
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +3 -2
- package/dist/umd/adapt-web.js +77 -25
- package/dist/umd/adapt-web.min.js +60 -24
- package/package.json +2 -2
package/dist/esm/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import { createConnectClient } from "@mochabug/adapt-core/connect";
|
|
|
9
9
|
import { AdaptCapWidget } from "./AdaptCapWidget.js";
|
|
10
10
|
import { getIframeSrc } from "./iframe-url.js";
|
|
11
11
|
// Re-export standalone Cap widget for independent use
|
|
12
|
-
export { AdaptCapWidget } from "./AdaptCapWidget.js";
|
|
12
|
+
export { AdaptCapWidget, } from "./AdaptCapWidget.js";
|
|
13
13
|
// Re-export challenge functions for direct use
|
|
14
14
|
export { createChallenge, redeemChallenge } from "./cap-adapter.js";
|
|
15
15
|
// Re-export createConnectClient for standalone Cap widget usage
|
|
@@ -36,11 +36,13 @@ const DEFAULT_STYLES = `
|
|
|
36
36
|
--mb-adapt-dialog-z: 1000;
|
|
37
37
|
--mb-adapt-dialog-width: 80%;
|
|
38
38
|
--mb-adapt-dialog-height: 80%;
|
|
39
|
-
--mb-adapt-drag-handle-width:
|
|
40
|
-
--mb-adapt-drag-handle-color:
|
|
41
|
-
--mb-adapt-drag-handle-hover:
|
|
42
|
-
--mb-adapt-
|
|
43
|
-
--mb-adapt-
|
|
39
|
+
--mb-adapt-drag-handle-width: 4px;
|
|
40
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
41
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
42
|
+
--mb-adapt-drag-indicator: #94a3b8;
|
|
43
|
+
--mb-adapt-drag-indicator-hover: #64748b;
|
|
44
|
+
--mb-adapt-toolbar-height: 36px;
|
|
45
|
+
--mb-adapt-toolbar-bg: #f3f4f6;
|
|
44
46
|
--mb-adapt-toolbar-border: #e5e7eb;
|
|
45
47
|
--mb-adapt-toolbar-color: #6b7280;
|
|
46
48
|
--mb-adapt-toolbar-btn-hover: #e5e7eb;
|
|
@@ -50,6 +52,9 @@ const DEFAULT_STYLES = `
|
|
|
50
52
|
--mb-adapt-button-color: #374151;
|
|
51
53
|
--mb-adapt-button-hover-bg: #e5e7eb;
|
|
52
54
|
|
|
55
|
+
--mb-adapt-fork-border: rgba(0, 0, 0, 0.10);
|
|
56
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
|
|
57
|
+
|
|
53
58
|
/* Cap.js widget customization variables */
|
|
54
59
|
--mb-adapt-cap-background: #ffffff;
|
|
55
60
|
--mb-adapt-cap-border-color: #e2e8f0;
|
|
@@ -76,15 +81,20 @@ const DEFAULT_STYLES = `
|
|
|
76
81
|
--mb-adapt-dialog-bg: #1f2937;
|
|
77
82
|
--mb-adapt-banner-bg: #111827;
|
|
78
83
|
--mb-adapt-banner-border: #374151;
|
|
79
|
-
--mb-adapt-drag-handle-color:
|
|
80
|
-
--mb-adapt-drag-handle-hover:
|
|
81
|
-
--mb-adapt-
|
|
84
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
85
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
86
|
+
--mb-adapt-drag-indicator: #64748b;
|
|
87
|
+
--mb-adapt-drag-indicator-hover: #94a3b8;
|
|
88
|
+
--mb-adapt-toolbar-bg: #1f2937;
|
|
82
89
|
--mb-adapt-toolbar-border: #374151;
|
|
83
90
|
--mb-adapt-toolbar-color: #9ca3af;
|
|
84
91
|
--mb-adapt-toolbar-btn-hover: #374151;
|
|
85
92
|
--mb-adapt-button-color: #e5e7eb;
|
|
86
93
|
--mb-adapt-button-hover-bg: #374151;
|
|
87
94
|
|
|
95
|
+
--mb-adapt-fork-border: rgba(255, 255, 255, 0.08);
|
|
96
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
97
|
+
|
|
88
98
|
/* Cap.js widget dark mode */
|
|
89
99
|
--mb-adapt-cap-background: #1e293b;
|
|
90
100
|
--mb-adapt-cap-border-color: #334155;
|
|
@@ -104,6 +114,7 @@ const DEFAULT_STYLES = `
|
|
|
104
114
|
flex: 1;
|
|
105
115
|
min-height: 0;
|
|
106
116
|
background: transparent;
|
|
117
|
+
gap: 6px;
|
|
107
118
|
}
|
|
108
119
|
|
|
109
120
|
.mb-adapt__frame {
|
|
@@ -118,6 +129,16 @@ const DEFAULT_STYLES = `
|
|
|
118
129
|
display: none;
|
|
119
130
|
}
|
|
120
131
|
|
|
132
|
+
.mb-adapt__frame--fork {
|
|
133
|
+
border: 1px solid var(--mb-adapt-fork-border);
|
|
134
|
+
box-shadow: var(--mb-adapt-fork-shadow);
|
|
135
|
+
border-radius: var(--mb-adapt-border-radius);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.mb-adapt__frame--fork .mb-adapt__iframe {
|
|
139
|
+
border-radius: 0;
|
|
140
|
+
}
|
|
141
|
+
|
|
121
142
|
.mb-adapt__iframe {
|
|
122
143
|
width: 100%;
|
|
123
144
|
height: 100%;
|
|
@@ -147,8 +168,8 @@ const DEFAULT_STYLES = `
|
|
|
147
168
|
background-color: var(--mb-adapt-drag-handle-color);
|
|
148
169
|
cursor: ew-resize;
|
|
149
170
|
z-index: 10;
|
|
150
|
-
|
|
151
|
-
|
|
171
|
+
border-radius: 2px;
|
|
172
|
+
transition: left 0.15s ease-out;
|
|
152
173
|
}
|
|
153
174
|
|
|
154
175
|
.mb-adapt__drag-handle::after {
|
|
@@ -157,21 +178,20 @@ const DEFAULT_STYLES = `
|
|
|
157
178
|
top: 50%;
|
|
158
179
|
left: 50%;
|
|
159
180
|
transform: translate(-50%, -50%);
|
|
160
|
-
width:
|
|
161
|
-
height:
|
|
162
|
-
|
|
163
|
-
background-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
color: var(--mb-adapt-drag-handle-hover);
|
|
181
|
+
width: 3px;
|
|
182
|
+
height: 32px;
|
|
183
|
+
border-radius: 2px;
|
|
184
|
+
background-color: var(--mb-adapt-drag-indicator);
|
|
185
|
+
opacity: 0.4;
|
|
186
|
+
transition: opacity 0.2s, background-color 0.2s;
|
|
167
187
|
}
|
|
168
188
|
|
|
169
189
|
.mb-adapt__drag-handle:hover {
|
|
170
190
|
background-color: var(--mb-adapt-drag-handle-hover);
|
|
171
|
-
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
|
|
172
191
|
}
|
|
173
192
|
|
|
174
193
|
.mb-adapt__drag-handle:hover::after {
|
|
194
|
+
background-color: var(--mb-adapt-drag-indicator-hover);
|
|
175
195
|
opacity: 0.8;
|
|
176
196
|
}
|
|
177
197
|
|
|
@@ -397,15 +417,31 @@ const DEFAULT_STYLES = `
|
|
|
397
417
|
.mb-adapt__toolbar {
|
|
398
418
|
display: flex;
|
|
399
419
|
align-items: center;
|
|
400
|
-
justify-content:
|
|
420
|
+
justify-content: space-between;
|
|
401
421
|
height: var(--mb-adapt-toolbar-height);
|
|
402
422
|
background: var(--mb-adapt-toolbar-bg);
|
|
403
423
|
border-bottom: 1px solid var(--mb-adapt-toolbar-border);
|
|
404
|
-
padding: 0
|
|
424
|
+
padding: 0 8px 0 10px;
|
|
405
425
|
flex-shrink: 0;
|
|
406
|
-
|
|
407
|
-
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
.mb-adapt__toolbar-title {
|
|
429
|
+
font-size: 12px;
|
|
430
|
+
font-weight: 500;
|
|
431
|
+
color: var(--mb-adapt-toolbar-color);
|
|
432
|
+
overflow: hidden;
|
|
433
|
+
text-overflow: ellipsis;
|
|
434
|
+
white-space: nowrap;
|
|
435
|
+
min-width: 0;
|
|
436
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
437
|
+
user-select: none;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
.mb-adapt__toolbar-actions {
|
|
441
|
+
display: flex;
|
|
442
|
+
align-items: center;
|
|
408
443
|
gap: 2px;
|
|
444
|
+
flex-shrink: 0;
|
|
409
445
|
}
|
|
410
446
|
|
|
411
447
|
.mb-adapt__toolbar-btn {
|
|
@@ -550,6 +586,7 @@ export class AdaptWebClient {
|
|
|
550
586
|
this.mainExpandButton = null;
|
|
551
587
|
this.forkExpandButton = null;
|
|
552
588
|
this.forkToolbarElement = null;
|
|
589
|
+
this.forkTitleElement = null;
|
|
553
590
|
// Dialog elements
|
|
554
591
|
this.mainContainer = null;
|
|
555
592
|
this.dialogBackdrop = null;
|
|
@@ -764,6 +801,7 @@ export class AdaptWebClient {
|
|
|
764
801
|
this.mainExpandButton = null;
|
|
765
802
|
this.forkExpandButton = null;
|
|
766
803
|
this.forkToolbarElement = null;
|
|
804
|
+
this.forkTitleElement = null;
|
|
767
805
|
this.mainContainer = null;
|
|
768
806
|
this.dialogBackdrop = null;
|
|
769
807
|
this.dialogElement = null;
|
|
@@ -1118,6 +1156,7 @@ export class AdaptWebClient {
|
|
|
1118
1156
|
this.mainExpandButton = null;
|
|
1119
1157
|
this.forkExpandButton = null;
|
|
1120
1158
|
this.forkToolbarElement = null;
|
|
1159
|
+
this.forkTitleElement = null;
|
|
1121
1160
|
this.mainContainer = null;
|
|
1122
1161
|
this.dialogBackdrop = null;
|
|
1123
1162
|
this.dialogElement = null;
|
|
@@ -1258,6 +1297,10 @@ export class AdaptWebClient {
|
|
|
1258
1297
|
return b.time - a.time;
|
|
1259
1298
|
});
|
|
1260
1299
|
this.currentFork = this.forkQueue.shift();
|
|
1300
|
+
// Update toolbar title
|
|
1301
|
+
if (this.forkTitleElement) {
|
|
1302
|
+
this.forkTitleElement.textContent = this.currentFork.fork || "Fork";
|
|
1303
|
+
}
|
|
1261
1304
|
// Update fork iframe and show dialog
|
|
1262
1305
|
this.updateForkIframe();
|
|
1263
1306
|
if (this.options.forkDisplayMode === "dialog") {
|
|
@@ -1431,6 +1474,7 @@ export class AdaptWebClient {
|
|
|
1431
1474
|
this.dragHandleElement.classList.add("mb-adapt__frame--hidden");
|
|
1432
1475
|
this.mainExpandButton.classList.remove("mb-adapt__expand-button--visible");
|
|
1433
1476
|
this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible");
|
|
1477
|
+
this.emitForkActive();
|
|
1434
1478
|
return;
|
|
1435
1479
|
}
|
|
1436
1480
|
// Responsive mode: show only fork when container is narrow
|
|
@@ -1442,6 +1486,7 @@ export class AdaptWebClient {
|
|
|
1442
1486
|
this.dragHandleElement.classList.add("mb-adapt__frame--hidden");
|
|
1443
1487
|
this.mainExpandButton.classList.add("mb-adapt__expand-button--visible");
|
|
1444
1488
|
this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible");
|
|
1489
|
+
this.emitForkActive();
|
|
1445
1490
|
return;
|
|
1446
1491
|
}
|
|
1447
1492
|
// Normal side-by-side mode
|
|
@@ -1503,6 +1548,14 @@ export class AdaptWebClient {
|
|
|
1503
1548
|
createForkToolbar() {
|
|
1504
1549
|
const toolbar = document.createElement("div");
|
|
1505
1550
|
toolbar.className = this.options.classNames?.toolbar || "mb-adapt__toolbar";
|
|
1551
|
+
// Title label
|
|
1552
|
+
const titleSpan = document.createElement("span");
|
|
1553
|
+
titleSpan.className = "mb-adapt__toolbar-title";
|
|
1554
|
+
titleSpan.textContent = this.currentFork?.fork || "Fork";
|
|
1555
|
+
this.forkTitleElement = titleSpan;
|
|
1556
|
+
// Actions container
|
|
1557
|
+
const actionsDiv = document.createElement("div");
|
|
1558
|
+
actionsDiv.className = "mb-adapt__toolbar-actions";
|
|
1506
1559
|
// Minimize button (horizontal line icon)
|
|
1507
1560
|
const minimizeBtn = document.createElement("button");
|
|
1508
1561
|
minimizeBtn.className =
|
|
@@ -1522,8 +1575,10 @@ export class AdaptWebClient {
|
|
|
1522
1575
|
exitBtn.addEventListener("click", () => {
|
|
1523
1576
|
this.handleForkExit();
|
|
1524
1577
|
});
|
|
1525
|
-
|
|
1526
|
-
|
|
1578
|
+
actionsDiv.appendChild(minimizeBtn);
|
|
1579
|
+
actionsDiv.appendChild(exitBtn);
|
|
1580
|
+
toolbar.appendChild(titleSpan);
|
|
1581
|
+
toolbar.appendChild(actionsDiv);
|
|
1527
1582
|
return toolbar;
|
|
1528
1583
|
}
|
|
1529
1584
|
handleForkMinimize() {
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ declare global {
|
|
|
6
6
|
import { configure, resetConfig } from "@mochabug/adapt-core";
|
|
7
7
|
import { createConnectClient } from "@mochabug/adapt-core/connect";
|
|
8
8
|
import type { AdaptWebClientOptions } from "./types.js";
|
|
9
|
-
export type { AdaptWebClientOptions, CapWidgetI18n, CapWidgetOptions, ChallengeInfo, Output, RedeemedChallenge, SignalValue, StatusJson } from "./types.js";
|
|
10
|
-
export { AdaptCapWidget, type AdaptCapWidgetOptions } from "./AdaptCapWidget.js";
|
|
9
|
+
export type { AdaptWebClientOptions, CapWidgetI18n, CapWidgetOptions, ChallengeInfo, Output, RedeemedChallenge, SignalValue, StatusJson, } from "./types.js";
|
|
10
|
+
export { AdaptCapWidget, type AdaptCapWidgetOptions, } from "./AdaptCapWidget.js";
|
|
11
11
|
export { createChallenge, redeemChallenge } from "./cap-adapter.js";
|
|
12
12
|
export type { SignalData } from "@mochabug/adapt-core";
|
|
13
13
|
export { createConnectClient };
|
|
@@ -58,6 +58,7 @@ export declare class AdaptWebClient {
|
|
|
58
58
|
private mainExpandButton;
|
|
59
59
|
private forkExpandButton;
|
|
60
60
|
private forkToolbarElement;
|
|
61
|
+
private forkTitleElement;
|
|
61
62
|
private mainContainer;
|
|
62
63
|
private dialogBackdrop;
|
|
63
64
|
private dialogElement;
|
package/dist/umd/adapt-web.js
CHANGED
|
@@ -7494,7 +7494,7 @@ var MbAdapt = (() => {
|
|
|
7494
7494
|
// src/index.ts
|
|
7495
7495
|
if (typeof window !== "undefined" && true && !window.CAP_CUSTOM_WASM_URL) {
|
|
7496
7496
|
window.CAP_CUSTOM_WASM_URL = new URL(
|
|
7497
|
-
"https://cdn.mochabug.com/adapt/web/1.0.0-
|
|
7497
|
+
"https://cdn.mochabug.com/adapt/web/1.0.0-rc51/cap_wasm.js",
|
|
7498
7498
|
window.location.href
|
|
7499
7499
|
).href;
|
|
7500
7500
|
}
|
|
@@ -7512,11 +7512,13 @@ var MbAdapt = (() => {
|
|
|
7512
7512
|
--mb-adapt-dialog-z: 1000;
|
|
7513
7513
|
--mb-adapt-dialog-width: 80%;
|
|
7514
7514
|
--mb-adapt-dialog-height: 80%;
|
|
7515
|
-
--mb-adapt-drag-handle-width:
|
|
7516
|
-
--mb-adapt-drag-handle-color:
|
|
7517
|
-
--mb-adapt-drag-handle-hover:
|
|
7518
|
-
--mb-adapt-
|
|
7519
|
-
--mb-adapt-
|
|
7515
|
+
--mb-adapt-drag-handle-width: 4px;
|
|
7516
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
7517
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
7518
|
+
--mb-adapt-drag-indicator: #94a3b8;
|
|
7519
|
+
--mb-adapt-drag-indicator-hover: #64748b;
|
|
7520
|
+
--mb-adapt-toolbar-height: 36px;
|
|
7521
|
+
--mb-adapt-toolbar-bg: #f3f4f6;
|
|
7520
7522
|
--mb-adapt-toolbar-border: #e5e7eb;
|
|
7521
7523
|
--mb-adapt-toolbar-color: #6b7280;
|
|
7522
7524
|
--mb-adapt-toolbar-btn-hover: #e5e7eb;
|
|
@@ -7526,6 +7528,9 @@ var MbAdapt = (() => {
|
|
|
7526
7528
|
--mb-adapt-button-color: #374151;
|
|
7527
7529
|
--mb-adapt-button-hover-bg: #e5e7eb;
|
|
7528
7530
|
|
|
7531
|
+
--mb-adapt-fork-border: rgba(0, 0, 0, 0.10);
|
|
7532
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
|
|
7533
|
+
|
|
7529
7534
|
/* Cap.js widget customization variables */
|
|
7530
7535
|
--mb-adapt-cap-background: #ffffff;
|
|
7531
7536
|
--mb-adapt-cap-border-color: #e2e8f0;
|
|
@@ -7552,15 +7557,20 @@ var MbAdapt = (() => {
|
|
|
7552
7557
|
--mb-adapt-dialog-bg: #1f2937;
|
|
7553
7558
|
--mb-adapt-banner-bg: #111827;
|
|
7554
7559
|
--mb-adapt-banner-border: #374151;
|
|
7555
|
-
--mb-adapt-drag-handle-color:
|
|
7556
|
-
--mb-adapt-drag-handle-hover:
|
|
7557
|
-
--mb-adapt-
|
|
7560
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
7561
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
7562
|
+
--mb-adapt-drag-indicator: #64748b;
|
|
7563
|
+
--mb-adapt-drag-indicator-hover: #94a3b8;
|
|
7564
|
+
--mb-adapt-toolbar-bg: #1f2937;
|
|
7558
7565
|
--mb-adapt-toolbar-border: #374151;
|
|
7559
7566
|
--mb-adapt-toolbar-color: #9ca3af;
|
|
7560
7567
|
--mb-adapt-toolbar-btn-hover: #374151;
|
|
7561
7568
|
--mb-adapt-button-color: #e5e7eb;
|
|
7562
7569
|
--mb-adapt-button-hover-bg: #374151;
|
|
7563
7570
|
|
|
7571
|
+
--mb-adapt-fork-border: rgba(255, 255, 255, 0.08);
|
|
7572
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
7573
|
+
|
|
7564
7574
|
/* Cap.js widget dark mode */
|
|
7565
7575
|
--mb-adapt-cap-background: #1e293b;
|
|
7566
7576
|
--mb-adapt-cap-border-color: #334155;
|
|
@@ -7580,6 +7590,7 @@ var MbAdapt = (() => {
|
|
|
7580
7590
|
flex: 1;
|
|
7581
7591
|
min-height: 0;
|
|
7582
7592
|
background: transparent;
|
|
7593
|
+
gap: 6px;
|
|
7583
7594
|
}
|
|
7584
7595
|
|
|
7585
7596
|
.mb-adapt__frame {
|
|
@@ -7594,6 +7605,16 @@ var MbAdapt = (() => {
|
|
|
7594
7605
|
display: none;
|
|
7595
7606
|
}
|
|
7596
7607
|
|
|
7608
|
+
.mb-adapt__frame--fork {
|
|
7609
|
+
border: 1px solid var(--mb-adapt-fork-border);
|
|
7610
|
+
box-shadow: var(--mb-adapt-fork-shadow);
|
|
7611
|
+
border-radius: var(--mb-adapt-border-radius);
|
|
7612
|
+
}
|
|
7613
|
+
|
|
7614
|
+
.mb-adapt__frame--fork .mb-adapt__iframe {
|
|
7615
|
+
border-radius: 0;
|
|
7616
|
+
}
|
|
7617
|
+
|
|
7597
7618
|
.mb-adapt__iframe {
|
|
7598
7619
|
width: 100%;
|
|
7599
7620
|
height: 100%;
|
|
@@ -7623,8 +7644,8 @@ var MbAdapt = (() => {
|
|
|
7623
7644
|
background-color: var(--mb-adapt-drag-handle-color);
|
|
7624
7645
|
cursor: ew-resize;
|
|
7625
7646
|
z-index: 10;
|
|
7626
|
-
|
|
7627
|
-
|
|
7647
|
+
border-radius: 2px;
|
|
7648
|
+
transition: left 0.15s ease-out;
|
|
7628
7649
|
}
|
|
7629
7650
|
|
|
7630
7651
|
.mb-adapt__drag-handle::after {
|
|
@@ -7633,21 +7654,20 @@ var MbAdapt = (() => {
|
|
|
7633
7654
|
top: 50%;
|
|
7634
7655
|
left: 50%;
|
|
7635
7656
|
transform: translate(-50%, -50%);
|
|
7636
|
-
width:
|
|
7637
|
-
height:
|
|
7638
|
-
|
|
7639
|
-
background-
|
|
7640
|
-
|
|
7641
|
-
|
|
7642
|
-
color: var(--mb-adapt-drag-handle-hover);
|
|
7657
|
+
width: 3px;
|
|
7658
|
+
height: 32px;
|
|
7659
|
+
border-radius: 2px;
|
|
7660
|
+
background-color: var(--mb-adapt-drag-indicator);
|
|
7661
|
+
opacity: 0.4;
|
|
7662
|
+
transition: opacity 0.2s, background-color 0.2s;
|
|
7643
7663
|
}
|
|
7644
7664
|
|
|
7645
7665
|
.mb-adapt__drag-handle:hover {
|
|
7646
7666
|
background-color: var(--mb-adapt-drag-handle-hover);
|
|
7647
|
-
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
|
|
7648
7667
|
}
|
|
7649
7668
|
|
|
7650
7669
|
.mb-adapt__drag-handle:hover::after {
|
|
7670
|
+
background-color: var(--mb-adapt-drag-indicator-hover);
|
|
7651
7671
|
opacity: 0.8;
|
|
7652
7672
|
}
|
|
7653
7673
|
|
|
@@ -7873,15 +7893,31 @@ var MbAdapt = (() => {
|
|
|
7873
7893
|
.mb-adapt__toolbar {
|
|
7874
7894
|
display: flex;
|
|
7875
7895
|
align-items: center;
|
|
7876
|
-
justify-content:
|
|
7896
|
+
justify-content: space-between;
|
|
7877
7897
|
height: var(--mb-adapt-toolbar-height);
|
|
7878
7898
|
background: var(--mb-adapt-toolbar-bg);
|
|
7879
7899
|
border-bottom: 1px solid var(--mb-adapt-toolbar-border);
|
|
7880
|
-
padding: 0
|
|
7900
|
+
padding: 0 8px 0 10px;
|
|
7881
7901
|
flex-shrink: 0;
|
|
7882
|
-
|
|
7883
|
-
|
|
7902
|
+
}
|
|
7903
|
+
|
|
7904
|
+
.mb-adapt__toolbar-title {
|
|
7905
|
+
font-size: 12px;
|
|
7906
|
+
font-weight: 500;
|
|
7907
|
+
color: var(--mb-adapt-toolbar-color);
|
|
7908
|
+
overflow: hidden;
|
|
7909
|
+
text-overflow: ellipsis;
|
|
7910
|
+
white-space: nowrap;
|
|
7911
|
+
min-width: 0;
|
|
7912
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
7913
|
+
user-select: none;
|
|
7914
|
+
}
|
|
7915
|
+
|
|
7916
|
+
.mb-adapt__toolbar-actions {
|
|
7917
|
+
display: flex;
|
|
7918
|
+
align-items: center;
|
|
7884
7919
|
gap: 2px;
|
|
7920
|
+
flex-shrink: 0;
|
|
7885
7921
|
}
|
|
7886
7922
|
|
|
7887
7923
|
.mb-adapt__toolbar-btn {
|
|
@@ -8018,6 +8054,7 @@ cap-widget::part(attribution) {
|
|
|
8018
8054
|
this.mainExpandButton = null;
|
|
8019
8055
|
this.forkExpandButton = null;
|
|
8020
8056
|
this.forkToolbarElement = null;
|
|
8057
|
+
this.forkTitleElement = null;
|
|
8021
8058
|
// Dialog elements
|
|
8022
8059
|
this.mainContainer = null;
|
|
8023
8060
|
this.dialogBackdrop = null;
|
|
@@ -8197,6 +8234,7 @@ cap-widget::part(attribution) {
|
|
|
8197
8234
|
this.mainExpandButton = null;
|
|
8198
8235
|
this.forkExpandButton = null;
|
|
8199
8236
|
this.forkToolbarElement = null;
|
|
8237
|
+
this.forkTitleElement = null;
|
|
8200
8238
|
this.mainContainer = null;
|
|
8201
8239
|
this.dialogBackdrop = null;
|
|
8202
8240
|
this.dialogElement = null;
|
|
@@ -8489,6 +8527,7 @@ cap-widget::part(attribution) {
|
|
|
8489
8527
|
this.mainExpandButton = null;
|
|
8490
8528
|
this.forkExpandButton = null;
|
|
8491
8529
|
this.forkToolbarElement = null;
|
|
8530
|
+
this.forkTitleElement = null;
|
|
8492
8531
|
this.mainContainer = null;
|
|
8493
8532
|
this.dialogBackdrop = null;
|
|
8494
8533
|
this.dialogElement = null;
|
|
@@ -8607,6 +8646,9 @@ cap-widget::part(attribution) {
|
|
|
8607
8646
|
return b.time - a.time;
|
|
8608
8647
|
});
|
|
8609
8648
|
this.currentFork = this.forkQueue.shift();
|
|
8649
|
+
if (this.forkTitleElement) {
|
|
8650
|
+
this.forkTitleElement.textContent = this.currentFork.fork || "Fork";
|
|
8651
|
+
}
|
|
8610
8652
|
this.updateForkIframe();
|
|
8611
8653
|
if (this.options.forkDisplayMode === "dialog") {
|
|
8612
8654
|
this.updateDialogVisibility();
|
|
@@ -8745,6 +8787,7 @@ cap-widget::part(attribution) {
|
|
|
8745
8787
|
this.forkExpandButton.classList.remove(
|
|
8746
8788
|
"mb-adapt__expand-button--visible"
|
|
8747
8789
|
);
|
|
8790
|
+
this.emitForkActive();
|
|
8748
8791
|
return;
|
|
8749
8792
|
}
|
|
8750
8793
|
if (this.isResponsiveMode()) {
|
|
@@ -8757,6 +8800,7 @@ cap-widget::part(attribution) {
|
|
|
8757
8800
|
this.forkExpandButton.classList.remove(
|
|
8758
8801
|
"mb-adapt__expand-button--visible"
|
|
8759
8802
|
);
|
|
8803
|
+
this.emitForkActive();
|
|
8760
8804
|
return;
|
|
8761
8805
|
}
|
|
8762
8806
|
const mainWidth = this.splitPercentage;
|
|
@@ -8812,6 +8856,12 @@ cap-widget::part(attribution) {
|
|
|
8812
8856
|
createForkToolbar() {
|
|
8813
8857
|
const toolbar = document.createElement("div");
|
|
8814
8858
|
toolbar.className = this.options.classNames?.toolbar || "mb-adapt__toolbar";
|
|
8859
|
+
const titleSpan = document.createElement("span");
|
|
8860
|
+
titleSpan.className = "mb-adapt__toolbar-title";
|
|
8861
|
+
titleSpan.textContent = this.currentFork?.fork || "Fork";
|
|
8862
|
+
this.forkTitleElement = titleSpan;
|
|
8863
|
+
const actionsDiv = document.createElement("div");
|
|
8864
|
+
actionsDiv.className = "mb-adapt__toolbar-actions";
|
|
8815
8865
|
const minimizeBtn = document.createElement("button");
|
|
8816
8866
|
minimizeBtn.className = this.options.classNames?.toolbarButton || "mb-adapt__toolbar-btn";
|
|
8817
8867
|
minimizeBtn.setAttribute("aria-label", "Minimize fork");
|
|
@@ -8828,8 +8878,10 @@ cap-widget::part(attribution) {
|
|
|
8828
8878
|
exitBtn.addEventListener("click", () => {
|
|
8829
8879
|
this.handleForkExit();
|
|
8830
8880
|
});
|
|
8831
|
-
|
|
8832
|
-
|
|
8881
|
+
actionsDiv.appendChild(minimizeBtn);
|
|
8882
|
+
actionsDiv.appendChild(exitBtn);
|
|
8883
|
+
toolbar.appendChild(titleSpan);
|
|
8884
|
+
toolbar.appendChild(actionsDiv);
|
|
8833
8885
|
return toolbar;
|
|
8834
8886
|
}
|
|
8835
8887
|
handleForkMinimize() {
|
|
@@ -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;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:(y,d)=>{this.onSessionCallback?.(y,d),this.dispatchEvent(new CustomEvent("adapt-session",{detail:{status:y,fork:d},bubbles:!0}))},onOutput:y=>{this.onOutputCallback?.(y),this.dispatchEvent(new CustomEvent("adapt-output",{detail:{output:y},bubbles:!0}))},onForkActive:y=>{this.onForkActiveCallback?.(y),this.dispatchEvent(new CustomEvent("adapt-fork-active",{detail:{active:y},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-
|
|
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:(y,d)=>{this.onSessionCallback?.(y,d),this.dispatchEvent(new CustomEvent("adapt-session",{detail:{status:y,fork:d},bubbles:!0}))},onOutput:y=>{this.onOutputCallback?.(y),this.dispatchEvent(new CustomEvent("adapt-output",{detail:{output:y},bubbles:!0}))},onForkActive:y=>{this.onForkActiveCallback?.(y),this.dispatchEvent(new CustomEvent("adapt-fork-active",{detail:{active:y},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-rc51/cap_wasm.js",window.location.href).href);var Bs=`
|
|
140
140
|
.mb-adapt {
|
|
141
141
|
width: 100%;
|
|
142
142
|
min-height: inherit;
|
|
@@ -150,11 +150,13 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
150
150
|
--mb-adapt-dialog-z: 1000;
|
|
151
151
|
--mb-adapt-dialog-width: 80%;
|
|
152
152
|
--mb-adapt-dialog-height: 80%;
|
|
153
|
-
--mb-adapt-drag-handle-width:
|
|
154
|
-
--mb-adapt-drag-handle-color:
|
|
155
|
-
--mb-adapt-drag-handle-hover:
|
|
156
|
-
--mb-adapt-
|
|
157
|
-
--mb-adapt-
|
|
153
|
+
--mb-adapt-drag-handle-width: 4px;
|
|
154
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
155
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
156
|
+
--mb-adapt-drag-indicator: #94a3b8;
|
|
157
|
+
--mb-adapt-drag-indicator-hover: #64748b;
|
|
158
|
+
--mb-adapt-toolbar-height: 36px;
|
|
159
|
+
--mb-adapt-toolbar-bg: #f3f4f6;
|
|
158
160
|
--mb-adapt-toolbar-border: #e5e7eb;
|
|
159
161
|
--mb-adapt-toolbar-color: #6b7280;
|
|
160
162
|
--mb-adapt-toolbar-btn-hover: #e5e7eb;
|
|
@@ -164,6 +166,9 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
164
166
|
--mb-adapt-button-color: #374151;
|
|
165
167
|
--mb-adapt-button-hover-bg: #e5e7eb;
|
|
166
168
|
|
|
169
|
+
--mb-adapt-fork-border: rgba(0, 0, 0, 0.10);
|
|
170
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
|
|
171
|
+
|
|
167
172
|
/* Cap.js widget customization variables */
|
|
168
173
|
--mb-adapt-cap-background: #ffffff;
|
|
169
174
|
--mb-adapt-cap-border-color: #e2e8f0;
|
|
@@ -190,15 +195,20 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
190
195
|
--mb-adapt-dialog-bg: #1f2937;
|
|
191
196
|
--mb-adapt-banner-bg: #111827;
|
|
192
197
|
--mb-adapt-banner-border: #374151;
|
|
193
|
-
--mb-adapt-drag-handle-color:
|
|
194
|
-
--mb-adapt-drag-handle-hover:
|
|
195
|
-
--mb-adapt-
|
|
198
|
+
--mb-adapt-drag-handle-color: transparent;
|
|
199
|
+
--mb-adapt-drag-handle-hover: transparent;
|
|
200
|
+
--mb-adapt-drag-indicator: #64748b;
|
|
201
|
+
--mb-adapt-drag-indicator-hover: #94a3b8;
|
|
202
|
+
--mb-adapt-toolbar-bg: #1f2937;
|
|
196
203
|
--mb-adapt-toolbar-border: #374151;
|
|
197
204
|
--mb-adapt-toolbar-color: #9ca3af;
|
|
198
205
|
--mb-adapt-toolbar-btn-hover: #374151;
|
|
199
206
|
--mb-adapt-button-color: #e5e7eb;
|
|
200
207
|
--mb-adapt-button-hover-bg: #374151;
|
|
201
208
|
|
|
209
|
+
--mb-adapt-fork-border: rgba(255, 255, 255, 0.08);
|
|
210
|
+
--mb-adapt-fork-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
211
|
+
|
|
202
212
|
/* Cap.js widget dark mode */
|
|
203
213
|
--mb-adapt-cap-background: #1e293b;
|
|
204
214
|
--mb-adapt-cap-border-color: #334155;
|
|
@@ -218,6 +228,7 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
218
228
|
flex: 1;
|
|
219
229
|
min-height: 0;
|
|
220
230
|
background: transparent;
|
|
231
|
+
gap: 6px;
|
|
221
232
|
}
|
|
222
233
|
|
|
223
234
|
.mb-adapt__frame {
|
|
@@ -232,6 +243,16 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
232
243
|
display: none;
|
|
233
244
|
}
|
|
234
245
|
|
|
246
|
+
.mb-adapt__frame--fork {
|
|
247
|
+
border: 1px solid var(--mb-adapt-fork-border);
|
|
248
|
+
box-shadow: var(--mb-adapt-fork-shadow);
|
|
249
|
+
border-radius: var(--mb-adapt-border-radius);
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
.mb-adapt__frame--fork .mb-adapt__iframe {
|
|
253
|
+
border-radius: 0;
|
|
254
|
+
}
|
|
255
|
+
|
|
235
256
|
.mb-adapt__iframe {
|
|
236
257
|
width: 100%;
|
|
237
258
|
height: 100%;
|
|
@@ -261,8 +282,8 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
261
282
|
background-color: var(--mb-adapt-drag-handle-color);
|
|
262
283
|
cursor: ew-resize;
|
|
263
284
|
z-index: 10;
|
|
264
|
-
|
|
265
|
-
|
|
285
|
+
border-radius: 2px;
|
|
286
|
+
transition: left 0.15s ease-out;
|
|
266
287
|
}
|
|
267
288
|
|
|
268
289
|
.mb-adapt__drag-handle::after {
|
|
@@ -271,21 +292,20 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
271
292
|
top: 50%;
|
|
272
293
|
left: 50%;
|
|
273
294
|
transform: translate(-50%, -50%);
|
|
274
|
-
width:
|
|
275
|
-
height:
|
|
276
|
-
|
|
277
|
-
background-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
color: var(--mb-adapt-drag-handle-hover);
|
|
295
|
+
width: 3px;
|
|
296
|
+
height: 32px;
|
|
297
|
+
border-radius: 2px;
|
|
298
|
+
background-color: var(--mb-adapt-drag-indicator);
|
|
299
|
+
opacity: 0.4;
|
|
300
|
+
transition: opacity 0.2s, background-color 0.2s;
|
|
281
301
|
}
|
|
282
302
|
|
|
283
303
|
.mb-adapt__drag-handle:hover {
|
|
284
304
|
background-color: var(--mb-adapt-drag-handle-hover);
|
|
285
|
-
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
|
|
286
305
|
}
|
|
287
306
|
|
|
288
307
|
.mb-adapt__drag-handle:hover::after {
|
|
308
|
+
background-color: var(--mb-adapt-drag-indicator-hover);
|
|
289
309
|
opacity: 0.8;
|
|
290
310
|
}
|
|
291
311
|
|
|
@@ -511,15 +531,31 @@ to prevent this, set window.CAP_DONT_SKIP_REDEFINE to true`):customElements.defi
|
|
|
511
531
|
.mb-adapt__toolbar {
|
|
512
532
|
display: flex;
|
|
513
533
|
align-items: center;
|
|
514
|
-
justify-content:
|
|
534
|
+
justify-content: space-between;
|
|
515
535
|
height: var(--mb-adapt-toolbar-height);
|
|
516
536
|
background: var(--mb-adapt-toolbar-bg);
|
|
517
537
|
border-bottom: 1px solid var(--mb-adapt-toolbar-border);
|
|
518
|
-
padding: 0
|
|
538
|
+
padding: 0 8px 0 10px;
|
|
519
539
|
flex-shrink: 0;
|
|
520
|
-
|
|
521
|
-
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
.mb-adapt__toolbar-title {
|
|
543
|
+
font-size: 12px;
|
|
544
|
+
font-weight: 500;
|
|
545
|
+
color: var(--mb-adapt-toolbar-color);
|
|
546
|
+
overflow: hidden;
|
|
547
|
+
text-overflow: ellipsis;
|
|
548
|
+
white-space: nowrap;
|
|
549
|
+
min-width: 0;
|
|
550
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
551
|
+
user-select: none;
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
.mb-adapt__toolbar-actions {
|
|
555
|
+
display: flex;
|
|
556
|
+
align-items: center;
|
|
522
557
|
gap: 2px;
|
|
558
|
+
flex-shrink: 0;
|
|
523
559
|
}
|
|
524
560
|
|
|
525
561
|
.mb-adapt__toolbar-btn {
|
|
@@ -637,4 +673,4 @@ cap-widget::part(attribution) {
|
|
|
637
673
|
background: var(--mb-adapt-banner-bg);
|
|
638
674
|
border: 1px solid var(--mb-adapt-banner-border);
|
|
639
675
|
}
|
|
640
|
-
`,_e=class e{constructor(t){this.rootElement=null;this.mainUrl=null;this.forkQueue=[];this.currentFork=null;this.sessionToken=null;this.isDragging=!1;this.wrapperElement=null;this.mainFrameElement=null;this.forkFrameElement=null;this.mainIframe=null;this.forkIframe=null;this.dragHandleElement=null;this.mainExpandButton=null;this.forkExpandButton=null;this.forkToolbarElement=null;this.mainContainer=null;this.dialogBackdrop=null;this.dialogElement=null;this.dialogExpandButton=null;this.mouseMoveHandler=null;this.mouseUpHandler=null;this.resizeObserver=null;this.messageHandler=null;this.backdropClickHandler=null;this.destroyed=!1;this.lastForkActive=null;this.stoppedPlaceholder=null;this.capWidgetInstance=null;this.options={...t,forkDisplayMode:t.forkDisplayMode??"side-by-side"},this.splitPercentage=t.sideBySideSplit??50,this.darkMode=t.darkMode??!1,this.autoResizing=t.autoResizing??!1;let n=typeof t.container=="string"?document.getElementById(t.container):t.container;if(!n)throw new Error(`Container with id '${t.container}' not found`);this.container=n;let r=Kn({id:t.id});this.client=fa(r,t.id),this.injectDefaultStyles(),this.createRootElement(),this.createInitialStructure(),this.setupDragListeners(),this.setupResizeObserver(),this.setupMessageListener(),this.init()}static{this.COLLAPSE_THRESHOLD=15}static{this.RESPONSIVE_BREAKPOINT=600}createInitialStructure(){this.options.forkDisplayMode==="dialog"?this.createDialogStructure():this.createSideBySideStructure()}setupResizeObserver(){this.rootElement&&(this.resizeObserver=new ResizeObserver(()=>{this.options.forkDisplayMode==="side-by-side"&&this.currentFork&&this.updateSideBySideVisibility()}),this.resizeObserver.observe(this.rootElement))}getOrigin(t){try{return new URL(t).origin}catch{return null}}isValidMessageOrigin(t){if(this.mainUrl){let n=this.getOrigin(this.mainUrl);if(n&&t===n)return!0}if(this.currentFork?.url){let n=this.getOrigin(this.currentFork.url);if(n&&t===n)return!0}return!1}setupMessageListener(){this.messageHandler=t=>{if(!this.autoResizing||!this.isValidMessageOrigin(t.origin))return;let n=t.data;if(!n||typeof n!="object"||n.type!=="adapt-resize")return;let{height:r}=n;if(typeof r!="number"||!Number.isFinite(r)||r<1)return;let o=t.source;this.mainIframe?.contentWindow===o?this.mainIframe.style.height=`${r}px`:this.forkIframe?.contentWindow===o&&(this.forkIframe.style.height=`${r}px`)},window.addEventListener("message",this.messageHandler)}sendDarkModeToIframe(t){if(!t)return;let n=t.src,r=n?this.getOrigin(n):null;if(!r)return;let o={type:"adapt-darkMode",darkMode:this.darkMode};try{t.contentWindow?.postMessage(o,r)}catch{}}sendAutoResizingToIframe(t){if(!t)return;let n=t.src,r=n?this.getOrigin(n):null;if(!r)return;let o={type:"adapt-autoResizing",autoResizing:this.autoResizing};try{t.contentWindow?.postMessage(o,r)}catch{}}setDarkMode(t){this.darkMode!==t&&(this.darkMode=t,this.rootElement&&(t?this.rootElement.classList.add("mb-adapt--dark"):this.rootElement.classList.remove("mb-adapt--dark")),this.capWidgetInstance?.setDarkMode(t),this.sendDarkModeToIframe(this.mainIframe),this.sendDarkModeToIframe(this.forkIframe))}setAutoResizing(t){this.autoResizing!==t&&(this.autoResizing=t,this.sendAutoResizingToIframe(this.mainIframe),this.sendAutoResizingToIframe(this.forkIframe),t||(this.mainIframe&&(this.mainIframe.style.height=""),this.forkIframe&&(this.forkIframe.style.height="")))}setForkDisplayMode(t){this.options.forkDisplayMode!==t&&(this.options.forkDisplayMode=t,this.mainIframe?.parentNode&&this.mainIframe.parentNode.removeChild(this.mainIframe),this.forkIframe?.parentNode&&this.forkIframe.parentNode.removeChild(this.forkIframe),this.rootElement&&(this.rootElement.innerHTML=""),this.wrapperElement=null,this.mainFrameElement=null,this.forkFrameElement=null,this.dragHandleElement=null,this.mainExpandButton=null,this.forkExpandButton=null,this.forkToolbarElement=null,this.mainContainer=null,this.dialogBackdrop=null,this.dialogElement=null,this.dialogExpandButton=null,this.backdropClickHandler=null,t==="dialog"?this.createDialogStructure():this.createSideBySideStructure(),t==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility(),this.mainUrl&&this.mainIframe&&this.showIframe(this.mainIframe),this.currentFork&&this.forkIframe&&this.showIframe(this.forkIframe),this.autoResizing&&(this.sendAutoResizingToIframe(this.mainIframe),this.sendAutoResizingToIframe(this.forkIframe)),t==="side-by-side"&&!this.currentFork&&this.forkQueue.length>0&&this.activateNextFork())}setDialogBackdropClose(t){this.options.dialogBackdropClose!==t&&(this.options.dialogBackdropClose=t,this.dialogBackdrop&&(this.backdropClickHandler&&(this.dialogBackdrop.removeEventListener("click",this.backdropClickHandler),this.backdropClickHandler=null),t&&(this.backdropClickHandler=()=>{this.handleForkMinimize()},this.dialogBackdrop.addEventListener("click",this.backdropClickHandler))))}setupDragListeners(){let t=this.splitPercentage,n=!1,r=a=>{if(!this.isDragging||!this.rootElement)return;let i=this.rootElement.getBoundingClientRect();if(i.width===0)return;t=(a.clientX-i.left)/i.width*100;let u=t,m=100-t;u<e.COLLAPSE_THRESHOLD?n||(n=!0,this.splitPercentage=0,this.updateSideBySideVisibility()):m<e.COLLAPSE_THRESHOLD?n||(n=!0,this.splitPercentage=100,this.updateSideBySideVisibility()):(n=!1,this.splitPercentage=Math.max(e.COLLAPSE_THRESHOLD,Math.min(100-e.COLLAPSE_THRESHOLD,t)),this.updateSideBySideWidths())},o=()=>{this.isDragging&&(this.isDragging=!1,n=!1,document.getElementById("mb-adapt-drag-overlay")?.remove(),this.rootElement?.querySelectorAll(".mb-adapt__iframe-overlay").forEach(a=>a.remove()),this.mainFrameElement&&(this.mainFrameElement.style.transition=""),this.forkFrameElement&&(this.forkFrameElement.style.transition=""),this.dragHandleElement&&(this.dragHandleElement.style.transition=""),this.splitPercentage!==0&&this.splitPercentage!==100&&t>=e.COLLAPSE_THRESHOLD&&100-t>=e.COLLAPSE_THRESHOLD&&(this.splitPercentage=t),t=this.splitPercentage)};this.mouseMoveHandler=r,this.mouseUpHandler=o,document.addEventListener("mousemove",this.mouseMoveHandler),document.addEventListener("mouseup",this.mouseUpHandler)}injectDefaultStyles(){if(document.getElementById("mb-adapt-styles"))return;let t=document.createElement("style");t.id="mb-adapt-styles",t.textContent=Bs,document.head.appendChild(t)}createRootElement(){this.rootElement=document.createElement("div"),this.rootElement.className=this.options.classNames?.root||"mb-adapt",this.darkMode&&this.rootElement.classList.add("mb-adapt--dark"),this.options.styles&&Object.assign(this.rootElement.style,this.options.styles),this.container.appendChild(this.rootElement)}parseInheritToken(){let t=this.options.inheritFrom;return t?"hash"in t?this.parseFromHash(t.hash):this.parseFromParam(t.param):null}parseFromHash(t){let n=window.location.hash.slice(1);if(!n)return null;let r=new URLSearchParams(n),o=r.get(t);if(!o)return null;r.delete(t);let a=r.toString(),i=window.location.pathname+window.location.search+(a?"#"+a:"");return history.replaceState(null,"",i),decodeURIComponent(o)}parseFromParam(t){let n=new URLSearchParams(window.location.search),r=n.get(t);if(!r)return null;n.delete(t);let o=n.toString(),a=window.location.pathname+(o?"?"+o:"")+window.location.hash;return history.replaceState(null,"",a),decodeURIComponent(r)}async init(){let t={onUrl:n=>this.onUrl(n),onSession:n=>{n.status==="STATUS_COMPLETED"&&!n.fork&&this.handleSessionComplete(),this.options.onSession&&this.options.onSession(n.status||"STATUS_UNSPECIFIED",n.fork)}};if(this.options.onOutput&&(t.onOutput=this.options.onOutput),this.options.sessionToken)this.sessionToken=this.options.sessionToken,await this.client.subscribe(this.sessionToken,t);else{let n=this.parseInheritToken(),r=n||this.options.inheritToken;if(this.options.inheritFrom&&!n){let i="hash"in this.options.inheritFrom?`hash key '${this.options.inheritFrom.hash}'`:`param '${this.options.inheritFrom.param}'`;console.error(`[AdaptWebClient] No inherit token found in URL ${i}`);return}let o=this.options.challengeToken;if(this.options.requiresChallenge&&!o&&!r&&(o=await this.showCapWidgetAndSolve(),!o)){console.error("[AdaptWebClient] Failed to solve challenge");return}let a;if(r)a=await this.client.runInherit(r,t);else{let i={...t};this.options.transmitter!==void 0&&(i.transmitter=this.options.transmitter),this.options.signals!==void 0&&(i.signals=this.options.signals),this.options.authToken!==void 0&&(i.authToken=this.options.authToken),o!==void 0&&(i.challengeToken=o),a=await this.client.run(i)}this.sessionToken=a.sessionToken}}async showCapWidgetAndSolve(){return new Promise(t=>{let n=document.createElement("div");this.rootElement?.insertBefore(n,this.rootElement.firstChild),this.capWidgetInstance=new ie({container:n,automationId:this.options.id,client:this.client.raw,...this.options.capWidgetOptions?.workerCount!==void 0&&{workerCount:this.options.capWidgetOptions.workerCount},...this.options.capWidgetOptions?.i18n&&{i18n:this.options.capWidgetOptions.i18n},onSolve:r=>{n.parentNode&&n.parentNode.removeChild(n),this.capWidgetInstance=null,t(r)},onError:r=>{console.error("[AdaptWebClient] Cap.js error:",r),n.parentNode&&n.parentNode.removeChild(n),this.capWidgetInstance=null,t(void 0)}}),this.darkMode&&this.capWidgetInstance.setDarkMode(!0)})}destroyCapWidget(){this.capWidgetInstance&&(this.capWidgetInstance.destroy(),this.capWidgetInstance=null)}async destroy(){this.destroyed=!0,this.destroyCapWidget(),this.sessionToken&&this.client.stop(this.sessionToken).catch(()=>{}),await this.client.unsubscribe(),this.mouseMoveHandler&&document.removeEventListener("mousemove",this.mouseMoveHandler),this.mouseUpHandler&&document.removeEventListener("mouseup",this.mouseUpHandler),this.messageHandler&&window.removeEventListener("message",this.messageHandler),this.resizeObserver&&this.resizeObserver.disconnect(),this.rootElement?.parentNode?.removeChild(this.rootElement),this.mainUrl=null,this.mainToken=void 0,this.forkQueue=[],this.currentFork=null,this.sessionToken=null,this.lastForkActive=null,this.rootElement=null,this.wrapperElement=null,this.mainFrameElement=null,this.forkFrameElement=null,this.mainIframe=null,this.forkIframe=null,this.dragHandleElement=null,this.mainExpandButton=null,this.forkExpandButton=null,this.forkToolbarElement=null,this.mainContainer=null,this.dialogBackdrop=null,this.dialogElement=null,this.dialogExpandButton=null,this.mouseMoveHandler=null,this.mouseUpHandler=null,this.resizeObserver=null,this.messageHandler=null,this.backdropClickHandler=null,this.stoppedPlaceholder=null}onUrl(t){if(this.destroyed)return;let n=t.fork||"";if(t.stopped){this.handleStoppedMessage(n);return}if(t.done){this.handleDoneMessage(n);return}t.url&&(n?this.handleForkUrl(t.url,t.token,n):this.handleMainUrl(t.url,t.token))}handleSessionComplete(){this.currentFork=null,this.forkQueue=[],this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.options.forkDisplayMode==="dialog"&&this.updateDialogVisibility()}handleDoneMessage(t){t&&(this.forkQueue=this.forkQueue.filter(n=>n.fork!==t&&!n.completed),this.currentFork?.fork===t&&(this.forkQueue.length>0?(this.currentFork=null,this.activateNextFork()):this.currentFork.completed=!0))}handleStoppedMessage(t){if(!t){this.mainUrl=null,this.mainToken=void 0,this.mainIframe&&(this.mainIframe.src="about:blank",this.mainIframe.classList.remove("mb-adapt__iframe--visible"),this.mainIframe.classList.add("mb-adapt__iframe--hidden")),this.showStoppedPlaceholder();return}this.forkQueue=this.forkQueue.filter(n=>n.fork!==t),this.currentFork?.fork===t&&(this.currentFork=null,this.forkQueue.length>0?this.activateNextFork():(this.forkIframe&&(this.forkIframe.src="about:blank",this.forkIframe.classList.remove("mb-adapt__iframe--visible"),this.forkIframe.classList.add("mb-adapt__iframe--hidden")),this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility()))}handleMainUrl(t,n){this.removeStoppedPlaceholder(),this.mainUrl=t,this.mainToken=n,this.updateMainIframe()}handleForkUrl(t,n,r){let o=(r.match(/\//g)||[]).length,a={url:t,token:n,fork:r,depth:o,time:Date.now()};this.mainUrl||(this.mainUrl=t,this.mainToken=n,this.updateMainIframe()),this.forkQueue.push(a),(!this.currentFork||this.currentFork.completed)&&(this.currentFork=null,this.activateNextFork())}activateNextFork(){this.forkQueue.length!==0&&(this.forkQueue.sort((t,n)=>t.depth!==n.depth?n.depth-t.depth:n.time-t.time),this.currentFork=this.forkQueue.shift(),this.updateForkIframe(),this.options.forkDisplayMode==="dialog"?this.updateDialogVisibility():this.updateSideBySideVisibility())}updateMainIframe(){if(!this.rootElement||!this.mainUrl||!this.mainIframe)return;let t=Qn(this.mainUrl,this.mainToken);this.mainIframe.src!==t&&(this.mainIframe.src=t),this.showIframe(this.mainIframe),this.options.forkDisplayMode==="side-by-side"&&this.updateSideBySideVisibility()}updateForkIframe(){if(!this.currentFork||!this.forkIframe)return;let t=Qn(this.currentFork.url,this.currentFork.token),n=this.forkIframe.parentElement;if(n){let r=this.createHiddenIframe();n.replaceChild(r,this.forkIframe),this.forkIframe=r}this.forkIframe.src=t,this.showIframe(this.forkIframe)}createSideBySideStructure(){this.wrapperElement||(this.rootElement.innerHTML="",this.wrapperElement=document.createElement("div"),this.wrapperElement.className=this.options.classNames?.wrapper||"mb-adapt__wrapper",this.mainFrameElement=document.createElement("div"),this.mainFrameElement.className=this.options.classNames?.frameMain||`${this.options.classNames?.frame||"mb-adapt__frame"} mb-adapt__frame--main`,this.mainFrameElement.classList.add("mb-adapt__frame--hidden"),this.forkFrameElement=document.createElement("div"),this.forkFrameElement.className=this.options.classNames?.frameFork||`${this.options.classNames?.frame||"mb-adapt__frame"} mb-adapt__frame--fork`,this.forkFrameElement.classList.add("mb-adapt__frame--hidden"),this.mainIframe||(this.mainIframe=this.createHiddenIframe()),this.forkIframe||(this.forkIframe=this.createHiddenIframe()),this.forkIframe.style.borderRadius="",this.mainFrameElement.appendChild(this.mainIframe),this.forkToolbarElement=this.createForkToolbar(),this.forkFrameElement.classList.add("mb-adapt__frame--has-toolbar"),this.forkFrameElement.appendChild(this.forkToolbarElement),this.forkFrameElement.appendChild(this.forkIframe),this.dragHandleElement=document.createElement("div"),this.dragHandleElement.className=this.options.classNames?.dragHandle||"mb-adapt__drag-handle",this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.dragHandleElement.style.transform="translateX(-50%)",this.dragHandleElement.addEventListener("mousedown",t=>{t.preventDefault(),this.isDragging=!0,this.mainFrameElement&&(this.mainFrameElement.style.transition="none"),this.forkFrameElement&&(this.forkFrameElement.style.transition="none"),this.dragHandleElement&&(this.dragHandleElement.style.transition="none");let n=document.createElement("div");n.className="mb-adapt__drag-overlay",n.id="mb-adapt-drag-overlay",this.rootElement.appendChild(n),[this.mainFrameElement,this.forkFrameElement].forEach(r=>{if(r){let o=document.createElement("div");o.className="mb-adapt__iframe-overlay",r.appendChild(o)}})}),this.mainExpandButton=document.createElement("button"),this.mainExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.mainExpandButton.classList.add("mb-adapt__expand-button--left"),this.mainExpandButton.innerHTML="\u203A",this.mainExpandButton.setAttribute("aria-label","Expand main frame"),this.mainExpandButton.setAttribute("title","Expand main frame"),this.mainExpandButton.addEventListener("click",()=>{this.splitPercentage=50,this.updateSideBySideVisibility()}),this.forkExpandButton=document.createElement("button"),this.forkExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.forkExpandButton.classList.add("mb-adapt__expand-button--right"),this.forkExpandButton.innerHTML="\u2039",this.forkExpandButton.setAttribute("aria-label","Expand fork frame"),this.forkExpandButton.setAttribute("title","Expand fork frame"),this.forkExpandButton.addEventListener("click",()=>{this.splitPercentage=50,this.updateSideBySideVisibility()}),this.wrapperElement.appendChild(this.mainFrameElement),this.wrapperElement.appendChild(this.forkFrameElement),this.wrapperElement.appendChild(this.dragHandleElement),this.wrapperElement.appendChild(this.mainExpandButton),this.wrapperElement.appendChild(this.forkExpandButton),this.rootElement.appendChild(this.wrapperElement))}isResponsiveMode(){return this.rootElement?this.rootElement.offsetWidth<e.RESPONSIVE_BREAKPOINT:!1}emitForkActive(){if(!this.options.onForkActive)return;let t;this.currentFork?this.options.forkDisplayMode==="dialog"?t=!0:t=100-this.splitPercentage>=e.COLLAPSE_THRESHOLD&&!this.isResponsiveMode():t=!1,t!==this.lastForkActive&&(this.lastForkActive=t,this.options.onForkActive(t))}updateSideBySideVisibility(){if(!this.mainFrameElement||!this.forkFrameElement||!this.dragHandleElement)return;if(!this.currentFork){this.mainFrameElement.style.width="100%",this.mainFrameElement.classList.remove("mb-adapt__frame--hidden"),this.forkFrameElement.classList.add("mb-adapt__frame--hidden"),this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.mainExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible");return}if(this.isResponsiveMode()){this.mainFrameElement.style.width="0%",this.mainFrameElement.classList.add("mb-adapt__frame--hidden"),this.forkFrameElement.style.width="100%",this.forkFrameElement.classList.remove("mb-adapt__frame--hidden"),this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.mainExpandButton.classList.add("mb-adapt__expand-button--visible"),this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible");return}let t=this.splitPercentage,n=100-this.splitPercentage,r=t<e.COLLAPSE_THRESHOLD,o=n<e.COLLAPSE_THRESHOLD;this.mainFrameElement.style.width=r?"0%":`${t}%`,r?this.mainFrameElement.classList.add("mb-adapt__frame--hidden"):this.mainFrameElement.classList.remove("mb-adapt__frame--hidden"),this.forkFrameElement.style.width=o?"0%":`${n}%`,o?this.forkFrameElement.classList.add("mb-adapt__frame--hidden"):this.forkFrameElement.classList.remove("mb-adapt__frame--hidden"),this.dragHandleElement.style.left=`${this.splitPercentage}%`,this.dragHandleElement.classList.remove("mb-adapt__frame--hidden"),r||o?this.dragHandleElement.classList.add("mb-adapt__drag-handle--disabled"):this.dragHandleElement.classList.remove("mb-adapt__drag-handle--disabled"),r?this.mainExpandButton.classList.add("mb-adapt__expand-button--visible"):this.mainExpandButton.classList.remove("mb-adapt__expand-button--visible"),o?this.forkExpandButton.classList.add("mb-adapt__expand-button--visible"):this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.emitForkActive()}updateSideBySideWidths(){if(!this.mainFrameElement||!this.forkFrameElement||!this.dragHandleElement)return;let t=this.splitPercentage,n=100-this.splitPercentage;this.mainFrameElement.style.width=`${t}%`,this.forkFrameElement.style.width=`${n}%`,this.dragHandleElement.style.left=`${this.splitPercentage}%`}createForkToolbar(){let t=document.createElement("div");t.className=this.options.classNames?.toolbar||"mb-adapt__toolbar";let n=document.createElement("button");n.className=this.options.classNames?.toolbarButton||"mb-adapt__toolbar-btn",n.setAttribute("aria-label","Minimize fork"),n.setAttribute("title","Minimize"),n.innerHTML='<svg viewBox="0 0 16 16"><line x1="3" y1="8" x2="13" y2="8"/></svg>',n.addEventListener("click",()=>{this.handleForkMinimize()});let r=document.createElement("button");return r.className=`${this.options.classNames?.toolbarButton||"mb-adapt__toolbar-btn"} mb-adapt__toolbar-btn--exit`,r.setAttribute("aria-label","Close fork"),r.setAttribute("title","Close"),r.innerHTML='<svg viewBox="0 0 16 16"><line x1="4" y1="4" x2="12" y2="12"/><line x1="12" y1="4" x2="4" y2="12"/></svg>',r.addEventListener("click",()=>{this.handleForkExit()}),t.appendChild(n),t.appendChild(r),t}handleForkMinimize(){this.currentFork&&(this.options.forkDisplayMode==="side-by-side"?(this.splitPercentage=100,this.updateSideBySideVisibility()):(this.forkQueue.unshift(this.currentFork),this.currentFork=null,this.updateDialogVisibility()))}handleForkExit(){if(!this.currentFork)return;let t=this.currentFork.fork;this.sessionToken&&this.client.stop(this.sessionToken,t).catch(()=>{}),this.forkQueue=this.forkQueue.filter(n=>n.fork!==t),this.currentFork=null,this.forkQueue.length>0?this.activateNextFork():(this.forkIframe&&(this.forkIframe.src="about:blank",this.forkIframe.classList.remove("mb-adapt__iframe--visible"),this.forkIframe.classList.add("mb-adapt__iframe--hidden")),this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility())}createDialogStructure(){if(this.mainContainer)return;this.rootElement.innerHTML="",this.mainContainer=document.createElement("div"),this.mainContainer.className="mb-adapt__main-container",this.mainIframe||(this.mainIframe=this.createHiddenIframe()),this.mainContainer.appendChild(this.mainIframe),this.dialogExpandButton=document.createElement("button"),this.dialogExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.dialogExpandButton.classList.add("mb-adapt__expand-button--dialog"),this.dialogExpandButton.innerHTML="\u2304",this.dialogExpandButton.setAttribute("aria-label","Open fork dialog"),this.dialogExpandButton.setAttribute("title","Open fork dialog"),this.dialogExpandButton.addEventListener("click",()=>{this.activateNextFork()}),this.dialogBackdrop=document.createElement("div"),this.dialogBackdrop.className=this.options.classNames?.dialogBackdrop||"mb-adapt__dialog-backdrop",this.options.dialogBackdropClose&&(this.backdropClickHandler=()=>{this.handleForkMinimize()},this.dialogBackdrop.addEventListener("click",this.backdropClickHandler)),this.dialogElement=document.createElement("div"),this.dialogElement.className=this.options.classNames?.dialog||"mb-adapt__dialog",this.forkToolbarElement=this.createForkToolbar(),this.dialogElement.appendChild(this.forkToolbarElement);let t=document.createElement("div");t.style.flex="1",t.style.overflow="auto",t.style.minHeight="0",this.forkIframe||(this.forkIframe=this.createHiddenIframe()),this.forkIframe.style.borderRadius="0",t.appendChild(this.forkIframe),this.dialogElement.appendChild(t),this.mainContainer.appendChild(this.dialogExpandButton),this.rootElement.appendChild(this.mainContainer),this.rootElement.appendChild(this.dialogBackdrop),this.rootElement.appendChild(this.dialogElement)}updateDialogVisibility(){if(!this.dialogExpandButton||!this.dialogBackdrop||!this.dialogElement)return;let t=this.forkQueue.length>0,n=this.currentFork!==null;!n&&t?this.dialogExpandButton.classList.add("mb-adapt__expand-button--visible"):this.dialogExpandButton.classList.remove("mb-adapt__expand-button--visible"),n?(this.dialogBackdrop.classList.add("mb-adapt__dialog-backdrop--visible"),this.dialogElement.classList.add("mb-adapt__dialog--visible")):(this.dialogBackdrop.classList.remove("mb-adapt__dialog-backdrop--visible"),this.dialogElement.classList.remove("mb-adapt__dialog--visible")),this.emitForkActive()}createHiddenIframe(){let t=document.createElement("iframe");return t.className=this.options.classNames?.iframe||"mb-adapt__iframe",t.setAttribute("sandbox","allow-downloads allow-same-origin allow-scripts allow-popups allow-forms allow-modals"),t.setAttribute("allow","geolocation; accelerometer; midi; microphone; camera; magnetometer; gyroscope; fullscreen; payment;"),t.src="about:blank",t.addEventListener("load",()=>{t.src&&t.src!=="about:blank"&&(this.sendDarkModeToIframe(t),this.sendAutoResizingToIframe(t))}),t}showStoppedPlaceholder(){if(!this.mainFrameElement&&!this.mainContainer)return;this.removeStoppedPlaceholder(),this.stoppedPlaceholder=document.createElement("div"),this.stoppedPlaceholder.className="mb-adapt__stopped-placeholder",this.stoppedPlaceholder.textContent="This session has been stopped",(this.mainFrameElement||this.mainContainer).appendChild(this.stoppedPlaceholder)}removeStoppedPlaceholder(){this.stoppedPlaceholder&&(this.stoppedPlaceholder.remove(),this.stoppedPlaceholder=null)}showIframe(t){t.classList.remove("mb-adapt__iframe--hidden"),t.offsetHeight,t.classList.add("mb-adapt__iframe--visible")}};return Ja(Ws);})();
|
|
676
|
+
`,_e=class e{constructor(t){this.rootElement=null;this.mainUrl=null;this.forkQueue=[];this.currentFork=null;this.sessionToken=null;this.isDragging=!1;this.wrapperElement=null;this.mainFrameElement=null;this.forkFrameElement=null;this.mainIframe=null;this.forkIframe=null;this.dragHandleElement=null;this.mainExpandButton=null;this.forkExpandButton=null;this.forkToolbarElement=null;this.forkTitleElement=null;this.mainContainer=null;this.dialogBackdrop=null;this.dialogElement=null;this.dialogExpandButton=null;this.mouseMoveHandler=null;this.mouseUpHandler=null;this.resizeObserver=null;this.messageHandler=null;this.backdropClickHandler=null;this.destroyed=!1;this.lastForkActive=null;this.stoppedPlaceholder=null;this.capWidgetInstance=null;this.options={...t,forkDisplayMode:t.forkDisplayMode??"side-by-side"},this.splitPercentage=t.sideBySideSplit??50,this.darkMode=t.darkMode??!1,this.autoResizing=t.autoResizing??!1;let n=typeof t.container=="string"?document.getElementById(t.container):t.container;if(!n)throw new Error(`Container with id '${t.container}' not found`);this.container=n;let r=Kn({id:t.id});this.client=fa(r,t.id),this.injectDefaultStyles(),this.createRootElement(),this.createInitialStructure(),this.setupDragListeners(),this.setupResizeObserver(),this.setupMessageListener(),this.init()}static{this.COLLAPSE_THRESHOLD=15}static{this.RESPONSIVE_BREAKPOINT=600}createInitialStructure(){this.options.forkDisplayMode==="dialog"?this.createDialogStructure():this.createSideBySideStructure()}setupResizeObserver(){this.rootElement&&(this.resizeObserver=new ResizeObserver(()=>{this.options.forkDisplayMode==="side-by-side"&&this.currentFork&&this.updateSideBySideVisibility()}),this.resizeObserver.observe(this.rootElement))}getOrigin(t){try{return new URL(t).origin}catch{return null}}isValidMessageOrigin(t){if(this.mainUrl){let n=this.getOrigin(this.mainUrl);if(n&&t===n)return!0}if(this.currentFork?.url){let n=this.getOrigin(this.currentFork.url);if(n&&t===n)return!0}return!1}setupMessageListener(){this.messageHandler=t=>{if(!this.autoResizing||!this.isValidMessageOrigin(t.origin))return;let n=t.data;if(!n||typeof n!="object"||n.type!=="adapt-resize")return;let{height:r}=n;if(typeof r!="number"||!Number.isFinite(r)||r<1)return;let o=t.source;this.mainIframe?.contentWindow===o?this.mainIframe.style.height=`${r}px`:this.forkIframe?.contentWindow===o&&(this.forkIframe.style.height=`${r}px`)},window.addEventListener("message",this.messageHandler)}sendDarkModeToIframe(t){if(!t)return;let n=t.src,r=n?this.getOrigin(n):null;if(!r)return;let o={type:"adapt-darkMode",darkMode:this.darkMode};try{t.contentWindow?.postMessage(o,r)}catch{}}sendAutoResizingToIframe(t){if(!t)return;let n=t.src,r=n?this.getOrigin(n):null;if(!r)return;let o={type:"adapt-autoResizing",autoResizing:this.autoResizing};try{t.contentWindow?.postMessage(o,r)}catch{}}setDarkMode(t){this.darkMode!==t&&(this.darkMode=t,this.rootElement&&(t?this.rootElement.classList.add("mb-adapt--dark"):this.rootElement.classList.remove("mb-adapt--dark")),this.capWidgetInstance?.setDarkMode(t),this.sendDarkModeToIframe(this.mainIframe),this.sendDarkModeToIframe(this.forkIframe))}setAutoResizing(t){this.autoResizing!==t&&(this.autoResizing=t,this.sendAutoResizingToIframe(this.mainIframe),this.sendAutoResizingToIframe(this.forkIframe),t||(this.mainIframe&&(this.mainIframe.style.height=""),this.forkIframe&&(this.forkIframe.style.height="")))}setForkDisplayMode(t){this.options.forkDisplayMode!==t&&(this.options.forkDisplayMode=t,this.mainIframe?.parentNode&&this.mainIframe.parentNode.removeChild(this.mainIframe),this.forkIframe?.parentNode&&this.forkIframe.parentNode.removeChild(this.forkIframe),this.rootElement&&(this.rootElement.innerHTML=""),this.wrapperElement=null,this.mainFrameElement=null,this.forkFrameElement=null,this.dragHandleElement=null,this.mainExpandButton=null,this.forkExpandButton=null,this.forkToolbarElement=null,this.forkTitleElement=null,this.mainContainer=null,this.dialogBackdrop=null,this.dialogElement=null,this.dialogExpandButton=null,this.backdropClickHandler=null,t==="dialog"?this.createDialogStructure():this.createSideBySideStructure(),t==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility(),this.mainUrl&&this.mainIframe&&this.showIframe(this.mainIframe),this.currentFork&&this.forkIframe&&this.showIframe(this.forkIframe),this.autoResizing&&(this.sendAutoResizingToIframe(this.mainIframe),this.sendAutoResizingToIframe(this.forkIframe)),t==="side-by-side"&&!this.currentFork&&this.forkQueue.length>0&&this.activateNextFork())}setDialogBackdropClose(t){this.options.dialogBackdropClose!==t&&(this.options.dialogBackdropClose=t,this.dialogBackdrop&&(this.backdropClickHandler&&(this.dialogBackdrop.removeEventListener("click",this.backdropClickHandler),this.backdropClickHandler=null),t&&(this.backdropClickHandler=()=>{this.handleForkMinimize()},this.dialogBackdrop.addEventListener("click",this.backdropClickHandler))))}setupDragListeners(){let t=this.splitPercentage,n=!1,r=a=>{if(!this.isDragging||!this.rootElement)return;let i=this.rootElement.getBoundingClientRect();if(i.width===0)return;t=(a.clientX-i.left)/i.width*100;let u=t,m=100-t;u<e.COLLAPSE_THRESHOLD?n||(n=!0,this.splitPercentage=0,this.updateSideBySideVisibility()):m<e.COLLAPSE_THRESHOLD?n||(n=!0,this.splitPercentage=100,this.updateSideBySideVisibility()):(n=!1,this.splitPercentage=Math.max(e.COLLAPSE_THRESHOLD,Math.min(100-e.COLLAPSE_THRESHOLD,t)),this.updateSideBySideWidths())},o=()=>{this.isDragging&&(this.isDragging=!1,n=!1,document.getElementById("mb-adapt-drag-overlay")?.remove(),this.rootElement?.querySelectorAll(".mb-adapt__iframe-overlay").forEach(a=>a.remove()),this.mainFrameElement&&(this.mainFrameElement.style.transition=""),this.forkFrameElement&&(this.forkFrameElement.style.transition=""),this.dragHandleElement&&(this.dragHandleElement.style.transition=""),this.splitPercentage!==0&&this.splitPercentage!==100&&t>=e.COLLAPSE_THRESHOLD&&100-t>=e.COLLAPSE_THRESHOLD&&(this.splitPercentage=t),t=this.splitPercentage)};this.mouseMoveHandler=r,this.mouseUpHandler=o,document.addEventListener("mousemove",this.mouseMoveHandler),document.addEventListener("mouseup",this.mouseUpHandler)}injectDefaultStyles(){if(document.getElementById("mb-adapt-styles"))return;let t=document.createElement("style");t.id="mb-adapt-styles",t.textContent=Bs,document.head.appendChild(t)}createRootElement(){this.rootElement=document.createElement("div"),this.rootElement.className=this.options.classNames?.root||"mb-adapt",this.darkMode&&this.rootElement.classList.add("mb-adapt--dark"),this.options.styles&&Object.assign(this.rootElement.style,this.options.styles),this.container.appendChild(this.rootElement)}parseInheritToken(){let t=this.options.inheritFrom;return t?"hash"in t?this.parseFromHash(t.hash):this.parseFromParam(t.param):null}parseFromHash(t){let n=window.location.hash.slice(1);if(!n)return null;let r=new URLSearchParams(n),o=r.get(t);if(!o)return null;r.delete(t);let a=r.toString(),i=window.location.pathname+window.location.search+(a?"#"+a:"");return history.replaceState(null,"",i),decodeURIComponent(o)}parseFromParam(t){let n=new URLSearchParams(window.location.search),r=n.get(t);if(!r)return null;n.delete(t);let o=n.toString(),a=window.location.pathname+(o?"?"+o:"")+window.location.hash;return history.replaceState(null,"",a),decodeURIComponent(r)}async init(){let t={onUrl:n=>this.onUrl(n),onSession:n=>{n.status==="STATUS_COMPLETED"&&!n.fork&&this.handleSessionComplete(),this.options.onSession&&this.options.onSession(n.status||"STATUS_UNSPECIFIED",n.fork)}};if(this.options.onOutput&&(t.onOutput=this.options.onOutput),this.options.sessionToken)this.sessionToken=this.options.sessionToken,await this.client.subscribe(this.sessionToken,t);else{let n=this.parseInheritToken(),r=n||this.options.inheritToken;if(this.options.inheritFrom&&!n){let i="hash"in this.options.inheritFrom?`hash key '${this.options.inheritFrom.hash}'`:`param '${this.options.inheritFrom.param}'`;console.error(`[AdaptWebClient] No inherit token found in URL ${i}`);return}let o=this.options.challengeToken;if(this.options.requiresChallenge&&!o&&!r&&(o=await this.showCapWidgetAndSolve(),!o)){console.error("[AdaptWebClient] Failed to solve challenge");return}let a;if(r)a=await this.client.runInherit(r,t);else{let i={...t};this.options.transmitter!==void 0&&(i.transmitter=this.options.transmitter),this.options.signals!==void 0&&(i.signals=this.options.signals),this.options.authToken!==void 0&&(i.authToken=this.options.authToken),o!==void 0&&(i.challengeToken=o),a=await this.client.run(i)}this.sessionToken=a.sessionToken}}async showCapWidgetAndSolve(){return new Promise(t=>{let n=document.createElement("div");this.rootElement?.insertBefore(n,this.rootElement.firstChild),this.capWidgetInstance=new ie({container:n,automationId:this.options.id,client:this.client.raw,...this.options.capWidgetOptions?.workerCount!==void 0&&{workerCount:this.options.capWidgetOptions.workerCount},...this.options.capWidgetOptions?.i18n&&{i18n:this.options.capWidgetOptions.i18n},onSolve:r=>{n.parentNode&&n.parentNode.removeChild(n),this.capWidgetInstance=null,t(r)},onError:r=>{console.error("[AdaptWebClient] Cap.js error:",r),n.parentNode&&n.parentNode.removeChild(n),this.capWidgetInstance=null,t(void 0)}}),this.darkMode&&this.capWidgetInstance.setDarkMode(!0)})}destroyCapWidget(){this.capWidgetInstance&&(this.capWidgetInstance.destroy(),this.capWidgetInstance=null)}async destroy(){this.destroyed=!0,this.destroyCapWidget(),this.sessionToken&&this.client.stop(this.sessionToken).catch(()=>{}),await this.client.unsubscribe(),this.mouseMoveHandler&&document.removeEventListener("mousemove",this.mouseMoveHandler),this.mouseUpHandler&&document.removeEventListener("mouseup",this.mouseUpHandler),this.messageHandler&&window.removeEventListener("message",this.messageHandler),this.resizeObserver&&this.resizeObserver.disconnect(),this.rootElement?.parentNode?.removeChild(this.rootElement),this.mainUrl=null,this.mainToken=void 0,this.forkQueue=[],this.currentFork=null,this.sessionToken=null,this.lastForkActive=null,this.rootElement=null,this.wrapperElement=null,this.mainFrameElement=null,this.forkFrameElement=null,this.mainIframe=null,this.forkIframe=null,this.dragHandleElement=null,this.mainExpandButton=null,this.forkExpandButton=null,this.forkToolbarElement=null,this.forkTitleElement=null,this.mainContainer=null,this.dialogBackdrop=null,this.dialogElement=null,this.dialogExpandButton=null,this.mouseMoveHandler=null,this.mouseUpHandler=null,this.resizeObserver=null,this.messageHandler=null,this.backdropClickHandler=null,this.stoppedPlaceholder=null}onUrl(t){if(this.destroyed)return;let n=t.fork||"";if(t.stopped){this.handleStoppedMessage(n);return}if(t.done){this.handleDoneMessage(n);return}t.url&&(n?this.handleForkUrl(t.url,t.token,n):this.handleMainUrl(t.url,t.token))}handleSessionComplete(){this.currentFork=null,this.forkQueue=[],this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.options.forkDisplayMode==="dialog"&&this.updateDialogVisibility()}handleDoneMessage(t){t&&(this.forkQueue=this.forkQueue.filter(n=>n.fork!==t&&!n.completed),this.currentFork?.fork===t&&(this.forkQueue.length>0?(this.currentFork=null,this.activateNextFork()):this.currentFork.completed=!0))}handleStoppedMessage(t){if(!t){this.mainUrl=null,this.mainToken=void 0,this.mainIframe&&(this.mainIframe.src="about:blank",this.mainIframe.classList.remove("mb-adapt__iframe--visible"),this.mainIframe.classList.add("mb-adapt__iframe--hidden")),this.showStoppedPlaceholder();return}this.forkQueue=this.forkQueue.filter(n=>n.fork!==t),this.currentFork?.fork===t&&(this.currentFork=null,this.forkQueue.length>0?this.activateNextFork():(this.forkIframe&&(this.forkIframe.src="about:blank",this.forkIframe.classList.remove("mb-adapt__iframe--visible"),this.forkIframe.classList.add("mb-adapt__iframe--hidden")),this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility()))}handleMainUrl(t,n){this.removeStoppedPlaceholder(),this.mainUrl=t,this.mainToken=n,this.updateMainIframe()}handleForkUrl(t,n,r){let o=(r.match(/\//g)||[]).length,a={url:t,token:n,fork:r,depth:o,time:Date.now()};this.mainUrl||(this.mainUrl=t,this.mainToken=n,this.updateMainIframe()),this.forkQueue.push(a),(!this.currentFork||this.currentFork.completed)&&(this.currentFork=null,this.activateNextFork())}activateNextFork(){this.forkQueue.length!==0&&(this.forkQueue.sort((t,n)=>t.depth!==n.depth?n.depth-t.depth:n.time-t.time),this.currentFork=this.forkQueue.shift(),this.forkTitleElement&&(this.forkTitleElement.textContent=this.currentFork.fork||"Fork"),this.updateForkIframe(),this.options.forkDisplayMode==="dialog"?this.updateDialogVisibility():this.updateSideBySideVisibility())}updateMainIframe(){if(!this.rootElement||!this.mainUrl||!this.mainIframe)return;let t=Qn(this.mainUrl,this.mainToken);this.mainIframe.src!==t&&(this.mainIframe.src=t),this.showIframe(this.mainIframe),this.options.forkDisplayMode==="side-by-side"&&this.updateSideBySideVisibility()}updateForkIframe(){if(!this.currentFork||!this.forkIframe)return;let t=Qn(this.currentFork.url,this.currentFork.token),n=this.forkIframe.parentElement;if(n){let r=this.createHiddenIframe();n.replaceChild(r,this.forkIframe),this.forkIframe=r}this.forkIframe.src=t,this.showIframe(this.forkIframe)}createSideBySideStructure(){this.wrapperElement||(this.rootElement.innerHTML="",this.wrapperElement=document.createElement("div"),this.wrapperElement.className=this.options.classNames?.wrapper||"mb-adapt__wrapper",this.mainFrameElement=document.createElement("div"),this.mainFrameElement.className=this.options.classNames?.frameMain||`${this.options.classNames?.frame||"mb-adapt__frame"} mb-adapt__frame--main`,this.mainFrameElement.classList.add("mb-adapt__frame--hidden"),this.forkFrameElement=document.createElement("div"),this.forkFrameElement.className=this.options.classNames?.frameFork||`${this.options.classNames?.frame||"mb-adapt__frame"} mb-adapt__frame--fork`,this.forkFrameElement.classList.add("mb-adapt__frame--hidden"),this.mainIframe||(this.mainIframe=this.createHiddenIframe()),this.forkIframe||(this.forkIframe=this.createHiddenIframe()),this.forkIframe.style.borderRadius="",this.mainFrameElement.appendChild(this.mainIframe),this.forkToolbarElement=this.createForkToolbar(),this.forkFrameElement.classList.add("mb-adapt__frame--has-toolbar"),this.forkFrameElement.appendChild(this.forkToolbarElement),this.forkFrameElement.appendChild(this.forkIframe),this.dragHandleElement=document.createElement("div"),this.dragHandleElement.className=this.options.classNames?.dragHandle||"mb-adapt__drag-handle",this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.dragHandleElement.style.transform="translateX(-50%)",this.dragHandleElement.addEventListener("mousedown",t=>{t.preventDefault(),this.isDragging=!0,this.mainFrameElement&&(this.mainFrameElement.style.transition="none"),this.forkFrameElement&&(this.forkFrameElement.style.transition="none"),this.dragHandleElement&&(this.dragHandleElement.style.transition="none");let n=document.createElement("div");n.className="mb-adapt__drag-overlay",n.id="mb-adapt-drag-overlay",this.rootElement.appendChild(n),[this.mainFrameElement,this.forkFrameElement].forEach(r=>{if(r){let o=document.createElement("div");o.className="mb-adapt__iframe-overlay",r.appendChild(o)}})}),this.mainExpandButton=document.createElement("button"),this.mainExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.mainExpandButton.classList.add("mb-adapt__expand-button--left"),this.mainExpandButton.innerHTML="\u203A",this.mainExpandButton.setAttribute("aria-label","Expand main frame"),this.mainExpandButton.setAttribute("title","Expand main frame"),this.mainExpandButton.addEventListener("click",()=>{this.splitPercentage=50,this.updateSideBySideVisibility()}),this.forkExpandButton=document.createElement("button"),this.forkExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.forkExpandButton.classList.add("mb-adapt__expand-button--right"),this.forkExpandButton.innerHTML="\u2039",this.forkExpandButton.setAttribute("aria-label","Expand fork frame"),this.forkExpandButton.setAttribute("title","Expand fork frame"),this.forkExpandButton.addEventListener("click",()=>{this.splitPercentage=50,this.updateSideBySideVisibility()}),this.wrapperElement.appendChild(this.mainFrameElement),this.wrapperElement.appendChild(this.forkFrameElement),this.wrapperElement.appendChild(this.dragHandleElement),this.wrapperElement.appendChild(this.mainExpandButton),this.wrapperElement.appendChild(this.forkExpandButton),this.rootElement.appendChild(this.wrapperElement))}isResponsiveMode(){return this.rootElement?this.rootElement.offsetWidth<e.RESPONSIVE_BREAKPOINT:!1}emitForkActive(){if(!this.options.onForkActive)return;let t;this.currentFork?this.options.forkDisplayMode==="dialog"?t=!0:t=100-this.splitPercentage>=e.COLLAPSE_THRESHOLD&&!this.isResponsiveMode():t=!1,t!==this.lastForkActive&&(this.lastForkActive=t,this.options.onForkActive(t))}updateSideBySideVisibility(){if(!this.mainFrameElement||!this.forkFrameElement||!this.dragHandleElement)return;if(!this.currentFork){this.mainFrameElement.style.width="100%",this.mainFrameElement.classList.remove("mb-adapt__frame--hidden"),this.forkFrameElement.classList.add("mb-adapt__frame--hidden"),this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.mainExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.emitForkActive();return}if(this.isResponsiveMode()){this.mainFrameElement.style.width="0%",this.mainFrameElement.classList.add("mb-adapt__frame--hidden"),this.forkFrameElement.style.width="100%",this.forkFrameElement.classList.remove("mb-adapt__frame--hidden"),this.dragHandleElement.classList.add("mb-adapt__frame--hidden"),this.mainExpandButton.classList.add("mb-adapt__expand-button--visible"),this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.emitForkActive();return}let t=this.splitPercentage,n=100-this.splitPercentage,r=t<e.COLLAPSE_THRESHOLD,o=n<e.COLLAPSE_THRESHOLD;this.mainFrameElement.style.width=r?"0%":`${t}%`,r?this.mainFrameElement.classList.add("mb-adapt__frame--hidden"):this.mainFrameElement.classList.remove("mb-adapt__frame--hidden"),this.forkFrameElement.style.width=o?"0%":`${n}%`,o?this.forkFrameElement.classList.add("mb-adapt__frame--hidden"):this.forkFrameElement.classList.remove("mb-adapt__frame--hidden"),this.dragHandleElement.style.left=`${this.splitPercentage}%`,this.dragHandleElement.classList.remove("mb-adapt__frame--hidden"),r||o?this.dragHandleElement.classList.add("mb-adapt__drag-handle--disabled"):this.dragHandleElement.classList.remove("mb-adapt__drag-handle--disabled"),r?this.mainExpandButton.classList.add("mb-adapt__expand-button--visible"):this.mainExpandButton.classList.remove("mb-adapt__expand-button--visible"),o?this.forkExpandButton.classList.add("mb-adapt__expand-button--visible"):this.forkExpandButton.classList.remove("mb-adapt__expand-button--visible"),this.emitForkActive()}updateSideBySideWidths(){if(!this.mainFrameElement||!this.forkFrameElement||!this.dragHandleElement)return;let t=this.splitPercentage,n=100-this.splitPercentage;this.mainFrameElement.style.width=`${t}%`,this.forkFrameElement.style.width=`${n}%`,this.dragHandleElement.style.left=`${this.splitPercentage}%`}createForkToolbar(){let t=document.createElement("div");t.className=this.options.classNames?.toolbar||"mb-adapt__toolbar";let n=document.createElement("span");n.className="mb-adapt__toolbar-title",n.textContent=this.currentFork?.fork||"Fork",this.forkTitleElement=n;let r=document.createElement("div");r.className="mb-adapt__toolbar-actions";let o=document.createElement("button");o.className=this.options.classNames?.toolbarButton||"mb-adapt__toolbar-btn",o.setAttribute("aria-label","Minimize fork"),o.setAttribute("title","Minimize"),o.innerHTML='<svg viewBox="0 0 16 16"><line x1="3" y1="8" x2="13" y2="8"/></svg>',o.addEventListener("click",()=>{this.handleForkMinimize()});let a=document.createElement("button");return a.className=`${this.options.classNames?.toolbarButton||"mb-adapt__toolbar-btn"} mb-adapt__toolbar-btn--exit`,a.setAttribute("aria-label","Close fork"),a.setAttribute("title","Close"),a.innerHTML='<svg viewBox="0 0 16 16"><line x1="4" y1="4" x2="12" y2="12"/><line x1="12" y1="4" x2="4" y2="12"/></svg>',a.addEventListener("click",()=>{this.handleForkExit()}),r.appendChild(o),r.appendChild(a),t.appendChild(n),t.appendChild(r),t}handleForkMinimize(){this.currentFork&&(this.options.forkDisplayMode==="side-by-side"?(this.splitPercentage=100,this.updateSideBySideVisibility()):(this.forkQueue.unshift(this.currentFork),this.currentFork=null,this.updateDialogVisibility()))}handleForkExit(){if(!this.currentFork)return;let t=this.currentFork.fork;this.sessionToken&&this.client.stop(this.sessionToken,t).catch(()=>{}),this.forkQueue=this.forkQueue.filter(n=>n.fork!==t),this.currentFork=null,this.forkQueue.length>0?this.activateNextFork():(this.forkIframe&&(this.forkIframe.src="about:blank",this.forkIframe.classList.remove("mb-adapt__iframe--visible"),this.forkIframe.classList.add("mb-adapt__iframe--hidden")),this.options.forkDisplayMode==="side-by-side"?this.updateSideBySideVisibility():this.updateDialogVisibility())}createDialogStructure(){if(this.mainContainer)return;this.rootElement.innerHTML="",this.mainContainer=document.createElement("div"),this.mainContainer.className="mb-adapt__main-container",this.mainIframe||(this.mainIframe=this.createHiddenIframe()),this.mainContainer.appendChild(this.mainIframe),this.dialogExpandButton=document.createElement("button"),this.dialogExpandButton.className=this.options.classNames?.expandButton||"mb-adapt__expand-button",this.dialogExpandButton.classList.add("mb-adapt__expand-button--dialog"),this.dialogExpandButton.innerHTML="\u2304",this.dialogExpandButton.setAttribute("aria-label","Open fork dialog"),this.dialogExpandButton.setAttribute("title","Open fork dialog"),this.dialogExpandButton.addEventListener("click",()=>{this.activateNextFork()}),this.dialogBackdrop=document.createElement("div"),this.dialogBackdrop.className=this.options.classNames?.dialogBackdrop||"mb-adapt__dialog-backdrop",this.options.dialogBackdropClose&&(this.backdropClickHandler=()=>{this.handleForkMinimize()},this.dialogBackdrop.addEventListener("click",this.backdropClickHandler)),this.dialogElement=document.createElement("div"),this.dialogElement.className=this.options.classNames?.dialog||"mb-adapt__dialog",this.forkToolbarElement=this.createForkToolbar(),this.dialogElement.appendChild(this.forkToolbarElement);let t=document.createElement("div");t.style.flex="1",t.style.overflow="auto",t.style.minHeight="0",this.forkIframe||(this.forkIframe=this.createHiddenIframe()),this.forkIframe.style.borderRadius="0",t.appendChild(this.forkIframe),this.dialogElement.appendChild(t),this.mainContainer.appendChild(this.dialogExpandButton),this.rootElement.appendChild(this.mainContainer),this.rootElement.appendChild(this.dialogBackdrop),this.rootElement.appendChild(this.dialogElement)}updateDialogVisibility(){if(!this.dialogExpandButton||!this.dialogBackdrop||!this.dialogElement)return;let t=this.forkQueue.length>0,n=this.currentFork!==null;!n&&t?this.dialogExpandButton.classList.add("mb-adapt__expand-button--visible"):this.dialogExpandButton.classList.remove("mb-adapt__expand-button--visible"),n?(this.dialogBackdrop.classList.add("mb-adapt__dialog-backdrop--visible"),this.dialogElement.classList.add("mb-adapt__dialog--visible")):(this.dialogBackdrop.classList.remove("mb-adapt__dialog-backdrop--visible"),this.dialogElement.classList.remove("mb-adapt__dialog--visible")),this.emitForkActive()}createHiddenIframe(){let t=document.createElement("iframe");return t.className=this.options.classNames?.iframe||"mb-adapt__iframe",t.setAttribute("sandbox","allow-downloads allow-same-origin allow-scripts allow-popups allow-forms allow-modals"),t.setAttribute("allow","geolocation; accelerometer; midi; microphone; camera; magnetometer; gyroscope; fullscreen; payment;"),t.src="about:blank",t.addEventListener("load",()=>{t.src&&t.src!=="about:blank"&&(this.sendDarkModeToIframe(t),this.sendAutoResizingToIframe(t))}),t}showStoppedPlaceholder(){if(!this.mainFrameElement&&!this.mainContainer)return;this.removeStoppedPlaceholder(),this.stoppedPlaceholder=document.createElement("div"),this.stoppedPlaceholder.className="mb-adapt__stopped-placeholder",this.stoppedPlaceholder.textContent="This session has been stopped",(this.mainFrameElement||this.mainContainer).appendChild(this.stoppedPlaceholder)}removeStoppedPlaceholder(){this.stoppedPlaceholder&&(this.stoppedPlaceholder.remove(),this.stoppedPlaceholder=null)}showIframe(t){t.classList.remove("mb-adapt__iframe--hidden"),t.offsetHeight,t.classList.add("mb-adapt__iframe--visible")}};return Ja(Ws);})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mochabug/adapt-web",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-rc51",
|
|
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-
|
|
51
|
+
"@mochabug/adapt-core": "^1.0.0-rc47"
|
|
52
52
|
}
|
|
53
53
|
}
|