@skillcdn/console 0.1.2 → 0.1.4
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 +9 -5
- package/dist/api.d.ts +7 -5
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +6 -4
- package/dist/api.js.map +1 -1
- package/dist/cli/cli.d.ts +3 -3
- package/dist/cli/cli.d.ts.map +1 -1
- package/dist/cli/cli.js +202 -18
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/credentials.d.ts +1 -1
- package/dist/cli/format.d.ts +10 -1
- package/dist/cli/format.d.ts.map +1 -1
- package/dist/cli/format.js +67 -0
- package/dist/cli/format.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +66 -7
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/main.js +3 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/terminal.d.ts +0 -5
- package/dist/cli/terminal.d.ts.map +1 -1
- package/dist/cli/terminal.js +0 -43
- package/dist/cli/terminal.js.map +1 -1
- package/dist/client.d.ts +51 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +36 -11
- package/dist/client.js.map +1 -1
- package/dist/components/board.d.ts.map +1 -1
- package/dist/components/board.js +6 -3
- package/dist/components/board.js.map +1 -1
- package/dist/components/connect.d.ts +28 -0
- package/dist/components/connect.d.ts.map +1 -0
- package/dist/components/connect.js +30 -0
- package/dist/components/connect.js.map +1 -0
- package/dist/components/decision-form.d.ts.map +1 -1
- package/dist/components/decision-form.js +4 -1
- package/dist/components/decision-form.js.map +1 -1
- package/dist/components/decision-list.d.ts +11 -1
- package/dist/components/decision-list.d.ts.map +1 -1
- package/dist/components/decision-list.js +30 -5
- package/dist/components/decision-list.js.map +1 -1
- package/dist/components/documents.d.ts +87 -0
- package/dist/components/documents.d.ts.map +1 -0
- package/dist/components/documents.js +115 -0
- package/dist/components/documents.js.map +1 -0
- package/dist/components/event-feed.d.ts +3 -2
- package/dist/components/event-feed.d.ts.map +1 -1
- package/dist/components/event-feed.js +55 -45
- package/dist/components/event-feed.js.map +1 -1
- package/dist/components/markdown.d.ts +5 -2
- package/dist/components/markdown.d.ts.map +1 -1
- package/dist/components/markdown.js +8 -1
- package/dist/components/markdown.js.map +1 -1
- package/dist/components/people.d.ts +2 -0
- package/dist/components/people.d.ts.map +1 -1
- package/dist/components/people.js +4 -2
- package/dist/components/people.js.map +1 -1
- package/dist/components/projects.d.ts +1 -0
- package/dist/components/projects.d.ts.map +1 -1
- package/dist/components/projects.js +16 -10
- package/dist/components/projects.js.map +1 -1
- package/dist/components/runs.d.ts +4 -0
- package/dist/components/runs.d.ts.map +1 -1
- package/dist/components/runs.js +7 -3
- package/dist/components/runs.js.map +1 -1
- package/dist/components/shell.d.ts +30 -1
- package/dist/components/shell.d.ts.map +1 -1
- package/dist/components/shell.js +56 -8
- package/dist/components/shell.js.map +1 -1
- package/dist/components/sign-in.d.ts +3 -0
- package/dist/components/sign-in.d.ts.map +1 -1
- package/dist/components/sign-in.js +3 -9
- package/dist/components/sign-in.js.map +1 -1
- package/dist/components/skills.d.ts.map +1 -1
- package/dist/components/skills.js +8 -12
- package/dist/components/skills.js.map +1 -1
- package/dist/components/task-form.d.ts.map +1 -1
- package/dist/components/task-form.js +5 -2
- package/dist/components/task-form.js.map +1 -1
- package/dist/components/task-view.d.ts +12 -1
- package/dist/components/task-view.d.ts.map +1 -1
- package/dist/components/task-view.js +7 -14
- package/dist/components/task-view.js.map +1 -1
- package/dist/components/tokens.d.ts +12 -0
- package/dist/components/tokens.d.ts.map +1 -1
- package/dist/components/tokens.js +25 -10
- package/dist/components/tokens.js.map +1 -1
- package/dist/components/ui.d.ts +3 -3
- package/dist/components/ui.d.ts.map +1 -1
- package/dist/components/ui.js +15 -9
- package/dist/components/ui.js.map +1 -1
- package/dist/connect-page.d.ts +10 -0
- package/dist/connect-page.d.ts.map +1 -0
- package/dist/connect-page.js +67 -0
- package/dist/connect-page.js.map +1 -0
- package/dist/connect.d.ts +11 -0
- package/dist/connect.d.ts.map +1 -0
- package/dist/connect.js +24 -0
- package/dist/connect.js.map +1 -0
- package/dist/console.css +310 -10
- package/dist/console.d.ts +6 -1
- package/dist/console.d.ts.map +1 -1
- package/dist/console.js +339 -151
- package/dist/console.js.map +1 -1
- package/dist/data.d.ts +21 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +23 -0
- package/dist/data.js.map +1 -1
- package/dist/docs-page.d.ts +14 -0
- package/dist/docs-page.d.ts.map +1 -0
- package/dist/docs-page.js +166 -0
- package/dist/docs-page.js.map +1 -0
- package/dist/documents.d.ts +19 -0
- package/dist/documents.d.ts.map +1 -0
- package/dist/documents.js +64 -0
- package/dist/documents.js.map +1 -0
- package/dist/i18n/en.d.ts +471 -0
- package/dist/i18n/en.d.ts.map +1 -0
- package/dist/i18n/en.js +481 -0
- package/dist/i18n/en.js.map +1 -0
- package/dist/i18n/index.d.ts +26 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +46 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/ko.d.ts +3 -0
- package/dist/i18n/ko.d.ts.map +1 -0
- package/dist/i18n/ko.js +470 -0
- package/dist/i18n/ko.js.map +1 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/limits.d.ts +14 -0
- package/dist/limits.d.ts.map +1 -1
- package/dist/limits.js +14 -0
- package/dist/limits.js.map +1 -1
- package/dist/router.d.ts +93 -10
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +168 -24
- package/dist/router.js.map +1 -1
- package/dist/routes.d.ts +11 -1
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +17 -0
- package/dist/routes.js.map +1 -1
- package/dist/schemas.d.ts +310 -2
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +162 -11
- package/dist/schemas.js.map +1 -1
- package/dist/use-action.d.ts +9 -0
- package/dist/use-action.d.ts.map +1 -0
- package/dist/use-action.js +34 -0
- package/dist/use-action.js.map +1 -0
- package/dist/vocabulary.d.ts +4 -1
- package/dist/vocabulary.d.ts.map +1 -1
- package/dist/vocabulary.js +7 -0
- package/dist/vocabulary.js.map +1 -1
- package/package.json +1 -1
package/dist/limits.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limits.js","sourceRoot":"","sources":["../src/limits.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,iGAAiG;AACjG,sDAAsD;AAEtD,uDAAuD;AACvD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,kEAAkE;AAClE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AACtC,qEAAqE;AACrE,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAC5B,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AACnC,8DAA8D;AAC9D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC;AAC9B,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,uCAAuC;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AACpC,4FAA4F;AAC5F,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAC9B,oDAAoD;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,0FAA0F;AAC1F,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AACvC,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,oFAAoF;AACpF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,iFAAiF;AACjF,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,2FAA2F;AAC3F,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,qDAAqD;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,8FAA8F;AAC9F,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,oEAAoE;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAClD,mGAAmG;AACnG,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"limits.js","sourceRoot":"","sources":["../src/limits.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,iGAAiG;AACjG,sDAAsD;AAEtD,uDAAuD;AACvD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,kEAAkE;AAClE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AACtC,qEAAqE;AACrE,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAC5B,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AACnC,8DAA8D;AAC9D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC;AAC9B,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,uCAAuC;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AACpC,4FAA4F;AAC5F,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAC9B,oDAAoD;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,0FAA0F;AAC1F,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AACvC,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,oFAAoF;AACpF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACxC,iFAAiF;AACjF,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,2FAA2F;AAC3F,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,qDAAqD;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,6GAA6G;AAC7G,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,kFAAkF;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,8FAA8F;AAC9F,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,oEAAoE;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAClD,mGAAmG;AACnG,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAC9C,kGAAkG;AAClG,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAC5C,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAC9C,6CAA6C;AAC7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAC1C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,iDAAiD;AACjD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC"}
|
package/dist/router.d.ts
CHANGED
|
@@ -1,16 +1,50 @@
|
|
|
1
1
|
import { type SignInFailure } from "./api.js";
|
|
2
|
+
/** How a task's page is shown: as it is, or with one of its forms open. */
|
|
3
|
+
export type TaskFormKind = "edit" | "ask";
|
|
4
|
+
/** How the documents are shown at a path: a folder or a page, a form, a version, or a search. */
|
|
5
|
+
export type DocsView = {
|
|
6
|
+
readonly kind: "read";
|
|
7
|
+
readonly version?: number | undefined;
|
|
8
|
+
} | {
|
|
9
|
+
readonly kind: "new";
|
|
10
|
+
} | {
|
|
11
|
+
readonly kind: "edit";
|
|
12
|
+
} | {
|
|
13
|
+
readonly kind: "search";
|
|
14
|
+
readonly q: string;
|
|
15
|
+
};
|
|
2
16
|
export type Route = {
|
|
3
17
|
readonly name: "projects";
|
|
18
|
+
} | {
|
|
19
|
+
readonly name: "new-project";
|
|
4
20
|
} | {
|
|
5
21
|
readonly name: "board";
|
|
6
22
|
readonly project: string;
|
|
23
|
+
} | {
|
|
24
|
+
readonly name: "new-task";
|
|
25
|
+
readonly project: string;
|
|
7
26
|
} | {
|
|
8
27
|
readonly name: "task";
|
|
9
28
|
readonly project: string;
|
|
10
|
-
|
|
29
|
+
/** The task's number, or nothing when the address names it by id. */
|
|
30
|
+
readonly number: number | undefined;
|
|
31
|
+
readonly id: string | undefined;
|
|
32
|
+
readonly form: TaskFormKind | undefined;
|
|
33
|
+
} | {
|
|
34
|
+
readonly name: "docs";
|
|
35
|
+
readonly project: string;
|
|
36
|
+
readonly path: string;
|
|
37
|
+
readonly view: DocsView;
|
|
11
38
|
} | {
|
|
12
39
|
readonly name: "decisions";
|
|
13
40
|
readonly project: string;
|
|
41
|
+
} | {
|
|
42
|
+
readonly name: "new-decision";
|
|
43
|
+
readonly project: string;
|
|
44
|
+
} | {
|
|
45
|
+
readonly name: "decision";
|
|
46
|
+
readonly project: string;
|
|
47
|
+
readonly id: string;
|
|
14
48
|
} | {
|
|
15
49
|
readonly name: "feed";
|
|
16
50
|
readonly project: string;
|
|
@@ -23,28 +57,77 @@ export type Route = {
|
|
|
23
57
|
} | {
|
|
24
58
|
readonly name: "settings";
|
|
25
59
|
readonly project: string;
|
|
26
|
-
} | {
|
|
27
|
-
readonly name: "tokens";
|
|
28
60
|
} | {
|
|
29
61
|
readonly name: "people";
|
|
62
|
+
}
|
|
63
|
+
/** The agents of one person, for an administrator. */
|
|
64
|
+
| {
|
|
65
|
+
readonly name: "person-agents";
|
|
66
|
+
readonly id: string;
|
|
67
|
+
} | {
|
|
68
|
+
readonly name: "agents";
|
|
69
|
+
} | {
|
|
70
|
+
readonly name: "new-token";
|
|
71
|
+
}
|
|
72
|
+
/** Where a person approves an agent's connection, by the code it showed, or types one. */
|
|
73
|
+
| {
|
|
74
|
+
readonly name: "connect";
|
|
75
|
+
readonly code: string | undefined;
|
|
76
|
+
}
|
|
77
|
+
/** An address that moved: the page takes the person to `to` in its place. */
|
|
78
|
+
| {
|
|
79
|
+
readonly name: "moved";
|
|
80
|
+
readonly to: string;
|
|
30
81
|
} | {
|
|
31
82
|
readonly name: "not-found";
|
|
32
83
|
};
|
|
33
84
|
/** The pages of a project, after its key. */
|
|
34
|
-
export type ProjectPage = "decisions" | "feed" | "skills" | "members" | "settings";
|
|
85
|
+
export type ProjectPage = "docs" | "decisions" | "feed" | "skills" | "members" | "settings";
|
|
35
86
|
export declare const PATHS: {
|
|
36
87
|
/** The projects the person may see: the front page. */
|
|
37
88
|
readonly projects: "/";
|
|
38
|
-
/** Where a project's pages are: `/
|
|
39
|
-
readonly project: "/
|
|
40
|
-
|
|
41
|
-
readonly tokens: "/tokens";
|
|
89
|
+
/** Where a project's pages are: `/projects/<key>`, then the page. */
|
|
90
|
+
readonly project: "/projects";
|
|
91
|
+
readonly newProject: "/projects/new";
|
|
42
92
|
readonly people: "/people";
|
|
93
|
+
/** The agents of whoever is signed in, which hold their tokens: their own page. */
|
|
94
|
+
readonly agents: "/agents";
|
|
95
|
+
/** The form for a token made by hand, for a script or a console of one's own. */
|
|
96
|
+
readonly newToken: "/agents/new";
|
|
97
|
+
/** Where an agent's connection is approved (ADR-0011): `/connect/<code>`, or the code typed. */
|
|
98
|
+
readonly connect: "/connect";
|
|
43
99
|
};
|
|
44
|
-
|
|
100
|
+
/** Where an address of the 0.1 line before this one leads now, or nothing for a current one. */
|
|
101
|
+
export declare function movedFrom(pathname: string): string | undefined;
|
|
102
|
+
export declare function matchRoute(pathname: string, search?: string): Route;
|
|
103
|
+
/** Where a person approves an agent's connection by its code, or types one. */
|
|
104
|
+
export declare function connectHref(code?: string): string;
|
|
105
|
+
/** Where an administrator sees one person's agents. */
|
|
106
|
+
export declare function personAgentsHref(personId: string): string;
|
|
45
107
|
/** Where a project's board is, or one of its pages. */
|
|
46
108
|
export declare function projectHref(key: string, page?: ProjectPage): string;
|
|
47
|
-
|
|
109
|
+
/** Where a task is written: the form. */
|
|
110
|
+
export declare function newTaskHref(key: string): string;
|
|
111
|
+
/** Where a task is read by its number, or one of its forms is open. */
|
|
112
|
+
export declare function taskHref(key: string, number: number, form?: TaskFormKind): string;
|
|
113
|
+
/** Where a decision is raised from the Decisions page: the form. */
|
|
114
|
+
export declare function newDecisionHref(key: string): string;
|
|
115
|
+
/** Where one decision is read, and answered. */
|
|
116
|
+
export declare function decisionHref(key: string, id: string): string;
|
|
117
|
+
/**
|
|
118
|
+
* Where a document of a project is read, or a folder of them listed (`""` for the root), and
|
|
119
|
+
* how: a form, a version, or a search over all of them.
|
|
120
|
+
*/
|
|
121
|
+
export declare function docHref(key: string, path: string, view?: DocsView): string;
|
|
122
|
+
/** The ways a page moves the person: to an address, in place of the one shown, or back. */
|
|
123
|
+
export interface Navigation {
|
|
124
|
+
/** Shows the address, as one more step in the history. */
|
|
125
|
+
go(href: string): void;
|
|
126
|
+
/** Shows the address in place of the one shown: for a redirect, or for what a form made. */
|
|
127
|
+
replace(href: string): void;
|
|
128
|
+
/** Goes back to where the page was reached from, or to `fallback` when there is no such place. */
|
|
129
|
+
back(fallback: string): void;
|
|
130
|
+
}
|
|
48
131
|
/** Why the last sign-in did not complete, as the page's URL says it, or nothing. */
|
|
49
132
|
export declare function signInFailureOf(search: string): SignInFailure | undefined;
|
|
50
133
|
/** The URL without the sign-in parameter, once the page has read it. */
|
package/dist/router.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
package/dist/router.js
CHANGED
|
@@ -1,58 +1,202 @@
|
|
|
1
|
-
import { isSignInFailure, SIGN_IN_PARAM } from "./api.js";
|
|
1
|
+
import { isFolderPath, isSignInFailure, SIGN_IN_PARAM } from "./api.js";
|
|
2
2
|
export const PATHS = {
|
|
3
3
|
/** The projects the person may see: the front page. */
|
|
4
4
|
projects: "/",
|
|
5
|
-
/** Where a project's pages are: `/
|
|
6
|
-
project: "/
|
|
7
|
-
|
|
8
|
-
tokens: "/tokens",
|
|
5
|
+
/** Where a project's pages are: `/projects/<key>`, then the page. */
|
|
6
|
+
project: "/projects",
|
|
7
|
+
newProject: "/projects/new",
|
|
9
8
|
people: "/people",
|
|
9
|
+
/** The agents of whoever is signed in, which hold their tokens: their own page. */
|
|
10
|
+
agents: "/agents",
|
|
11
|
+
/** The form for a token made by hand, for a script or a console of one's own. */
|
|
12
|
+
newToken: "/agents/new",
|
|
13
|
+
/** Where an agent's connection is approved (ADR-0011): `/connect/<code>`, or the code typed. */
|
|
14
|
+
connect: "/connect",
|
|
10
15
|
};
|
|
11
16
|
const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
12
17
|
const PROJECT_KEY = /^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/;
|
|
13
|
-
const
|
|
18
|
+
const NUMBER = /^[1-9][0-9]{0,8}$/;
|
|
19
|
+
/** A code as it may be typed into an address: checked for what it is by the page. */
|
|
20
|
+
const CODE_TEXT = /^[A-Za-z0-9-]{1,16}$/;
|
|
21
|
+
/** The pages of a project that take nothing after their name. */
|
|
22
|
+
const PLAIN_PAGES = [
|
|
14
23
|
"decisions",
|
|
15
24
|
"feed",
|
|
16
25
|
"skills",
|
|
17
26
|
"members",
|
|
18
27
|
"settings",
|
|
19
28
|
];
|
|
20
|
-
|
|
29
|
+
const NOT_FOUND = { name: "not-found" };
|
|
30
|
+
/** Where an address of the 0.1 line before this one leads now, or nothing for a current one. */
|
|
31
|
+
export function movedFrom(pathname) {
|
|
32
|
+
if (pathname === "/tokens") {
|
|
33
|
+
return PATHS.agents;
|
|
34
|
+
}
|
|
35
|
+
if (pathname === "/p" || pathname.startsWith("/p/")) {
|
|
36
|
+
return `${PATHS.project}${pathname.slice(2)}`;
|
|
37
|
+
}
|
|
38
|
+
if (pathname === PATHS.project) {
|
|
39
|
+
return PATHS.projects;
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
const taskFormOf = (params) => params.has("edit") ? "edit" : params.has("ask") ? "ask" : undefined;
|
|
44
|
+
/** The view the query asks for at a path, or nothing for one the path cannot be shown as. */
|
|
45
|
+
const docsViewOf = (params, path) => {
|
|
46
|
+
const q = params.get("q");
|
|
47
|
+
if (q !== null && q.trim().length > 0) {
|
|
48
|
+
return { kind: "search", q: q.trim() };
|
|
49
|
+
}
|
|
50
|
+
if (params.has("new")) {
|
|
51
|
+
return { kind: "new" };
|
|
52
|
+
}
|
|
53
|
+
if (params.has("edit")) {
|
|
54
|
+
return path === "" ? undefined : { kind: "edit" };
|
|
55
|
+
}
|
|
56
|
+
const version = params.get("version");
|
|
57
|
+
if (version !== null) {
|
|
58
|
+
return path !== "" && NUMBER.test(version)
|
|
59
|
+
? { kind: "read", version: Number(version) }
|
|
60
|
+
: undefined;
|
|
61
|
+
}
|
|
62
|
+
return { kind: "read" };
|
|
63
|
+
};
|
|
64
|
+
export function matchRoute(pathname, search = "") {
|
|
21
65
|
const path = pathname.length > 1 ? pathname.replace(/\/+$/, "") : pathname;
|
|
66
|
+
const moved = movedFrom(path);
|
|
67
|
+
if (moved !== undefined) {
|
|
68
|
+
return { name: "moved", to: `${moved}${search}` };
|
|
69
|
+
}
|
|
70
|
+
const params = new URLSearchParams(search);
|
|
22
71
|
if (path === PATHS.projects) {
|
|
23
72
|
return { name: "projects" };
|
|
24
73
|
}
|
|
25
|
-
if (path === PATHS.
|
|
26
|
-
return { name: "
|
|
74
|
+
if (path === PATHS.newProject) {
|
|
75
|
+
return { name: "new-project" };
|
|
27
76
|
}
|
|
28
77
|
if (path === PATHS.people) {
|
|
29
78
|
return { name: "people" };
|
|
30
79
|
}
|
|
31
|
-
if (path
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
80
|
+
if (path === PATHS.agents) {
|
|
81
|
+
return { name: "agents" };
|
|
82
|
+
}
|
|
83
|
+
if (path === PATHS.newToken) {
|
|
84
|
+
return { name: "new-token" };
|
|
85
|
+
}
|
|
86
|
+
if (path === PATHS.connect) {
|
|
87
|
+
return { name: "connect", code: undefined };
|
|
88
|
+
}
|
|
89
|
+
if (path.startsWith(`${PATHS.connect}/`)) {
|
|
90
|
+
const code = path.slice(PATHS.connect.length + 1);
|
|
91
|
+
return CODE_TEXT.test(code) ? { name: "connect", code } : NOT_FOUND;
|
|
92
|
+
}
|
|
93
|
+
if (path.startsWith(`${PATHS.people}/`)) {
|
|
94
|
+
const [id, page, ...more] = path.slice(PATHS.people.length + 1).split("/");
|
|
95
|
+
return id !== undefined && UUID.test(id) && page === "agents" && more.length === 0
|
|
96
|
+
? { name: "person-agents", id }
|
|
97
|
+
: NOT_FOUND;
|
|
98
|
+
}
|
|
99
|
+
if (!path.startsWith(`${PATHS.project}/`)) {
|
|
100
|
+
return NOT_FOUND;
|
|
101
|
+
}
|
|
102
|
+
const [project, page, third, ...rest] = path.slice(PATHS.project.length + 1).split("/");
|
|
103
|
+
if (project === undefined || !PROJECT_KEY.test(project)) {
|
|
104
|
+
return NOT_FOUND;
|
|
105
|
+
}
|
|
106
|
+
if (page === undefined) {
|
|
107
|
+
return { name: "board", project };
|
|
108
|
+
}
|
|
109
|
+
if (page === "docs") {
|
|
110
|
+
// The rest of the path is the document's, or a folder's, or nothing for the root.
|
|
111
|
+
const docPath = [third, ...rest].filter((segment) => segment !== undefined).join("/");
|
|
112
|
+
if (!isFolderPath(docPath)) {
|
|
113
|
+
return NOT_FOUND;
|
|
114
|
+
}
|
|
115
|
+
const view = docsViewOf(params, docPath);
|
|
116
|
+
return view === undefined ? NOT_FOUND : { name: "docs", project, path: docPath, view };
|
|
117
|
+
}
|
|
118
|
+
if (rest.length > 0) {
|
|
119
|
+
return NOT_FOUND;
|
|
120
|
+
}
|
|
121
|
+
if (page === "tasks") {
|
|
122
|
+
if (third === "new") {
|
|
123
|
+
return { name: "new-task", project };
|
|
124
|
+
}
|
|
125
|
+
if (third !== undefined && NUMBER.test(third)) {
|
|
126
|
+
return {
|
|
127
|
+
name: "task",
|
|
128
|
+
project,
|
|
129
|
+
number: Number(third),
|
|
130
|
+
id: undefined,
|
|
131
|
+
form: taskFormOf(params),
|
|
132
|
+
};
|
|
35
133
|
}
|
|
36
|
-
if (
|
|
37
|
-
return { name: "
|
|
134
|
+
if (third !== undefined && UUID.test(third)) {
|
|
135
|
+
return { name: "task", project, number: undefined, id: third, form: taskFormOf(params) };
|
|
38
136
|
}
|
|
39
|
-
|
|
40
|
-
|
|
137
|
+
return NOT_FOUND;
|
|
138
|
+
}
|
|
139
|
+
if (page === "decisions" && third !== undefined) {
|
|
140
|
+
if (third === "new") {
|
|
141
|
+
return { name: "new-decision", project };
|
|
41
142
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
143
|
+
return UUID.test(third) ? { name: "decision", project, id: third } : NOT_FOUND;
|
|
144
|
+
}
|
|
145
|
+
if (third !== undefined) {
|
|
146
|
+
return NOT_FOUND;
|
|
46
147
|
}
|
|
47
|
-
|
|
148
|
+
const found = PLAIN_PAGES.find((candidate) => candidate === page);
|
|
149
|
+
return found === undefined ? NOT_FOUND : { name: found, project };
|
|
150
|
+
}
|
|
151
|
+
/** Where a person approves an agent's connection by its code, or types one. */
|
|
152
|
+
export function connectHref(code) {
|
|
153
|
+
return code === undefined ? PATHS.connect : `${PATHS.connect}/${encodeURIComponent(code)}`;
|
|
154
|
+
}
|
|
155
|
+
/** Where an administrator sees one person's agents. */
|
|
156
|
+
export function personAgentsHref(personId) {
|
|
157
|
+
return `${PATHS.people}/${personId}/agents`;
|
|
48
158
|
}
|
|
49
159
|
/** Where a project's board is, or one of its pages. */
|
|
50
160
|
export function projectHref(key, page) {
|
|
51
161
|
const base = `${PATHS.project}/${key}`;
|
|
52
162
|
return page === undefined ? base : `${base}/${page}`;
|
|
53
163
|
}
|
|
54
|
-
|
|
55
|
-
|
|
164
|
+
/** Where a task is written: the form. */
|
|
165
|
+
export function newTaskHref(key) {
|
|
166
|
+
return `${PATHS.project}/${key}/tasks/new`;
|
|
167
|
+
}
|
|
168
|
+
/** Where a task is read by its number, or one of its forms is open. */
|
|
169
|
+
export function taskHref(key, number, form) {
|
|
170
|
+
const base = `${PATHS.project}/${key}/tasks/${number}`;
|
|
171
|
+
return form === undefined ? base : `${base}?${form}`;
|
|
172
|
+
}
|
|
173
|
+
/** Where a decision is raised from the Decisions page: the form. */
|
|
174
|
+
export function newDecisionHref(key) {
|
|
175
|
+
return `${PATHS.project}/${key}/decisions/new`;
|
|
176
|
+
}
|
|
177
|
+
/** Where one decision is read, and answered. */
|
|
178
|
+
export function decisionHref(key, id) {
|
|
179
|
+
return `${PATHS.project}/${key}/decisions/${id}`;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Where a document of a project is read, or a folder of them listed (`""` for the root), and
|
|
183
|
+
* how: a form, a version, or a search over all of them.
|
|
184
|
+
*/
|
|
185
|
+
export function docHref(key, path, view) {
|
|
186
|
+
const base = path === "" ? projectHref(key, "docs") : `${PATHS.project}/${key}/docs/${path}`;
|
|
187
|
+
if (view === undefined) {
|
|
188
|
+
return base;
|
|
189
|
+
}
|
|
190
|
+
switch (view.kind) {
|
|
191
|
+
case "search":
|
|
192
|
+
return `${base}?q=${encodeURIComponent(view.q)}`;
|
|
193
|
+
case "new":
|
|
194
|
+
return `${base}?new`;
|
|
195
|
+
case "edit":
|
|
196
|
+
return `${base}?edit`;
|
|
197
|
+
case "read":
|
|
198
|
+
return view.version === undefined ? base : `${base}?version=${view.version}`;
|
|
199
|
+
}
|
|
56
200
|
}
|
|
57
201
|
/** Why the last sign-in did not complete, as the page's URL says it, or nothing. */
|
|
58
202
|
export function signInFailureOf(search) {
|
package/dist/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAsB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
package/dist/routes.d.ts
CHANGED
|
@@ -11,9 +11,17 @@ export declare const REST_ROUTES: {
|
|
|
11
11
|
readonly events: "/api/v1/events";
|
|
12
12
|
/** The tokens of whoever asks: what their agents, scripts and consoles act as them with. */
|
|
13
13
|
readonly tokens: "/api/v1/tokens";
|
|
14
|
+
/** Connecting an agent (ADR-0011): begun as nobody, approved by a person, claimed by the command. */
|
|
15
|
+
readonly connect: "/api/v1/connect";
|
|
14
16
|
};
|
|
17
|
+
/** Where the command claims the token of a connection, with its secret. */
|
|
18
|
+
export declare const CLAIM_PATH: string;
|
|
19
|
+
/** The REST path of one connection, by its code, or of approving or denying it. */
|
|
20
|
+
export declare function connectPath(code: string, action?: "approve" | "deny"): string;
|
|
21
|
+
/** The REST path of a person's tokens, or of one of them: for an administrator. */
|
|
22
|
+
export declare function personTokensPath(personId: string, tokenId?: string): string;
|
|
15
23
|
/** What a project holds, each under `/api/v1/projects/<key>/<collection>`. */
|
|
16
|
-
export declare const PROJECT_COLLECTIONS: readonly ["tasks", "decisions", "runs", "files", "events", "skills", "members"];
|
|
24
|
+
export declare const PROJECT_COLLECTIONS: readonly ["tasks", "decisions", "runs", "files", "events", "skills", "members", "docs"];
|
|
17
25
|
export type ProjectCollection = (typeof PROJECT_COLLECTIONS)[number];
|
|
18
26
|
/** Where a browser signs in and out. Signing in is per provider: `/auth/<provider>/...`. */
|
|
19
27
|
export declare const AUTH_ROUTES: {
|
|
@@ -44,6 +52,8 @@ export declare function restPath(collection: "people" | "tokens" | "projects", i
|
|
|
44
52
|
/**
|
|
45
53
|
* The REST path of a project, of one of its collections, or of one item in it: the tasks of
|
|
46
54
|
* `web` are at `projectPath("web", "tasks")`, task 7 at `projectPath("web", "tasks", "7")`.
|
|
55
|
+
* A document's path is one segment of the URL, its slashes encoded: `projectPath("web",
|
|
56
|
+
* "docs", "guides/onboarding")` is `/api/v1/projects/web/docs/guides%2Fonboarding`.
|
|
47
57
|
*/
|
|
48
58
|
export declare function projectPath(key: string, collection?: ProjectCollection, id?: string): string;
|
|
49
59
|
//# sourceMappingURL=routes.d.ts.map
|
package/dist/routes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,mFAAmF;AACnF,eAAO,MAAM,WAAW;IACtB,sFAAsF;aACtF,EAAE,EAAE,YAAY;IAChB,+DAA+D;aAC/D,MAAM,EAAE,gBAAgB;IACxB,0EAA0E;aAC1E,QAAQ,EAAE,kBAAkB;IAC5B,4FAA4F;aAC5F,MAAM,EAAE,gBAAgB;IACxB,4FAA4F;aAC5F,MAAM,EAAE,gBAAgB;
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,mFAAmF;AACnF,eAAO,MAAM,WAAW;IACtB,sFAAsF;aACtF,EAAE,EAAE,YAAY;IAChB,+DAA+D;aAC/D,MAAM,EAAE,gBAAgB;IACxB,0EAA0E;aAC1E,QAAQ,EAAE,kBAAkB;IAC5B,4FAA4F;aAC5F,MAAM,EAAE,gBAAgB;IACxB,4FAA4F;aAC5F,MAAM,EAAE,gBAAgB;IACxB,qGAAqG;aACrG,OAAO,EAAE,iBAAiB;CAClB,CAAC;AAEX,2EAA2E;AAC3E,eAAO,MAAM,UAAU,QAAiC,CAAC;AAEzD,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAG7E;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3E;AAED,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,YAC9B,OAAO,EACP,WAAW,EACX,MAAM,EACN,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,MAAM,CACE,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,4FAA4F;AAC5F,eAAO,MAAM,WAAW;IACtB,mFAAmF;aACnF,KAAK,aAAa,WAAW,KAAG,MAAM;IACtC,oDAAoD;aACpD,QAAQ,aAAa,WAAW,KAAG,MAAM;IACzC,mDAAmD;aACnD,MAAM,EAAE,cAAc;CACd,CAAC;AAEX,+FAA+F;AAC/F,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C;;;;GAIG;AACH,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,gBAAgB,YAAI,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AACpF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,aAAa,CAExF;AAED,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED,uFAAuF;AACvF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,CAEvE;AAED,6FAA6F;AAC7F,wBAAgB,QAAQ,CAAC,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAEzF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ5F"}
|
package/dist/routes.js
CHANGED
|
@@ -10,7 +10,21 @@ export const REST_ROUTES = {
|
|
|
10
10
|
events: "/api/v1/events",
|
|
11
11
|
/** The tokens of whoever asks: what their agents, scripts and consoles act as them with. */
|
|
12
12
|
tokens: "/api/v1/tokens",
|
|
13
|
+
/** Connecting an agent (ADR-0011): begun as nobody, approved by a person, claimed by the command. */
|
|
14
|
+
connect: "/api/v1/connect",
|
|
13
15
|
};
|
|
16
|
+
/** Where the command claims the token of a connection, with its secret. */
|
|
17
|
+
export const CLAIM_PATH = `${REST_ROUTES.connect}/claim`;
|
|
18
|
+
/** The REST path of one connection, by its code, or of approving or denying it. */
|
|
19
|
+
export function connectPath(code, action) {
|
|
20
|
+
const base = `${REST_ROUTES.connect}/${encodeURIComponent(code)}`;
|
|
21
|
+
return action === undefined ? base : `${base}/${action}`;
|
|
22
|
+
}
|
|
23
|
+
/** The REST path of a person's tokens, or of one of them: for an administrator. */
|
|
24
|
+
export function personTokensPath(personId, tokenId) {
|
|
25
|
+
const base = `${restPath("people", personId)}/tokens`;
|
|
26
|
+
return tokenId === undefined ? base : `${base}/${encodeURIComponent(tokenId)}`;
|
|
27
|
+
}
|
|
14
28
|
/** What a project holds, each under `/api/v1/projects/<key>/<collection>`. */
|
|
15
29
|
export const PROJECT_COLLECTIONS = [
|
|
16
30
|
"tasks",
|
|
@@ -20,6 +34,7 @@ export const PROJECT_COLLECTIONS = [
|
|
|
20
34
|
"events",
|
|
21
35
|
"skills",
|
|
22
36
|
"members",
|
|
37
|
+
"docs",
|
|
23
38
|
];
|
|
24
39
|
/** Where a browser signs in and out. Signing in is per provider: `/auth/<provider>/...`. */
|
|
25
40
|
export const AUTH_ROUTES = {
|
|
@@ -57,6 +72,8 @@ export function restPath(collection, id) {
|
|
|
57
72
|
/**
|
|
58
73
|
* The REST path of a project, of one of its collections, or of one item in it: the tasks of
|
|
59
74
|
* `web` are at `projectPath("web", "tasks")`, task 7 at `projectPath("web", "tasks", "7")`.
|
|
75
|
+
* A document's path is one segment of the URL, its slashes encoded: `projectPath("web",
|
|
76
|
+
* "docs", "guides/onboarding")` is `/api/v1/projects/web/docs/guides%2Fonboarding`.
|
|
60
77
|
*/
|
|
61
78
|
export function projectPath(key, collection, id) {
|
|
62
79
|
const base = restPath("projects", key);
|
package/dist/routes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAKA,mFAAmF;AACnF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,sFAAsF;IACtF,EAAE,EAAE,YAAY;IAChB,+DAA+D;IAC/D,MAAM,EAAE,gBAAgB;IACxB,0EAA0E;IAC1E,QAAQ,EAAE,kBAAkB;IAC5B,4FAA4F;IAC5F,MAAM,EAAE,gBAAgB;IACxB,4FAA4F;IAC5F,MAAM,EAAE,gBAAgB;
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAKA,mFAAmF;AACnF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,sFAAsF;IACtF,EAAE,EAAE,YAAY;IAChB,+DAA+D;IAC/D,MAAM,EAAE,gBAAgB;IACxB,0EAA0E;IAC1E,QAAQ,EAAE,kBAAkB;IAC5B,4FAA4F;IAC5F,MAAM,EAAE,gBAAgB;IACxB,4FAA4F;IAC5F,MAAM,EAAE,gBAAgB;IACxB,qGAAqG;IACrG,OAAO,EAAE,iBAAiB;CAClB,CAAC;AAEX,2EAA2E;AAC3E,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,WAAW,CAAC,OAAO,QAAQ,CAAC;AAEzD,mFAAmF;AACnF,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,MAA2B;IACnE,MAAM,IAAI,GAAG,GAAG,WAAW,CAAC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;IAClE,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC;AAC3D,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,OAAgB;IACjE,MAAM,IAAI,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC;IACtD,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;AACjF,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO;IACP,WAAW;IACX,MAAM;IACN,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,MAAM;CACE,CAAC;AAIX,4FAA4F;AAC5F,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,mFAAmF;IACnF,KAAK,EAAE,CAAC,QAAqB,EAAU,EAAE,CAAC,SAAS,QAAQ,QAAQ;IACnE,oDAAoD;IACpD,QAAQ,EAAE,CAAC,QAAqB,EAAU,EAAE,CAAC,SAAS,QAAQ,WAAW;IACzE,mDAAmD;IACnD,MAAM,EAAE,cAAc;CACd,CAAC;AAEX,+FAA+F;AAC/F,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAE3C;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AACvC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAGpF,MAAM,UAAU,eAAe,CAAC,KAAgC;IAC9D,OAAQ,gBAAsC,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,QAAqB,EAAE,QAAgB;IAC/D,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,eAAe,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC7F,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAsB;IAC7D,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,IAAI,OAAO,EAAE,CAAC;AAC/E,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,QAAQ,CAAC,UAA4C,EAAE,EAAU;IAC/E,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,UAA8B,EAAE,EAAW;IAClF,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,EAAE,KAAK,SAAS;QACrB,CAAC,CAAC,GAAG,IAAI,IAAI,UAAU,EAAE;QACzB,CAAC,CAAC,GAAG,IAAI,IAAI,UAAU,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC"}
|