donobu 2.31.1 → 2.32.1
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/apis/GptConfigsApi.d.ts.map +1 -1
- package/dist/apis/GptConfigsApi.js +2 -0
- package/dist/apis/GptConfigsApi.js.map +1 -1
- package/dist/assets/generated/version +1 -1
- package/dist/assets/interactive-elements-tracker.js +89 -62
- package/dist/assets/page-interactions-tracker.js +15 -42
- package/dist/assets/smart-selector-generator.js +839 -259
- package/dist/bindings/PageInteractionTracker.d.ts +27 -1
- package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/bindings/PageInteractionTracker.js +172 -61
- package/dist/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/apis/GptConfigsApi.d.ts.map +1 -1
- package/dist/esm/apis/GptConfigsApi.js +2 -0
- package/dist/esm/apis/GptConfigsApi.js.map +1 -1
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/assets/interactive-elements-tracker.js +89 -62
- package/dist/esm/assets/page-interactions-tracker.js +15 -42
- package/dist/esm/assets/smart-selector-generator.js +839 -259
- package/dist/esm/bindings/PageInteractionTracker.d.ts +27 -1
- package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
- package/dist/esm/bindings/PageInteractionTracker.js +172 -61
- package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
- package/dist/esm/managers/AgentsManager.d.ts +9 -0
- package/dist/esm/managers/AgentsManager.d.ts.map +1 -1
- package/dist/esm/managers/AgentsManager.js +52 -0
- package/dist/esm/managers/AgentsManager.js.map +1 -1
- package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/esm/managers/CodeGenerator.js +1 -0
- package/dist/esm/managers/CodeGenerator.js.map +1 -1
- package/dist/esm/managers/DonobuFlow.d.ts +1 -0
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +23 -0
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.d.ts +18 -2
- package/dist/esm/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.js +33 -14
- package/dist/esm/managers/InteractionVisualizer.js.map +1 -1
- package/dist/esm/managers/PageInspector.d.ts +1 -0
- package/dist/esm/managers/PageInspector.d.ts.map +1 -1
- package/dist/esm/managers/PageInspector.js +90 -10
- package/dist/esm/managers/PageInspector.js.map +1 -1
- package/dist/esm/models/BrowserConfig.d.ts +56 -56
- package/dist/esm/models/CreateDonobuFlow.d.ts +48 -48
- package/dist/esm/models/FlowMetadata.d.ts +54 -54
- package/dist/esm/models/InteractableElement.d.ts +4 -3
- package/dist/esm/models/InteractableElement.d.ts.map +1 -1
- package/dist/esm/models/InteractableElement.js +9 -4
- package/dist/esm/models/InteractableElement.js.map +1 -1
- package/dist/esm/persistence/DonobuSqliteDb.d.ts.map +1 -1
- package/dist/esm/persistence/DonobuSqliteDb.js +44 -0
- package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/esm/tools/ChooseSelectOptionTool.d.ts.map +1 -1
- package/dist/esm/tools/ChooseSelectOptionTool.js +2 -1
- package/dist/esm/tools/ChooseSelectOptionTool.js.map +1 -1
- package/dist/esm/tools/InputRandomizedEmailAddressTool.d.ts +6 -6
- package/dist/esm/tools/InputTextTool.d.ts +9 -0
- package/dist/esm/tools/InputTextTool.d.ts.map +1 -1
- package/dist/esm/tools/InputTextTool.js +8 -2
- package/dist/esm/tools/InputTextTool.js.map +1 -1
- package/dist/esm/tools/PressKeyTool.d.ts.map +1 -1
- package/dist/esm/tools/PressKeyTool.js +8 -3
- package/dist/esm/tools/PressKeyTool.js.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/esm/tools/ReplayableInteraction.js +14 -7
- package/dist/esm/tools/ReplayableInteraction.js.map +1 -1
- package/dist/esm/tools/RunAccessibilityTestTool.d.ts +0 -8
- package/dist/esm/tools/RunAccessibilityTestTool.d.ts.map +1 -1
- package/dist/esm/tools/RunAccessibilityTestTool.js +20 -38
- package/dist/esm/tools/RunAccessibilityTestTool.js.map +1 -1
- package/dist/esm/tools/ScrollPageTool.d.ts +52 -11
- package/dist/esm/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/esm/tools/ScrollPageTool.js +63 -57
- package/dist/esm/tools/ScrollPageTool.js.map +1 -1
- package/dist/esm/tools/TriggerDonobuFlowTool.d.ts +116 -116
- package/dist/esm/utils/BrowserUtils.js +1 -1
- package/dist/esm/utils/BrowserUtils.js.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/esm/utils/PlaywrightUtils.js +0 -2
- package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
- package/dist/managers/AgentsManager.d.ts +9 -0
- package/dist/managers/AgentsManager.d.ts.map +1 -1
- package/dist/managers/AgentsManager.js +52 -0
- package/dist/managers/AgentsManager.js.map +1 -1
- package/dist/managers/CodeGenerator.d.ts.map +1 -1
- package/dist/managers/CodeGenerator.js +1 -0
- package/dist/managers/CodeGenerator.js.map +1 -1
- package/dist/managers/DonobuFlow.d.ts +1 -0
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +23 -0
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/InteractionVisualizer.d.ts +18 -2
- package/dist/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/managers/InteractionVisualizer.js +33 -14
- package/dist/managers/InteractionVisualizer.js.map +1 -1
- package/dist/managers/PageInspector.d.ts +1 -0
- package/dist/managers/PageInspector.d.ts.map +1 -1
- package/dist/managers/PageInspector.js +90 -10
- package/dist/managers/PageInspector.js.map +1 -1
- package/dist/models/BrowserConfig.d.ts +56 -56
- package/dist/models/CreateDonobuFlow.d.ts +48 -48
- package/dist/models/FlowMetadata.d.ts +54 -54
- package/dist/models/InteractableElement.d.ts +4 -3
- package/dist/models/InteractableElement.d.ts.map +1 -1
- package/dist/models/InteractableElement.js +9 -4
- package/dist/models/InteractableElement.js.map +1 -1
- package/dist/persistence/DonobuSqliteDb.d.ts.map +1 -1
- package/dist/persistence/DonobuSqliteDb.js +44 -0
- package/dist/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/tools/ChooseSelectOptionTool.d.ts.map +1 -1
- package/dist/tools/ChooseSelectOptionTool.js +2 -1
- package/dist/tools/ChooseSelectOptionTool.js.map +1 -1
- package/dist/tools/InputRandomizedEmailAddressTool.d.ts +6 -6
- package/dist/tools/InputTextTool.d.ts +9 -0
- package/dist/tools/InputTextTool.d.ts.map +1 -1
- package/dist/tools/InputTextTool.js +8 -2
- package/dist/tools/InputTextTool.js.map +1 -1
- package/dist/tools/PressKeyTool.d.ts.map +1 -1
- package/dist/tools/PressKeyTool.js +8 -3
- package/dist/tools/PressKeyTool.js.map +1 -1
- package/dist/tools/ReplayableInteraction.d.ts.map +1 -1
- package/dist/tools/ReplayableInteraction.js +14 -7
- package/dist/tools/ReplayableInteraction.js.map +1 -1
- package/dist/tools/RunAccessibilityTestTool.d.ts +0 -8
- package/dist/tools/RunAccessibilityTestTool.d.ts.map +1 -1
- package/dist/tools/RunAccessibilityTestTool.js +20 -38
- package/dist/tools/RunAccessibilityTestTool.js.map +1 -1
- package/dist/tools/ScrollPageTool.d.ts +52 -11
- package/dist/tools/ScrollPageTool.d.ts.map +1 -1
- package/dist/tools/ScrollPageTool.js +63 -57
- package/dist/tools/ScrollPageTool.js.map +1 -1
- package/dist/tools/TriggerDonobuFlowTool.d.ts +116 -116
- package/dist/utils/BrowserUtils.js +1 -1
- package/dist/utils/BrowserUtils.js.map +1 -1
- package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
- package/dist/utils/PlaywrightUtils.js +0 -2
- package/dist/utils/PlaywrightUtils.js.map +1 -1
- package/package.json +2 -1
- package/dist/assets/axe.js +0 -47397
- package/dist/esm/assets/axe.js +0 -47397
|
@@ -142,6 +142,7 @@ class DonobuFlow {
|
|
|
142
142
|
async run() {
|
|
143
143
|
while (true) {
|
|
144
144
|
try {
|
|
145
|
+
this.checkIfPageClosedOrThrow();
|
|
145
146
|
this.controlPanel.update({ state: this.metadata.state });
|
|
146
147
|
switch (this.metadata.state) {
|
|
147
148
|
case 'UNSTARTED':
|
|
@@ -201,6 +202,11 @@ class DonobuFlow {
|
|
|
201
202
|
}
|
|
202
203
|
return this.metadata.result;
|
|
203
204
|
}
|
|
205
|
+
checkIfPageClosedOrThrow() {
|
|
206
|
+
if (this.focusedPage.current?.isClosed()) {
|
|
207
|
+
throw new PageClosedException_1.PageClosedException();
|
|
208
|
+
}
|
|
209
|
+
}
|
|
204
210
|
/**
|
|
205
211
|
* This method re-assigns the currently focused page (presumably due to the
|
|
206
212
|
* current page being closed). If there are no other pages in the current
|
|
@@ -633,6 +639,15 @@ Message: ${dialog.message()}`;
|
|
|
633
639
|
browserContext.on('page', async (page) => {
|
|
634
640
|
// Update the currently focused page if new tabs or pop-ups occur.
|
|
635
641
|
this.focusedPage.current = page;
|
|
642
|
+
// Load the virtual mouse.
|
|
643
|
+
page.on('domcontentloaded', async () => {
|
|
644
|
+
try {
|
|
645
|
+
await this.interactionVisualizer.pointAt(page);
|
|
646
|
+
}
|
|
647
|
+
catch (_error) {
|
|
648
|
+
// Pass.
|
|
649
|
+
}
|
|
650
|
+
});
|
|
636
651
|
});
|
|
637
652
|
// Do the basic browser setup followed by additional initializations that
|
|
638
653
|
// are specific to this flow.
|
|
@@ -1016,6 +1031,11 @@ preview image, you must first scroll the page down.`,
|
|
|
1016
1031
|
let userInterruptException = null;
|
|
1017
1032
|
// Set up abort controller and control panel polling
|
|
1018
1033
|
const abortController = new AbortController();
|
|
1034
|
+
// Set up timeout that will abort the GPT call if necessary.
|
|
1035
|
+
const timeoutMillis = 30000;
|
|
1036
|
+
const timeoutId = setTimeout(() => {
|
|
1037
|
+
abortController.abort(`Request timed out after ${timeoutMillis} milliseconds`);
|
|
1038
|
+
}, timeoutMillis);
|
|
1019
1039
|
// Start polling for control panel actions
|
|
1020
1040
|
const poller = setInterval(() => {
|
|
1021
1041
|
const userAction = this.controlPanel.popLatestUserAction();
|
|
@@ -1025,6 +1045,7 @@ preview image, you must first scroll the page down.`,
|
|
|
1025
1045
|
userInterruptException = new UserInterruptException_1.UserInterruptException(userAction);
|
|
1026
1046
|
abortController.abort('User interrupted GPT call');
|
|
1027
1047
|
clearInterval(poller);
|
|
1048
|
+
clearTimeout(timeoutId);
|
|
1028
1049
|
}, 250);
|
|
1029
1050
|
try {
|
|
1030
1051
|
const result = await this.gptClient.getToolCalls(messagesToSendToGpt, tools, { signal: abortController.signal });
|
|
@@ -1165,6 +1186,8 @@ Subsequent user messages will include two to four of images of a webpage.
|
|
|
1165
1186
|
interact with the elements that are in this page scroll preview, the page must be scrolled up or down first.
|
|
1166
1187
|
|
|
1167
1188
|
The annotations can be used designate the target for various tool calls that interact with the website.
|
|
1189
|
+
Each annotation has a brief HTML snippet of the element it corresponds to, and, if the element is
|
|
1190
|
+
scrollable, it will be denoted with the valid scroll directions for it.
|
|
1168
1191
|
|
|
1169
1192
|
IMPORTANT, a user may add additional instructions and context via sending a message that starts wtih...
|
|
1170
1193
|
\`\`\`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonobuFlow.js","sourceRoot":"","sources":["../../../src/managers/DonobuFlow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DonobuFlow.js","sourceRoot":"","sources":["../../../src/managers/DonobuFlow.ts"],"names":[],"mappings":";AAAA,gBAAgB;;;AA4DhB,0CAwEC;AAhID,yDAAyE;AAczE,4CAA4C;AAC5C,kDAA+C;AAC/C,8DAA2D;AAC3D,uEAGuC;AACvC,uGAAoG;AAKpG,6DAA0D;AAC1D,8EAA2E;AAC3E,kFAG4C;AAC5C,kDAA+C;AAE/C,+EAA4E;AAE5E,8FAA2F;AAC3F,2EAAwE;AACxE,wDAAqD;AACrD,2EAAwE;AACxE,iEAA8D;AAC9D,mDAAgD;AAGhD,8DAA2D;AAE3D,iFAA8E;AAC9E,oFAG6C;AAE7C;;;GAGG;AACI,KAAK,UAAU,eAAe,CACnC,WAAmB,EACnB,UAA4B,EAC5B,IAAiB,EACjB,eAA2B,EAC3B,SAAoB;IAEpB,MAAM,eAAe,GAAG,IAAI;QAC1B,CAAC,CAAC,MAAM,qBAAS,CAAC,wBAAwB,CACtC,MAAM,iCAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAClD,UAAU,CAAC,uBAAuB,CACnC;QACH,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,aAAa,GAAG;;;;2CAImB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;EAS/E,WAAW,EAAE,CAAC;IACd,MAAM,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAC7C,eAAe;SACZ,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,OAAO,qBAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,CAAC;QACb,OAAO,EAAE,CAAC,eAAe,CAAC;QAC1B,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QACtC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QACzB,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC3B,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,EACJ,IAAI,EACJ,CAAC,CACF,CAAC;IACF,MAAM,WAAW,GAAG;EACpB,wBAAwB;CACzB,CAAC;IACA,MAAM,qBAAqB,GAAqB,eAAe;QAC7D,CAAC,CAAC;YACE,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,eAAe;SACvB;QACH,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,eAAe,GAAa;QAChC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,WAAW;KAClB,CAAC;IACF,MAAM,uBAAuB,GAAG,MAAM,SAAS,CAAC,mBAAmB,CACjE;QACE;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,qBAAqB;gBAC1B,CAAC,CAAC,CAAC,qBAAqB,EAAE,eAAe,CAAC;gBAC1C,CAAC,CAAC,CAAC,eAAe,CAAC;SACtB;KACF,EACD,UAAU,CACX,CAAC;IACF,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAa,UAAU;IAQrB,YACkB,YAAgC,EAChC,OAA+B,EAC/B,cAA8B,EAC9B,WAA6B,EAC7B,SAA2B,EAC3B,WAAwB,EACxB,qBAA4C,EAC5C,iBAAqC,EACrC,gBAA4B,EAC5B,WAAyB,EACzB,WAAwB,EACxB,QAAsB,EACtB,YAA0B;QAZ1B,iBAAY,GAAZ,YAAY,CAAoB;QAChC,YAAO,GAAP,OAAO,CAAwB;QAC/B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAkB;QAC7B,cAAS,GAAT,SAAS,CAAkB;QAC3B,gBAAW,GAAX,WAAW,CAAa;QACxB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,sBAAiB,GAAjB,iBAAiB,CAAoB;QACrC,qBAAgB,GAAhB,gBAAgB,CAAY;QAC5B,gBAAW,GAAX,WAAW,CAAc;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAc;QACtB,iBAAY,GAAZ,YAAY,CAAc;QAE1C,IAAI,CAAC,aAAa,GAAG,IAAI,6BAAa,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACI,KAAK,CAAC,GAAG;QACd,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAEzD,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;oBAC5B,KAAK,WAAW;wBACd,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;wBACzB,MAAM;oBACR,KAAK,cAAc;wBACjB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;wBAC5B,MAAM;oBACR,KAAK,gBAAgB;wBACnB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;wBAC7B,MAAM;oBACR,KAAK,8BAA8B;wBACjC,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;wBACxC,MAAM;oBACR,KAAK,iCAAiC;wBACpC,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;wBAC3C,MAAM;oBACR,KAAK,QAAQ;wBACX,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACtB,MAAM;oBACR,KAAK,UAAU;wBACb,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;wBACxB,MAAM;oBACR,KAAK,QAAQ;wBACX,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACtB,MAAM;oBACR,KAAK,SAAS;wBACZ,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;wBACvB,MAAM;gBACV,CAAC;gBAED,IAAI,IAAA,yBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;oBACxB,MAAM;gBACR,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;oBAE3D,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,IAAI,+CAAsB,CAAC,UAAU,CAAC,CAAC;oBAC/C,CAAC;oBAED,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,yCAAmB,EAAE,CAAC;oBACzC,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBACxC,CAAC;qBAAM,IAAI,KAAK,YAAY,qEAAiC,EAAE,CAAC;oBAC9D,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;qBAAM,IAAI,KAAK,YAAY,+CAAsB,EAAE,CAAC;oBACnD,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAEO,wBAAwB;QAC9B,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;YACzC,MAAM,IAAI,yCAAmB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,MAA2B;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAE7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,oEAAoE;YACpE,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;YAC/B,kBAAS,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG;gBACrB,MAAM,EAAE,uDAAuD;aAChE,CAAC;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sBAAsB,CAClC,KAAwC;QAExC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC/B,kBAAS,CAAC,KAAK,CACb,2BAA2B,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,2CAA2C,EACjG,KAAK,CACN,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG;YACrB,MAAM,EAAE,2BAA2B,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,2CAA2C;YACzG,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,kBAAkB,CAC9B,KAA6B;QAE7B,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAE7B,kBAAS,CAAC,IAAI,CAAC,+BAA+B,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjE,0CAA0C;QAC1C,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;YACxB,KAAK,OAAO;gBACV,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;gBAC/B,MAAM;YACR,KAAK,QAAQ;gBACX,sCAAsC;gBACtC,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;gBAE3D,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;wBACzB,CAAC,CAAC,eAAe;wBACjB,CAAC,CAAC,8EAA8E,CAAC;oBACnF,kBAAS,CAAC,KAAK,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;oBAClE,kDAAkD;oBAClD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;wBACpB,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,GAAG,UAAU,CAAC,qBAAqB,KAAK,IAAI,EAAE;6BACrD;yBACF;qBACF,CAAC,CAAC;oBACH,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;oBAClC,MAAM,QAAQ,GAAG;wBACf,EAAE,EAAE,qBAAS,CAAC,qBAAqB,EAAE;wBACrC,QAAQ,EAAE,2DAA8B,CAAC,IAAI;wBAC7C,UAAU,EAAE;4BACV,eAAe,EAAE,IAAI;yBACyC;wBAChE,OAAO,EAAE;4BACP,YAAY,EAAE,IAAI;4BAClB,MAAM,EAAE,IAAI;4BACZ,QAAQ,EAAE,IAAI;yBACf;wBACD,eAAe,EAAE,IAAI;wBACrB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,OAAQ,CAAC,GAAG,EAAE;wBACrC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;wBAC/B,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;qBACf,CAAC;oBACrB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAChE,+DAA+D;oBAC/D,6BAA6B;oBAC7B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;wBACnB,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC;oBACvC,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAC;gBACjC,MAAM;YACR,KAAK,KAAK;gBACR,2BAA2B;gBAC3B,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;gBAClC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;oBAC1B,IAAI,EAAE,qDAAyB,CAAC,IAAI;oBACpC,UAAU,EAAE;wBACV,SAAS,EAAE,kBAAkB;wBAC7B,OAAO,EAAE,kBAAkB;qBAC6B;iBAC3D,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,gBAAgB,CAAC;gBACvC,MAAM;QACV,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,qBAAqB,CAAC,KAAc;QAChD,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC/B,kBAAS,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG;YACrB,MAAM,EAAE,mBAAmB;SAC5B,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU;QACtB,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,2BAAY,CAAC,sBAAsB,CAC5D,IAAI,CAAC,cAAc,CACpB,CAAC;gBACF,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;YACzE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,kBAAS,CAAC,KAAK,CACb,sDAAsD,EACtD,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;QAED,UAAU,CAAC,0BAA0B,CACnC,IAAI,CAAC,QAAQ,CAAC,WAAW,EACzB,IAAI,CAAC,QAAQ,CAAC,EAAE,CACjB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,0BAA0B,CACvC,WAA0B,EAC1B,MAAc;QAEd,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,KAAK,CAAC,WAAW,EAAE;gBACjB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,EAAE,EAAE,MAAM;iBACX,CAAC;aACH,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjB,kBAAS,CAAC,KAAK,CACb,gDAAgD,WAAW,EAAE,EAC7D,KAAK,CACN,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,kBAAS,CAAC,KAAK,CACb,gDAAgD,WAAW,EAAE,EAC7D,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,MAAc;QACnC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAEvC,QAAQ,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC;YACf,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,4BAA4B,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBAE/D,IACE,4BAA4B,EAAE,IAAI,KAAK,iDAAuB,CAAC,IAAI,EACnE,CAAC;oBACD,oBAAoB;oBACpB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;oBAC/B,MAAM,cAAc,GAAG,4BAA4B,CAAC,UAAU,CAAC;oBAC/D,MAAM,SAAS,GAAG,qBAAS,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;oBAE9D,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;wBAChC,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;4BACzB,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;wBACxB,CAAC;6BAAM,CAAC;4BACN,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACzB,CAAC;oBACH,CAAC;yBAAM,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;wBACzD,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACN,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACjC,CAAC;oBAED,MAAM,aAAa,GAAG,MAAM,iCAAe,CAAC,sBAAsB,CAChE,MAAM,CAAC,IAAI,EAAU,CACtB,CAAC;oBACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChB,aAAa,CACd,CAAC;oBACF,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBAEzC,MAAM,QAAQ,GAAG;wBACf,EAAE,EAAE,qBAAS,CAAC,qBAAqB,EAAE;wBACrC,QAAQ,EAAE,iDAAuB,CAAC,IAAI;wBACtC,UAAU,EAAE,qBAAS,CAAC,YAAY,CAAC,cAAc,CAAC;wBAClD,OAAO,EAAE,+BAAc,CAAC,UAAU,EAAE;wBACpC,eAAe,EAAE,eAAe;wBAChC,IAAI,EAAG,MAAM,CAAC,IAAI,EAAW,CAAC,GAAG,EAAE;wBACnC,SAAS,EAAE,SAAS;wBACpB,WAAW,EAAE,WAAW;qBACN,CAAC;oBAErB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAClE,CAAC;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;oBAClD,+CAA+C;oBAC/C,MAAM,eAAe,GAAG,UAAU,CAAC,gCAAgC,CACjE,IAAI,CAAC,WAAW,CACjB,CAAC;oBACF,MAAM,MAAM,GAAG;EACvB,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;;;;oDAIU,MAAM,CAAC,IAAI,EAAG,CAAC,GAAG,EAAE;SAC/D,MAAM,CAAC,IAAI,EAAE;WACX,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;oBAEpB,MAAM,WAAW,GAAG;wBAClB,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qBAClB,CAAC;oBACxB,IAAI,cAA8B,CAAC;oBACnC,IAAI,UAAU,GAAG,EAAE,CAAC;oBAEpB,IAAI,CAAC;wBACH,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC3D;4BACE,UAAU,CAAC,sCAAsC,CAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,EACrB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAC/B;4BACD,WAAW;yBACZ,EACD,CAAC,IAAI,iDAAuB,EAAE,CAAC,CAChC,CAAC;wBAEF,kBAAS,CAAC,KAAK,CACb,kDAAkD,EAClD,qBAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC,CACjD,CAAC;wBAEF,qBAAS,CAAC,iBAAiB,CACzB,wBAAwB,EACxB,IAAI,CAAC,QAAQ,CACd,CAAC;wBACF,MAAM,mBAAmB,GACvB,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;wBAChD,8EAA8E;wBAC9E,gEAAgE;wBAChE,IAAI,mBAAmB,CAAC,UAAsC,EAAE,CAAC;4BAC/D,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,UAEhD,CAAC;4BAEF,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gCAChC,IAAI,oBAAoB,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oCACzC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gCACxB,CAAC;qCAAM,CAAC;oCACN,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;gCACzB,CAAC;4BACH,CAAC;iCAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;gCACtC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;4BACzB,CAAC;iCAAM,CAAC;gCACN,MAAM,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;4BACjD,CAAC;4BAED,cAAc,GAAG,+BAAc,CAAC,UAAU,EAAE,CAAC;4BAC7C,UAAU,GAAG,oBAAoB,CAAC;wBACpC,CAAC;6BAAM,CAAC;4BACN,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;4BACvB,cAAc,GAAG;gCACf,YAAY,EAAE,KAAK;gCACnB,MAAM,EAAE,wBAAwB,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,4DAA4D;gCAC/H,QAAQ,EAAE,IAAI;6BACf,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,kBAAS,CAAC,KAAK,CACb,wEAAwE,EACxE,KAAK,CACN,CAAC;wBACF,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACvB,cAAc,GAAG;4BACf,YAAY,EAAE,KAAK;4BACnB,MAAM,EACJ,gFAAgF;4BAClF,QAAQ,EAAE,IAAI;yBACf,CAAC;oBACJ,CAAC;oBAED,MAAM,aAAa,GAAG,MAAM,iCAAe,CAAC,sBAAsB,CAChE,MAAM,CAAC,IAAI,EAAU,CACtB,CAAC;oBACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChB,aAAa,CACd,CAAC;oBACF,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBAEzC,MAAM,QAAQ,GAAG;wBACf,EAAE,EAAE,qBAAS,CAAC,qBAAqB,EAAE;wBACrC,QAAQ,EAAE,iDAAuB,CAAC,IAAI;wBACtC,UAAU,EAAE,UAAU;wBACtB,OAAO,EAAE,cAAc;wBACvB,eAAe,EAAE,eAAe;wBAChC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAG,CAAC,GAAG,EAAE;wBAC1B,SAAS,EAAE,SAAS;wBACpB,WAAW,EAAE,WAAW;qBACN,CAAC;oBAErB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACN,sDAAsD;oBACtD,MAAM,cAAc,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;oBAEvC,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,IAAI,EAAG,CAAC,YAAY,CAAC,SAAS,EAAE;4BAC3C,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gCACrB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;oCACxD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;wCAC/B,kBAAS,CAAC,KAAK,CACb,uDAAuD,MAAM,CAAC,OAAO,EAAE,EAAE,CAC1E,CAAC;oCACJ,CAAC;yCAAM,CAAC;wCACN,sDAAsD;wCACtD,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;oCACxD,CAAC;oCACD,OAAO,IAAI,CAAC;gCACd,CAAC;gCACD,OAAO,KAAK,CAAC;4BACf,CAAC;yBACF,CAAC,CAAC;wBAEH,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;4BAChC,IAAI,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gCACpD,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;4BACxB,CAAC;iCAAM,CAAC;gCACN,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;4BACzB,CAAC;wBACH,CAAC;6BAAM,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;4BAClC,MAAM,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBAC9C,CAAC;6BAAM,CAAC;4BACN,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACzB,CAAC;wBAED,MAAM,aAAa,GAAG,MAAM,iCAAe,CAAC,sBAAsB,CAChE,MAAM,CAAC,IAAI,EAAU,CACtB,CAAC;wBACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChB,aAAa,CACd,CAAC;wBACF,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;wBAEzC,MAAM,QAAQ,GAAG;4BACf,EAAE,EAAE,qBAAS,CAAC,qBAAqB,EAAE;4BACrC,QAAQ,EAAE,iDAAuB,CAAC,IAAI;4BACtC,UAAU,EAAE;gCACV,SAAS,EAAE,aAAa;gCACxB,IAAI,EAAE,cAAc,CAAC,OAAO;6BAC7B;4BACD,OAAO,EAAE,+BAAc,CAAC,UAAU,EAAE;4BACpC,eAAe,EAAE,eAAe;4BAChC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAG,CAAC,GAAG,EAAE;4BAC1B,SAAS,EAAE,SAAS;4BACpB,WAAW,EAAE,WAAW;yBACN,CAAC;wBAErB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACrC,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAClE,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,qCAAqC;wBACrC,kBAAS,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;wBAC7D,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;oBACzB,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,kBAAS,CAAC,IAAI,CACZ,2CAA2C,MAAM,CAAC,IAAI,EAAE,mBAAmB,MAAM,CAAC,OAAO,EAAE,EAAE,CAC9F,CAAC;gBACF,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,eAAe;QAC3B,IAAI,SAAS,GAAiB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACtD,uEAAuE;QACvE,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAC9B,QAAQ,SAAS,EAAE,CAAC;gBAClB,KAAK,8BAA8B,CAAC;gBACpC,KAAK,iCAAiC,CAAC;gBACvC,KAAK,QAAQ,CAAC;gBACd,KAAK,UAAU,CAAC;gBAChB,KAAK,gBAAgB;oBACnB,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;oBAClC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;wBAC1B,IAAI,EAAE,iEAA+B,CAAC,IAAI;wBAC1C,UAAU,EAAE;4BACV,SAAS,EAAE,wBAAwB;yBACQ;qBAC9C,CAAC,CAAC;oBACH,MAAM;YACV,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,wEAAwE;YACxE,yEAAyE;YACzE,eAAe;YACf,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,gEAAgE;gBAChE,SAAS,GAAG,gBAAgB,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,uEAAuE;gBACvE,0BAA0B;gBAC1B,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC9B,KAAK,YAAY;wBACf,+DAA+D;wBAC/D,SAAS,GAAG,8BAA8B,CAAC;wBAC3C,MAAM;oBACR,KAAK,UAAU;wBACb,kEAAkE;wBAClE,WAAW;wBACX,SAAS,GAAG,iCAAiC,CAAC;wBAC9C,MAAM;oBACR,KAAK,eAAe;wBAClB,mEAAmE;wBACnE,mBAAmB;wBACnB,MAAM,YAAY,GAChB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC1D,SAAS,GAAG,YAAY,EAAE,OAAO,CAAC,YAAY;4BAC5C,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,QAAQ,CAAC;wBACb,MAAM;oBACR;wBACE,MAAM,IAAI,KAAK,CACb,iCAAiC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CACzD,CAAC;gBACN,CAAC;YACH,CAAC;QACH,CAAC;QACD,qEAAqE;QACrE,oEAAoE;QACpE,iEAAiE;QACjE,wCAAwC;QACxC,IAAI,IAAA,yBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,kBAAS,CAAC,IAAI,CACZ,gCAAgC,SAAS,OAAO,SAAS,EAAE,CAC5D,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,2BAA2B,CACvC,cAA8B;QAE9B,8EAA8E;QAC9E,yDAAyD;QACzD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,IAAU,EAAE,EAAE;YAC7C,kEAAkE;YAClE,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,0BAA0B;YAC1B,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;gBACrC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACjD,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,QAAQ;gBACV,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,yEAAyE;QACzE,6BAA6B;QAC7B,MAAM,iCAAe,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;QAC/D,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,MAAM,+CAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC5D,MAAM,2CAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACxE,MAAM,iCAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,gBAAgB,CAC5B,SAAgB;QAEhB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9B,CAAC;QAED,IACE,SAAS,KAAK,SAAS;YACvB,IAAI,CAAC,QAAQ,CAAC,gBAAgB;YAC9B,IAAI,CAAC,SAAS,EACd,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,uBAAuB,GAAG,MAAM,eAAe,CACnD,IAAI,CAAC,QAAQ,CAAC,gBAAgB;oBAC5B,wDAAwD,EAC1D,IAAA,iCAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAqB,EACnE,IAAI,CAAC,WAAW,CAAC,OAAO,EACxB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,CACf,CAAC;gBACF,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;gBAChD,OAAO,uBAAuB,CAAC,MAAM,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,SAAS,EAAE,OAAO,KAAK;oBACvB,OAAO,EAAG,KAAe,CAAC,OAAO;oBACjC,IAAI,EAAE,kFAAkF;iBACzF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAChB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1D,OAAO,YAAY,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;IAChD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,CACnB,UAAU,CAAC,sCAAsC,CAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,EACrB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAC/B,CACF,CAAC;QAEF,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,EAAE;iBACrE;aACoB,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE5D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAExD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IACE,IAAI,CAAC,QAAQ,CAAC,YAAY,KAAK,IAAI;YACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,EAC1D,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG;gBACrB,MAAM,EAAE,8CAA8C,IAAI,CAAC,QAAQ,CAAC,YAAY,WAAW;aAC5F,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;YACnC,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC;QACpD,MAAM,qBAAqB,GAAG,cAAc;YAC1C,CAAC,CAAC;gBACE,GAAG,gBAAgB;gBACnB,UAAU,EAAE,qBAAS,CAAC,qBAAqB,EAAE;aAC9C;YACH,CAAC,CAAC,gBAAgB,CAAC;QACrB,wEAAwE;QACxE,mBAAmB;QACnB,IAAI,MAAM,GAA0B,IAAI,CAAC;QACzC,IAAI,sBAAsB,GAAkC,IAAI,CAAC;QACjE,MAAM,6BAA6B,GAAG,GAAG,EAAE;YACzC,IAAI,MAAM,EAAE,CAAC;gBACX,aAAa,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;YAED,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;gBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;gBAE3D,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,OAAO;gBACT,CAAC;gBAED,sBAAsB,GAAG,IAAI,+CAAsB,CAAC,UAAU,CAAC,CAAC;gBAChE,aAAa,CAAC,MAAO,CAAC,CAAC;YACzB,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC;QACF,0CAA0C;QAC1C,6BAA6B,EAAE,CAAC;QAEhC,MAAM,eAAe,GAAG;YACtB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,qBAAqB,CAAC,UAAoB;SAC7B,CAAC;QAC5B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAChD,eAAe,EACf,qBAAqB,CAAC,IAAI,EAC1B,qBAAqB,CAAC,UAAU,EAChC,CAAC,cAAc,CAChB,CAAC;QACF,0CAA0C;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,aAAa,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAEhE,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,yCAAyC,CAAC,qBAAqB,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACpB,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;YAC7B,UAAU,EAAE,QAAQ,CAAC,EAAE;SACQ,CAAC,CAAC;QAEnC,IAAI,sBAAsB,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAAC;QAC/B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B;QACtC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC3E,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAClD,CAAC;IAEO,KAAK,CAAC,6BAA6B;QACzC,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9C,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9C,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QACD,mEAAmE;QACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,mEAAmE;QACnE,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtD,kBAAS,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,SAAS;QACrB,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtD,kBAAS,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAEO,yCAAyC,CAC/C,gBAAkC;QAElC,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,+EAA+E;QAC/E,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAEhC,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACpC,kEAAkE;gBAClE,SAAS;YACX,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACvC,2CAA2C;gBAC3C,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;gBAC9C,MAAM,oBAAoB,GAAG,GAAG,CAAC,oBAAoB,CAAC;gBACtD,MAAM,wBAAwB,GAAG;oBAC/B,GAAG,GAAG,CAAC,iBAAiB;oBACxB,gBAAgB;iBACjB,CAAC;gBAEF,MAAM,+BAA+B,GAAG;oBACtC,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE,wBAAwB;oBAC3C,gBAAgB,EAAE,gBAAgB;oBAClC,oBAAoB,EAAE,oBAAoB;iBACR,CAAC;gBAErC,kDAAkD;gBAClD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC;gBACtD,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC/B,2DAA2D;gBAC3D,MAAM,wBAAwB,GAAG;oBAC/B,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;oBACrC,gBAAgB,EAAE,CAAC;oBACnB,oBAAoB,EAAE,CAAC;iBACW,CAAC;gBAErC,gDAAgD;gBAChD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,wBAAwB,CAAC,CAAC;gBAC5D,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjC,4EAA4E;gBAC5E,MAAM,WAAW,GAAG;oBAClB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,gBAAgB,CAAC,IAAI,QAAQ,EAAE;qBACjE;iBACoB,CAAC;gBAExB,MAAM,wBAAwB,GAAG;oBAC/B,IAAI,EAAE,qBAAqB;oBAC3B,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;oBACrC,gBAAgB,EAAE,CAAC;oBACnB,oBAAoB,EAAE,CAAC;iBACW,CAAC;gBAErC,mDAAmD;gBACnD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;gBAC/C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,wBAAwB,CAAC,CAAC;gBAC5D,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACxE,uEAAuE;gBACvE,2BAA2B;gBAC3B,MAAM,IAAI,KAAK,CACb,uDAAuD,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,mEAAmE;YACnE,wEAAwE;YACxE,kEAAkE;YAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAE7C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,yCAAmB,EAAE,CAAC;QAClC,CAAC;QAED,IAAI,CAAC;YACH,4EAA4E;YAC5E,MAAM,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC;YACpE,+DAA+D;YAC/D,MAAM,WAAW,GACf,MAAM,iCAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CACnC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChB,WAAW,CAAC,QAAQ,CACrB,CAAC;YAEF,2CAA2C;YAC3C,MAAM,oBAAoB,GACxB,MAAM,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAC;YAE1E,0DAA0D;YAC1D,MAAM,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,WAAW,CAAC,CAAC;YAEnE,0CAA0C;YAC1C,MAAM,wBAAwB,GAC5B,MAAM,iCAAe,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAE5D,yEAAyE;YACzE,yEAAyE;YACzE,uEAAuE;YACvE,oBAAoB;YACpB,MAAM,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;YAE9D,sEAAsE;YACtE,2DAA2D;YAC3D,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CACnC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChB,wBAAwB,CACzB,CAAC;YAEF,oEAAoE;YACpE,yEAAyE;YACzE,2CAA2C;YAC3C,MAAM,6BAA6B,GACjC,MAAM,qBAAS,CAAC,wBAAwB,CACtC,WAAW,CAAC,QAAQ,EACpB,UAAU,CAAC,uBAAuB,CACnC,CAAC;YACJ,MAAM,0BAA0B,GAC9B,MAAM,qBAAS,CAAC,wBAAwB,CACtC,wBAAwB,EACxB,UAAU,CAAC,uBAAuB,CACnC,CAAC;YAEJ,MAAM,WAAW,GAAG,UAAU,CAAC,qBAAqB,CAClD,WAAW,EACX,oBAAoB,CACrB,CAAC;YAEF,IAAI,oBAAoB,GAAsB,EAAE,CAAC;YAEjD,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;gBAC9B,MAAM,6BAA6B,GACjC,MAAM,qBAAS,CAAC,wBAAwB,CACtC,WAAW,CAAC,aAAa,EACzB,UAAU,CAAC,uBAAuB,CACnC,CAAC;gBACJ,oBAAoB,GAAG;oBACrB;wBACE,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,MAAM,qBAAS,CAAC,wBAAwB,CAC7C,6BAA6B,EAC7B,UAAU,CAAC,uBAAuB,CACnC;qBACF;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;kDAGgC;qBACvC;iBAC0B,CAAC;YAChC,CAAC;YAED,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;gBAC9B,MAAM,6BAA6B,GACjC,MAAM,qBAAS,CAAC,wBAAwB,CACtC,WAAW,CAAC,aAAa,EACzB,UAAU,CAAC,uBAAuB,CACnC,CAAC;gBACJ,oBAAoB,GAAG;oBACrB;wBACE,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,MAAM,qBAAS,CAAC,wBAAwB,CAC7C,6BAA6B,EAC7B,UAAU,CAAC,uBAAuB,CACnC;qBACF;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;oDAGkC;qBACzC;iBAC0B,CAAC;YAChC,CAAC;YACD,wEAAwE;YACxE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,WAAW,GAAG;gBAClB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,6BAA6B,EAAE;oBACtD,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,0BAA0B,EAAE;oBACnD,WAAW;oBACX,GAAG,oBAAoB;iBACxB;aACoB,CAAC;YAExB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,mBAAmB,GAAG,UAAU,CAAC,gCAAgC,CACrE,IAAI,CAAC,WAAW,CACjB,CAAC;YAEF,+BAA+B;YAC/B,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC3D,mBAAmB,EACnB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,OAAO;oBACL,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW,EAAE,IAAI,CAAC,iBAAiB;iBACpC,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YAEF,kBAAS,CAAC,KAAK,CACb,eAAe,EACf,qBAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC,CACjD,CAAC;YAEF,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,CAAC;YAEjD,OAAO,wBAAwB,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,yCAAmB,EAAE,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAC7B,mBAAiC,EACjC,KAAmB;QAEnB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,IAAI,sBAAsB,GAAkC,IAAI,CAAC;YACjE,oDAAoD;YACpD,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;YAC9C,4DAA4D;YAC5D,MAAM,aAAa,GAAG,KAAK,CAAC;YAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,eAAe,CAAC,KAAK,CACnB,2BAA2B,aAAa,eAAe,CACxD,CAAC;YACJ,CAAC,EAAE,aAAa,CAAC,CAAC;YAClB,0CAA0C;YAC1C,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;gBAE3D,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,OAAO;gBACT,CAAC;gBAED,sBAAsB,GAAG,IAAI,+CAAsB,CAAC,UAAU,CAAC,CAAC;gBAChE,eAAe,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACnD,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtB,YAAY,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAC9C,mBAAmB,EACnB,KAAK,EACL,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CACnC,CAAC;gBAEF,gDAAgD;gBAChD,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,aAAa,CAAC,MAAM,CAAC,CAAC;gBAEtB,IAAI,sBAAsB,EAAE,CAAC;oBAC3B,MAAM,sBAAsB,CAAC;gBAC/B,CAAC;gBAED,IAAI,CAAC,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;oBACxB,kBAAS,CAAC,KAAK,CACb,oEACE,CAAC,GAAG,CACN,OAAO,WAAW,EAAE,EACpB,KAAK,CACN,CAAC;oBAEF,IAAI,CAAC;wBACH,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;4BAC7B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBACtD,CAAC;oBACH,CAAC;oBAAC,OAAO,MAAM,EAAE,CAAC;wBAChB,QAAQ;oBACV,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,gDAAgD;oBAChD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,kEAAkE;QAClE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAEO,iBAAiB,CACvB,kBAAsE;QAEtE,IAAI,CAAC,QAAQ,CAAC,eAAe,IAAI,kBAAkB,CAAC,gBAAgB,CAAC;QACrE,IAAI,CAAC,QAAQ,CAAC,oBAAoB;YAChC,kBAAkB,CAAC,oBAAoB,CAAC;IAC5C,CAAC;IAEO,MAAM,CAAC,sCAAsC,CACnD,OAAwB,EACxB,gBAA+B;QAE/B,MAAM,UAAU,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,IAAI,aAAa,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YAClB,OAAO,OAAO,UAAU,UAAU,CAAC;QACrC,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,aAAa,GAAG;;;;;EAKlB,aAAa;IACX,CAAC;QACD,MAAM,IAAI,GAAG;;;;;;;;;;;;;GAad,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;EA0BhC,UAAU;YACR,CAAC,CAAC;CACL;YACG,CAAC,CAAC,EACN;gBACgB,iEAA+B,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;EAsBlD,gBAAgB;;;;kDAIgC,qDAAyB,CAAC,IAAI;uDACzB,iEAA+B,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;EAwBzF,UAAU,CAAC,qBAAqB;;;;2CAIS,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;CAGhF,CAAC;QAEE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAA0B,CAAC;IAChE,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAClC,WAAiB,EACjB,oBAA2C;QAE3C,MAAM,IAAI,GAAG;IACb,WAAW;aACR,OAAO,EAAE;aACT,KAAK,EAAE;aACP,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;aACzB,IAAI,CAAC,MAAM,CAAC;;oCAEiB,WAAW,CAAC,GAAG,EAAE;;EAEnD,UAAU,CAAC,gCAAgC;EAC3C,IAAA,sDAAgC,EAAC,oBAAoB,CAAC;;;;CAIvD,CAAC;QAEE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAqB,CAAC;IACzD,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,gCAAgC,CAC7C,cAA4B;QAE5B,IAAI,cAAc,GAAiB,EAAE,CAAC;QACtC,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,2EAA2E;QAC3E,KAAK,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACpD,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAE9B,IAAI,GAAG,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACvC,uEAAuE;gBACvE,mEAAmE;gBACnE,uEAAuE;gBACvE,uEAAuE;gBACvE,aAAa;gBACb,MAAM,kBAAkB,GAAG,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC;gBACxD,IAAI,mBAAmB,GAAG,CAAC,CAAC;gBAC5B,IAAI,kBAAkB,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,GAAG,mBAAmB,GAAG,CAAC,CAAC,CAAC;gBAExE,OACE,kBAAkB;oBAClB,kBAAkB,CAAC,IAAI,KAAK,kBAAkB,EAC9C,CAAC;oBACD,EAAE,mBAAmB,CAAC;oBACtB,kBAAkB,GAAG,cAAc,CAAC,CAAC,GAAG,mBAAmB,GAAG,CAAC,CAAC,CAAC;gBACnE,CAAC;gBAED,IAAI,mBAAmB,KAAK,CAAC,EAAE,CAAC;oBAC9B,uCAAuC;gBACzC,CAAC;qBAAM,IAAI,kBAAkB,KAAK,mBAAmB,EAAE,CAAC;oBACtD,MAAM,+BAA+B,GAAG;wBACtC,IAAI,EAAE,qBAAqB;wBAC3B,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAC5C,CAAC,EACD,mBAAmB,CACpB;wBACD,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;wBACtC,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;qBACZ,CAAC;oBACrC,8CAA8C;oBAC9C,cAAc,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACN,qBAAqB;oBACrB,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC/B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,EAAE,gBAAgB,CAAC;gBAEnB,QAAQ,gBAAgB,EAAE,CAAC;oBACzB,KAAK,CAAC,CAAC,CAAC,CAAC;wBACP,wCAAwC;wBACxC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACzB,MAAM;oBACR,CAAC;oBACD,KAAK,CAAC,CAAC,CAAC,CAAC;wBACP,iEAAiE;wBACjE,yBAAyB;wBACzB,IAAI,eAAe,GAAG,CAAC,CAAC;wBACxB,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK;6BAC7B,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,MAAM;4BACpB,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,eAAe,KAAK,CAAC,CAAC,CAC/C;6BACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;4BACZ,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gCACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gCACvB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,UAAU,CAAC,gCAAgC,CAC5C,CAAC;gCACF,OAAO,WAAW,KAAK,CAAC,CAAC;oCACvB,CAAC,CAAE;wCACC,IAAI,EAAE,MAAM;wCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;qCACxB;oCAChB,CAAC,CAAC,IAAI,CAAC;4BACX,CAAC;iCAAM,CAAC;gCACN,OAAO,IAAI,CAAC;4BACd,CAAC;wBACH,CAAC,CAAC,CAAC;wBAEL,cAAc,CAAC,IAAI,CAAC;4BAClB,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,cAAc;yBACA,CAAC,CAAC;wBACzB,MAAM;oBACR,CAAC;oBACD,OAAO,CAAC,CAAC,CAAC;wBACR,iEAAiE;wBACjE,mBAAmB;wBACnB,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK;6BAC7B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;6BACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;4BACZ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;4BACvB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,UAAU,CAAC,gCAAgC,CAC5C,CAAC;4BACF,OAAO,WAAW,KAAK,CAAC,CAAC;gCACvB,CAAC,CAAE;oCACC,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;iCACxB;gCAChB,CAAC,CAAC,IAAI,CAAC;wBACX,CAAC,CAAC,CAAC;wBAEL,cAAc,CAAC,IAAI,CAAC;4BAClB,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,cAAc;yBACA,CAAC,CAAC;wBACzB,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,cAAc,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,cAAc,CAAC;IACxB,CAAC;;AA1+CH,gCA2+CC;AA1+CyB,2CAAgC,GACtD,+EAA+E,CAAC;AAC3D,gCAAqB,GAC1C,sEAAsE,CAAC;AAClD,kCAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM"}
|
|
@@ -8,8 +8,24 @@ export declare class InteractionVisualizer {
|
|
|
8
8
|
private static readonly CONTAINER_ID;
|
|
9
9
|
private cursorPos;
|
|
10
10
|
constructor(defaultMessageDurationMillis: number);
|
|
11
|
-
/**
|
|
12
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Moves the virtual cursor to the center of the specified element and optionally displays a message.
|
|
13
|
+
*
|
|
14
|
+
* @param page - The Playwright page instance where the cursor will be displayed.
|
|
15
|
+
* @param locator - Optional target element to point at. If omitted, cursor remains at current position.
|
|
16
|
+
* @param message - Optional message to display near the cursor during the interaction.
|
|
17
|
+
* @param duration - Duration in milliseconds for the cursor animation and message display.
|
|
18
|
+
* Defaults to the instance's configured duration. If ≤ 0, no action is taken
|
|
19
|
+
*
|
|
20
|
+
* @returns Promise that resolves when the cursor movement and message display are complete
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* - The target element will be scrolled into view if necessary
|
|
24
|
+
* - The cursor animates smoothly to the element's center point
|
|
25
|
+
* - Messages are positioned automatically to avoid viewport edges
|
|
26
|
+
* - The virtual cursor does not interfere with actual page interactions
|
|
27
|
+
*/
|
|
28
|
+
pointAt(page: Page, locator?: Locator, message?: string, duration?: number): Promise<void>;
|
|
13
29
|
private ensureContainer;
|
|
14
30
|
private moveCursor;
|
|
15
31
|
private showMessage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionVisualizer.d.ts","sourceRoot":"","sources":["../../../src/managers/InteractionVisualizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG3C,qBAAa,qBAAqB;aAgDG,4BAA4B,EAAE,MAAM;IA5CvE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CACsG;IAEzI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAW3B;IAEN,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAepC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAM3B;IAEA,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAuB;IAC3D,OAAO,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"InteractionVisualizer.d.ts","sourceRoot":"","sources":["../../../src/managers/InteractionVisualizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG3C,qBAAa,qBAAqB;aAgDG,4BAA4B,EAAE,MAAM;IA5CvE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CACsG;IAEzI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAW3B;IAEN,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAepC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAM3B;IAEA,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAuB;IAC3D,OAAO,CAAC,SAAS,CAAgD;gBAE9B,4BAA4B,EAAE,MAAM;IAMvE;;;;;;;;;;;;;;;;OAgBG;IACU,OAAO,CAClB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,SAAoC,GAC3C,OAAO,CAAC,IAAI,CAAC;YAmCF,eAAe;YAgCf,UAAU;YAsFV,WAAW;CAgD1B"}
|
|
@@ -5,23 +5,42 @@ const Logger_1 = require("../utils/Logger");
|
|
|
5
5
|
class InteractionVisualizer {
|
|
6
6
|
constructor(defaultMessageDurationMillis) {
|
|
7
7
|
this.defaultMessageDurationMillis = defaultMessageDurationMillis;
|
|
8
|
-
this.cursorPos = { x:
|
|
8
|
+
this.cursorPos = { x: 150, y: 150 };
|
|
9
9
|
}
|
|
10
10
|
/* ------------------------------------------------------------------ */
|
|
11
11
|
/* Public API */
|
|
12
12
|
/* ------------------------------------------------------------------ */
|
|
13
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Moves the virtual cursor to the center of the specified element and optionally displays a message.
|
|
15
|
+
*
|
|
16
|
+
* @param page - The Playwright page instance where the cursor will be displayed.
|
|
17
|
+
* @param locator - Optional target element to point at. If omitted, cursor remains at current position.
|
|
18
|
+
* @param message - Optional message to display near the cursor during the interaction.
|
|
19
|
+
* @param duration - Duration in milliseconds for the cursor animation and message display.
|
|
20
|
+
* Defaults to the instance's configured duration. If ≤ 0, no action is taken
|
|
21
|
+
*
|
|
22
|
+
* @returns Promise that resolves when the cursor movement and message display are complete
|
|
23
|
+
*
|
|
24
|
+
* @remarks
|
|
25
|
+
* - The target element will be scrolled into view if necessary
|
|
26
|
+
* - The cursor animates smoothly to the element's center point
|
|
27
|
+
* - Messages are positioned automatically to avoid viewport edges
|
|
28
|
+
* - The virtual cursor does not interfere with actual page interactions
|
|
29
|
+
*/
|
|
14
30
|
async pointAt(page, locator, message, duration = this.defaultMessageDurationMillis) {
|
|
15
31
|
if (!duration || duration <= 0) {
|
|
16
32
|
return;
|
|
17
33
|
}
|
|
18
34
|
try {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
35
|
+
let target = { x: this.cursorPos.x, y: this.cursorPos.y };
|
|
36
|
+
if (locator) {
|
|
37
|
+
await locator.scrollIntoViewIfNeeded();
|
|
38
|
+
const box = await locator.boundingBox();
|
|
39
|
+
if (!box) {
|
|
40
|
+
throw new Error('Element bounding box unavailable');
|
|
41
|
+
}
|
|
42
|
+
target = { x: box.x + box.width / 2, y: box.y + box.height / 2 };
|
|
23
43
|
}
|
|
24
|
-
const target = { x: box.x + box.width / 2, y: box.y + box.height / 2 };
|
|
25
44
|
await this.ensureContainer(page);
|
|
26
45
|
await Promise.all([
|
|
27
46
|
this.moveCursor(page, target, duration / 2),
|
|
@@ -40,8 +59,9 @@ class InteractionVisualizer {
|
|
|
40
59
|
async ensureContainer(page) {
|
|
41
60
|
const id = InteractionVisualizer.CONTAINER_ID;
|
|
42
61
|
await page.evaluate(([containerId, css]) => {
|
|
43
|
-
if (document.getElementById(containerId))
|
|
62
|
+
if (document.getElementById(containerId)) {
|
|
44
63
|
return;
|
|
64
|
+
}
|
|
45
65
|
const el = document.createElement('div');
|
|
46
66
|
el.id = containerId;
|
|
47
67
|
Object.assign(el.style, {
|
|
@@ -96,15 +116,13 @@ class InteractionVisualizer {
|
|
|
96
116
|
svgElement.appendChild(path);
|
|
97
117
|
cursor.appendChild(svgElement);
|
|
98
118
|
}
|
|
99
|
-
cursor.style.left = `${start.x}px`;
|
|
100
|
-
cursor.style.top = `${start.y}px`;
|
|
101
119
|
cursor.style.transitionDuration = '0s';
|
|
120
|
+
cursor.style.transform = `translate(${start.x - 12}px, ${start.y - 12}px)`;
|
|
102
121
|
root.appendChild(cursor);
|
|
103
122
|
cursor.getBoundingClientRect(); // force reflow
|
|
104
123
|
}
|
|
105
124
|
cursor.style.transitionDuration = `${duration}ms`;
|
|
106
|
-
cursor.style.
|
|
107
|
-
cursor.style.top = `${end.y - 12}px`; // half height offset
|
|
125
|
+
cursor.style.transform = `translate(${end.x - 12}px, ${end.y - 12}px)`;
|
|
108
126
|
cursor.classList.add('rippling');
|
|
109
127
|
const done = new Promise((resolve) => {
|
|
110
128
|
const finish = () => {
|
|
@@ -150,8 +168,9 @@ class InteractionVisualizer {
|
|
|
150
168
|
y = target.y - height - 24;
|
|
151
169
|
}
|
|
152
170
|
/* if still off-screen at the top, clamp to 8 px margin */
|
|
153
|
-
if (y < 8)
|
|
171
|
+
if (y < 8) {
|
|
154
172
|
y = 8;
|
|
173
|
+
}
|
|
155
174
|
msg.style.left = `${x}px`;
|
|
156
175
|
msg.style.top = `${y}px`;
|
|
157
176
|
/* auto-remove after the requested duration */
|
|
@@ -194,7 +213,7 @@ InteractionVisualizer.SVG_MOUSE_JSON = {
|
|
|
194
213
|
};
|
|
195
214
|
InteractionVisualizer.CSS = `
|
|
196
215
|
.donobu-message{position:absolute;z-index:2147483647;background:#000;color:#fff;padding:8px 10px;border-radius:5px;font:12px/1 'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;max-width:300px;white-space:pre-wrap;box-shadow:2px 2px 10px rgba(0,0,0,.2);pointer-events:none}
|
|
197
|
-
.donobu-virtual-mouse{width:24px;height:24px;position:absolute;z-index:2147483646;filter:drop-shadow(1px 1px 1px rgba(0,0,0,.5));transition:
|
|
216
|
+
.donobu-virtual-mouse{width:24px;height:24px;position:absolute;z-index:2147483646;filter:drop-shadow(1px 1px 1px rgba(0,0,0,.5));transition:transform .15s ease-in-out;pointer-events:none}
|
|
198
217
|
.donobu-virtual-mouse svg{width:100%;height:100%;display:block}
|
|
199
218
|
.donobu-virtual-mouse.rippling::after{content:"";position:absolute;left:50%;top:50%;width:24px;height:24px;border-radius:50%;background:oklch(83.04% 0.1698 83.99);transform:translate(-50%,-50%) scale(.5);opacity:.4;animation:ripple-pop .6s ease-out forwards}
|
|
200
219
|
@keyframes ripple-pop{40%{transform:translate(-50%,-50%) scale(1);opacity:.5}100%{transform:translate(-50%,-50%) scale(2);opacity:0}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionVisualizer.js","sourceRoot":"","sources":["../../../src/managers/InteractionVisualizer.ts"],"names":[],"mappings":";;;AACA,4CAA4C;AAE5C,MAAa,qBAAqB;IAgDhC,YAAmC,4BAAoC;QAApC,iCAA4B,GAA5B,4BAA4B,CAAQ;QAF/D,cAAS,GAA6B,EAAE,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"InteractionVisualizer.js","sourceRoot":"","sources":["../../../src/managers/InteractionVisualizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,6 +98,7 @@ export declare class PageInspector {
|
|
|
98
98
|
* * For 'select' elements, the complete HTML (including options) is preserved
|
|
99
99
|
* * For elements with text content, includes opening tag, truncated text (max 32 chars), and closing tag
|
|
100
100
|
* * For all other elements, only the opening tag without children is captured
|
|
101
|
+
* * For the main scrolling element (document.scrollingElement), adds special decoration indicating it's the page's main scrolling element
|
|
101
102
|
*
|
|
102
103
|
* Note: This method only finds elements that have been previously attributed using
|
|
103
104
|
* the {@link attributeInteractableElements} method.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageInspector.d.ts","sourceRoot":"","sources":["../../../src/managers/PageInspector.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAMpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,aAAa;aAYN,4BAA4B,EAAE,MAAM;aACpC,+BAA+B,EAAE,MAAM;IAZzD;;;;;OAKG;IACH,gBAAuB,WAAW,SAEhC;gBAGgB,4BAA4B,GAAE,MAAmC,EACjE,+BAA+B,GAAE,MAAiC;IAGpF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoErE
|
|
1
|
+
{"version":3,"file":"PageInspector.d.ts","sourceRoot":"","sources":["../../../src/managers/PageInspector.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAMpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,aAAa;aAYN,4BAA4B,EAAE,MAAM;aACpC,+BAA+B,EAAE,MAAM;IAZzD;;;;;OAKG;IACH,gBAAuB,WAAW,SAEhC;gBAGgB,4BAA4B,GAAE,MAAmC,EACjE,+BAA+B,GAAE,MAAiC;IAGpF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACU,iCAAiC,CAC5C,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAsJjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACU,4BAA4B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuJpE;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAgCvE;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAyF9D;;;;OAIG;WACW,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAkBjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAmYzC,OAAO,CAAC,MAAM,CAAC,WAAW;CAQ3B"}
|
|
@@ -146,6 +146,7 @@ class PageInspector {
|
|
|
146
146
|
* * For 'select' elements, the complete HTML (including options) is preserved
|
|
147
147
|
* * For elements with text content, includes opening tag, truncated text (max 32 chars), and closing tag
|
|
148
148
|
* * For all other elements, only the opening tag without children is captured
|
|
149
|
+
* * For the main scrolling element (document.scrollingElement), adds special decoration indicating it's the page's main scrolling element
|
|
149
150
|
*
|
|
150
151
|
* Note: This method only finds elements that have been previously attributed using
|
|
151
152
|
* the {@link attributeInteractableElements} method.
|
|
@@ -182,13 +183,43 @@ class PageInspector {
|
|
|
182
183
|
node = walker.nextNode();
|
|
183
184
|
}
|
|
184
185
|
}
|
|
186
|
+
/** helper to compute live scroll directions for el */
|
|
187
|
+
function getScrollDirections(el) {
|
|
188
|
+
const dirs = [];
|
|
189
|
+
const isRoot = el === document.scrollingElement;
|
|
190
|
+
const style = getComputedStyle(el);
|
|
191
|
+
const canY = el.scrollHeight > el.clientHeight &&
|
|
192
|
+
(isRoot || /(auto|scroll|overlay|visible)/.test(style.overflowY));
|
|
193
|
+
const canX = el.scrollWidth > el.clientWidth &&
|
|
194
|
+
(isRoot || /(auto|scroll|overlay|visible)/.test(style.overflowX));
|
|
195
|
+
if (canY) {
|
|
196
|
+
if (el.scrollTop > 0) {
|
|
197
|
+
dirs.push('UP');
|
|
198
|
+
}
|
|
199
|
+
if (el.scrollTop < el.scrollHeight - el.clientHeight) {
|
|
200
|
+
dirs.push('DOWN');
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
if (canX) {
|
|
204
|
+
if (el.scrollLeft > 0) {
|
|
205
|
+
dirs.push('LEFT');
|
|
206
|
+
}
|
|
207
|
+
if (el.scrollLeft < el.scrollWidth - el.clientWidth) {
|
|
208
|
+
dirs.push('RIGHT');
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return dirs;
|
|
212
|
+
}
|
|
185
213
|
function serialise(el) {
|
|
186
214
|
const deepClone = el.tagName.toLowerCase() === 'select'
|
|
187
215
|
? el.cloneNode(true)
|
|
188
216
|
: el.cloneNode(false);
|
|
189
217
|
stripDonobuAttrs(deepClone);
|
|
190
218
|
if (el.tagName.toLowerCase() === 'select') {
|
|
191
|
-
|
|
219
|
+
const scrollComment = el === document.scrollingElement
|
|
220
|
+
? '<!-- This is the main page scrolling element -->'
|
|
221
|
+
: '';
|
|
222
|
+
return scrollComment + deepClone.outerHTML; // full markup incl. <option>s
|
|
192
223
|
}
|
|
193
224
|
// Get the text content of the original element
|
|
194
225
|
const textContent = el.textContent?.trim() || '';
|
|
@@ -201,19 +232,30 @@ class PageInspector {
|
|
|
201
232
|
const fullTag = deepClone.outerHTML;
|
|
202
233
|
const openingTag = fullTag.slice(0, fullTag.indexOf('>') + 1);
|
|
203
234
|
const tagName = el.tagName.toLowerCase();
|
|
204
|
-
|
|
235
|
+
const scrollComment = el === document.scrollingElement
|
|
236
|
+
? '<!-- This is the main page scrolling element -->'
|
|
237
|
+
: '';
|
|
238
|
+
return `${scrollComment}${openingTag}${displayText}</${tagName}>`;
|
|
205
239
|
}
|
|
206
240
|
else {
|
|
207
241
|
// opening tag only
|
|
208
242
|
const html = deepClone.outerHTML;
|
|
209
|
-
|
|
243
|
+
const scrollComment = el === document.scrollingElement
|
|
244
|
+
? '<!-- This is the main page scrolling element -->'
|
|
245
|
+
: '';
|
|
246
|
+
return scrollComment + html.slice(0, html.indexOf('>') + 1);
|
|
210
247
|
}
|
|
211
248
|
}
|
|
212
249
|
const out = {};
|
|
213
250
|
document.querySelectorAll(`[${interactableAttr}]`).forEach((el) => {
|
|
214
251
|
const val = el.getAttribute(interactableAttr);
|
|
215
|
-
if (val)
|
|
216
|
-
|
|
252
|
+
if (!val) {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
out[val] = {
|
|
256
|
+
html: serialise(el),
|
|
257
|
+
scrollDirections: getScrollDirections(el),
|
|
258
|
+
};
|
|
217
259
|
});
|
|
218
260
|
return out;
|
|
219
261
|
}, this.interactableElementAttribute);
|
|
@@ -221,9 +263,10 @@ class PageInspector {
|
|
|
221
263
|
}
|
|
222
264
|
return Object.keys(aggregate)
|
|
223
265
|
.sort((a, b) => Number(a) - Number(b))
|
|
224
|
-
.map((
|
|
225
|
-
donobuAttributeValue,
|
|
226
|
-
htmlSnippet: aggregate[
|
|
266
|
+
.map((key) => ({
|
|
267
|
+
donobuAttributeValue: key,
|
|
268
|
+
htmlSnippet: aggregate[key].html,
|
|
269
|
+
scrollable: aggregate[key].scrollDirections,
|
|
227
270
|
}));
|
|
228
271
|
}
|
|
229
272
|
catch (error) {
|
|
@@ -693,6 +736,27 @@ class PageInspector {
|
|
|
693
736
|
}
|
|
694
737
|
return true;
|
|
695
738
|
}
|
|
739
|
+
function isScrollable(el) {
|
|
740
|
+
const canY = el.scrollHeight > el.clientHeight;
|
|
741
|
+
const canX = el.scrollWidth > el.clientWidth;
|
|
742
|
+
// If nothing overflows, bail early
|
|
743
|
+
if (!canY && !canX) {
|
|
744
|
+
return false;
|
|
745
|
+
}
|
|
746
|
+
// The document’s scrolling element works even when overflow is “visible”
|
|
747
|
+
if (el === document.scrollingElement) {
|
|
748
|
+
return true;
|
|
749
|
+
}
|
|
750
|
+
const s = getComputedStyle(el);
|
|
751
|
+
const rect = el.getBoundingClientRect();
|
|
752
|
+
const visible = rect.width > 0 && rect.height > 0;
|
|
753
|
+
if (!visible) {
|
|
754
|
+
return false;
|
|
755
|
+
}
|
|
756
|
+
const yOK = canY && /(auto|scroll|overlay)/.test(s.overflowY);
|
|
757
|
+
const xOK = canX && /(auto|scroll|overlay)/.test(s.overflowX);
|
|
758
|
+
return yOK || xOK;
|
|
759
|
+
}
|
|
696
760
|
/**
|
|
697
761
|
* Generate a few test points on the element's bounding box. We only need
|
|
698
762
|
* a small offset (1px) from each corner, plus the center.
|
|
@@ -862,11 +926,27 @@ class PageInspector {
|
|
|
862
926
|
.concat(window.__donobu.getInteractiveElements())
|
|
863
927
|
.filter((el) => !el.id || (typeof el.id === 'string' && !el.id.startsWith('donobu-')));
|
|
864
928
|
const uniqueElements = new Set(interactableElements);
|
|
929
|
+
const maybeAddScrollable = (el) => {
|
|
930
|
+
if (isScrollable(el) && !uniqueElements.has(el)) {
|
|
931
|
+
uniqueElements.add(el);
|
|
932
|
+
}
|
|
933
|
+
};
|
|
934
|
+
document.querySelectorAll('*').forEach(maybeAddScrollable);
|
|
935
|
+
if (document.scrollingElement) {
|
|
936
|
+
maybeAddScrollable(document.scrollingElement);
|
|
937
|
+
}
|
|
865
938
|
// 2) Iterate and assign numbers
|
|
866
939
|
uniqueElements.forEach((element) => {
|
|
867
|
-
|
|
868
|
-
|
|
940
|
+
if (element === document.scrollingElement) {
|
|
941
|
+
// Special-case: always keep the root scrolling element
|
|
942
|
+
element.setAttribute(interactableAttribute, offset.toString());
|
|
943
|
+
offset++;
|
|
944
|
+
return; // skip the usual checks
|
|
945
|
+
}
|
|
946
|
+
else if (element.hasAttribute(interactableAttribute)) {
|
|
947
|
+
// Skip if this element already carries a value (e.g. assigned via <label>)
|
|
869
948
|
return;
|
|
949
|
+
}
|
|
870
950
|
const rect = element.getBoundingClientRect();
|
|
871
951
|
const style = window.getComputedStyle(element);
|
|
872
952
|
const visible = isElementVisible(rect, style) && isElementMoreThanHalfInViewport(rect);
|