@pinecall/dot 0.11.23 → 0.11.25
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/README.md +145 -63
- package/dist/agent/index.d.ts +3 -2
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +2 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/tutor.d.ts +12 -10
- package/dist/agent/tutor.d.ts.map +1 -1
- package/dist/agent/tutor.js +81 -68
- package/dist/agent/tutor.js.map +1 -1
- package/dist/agent/walks.d.ts +19 -0
- package/dist/agent/walks.d.ts.map +1 -0
- package/dist/agent/walks.js +89 -0
- package/dist/agent/walks.js.map +1 -0
- package/dist/page/page.d.ts +2 -2
- package/dist/page/page.d.ts.map +1 -1
- package/dist/page/page.js +5 -5
- package/dist/page/page.js.map +1 -1
- package/dist/page/roles.d.ts +2 -0
- package/dist/page/roles.d.ts.map +1 -1
- package/dist/page/roles.js +21 -2
- package/dist/page/roles.js.map +1 -1
- package/dist/pointer/asking.d.ts +25 -0
- package/dist/pointer/asking.d.ts.map +1 -0
- package/dist/pointer/asking.js +82 -0
- package/dist/pointer/asking.js.map +1 -0
- package/dist/pointer/flight.d.ts +40 -4
- package/dist/pointer/flight.d.ts.map +1 -1
- package/dist/pointer/flight.js +139 -17
- package/dist/pointer/flight.js.map +1 -1
- package/dist/pointer/frames.d.ts +28 -0
- package/dist/pointer/frames.d.ts.map +1 -0
- package/dist/pointer/frames.js +66 -0
- package/dist/pointer/frames.js.map +1 -0
- package/dist/pointer/icons.d.ts +8 -0
- package/dist/pointer/icons.d.ts.map +1 -0
- package/dist/pointer/icons.js +15 -0
- package/dist/pointer/icons.js.map +1 -0
- package/dist/pointer/menu.d.ts +5 -4
- package/dist/pointer/menu.d.ts.map +1 -1
- package/dist/pointer/menu.js +56 -47
- package/dist/pointer/menu.js.map +1 -1
- package/dist/pointer/person.d.ts +13 -2
- package/dist/pointer/person.d.ts.map +1 -1
- package/dist/pointer/person.js +47 -41
- package/dist/pointer/person.js.map +1 -1
- package/dist/pointer/pressing.d.ts +6 -0
- package/dist/pointer/pressing.d.ts.map +1 -0
- package/dist/pointer/pressing.js +32 -0
- package/dist/pointer/pressing.js.map +1 -0
- package/dist/pointer/sections.d.ts +4 -7
- package/dist/pointer/sections.d.ts.map +1 -1
- package/dist/pointer/sections.js +11 -17
- package/dist/pointer/sections.js.map +1 -1
- package/dist/pointer/typing.d.ts +5 -3
- package/dist/pointer/typing.d.ts.map +1 -1
- package/dist/pointer/typing.js +46 -15
- package/dist/pointer/typing.js.map +1 -1
- package/dist/server/index.d.ts +34 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +108 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/questions.d.ts +30 -0
- package/dist/server/questions.d.ts.map +1 -0
- package/dist/server/questions.js +136 -0
- package/dist/server/questions.js.map +1 -0
- package/dist/server/saying.d.ts +31 -0
- package/dist/server/saying.d.ts.map +1 -0
- package/dist/server/saying.js +124 -0
- package/dist/server/saying.js.map +1 -0
- package/dist/tutor/acting.d.ts +42 -0
- package/dist/tutor/acting.d.ts.map +1 -0
- package/dist/tutor/acting.js +180 -0
- package/dist/tutor/acting.js.map +1 -0
- package/dist/tutor/aloud.d.ts +50 -0
- package/dist/tutor/aloud.d.ts.map +1 -0
- package/dist/tutor/aloud.js +288 -0
- package/dist/tutor/aloud.js.map +1 -0
- package/dist/tutor/ask.d.ts +49 -0
- package/dist/tutor/ask.d.ts.map +1 -0
- package/dist/tutor/ask.js +47 -0
- package/dist/tutor/ask.js.map +1 -0
- package/dist/tutor/listening.d.ts +17 -0
- package/dist/tutor/listening.d.ts.map +1 -0
- package/dist/tutor/listening.js +66 -0
- package/dist/tutor/listening.js.map +1 -0
- package/dist/tutor/options.d.ts +37 -1
- package/dist/tutor/options.d.ts.map +1 -1
- package/dist/tutor/options.js +1 -1
- package/dist/tutor/options.js.map +1 -1
- package/dist/tutor/reading.d.ts +58 -0
- package/dist/tutor/reading.d.ts.map +1 -0
- package/dist/tutor/reading.js +193 -0
- package/dist/tutor/reading.js.map +1 -0
- package/dist/tutor/text.d.ts +16 -0
- package/dist/tutor/text.d.ts.map +1 -0
- package/dist/tutor/text.js +119 -0
- package/dist/tutor/text.js.map +1 -0
- package/dist/tutor/tutor.d.ts +2 -9
- package/dist/tutor/tutor.d.ts.map +1 -1
- package/dist/tutor/tutor.js +110 -87
- package/dist/tutor/tutor.js.map +1 -1
- package/dist/tutor/walking.d.ts +26 -8
- package/dist/tutor/walking.d.ts.map +1 -1
- package/dist/tutor/walking.js +145 -30
- package/dist/tutor/walking.js.map +1 -1
- package/dist/tutor/walks.d.ts +33 -0
- package/dist/tutor/walks.d.ts.map +1 -1
- package/dist/tutor/walks.js +121 -13
- package/dist/tutor/walks.js.map +1 -1
- package/dist/wire/acts.d.ts +60 -0
- package/dist/wire/acts.d.ts.map +1 -0
- package/dist/wire/acts.js +120 -0
- package/dist/wire/acts.js.map +1 -0
- package/dist/wire/ask.d.ts +132 -0
- package/dist/wire/ask.d.ts.map +1 -0
- package/dist/wire/ask.js +102 -0
- package/dist/wire/ask.js.map +1 -0
- package/dist/wire/index.d.ts +38 -8
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +86 -12
- package/dist/wire/index.js.map +1 -1
- package/docs/macros.md +216 -0
- package/docs/write-a-tutor.md +247 -0
- package/package.json +11 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"person.js","sourceRoot":"","sources":["../../src/pointer/person.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"person.js","sourceRoot":"","sources":["../../src/pointer/person.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** The pointer pressing a button a walk names: a search, a tab, a "show more", never a form that sends the visitor's details. */
|
|
2
|
+
/** Why `element` is not a button the pointer presses, or null when it is one; `forms`, one in a form is. */
|
|
3
|
+
export declare function notPressable(element: Element, forms?: boolean): string | null;
|
|
4
|
+
/** Press `element`: the click a person makes. Resolves with why it could not, or null. */
|
|
5
|
+
export declare function press(element: Element, forms?: boolean): string | null;
|
|
6
|
+
//# sourceMappingURL=pressing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pressing.d.ts","sourceRoot":"","sources":["../../src/pointer/pressing.ts"],"names":[],"mappings":"AAAA,iIAAiI;AAUjI,4GAA4G;AAC5G,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,UAAQ,GAAG,MAAM,GAAG,IAAI,CAQ3E;AAED,0FAA0F;AAC1F,wBAAgB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,UAAQ,GAAG,MAAM,GAAG,IAAI,CAKpE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** The pointer pressing a button a walk names: a search, a tab, a "show more", never a form that sends the visitor's details. */
|
|
2
|
+
//
|
|
3
|
+
// A walk the site wrote may press a button by its name, as a person would: the click the site's own code
|
|
4
|
+
// listens for. Not one in a form, unless the form is a search (`<search>`, `role="search"`): a form that
|
|
5
|
+
// books, buys or signs up is the visitor's to send. A page read aloud is the site's own example, and its
|
|
6
|
+
// button is pressed in any form (`forms`). Not a link, which leaves the page, and not a button that is
|
|
7
|
+
// disabled or hidden. A button of a frame of the site's own is pressed the same.
|
|
8
|
+
const BUTTON = "button, input[type=submit], input[type=button], [role=button]";
|
|
9
|
+
/** Why `element` is not a button the pointer presses, or null when it is one; `forms`, one in a form is. */
|
|
10
|
+
export function notPressable(element, forms = false) {
|
|
11
|
+
const button = element.closest(BUTTON);
|
|
12
|
+
if (button === null || !("click" in button))
|
|
13
|
+
return "it is not a button";
|
|
14
|
+
if (button.closest("a[href]") !== null)
|
|
15
|
+
return "it leaves the page";
|
|
16
|
+
if ((button.tagName === "BUTTON" || button.tagName === "INPUT") && button.disabled)
|
|
17
|
+
return "it is disabled";
|
|
18
|
+
if (button.getAttribute("aria-disabled") === "true")
|
|
19
|
+
return "it is disabled";
|
|
20
|
+
if (!forms && button.closest("form") !== null && button.closest("search, [role=search]") === null)
|
|
21
|
+
return "it sends a form, which is the visitor's to send";
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
/** Press `element`: the click a person makes. Resolves with why it could not, or null. */
|
|
25
|
+
export function press(element, forms = false) {
|
|
26
|
+
const refused = notPressable(element, forms);
|
|
27
|
+
if (refused !== null)
|
|
28
|
+
return refused;
|
|
29
|
+
element.closest(BUTTON).click();
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=pressing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pressing.js","sourceRoot":"","sources":["../../src/pointer/pressing.ts"],"names":[],"mappings":"AAAA,iIAAiI;AACjI,EAAE;AACF,yGAAyG;AACzG,yGAAyG;AACzG,yGAAyG;AACzG,uGAAuG;AACvG,iFAAiF;AAEjF,MAAM,MAAM,GAAG,+DAA+D,CAAC;AAE/E,4GAA4G;AAC5G,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,KAAK,GAAG,KAAK;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC;QAAE,OAAO,oBAAoB,CAAC;IACzE,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI;QAAE,OAAO,oBAAoB,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,IAAK,MAA4B,CAAC,QAAQ;QAAE,OAAO,gBAAgB,CAAC;IACnI,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,MAAM;QAAE,OAAO,gBAAgB,CAAC;IAC7E,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,IAAI;QAAE,OAAO,iDAAiD,CAAC;IAC5J,OAAO,IAAI,CAAC;AACd,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,KAAK,CAAC,OAAgB,EAAE,KAAK,GAAG,KAAK;IACnD,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IACpC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAiB,CAAC,KAAK,EAAE,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
/** The page's ways into a walk with no call: the section
|
|
1
|
+
/** The page's ways into a walk with no call: the walk of the section the visitor is on, and the site's own button that plays one. */
|
|
2
2
|
/** The attribute a section names its walk with. */
|
|
3
3
|
export declare const WALK_ATTRIBUTE = "data-pinecall-walk";
|
|
4
4
|
/** The attribute the site's own button names its walk with. */
|
|
5
5
|
export declare const PLAY_ATTRIBUTE = "data-pinecall-play";
|
|
6
6
|
export interface SectionsOptions {
|
|
7
|
-
/** The section scrolled to names a published walk, by its name. */
|
|
8
|
-
onReach: (name: string) => void;
|
|
9
7
|
/** The site's own button for a walk clicked, by the walk's name. */
|
|
10
8
|
onPlay: (name: string) => void;
|
|
11
9
|
}
|
|
@@ -14,11 +12,10 @@ export declare class Sections {
|
|
|
14
12
|
constructor(document: Document, options: SectionsOptions);
|
|
15
13
|
/** The names of the walks the agent published. */
|
|
16
14
|
offer(names: string[]): void;
|
|
17
|
-
/**
|
|
18
|
-
* Note the section scrolled to, and say so when it is a new one naming a published walk and `on`;
|
|
19
|
-
* show the site's own buttons while `on`, for a published walk. Called every frame.
|
|
20
|
-
*/
|
|
15
|
+
/** Show the site's own buttons while `on`, for a published walk. Called every frame. */
|
|
21
16
|
place(on: boolean): void;
|
|
17
|
+
/** The name of the published walk of the section across the screen's middle now; null when it has none. */
|
|
18
|
+
current(): string | null;
|
|
22
19
|
close(): void;
|
|
23
20
|
}
|
|
24
21
|
//# sourceMappingURL=sections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sections.d.ts","sourceRoot":"","sources":["../../src/pointer/sections.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"sections.d.ts","sourceRoot":"","sources":["../../src/pointer/sections.ts"],"names":[],"mappings":"AAAA,qIAAqI;AAOrI,mDAAmD;AACnD,eAAO,MAAM,cAAc,uBAAuB,CAAC;AACnD,+DAA+D;AAC/D,eAAO,MAAM,cAAc,uBAAuB,CAAC;AAKnD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,qBAAa,QAAQ;;IAanB,YAAY,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAIvD;IAED,kDAAkD;IAClD,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAE3B;IAED,wFAAwF;IACxF,KAAK,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI,CAMvB;IAED,2GAA2G;IAC3G,OAAO,IAAI,MAAM,GAAG,IAAI,CAQvB;IAED,KAAK,IAAI,IAAI,CAEZ;CACF"}
|
package/dist/pointer/sections.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/** The page's ways into a walk with no call: the section
|
|
1
|
+
/** The page's ways into a walk with no call: the walk of the section the visitor is on, and the site's own button that plays one. */
|
|
2
2
|
//
|
|
3
|
-
// The site marks a section with `data-pinecall-walk="<walk>"`:
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
3
|
+
// The site marks a section with `data-pinecall-walk="<walk>"`: the one across the screen's middle is the
|
|
4
|
+
// section the visitor is on, and the walks' menu marks its walk when it opens. A button the site draws
|
|
5
|
+
// and marks `data-pinecall-play="<walk>"` is shown (its `hidden` taken off) while that walk can play,
|
|
6
|
+
// and a click on it plays it. Both only for the walks the agent published.
|
|
7
7
|
/** The attribute a section names its walk with. */
|
|
8
8
|
export const WALK_ATTRIBUTE = "data-pinecall-walk";
|
|
9
9
|
/** The attribute the site's own button names its walk with. */
|
|
@@ -15,8 +15,6 @@ export class Sections {
|
|
|
15
15
|
#options;
|
|
16
16
|
#names = [];
|
|
17
17
|
#on = false;
|
|
18
|
-
/** The section across the screen's middle at the last frame. */
|
|
19
|
-
#at = null;
|
|
20
18
|
#clicked = (event) => {
|
|
21
19
|
const button = event.target instanceof Element ? event.target.closest(`[${PLAY_ATTRIBUTE}]`) : null;
|
|
22
20
|
const name = button?.getAttribute(PLAY_ATTRIBUTE) ?? null;
|
|
@@ -34,10 +32,7 @@ export class Sections {
|
|
|
34
32
|
offer(names) {
|
|
35
33
|
this.#names = names;
|
|
36
34
|
}
|
|
37
|
-
/**
|
|
38
|
-
* Note the section scrolled to, and say so when it is a new one naming a published walk and `on`;
|
|
39
|
-
* show the site's own buttons while `on`, for a published walk. Called every frame.
|
|
40
|
-
*/
|
|
35
|
+
/** Show the site's own buttons while `on`, for a published walk. Called every frame. */
|
|
41
36
|
place(on) {
|
|
42
37
|
this.#on = on;
|
|
43
38
|
for (const button of this.#document.querySelectorAll(`[${PLAY_ATTRIBUTE}]`)) {
|
|
@@ -45,17 +40,16 @@ export class Sections {
|
|
|
45
40
|
if (button.hidden !== hidden)
|
|
46
41
|
button.hidden = hidden;
|
|
47
42
|
}
|
|
43
|
+
}
|
|
44
|
+
/** The name of the published walk of the section across the screen's middle now; null when it has none. */
|
|
45
|
+
current() {
|
|
48
46
|
const middle = (this.#document.defaultView?.innerHeight ?? 0) * MIDDLE;
|
|
49
47
|
const at = [...this.#document.querySelectorAll(`[${WALK_ATTRIBUTE}]`)].find((section) => {
|
|
50
48
|
const box = section.getBoundingClientRect();
|
|
51
49
|
return box.height > 0 && box.top <= middle && box.bottom > middle;
|
|
52
|
-
})
|
|
53
|
-
if (at === this.#at)
|
|
54
|
-
return;
|
|
55
|
-
this.#at = at;
|
|
50
|
+
});
|
|
56
51
|
const name = at?.getAttribute(WALK_ATTRIBUTE) ?? null;
|
|
57
|
-
|
|
58
|
-
this.#options.onReach(name);
|
|
52
|
+
return name !== null && this.#names.includes(name) ? name : null;
|
|
59
53
|
}
|
|
60
54
|
close() {
|
|
61
55
|
this.#document.removeEventListener("click", this.#clicked);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sections.js","sourceRoot":"","sources":["../../src/pointer/sections.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"sections.js","sourceRoot":"","sources":["../../src/pointer/sections.ts"],"names":[],"mappings":"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"}
|
package/dist/pointer/typing.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** The pointer filling a field the way a person types: letter by letter, with the events the site's own code listens for. */
|
|
2
|
-
/**
|
|
2
|
+
/** The event an element that is no field is typed into by: the site's own editor takes each with `preventDefault()` and writes `detail.text`, what was typed so far, where it belongs; `detail.done` on the last. */
|
|
3
|
+
export declare const TYPING_EVENT = "pinecall-typing";
|
|
4
|
+
/** Why `element` is not a field to fill, or null when it is one. Told by its tag: a frame's field is of the frame's window. */
|
|
3
5
|
export declare function notFillable(element: Element): string | null;
|
|
4
|
-
/** Fill `field` with `text`: typed letter by letter, or, for a list, the option that says it. Resolves with why it could not, or null. */
|
|
5
|
-
export declare function fill(field: Element, text: string, still: boolean): Promise<string | null>;
|
|
6
|
+
/** Fill `field` with `text`: typed letter by letter (paced to `ms`, a recording said meanwhile), or, for a list, the option that says it; an element that is no field, by `TYPING_EVENT`s the site takes. Resolves with why it could not, or null. */
|
|
7
|
+
export declare function fill(field: Element, text: string, still: boolean, ms?: number): Promise<string | null>;
|
|
6
8
|
//# sourceMappingURL=typing.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typing.d.ts","sourceRoot":"","sources":["../../src/pointer/typing.ts"],"names":[],"mappings":"AAAA,6HAA6H;
|
|
1
|
+
{"version":3,"file":"typing.d.ts","sourceRoot":"","sources":["../../src/pointer/typing.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAW7H,qNAAqN;AACrN,eAAO,MAAM,YAAY,oBAAoB,CAAC;AAK9C,+HAA+H;AAC/H,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAO3D;AAED,sPAAsP;AACtP,wBAAsB,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkB5G"}
|
package/dist/pointer/typing.js
CHANGED
|
@@ -6,26 +6,34 @@
|
|
|
6
6
|
// hidden field.
|
|
7
7
|
/** How long one letter takes, in ms. */
|
|
8
8
|
const LETTER_MS = 45;
|
|
9
|
+
/** The slowest a letter comes when the typing is paced to a recording, in ms: a long sentence over a few words typed. */
|
|
10
|
+
const SLOWEST_MS = 180;
|
|
11
|
+
/** The event an element that is no field is typed into by: the site's own editor takes each with `preventDefault()` and writes `detail.text`, what was typed so far, where it belongs; `detail.done` on the last. */
|
|
12
|
+
export const TYPING_EVENT = "pinecall-typing";
|
|
13
|
+
const NOT_A_FIELD = "it is not a field";
|
|
9
14
|
/** The inputs a person writes words in. */
|
|
10
15
|
const WRITTEN = new Set(["text", "tel", "email", "search", "url", "number", "date", "time", "datetime-local", "month", "week"]);
|
|
11
|
-
/** Why `element` is not a field to fill, or null when it is one. */
|
|
16
|
+
/** Why `element` is not a field to fill, or null when it is one. Told by its tag: a frame's field is of the frame's window. */
|
|
12
17
|
export function notFillable(element) {
|
|
13
|
-
if (element
|
|
18
|
+
if (element.tagName === "SELECT" || element.tagName === "TEXTAREA")
|
|
14
19
|
return element.disabled ? "it is disabled" : null;
|
|
15
|
-
if (
|
|
16
|
-
return
|
|
17
|
-
|
|
20
|
+
if (element.tagName !== "INPUT")
|
|
21
|
+
return NOT_A_FIELD;
|
|
22
|
+
const input = element;
|
|
23
|
+
if (input.type === "password" || input.autocomplete.startsWith("cc-"))
|
|
18
24
|
return "a password or a card is the visitor's to type";
|
|
19
|
-
if (!WRITTEN.has(
|
|
20
|
-
return `a ${
|
|
21
|
-
return
|
|
25
|
+
if (!WRITTEN.has(input.type))
|
|
26
|
+
return `a ${input.type} field is not written in`;
|
|
27
|
+
return input.disabled || input.readOnly ? "it is disabled" : null;
|
|
22
28
|
}
|
|
23
|
-
/** Fill `field` with `text`: typed letter by letter, or, for a list, the option that says it. Resolves with why it could not, or null. */
|
|
24
|
-
export async function fill(field, text, still) {
|
|
29
|
+
/** Fill `field` with `text`: typed letter by letter (paced to `ms`, a recording said meanwhile), or, for a list, the option that says it; an element that is no field, by `TYPING_EVENT`s the site takes. Resolves with why it could not, or null. */
|
|
30
|
+
export async function fill(field, text, still, ms) {
|
|
25
31
|
const refused = notFillable(field);
|
|
32
|
+
if (refused === NOT_A_FIELD)
|
|
33
|
+
return told(field, text, still, ms);
|
|
26
34
|
if (refused !== null)
|
|
27
35
|
return refused;
|
|
28
|
-
if (field
|
|
36
|
+
if (field.tagName === "SELECT")
|
|
29
37
|
return choose(field, text);
|
|
30
38
|
const written = field;
|
|
31
39
|
written.focus({ preventScroll: true });
|
|
@@ -36,12 +44,31 @@ export async function fill(field, text, still) {
|
|
|
36
44
|
set(written, "");
|
|
37
45
|
for (let at = 1; at <= text.length; at++) {
|
|
38
46
|
set(written, text.slice(0, at));
|
|
39
|
-
await new Promise((done) => setTimeout(done,
|
|
47
|
+
await new Promise((done) => setTimeout(done, paceOf(text, ms)));
|
|
40
48
|
}
|
|
41
49
|
}
|
|
42
50
|
written.dispatchEvent(new Event("change", { bubbles: true }));
|
|
43
51
|
return null;
|
|
44
52
|
}
|
|
53
|
+
/** How long each letter takes: `LETTER_MS`, or the recording's length spread over the letters, `SLOWEST_MS` at most. */
|
|
54
|
+
function paceOf(text, ms) {
|
|
55
|
+
return ms === undefined ? LETTER_MS : Math.min(SLOWEST_MS, Math.max(LETTER_MS / 2, (ms * 0.9) / Math.max(1, text.length)));
|
|
56
|
+
}
|
|
57
|
+
// An element that is no field is told what is typed, a letter at a time, and the site writes it where it
|
|
58
|
+
// belongs (its editor); an element whose site takes no such event is no place to type.
|
|
59
|
+
async function told(element, text, still, ms) {
|
|
60
|
+
const taken = (typed, done) => !element.dispatchEvent(new CustomEvent(TYPING_EVENT, { bubbles: true, cancelable: true, detail: { text: typed, done } }));
|
|
61
|
+
element.focus?.({ preventScroll: true });
|
|
62
|
+
if (still)
|
|
63
|
+
return taken(text, true) ? null : NOT_A_FIELD;
|
|
64
|
+
if (!taken("", false))
|
|
65
|
+
return NOT_A_FIELD;
|
|
66
|
+
for (let at = 1; at <= text.length; at++) {
|
|
67
|
+
taken(text.slice(0, at), at === text.length);
|
|
68
|
+
await new Promise((done) => setTimeout(done, paceOf(text, ms)));
|
|
69
|
+
}
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
45
72
|
function choose(list, text) {
|
|
46
73
|
const wanted = text.trim().toLowerCase();
|
|
47
74
|
const options = [...list.options];
|
|
@@ -53,10 +80,14 @@ function choose(list, text) {
|
|
|
53
80
|
list.dispatchEvent(new Event("change", { bubbles: true }));
|
|
54
81
|
return null;
|
|
55
82
|
}
|
|
56
|
-
// A framework keeps its own copy of the value and reads it back from the prototype's setter
|
|
83
|
+
// A framework keeps its own copy of the value and reads it back from the prototype's setter: the one of the
|
|
84
|
+
// field's own window, found up its chain.
|
|
57
85
|
function set(field, value) {
|
|
58
|
-
|
|
59
|
-
Object.getOwnPropertyDescriptor(prototype, "value")
|
|
86
|
+
let prototype = Object.getPrototypeOf(field);
|
|
87
|
+
while (prototype !== null && Object.getOwnPropertyDescriptor(prototype, "value") === undefined)
|
|
88
|
+
prototype = Object.getPrototypeOf(prototype);
|
|
89
|
+
if (prototype !== null)
|
|
90
|
+
Object.getOwnPropertyDescriptor(prototype, "value")?.set?.call(field, value);
|
|
60
91
|
field.dispatchEvent(new Event("input", { bubbles: true }));
|
|
61
92
|
}
|
|
62
93
|
//# sourceMappingURL=typing.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typing.js","sourceRoot":"","sources":["../../src/pointer/typing.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,EAAE;AACF,kGAAkG;AAClG,iGAAiG;AACjG,gGAAgG;AAChG,gBAAgB;AAEhB,wCAAwC;AACxC,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,2CAA2C;AAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhI
|
|
1
|
+
{"version":3,"file":"typing.js","sourceRoot":"","sources":["../../src/pointer/typing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** `@pinecall/dot/server`: the site's door the dot asks, answered on its server: what the visitor typed decided, a row picked, a sentence recorded. */
|
|
2
|
+
import type { AskRequest, Decision, NextLine, Note, RowAnswer, RowRequest, SaidAnswer } from "../wire/ask.js";
|
|
3
|
+
import { decisionFrom, questionsOf, spansOf, thingsOf } from "./questions.js";
|
|
4
|
+
import { explainOutput, nextLine, recordSay, type Voicing } from "./saying.js";
|
|
5
|
+
export type { AskRequest, Decision, DoorRequest, RowRequest, SayRequest } from "../wire/ask.js";
|
|
6
|
+
export type { Voicing } from "./saying.js";
|
|
7
|
+
export { decisionFrom, questionsOf, spansOf, thingsOf, recordSay, explainOutput, nextLine };
|
|
8
|
+
export interface DecideOptions {
|
|
9
|
+
/** An OpenRouter key. */
|
|
10
|
+
key: string;
|
|
11
|
+
/** Default `~typesafe/jev-latest`. */
|
|
12
|
+
model?: string | undefined;
|
|
13
|
+
/** How sure the walk, the thing or a param must be, 0 to 1, to be done. Default 0.5. */
|
|
14
|
+
threshold?: number | undefined;
|
|
15
|
+
/** Default OpenRouter's Decisions API. */
|
|
16
|
+
endpoint?: string | undefined;
|
|
17
|
+
fetch?: typeof fetch | undefined;
|
|
18
|
+
}
|
|
19
|
+
export interface AnswerOptions extends DecideOptions {
|
|
20
|
+
/** The agent whose voice records a walk's sentences with slots; none, a `say` is refused. */
|
|
21
|
+
voicing?: Voicing | undefined;
|
|
22
|
+
}
|
|
23
|
+
/** Decide what the dot does for what the visitor typed, and the params of a walk decided. Throws when the model cannot be reached or refuses. */
|
|
24
|
+
export declare function decide(request: AskRequest, options: DecideOptions): Promise<Decision>;
|
|
25
|
+
/** Which row of a table best answers what the visitor typed; null when none is sure enough. */
|
|
26
|
+
export declare function pickRow(request: RowRequest, options: DecideOptions): Promise<RowAnswer>;
|
|
27
|
+
/**
|
|
28
|
+
* The site's door, whole: what the page sent (`{ decide }`, `{ row }` or `{ say }`), answered. Throws on a
|
|
29
|
+
* request that is none of them, and on a model or a gateway that did not answer.
|
|
30
|
+
*/
|
|
31
|
+
export declare function answer(body: unknown, options: AnswerOptions): Promise<Decision | RowAnswer | SaidAnswer | {
|
|
32
|
+
notes: Note[];
|
|
33
|
+
} | NextLine>;
|
|
34
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,uJAAuJ;AAWvJ,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAkB,QAAQ,EAAe,IAAI,EAAe,SAAS,EAAE,UAAU,EAAE,UAAU,EAAc,MAAM,gBAAgB,CAAC;AACpK,OAAO,EAA0B,YAAY,EAAc,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAe,MAAM,gBAAgB,CAAC;AAC/H,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAc,SAAS,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3F,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAChG,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AAE5F,MAAM,WAAW,aAAa;IAC5B,yBAAyB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,KAAK,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,6FAA6F;IAC7F,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAeD,iJAAiJ;AACjJ,wBAAsB,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAY3F;AAED,+FAA+F;AAC/F,wBAAsB,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAc7F;AAED;;;GAGG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG;IAAE,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,GAAG,QAAQ,CAAC,CAa7I"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/** `@pinecall/dot/server`: the site's door the dot asks, answered on its server: what the visitor typed decided, a row picked, a sentence recorded. */
|
|
2
|
+
//
|
|
3
|
+
// What the visitor typed goes to Jev, TypeSafe's System One model, through OpenRouter's Decisions API, as
|
|
4
|
+
// one request of questions answered at once (`questions.ts`): Jev answers each with a choice among the
|
|
5
|
+
// options it was given and their probabilities. It cannot write a sentence or name a thing that is not on
|
|
6
|
+
// the page, so the dot does something on the page or offers the agent, and never talks; a walk's params
|
|
7
|
+
// are parts of what was typed, never a word of the model's. Under the threshold it does nothing rather
|
|
8
|
+
// than guess. A walk that read a table asks which row answers the visitor best, the same way; a sentence
|
|
9
|
+
// with slots is recorded in the agent's voice when it is reached (`saying.ts`). The keys are the server's:
|
|
10
|
+
// this never runs in a browser.
|
|
11
|
+
import { MODEL, MOST, THRESHOLD, decisionFrom, paramsFrom, questionsOf, spansOf, thingsOf } from "./questions.js";
|
|
12
|
+
import { explainOutput, nextLine, recordRead, recordSay } from "./saying.js";
|
|
13
|
+
export { decisionFrom, questionsOf, spansOf, thingsOf, recordSay, explainOutput, nextLine };
|
|
14
|
+
const ENDPOINT = "https://openrouter.ai/api/alpha/decisions";
|
|
15
|
+
/** Ask Jev; its answers, by question. Throws when it cannot be reached or refuses. */
|
|
16
|
+
async function asked(body, options) {
|
|
17
|
+
const answer = await (options.fetch ?? fetch)(options.endpoint ?? ENDPOINT, {
|
|
18
|
+
method: "POST",
|
|
19
|
+
headers: { authorization: `Bearer ${options.key}`, "content-type": "application/json" },
|
|
20
|
+
body: JSON.stringify(body),
|
|
21
|
+
});
|
|
22
|
+
if (!answer.ok)
|
|
23
|
+
throw new Error(`the decision model answered ${answer.status}`);
|
|
24
|
+
return (await answer.json()).answers ?? {};
|
|
25
|
+
}
|
|
26
|
+
/** Decide what the dot does for what the visitor typed, and the params of a walk decided. Throws when the model cannot be reached or refuses. */
|
|
27
|
+
export async function decide(request, options) {
|
|
28
|
+
const things = thingsOf(request.page);
|
|
29
|
+
const spans = spansOf(request.message);
|
|
30
|
+
const answers = await asked(questionsOf(request, things, options.model ?? MODEL, spans), options);
|
|
31
|
+
const decision = decisionFrom(answers, options.threshold ?? THRESHOLD);
|
|
32
|
+
// A thing the model chose is one of the page's: anything else is no decision.
|
|
33
|
+
if (decision.do === "show" && !things.some((thing) => thing.ref === decision.target))
|
|
34
|
+
return { do: "none", confidence: 0 };
|
|
35
|
+
if (decision.do !== "walk")
|
|
36
|
+
return decision;
|
|
37
|
+
const walk = request.walks.find((one) => one.name === decision.walk);
|
|
38
|
+
if (walk === undefined)
|
|
39
|
+
return { do: "none", confidence: 0 };
|
|
40
|
+
const params = paramsFrom(answers, walk, spans, options.threshold ?? THRESHOLD);
|
|
41
|
+
return Object.keys(params).length === 0 ? decision : { ...decision, params };
|
|
42
|
+
}
|
|
43
|
+
/** Which row of a table best answers what the visitor typed; null when none is sure enough. */
|
|
44
|
+
export async function pickRow(request, options) {
|
|
45
|
+
const rows = request.rows.slice(0, MOST);
|
|
46
|
+
if (rows.length === 0)
|
|
47
|
+
return { row: null };
|
|
48
|
+
const answers = await asked({
|
|
49
|
+
model: options.model ?? MODEL,
|
|
50
|
+
state: [`A visitor typed to a website's guide: "${request.message}"\n\nThe rows of the table the site shows them:\n${rows.map((row) => `- ${row}`).join("\n")}`],
|
|
51
|
+
questions: { row: { type: "choice", instructions: "Which row best answers what they typed?", criteria: Object.fromEntries(rows.map((row, at) => [`r${at}`, row])) } },
|
|
52
|
+
}, options);
|
|
53
|
+
const choice = answers["row"];
|
|
54
|
+
const at = Number(choice?.choice?.slice(1));
|
|
55
|
+
return Number.isInteger(at) && at < rows.length && (choice?.confidence ?? 0) >= (options.threshold ?? THRESHOLD) ? { row: at } : { row: null };
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* The site's door, whole: what the page sent (`{ decide }`, `{ row }` or `{ say }`), answered. Throws on a
|
|
59
|
+
* request that is none of them, and on a model or a gateway that did not answer.
|
|
60
|
+
*/
|
|
61
|
+
export async function answer(body, options) {
|
|
62
|
+
const request = (typeof body === "object" && body !== null ? body : {});
|
|
63
|
+
if (isAsk(request.decide))
|
|
64
|
+
return decide(request.decide, options);
|
|
65
|
+
if (isRow(request.row))
|
|
66
|
+
return pickRow(request.row, options);
|
|
67
|
+
const voicing = () => {
|
|
68
|
+
if (options.voicing === undefined)
|
|
69
|
+
throw new Error("this door records no sentence: give answer() a voicing");
|
|
70
|
+
return options.voicing;
|
|
71
|
+
};
|
|
72
|
+
if (isSay(request.say))
|
|
73
|
+
return recordSay(request.say, voicing(), options.fetch ?? fetch);
|
|
74
|
+
if (isRead(request.read))
|
|
75
|
+
return recordRead(request.read.text, voicing(), options.fetch ?? fetch);
|
|
76
|
+
if (isExplain(request.explain))
|
|
77
|
+
return explainOutput(request.explain, voicing(), options.fetch ?? fetch);
|
|
78
|
+
if (isNext(request.next))
|
|
79
|
+
return nextLine(request.next, voicing(), options.fetch ?? fetch);
|
|
80
|
+
throw new Error("the door takes { decide }, { row }, { say }, { read }, { explain } or { next }");
|
|
81
|
+
}
|
|
82
|
+
const isString = (value) => typeof value === "string";
|
|
83
|
+
function isAsk(value) {
|
|
84
|
+
const fields = (value ?? {});
|
|
85
|
+
return typeof value === "object" && isString(fields["message"]) && isString(fields["path"]) && isString(fields["page"]) && Array.isArray(fields["walks"]);
|
|
86
|
+
}
|
|
87
|
+
function isRow(value) {
|
|
88
|
+
const fields = (value ?? {});
|
|
89
|
+
return typeof value === "object" && isString(fields["message"]) && Array.isArray(fields["rows"]) && fields["rows"].every(isString);
|
|
90
|
+
}
|
|
91
|
+
function isNext(value) {
|
|
92
|
+
if (typeof value !== "object" || value === null)
|
|
93
|
+
return false;
|
|
94
|
+
const { goal, heard } = value;
|
|
95
|
+
return typeof goal === "string" && Array.isArray(heard) && heard.every((turn) => typeof turn === "object" && turn !== null && typeof turn["said"] === "string");
|
|
96
|
+
}
|
|
97
|
+
function isExplain(value) {
|
|
98
|
+
return typeof value === "object" && value !== null && isString(value["output"]);
|
|
99
|
+
}
|
|
100
|
+
function isRead(value) {
|
|
101
|
+
return typeof value === "object" && value !== null && isString(value["text"]);
|
|
102
|
+
}
|
|
103
|
+
function isSay(value) {
|
|
104
|
+
const fields = (value ?? {});
|
|
105
|
+
const values = fields["values"];
|
|
106
|
+
return typeof value === "object" && isString(fields["path"]) && isString(fields["walk"]) && Number.isInteger(fields["step"]) && typeof values === "object" && values !== null;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** What Jev is asked about what the visitor typed, and what its answers come to: the questions, the parts of the message a param is picked from, the decision. */
|
|
2
|
+
import { type AskRequest, type Decision, type Named } from "../wire/ask.js";
|
|
3
|
+
import { type Values } from "../wire/acts.js";
|
|
4
|
+
export declare const MODEL = "~typesafe/jev-latest";
|
|
5
|
+
export declare const THRESHOLD = 0.5;
|
|
6
|
+
/** The most options a Choice takes. */
|
|
7
|
+
export declare const MOST = 255;
|
|
8
|
+
/** Jev's answer to one question. */
|
|
9
|
+
export interface Answer {
|
|
10
|
+
choice?: string;
|
|
11
|
+
confidence?: number;
|
|
12
|
+
probabilities?: Record<string, number>;
|
|
13
|
+
}
|
|
14
|
+
/** The things of the page the choice is among: every one with a name, the sections and headings first when there are too many. */
|
|
15
|
+
export declare function thingsOf(page: string): Named[];
|
|
16
|
+
/**
|
|
17
|
+
* The parts of what the visitor typed a param can be: one to five words in a row, as written, without the
|
|
18
|
+
* commas and quotes around them. An email or a phone stays whole, being one word or two. The shorter first.
|
|
19
|
+
*/
|
|
20
|
+
export declare function spansOf(message: string): string[];
|
|
21
|
+
/** The request Jev is asked: the state, and the questions on it. */
|
|
22
|
+
export declare function questionsOf(request: AskRequest, things: Named[], model?: string, spans?: string[]): Record<string, unknown>;
|
|
23
|
+
/**
|
|
24
|
+
* The one thing to do, from Jev's answers. To act (a walk or a thing shown) wins when the two together are
|
|
25
|
+
* more likely than not, and of the two the surer one; under `threshold` it does nothing rather than guess.
|
|
26
|
+
*/
|
|
27
|
+
export declare function decisionFrom(answers: Record<string, Answer | undefined>, threshold?: number): Decision;
|
|
28
|
+
/** The params of the walk decided, each one Jev was sure of: the part of the message, or the option. */
|
|
29
|
+
export declare function paramsFrom(answers: Record<string, Answer | undefined>, walk: AskRequest["walks"][number], spans: string[], threshold?: number): Values;
|
|
30
|
+
//# sourceMappingURL=questions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/server/questions.ts"],"names":[],"mappings":"AAAA,kKAAkK;AAQlK,OAAO,EAAW,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrF,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEvD,eAAO,MAAM,KAAK,yBAAyB,CAAC;AAC5C,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,uCAAuC;AACvC,eAAO,MAAM,IAAI,MAAM,CAAC;AAexB,oCAAoC;AACpC,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED,kIAAkI;AAClI,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAM9C;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAcjD;AAKD,oEAAoE;AACpE,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,SAAQ,EAAE,KAAK,WAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2C1I;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,SAAS,SAAY,GAAG,QAAQ,CAazG;AAED,wGAAwG;AACxG,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,SAAY,GAAG,MAAM,CAUzJ"}
|