@graview/guest 0.1.29 → 0.1.30
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/client.js +1 -1
- package/dist/channel.d.ts +7 -6
- package/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +4 -5
- package/dist/channel.js.map +1 -1
- package/dist/client.generated.d.ts.map +1 -1
- package/dist/client.generated.js +2 -2
- package/dist/client.generated.js.map +1 -1
- package/dist/headless/describe.d.ts +3 -2
- package/dist/headless/describe.d.ts.map +1 -1
- package/dist/headless/describe.js +4 -4
- package/dist/headless/describe.js.map +1 -1
- package/dist/headless/draw.d.ts +1 -0
- package/dist/headless/draw.d.ts.map +1 -1
- package/dist/headless/draw.js +1 -0
- package/dist/headless/draw.js.map +1 -1
- package/dist/headless/index.d.ts +9 -1
- package/dist/headless/index.d.ts.map +1 -1
- package/dist/headless/index.js +35 -4
- package/dist/headless/index.js.map +1 -1
- package/dist/headless/judge.d.ts +1 -1
- package/dist/headless/judge.d.ts.map +1 -1
- package/dist/headless/judge.js +13 -10
- package/dist/headless/judge.js.map +1 -1
- package/dist/headless/protocol.d.ts +12 -3
- package/dist/headless/protocol.d.ts.map +1 -1
- package/dist/headless/protocol.js.map +1 -1
- package/dist/headless/runtime.generated.d.ts.map +1 -1
- package/dist/headless/runtime.generated.js +1 -1
- package/dist/headless/runtime.generated.js.map +1 -1
- package/dist/headless/runtime.js +3 -1
- package/dist/headless/runtime.js.map +1 -1
- package/dist/host/arrive-at.d.ts +9 -0
- package/dist/host/arrive-at.d.ts.map +1 -0
- package/dist/host/arrive-at.js +17 -0
- package/dist/host/arrive-at.js.map +1 -0
- package/dist/host/frame.d.ts +8 -0
- package/dist/host/frame.d.ts.map +1 -1
- package/dist/host/frame.js +3 -0
- package/dist/host/frame.js.map +1 -1
- package/dist/host/links-words.d.ts +41 -0
- package/dist/host/links-words.d.ts.map +1 -0
- package/dist/host/links-words.js +56 -0
- package/dist/host/links-words.js.map +1 -0
- package/dist/host/links.d.ts +43 -9
- package/dist/host/links.d.ts.map +1 -1
- package/dist/host/links.js +61 -16
- package/dist/host/links.js.map +1 -1
- package/dist/host/open-draw.d.ts +4 -0
- package/dist/host/open-draw.d.ts.map +1 -1
- package/dist/host/open-draw.js +2 -0
- package/dist/host/open-draw.js.map +1 -1
- package/dist/host/open-judge.d.ts +16 -0
- package/dist/host/open-judge.d.ts.map +1 -1
- package/dist/host/open-judge.js +47 -1
- package/dist/host/open-judge.js.map +1 -1
- package/dist/host/open-render.d.ts +2 -0
- package/dist/host/open-render.d.ts.map +1 -1
- package/dist/host/open-render.js +4 -0
- package/dist/host/open-render.js.map +1 -1
- package/dist/host/react.d.ts.map +1 -1
- package/dist/host/react.js +3 -2
- package/dist/host/react.js.map +1 -1
- package/dist/host/session.d.ts +11 -0
- package/dist/host/session.d.ts.map +1 -1
- package/dist/host/session.js +20 -0
- package/dist/host/session.js.map +1 -1
- package/dist/host/view-runtime.generated.d.ts.map +1 -1
- package/dist/host/view-runtime.generated.js +1 -1
- package/dist/host/view-runtime.generated.js.map +1 -1
- package/dist/host/view.d.ts +22 -6
- package/dist/host/view.d.ts.map +1 -1
- package/dist/host/view.js +26 -6
- package/dist/host/view.js.map +1 -1
- package/dist/host/where.d.ts +30 -0
- package/dist/host/where.d.ts.map +1 -0
- package/dist/host/where.js +103 -0
- package/dist/host/where.js.map +1 -0
- package/dist/host/worker-react.d.ts +4 -0
- package/dist/host/worker-react.d.ts.map +1 -1
- package/dist/host/worker-react.js +29 -7
- package/dist/host/worker-react.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/open-kit.d.ts +8 -4
- package/dist/open-kit.d.ts.map +1 -1
- package/dist/open-kit.js +12 -7
- package/dist/open-kit.js.map +1 -1
- package/dist/protocol.d.ts +42 -3
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +10 -2
- package/dist/protocol.js.map +1 -1
- package/dist/worker/view-global.d.ts +3 -4
- package/dist/worker/view-global.d.ts.map +1 -1
- package/dist/worker/view-global.js +5 -3
- package/dist/worker/view-global.js.map +1 -1
- package/dist/worker/view.d.ts.map +1 -1
- package/dist/worker/view.js +2 -1
- package/dist/worker/view.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.generated.js","sourceRoot":"","sources":["../../src/headless/runtime.generated.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAW,
|
|
1
|
+
{"version":3,"file":"runtime.generated.js","sourceRoot":"","sources":["../../src/headless/runtime.generated.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAW,6tvGAA6tvG,CAAC"}
|
package/dist/headless/runtime.js
CHANGED
|
@@ -69,7 +69,9 @@ const runtime = createViewRuntime({
|
|
|
69
69
|
else if (request.type === "style")
|
|
70
70
|
transcript.css = String(request.css);
|
|
71
71
|
else if (request.type === "navigate" && "place" in request)
|
|
72
|
-
transcript.went.push({ place: String(request.place) });
|
|
72
|
+
transcript.went.push({ place: String(request.place), ...(request.where !== undefined ? { where: plain(request.where) } : {}), ...(request.section !== undefined ? { section: String(request.section) } : {}) });
|
|
73
|
+
else if (request.type === "navigate" && "to" in request)
|
|
74
|
+
transcript.went.push({ record: String(request.to), ...(request.where !== undefined ? { where: plain(request.where) } : {}), ...(request.section !== undefined ? { section: String(request.section) } : {}) });
|
|
73
75
|
},
|
|
74
76
|
act(name, args) {
|
|
75
77
|
transcript.messages += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/headless/runtime.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/headless/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { GoTo } from "@graview/react/provider";
|
|
2
|
+
import type { Arrival } from "./links.js";
|
|
3
|
+
/**
|
|
4
|
+
* WHERE A VIEW'S NAVIGATE ARRIVES, on whichever face draws it: a record, a
|
|
5
|
+
* place or a kind's list, through the face's own way of going (`useGoTo`),
|
|
6
|
+
* narrowed and to a section as it was judged.
|
|
7
|
+
*/
|
|
8
|
+
export declare function arriveAt(goTo: GoTo | undefined, to: Arrival): void;
|
|
9
|
+
//# sourceMappingURL=arrive-at.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arrive-at.d.ts","sourceRoot":"","sources":["../../src/host/arrive-at.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI,CAMlE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WHERE A VIEW'S NAVIGATE ARRIVES, on whichever face draws it: a record, a
|
|
3
|
+
* place or a kind's list, through the face's own way of going (`useGoTo`),
|
|
4
|
+
* narrowed and to a section as it was judged.
|
|
5
|
+
*/
|
|
6
|
+
export function arriveAt(goTo, to) {
|
|
7
|
+
if (!goTo)
|
|
8
|
+
return;
|
|
9
|
+
const also = { ...("filter" in to && to.filter ? { filter: to.filter } : {}), ...(to.section ? { section: to.section } : {}) };
|
|
10
|
+
if ("record" in to)
|
|
11
|
+
goTo.record(to.record, also);
|
|
12
|
+
else if ("list" in to)
|
|
13
|
+
goTo.list(to.list, also);
|
|
14
|
+
else
|
|
15
|
+
goTo.place(to.place, also);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=arrive-at.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arrive-at.js","sourceRoot":"","sources":["../../src/host/arrive-at.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAsB,EAAE,EAAW;IAC1D,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC/H,IAAI,QAAQ,IAAI,EAAE;QAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SAC5C,IAAI,MAAM,IAAI,EAAE;QAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;QAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC"}
|
package/dist/host/frame.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ import type { AnySchema, Principal, Store } from "@graview/core";
|
|
|
2
2
|
import { type GuestPlace, type GuestTheme } from "../protocol.js";
|
|
3
3
|
import { type GuestLimits, type GuestReads, type GuestStats, type GuestViewInput } from "./session.js";
|
|
4
4
|
import type { GuestPictures } from "./pictures.js";
|
|
5
|
+
import type { Arrival } from "./links.js";
|
|
6
|
+
import type { GoTo } from "@graview/react/provider";
|
|
5
7
|
import { type GuestBrand } from "./theme.js";
|
|
6
8
|
export { createGuestHost, createGuestLimiter, readAcross } from "./session.js";
|
|
7
9
|
export { readTheme } from "./theme.js";
|
|
@@ -52,6 +54,12 @@ export interface MountGuestViewOptions<S extends AnySchema> {
|
|
|
52
54
|
readonly onNavigate?: (id: string) => void;
|
|
53
55
|
/** The guest asked to go to one of `places`, by its slug. */
|
|
54
56
|
readonly onNavigatePlace?: (as: string) => void;
|
|
57
|
+
/** Where the guest asked to go, judged — a record, a place or a kind's list, narrowed and to a section — in place of `onNavigate` and `onNavigatePlace` (`GuestHostOptions.onArrive`). */
|
|
58
|
+
readonly onArrive?: (to: Arrival) => void;
|
|
59
|
+
/** A navigate went nowhere: the sentence saying why. */
|
|
60
|
+
readonly onLost?: (said: string) => void;
|
|
61
|
+
/** The face's own way of going (`useGoTo`), read when the guest goes: where `onArrive` is not given, the arrival is gone to by it. */
|
|
62
|
+
readonly goTo?: () => GoTo | undefined;
|
|
55
63
|
/** The guest asked for a height. By default the frame takes it. */
|
|
56
64
|
readonly onSize?: (height: number) => void;
|
|
57
65
|
readonly limits?: GuestLimits;
|
package/dist/host/frame.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/host/frame.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAA8D,KAAK,UAAU,EAAE,KAAK,UAAU,EAAkB,MAAM,gBAAgB,CAAC;AAE9I,OAAO,EAAuD,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAG5J,OAAO,KAAK,EAAoB,aAAa,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAA0D,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAWrG,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE9E,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,SAAS;IACxD,6FAA6F;IAC7F,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,iGAAiG;IACjG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,iGAAiG;IACjG,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,cAAc,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,UAAU,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,UAAU,GAAG,SAAS,CAAC;IAC9C;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;IAClC,yHAAyH;IACzH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,SAAS,UAAU,EAAE,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,mEAAmE;IACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,0CAA0C;IAC1C,MAAM,IAAI,IAAI,CAAC;IACf,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/host/frame.ts"],"names":[],"mappings":"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"}
|
package/dist/host/frame.js
CHANGED
|
@@ -3,6 +3,7 @@ import { mintNonce } from "./nonce.js";
|
|
|
3
3
|
import { createGuestHost, createGuestLimiter } from "./session.js";
|
|
4
4
|
import { retryingImport } from "@graview/core/retry";
|
|
5
5
|
import { untilItArrives } from "./arrive.js";
|
|
6
|
+
import { arriveAt } from "./arrive-at.js";
|
|
6
7
|
import { createGuestLogo, readTheme, themeWithBrand, watchTheme } from "./theme.js";
|
|
7
8
|
/* The pictures' host, fetched only for a frame that asks for them (FR-175): a page of frames that do not carries none of it. */
|
|
8
9
|
const picturesChunk = retryingImport(() => import("./pictures.js"));
|
|
@@ -131,6 +132,8 @@ export function mountGuestView(element, options) {
|
|
|
131
132
|
...(options.places ? { places: () => [...new Set(options.places().map((place) => place.as))], placesShown: options.places } : {}),
|
|
132
133
|
...(options.onNavigatePlace ? { onNavigatePlace: options.onNavigatePlace } : {}),
|
|
133
134
|
...(options.onNavigate ? { onNavigate: options.onNavigate } : {}),
|
|
135
|
+
...(options.onArrive ? { onArrive: options.onArrive } : options.goTo ? { onArrive: (to) => arriveAt(options.goTo(), to) } : {}),
|
|
136
|
+
...(options.onLost ? { onLost: options.onLost } : {}),
|
|
134
137
|
onSize: options.onSize ?? ((height) => (iframe.style.height = `${height}px`)),
|
|
135
138
|
...(options.limits ? { limits: options.limits } : {}),
|
|
136
139
|
limiter,
|
package/dist/host/frame.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame.js","sourceRoot":"","sources":["../../src/host/frame.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAoD,MAAM,gBAAgB,CAAC;AAC9I,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAA2F,MAAM,cAAc,CAAC;AAC5J,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"frame.js","sourceRoot":"","sources":["../../src/host/frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** Where a view asked to go. */
|
|
2
|
+
export type Destination = {
|
|
3
|
+
readonly record: string;
|
|
4
|
+
readonly where?: unknown;
|
|
5
|
+
readonly section?: unknown;
|
|
6
|
+
} | {
|
|
7
|
+
readonly place: string;
|
|
8
|
+
readonly where?: unknown;
|
|
9
|
+
readonly section?: unknown;
|
|
10
|
+
};
|
|
11
|
+
/** A place as a link names it and a sentence says it: its slug, and the title a reader knows it by. */
|
|
12
|
+
export interface NamedPlace {
|
|
13
|
+
readonly as: string;
|
|
14
|
+
readonly title?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* THE PLACE A VIEW NAMES — by its slug, or by its title in any case, or by
|
|
18
|
+
* the title's slug (2026-10-15): a home that links `data-place="Songs by
|
|
19
|
+
* writer"` goes where `data-place="songs-by-writer"` does.
|
|
20
|
+
*/
|
|
21
|
+
export declare function placeNamed<P extends NamedPlace>(places: readonly P[], asked: string): P | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* THE PLACES A HOST HANDS, AS A GUEST READS THEM: a guest's place (`as`),
|
|
24
|
+
* or a place as an app lists it (`placesOf`: `slug`), each with its title
|
|
25
|
+
* and kind. One with no word to go to by is passed over, rather than said
|
|
26
|
+
* as "undefined" (2026-10-15).
|
|
27
|
+
*/
|
|
28
|
+
export declare function guestPlacesOf(places: readonly unknown[]): {
|
|
29
|
+
readonly as: string;
|
|
30
|
+
readonly title: string;
|
|
31
|
+
readonly kind: string;
|
|
32
|
+
}[];
|
|
33
|
+
/** The app's places, as a sentence ends with them: each by its slug, and its title where that says more. */
|
|
34
|
+
export declare const placesSaid: (places: readonly (string | NamedPlace)[]) => string;
|
|
35
|
+
/** At most 80 characters of what a view asked for, ending "…" where it was cut: the sentence reaches the host's problems, and a view may ask for anything. */
|
|
36
|
+
export declare const quoted: (asked: string) => string;
|
|
37
|
+
/** Why a destination goes nowhere, naming where it could go. */
|
|
38
|
+
export declare const nowhere: (to: Destination, places: readonly (string | NamedPlace)[]) => string;
|
|
39
|
+
/** A link's `data-filter`, in the address's words (`stage:building,owner:user:ada`), as the `where` it says. */
|
|
40
|
+
export declare function whereOfWords(words: string): Readonly<Record<string, string>>;
|
|
41
|
+
//# sourceMappingURL=links-words.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"links-words.d.ts","sourceRoot":"","sources":["../../src/host/links-words.ts"],"names":[],"mappings":"AAMA,gCAAgC;AAChC,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAErF,uGAAuG;AACvG,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAKD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAMnG;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAUlI;AAED,4GAA4G;AAC5G,eAAO,MAAM,UAAU,GAAI,QAAQ,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,WACuI,CAAC;AAE3M,8JAA8J;AAC9J,eAAO,MAAM,MAAM,GAAI,OAAO,MAAM,WAAgE,CAAC;AAErG,gEAAgE;AAChE,eAAO,MAAM,OAAO,GAAI,IAAI,WAAW,EAAE,QAAQ,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,WACkG,CAAC;AAEpL,gHAAgH;AAChH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAO5E"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* THE WORDS A LINK THAT GOES NOWHERE IS SAID IN — a file of its own, with
|
|
3
|
+
* nothing imported, because a headless run's isolate says them too and
|
|
4
|
+
* carries no schema (headless/judge.ts); the judging is `./links.ts`'s.
|
|
5
|
+
*/
|
|
6
|
+
/** A title as an address word: "Songs by writer" is `songs-by-writer`, as core's `placeSlug` makes it. */
|
|
7
|
+
const slugOf = (words) => words.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-|-$/g, "");
|
|
8
|
+
/**
|
|
9
|
+
* THE PLACE A VIEW NAMES — by its slug, or by its title in any case, or by
|
|
10
|
+
* the title's slug (2026-10-15): a home that links `data-place="Songs by
|
|
11
|
+
* writer"` goes where `data-place="songs-by-writer"` does.
|
|
12
|
+
*/
|
|
13
|
+
export function placeNamed(places, asked) {
|
|
14
|
+
const bySlug = places.find((place) => place.as === asked);
|
|
15
|
+
if (bySlug)
|
|
16
|
+
return bySlug;
|
|
17
|
+
const lower = asked.trim().toLowerCase();
|
|
18
|
+
const slug = slugOf(asked);
|
|
19
|
+
return places.find((place) => place.title !== undefined && place.title.trim().toLowerCase() === lower) ?? (slug ? places.find((place) => place.as === slug || (place.title !== undefined && slugOf(place.title) === slug)) : undefined);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* THE PLACES A HOST HANDS, AS A GUEST READS THEM: a guest's place (`as`),
|
|
23
|
+
* or a place as an app lists it (`placesOf`: `slug`), each with its title
|
|
24
|
+
* and kind. One with no word to go to by is passed over, rather than said
|
|
25
|
+
* as "undefined" (2026-10-15).
|
|
26
|
+
*/
|
|
27
|
+
export function guestPlacesOf(places) {
|
|
28
|
+
const out = [];
|
|
29
|
+
for (const place of places) {
|
|
30
|
+
if (typeof place !== "object" || place === null)
|
|
31
|
+
continue;
|
|
32
|
+
const { as, slug, title, kind } = place;
|
|
33
|
+
const word = typeof as === "string" && as.length > 0 ? as : typeof slug === "string" && slug.length > 0 ? slug : undefined;
|
|
34
|
+
if (!word || out.some((one) => one.as === word))
|
|
35
|
+
continue;
|
|
36
|
+
out.push({ as: word, title: typeof title === "string" ? title : word, kind: typeof kind === "string" ? kind : "" });
|
|
37
|
+
}
|
|
38
|
+
return out;
|
|
39
|
+
}
|
|
40
|
+
/** The app's places, as a sentence ends with them: each by its slug, and its title where that says more. */
|
|
41
|
+
export const placesSaid = (places) => ` Its places: ${places.map((place) => (typeof place === "string" ? `"${place}"` : place.title && place.title !== place.as ? `"${place.as}" (${place.title})` : `"${place.as}"`)).join(", ") || "none"}.`;
|
|
42
|
+
/** At most 80 characters of what a view asked for, ending "…" where it was cut: the sentence reaches the host's problems, and a view may ask for anything. */
|
|
43
|
+
export const quoted = (asked) => `"${asked.length > 80 ? `${asked.slice(0, 79)}…` : asked}"`;
|
|
44
|
+
/** Why a destination goes nowhere, naming where it could go. */
|
|
45
|
+
export const nowhere = (to, places) => `${"place" in to ? `The place ${quoted(to.place)}` : `${quoted(to.record)} is no record this viewer may see and`} is no place of this app: it goes nowhere.${placesSaid(places)}`;
|
|
46
|
+
/** A link's `data-filter`, in the address's words (`stage:building,owner:user:ada`), as the `where` it says. */
|
|
47
|
+
export function whereOfWords(words) {
|
|
48
|
+
const out = {};
|
|
49
|
+
for (const part of words.split(",")) {
|
|
50
|
+
const colon = part.indexOf(":");
|
|
51
|
+
if (colon > 0)
|
|
52
|
+
out[part.slice(0, colon).trim()] = part.slice(colon + 1).trim();
|
|
53
|
+
}
|
|
54
|
+
return out;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=links-words.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"links-words.js","sourceRoot":"","sources":["../../src/host/links-words.ts"],"names":[],"mappings":"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"}
|
package/dist/host/links.d.ts
CHANGED
|
@@ -1,16 +1,39 @@
|
|
|
1
|
+
import { type AnySchema } from "@graview/core";
|
|
1
2
|
import type { GuestPlace } from "../protocol.js";
|
|
2
|
-
export
|
|
3
|
+
export { nowhere, placesSaid, quoted, whereOfWords } from "./links-words.js";
|
|
4
|
+
export type { Destination } from "./links-words.js";
|
|
5
|
+
import type { Destination } from "./links-words.js";
|
|
6
|
+
/** Where the host goes, judged: a record, a place, or a kind's list — narrowed and to a section, as asked. */
|
|
7
|
+
export type Arrival = {
|
|
3
8
|
readonly record: string;
|
|
9
|
+
readonly section?: string;
|
|
4
10
|
} | {
|
|
5
11
|
readonly place: string;
|
|
12
|
+
readonly filter?: string;
|
|
13
|
+
readonly section?: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly list: string;
|
|
16
|
+
readonly filter?: string;
|
|
17
|
+
readonly section?: string;
|
|
6
18
|
};
|
|
19
|
+
/** A kind's list, as a view may name it: by its plural's slug (`features`) or the kind's name. */
|
|
20
|
+
export interface GuestList {
|
|
21
|
+
readonly slug: string;
|
|
22
|
+
readonly kind: string;
|
|
23
|
+
}
|
|
24
|
+
/** Every kind's list a viewer sees, by the address its list has (`/<plural>`). */
|
|
25
|
+
export declare function listsOf(schema: AnySchema, kept?: ReadonlySet<string>): readonly GuestList[];
|
|
7
26
|
export interface LinksOptions {
|
|
8
27
|
/** Whether the viewer may see a record. */
|
|
9
28
|
readonly sees: (id: string) => boolean;
|
|
10
29
|
/** The app's named places. */
|
|
11
30
|
readonly places: () => readonly GuestPlace[];
|
|
12
|
-
/**
|
|
13
|
-
readonly
|
|
31
|
+
/** The kinds' lists the viewer may go to; none unless given. */
|
|
32
|
+
readonly lists?: () => readonly GuestList[];
|
|
33
|
+
/** The schema a filter is held to; no filter is followed without it. */
|
|
34
|
+
readonly schema?: AnySchema;
|
|
35
|
+
/** Go: the face's own way to a record, a place or a list. */
|
|
36
|
+
readonly onNavigate?: (to: Arrival) => void;
|
|
14
37
|
/** It went nowhere: the sentence saying why. */
|
|
15
38
|
readonly onLost?: (said: string) => void;
|
|
16
39
|
}
|
|
@@ -22,11 +45,22 @@ export interface Links {
|
|
|
22
45
|
/** Go somewhere: a record the viewer may see, else a place by that slug. Whether it went; where it did not, `onLost` hears why. */
|
|
23
46
|
go(to: Destination): boolean;
|
|
24
47
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
48
|
+
export interface JudgeDestinationInput {
|
|
49
|
+
readonly sees: (id: string) => boolean;
|
|
50
|
+
readonly places: readonly GuestPlace[];
|
|
51
|
+
readonly lists: readonly GuestList[];
|
|
52
|
+
readonly schema?: AnySchema;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* WHERE A VIEW ASKED TO GO, JUDGED — by the live host and by a headless run
|
|
56
|
+
* alike: the arrival, or the sentence saying why it goes nowhere.
|
|
57
|
+
*/
|
|
58
|
+
export declare function judgeDestination(to: Destination, input: JudgeDestinationInput): {
|
|
59
|
+
readonly ok: true;
|
|
60
|
+
readonly arrival: Arrival;
|
|
61
|
+
} | {
|
|
62
|
+
readonly ok: false;
|
|
63
|
+
readonly says: string;
|
|
64
|
+
};
|
|
31
65
|
export declare function createLinks(options: LinksOptions): Links;
|
|
32
66
|
//# sourceMappingURL=links.d.ts.map
|
package/dist/host/links.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../src/host/links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../src/host/links.ts"],"names":[],"mappings":"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"}
|
package/dist/host/links.js
CHANGED
|
@@ -1,20 +1,62 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { kindPath } from "@graview/core";
|
|
2
|
+
import { sectionSlug } from "@graview/core/navigate";
|
|
3
|
+
import { filterOfWhere } from "./where.js";
|
|
4
|
+
import { nowhere, placeNamed, quoted, whereOfWords } from "./links-words.js";
|
|
5
|
+
export { nowhere, placesSaid, quoted, whereOfWords } from "./links-words.js";
|
|
6
|
+
/** Every kind's list a viewer sees, by the address its list has (`/<plural>`). */
|
|
7
|
+
export function listsOf(schema, kept = new Set()) {
|
|
8
|
+
return schema.kinds.filter((kind) => !kept.has(kind)).map((kind) => ({ slug: kindPath(schema, kind).slice(1), kind }));
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* WHERE A VIEW ASKED TO GO, JUDGED — by the live host and by a headless run
|
|
12
|
+
* alike: the arrival, or the sentence saying why it goes nowhere.
|
|
13
|
+
*/
|
|
14
|
+
export function judgeDestination(to, input) {
|
|
15
|
+
const placeSlugs = [...new Set(input.places.map((place) => place.as))];
|
|
16
|
+
const listSlugs = input.lists.map((list) => list.slug).filter((slug) => !placeSlugs.includes(slug));
|
|
17
|
+
/* A section is a heading's words or an element's id: some letters or digits, and not a paragraph. */
|
|
18
|
+
let section;
|
|
19
|
+
if (to.section !== undefined && to.section !== null) {
|
|
20
|
+
if (typeof to.section !== "string" || sectionSlug(to.section).length === 0 || to.section.length > 120) {
|
|
21
|
+
return { ok: false, says: `The section ${typeof to.section === "string" ? quoted(to.section) : "asked for"} names nothing on a page: a section is a heading's words or an element's id, like "shipping-soon". It goes nowhere.` };
|
|
22
|
+
}
|
|
23
|
+
section = to.section;
|
|
24
|
+
}
|
|
25
|
+
const also = section !== undefined ? { section } : {};
|
|
26
|
+
/* A record the viewer may see first, then a place by that slug. */
|
|
27
|
+
if ("record" in to && input.sees(to.record)) {
|
|
28
|
+
if (to.where !== undefined && to.where !== null)
|
|
29
|
+
return { ok: false, says: `${quoted(to.record)} is one record, and a filter narrows a list or a place: it goes nowhere. Go to { place, where } for a list narrowed.` };
|
|
30
|
+
return { ok: true, arrival: { record: to.record, ...also } };
|
|
31
|
+
}
|
|
32
|
+
const asked = "place" in to ? to.place : to.record;
|
|
33
|
+
const place = placeNamed(input.places, asked);
|
|
34
|
+
const list = place ? undefined : input.lists.find((one) => one.slug === asked || one.kind === asked);
|
|
35
|
+
if (!place && !list)
|
|
36
|
+
return { ok: false, says: `${nowhere(to, input.places.filter((one, at, all) => all.findIndex((other) => other.as === one.as) === at))}${listsSaid(listSlugs)}` };
|
|
37
|
+
const kinds = place ? [place.kind] : [list.kind];
|
|
38
|
+
let filter;
|
|
39
|
+
if (to.where !== undefined && to.where !== null) {
|
|
40
|
+
if (!input.schema)
|
|
41
|
+
return { ok: false, says: `The place ${quoted(asked)} cannot be narrowed here: it goes nowhere.` };
|
|
42
|
+
const judged = filterOfWhere(input.schema, kinds, to.where, { through: list !== undefined });
|
|
43
|
+
if (!judged.ok)
|
|
44
|
+
return { ok: false, says: `The filter on ${quoted(asked)} goes nowhere: ${judged.says}` };
|
|
45
|
+
filter = judged.filter;
|
|
46
|
+
}
|
|
47
|
+
const narrowed = filter ? { filter } : {};
|
|
48
|
+
return { ok: true, arrival: place ? { place: place.as, ...narrowed, ...also } : { list: list.kind, ...narrowed, ...also } };
|
|
49
|
+
}
|
|
50
|
+
/** The kinds' lists, as a sentence ends with them: the first eight, and how many more. */
|
|
51
|
+
const listsSaid = (slugs) => slugs.length === 0 ? "" : ` Its lists: ${slugs.slice(0, 8).map((slug) => `"${slug}"`).join(", ")}${slugs.length > 8 ? ` and ${slugs.length - 8} more` : ""}.`;
|
|
7
52
|
export function createLinks(options) {
|
|
8
53
|
const go = (to) => {
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const ok = place === undefined || slugs.includes(place);
|
|
13
|
-
if (ok)
|
|
14
|
-
options.onNavigate?.(place === undefined ? to : { place });
|
|
54
|
+
const judged = judgeDestination(to, { sees: options.sees, places: options.places(), lists: options.lists?.() ?? [], ...(options.schema ? { schema: options.schema } : {}) });
|
|
55
|
+
if (judged.ok)
|
|
56
|
+
options.onNavigate?.(judged.arrival);
|
|
15
57
|
else
|
|
16
|
-
options.onLost?.(
|
|
17
|
-
return ok;
|
|
58
|
+
options.onLost?.(judged.says);
|
|
59
|
+
return judged.ok;
|
|
18
60
|
};
|
|
19
61
|
return {
|
|
20
62
|
link(anchor) {
|
|
@@ -35,10 +77,13 @@ export function createLinks(options) {
|
|
|
35
77
|
follow(anchor) {
|
|
36
78
|
const record = anchor.getAttribute("data-record");
|
|
37
79
|
const place = anchor.getAttribute("data-place");
|
|
80
|
+
const filter = anchor.getAttribute("data-filter");
|
|
81
|
+
const section = anchor.getAttribute("data-section");
|
|
82
|
+
const also = { ...(filter ? { where: whereOfWords(filter) } : {}), ...(section ? { section } : {}) };
|
|
38
83
|
if (record)
|
|
39
|
-
go({ record });
|
|
84
|
+
go({ record, ...also });
|
|
40
85
|
else if (place)
|
|
41
|
-
go({ place });
|
|
86
|
+
go({ place, ...also });
|
|
42
87
|
},
|
|
43
88
|
go,
|
|
44
89
|
};
|
package/dist/host/links.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/host/links.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/host/links.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE7E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA6C7E,kFAAkF;AAClF,MAAM,UAAU,OAAO,CAAC,MAAiB,EAAE,OAA4B,IAAI,GAAG,EAAE;IAC9E,OAAQ,MAAM,CAAC,KAA2B,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChJ,CAAC;AAiCD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAe,EAAE,KAA4B;IAC5E,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACpG,qGAAqG;IACrG,IAAI,OAA2B,CAAC;IAChC,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,IAAI,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ,IAAI,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACtG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,qHAAqH,EAAE,CAAC;QACpO,CAAC;QACD,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,mEAAmE;IACnE,IAAI,QAAQ,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,sHAAsH,EAAE,CAAC;QACxN,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;IAC/D,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;IACnD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;IACrG,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;IACtL,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAK,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,MAA0B,CAAC;IAC/B,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,CAAC;QACtH,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC,CAAC;QAC7F,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,MAAM,CAAC,KAAK,CAAC,kBAAkB,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1G,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAK,CAAC,IAAI,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;AAC/H,CAAC;AAED,0FAA0F;AAC1F,MAAM,SAAS,GAAG,CAAC,KAAwB,EAAE,EAAE,CAC7C,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;AAEhK,MAAM,UAAU,WAAW,CAAC,OAAqB;IAC/C,MAAM,EAAE,GAAG,CAAC,EAAe,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7K,IAAI,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;;YAC/C,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC,CAAC;IACF,OAAO;QACL,IAAI,CAAC,MAAM;YACT,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YACrF,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBACtD,MAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;oBAAE,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACtE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;oBAAE,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAC7E,CAAC;iBAAM,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC7D,MAAM,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;gBAC5C,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,MAAM;oBAAE,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QACD,MAAM,CAAC,MAAM;YACX,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACrG,IAAI,MAAM;gBAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;iBAC/B,IAAI,KAAK;gBAAE,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,EAAE;KACH,CAAC;AACJ,CAAC"}
|
package/dist/host/open-draw.d.ts
CHANGED
|
@@ -9,6 +9,10 @@ export interface OpenDrawingOptions {
|
|
|
9
9
|
readonly origin: string;
|
|
10
10
|
/** Where an image the app holds is loaded from (JudgeContext.asset). */
|
|
11
11
|
readonly asset?: (path: string) => string | undefined;
|
|
12
|
+
/** The origins an image may be loaded from by its `https:` address (JudgeContext.imageOrigins). */
|
|
13
|
+
readonly imageOrigins?: readonly string[];
|
|
14
|
+
/** Something the view drew was refused, as it was. */
|
|
15
|
+
readonly onRefused?: (refusal: OpenRefusal) => void;
|
|
12
16
|
readonly maxNodes?: number;
|
|
13
17
|
readonly onOverBudget?: () => void;
|
|
14
18
|
/** Tell the view what the viewer did. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-draw.d.ts","sourceRoot":"","sources":["../../src/host/open-draw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAUzE,mHAAmH;AACnH,eAAO,MAAM,UAAU,8VAItB,CAAC;AAMF,MAAM,WAAW,kBAAkB;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,KAAK,IAAI,CAAC;IACvF,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;CAC5G;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAAC;AAE1H,MAAM,WAAW,WAAW;IAC1B,+GAA+G;IAC/G,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC;IACxD,iEAAiE;IACjE,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,iFAAiF;IACjF,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,+BAA+B;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,iHAAiH;AACjH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"open-draw.d.ts","sourceRoot":"","sources":["../../src/host/open-draw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAUzE,mHAAmH;AACnH,eAAO,MAAM,UAAU,8VAItB,CAAC;AAMF,MAAM,WAAW,kBAAkB;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,mGAAmG;IACnG,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,KAAK,IAAI,CAAC;IACvF,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;CAC5G;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAAC;AAE1H,MAAM,WAAW,WAAW;IAC1B,+GAA+G;IAC/G,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC;IACxD,iEAAiE;IACjE,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,iFAAiF;IACjF,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,+BAA+B;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,iHAAiH;AACjH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAoF9F"}
|
package/dist/host/open-draw.js
CHANGED
|
@@ -30,6 +30,8 @@ export function createOpenDrawing(shadow, options) {
|
|
|
30
30
|
const renderer = createOpenRenderer(into, {
|
|
31
31
|
origin: options.origin,
|
|
32
32
|
...(options.asset ? { asset: options.asset } : {}),
|
|
33
|
+
...(options.imageOrigins ? { imageOrigins: options.imageOrigins } : {}),
|
|
34
|
+
...(options.onRefused ? { onRefused: options.onRefused } : {}),
|
|
33
35
|
...(options.maxNodes !== undefined ? { maxNodes: options.maxNodes } : {}),
|
|
34
36
|
...(options.onOverBudget ? { onOverBudget: options.onOverBudget } : {}),
|
|
35
37
|
decorate: (element, name, namespace) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-draw.js","sourceRoot":"","sources":["../../src/host/open-draw.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAmB,MAAM,UAAU,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAqB,MAAM,kBAAkB,CAAC;AAEzE;;;;;;GAMG;AAEH,mHAAmH;AACnH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;CAIzB,CAAC;AAEF,4GAA4G;AAC5G,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AACjH,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"open-draw.js","sourceRoot":"","sources":["../../src/host/open-draw.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,8 @@ export interface OpenRefusal {
|
|
|
23
23
|
readonly element?: string;
|
|
24
24
|
readonly name?: string;
|
|
25
25
|
readonly css?: CssRefusal;
|
|
26
|
+
/** The address an image asked for and was refused, as far as 200 characters: said, so its author knows which. */
|
|
27
|
+
readonly address?: string;
|
|
26
28
|
}
|
|
27
29
|
/** An element as the host draws it, or a refusal. */
|
|
28
30
|
export declare function judgeElement(name: string, parent: OpenNamespace): {
|
|
@@ -43,7 +45,21 @@ export interface JudgeContext {
|
|
|
43
45
|
* draws only `data:` images and the page's own `blob:`.
|
|
44
46
|
*/
|
|
45
47
|
readonly asset?: (path: string) => string | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* The origins an image may be loaded from by its `https:` address, as the
|
|
50
|
+
* host lists them (`https://upload.wikimedia.org`): none by default.
|
|
51
|
+
* Drawn with no referrer, so the page's own address goes nowhere.
|
|
52
|
+
*/
|
|
53
|
+
readonly imageOrigins?: readonly string[];
|
|
46
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* WHY AN IMAGE'S ADDRESS WAS NOT DRAWN, in a sentence for its author: the
|
|
57
|
+
* address, and the ways a view may show an image — where an `https:` one
|
|
58
|
+
* is on an origin the host does not list, which origins it does.
|
|
59
|
+
*/
|
|
60
|
+
export declare function imageRefusedWords(address: string, origins?: readonly string[]): string;
|
|
61
|
+
/** The origins of a host's list that are `https:` origins, as the URL parser says them; anything else in it is no origin. */
|
|
62
|
+
export declare function imageOriginsOf(listed: readonly string[] | undefined): readonly string[];
|
|
47
63
|
/**
|
|
48
64
|
* An attribute as the host draws it: its canonical name and value, `null`
|
|
49
65
|
* to draw it removed, or a refusal. A value the view sets to `null` (Remote
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-judge.d.ts","sourceRoot":"","sources":["../../src/host/open-judge.ts"],"names":[],"mappings":"AAaA,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAQhF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,CAAC;AAE3C,kDAAkD;AAClD,MAAM,MAAM,iBAAiB;AAC3B,yFAAyF;AACvF,SAAS;AACX,8GAA8G;GAC5G,WAAW;AACb,qGAAqG;GACnG,OAAO;AACT,yFAAyF;GACvF,KAAK;AACP,wGAAwG;GACtG,KAAK;AACP,wCAAwC;GACtC,OAAO;AACT,gFAAgF;GAC9E,QAAQ;AACV,2CAA2C;GACzC,QAAQ,CAAC;AAEb,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,qDAAqD;AACrD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAUxL;AAED,+DAA+D;AAC/D,wBAAgB,cAAc,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9E;AAUD,MAAM,WAAW,YAAY;IAC3B,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"open-judge.d.ts","sourceRoot":"","sources":["../../src/host/open-judge.ts"],"names":[],"mappings":"AAaA,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAQhF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,CAAC;AAE3C,kDAAkD;AAClD,MAAM,MAAM,iBAAiB;AAC3B,yFAAyF;AACvF,SAAS;AACX,8GAA8G;GAC5G,WAAW;AACb,qGAAqG;GACnG,OAAO;AACT,yFAAyF;GACvF,KAAK;AACP,wGAAwG;GACtG,KAAK;AACP,wCAAwC;GACtC,OAAO;AACT,gFAAgF;GAC9E,QAAQ;AACV,2CAA2C;GACzC,QAAQ,CAAC;AAEb,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;IAC1B,iHAAiH;IACjH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qDAAqD;AACrD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAUxL;AAED,+DAA+D;AAC/D,wBAAgB,cAAc,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9E;AAUD,MAAM,WAAW,YAAY;IAC3B,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CAU1F;AAED,6HAA6H;AAC7H,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,SAAS,MAAM,EAAE,CASvF;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE,YAAY,GACpB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAYzI"}
|