@trebired/frontend 10.3.0 → 11.0.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 +23 -0
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -19
- package/dist/index.js.map +1 -1
- package/dist/language/runtime-locale.js +1 -1
- package/dist/live/cards.d.ts +3 -6
- package/dist/live/cards.d.ts.map +1 -1
- package/dist/live/cards.js +4 -25
- package/dist/live/cards.js.map +1 -1
- package/dist/live/index.d.ts +1 -14
- package/dist/live/index.d.ts.map +1 -1
- package/dist/live/index.js +0 -25
- package/dist/live/index.js.map +1 -1
- package/dist/live/lists.d.ts +3 -6
- package/dist/live/lists.d.ts.map +1 -1
- package/dist/live/lists.js +5 -27
- package/dist/live/lists.js.map +1 -1
- package/dist/live/subscribe.d.ts +8 -0
- package/dist/live/subscribe.d.ts.map +1 -0
- package/dist/live/subscribe.js +2 -0
- package/dist/live/subscribe.js.map +1 -0
- package/dist/logs/client/bootstrap.d.ts +1 -2
- package/dist/logs/client/bootstrap.d.ts.map +1 -1
- package/dist/logs/client/bootstrap.js +6 -34
- package/dist/logs/client/bootstrap.js.map +1 -1
- package/dist/primitives/scroll-overflow.d.ts.map +1 -0
- package/dist/primitives/scroll-overflow.js.map +1 -0
- package/dist/react/index.d.ts +1 -2
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +5 -29
- package/dist/react/index.js.map +1 -1
- package/dist/{live → realtime}/connections.d.ts +1 -2
- package/dist/realtime/connections.d.ts.map +1 -0
- package/dist/{src/live → realtime}/connections.js +5 -5
- package/dist/realtime/connections.js.map +1 -0
- package/dist/realtime/index.d.ts +4 -0
- package/dist/realtime/index.d.ts.map +1 -0
- package/dist/realtime/index.js +4 -0
- package/dist/realtime/index.js.map +1 -0
- package/dist/realtime/socket.d.ts.map +1 -0
- package/dist/realtime/socket.js.map +1 -0
- package/dist/realtime/subscriptions.d.ts.map +1 -0
- package/dist/realtime/subscriptions.js.map +1 -0
- package/dist/sidebar/components/links.d.ts.map +1 -1
- package/dist/sidebar/components/links.js +3 -11
- package/dist/sidebar/components/links.js.map +1 -1
- package/dist/sidebar/dynamic/components/row.d.ts.map +1 -1
- package/dist/sidebar/dynamic/components/row.js +2 -3
- package/dist/sidebar/dynamic/components/row.js.map +1 -1
- package/dist/sidebar/dynamic/runtime/live.js +2 -2
- package/dist/sidebar/dynamic/runtime/live.js.map +1 -1
- package/dist/spa/cleanup.d.ts +7 -0
- package/dist/spa/cleanup.d.ts.map +1 -0
- package/dist/spa/cleanup.js +38 -0
- package/dist/spa/cleanup.js.map +1 -0
- package/dist/spa/config.d.ts +25 -0
- package/dist/spa/config.d.ts.map +1 -0
- package/dist/spa/config.js +34 -0
- package/dist/spa/config.js.map +1 -0
- package/dist/spa/index.d.ts +27 -0
- package/dist/spa/index.d.ts.map +1 -0
- package/dist/spa/index.js +48 -0
- package/dist/spa/index.js.map +1 -0
- package/dist/spa/navigate.d.ts +20 -0
- package/dist/spa/navigate.d.ts.map +1 -0
- package/dist/spa/navigate.js +235 -0
- package/dist/spa/navigate.js.map +1 -0
- package/dist/spa/overlay-dom.d.ts.map +1 -0
- package/dist/spa/overlay-dom.js.map +1 -0
- package/dist/spa/overlays.d.ts.map +1 -0
- package/dist/{live → spa}/overlays.js +1 -1
- package/dist/spa/overlays.js.map +1 -0
- package/dist/spa/page.d.ts +21 -0
- package/dist/spa/page.d.ts.map +1 -0
- package/dist/spa/page.js +66 -0
- package/dist/spa/page.js.map +1 -0
- package/dist/spa/state.d.ts.map +1 -0
- package/dist/spa/state.js.map +1 -0
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +13 -19
- package/dist/src/index.js.map +1 -1
- package/dist/src/language/runtime-locale.js +1 -1
- package/dist/src/live/cards.d.ts +3 -6
- package/dist/src/live/cards.d.ts.map +1 -1
- package/dist/src/live/cards.js +4 -25
- package/dist/src/live/cards.js.map +1 -1
- package/dist/src/live/index.d.ts +1 -14
- package/dist/src/live/index.d.ts.map +1 -1
- package/dist/src/live/index.js +0 -25
- package/dist/src/live/index.js.map +1 -1
- package/dist/src/live/lists.d.ts +3 -6
- package/dist/src/live/lists.d.ts.map +1 -1
- package/dist/src/live/lists.js +5 -27
- package/dist/src/live/lists.js.map +1 -1
- package/dist/src/live/subscribe.d.ts +8 -0
- package/dist/src/live/subscribe.d.ts.map +1 -0
- package/dist/src/live/subscribe.js +2 -0
- package/dist/src/live/subscribe.js.map +1 -0
- package/dist/src/logs/client/bootstrap.d.ts +1 -2
- package/dist/src/logs/client/bootstrap.d.ts.map +1 -1
- package/dist/src/logs/client/bootstrap.js +6 -34
- package/dist/src/logs/client/bootstrap.js.map +1 -1
- package/dist/src/primitives/scroll-overflow.d.ts.map +1 -0
- package/dist/src/primitives/scroll-overflow.js.map +1 -0
- package/dist/src/react/index.d.ts +1 -2
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/react/index.js +5 -29
- package/dist/src/react/index.js.map +1 -1
- package/dist/src/{live → realtime}/connections.d.ts +1 -2
- package/dist/src/realtime/connections.d.ts.map +1 -0
- package/dist/{live → src/realtime}/connections.js +5 -5
- package/dist/src/realtime/connections.js.map +1 -0
- package/dist/src/realtime/index.d.ts +4 -0
- package/dist/src/realtime/index.d.ts.map +1 -0
- package/dist/src/realtime/index.js +4 -0
- package/dist/src/realtime/index.js.map +1 -0
- package/dist/src/realtime/socket.d.ts.map +1 -0
- package/dist/src/realtime/socket.js.map +1 -0
- package/dist/src/realtime/subscriptions.d.ts.map +1 -0
- package/dist/src/realtime/subscriptions.js.map +1 -0
- package/dist/src/sidebar/components/links.d.ts.map +1 -1
- package/dist/src/sidebar/components/links.js +3 -11
- package/dist/src/sidebar/components/links.js.map +1 -1
- package/dist/src/sidebar/dynamic/components/row.d.ts.map +1 -1
- package/dist/src/sidebar/dynamic/components/row.js +2 -3
- package/dist/src/sidebar/dynamic/components/row.js.map +1 -1
- package/dist/src/sidebar/dynamic/runtime/live.js +2 -2
- package/dist/src/sidebar/dynamic/runtime/live.js.map +1 -1
- package/dist/src/spa/cleanup.d.ts +7 -0
- package/dist/src/spa/cleanup.d.ts.map +1 -0
- package/dist/src/spa/cleanup.js +38 -0
- package/dist/src/spa/cleanup.js.map +1 -0
- package/dist/src/spa/config.d.ts +25 -0
- package/dist/src/spa/config.d.ts.map +1 -0
- package/dist/src/spa/config.js +34 -0
- package/dist/src/spa/config.js.map +1 -0
- package/dist/src/spa/index.d.ts +27 -0
- package/dist/src/spa/index.d.ts.map +1 -0
- package/dist/src/spa/index.js +48 -0
- package/dist/src/spa/index.js.map +1 -0
- package/dist/src/spa/navigate.d.ts +20 -0
- package/dist/src/spa/navigate.d.ts.map +1 -0
- package/dist/src/spa/navigate.js +235 -0
- package/dist/src/spa/navigate.js.map +1 -0
- package/dist/src/spa/overlay-dom.d.ts.map +1 -0
- package/dist/src/spa/overlay-dom.js.map +1 -0
- package/dist/src/spa/overlays.d.ts.map +1 -0
- package/dist/src/{live → spa}/overlays.js +1 -1
- package/dist/src/spa/overlays.js.map +1 -0
- package/dist/src/spa/page.d.ts +21 -0
- package/dist/src/spa/page.d.ts.map +1 -0
- package/dist/src/spa/page.js +66 -0
- package/dist/src/spa/page.js.map +1 -0
- package/dist/src/spa/state.d.ts.map +1 -0
- package/dist/src/spa/state.js.map +1 -0
- package/package.json +1 -1
- package/dist/live/connections.d.ts.map +0 -1
- package/dist/live/connections.js.map +0 -1
- package/dist/live/overlay-dom.d.ts.map +0 -1
- package/dist/live/overlay-dom.js.map +0 -1
- package/dist/live/overlays.d.ts.map +0 -1
- package/dist/live/overlays.js.map +0 -1
- package/dist/live/page.d.ts +0 -31
- package/dist/live/page.d.ts.map +0 -1
- package/dist/live/page.js +0 -93
- package/dist/live/page.js.map +0 -1
- package/dist/live/regions.d.ts +0 -27
- package/dist/live/regions.d.ts.map +0 -1
- package/dist/live/regions.js +0 -104
- package/dist/live/regions.js.map +0 -1
- package/dist/live/router.d.ts +0 -28
- package/dist/live/router.d.ts.map +0 -1
- package/dist/live/router.js +0 -175
- package/dist/live/router.js.map +0 -1
- package/dist/live/scroll-overflow.d.ts.map +0 -1
- package/dist/live/scroll-overflow.js.map +0 -1
- package/dist/live/socket.d.ts.map +0 -1
- package/dist/live/socket.js.map +0 -1
- package/dist/live/state.d.ts.map +0 -1
- package/dist/live/state.js.map +0 -1
- package/dist/live/subscriptions.d.ts.map +0 -1
- package/dist/live/subscriptions.js.map +0 -1
- package/dist/src/live/connections.d.ts.map +0 -1
- package/dist/src/live/connections.js.map +0 -1
- package/dist/src/live/overlay-dom.d.ts.map +0 -1
- package/dist/src/live/overlay-dom.js.map +0 -1
- package/dist/src/live/overlays.d.ts.map +0 -1
- package/dist/src/live/overlays.js.map +0 -1
- package/dist/src/live/page.d.ts +0 -31
- package/dist/src/live/page.d.ts.map +0 -1
- package/dist/src/live/page.js +0 -93
- package/dist/src/live/page.js.map +0 -1
- package/dist/src/live/regions.d.ts +0 -27
- package/dist/src/live/regions.d.ts.map +0 -1
- package/dist/src/live/regions.js +0 -104
- package/dist/src/live/regions.js.map +0 -1
- package/dist/src/live/router.d.ts +0 -28
- package/dist/src/live/router.d.ts.map +0 -1
- package/dist/src/live/router.js +0 -175
- package/dist/src/live/router.js.map +0 -1
- package/dist/src/live/scroll-overflow.d.ts.map +0 -1
- package/dist/src/live/scroll-overflow.js.map +0 -1
- package/dist/src/live/socket.d.ts.map +0 -1
- package/dist/src/live/socket.js.map +0 -1
- package/dist/src/live/state.d.ts.map +0 -1
- package/dist/src/live/state.js.map +0 -1
- package/dist/src/live/subscriptions.d.ts.map +0 -1
- package/dist/src/live/subscriptions.js.map +0 -1
- /package/dist/{live → primitives}/scroll-overflow.d.ts +0 -0
- /package/dist/{live → primitives}/scroll-overflow.js +0 -0
- /package/dist/{live → realtime}/socket.d.ts +0 -0
- /package/dist/{live → realtime}/socket.js +0 -0
- /package/dist/{live → realtime}/subscriptions.d.ts +0 -0
- /package/dist/{live → realtime}/subscriptions.js +0 -0
- /package/dist/{live → spa}/overlay-dom.d.ts +0 -0
- /package/dist/{live → spa}/overlay-dom.js +0 -0
- /package/dist/{live → spa}/overlays.d.ts +0 -0
- /package/dist/{live → spa}/state.d.ts +0 -0
- /package/dist/{live → spa}/state.js +0 -0
- /package/dist/src/{live → primitives}/scroll-overflow.d.ts +0 -0
- /package/dist/src/{live → primitives}/scroll-overflow.js +0 -0
- /package/dist/src/{live → realtime}/socket.d.ts +0 -0
- /package/dist/src/{live → realtime}/socket.js +0 -0
- /package/dist/src/{live → realtime}/subscriptions.d.ts +0 -0
- /package/dist/src/{live → realtime}/subscriptions.js +0 -0
- /package/dist/src/{live → spa}/overlay-dom.d.ts +0 -0
- /package/dist/src/{live → spa}/overlay-dom.js +0 -0
- /package/dist/src/{live → spa}/overlays.d.ts +0 -0
- /package/dist/src/{live → spa}/state.d.ts +0 -0
- /package/dist/src/{live → spa}/state.js +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,29 @@ All notable changes to `@trebired/frontend` will be documented here.
|
|
|
4
4
|
|
|
5
5
|
This project follows semantic versioning once published.
|
|
6
6
|
|
|
7
|
+
## 11.0.1
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- Live cards and live lists subscribe again. 11.0.0 removed `FrontendRuntimeOptions.live`, which was the only way to pass a `subscribe` implementation to those two widgets, so they bound but never connected. The subscription function is now a single `adapters.subscribe` on `bindFrontendRuntime`, shared by both widgets, replacing the previous `live.cards.subscribe` / `live.lists.subscribe` pair. Both widget option types use one `LiveSubscribe` signature.
|
|
12
|
+
|
|
13
|
+
## 11.0.0
|
|
14
|
+
|
|
15
|
+
### Breaking
|
|
16
|
+
|
|
17
|
+
- The SPA/live-navigation surface is replaced. `src/live/` exported 83 symbols; the system is now six functions. Removed: `bindLiveRouter`, `createLiveNavigationAdapter`, `softVisit`, `refreshLive`, `replaceLiveContent`, `replaceLiveRegions`, `rehydrate`, `contentRoot`, `injectNewScripts`, `seedLoadedScripts`, `isFullReloadOptOut`, `beginLiveNavigation`, `retargetLiveNavigation`, `dispatchLiveNavigation`, `dispatchLivePageDispose`, `dispatchLiveContentUpdated`, `onLivePageDispose`, `currentLivePage`, `isCurrentLivePage`, `livePageIdFromUrl`, `captureFormState`, `restoreFormState`, `captureWizardSteps`, `restoreWizardSteps`, `importChildNodes`, `findMatchingRegion`, `shouldSkipLiveElement`, `bindLiveRefresh`, `bindLiveCardHost`, `disconnectLiveCardHost`, `disconnectLiveCardsWithin`, `swapLiveCardHtml`, `bindLiveListHost`, `disconnectLiveListHost`, `disconnectLiveListsWithin`, `unmountReactRootsWithin`, `disconnectLogsPartialsWithin`, and the `LiveOptions`/`LiveNavigationOptions` types.
|
|
18
|
+
- New API: `configureSpa(options)` once at bootstrap, then `softRedirect(url, options?)`, `softReload(options?)`, `softRefresh(options?)`, `onPageChange(handler)`, `currentPage()`, and `registerPageCleanup(root, dispose)` for components that hold page-scoped resources.
|
|
19
|
+
- `bindFrontendRuntime` no longer brokers navigation. `FrontendRuntimeOptions.live` and `adapters.live` are removed, and `adapters.navigation`/`adapters.reload` now default to the configured SPA, so an app that calls `configureSpa()` does not wire them at all. The runtime registers itself as the rebind hook, so navigated-in content is re-bound automatically.
|
|
20
|
+
- `src/live/overlays.ts` is deleted. Its five exports (`captureLiveOverlayState`, `createLiveOverlayState`, `removeStalePortaledOverlays`, `restoreLiveOverlayState`, `restoreMovedLiveOverlays`) were reachable only through a blanket `export *` and were called by nothing.
|
|
21
|
+
- Modules that were never navigation moved out of `live/`: `socket.ts`, `connections.ts`, and `subscriptions.ts` to `realtime/`, and `scroll-overflow.ts` to `primitives/`. Their exports are unchanged and still re-exported from the package root, so only deep import paths are affected.
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
|
|
25
|
+
- Component-specific navigation logic is gone from the framework. `LiveOptions` carried `cards` and `lists` fields and the runtime special-cased those two widgets by name; live cards, live lists, React islands, log partials, and the dynamic sidebar each carried a private copy of the same `live-page-dispose` listener plus its own `disconnect*Within` helpers. All five now call `registerPageCleanup()` at bind time, or `onPageChange()` where they only needed to react after a swap. Adding a new live widget no longer requires a framework change.
|
|
26
|
+
- Sidebar back links soft-navigate. `dynamicSidebarLinkActionTrigger()` refused a soft trigger whenever `item.navIgnore === true`, but `navIgnore` means "do not participate in active-state highlighting" (`dynamicSidebarLinkActive`), not "do not soft-navigate". Back links set it for the former and lost the latter, so every back link did a full document load. Both sidebars now share one `isSoftNavigableHref()` rule instead of two divergent copies.
|
|
27
|
+
- Browser back/forward soft-navigates. `bindLiveRouter` was the only thing that bound `popstate` and it was exported but never called by anything, so history navigation always did a full load. `configureSpa()` binds it.
|
|
28
|
+
- `softRedirect` drops the dead `updateUrl` option, which was declared on the old options type and never read, and the redundant `push` boolean that duplicated `history`.
|
|
29
|
+
|
|
7
30
|
## 10.3.0
|
|
8
31
|
|
|
9
32
|
### Added
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { ActionAdapters } from "./actions/index.js";
|
|
|
2
2
|
import { type LocaleRuntimeOptions, type SourceLanguageRuntimeOptions } from "./language/index.js";
|
|
3
3
|
import { type IconRuntimeOptions } from "./icons/index.js";
|
|
4
4
|
import { type LayoutRuntimeOptions } from "./layout/index.js";
|
|
5
|
-
import {
|
|
5
|
+
import { type LiveSubscribe } from "./live/index.js";
|
|
6
6
|
import { type ProgressHandle } from "./progress/index.js";
|
|
7
7
|
import { type SidebarRuntimeOptions } from "./sidebar/index.js";
|
|
8
8
|
import { type ThemeRuntimeOptions } from "./theme/index.js";
|
|
@@ -12,13 +12,12 @@ type FrontendRuntimeAdapters = ActionAdapters & FrontendLoggingOptions & {
|
|
|
12
12
|
progress?: ProgressHandle;
|
|
13
13
|
sidebarPersistence?: SidebarRuntimeOptions["persistence"];
|
|
14
14
|
themePersistence?: ThemeRuntimeOptions["persistence"];
|
|
15
|
-
|
|
15
|
+
subscribe?: LiveSubscribe;
|
|
16
16
|
};
|
|
17
17
|
type FrontendRuntimeOptions = {
|
|
18
18
|
adapters?: FrontendRuntimeAdapters;
|
|
19
19
|
frontend_quiet?: boolean;
|
|
20
20
|
icons?: IconRuntimeOptions;
|
|
21
|
-
live?: Omit<LiveOptions, "skip">;
|
|
22
21
|
layout?: LayoutRuntimeOptions;
|
|
23
22
|
locale?: LocaleRuntimeOptions;
|
|
24
23
|
observe?: boolean;
|
|
@@ -32,7 +31,7 @@ type FrontendRuntimeBinding = {
|
|
|
32
31
|
root: BindRoot;
|
|
33
32
|
};
|
|
34
33
|
declare function bindFrontendRuntime(root?: BindRoot, options?: FrontendRuntimeOptions): FrontendRuntimeBinding;
|
|
35
|
-
export { bindFrontendRuntime
|
|
34
|
+
export { bindFrontendRuntime };
|
|
36
35
|
export type { FrontendLoggingOptions, FrontendRuntimeAdapters, FrontendRuntimeBinding, FrontendRuntimeOptions, };
|
|
37
36
|
export * from "./actions/index.js";
|
|
38
37
|
export * from "./code/index.js";
|
|
@@ -55,6 +54,9 @@ export * from "./layer/index.js";
|
|
|
55
54
|
export * from "./language/index.js";
|
|
56
55
|
export * from "./layout/index.js";
|
|
57
56
|
export * from "./live/index.js";
|
|
57
|
+
export * from "./realtime/index.js";
|
|
58
|
+
export { configureSpa, currentPage, onPageChange, registerPageCleanup, softRedirect, softRefresh, softReload, } from "./spa/index.js";
|
|
59
|
+
export type { PageCleanup, SoftRedirectOptions, SpaOptions, SpaPage } from "./spa/index.js";
|
|
58
60
|
export * from "./logging/index.js";
|
|
59
61
|
export * from "./logs/index.js";
|
|
60
62
|
export * from "./markdown/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAa,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAa,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQnF,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAgB,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAI9E,OAAO,EAAgC,KAAK,QAAQ,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAG3F,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAE5B,KAAK,uBAAuB,GAAG,cAAc,GAAC,sBAAsB,GAAE;IACpE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,kBAAkB,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IAC1D,gBAAgB,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACtD,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,cAAc,CAAC,EAAE,4BAA4B,CAAC;IAC9C,KAAK,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;CAClD,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAsFF,iBAAS,mBAAmB,CAC1B,IAAI,GAAE,QAAmB,EACzB,OAAO,GAAE,sBAA2B,GACnC,sBAAsB,CAkCxB;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,GACvB,CAAC;AACF,cAAa,oBAAoB,CAAC;AAClC,cAAa,iBAAiB,CAAC;AAC/B,cAAa,gBAAgB,CAAC;AAC9B,cAAa,mBAAmB,CAAC;AACjC,cAAa,mBAAmB,CAAC;AACjC,cAAa,qBAAqB,CAAC;AACnC,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,IAAI,EACJ,SAAS,EACT,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,QAAQ,EACR,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,cAAa,kBAAkB,CAAC;AAChC,cAAa,uBAAuB,CAAC;AACrC,cAAa,kBAAkB,CAAC;AAChC,cAAa,iBAAiB,CAAC;AAC/B,cAAa,kBAAkB,CAAC;AAChC,cAAa,uBAAuB,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,IAAI,aAAa,EACxC,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,cAAa,mBAAmB,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,cAAc,EACd,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,cAAa,kBAAkB,CAAC;AAChC,cAAa,qBAAqB,CAAC;AACnC,cAAa,mBAAmB,CAAC;AACjC,cAAa,iBAAiB,CAAC;AAC/B,cAAa,qBAAqB,CAAC;AACnC,OAAO,EACL,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5F,cAAa,oBAAoB,CAAC;AAClC,cAAa,iBAAiB,CAAC;AAC/B,cAAa,qBAAqB,CAAC;AACnC,cAAa,kBAAkB,CAAC;AAChC,cAAa,kBAAkB,CAAC;AAChC,cAAa,sBAAsB,CAAC;AACpC,cAAa,oBAAoB,CAAC;AAClC,cAAa,uBAAuB,CAAC;AACrC,cAAa,qBAAqB,CAAC;AACnC,cAAa,oBAAoB,CAAC;AAClC,cAAa,oBAAoB,CAAC;AAClC,cAAa,qBAAqB,CAAC;AACnC,cAAa,mBAAmB,CAAC;AACjC,cAAa,oBAAoB,CAAC;AAClC,cAAa,kBAAkB,CAAC;AAChC,cAAa,oBAAoB,CAAC;AAClC,OAAO,EACL,IAAI,IAAI,sBAAsB,EAC9B,QAAQ,IAAI,cAAc,EAC1B,eAAe,EACf,IAAI,IAAI,sBAAsB,EAC9B,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,OAAO,IAAI,eAAe,GAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,UAAU,EACV,cAAc,EACd,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,10 @@ import { bindIcons } from "./icons/index.js";
|
|
|
8
8
|
import { bindFullscreen } from "./fullscreen/index.js";
|
|
9
9
|
import { bindGraphs } from "./graph/index.js";
|
|
10
10
|
import { bindLayouts } from "./layout/index.js";
|
|
11
|
-
import { bindLiveCards, bindLiveLists
|
|
11
|
+
import { bindLiveCards, bindLiveLists } from "./live/index.js";
|
|
12
|
+
import { bindScrollOverflows } from "./primitives/scroll-overflow.js";
|
|
13
|
+
import { setSpaRebind } from "./spa/config.js";
|
|
14
|
+
import { spaNavigationAdapter, softReload } from "./spa/index.js";
|
|
12
15
|
import { bindLogsRuntime } from "./logs/index.js";
|
|
13
16
|
import { bindModals } from "./modal/index.js";
|
|
14
17
|
import { bindPopovers } from "./popover/index.js";
|
|
@@ -27,6 +30,8 @@ function actionAdapters(options) {
|
|
|
27
30
|
const adapters = options.adapters || {};
|
|
28
31
|
return {
|
|
29
32
|
...adapters,
|
|
33
|
+
navigation: adapters.navigation || spaNavigationAdapter(),
|
|
34
|
+
reload: adapters.reload || { reload: softReload },
|
|
30
35
|
flash: (adapters.flash || flash),
|
|
31
36
|
progress: adapters.progress || progress,
|
|
32
37
|
};
|
|
@@ -85,29 +90,14 @@ function bindFrontendWidgets(scope, options, adapters) {
|
|
|
85
90
|
bindActionButtons(scope, { adapters });
|
|
86
91
|
bindCopyButtons(scope);
|
|
87
92
|
bindFullscreen(scope);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
}
|
|
91
|
-
if (options.live?.lists !== false) {
|
|
92
|
-
bindLiveLists(scope, options.live?.lists || {});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
function bindFrontendLive(scope, options) {
|
|
96
|
-
bindLiveRefresh(scope, {
|
|
97
|
-
...(options.live || {}),
|
|
98
|
-
bind(nextRoot) {
|
|
99
|
-
bindFrontendRuntimeOnce(nextRoot, options);
|
|
100
|
-
options.live?.bind?.(nextRoot);
|
|
101
|
-
},
|
|
102
|
-
skip: options.adapters?.live,
|
|
103
|
-
});
|
|
93
|
+
bindLiveCards(scope, { subscribe: adapters.subscribe });
|
|
94
|
+
bindLiveLists(scope, { subscribe: adapters.subscribe });
|
|
104
95
|
}
|
|
105
96
|
function bindFrontendRuntimeOnce(root, options) {
|
|
106
97
|
const scope = resolveRootScope(root);
|
|
107
98
|
const adapters = actionAdapters(options);
|
|
108
99
|
bindFrontendShell(scope, options);
|
|
109
100
|
bindFrontendWidgets(scope, options, adapters);
|
|
110
|
-
bindFrontendLive(scope, options);
|
|
111
101
|
}
|
|
112
102
|
function bindFrontendRuntime(root = document, options = {}) {
|
|
113
103
|
const scope = resolveRootScope(root);
|
|
@@ -116,6 +106,7 @@ function bindFrontendRuntime(root = document, options = {}) {
|
|
|
116
106
|
frontend_quiet: options.frontend_quiet,
|
|
117
107
|
quiet: options.quiet,
|
|
118
108
|
});
|
|
109
|
+
setSpaRebind((nextRoot) => bindFrontendRuntimeOnce(nextRoot, options));
|
|
119
110
|
bindFrontendRuntimeOnce(scope, options);
|
|
120
111
|
logger.info("runtime", "bound", {
|
|
121
112
|
observe: options.observe !== false,
|
|
@@ -136,13 +127,14 @@ function bindFrontendRuntime(root = document, options = {}) {
|
|
|
136
127
|
}
|
|
137
128
|
return {
|
|
138
129
|
disconnect() {
|
|
130
|
+
setSpaRebind(null);
|
|
139
131
|
observer?.disconnect();
|
|
140
132
|
logger.info("runtime", "disconnected");
|
|
141
133
|
},
|
|
142
134
|
root: scope,
|
|
143
135
|
};
|
|
144
136
|
}
|
|
145
|
-
export { bindFrontendRuntime
|
|
137
|
+
export { bindFrontendRuntime };
|
|
146
138
|
export * from "./actions/index.js";
|
|
147
139
|
export * from "./code/index.js";
|
|
148
140
|
export * from "./dom/index.js";
|
|
@@ -164,6 +156,8 @@ export * from "./layer/index.js";
|
|
|
164
156
|
export * from "./language/index.js";
|
|
165
157
|
export * from "./layout/index.js";
|
|
166
158
|
export * from "./live/index.js";
|
|
159
|
+
export * from "./realtime/index.js";
|
|
160
|
+
export { configureSpa, currentPage, onPageChange, registerPageCleanup, softRedirect, softRefresh, softReload, } from "./spa/index.js";
|
|
167
161
|
export * from "./logging/index.js";
|
|
168
162
|
export * from "./logs/index.js";
|
|
169
163
|
export * from "./markdown/index.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAG1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAA2B,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAA6B,MAAM,mBAAmB,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { requestJsonPayload } from "../actions/request.js";
|
|
2
2
|
import { queryAll } from "../dom/index.js";
|
|
3
|
-
import { softReload } from "../
|
|
3
|
+
import { softReload } from "../spa/index.js";
|
|
4
4
|
import { text } from "./shared.js";
|
|
5
5
|
import { frontendDataAttr, frontendDataSelector } from "../namespace/index.js";
|
|
6
6
|
const LOCALE_OPTION_SELECTOR = frontendDataSelector("locale-option");
|
package/dist/live/cards.d.ts
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
import { type BindRoot } from "../dom/index.d.ts";
|
|
2
|
+
import type { LiveSubscribe } from "./subscribe.js";
|
|
2
3
|
type LiveCleanup = () => void;
|
|
3
4
|
type LiveCardsOptions = {
|
|
4
5
|
bind?: (root: BindRoot) => void;
|
|
5
6
|
event?: string;
|
|
6
7
|
room?: (host: HTMLElement) => string;
|
|
7
|
-
subscribe?:
|
|
8
|
+
subscribe?: LiveSubscribe;
|
|
8
9
|
};
|
|
9
10
|
declare const LIVE_CARD_SELECTOR: string;
|
|
10
|
-
declare function swapLiveCardHtml(host: HTMLElement, html: unknown, options?: LiveCardsOptions): boolean;
|
|
11
|
-
declare function bindLiveCardHost(host: HTMLElement, options?: LiveCardsOptions): boolean;
|
|
12
|
-
declare function disconnectLiveCardHost(host: HTMLElement): boolean;
|
|
13
|
-
declare function disconnectLiveCardsWithin(root: ParentNode | null): void;
|
|
14
11
|
declare function bindLiveCards(root?: BindRoot, options?: LiveCardsOptions): void;
|
|
15
|
-
export { LIVE_CARD_SELECTOR,
|
|
12
|
+
export { LIVE_CARD_SELECTOR, bindLiveCards };
|
|
16
13
|
export type { LiveCardsOptions, LiveCleanup };
|
|
17
14
|
//# sourceMappingURL=cards.d.ts.map
|
package/dist/live/cards.d.ts.map
CHANGED
|
@@ -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;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,
|
|
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,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,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,aAAa,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,kBAAkB,QAAoC,CAAC;AAqG7D,iBAAS,aAAa,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,gBAAqB,QAI/E;AAED,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/live/cards.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { queryAll } from "../dom/index.js";
|
|
2
|
-
import { disconnectLiveSubscriptionHost } from "./subscriptions.js";
|
|
3
2
|
import { frontendDataAttr, frontendDataSelector, frontendEventName } from "../namespace/index.js";
|
|
3
|
+
import { disconnectLiveSubscriptionHost } from "../realtime/subscriptions.js";
|
|
4
|
+
import { registerPageCleanup } from "../spa/index.js";
|
|
4
5
|
const LIVE_CARD_SELECTOR = frontendDataSelector("live-card");
|
|
5
6
|
const boundLiveCards = new WeakSet();
|
|
6
7
|
const liveCardCleanups = new WeakMap();
|
|
7
|
-
let liveCardsDisposeBound = false;
|
|
8
8
|
function liveCardTarget(host) {
|
|
9
9
|
const child = host.firstElementChild;
|
|
10
10
|
return child instanceof HTMLElement ? child : host;
|
|
@@ -84,6 +84,7 @@ function bindLiveCardHost(host, options = {}) {
|
|
|
84
84
|
});
|
|
85
85
|
if (typeof cleanup === "function")
|
|
86
86
|
liveCardCleanups.set(host, cleanup);
|
|
87
|
+
registerPageCleanup(host, () => disconnectLiveCardHost(host));
|
|
87
88
|
return true;
|
|
88
89
|
}
|
|
89
90
|
function disconnectLiveCardHost(host) {
|
|
@@ -92,32 +93,10 @@ function disconnectLiveCardHost(host) {
|
|
|
92
93
|
cleanups: liveCardCleanups,
|
|
93
94
|
});
|
|
94
95
|
}
|
|
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
|
-
}
|
|
116
96
|
function bindLiveCards(root = document, options = {}) {
|
|
117
|
-
bindLiveCardsDispose();
|
|
118
97
|
queryAll(root, LIVE_CARD_SELECTOR).forEach((host) => {
|
|
119
98
|
bindLiveCardHost(host, options);
|
|
120
99
|
});
|
|
121
100
|
}
|
|
122
|
-
export { LIVE_CARD_SELECTOR,
|
|
101
|
+
export { LIVE_CARD_SELECTOR, bindLiveCards };
|
|
123
102
|
//# sourceMappingURL=cards.js.map
|
package/dist/live/cards.js.map
CHANGED
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"cards.js","sourceRoot":"","sources":["../../../src/live/cards.ts"],"names":[],"mappings":"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"}
|
package/dist/live/index.d.ts
CHANGED
|
@@ -1,18 +1,5 @@
|
|
|
1
|
-
import { type BindRoot } from "../dom/index.d.ts";
|
|
2
|
-
import { type LiveOptions } from "./regions.js";
|
|
3
|
-
declare const LIVE_REFRESH_SELECTOR: string;
|
|
4
|
-
declare function bindLiveRefresh(root?: BindRoot, options?: LiveOptions): void;
|
|
5
|
-
export { LIVE_REFRESH_SELECTOR, bindLiveRefresh };
|
|
6
|
-
export type { LiveOptions };
|
|
7
1
|
export * from "./cards.js";
|
|
8
|
-
export * from "./connections.js";
|
|
9
2
|
export * from "./infinite.js";
|
|
10
3
|
export * from "./lists.js";
|
|
11
|
-
export
|
|
12
|
-
export * from "./page.js";
|
|
13
|
-
export * from "./regions.js";
|
|
14
|
-
export * from "./router.js";
|
|
15
|
-
export * from "./scroll-overflow.js";
|
|
16
|
-
export * from "./socket.js";
|
|
17
|
-
export * from "./state.js";
|
|
4
|
+
export type { LiveSubscribe } from "./subscribe.js";
|
|
18
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/live/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/live/index.js
CHANGED
|
@@ -1,29 +1,4 @@
|
|
|
1
|
-
import { queryAll } from "../dom/index.js";
|
|
2
|
-
import { refreshLive } from "./regions.js";
|
|
3
|
-
import { frontendDataAttr, frontendDataSelector } from "../namespace/index.js";
|
|
4
|
-
const LIVE_REFRESH_SELECTOR = frontendDataSelector("live-refresh");
|
|
5
|
-
function bindLiveRefresh(root = document, options = {}) {
|
|
6
|
-
queryAll(root, LIVE_REFRESH_SELECTOR).forEach((trigger) => {
|
|
7
|
-
if (trigger.hasAttribute(frontendDataAttr("live-bound")))
|
|
8
|
-
return;
|
|
9
|
-
trigger.setAttribute(frontendDataAttr("live-bound"), "true");
|
|
10
|
-
trigger.addEventListener("click", (event) => {
|
|
11
|
-
event.preventDefault();
|
|
12
|
-
const url = trigger.getAttribute(frontendDataAttr("live-url")) || undefined;
|
|
13
|
-
void refreshLive({ ...options, url });
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
export { LIVE_REFRESH_SELECTOR, bindLiveRefresh };
|
|
18
1
|
export * from "./cards.js";
|
|
19
|
-
export * from "./connections.js";
|
|
20
2
|
export * from "./infinite.js";
|
|
21
3
|
export * from "./lists.js";
|
|
22
|
-
export * from "./overlays.js";
|
|
23
|
-
export * from "./page.js";
|
|
24
|
-
export * from "./regions.js";
|
|
25
|
-
export * from "./router.js";
|
|
26
|
-
export * from "./scroll-overflow.js";
|
|
27
|
-
export * from "./socket.js";
|
|
28
|
-
export * from "./state.js";
|
|
29
4
|
//# sourceMappingURL=index.js.map
|
package/dist/live/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/live/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC"}
|
package/dist/live/lists.d.ts
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { type BindRoot } from "../dom/index.d.ts";
|
|
2
|
-
import type {
|
|
2
|
+
import type { LiveSubscribe } from "./subscribe.js";
|
|
3
3
|
type LiveListsOptions = {
|
|
4
4
|
reload?: () => unknown;
|
|
5
|
-
subscribe?:
|
|
5
|
+
subscribe?: LiveSubscribe;
|
|
6
6
|
};
|
|
7
7
|
declare const LIVE_LIST_SELECTOR = "live-list[data-live-list-room]";
|
|
8
|
-
declare function bindLiveListHost(host: HTMLElement, options?: LiveListsOptions): boolean;
|
|
9
|
-
declare function disconnectLiveListHost(host: HTMLElement): boolean;
|
|
10
|
-
declare function disconnectLiveListsWithin(root: ParentNode | null): void;
|
|
11
8
|
declare function bindLiveLists(root?: BindRoot, options?: LiveListsOptions): void;
|
|
12
|
-
export { LIVE_LIST_SELECTOR,
|
|
9
|
+
export { LIVE_LIST_SELECTOR, bindLiveLists };
|
|
13
10
|
export type { LiveListsOptions };
|
|
14
11
|
//# sourceMappingURL=lists.d.ts.map
|
package/dist/live/lists.d.ts.map
CHANGED
|
@@ -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;AAIxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,KAAK,gBAAgB,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,kBAAkB,mCAAmC,CAAC;AAiC5D,iBAAS,aAAa,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,gBAAqB,QAI/E;AAED,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
|
package/dist/live/lists.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { queryAll } from "../dom/index.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { disconnectLiveSubscriptionHost } from "../realtime/subscriptions.js";
|
|
3
|
+
import { softReload } from "../spa/index.js";
|
|
4
|
+
import { registerPageCleanup } from "../spa/index.js";
|
|
5
5
|
const LIVE_LIST_SELECTOR = "live-list[data-live-list-room]";
|
|
6
6
|
const boundLiveLists = new WeakSet();
|
|
7
7
|
const liveListCleanups = new WeakMap();
|
|
8
|
-
let liveListsDisposeBound = false;
|
|
9
8
|
function bindLiveListHost(host, options = {}) {
|
|
10
9
|
if (boundLiveLists.has(host))
|
|
11
10
|
return false;
|
|
@@ -29,6 +28,7 @@ function bindLiveListHost(host, options = {}) {
|
|
|
29
28
|
});
|
|
30
29
|
if (typeof cleanup === "function")
|
|
31
30
|
liveListCleanups.set(host, cleanup);
|
|
31
|
+
registerPageCleanup(host, () => disconnectLiveListHost(host));
|
|
32
32
|
return true;
|
|
33
33
|
}
|
|
34
34
|
function disconnectLiveListHost(host) {
|
|
@@ -37,32 +37,10 @@ function disconnectLiveListHost(host) {
|
|
|
37
37
|
cleanups: liveListCleanups,
|
|
38
38
|
});
|
|
39
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
|
-
}
|
|
61
40
|
function bindLiveLists(root = document, options = {}) {
|
|
62
|
-
bindLiveListsDispose();
|
|
63
41
|
queryAll(root, LIVE_LIST_SELECTOR).forEach((host) => {
|
|
64
42
|
bindLiveListHost(host, options);
|
|
65
43
|
});
|
|
66
44
|
}
|
|
67
|
-
export { LIVE_LIST_SELECTOR,
|
|
45
|
+
export { LIVE_LIST_SELECTOR, bindLiveLists };
|
|
68
46
|
//# sourceMappingURL=lists.js.map
|
package/dist/live/lists.js.map
CHANGED
|
@@ -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,
|
|
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,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAQpD,MAAM,kBAAkB,GAAG,gCAAgC,CAAC;AAC5D,MAAM,cAAc,GAAG,IAAI,OAAO,EAAe,CAAC;AAClD,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAyB,CAAC;AAE9D,SAAS,gBAAgB,CAAC,IAAiB,EAAE,UAA4B,EAAE;IACzE,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,IAAI,OAAO,SAAS,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;IAC5D,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;IACtE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,IAAI,aAAa,IAAI,KAAK,IAAI,KAAK,KAAK,aAAa;YAAE,OAAO;QAC9D,KAAI,CAAC,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,OAAO,KAAK,UAAU;QAAE,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvE,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAiB;IAC/C,OAAO,8BAA8B,CAAC,IAAI,EAAE;QACxC,KAAK,EAAE,cAAc;QACrB,QAAQ,EAAE,gBAAgB;KAC7B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,OAAiB,QAAQ,EAAE,UAA4B,EAAE;IAC9E,QAAQ,CAAc,IAAI,EAAE,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7D,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type LiveSubscribePayload = Record<string, unknown> & {
|
|
2
|
+
data?: unknown;
|
|
3
|
+
event?: string;
|
|
4
|
+
room?: string;
|
|
5
|
+
};
|
|
6
|
+
type LiveSubscribe = (room: string, onChange: (payload: LiveSubscribePayload) => void) => () => void;
|
|
7
|
+
export type { LiveSubscribe, LiveSubscribePayload };
|
|
8
|
+
//# sourceMappingURL=subscribe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["../../../src/live/subscribe.ts"],"names":[],"mappings":"AAAA,KAAK,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACpD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,aAAa,GAAG,CACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,KAC9C,MAAM,IAAI,CAAC;AAEhB,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscribe.js","sourceRoot":"","sources":["../../../src/live/subscribe.ts"],"names":[],"mappings":""}
|
|
@@ -9,12 +9,11 @@ declare function disconnectLogsPartial(target?: {
|
|
|
9
9
|
root?: HTMLElement | string | null;
|
|
10
10
|
instanceId?: string;
|
|
11
11
|
} | HTMLElement | string | null): boolean;
|
|
12
|
-
declare function disconnectLogsPartialsWithin(root: ParentNode | null): number;
|
|
13
12
|
declare function bootstrapLogsPartials(options?: {
|
|
14
13
|
configByInstance?: Record<string, LogsConfig>;
|
|
15
14
|
connect?: boolean;
|
|
16
15
|
}): any[];
|
|
17
16
|
declare function bootLogsPartialsOnce(): void;
|
|
18
17
|
declare function bindLogsPartialElement(root: HTMLElement): any;
|
|
19
|
-
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial,
|
|
18
|
+
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial, };
|
|
20
19
|
//# sourceMappingURL=bootstrap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../../src/logs/client/bootstrap.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../../src/logs/client/bootstrap.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAwB7C,iBAAS,oBAAoB,CAC3B,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACd,OAcP;AAmGD,iBAAS,qBAAqB,CAC5B,MAAM,GACJ;IACA,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,WAAW,GACX,MAAM,GACN,IAAW,WAeb;AA0BD,iBAAS,qBAAqB,CAC5B,OAAO,GAAE;IACP,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;CACd,SAWP;AAkBD,iBAAS,oBAAoB,SAG5B;AAED,iBAAS,sBAAsB,CAAC,IAAI,EAAE,WAAW,OAKhD;AAED,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GACtB,CAAC"}
|
|
@@ -10,15 +10,17 @@ import { deleteLogsPartialPage, readLogsPartialPage, setLogsPartialPage, } from
|
|
|
10
10
|
import { ingestFrontendLogs } from "./ingest.js";
|
|
11
11
|
import { renderLogs } from "./render.js";
|
|
12
12
|
import { replaceLogsPartialData } from "./replace.js";
|
|
13
|
-
import {
|
|
13
|
+
import { registerPageCleanup } from "../../spa/index.js";
|
|
14
14
|
const logsPartialRoots = new Set();
|
|
15
|
-
let logsLivePageDisposeBound = false;
|
|
16
15
|
function bootstrapLogsPartial(options = {}) {
|
|
17
|
-
bindLogsLivePageDispose();
|
|
18
16
|
const page = createLogsPage(options);
|
|
19
17
|
if (!page.ui.root || !page.ui.box || !page.ui.scrollBox)
|
|
20
18
|
return null;
|
|
21
19
|
logsPartialRoots.add(page.ui.root);
|
|
20
|
+
registerPageCleanup(page.ui.root, () => {
|
|
21
|
+
disconnectLogsPartialRoot(page.ui.root, true);
|
|
22
|
+
logsPartialRoots.delete(page.ui.root);
|
|
23
|
+
});
|
|
22
24
|
const existing = readLogsPartialPage(page.ui.root);
|
|
23
25
|
if (existing)
|
|
24
26
|
return bootstrapExistingLogsPartial(existing, options);
|
|
@@ -148,36 +150,7 @@ function disconnectLogsPartialRoot(root, unregister) {
|
|
|
148
150
|
}
|
|
149
151
|
return true;
|
|
150
152
|
}
|
|
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
|
-
}
|
|
179
153
|
function bootstrapLogsPartials(options = {}) {
|
|
180
|
-
bindLogsLivePageDispose();
|
|
181
154
|
const roots = Array.from(logsPartialRoots).filter((root) => {
|
|
182
155
|
if (root.isConnected)
|
|
183
156
|
return true;
|
|
@@ -205,11 +178,10 @@ function bootLogsPartialsOnce() {
|
|
|
205
178
|
flushFrontendLogsBuffer(ingestFrontendLogs);
|
|
206
179
|
}
|
|
207
180
|
function bindLogsPartialElement(root) {
|
|
208
|
-
bindLogsLivePageDispose();
|
|
209
181
|
logsPartialRoots.add(root);
|
|
210
182
|
const page = bootstrapLogsPartial(buildPartialOptions(root, {}));
|
|
211
183
|
flushFrontendLogsBuffer(ingestFrontendLogs);
|
|
212
184
|
return page;
|
|
213
185
|
}
|
|
214
|
-
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial,
|
|
186
|
+
export { bindLogsPartialElement, bootLogsPartialsOnce, bootstrapLogsPartial, bootstrapLogsPartials, disconnectLogsPartial, };
|
|
215
187
|
//# sourceMappingURL=bootstrap.js.map
|