@gemx-dev/clarity-visualize 0.8.68 → 0.8.69
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/build/clarity.visualize.js +31 -3
- package/build/clarity.visualize.min.js +1 -1
- package/build/clarity.visualize.module.js +31 -3
- package/package.json +2 -2
- package/src/clarity-app.js +235808 -0
- package/src/visualizer.ts +35 -3
|
@@ -2336,11 +2336,11 @@ class Visualizer {
|
|
|
2336
2336
|
if (decoded && decoded.length > 0 && target) {
|
|
2337
2337
|
try {
|
|
2338
2338
|
// Flatten the payload and parse all events out of them, sorted by time
|
|
2339
|
-
let merged = this.
|
|
2339
|
+
let merged = this.mergeForHtml(decoded);
|
|
2340
2340
|
yield this.setup(target, { version: decoded[0].envelope.version, dom: merged.dom, useproxy, portalCanvasId });
|
|
2341
2341
|
// Render all mutations on top of the initial markup
|
|
2342
|
-
|
|
2343
|
-
let entry = merged.events
|
|
2342
|
+
for (let i = 0; i < merged.events.length; i++) {
|
|
2343
|
+
let entry = merged.events[i];
|
|
2344
2344
|
switch (entry.event) {
|
|
2345
2345
|
case 45 /* Data.Event.StyleSheetAdoption */:
|
|
2346
2346
|
case 46 /* Data.Event.StyleSheetUpdate */:
|
|
@@ -2426,6 +2426,34 @@ class Visualizer {
|
|
|
2426
2426
|
merged.events = merged.events.sort(this.sortEvents);
|
|
2427
2427
|
return merged;
|
|
2428
2428
|
};
|
|
2429
|
+
this.mergeForHtml = (decoded) => {
|
|
2430
|
+
let merged = { timestamp: null, envelope: null, dom: null, events: [] };
|
|
2431
|
+
decoded = decoded.sort(this.sortPayloads);
|
|
2432
|
+
this.enrich = this.enrich || new EnrichHelper();
|
|
2433
|
+
helper.selector.config(this._excludeClassNames);
|
|
2434
|
+
this.enrich.reset();
|
|
2435
|
+
for (let payload of decoded) {
|
|
2436
|
+
merged.timestamp = merged.timestamp ? merged.timestamp : payload.timestamp;
|
|
2437
|
+
merged.envelope = payload.envelope;
|
|
2438
|
+
const domEntries = payload["dom" /* Constant.Dom */];
|
|
2439
|
+
if (Array.isArray(domEntries)) {
|
|
2440
|
+
for (let entry of domEntries) {
|
|
2441
|
+
let enriched = this.enrich.selectors(entry);
|
|
2442
|
+
if (entry.event === 5 /* Data.Event.Discover */) {
|
|
2443
|
+
merged.dom = enriched;
|
|
2444
|
+
}
|
|
2445
|
+
else if (entry.event === 6 /* Data.Event.Mutation */ ||
|
|
2446
|
+
entry.event === 45 /* Data.Event.StyleSheetAdoption */ ||
|
|
2447
|
+
entry.event === 46 /* Data.Event.StyleSheetUpdate */ ||
|
|
2448
|
+
entry.event === 51 /* Data.Event.CustomElement */) {
|
|
2449
|
+
merged.events.push(entry);
|
|
2450
|
+
}
|
|
2451
|
+
}
|
|
2452
|
+
}
|
|
2453
|
+
}
|
|
2454
|
+
merged.events = merged.events.sort(this.sortEvents);
|
|
2455
|
+
return merged;
|
|
2456
|
+
};
|
|
2429
2457
|
this.setup = (target, options) => __awaiter(this, void 0, void 0, function* () {
|
|
2430
2458
|
this.reset();
|
|
2431
2459
|
if (options.excludeClassNames) {
|