issue-sticker 0.9.0 → 0.9.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/CHANGELOG.md +17 -0
- package/dist/{externalUserPayload-CVp5Hz2L.js → externalUserPayload-CVYSPfcx.js} +4254 -3584
- package/dist/issue-sticker-headless-react.js +23 -17
- package/dist/issue-sticker-headless.js +7 -12
- package/dist/issue-sticker-react.js +347 -81
- package/dist/{three-B7nbYqGK.js → three-_bdgDAmI.js} +248 -794
- package/dist/{tooltip-BBukUPo_.js → tooltip-UijEbdDX.js} +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { c as createLucideIcon, u as ungzip_1, C as CANVAS_INTERACTION_TAG, a as cn,
|
|
2
|
-
import { r } from "./three-
|
|
1
|
+
import { c as createLucideIcon, u as ungzip_1, R as REPLAY_EVENT_TYPE, C as CANVAS_INTERACTION_TAG, a as cn, b as Replayer, M as MousePointer2 } from "./three-_bdgDAmI.js";
|
|
2
|
+
import { r } from "./three-_bdgDAmI.js";
|
|
3
3
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
4
|
-
import { memo, useRef, useState, useCallback,
|
|
5
|
-
import { T as TooltipProvider, a as Tooltip, b as TooltipTrigger, c as TooltipContent } from "./tooltip-
|
|
4
|
+
import { memo, useRef, useEffect, useState, useCallback, useMemo } from "react";
|
|
5
|
+
import { T as TooltipProvider, a as Tooltip, b as TooltipTrigger, c as TooltipContent } from "./tooltip-UijEbdDX.js";
|
|
6
6
|
/**
|
|
7
7
|
* @license lucide-react v0.468.0 - ISC
|
|
8
8
|
*
|
|
@@ -156,10 +156,6 @@ class NodeIndex {
|
|
|
156
156
|
return (firstClass ? `${tag}.${firstClass}` : `<${tag}>`).slice(0, 40);
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
|
-
const EVENT_TYPE_FULL_SNAPSHOT = 2;
|
|
160
|
-
const EVENT_TYPE_INCREMENTAL = 3;
|
|
161
|
-
const EVENT_TYPE_META = 4;
|
|
162
|
-
const EVENT_TYPE_CUSTOM = 5;
|
|
163
159
|
const SOURCE_MUTATION$1 = 0;
|
|
164
160
|
const SOURCE_MOUSE_INTERACTION = 2;
|
|
165
161
|
const SOURCE_INPUT = 5;
|
|
@@ -189,7 +185,7 @@ function deriveTimeline(events) {
|
|
|
189
185
|
const ts = Number((ev == null ? void 0 : ev.timestamp) ?? 0);
|
|
190
186
|
const t = ts - startTime;
|
|
191
187
|
const data = (ev == null ? void 0 : ev.data) ?? {};
|
|
192
|
-
if ((ev == null ? void 0 : ev.type) ===
|
|
188
|
+
if ((ev == null ? void 0 : ev.type) === REPLAY_EVENT_TYPE.Meta) {
|
|
193
189
|
if (!seenFirstMeta) {
|
|
194
190
|
seenFirstMeta = true;
|
|
195
191
|
recordedWidth = Number(data.width ?? 0);
|
|
@@ -200,7 +196,7 @@ function deriveTimeline(events) {
|
|
|
200
196
|
out.push({ t, type: "nav", href, label: href || TYPE_LABEL.nav });
|
|
201
197
|
continue;
|
|
202
198
|
}
|
|
203
|
-
if ((ev == null ? void 0 : ev.type) ===
|
|
199
|
+
if ((ev == null ? void 0 : ev.type) === REPLAY_EVENT_TYPE.Custom) {
|
|
204
200
|
if (data.tag !== CANVAS_INTERACTION_TAG) continue;
|
|
205
201
|
const payload = data.payload;
|
|
206
202
|
if (payload == null ? void 0 : payload.snapshot) {
|
|
@@ -222,11 +218,11 @@ function deriveTimeline(events) {
|
|
|
222
218
|
});
|
|
223
219
|
continue;
|
|
224
220
|
}
|
|
225
|
-
if ((ev == null ? void 0 : ev.type) ===
|
|
221
|
+
if ((ev == null ? void 0 : ev.type) === REPLAY_EVENT_TYPE.FullSnapshot) {
|
|
226
222
|
index.reset(data.node);
|
|
227
223
|
continue;
|
|
228
224
|
}
|
|
229
|
-
if ((ev == null ? void 0 : ev.type) ===
|
|
225
|
+
if ((ev == null ? void 0 : ev.type) === REPLAY_EVENT_TYPE.IncrementalSnapshot) {
|
|
230
226
|
const source = Number(data.source);
|
|
231
227
|
if (source === SOURCE_MUTATION$1) {
|
|
232
228
|
for (const add of data.adds ?? []) {
|
|
@@ -244,8 +240,6 @@ function deriveTimeline(events) {
|
|
|
244
240
|
return { startTime, recordedWidth, recordedHeight, events: out, canvasFrames };
|
|
245
241
|
}
|
|
246
242
|
const WIDGET_HOST_HTML_ID = "issue-sticker-host";
|
|
247
|
-
const EVENT_FULL_SNAPSHOT = 2;
|
|
248
|
-
const EVENT_INCREMENTAL = 3;
|
|
249
243
|
const NODE_ELEMENT = 2;
|
|
250
244
|
const SOURCE_MUTATION = 0;
|
|
251
245
|
const SOURCE_MOUSE_MOVE = 1;
|
|
@@ -351,13 +345,13 @@ function stripWidgetEvents(events) {
|
|
|
351
345
|
let removedEvents = 0;
|
|
352
346
|
for (const event of events) {
|
|
353
347
|
const ev = event;
|
|
354
|
-
if ((ev == null ? void 0 : ev.type) ===
|
|
348
|
+
if ((ev == null ? void 0 : ev.type) === REPLAY_EVENT_TYPE.FullSnapshot) {
|
|
355
349
|
const data2 = asRecord(ev.data);
|
|
356
350
|
const pruned = pruneTree(data2.node, widgetIds);
|
|
357
351
|
out.push(pruned === data2.node ? event : { ...ev, data: { ...data2, node: pruned } });
|
|
358
352
|
continue;
|
|
359
353
|
}
|
|
360
|
-
if ((ev == null ? void 0 : ev.type) !==
|
|
354
|
+
if ((ev == null ? void 0 : ev.type) !== REPLAY_EVENT_TYPE.IncrementalSnapshot) {
|
|
361
355
|
out.push(event);
|
|
362
356
|
continue;
|
|
363
357
|
}
|
|
@@ -427,6 +421,17 @@ const EventLog = memo(function EventLog2({
|
|
|
427
421
|
total
|
|
428
422
|
}) {
|
|
429
423
|
const filtered = filter === "all" ? rows : rows.filter((r2) => r2.type === filter);
|
|
424
|
+
const listRef = useRef(null);
|
|
425
|
+
useEffect(() => {
|
|
426
|
+
const list = listRef.current;
|
|
427
|
+
const row = list == null ? void 0 : list.querySelector(`[data-row-index="${currentIndex}"]`);
|
|
428
|
+
if (!list || !row) return;
|
|
429
|
+
const top = row.offsetTop;
|
|
430
|
+
const bottom = top + row.offsetHeight;
|
|
431
|
+
if (top < list.scrollTop || bottom > list.scrollTop + list.clientHeight) {
|
|
432
|
+
list.scrollTop = Math.max(0, top - (list.clientHeight - row.offsetHeight) / 2);
|
|
433
|
+
}
|
|
434
|
+
}, [currentIndex, filter]);
|
|
430
435
|
return /* @__PURE__ */ jsxs("div", { className: "flex h-full min-h-0 min-w-0 flex-col rounded-md border border-line-subtle bg-surface-1", children: [
|
|
431
436
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between border-b border-line-subtle px-3 py-2.5", children: [
|
|
432
437
|
/* @__PURE__ */ jsx("span", { className: "text-sm font-semibold text-text-primary", children: "이벤트 로그" }),
|
|
@@ -448,12 +453,13 @@ const EventLog = memo(function EventLog2({
|
|
|
448
453
|
},
|
|
449
454
|
f
|
|
450
455
|
)) }),
|
|
451
|
-
/* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1 overflow-auto", children: filtered.map((row) => {
|
|
456
|
+
/* @__PURE__ */ jsx("div", { ref: listRef, className: "relative min-h-0 flex-1 overflow-auto", children: filtered.map((row) => {
|
|
452
457
|
const isCurrent = row.index === currentIndex;
|
|
453
458
|
return /* @__PURE__ */ jsxs(
|
|
454
459
|
"button",
|
|
455
460
|
{
|
|
456
461
|
type: "button",
|
|
462
|
+
"data-row-index": row.index,
|
|
457
463
|
onClick: () => onSeek(row.t),
|
|
458
464
|
className: cn(
|
|
459
465
|
"flex w-full items-center gap-2 border-b border-line-subtle px-3 py-2 text-left text-xs hover:bg-surface-2",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { u as uploadScreenshotDataUrls, a as uploadSignedMediaWithApi, d as directUploadToSignedUrl, p as pristineFetch, g as getElementPosition, c as captureWithModernScreenshot, b as buildJiraCreateFields, e as buildNotionCreateFields, f as buildGuestOwnerQuery, h as composeIssueFilterGroups, i as buildIssueIntegrationsPayload, j as devLogger, W as WebSocketCollector, C as ConsoleCollector, N as NetworkCollector, s as selectNetworkLogsForSubmit, k as filterExcludeServiceRelatedLogs, l as filterExcludeServiceRelatedConsoleLogs, m as compactNetworkLogsForTransport, n as CONSOLE_LOG_SUBMIT_LIMIT, o as buildExternalUserPayload, q as shrinkNetworkLogsToFit, r as measureJsonBytes, t as sanitizeString, v as serializeSocketTranscript, w as uploadSocketTranscript, x as getCurrentPageUrl, S as ScreenRecordingController, y as SessionReplayCaptureController, z as preloadModernScreenshot, I as ISSUE_STICKER_INTERNAL_LOG_PREFIX } from "./externalUserPayload-
|
|
2
|
-
import { r } from "./three-
|
|
1
|
+
import { u as uploadScreenshotDataUrls, a as uploadSignedMediaWithApi, d as directUploadToSignedUrl, p as pristineFetch, g as getElementPosition, c as captureWithModernScreenshot, b as buildJiraCreateFields, e as buildNotionCreateFields, f as buildGuestOwnerQuery, h as composeIssueFilterGroups, i as buildIssueIntegrationsPayload, j as devLogger, W as WebSocketCollector, C as ConsoleCollector, N as NetworkCollector, s as selectNetworkLogsForSubmit, k as filterExcludeServiceRelatedLogs, l as filterExcludeServiceRelatedConsoleLogs, m as compactNetworkLogsForTransport, n as CONSOLE_LOG_SUBMIT_LIMIT, o as buildExternalUserPayload, q as shrinkNetworkLogsToFit, r as measureJsonBytes, t as sanitizeString, v as serializeSocketTranscript, w as uploadSocketTranscript, x as getCurrentPageUrl, S as ScreenRecordingController, y as SessionReplayCaptureController, z as preloadModernScreenshot, I as ISSUE_STICKER_INTERNAL_LOG_PREFIX } from "./externalUserPayload-CVYSPfcx.js";
|
|
2
|
+
import { r } from "./three-_bdgDAmI.js";
|
|
3
3
|
import "react/jsx-runtime";
|
|
4
4
|
import "react";
|
|
5
5
|
const WINDOW_MS = 6e4;
|
|
@@ -867,7 +867,7 @@ class HeadlessLogCollectors {
|
|
|
867
867
|
this.socketCollector = null;
|
|
868
868
|
}
|
|
869
869
|
start() {
|
|
870
|
-
var _a, _b, _c;
|
|
870
|
+
var _a, _b, _c, _d, _e;
|
|
871
871
|
if (((_a = this.config.capture) == null ? void 0 : _a.networkLogs) !== false && !this.networkCollector) {
|
|
872
872
|
this.networkCollector = this.deps.createNetworkCollector(this.getApiBaseUrl());
|
|
873
873
|
this.networkCollector.start();
|
|
@@ -877,15 +877,10 @@ class HeadlessLogCollectors {
|
|
|
877
877
|
this.consoleCollector.start();
|
|
878
878
|
}
|
|
879
879
|
if (((_c = this.config.capture) == null ? void 0 : _c.socketLogs) !== false && !this.socketCollector) {
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
var _a2;
|
|
885
|
-
return (_a2 = network.ingest) == null ? void 0 : _a2.call(network, log);
|
|
886
|
-
});
|
|
887
|
-
}
|
|
888
|
-
this.socketCollector.start();
|
|
880
|
+
const socket = this.deps.createSocketCollector(this.getApiBaseUrl());
|
|
881
|
+
this.socketCollector = socket;
|
|
882
|
+
(_e = (_d = this.networkCollector) == null ? void 0 : _d.bindSocketLogs) == null ? void 0 : _e.call(_d, () => socket.getNetworkLogs());
|
|
883
|
+
socket.start();
|
|
889
884
|
}
|
|
890
885
|
}
|
|
891
886
|
stop() {
|