@trebired/frontend 8.6.1 → 8.6.3
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/.trebired/bundler/config.ts +1 -1
- package/CHANGELOG.md +9 -0
- package/dist/live/cards.d.ts +3 -1
- package/dist/live/cards.d.ts.map +1 -1
- package/dist/live/cards.js +39 -2
- package/dist/live/cards.js.map +1 -1
- package/dist/live/index.d.ts +1 -0
- package/dist/live/index.d.ts.map +1 -1
- package/dist/live/index.js +1 -0
- package/dist/live/index.js.map +1 -1
- package/dist/live/lists.d.ts +3 -1
- package/dist/live/lists.d.ts.map +1 -1
- package/dist/live/lists.js +40 -2
- package/dist/live/lists.js.map +1 -1
- package/dist/live/page.d.ts +31 -0
- package/dist/live/page.d.ts.map +1 -0
- package/dist/live/page.js +93 -0
- package/dist/live/page.js.map +1 -0
- package/dist/live/router.d.ts +3 -2
- package/dist/live/router.d.ts.map +1 -1
- package/dist/live/router.js +10 -9
- package/dist/live/router.js.map +1 -1
- package/dist/live/subscriptions.d.ts +8 -0
- package/dist/live/subscriptions.d.ts.map +1 -0
- package/dist/live/subscriptions.js +14 -0
- package/dist/live/subscriptions.js.map +1 -0
- package/dist/logs/client/bootstrap.d.ts +2 -1
- package/dist/logs/client/bootstrap.d.ts.map +1 -1
- package/dist/logs/client/bootstrap.js +48 -4
- package/dist/logs/client/bootstrap.js.map +1 -1
- package/dist/logs/client/page_registry.d.ts +2 -1
- package/dist/logs/client/page_registry.d.ts.map +1 -1
- package/dist/logs/client/page_registry.js +4 -1
- package/dist/logs/client/page_registry.js.map +1 -1
- package/dist/react/index.d.ts +2 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +32 -1
- package/dist/react/index.js.map +1 -1
- package/dist/sidebar/dynamic/runtime/live.d.ts.map +1 -1
- package/dist/sidebar/dynamic/runtime/live.js +23 -1
- package/dist/sidebar/dynamic/runtime/live.js.map +1 -1
- package/dist/src/live/cards.d.ts +3 -1
- package/dist/src/live/cards.d.ts.map +1 -1
- package/dist/src/live/cards.js +39 -2
- package/dist/src/live/cards.js.map +1 -1
- package/dist/src/live/index.d.ts +1 -0
- package/dist/src/live/index.d.ts.map +1 -1
- package/dist/src/live/index.js +1 -0
- package/dist/src/live/index.js.map +1 -1
- package/dist/src/live/lists.d.ts +3 -1
- package/dist/src/live/lists.d.ts.map +1 -1
- package/dist/src/live/lists.js +40 -2
- package/dist/src/live/lists.js.map +1 -1
- package/dist/src/live/page.d.ts +31 -0
- package/dist/src/live/page.d.ts.map +1 -0
- package/dist/src/live/page.js +93 -0
- package/dist/src/live/page.js.map +1 -0
- package/dist/src/live/router.d.ts +3 -2
- package/dist/src/live/router.d.ts.map +1 -1
- package/dist/src/live/router.js +10 -9
- package/dist/src/live/router.js.map +1 -1
- package/dist/src/live/subscriptions.d.ts +8 -0
- package/dist/src/live/subscriptions.d.ts.map +1 -0
- package/dist/src/live/subscriptions.js +14 -0
- package/dist/src/live/subscriptions.js.map +1 -0
- package/dist/src/logs/client/bootstrap.d.ts +2 -1
- package/dist/src/logs/client/bootstrap.d.ts.map +1 -1
- package/dist/src/logs/client/bootstrap.js +48 -4
- package/dist/src/logs/client/bootstrap.js.map +1 -1
- package/dist/src/logs/client/page_registry.d.ts +2 -1
- package/dist/src/logs/client/page_registry.d.ts.map +1 -1
- package/dist/src/logs/client/page_registry.js +4 -1
- package/dist/src/logs/client/page_registry.js.map +1 -1
- package/dist/src/react/index.d.ts +2 -1
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/react/index.js +32 -1
- package/dist/src/react/index.js.map +1 -1
- package/dist/src/sidebar/dynamic/runtime/live.d.ts.map +1 -1
- package/dist/src/sidebar/dynamic/runtime/live.js +23 -1
- package/dist/src/sidebar/dynamic/runtime/live.js.map +1 -1
- package/package.json +8 -4
|
@@ -6,15 +6,19 @@ import { DEFAULT_LOGS_INSTANCE_ID } from "./types.js";
|
|
|
6
6
|
import { normalizeInstanceId, normalizeLogsConfig } from "./utils.js";
|
|
7
7
|
import { flushFrontendLogsBuffer, forceViewportToBottom, focusSearchInputAfterFullscreenOpen, focusSearchInputAfterFullscreenRequest, refreshLogDom, syncMetadataButton, syncViewportFromScroll, } from "./view_state.js";
|
|
8
8
|
import { createLogsPage, isEquivalentLogsConfig } from "./page.js";
|
|
9
|
-
import { readLogsPartialPage, setLogsPartialPage } from "./page_registry.js";
|
|
9
|
+
import { deleteLogsPartialPage, readLogsPartialPage, setLogsPartialPage, } from "./page_registry.js";
|
|
10
10
|
import { ingestFrontendLogs } from "./ingest.js";
|
|
11
11
|
import { renderLogs } from "./render.js";
|
|
12
12
|
import { replaceLogsPartialData } from "./replace.js";
|
|
13
|
+
import { frontendEventName } from "../../namespace/index.js";
|
|
13
14
|
const logsPartialRoots = new Set();
|
|
15
|
+
let logsLivePageDisposeBound = false;
|
|
14
16
|
function bootstrapLogsPartial(options = {}) {
|
|
17
|
+
bindLogsLivePageDispose();
|
|
15
18
|
const page = createLogsPage(options);
|
|
16
19
|
if (!page.ui.root || !page.ui.box || !page.ui.scrollBox)
|
|
17
20
|
return null;
|
|
21
|
+
logsPartialRoots.add(page.ui.root);
|
|
18
22
|
const existing = readLogsPartialPage(page.ui.root);
|
|
19
23
|
if (existing)
|
|
20
24
|
return bootstrapExistingLogsPartial(existing, options);
|
|
@@ -120,8 +124,7 @@ function disconnectLogsPartial(target = null) {
|
|
|
120
124
|
const page = readLogsPartialPage(root);
|
|
121
125
|
if (!page)
|
|
122
126
|
return false;
|
|
123
|
-
|
|
124
|
-
return true;
|
|
127
|
+
return disconnectLogsPartialRoot(root, false);
|
|
125
128
|
}
|
|
126
129
|
function closeLogsPageSockets(page) {
|
|
127
130
|
for (const key of ["socket", "pagedLiveSocket"]) {
|
|
@@ -134,7 +137,47 @@ function closeLogsPageSockets(page) {
|
|
|
134
137
|
page.state[key] = null;
|
|
135
138
|
}
|
|
136
139
|
}
|
|
140
|
+
function disconnectLogsPartialRoot(root, unregister) {
|
|
141
|
+
const page = readLogsPartialPage(root);
|
|
142
|
+
if (!page)
|
|
143
|
+
return false;
|
|
144
|
+
closeLogsPageSockets(page);
|
|
145
|
+
if (root && unregister) {
|
|
146
|
+
logsPartialRoots.delete(root);
|
|
147
|
+
deleteLogsPartialPage(root);
|
|
148
|
+
}
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
function disconnectLogsPartialsWithin(root) {
|
|
152
|
+
let disconnected = 0;
|
|
153
|
+
Array.from(logsPartialRoots).forEach((partialRoot) => {
|
|
154
|
+
if (!shouldDisposeLogsPartial(partialRoot, root))
|
|
155
|
+
return;
|
|
156
|
+
if (disconnectLogsPartialRoot(partialRoot, true))
|
|
157
|
+
disconnected += 1;
|
|
158
|
+
else
|
|
159
|
+
logsPartialRoots.delete(partialRoot);
|
|
160
|
+
});
|
|
161
|
+
return disconnected;
|
|
162
|
+
}
|
|
163
|
+
function shouldDisposeLogsPartial(partialRoot, root) {
|
|
164
|
+
if (!partialRoot.isConnected)
|
|
165
|
+
return true;
|
|
166
|
+
if (!(root instanceof Node))
|
|
167
|
+
return false;
|
|
168
|
+
return partialRoot === root || root.contains(partialRoot);
|
|
169
|
+
}
|
|
170
|
+
function bindLogsLivePageDispose() {
|
|
171
|
+
if (logsLivePageDisposeBound || typeof document === "undefined")
|
|
172
|
+
return;
|
|
173
|
+
logsLivePageDisposeBound = true;
|
|
174
|
+
document.addEventListener(frontendEventName("live-page-dispose"), (event) => {
|
|
175
|
+
const root = event.detail?.root;
|
|
176
|
+
disconnectLogsPartialsWithin(root instanceof HTMLElement ? root : null);
|
|
177
|
+
});
|
|
178
|
+
}
|
|
137
179
|
function bootstrapLogsPartials(options = {}) {
|
|
180
|
+
bindLogsLivePageDispose();
|
|
138
181
|
const roots = Array.from(logsPartialRoots).filter((root) => {
|
|
139
182
|
if (root.isConnected)
|
|
140
183
|
return true;
|
|
@@ -162,10 +205,11 @@ function bootLogsPartialsOnce() {
|
|
|
162
205
|
flushFrontendLogsBuffer(ingestFrontendLogs);
|
|
163
206
|
}
|
|
164
207
|
function bindLogsPartialElement(root) {
|
|
208
|
+
bindLogsLivePageDispose();
|
|
165
209
|
logsPartialRoots.add(root);
|
|
166
210
|
const page = bootstrapLogsPartial(buildPartialOptions(root, {}));
|
|
167
211
|
flushFrontendLogsBuffer(ingestFrontendLogs);
|
|
168
212
|
return page;
|
|
169
213
|
}
|
|
170
|
-
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial, };
|
|
214
|
+
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial, disconnectLogsPartialsWithin, };
|
|
171
215
|
//# sourceMappingURL=bootstrap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../../src/logs/client/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,sCAAsC,EACtC,aAAa,EACb,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../../src/logs/client/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
declare function readLogsPartialPage(root: HTMLElement | null): any;
|
|
2
2
|
declare function setLogsPartialPage(root: HTMLElement, page: any): void;
|
|
3
|
-
|
|
3
|
+
declare function deleteLogsPartialPage(root: HTMLElement): void;
|
|
4
|
+
export { deleteLogsPartialPage, readLogsPartialPage, setLogsPartialPage };
|
|
4
5
|
//# sourceMappingURL=page_registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page_registry.d.ts","sourceRoot":"","sources":["../../../../src/logs/client/page_registry.ts"],"names":[],"mappings":"AAEA,iBAAS,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,OAIpD;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,QAEvD;AAED,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"page_registry.d.ts","sourceRoot":"","sources":["../../../../src/logs/client/page_registry.ts"],"names":[],"mappings":"AAEA,iBAAS,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,OAIpD;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,QAEvD;AAED,iBAAS,qBAAqB,CAAC,IAAI,EAAE,WAAW,QAE/C;AAED,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -7,5 +7,8 @@ function readLogsPartialPage(root) {
|
|
|
7
7
|
function setLogsPartialPage(root, page) {
|
|
8
8
|
logsPartialPages.set(root, page);
|
|
9
9
|
}
|
|
10
|
-
|
|
10
|
+
function deleteLogsPartialPage(root) {
|
|
11
|
+
logsPartialPages.delete(root);
|
|
12
|
+
}
|
|
13
|
+
export { deleteLogsPartialPage, readLogsPartialPage, setLogsPartialPage };
|
|
11
14
|
//# sourceMappingURL=page_registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page_registry.js","sourceRoot":"","sources":["../../../../src/logs/client/page_registry.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAoB,CAAC;AAEzD,SAAS,mBAAmB,CAAC,IAAwB;IACnD,OAAO,IAAI,YAAY,WAAW;QAClC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI;QACpC,CAAC,CAAC,IAAI,CAAC;AACT,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAiB,EAAE,IAAS;IACtD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"page_registry.js","sourceRoot":"","sources":["../../../../src/logs/client/page_registry.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAoB,CAAC;AAEzD,SAAS,mBAAmB,CAAC,IAAwB;IACnD,OAAO,IAAI,YAAY,WAAW;QAClC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI;QACpC,CAAC,CAAC,IAAI,CAAC;AACT,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAiB,EAAE,IAAS;IACtD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAiB;IAC9C,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
|
package/dist/react/index.d.ts
CHANGED
|
@@ -19,8 +19,9 @@ type LiveIslandMountOptions = {
|
|
|
19
19
|
declare function mountReactRoot(root: Element, node: ReactNode, options?: ReactRootOptions): Promise<import("react-dom/client").Root>;
|
|
20
20
|
declare function renderReactRoot(root: Element, node: ReactNode): Promise<import("react-dom/client").Root>;
|
|
21
21
|
declare function unmountReactRoot(root: Element): boolean;
|
|
22
|
+
declare function unmountReactRootsWithin(root: ParentNode | null): number;
|
|
22
23
|
declare function mountLiveIsland(options: LiveIslandMountOptions): Promise<import("react-dom/client").Root>;
|
|
23
|
-
export { mountLiveIsland, mountReactRoot, readJsonScript, renderReactRoot, unmountReactRoot, };
|
|
24
|
+
export { mountLiveIsland, mountReactRoot, readJsonScript, renderReactRoot, unmountReactRoot, unmountReactRootsWithin, };
|
|
24
25
|
export type { LiveIslandMountOptions, ReactRootOptions };
|
|
25
26
|
export * from "./assets.js";
|
|
26
27
|
export * from "./boot.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,KAAK,gBAAgB,GAAG;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AACF,KAAK,sBAAsB,GAAG;IAC5B,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,SAAS,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE;QAC9B,YAAY,EAAE,OAAO,CAAC;QACtB,IAAI,EAAE,OAAO,CAAC;KACjB,KAAK,SAAS,CAAC;CACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"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"}
|
package/dist/react/index.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { readJsonScript } from "../dom/index.js";
|
|
2
2
|
import { frontendDataAttr, frontendEventName } from "../namespace/index.js";
|
|
3
3
|
const roots = new WeakMap();
|
|
4
|
+
const mountedRoots = new Set();
|
|
5
|
+
let reactLivePageDisposeBound = false;
|
|
4
6
|
function resolveEsmInterop(namespace, probe) {
|
|
5
7
|
return (typeof namespace?.[probe] === "function" ? namespace : namespace?.default);
|
|
6
8
|
}
|
|
7
9
|
async function mountReactRoot(root, node, options = {}) {
|
|
10
|
+
bindReactLivePageDispose();
|
|
8
11
|
const client = resolveEsmInterop(await import("react-dom/client"), "createRoot");
|
|
9
12
|
const existing = roots.get(root);
|
|
10
13
|
if (existing) {
|
|
@@ -17,6 +20,7 @@ async function mountReactRoot(root, node, options = {}) {
|
|
|
17
20
|
if (options.hydrate !== true)
|
|
18
21
|
created.render(node);
|
|
19
22
|
roots.set(root, created);
|
|
23
|
+
mountedRoots.add(root);
|
|
20
24
|
return created;
|
|
21
25
|
}
|
|
22
26
|
async function renderReactRoot(root, node) {
|
|
@@ -28,8 +32,35 @@ function unmountReactRoot(root) {
|
|
|
28
32
|
return false;
|
|
29
33
|
existing.unmount();
|
|
30
34
|
roots.delete(root);
|
|
35
|
+
mountedRoots.delete(root);
|
|
31
36
|
return true;
|
|
32
37
|
}
|
|
38
|
+
function unmountReactRootsWithin(root) {
|
|
39
|
+
if (!root)
|
|
40
|
+
return 0;
|
|
41
|
+
let count = 0;
|
|
42
|
+
Array.from(mountedRoots).forEach((target) => {
|
|
43
|
+
if (!isReactRootWithin(target, root))
|
|
44
|
+
return;
|
|
45
|
+
if (unmountReactRoot(target))
|
|
46
|
+
count += 1;
|
|
47
|
+
});
|
|
48
|
+
return count;
|
|
49
|
+
}
|
|
50
|
+
function isReactRootWithin(target, root) {
|
|
51
|
+
if (target === root)
|
|
52
|
+
return true;
|
|
53
|
+
return root instanceof Node && root.contains(target);
|
|
54
|
+
}
|
|
55
|
+
function bindReactLivePageDispose() {
|
|
56
|
+
if (reactLivePageDisposeBound || typeof document === "undefined")
|
|
57
|
+
return;
|
|
58
|
+
reactLivePageDisposeBound = true;
|
|
59
|
+
document.addEventListener(frontendEventName("live-page-dispose"), (event) => {
|
|
60
|
+
const root = event.detail?.root;
|
|
61
|
+
unmountReactRootsWithin(root instanceof HTMLElement ? root : null);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
33
64
|
async function mountLiveIsland(options) {
|
|
34
65
|
const target = typeof options.root === "string"
|
|
35
66
|
? document.getElementById(options.root.replace(/^#/, ""))
|
|
@@ -55,7 +86,7 @@ async function mountLiveIsland(options) {
|
|
|
55
86
|
options.onMounted?.(target, state);
|
|
56
87
|
return root;
|
|
57
88
|
}
|
|
58
|
-
export { mountLiveIsland, mountReactRoot, readJsonScript, renderReactRoot, unmountReactRoot, };
|
|
89
|
+
export { mountLiveIsland, mountReactRoot, readJsonScript, renderReactRoot, unmountReactRoot, unmountReactRootsWithin, };
|
|
59
90
|
export * from "./assets.js";
|
|
60
91
|
export * from "./boot.js";
|
|
61
92
|
export * from "./product-shell.js";
|
package/dist/react/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAmBpE,MAAM,KAAK,GAAG,IAAI,OAAO,EAA6D,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/live.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AAUvB,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,wBAAwB,EAExB,0BAA0B,EAC3B,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/live.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AAUvB,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,wBAAwB,EAExB,0BAA0B,EAC3B,MAAM,eAAe,CAAC;AAkEvB,iBAAS,gCAAgC,+BAUxC;AAED,iBAAS,0BAA0B,aAWlC;AAED,iBAAe,2BAA2B,0CAIzC;AAED,iBAAS,2BAA2B,CAAC,UAAU,EAAE,OAAO,QAgBvD;AAED,iBAAe,yBAAyB,kBAevC;AAED,iBAAS,6BAA6B,CAAC,OAAO,SAAoC,QAMjF;AAkBD,iBAAS,0BAA0B,CAAC,IAAI,EAAE,WAAW,eAiBpD;AAWD,iBAAS,sBAAsB,CAC7B,IAAI,GAAE,QAAmB,EACzB,OAAO,CAAC,EAAE,yBAAyB,QAMpC;AAED,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,gCAAgC,EAChC,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,6BAA6B,GAC9B,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { bindDynamicSidebarDisabledLinkGuard, } from "./guards.js";
|
|
|
4
4
|
import { liveRootContent } from "./dom.js";
|
|
5
5
|
import { DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR, DYNAMIC_SIDEBAR_LIVE_SELECTOR, } from "./selectors.js";
|
|
6
6
|
import { textValue } from "../tree.js";
|
|
7
|
+
import { frontendEventName } from "../../../namespace/index.js";
|
|
7
8
|
const liveRoots = new Set();
|
|
8
9
|
const liveConfigs = new WeakMap();
|
|
9
10
|
let liveOptions = {};
|
|
@@ -11,6 +12,7 @@ let unsubscribeRooms = [];
|
|
|
11
12
|
let refreshTimer = 0;
|
|
12
13
|
let refreshInFlight = false;
|
|
13
14
|
let refreshQueued = false;
|
|
15
|
+
let livePageLifecycleBound = false;
|
|
14
16
|
function mergeLiveOptions(options) {
|
|
15
17
|
if (!options)
|
|
16
18
|
return liveOptions;
|
|
@@ -25,7 +27,16 @@ function mergeLiveOptions(options) {
|
|
|
25
27
|
return liveOptions;
|
|
26
28
|
}
|
|
27
29
|
function visibleLiveRoots() {
|
|
28
|
-
|
|
30
|
+
const out = [];
|
|
31
|
+
liveRoots.forEach((node) => {
|
|
32
|
+
if (node.isConnected) {
|
|
33
|
+
out.push(node);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
liveRoots.delete(node);
|
|
37
|
+
liveConfigs.delete(node);
|
|
38
|
+
});
|
|
39
|
+
return out;
|
|
29
40
|
}
|
|
30
41
|
function descriptorKeyFromConfig(config) {
|
|
31
42
|
const side = textValue(config.side, "left");
|
|
@@ -146,6 +157,7 @@ function syncDynamicSidebarRooms() {
|
|
|
146
157
|
});
|
|
147
158
|
}
|
|
148
159
|
function bindDynamicSidebarLiveHost(host) {
|
|
160
|
+
bindDynamicSidebarLivePageLifecycle();
|
|
149
161
|
const root = liveRootContent(host) || host;
|
|
150
162
|
if (!(root instanceof HTMLElement))
|
|
151
163
|
return null;
|
|
@@ -156,8 +168,18 @@ function bindDynamicSidebarLiveHost(host) {
|
|
|
156
168
|
scheduleDynamicSidebarRefresh(0);
|
|
157
169
|
return root;
|
|
158
170
|
}
|
|
171
|
+
function bindDynamicSidebarLivePageLifecycle() {
|
|
172
|
+
if (livePageLifecycleBound || typeof document === "undefined")
|
|
173
|
+
return;
|
|
174
|
+
livePageLifecycleBound = true;
|
|
175
|
+
document.addEventListener(frontendEventName("live-content-updated"), () => {
|
|
176
|
+
syncDynamicSidebarRooms();
|
|
177
|
+
scheduleDynamicSidebarRefresh(0);
|
|
178
|
+
});
|
|
179
|
+
}
|
|
159
180
|
function bindDynamicSidebarLive(root = document, options) {
|
|
160
181
|
mergeLiveOptions(options);
|
|
182
|
+
bindDynamicSidebarLivePageLifecycle();
|
|
161
183
|
queryAll(root, DYNAMIC_SIDEBAR_LIVE_SELECTOR)
|
|
162
184
|
.forEach(bindDynamicSidebarLiveHost);
|
|
163
185
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/live.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,eAAe,GAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EACL,mCAAmC,GACpC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EACL,oCAAoC,EACpC,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AAUxB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"live.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/live.ts"],"names":[],"mappings":"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"}
|
package/dist/src/live/cards.d.ts
CHANGED
|
@@ -9,7 +9,9 @@ type LiveCardsOptions = {
|
|
|
9
9
|
declare const LIVE_CARD_SELECTOR: string;
|
|
10
10
|
declare function swapLiveCardHtml(host: HTMLElement, html: unknown, options?: LiveCardsOptions): boolean;
|
|
11
11
|
declare function bindLiveCardHost(host: HTMLElement, options?: LiveCardsOptions): boolean;
|
|
12
|
+
declare function disconnectLiveCardHost(host: HTMLElement): boolean;
|
|
13
|
+
declare function disconnectLiveCardsWithin(root: ParentNode | null): void;
|
|
12
14
|
declare function bindLiveCards(root?: BindRoot, options?: LiveCardsOptions): void;
|
|
13
|
-
export { LIVE_CARD_SELECTOR, bindLiveCardHost, bindLiveCards, swapLiveCardHtml, };
|
|
15
|
+
export { LIVE_CARD_SELECTOR, bindLiveCardHost, bindLiveCards, disconnectLiveCardHost, disconnectLiveCardsWithin, swapLiveCardHtml, };
|
|
14
16
|
export type { LiveCardsOptions, LiveCleanup };
|
|
15
17
|
//# sourceMappingURL=cards.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../../src/live/cards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../../src/live/cards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIxD,KAAK,WAAW,GAAG,MAAM,IAAI,CAAC;AAC9B,KAAK,gBAAgB,GAAG;IACtB,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC;IACrC,SAAS,CAAC,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,KACjD,WAAW,CAAC;CAClB,CAAC;AAEF,QAAA,MAAM,kBAAkB,QAAoC,CAAC;AAsC7D,iBAAS,gBAAgB,CACvB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,gBAAqB,WAY/B;AAgBD,iBAAS,gBAAgB,CACvB,IAAI,EAAE,WAAW,EACjB,OAAO,GAAE,gBAAqB,WAqB/B;AAED,iBAAS,sBAAsB,CAAC,IAAI,EAAE,WAAW,WAKhD;AAED,iBAAS,yBAAyB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,QAEzD;AAoBD,iBAAS,aAAa,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,gBAAqB,QAK/E;AAED,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/src/live/cards.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { queryAll } from "../../dom/index.js";
|
|
2
|
+
import { disconnectLiveSubscriptionHost } from "./subscriptions.js";
|
|
2
3
|
import { frontendDataAttr, frontendDataSelector, frontendEventName } from "../../namespace/index.js";
|
|
3
4
|
const LIVE_CARD_SELECTOR = frontendDataSelector("live-card");
|
|
4
5
|
const boundLiveCards = new WeakSet();
|
|
6
|
+
const liveCardCleanups = new WeakMap();
|
|
7
|
+
let liveCardsDisposeBound = false;
|
|
5
8
|
function liveCardTarget(host) {
|
|
6
9
|
const child = host.firstElementChild;
|
|
7
10
|
return child instanceof HTMLElement ? child : host;
|
|
@@ -66,7 +69,11 @@ function bindLiveCardHost(host, options = {}) {
|
|
|
66
69
|
if (!room)
|
|
67
70
|
return false;
|
|
68
71
|
boundLiveCards.add(host);
|
|
69
|
-
subscribe(room, (payload) => {
|
|
72
|
+
const cleanup = subscribe(room, (payload) => {
|
|
73
|
+
if (!host.isConnected) {
|
|
74
|
+
disconnectLiveCardHost(host);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
70
77
|
const event = typeof payload.event === "string" ? payload.event : "";
|
|
71
78
|
const expected = String(options.event || "card").trim();
|
|
72
79
|
if (expected && event && event !== expected)
|
|
@@ -75,12 +82,42 @@ function bindLiveCardHost(host, options = {}) {
|
|
|
75
82
|
if (html)
|
|
76
83
|
swapLiveCardHtml(host, html, options);
|
|
77
84
|
});
|
|
85
|
+
if (typeof cleanup === "function")
|
|
86
|
+
liveCardCleanups.set(host, cleanup);
|
|
78
87
|
return true;
|
|
79
88
|
}
|
|
89
|
+
function disconnectLiveCardHost(host) {
|
|
90
|
+
return disconnectLiveSubscriptionHost(host, {
|
|
91
|
+
bound: boundLiveCards,
|
|
92
|
+
cleanups: liveCardCleanups,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
function disconnectLiveCardsWithin(root) {
|
|
96
|
+
liveCardHostsWithin(root).forEach(disconnectLiveCardHost);
|
|
97
|
+
}
|
|
98
|
+
function liveCardHostsWithin(root) {
|
|
99
|
+
if (!root || typeof root.querySelectorAll !== "function")
|
|
100
|
+
return [];
|
|
101
|
+
const hosts = Array.from(root.querySelectorAll(LIVE_CARD_SELECTOR));
|
|
102
|
+
if (root instanceof HTMLElement && root.matches(LIVE_CARD_SELECTOR)) {
|
|
103
|
+
hosts.unshift(root);
|
|
104
|
+
}
|
|
105
|
+
return hosts;
|
|
106
|
+
}
|
|
107
|
+
function bindLiveCardsDispose() {
|
|
108
|
+
if (liveCardsDisposeBound || typeof document === "undefined")
|
|
109
|
+
return;
|
|
110
|
+
liveCardsDisposeBound = true;
|
|
111
|
+
document.addEventListener(frontendEventName("live-page-dispose"), (event) => {
|
|
112
|
+
const root = event.detail?.root;
|
|
113
|
+
disconnectLiveCardsWithin(root instanceof HTMLElement ? root : null);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
80
116
|
function bindLiveCards(root = document, options = {}) {
|
|
117
|
+
bindLiveCardsDispose();
|
|
81
118
|
queryAll(root, LIVE_CARD_SELECTOR).forEach((host) => {
|
|
82
119
|
bindLiveCardHost(host, options);
|
|
83
120
|
});
|
|
84
121
|
}
|
|
85
|
-
export { LIVE_CARD_SELECTOR, bindLiveCardHost, bindLiveCards, swapLiveCardHtml, };
|
|
122
|
+
export { LIVE_CARD_SELECTOR, bindLiveCardHost, bindLiveCards, disconnectLiveCardHost, disconnectLiveCardsWithin, swapLiveCardHtml, };
|
|
86
123
|
//# sourceMappingURL=cards.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cards.js","sourceRoot":"","sources":["../../../src/live/cards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAa1F,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;AAC7D,MAAM,cAAc,GAAG,IAAI,OAAO,EAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"cards.js","sourceRoot":"","sources":["../../../src/live/cards.ts"],"names":[],"mappings":"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"}
|
package/dist/src/live/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from "./connections.js";
|
|
|
9
9
|
export * from "./infinite.js";
|
|
10
10
|
export * from "./lists.js";
|
|
11
11
|
export * from "./overlays.js";
|
|
12
|
+
export * from "./page.js";
|
|
12
13
|
export * from "./regions.js";
|
|
13
14
|
export * from "./router.js";
|
|
14
15
|
export * from "./scroll-overflow.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG7D,QAAA,MAAM,qBAAqB,QAAuC,CAAC;AAEnE,iBAAS,eAAe,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,WAAgB,QAU5E;AAED,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,cAAa,YAAY,CAAC;AAC1B,cAAa,kBAAkB,CAAC;AAChC,cAAa,eAAe,CAAC;AAC7B,cAAa,YAAY,CAAC;AAC1B,cAAa,eAAe,CAAC;AAC7B,cAAa,cAAc,CAAC;AAC5B,cAAa,aAAa,CAAC;AAC3B,cAAa,sBAAsB,CAAC;AACpC,cAAa,aAAa,CAAC;AAC3B,cAAa,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG7D,QAAA,MAAM,qBAAqB,QAAuC,CAAC;AAEnE,iBAAS,eAAe,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,WAAgB,QAU5E;AAED,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,cAAa,YAAY,CAAC;AAC1B,cAAa,kBAAkB,CAAC;AAChC,cAAa,eAAe,CAAC;AAC7B,cAAa,YAAY,CAAC;AAC1B,cAAa,eAAe,CAAC;AAC7B,cAAa,WAAW,CAAC;AACzB,cAAa,cAAc,CAAC;AAC5B,cAAa,aAAa,CAAC;AAC3B,cAAa,sBAAsB,CAAC;AACpC,cAAa,aAAa,CAAC;AAC3B,cAAa,YAAY,CAAC"}
|
package/dist/src/live/index.js
CHANGED
|
@@ -20,6 +20,7 @@ export * from "./connections.js";
|
|
|
20
20
|
export * from "./infinite.js";
|
|
21
21
|
export * from "./lists.js";
|
|
22
22
|
export * from "./overlays.js";
|
|
23
|
+
export * from "./page.js";
|
|
23
24
|
export * from "./regions.js";
|
|
24
25
|
export * from "./router.js";
|
|
25
26
|
export * from "./scroll-overflow.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAoB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAEvE,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;AAEnE,SAAS,eAAe,CAAC,OAAiB,QAAQ,EAAE,UAAuB,EAAE;IAC3E,QAAQ,CAAc,IAAI,EAAE,qBAAqB,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACnE,IAAI,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAAE,OAAO;QACjE,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,IAAI,SAAS,CAAC;YAC5E,KAAK,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC;AAElD,cAAa,YAAY,CAAC;AAC1B,cAAa,kBAAkB,CAAC;AAChC,cAAa,eAAe,CAAC;AAC7B,cAAa,YAAY,CAAC;AAC1B,cAAa,eAAe,CAAC;AAC7B,cAAa,cAAc,CAAC;AAC5B,cAAa,aAAa,CAAC;AAC3B,cAAa,sBAAsB,CAAC;AACpC,cAAa,aAAa,CAAC;AAC3B,cAAa,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAoB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAEvE,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;AAEnE,SAAS,eAAe,CAAC,OAAiB,QAAQ,EAAE,UAAuB,EAAE;IAC3E,QAAQ,CAAc,IAAI,EAAE,qBAAqB,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACnE,IAAI,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAAE,OAAO;QACjE,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,IAAI,SAAS,CAAC;YAC5E,KAAK,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC;AAElD,cAAa,YAAY,CAAC;AAC1B,cAAa,kBAAkB,CAAC;AAChC,cAAa,eAAe,CAAC;AAC7B,cAAa,YAAY,CAAC;AAC1B,cAAa,eAAe,CAAC;AAC7B,cAAa,WAAW,CAAC;AACzB,cAAa,cAAc,CAAC;AAC5B,cAAa,aAAa,CAAC;AAC3B,cAAa,sBAAsB,CAAC;AACpC,cAAa,aAAa,CAAC;AAC3B,cAAa,YAAY,CAAC"}
|
package/dist/src/live/lists.d.ts
CHANGED
|
@@ -6,7 +6,9 @@ type LiveListsOptions = {
|
|
|
6
6
|
};
|
|
7
7
|
declare const LIVE_LIST_SELECTOR = "live-list[data-live-list-room]";
|
|
8
8
|
declare function bindLiveListHost(host: HTMLElement, options?: LiveListsOptions): boolean;
|
|
9
|
+
declare function disconnectLiveListHost(host: HTMLElement): boolean;
|
|
10
|
+
declare function disconnectLiveListsWithin(root: ParentNode | null): void;
|
|
9
11
|
declare function bindLiveLists(root?: BindRoot, options?: LiveListsOptions): void;
|
|
10
|
-
export { LIVE_LIST_SELECTOR, bindLiveListHost, bindLiveLists };
|
|
12
|
+
export { LIVE_LIST_SELECTOR, bindLiveListHost, bindLiveLists, disconnectLiveListHost, disconnectLiveListsWithin, };
|
|
11
13
|
export type { LiveListsOptions };
|
|
12
14
|
//# sourceMappingURL=lists.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lists.d.ts","sourceRoot":"","sources":["../../../src/live/lists.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"lists.d.ts","sourceRoot":"","sources":["../../../src/live/lists.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGrD,KAAK,gBAAgB,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,KAC3C,MAAM,IAAI,CAAC;CACjB,CAAC;AAEF,QAAA,MAAM,kBAAkB,mCAAmC,CAAC;AAK5D,iBAAS,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB,WAmB1E;AAED,iBAAS,sBAAsB,CAAC,IAAI,EAAE,WAAW,WAKhD;AAED,iBAAS,yBAAyB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,QAEzD;AAoBD,iBAAS,aAAa,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,gBAAqB,QAK/E;AAED,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,sBAAsB,EACtB,yBAAyB,GAC1B,CAAC;AACF,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
|
package/dist/src/live/lists.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { queryAll } from "../../dom/index.js";
|
|
2
2
|
import { softReload } from "./router.js";
|
|
3
|
+
import { disconnectLiveSubscriptionHost } from "./subscriptions.js";
|
|
4
|
+
import { frontendEventName } from "../../namespace/index.js";
|
|
3
5
|
const LIVE_LIST_SELECTOR = "live-list[data-live-list-room]";
|
|
4
6
|
const boundLiveLists = new WeakSet();
|
|
7
|
+
const liveListCleanups = new WeakMap();
|
|
8
|
+
let liveListsDisposeBound = false;
|
|
5
9
|
function bindLiveListHost(host, options = {}) {
|
|
6
10
|
if (boundLiveLists.has(host))
|
|
7
11
|
return false;
|
|
@@ -13,18 +17,52 @@ function bindLiveListHost(host, options = {}) {
|
|
|
13
17
|
return false;
|
|
14
18
|
const expectedEvent = host.getAttribute("data-live-list-event") || "";
|
|
15
19
|
boundLiveLists.add(host);
|
|
16
|
-
subscribe(room, (payload) => {
|
|
20
|
+
const cleanup = subscribe(room, (payload) => {
|
|
21
|
+
if (!host.isConnected) {
|
|
22
|
+
disconnectLiveListHost(host);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
17
25
|
const event = typeof payload.event === "string" ? payload.event : "";
|
|
18
26
|
if (expectedEvent && event && event !== expectedEvent)
|
|
19
27
|
return;
|
|
20
28
|
void (options.reload || softReload)();
|
|
21
29
|
});
|
|
30
|
+
if (typeof cleanup === "function")
|
|
31
|
+
liveListCleanups.set(host, cleanup);
|
|
22
32
|
return true;
|
|
23
33
|
}
|
|
34
|
+
function disconnectLiveListHost(host) {
|
|
35
|
+
return disconnectLiveSubscriptionHost(host, {
|
|
36
|
+
bound: boundLiveLists,
|
|
37
|
+
cleanups: liveListCleanups,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function disconnectLiveListsWithin(root) {
|
|
41
|
+
liveListHostsWithin(root).forEach(disconnectLiveListHost);
|
|
42
|
+
}
|
|
43
|
+
function liveListHostsWithin(root) {
|
|
44
|
+
if (!root || typeof root.querySelectorAll !== "function")
|
|
45
|
+
return [];
|
|
46
|
+
const hosts = Array.from(root.querySelectorAll(LIVE_LIST_SELECTOR));
|
|
47
|
+
if (root instanceof HTMLElement && root.matches(LIVE_LIST_SELECTOR)) {
|
|
48
|
+
hosts.unshift(root);
|
|
49
|
+
}
|
|
50
|
+
return hosts;
|
|
51
|
+
}
|
|
52
|
+
function bindLiveListsDispose() {
|
|
53
|
+
if (liveListsDisposeBound || typeof document === "undefined")
|
|
54
|
+
return;
|
|
55
|
+
liveListsDisposeBound = true;
|
|
56
|
+
document.addEventListener(frontendEventName("live-page-dispose"), (event) => {
|
|
57
|
+
const root = event.detail?.root;
|
|
58
|
+
disconnectLiveListsWithin(root instanceof HTMLElement ? root : null);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
24
61
|
function bindLiveLists(root = document, options = {}) {
|
|
62
|
+
bindLiveListsDispose();
|
|
25
63
|
queryAll(root, LIVE_LIST_SELECTOR).forEach((host) => {
|
|
26
64
|
bindLiveListHost(host, options);
|
|
27
65
|
});
|
|
28
66
|
}
|
|
29
|
-
export { LIVE_LIST_SELECTOR, bindLiveListHost, bindLiveLists };
|
|
67
|
+
export { LIVE_LIST_SELECTOR, bindLiveListHost, bindLiveLists, disconnectLiveListHost, disconnectLiveListsWithin, };
|
|
30
68
|
//# sourceMappingURL=lists.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lists.js","sourceRoot":"","sources":["../../../src/live/lists.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"lists.js","sourceRoot":"","sources":["../../../src/live/lists.ts"],"names":[],"mappings":"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"}
|