@toa.io/extensions.exposition 1.0.0-alpha.304 → 1.0.0-alpha.306
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/components/identity.basic/operations/info.js +6 -2
- package/components/identity.basic/source/info.ts +5 -1
- package/package.json +5 -5
- package/transpiled/Branch.d.ts +11 -1
- package/transpiled/Branch.js +3 -2
- package/transpiled/Branch.js.map +1 -1
- package/transpiled/Endpoint.d.ts +3 -1
- package/transpiled/Endpoint.js +14 -2
- package/transpiled/Endpoint.js.map +1 -1
- package/transpiled/Factory.d.ts +6 -1
- package/transpiled/Factory.js +4 -3
- package/transpiled/Factory.js.map +1 -1
- package/transpiled/Gateway.js +6 -1
- package/transpiled/Gateway.js.map +1 -1
- package/transpiled/HTTP/Context.d.ts +5 -0
- package/transpiled/HTTP/Context.js +5 -0
- package/transpiled/HTTP/Context.js.map +1 -1
- package/transpiled/HTTP/Server.d.ts +17 -0
- package/transpiled/HTTP/Server.js +31 -0
- package/transpiled/HTTP/Server.js.map +1 -1
- package/transpiled/Introspection.d.ts +5 -0
- package/transpiled/Introspection.js +1 -0
- package/transpiled/Introspection.js.map +1 -1
- package/transpiled/MCP/schema.d.ts +6 -2
- package/transpiled/MCP/schema.js +7 -3
- package/transpiled/MCP/schema.js.map +1 -1
- package/transpiled/MCP/tools.js +1 -1
- package/transpiled/MCP/tools.js.map +1 -1
- package/transpiled/Remotes.d.ts +6 -0
- package/transpiled/Remotes.js +11 -5
- package/transpiled/Remotes.js.map +1 -1
- package/transpiled/directives/io/IO.js +5 -1
- package/transpiled/directives/io/IO.js.map +1 -1
- package/transpiled/directives/io/Readonly.d.ts +14 -0
- package/transpiled/directives/io/Readonly.js +20 -0
- package/transpiled/directives/io/Readonly.js.map +1 -0
- package/transpiled/service.js +44 -19
- package/transpiled/service.js.map +1 -1
- package/ui/dist/_app/immutable/chunks/BWxWooeV.js +1 -0
- package/ui/dist/_app/immutable/chunks/{B_XBOx9b.js → DEWcyJIO.js} +2 -2
- package/ui/dist/_app/immutable/chunks/{D9-CL3SX.js → DIJj33i_.js} +2 -2
- package/ui/dist/_app/immutable/chunks/{BI21DxGX.js → Dd_uoeO5.js} +1 -1
- package/ui/dist/_app/immutable/entry/{app.BG2uapp5.js → app.Ca0C0mib.js} +2 -2
- package/ui/dist/_app/immutable/entry/start.CZ-f9DlO.js +1 -0
- package/ui/dist/_app/immutable/nodes/{0.CAhVptPP.js → 0.J0nDYoBH.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{1.CymYf6vY.js → 1.BJWPzZCm.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{2.DtwEKRzb.js → 2.BoTc0hYm.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{3.BgfGYNeS.js → 3.C5wM5V-u.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{4.B7W24tJ1.js → 4.C_4kq_Ey.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{5.FCfJU5jO.js → 5.CdpEbADK.js} +1 -1
- package/ui/dist/_app/immutable/nodes/{6.B9oqMcPQ.js → 6.BXL9uT_h.js} +1 -1
- package/ui/dist/_app/version.json +1 -1
- package/ui/dist/index.html +10 -10
- package/ui/dist/_app/immutable/chunks/DfeVAkjY.js +0 -1
- package/ui/dist/_app/immutable/entry/start.Bnttjc6A.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../source/MCP/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,GAAG,EAA4B,MAAM,4BAA4B,CAAA;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAK7C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAU,EAAE,OAAqB;IAC1D;;;;OAIG;IACH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,KAAK,GAAW,EAAE,CAAA;IAExB,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,sFAAsF;QACtF,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,SAAQ;QAE3C,IAAI,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,SAAS,CAAC,IAAU;IACjC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,KAAK,GAAgB,EAAE,CAAA;QAE7B,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAc,MAAM,CAAC,CAAC;gBAAE,SAAQ;YAE7E,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YAElC,+EAA+E;YAC/E,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAQ;YAE5B,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;YAClC,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAEnD,iEAAiE;YACjE,IAAI,aAAa,KAAK,IAAI;gBAAE,SAAQ;YAEpC,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,CAAA;YAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;YACpC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../source/MCP/tools.ts"],"names":[],"mappings":"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"}
|
package/transpiled/Remotes.d.ts
CHANGED
|
@@ -4,6 +4,12 @@ export declare class Remotes extends Connector {
|
|
|
4
4
|
private readonly host;
|
|
5
5
|
private readonly cache;
|
|
6
6
|
constructor(host: Host);
|
|
7
|
+
/**
|
|
8
|
+
* @param version the component's, as the branch that announced the routes carries it. What it
|
|
9
|
+
* provides is asked of that version, so the contract a caller is held to is the one the
|
|
10
|
+
* routes belong to. Absent — a directive calling a component on its own behalf — the
|
|
11
|
+
* process's map says which version, as it does for any other caller.
|
|
12
|
+
*/
|
|
7
13
|
discover(namespace: string, name: string, version?: string): Promise<Remote>;
|
|
8
14
|
private locate;
|
|
9
15
|
}
|
package/transpiled/Remotes.js
CHANGED
|
@@ -6,15 +6,21 @@ export class Remotes extends Connector {
|
|
|
6
6
|
super();
|
|
7
7
|
this.host = host;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* @param version the component's, as the branch that announced the routes carries it. What it
|
|
11
|
+
* provides is asked of that version, so the contract a caller is held to is the one the
|
|
12
|
+
* routes belong to. Absent — a directive calling a component on its own behalf — the
|
|
13
|
+
* process's map says which version, as it does for any other caller.
|
|
14
|
+
*/
|
|
15
|
+
async discover(namespace, name, version) {
|
|
10
16
|
const locator = new Locator(name, namespace);
|
|
11
|
-
const key = locator.id + ':' + version;
|
|
12
|
-
this.cache[key] ??= this.locate(locator);
|
|
17
|
+
const key = locator.id + ':' + (version ?? 'local');
|
|
18
|
+
this.cache[key] ??= this.locate(locator, version);
|
|
13
19
|
return this.cache[key];
|
|
14
20
|
}
|
|
15
|
-
async locate(locator) {
|
|
21
|
+
async locate(locator, version) {
|
|
16
22
|
// the gateway is the origin of every call it forwards
|
|
17
|
-
const remote = await this.host.remote(locator, SOURCE);
|
|
23
|
+
const remote = await this.host.remote(locator, SOURCE, version);
|
|
18
24
|
this.depends(remote);
|
|
19
25
|
await remote.connect();
|
|
20
26
|
return remote;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Remotes.js","sourceRoot":"","sources":["../source/Remotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAe,MAAM,cAAc,CAAA;AAI9D,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACnB,IAAI,CAAM;IACV,KAAK,GAAoC,EAAE,CAAA;IAE5D,YAAmB,IAAU;QAC3B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"Remotes.js","sourceRoot":"","sources":["../source/Remotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAe,MAAM,cAAc,CAAA;AAI9D,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACnB,IAAI,CAAM;IACV,KAAK,GAAoC,EAAE,CAAA;IAE5D,YAAmB,IAAU;QAC3B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,QAAQ,CACnB,SAAiB,EACjB,IAAY,EACZ,OAAgB;QAEhB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,CAAA;QAEnD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAEjD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,OAAgB,EAAE,OAAgB;QACrD,sDAAsD;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAE/D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAEpB,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,MAAM,MAAM,GAAW,EAAE,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -3,6 +3,7 @@ import { Output } from './Output.js';
|
|
|
3
3
|
import { Input } from './Input.js';
|
|
4
4
|
import { Throttle } from './Throttle.js';
|
|
5
5
|
import { Status } from './Status.js';
|
|
6
|
+
import { Readonly } from './Readonly.js';
|
|
6
7
|
import { Sync } from './lib/throttle/index.js';
|
|
7
8
|
import { ATOM_GROUP } from '@toa.io/definitions/extensions.exposition';
|
|
8
9
|
export class IO {
|
|
@@ -41,6 +42,8 @@ export class IO {
|
|
|
41
42
|
explain(directives, introspection) {
|
|
42
43
|
let restricted = false;
|
|
43
44
|
for (const directive of directives) {
|
|
45
|
+
if (directive instanceof Readonly)
|
|
46
|
+
introspection.readonly = directive.value;
|
|
44
47
|
if (directive instanceof Input)
|
|
45
48
|
introspection.input = restrict(introspection.input, directive.allowed);
|
|
46
49
|
if (!(directive instanceof Output))
|
|
@@ -70,7 +73,8 @@ const constructors = {
|
|
|
70
73
|
input: Input,
|
|
71
74
|
output: Output,
|
|
72
75
|
status: Status,
|
|
73
|
-
throttle: Throttle
|
|
76
|
+
throttle: Throttle,
|
|
77
|
+
readonly: Readonly
|
|
74
78
|
};
|
|
75
79
|
const DENIAL = new Output([]);
|
|
76
80
|
//# sourceMappingURL=IO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IO.js","sourceRoot":"","sources":["../../../source/directives/io/IO.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IO.js","sourceRoot":"","sources":["../../../source/directives/io/IO.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AAM9C,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAA;AAGtE,MAAM,OAAO,EAAE;IACG,IAAI,GAAG,IAAI,CAAA;IACX,SAAS,GAAG,IAAI,CAAA;IAExB,IAAI,CAAkB;IAE9B,uFAAuF;IAC/E,IAAI,GAAgB,IAAI,CAAA;IAEzB,KAAK,CAAC,IAAqB;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,sCAAsC;IAC/B,MAAM,CACX,IAAY,EACZ,KAAc,EACd,OAAgB,EAChB,KAAa;QAEb,IAAI,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,CAAA;QAE9D,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAEpC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAEzB,IAAI,IAAI,KAAK,UAAU;YAAE,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;QAE3E,OAAO,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,IAAK,EAAE,KAAK,CAAC,CAAA;IAChD,CAAC;IAEM,OAAO,CACZ,UAAuB,EACvB,OAAqB,EACrB,UAAuB;QAEvB,IAAI,UAAU,GAAG,KAAK,CAAA;QAEtB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,UAAU,KAAK,SAAS,YAAY,MAAM,CAAA;YAE1C,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACxC,CAAC;QAED,IAAI,CAAC,UAAU;YAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAEpD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,UAAuB,EAAE,aAA4B;QAClE,IAAI,UAAU,GAAG,KAAK,CAAA;QAEtB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,SAAS,YAAY,QAAQ;gBAAE,aAAa,CAAC,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAA;YAE3E,IAAI,SAAS,YAAY,KAAK;gBAC5B,aAAa,CAAC,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;YAExE,IAAI,CAAC,CAAC,SAAS,YAAY,MAAM,CAAC;gBAAE,SAAQ;YAE5C,UAAU,GAAG,IAAI,CAAA;YAEjB,IAAI,CAAC,SAAS,CAAC,QAAQ;gBACrB,aAAa,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,CAAC,UAAU;YAAE,OAAO,aAAa,CAAC,MAAM,CAAA;QAE5C,OAAO,aAAa,CAAA;IACtB,CAAC;IAEM,MAAM,CACX,UAAuB,EACvB,OAAqB,EACrB,MAA4B;QAE5B,KAAK,MAAM,SAAS,IAAI,UAAU;YAAE,SAAS,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACzE,CAAC;IAED;;;;OAIG;IACI,OAAO;QACZ,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAA;IACtB,CAAC;CACF;AAED,MAAM,YAAY,GAAgC;IAChD,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;CACnB,CAAA;AAED,MAAM,MAAM,GAAc,IAAI,MAAM,CAAC,EAAE,CAAC,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Directive } from './Directive.ts';
|
|
2
|
+
import type { Input as Context } from '../../io.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Whether the call this method makes may only read, which is what `GET` and `HEAD` are taken to
|
|
5
|
+
* mean. `false` lets a safe method reach an operation that may change state — a `GET` that opens a
|
|
6
|
+
* stream — and `true` holds any other method to reading.
|
|
7
|
+
*/
|
|
8
|
+
export declare class Readonly implements Directive {
|
|
9
|
+
/** what the route declared, which is what describes the method as well as what it does */
|
|
10
|
+
readonly value: boolean;
|
|
11
|
+
constructor(value: unknown);
|
|
12
|
+
static validate(value: unknown): asserts value is boolean;
|
|
13
|
+
precall(context: Context): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether the call this method makes may only read, which is what `GET` and `HEAD` are taken to
|
|
3
|
+
* mean. `false` lets a safe method reach an operation that may change state — a `GET` that opens a
|
|
4
|
+
* stream — and `true` holds any other method to reading.
|
|
5
|
+
*/
|
|
6
|
+
export class Readonly {
|
|
7
|
+
/** what the route declared, which is what describes the method as well as what it does */
|
|
8
|
+
value;
|
|
9
|
+
constructor(value) {
|
|
10
|
+
this.value = value;
|
|
11
|
+
}
|
|
12
|
+
static validate(value) {
|
|
13
|
+
if (typeof value !== 'boolean')
|
|
14
|
+
throw new Error('`io:readonly` must be a boolean');
|
|
15
|
+
}
|
|
16
|
+
precall(context) {
|
|
17
|
+
context.readonly = this.value;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=Readonly.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Readonly.js","sourceRoot":"","sources":["../../../source/directives/io/Readonly.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,OAAO,QAAQ;IACnB,0FAA0F;IAC1E,KAAK,CAAS;IAE9B,YAAmB,KAAc;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAgB,CAAA;IAC/B,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAc;QACnC,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACpF,CAAC;IAEM,OAAO,CAAC,OAAgB;QAC7B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAA;IAC/B,CAAC;CACF"}
|
package/transpiled/service.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { console, metrics, traces } from 'openspan';
|
|
1
|
+
import { console, logs, metrics, traces } from 'openspan';
|
|
2
2
|
import { Gateway } from './Gateway.js';
|
|
3
3
|
import { Remotes } from './Remotes.js';
|
|
4
4
|
import { Tree } from './RTD/index.js';
|
|
@@ -23,24 +23,33 @@ export async function service(host) {
|
|
|
23
23
|
throw new Error('TOA_EXPOSITION_PROPERTIES is undefined');
|
|
24
24
|
configureLogs();
|
|
25
25
|
const options = JSON.parse(properties);
|
|
26
|
-
const broadcast = await host.broadcast(CHANNEL);
|
|
27
26
|
const server = http.Server.create({ ...options });
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
27
|
+
/*
|
|
28
|
+
* The server keeps its port through a halt and answers `503` on it; everything it serves
|
|
29
|
+
* with is behind the gate, taken down and built again. A refused connection is not an
|
|
30
|
+
* answer, and the answer has to be the application's.
|
|
31
|
+
*/
|
|
32
|
+
const gate = host.gate(async () => {
|
|
33
|
+
const broadcast = await host.broadcast(CHANNEL);
|
|
34
|
+
const remotes = new Remotes(host);
|
|
35
|
+
const node = root.resolve();
|
|
36
|
+
const methods = new EndpointsFactory(remotes);
|
|
37
|
+
const directives = new DirectivesFactory(families, remotes, host, options);
|
|
38
|
+
const interception = new Interception(interceptors, options);
|
|
39
|
+
const tree = new Tree(node, methods, directives);
|
|
40
|
+
const composition = new Composition(host);
|
|
41
|
+
const dispatcher = options.rpc === undefined ? null : new Dispatcher(options.rpc);
|
|
42
|
+
const mcp = options.mcp === undefined ? null : new Model(options.mcp, tree);
|
|
43
|
+
const gateway = new Gateway(broadcast, tree, interception, directives, dispatcher, mcp);
|
|
44
|
+
gateway.depends(remotes);
|
|
45
|
+
gateway.depends(composition);
|
|
46
|
+
// what the directives meter through; one atom per process, connected once
|
|
47
|
+
gateway.depends(host.atom(ATOM_GROUP));
|
|
48
|
+
server.attach(gateway.process.bind(gateway));
|
|
49
|
+
return gateway;
|
|
50
|
+
});
|
|
51
|
+
server.gated(gate);
|
|
52
|
+
server.depends(gate);
|
|
44
53
|
return server;
|
|
45
54
|
}
|
|
46
55
|
const LOGS_PREFIX = 'TOA_TELEMETRY_LOGS';
|
|
@@ -49,8 +58,11 @@ const METRICS_ENV = 'TOA_TELEMETRY_METRICS';
|
|
|
49
58
|
function configureLogs() {
|
|
50
59
|
const globEnv = environment.get(LOGS_PREFIX);
|
|
51
60
|
const level = environment.get('TOA_DEV') === '1' ? 'trace' : 'info';
|
|
52
|
-
const options = globEnv === undefined
|
|
61
|
+
const options = globEnv === undefined
|
|
62
|
+
? { level }
|
|
63
|
+
: JSON.parse(globEnv);
|
|
53
64
|
console.configure({ level: options.level ?? level });
|
|
65
|
+
logs({ exporters: records(options.exporters) });
|
|
54
66
|
const tracesEnv = environment.get(TRACES_ENV);
|
|
55
67
|
const tracing = tracesEnv === undefined ? development() : JSON.parse(tracesEnv);
|
|
56
68
|
// `openspan` is not Toa's and reads the environment, which no longer holds the context by
|
|
@@ -60,6 +72,19 @@ function configureLogs() {
|
|
|
60
72
|
traces(tracing);
|
|
61
73
|
metrics(measurements());
|
|
62
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* What the records say they came from. The gateway serves several components and is none of
|
|
77
|
+
* them, so it names itself, as it does for the series.
|
|
78
|
+
*/
|
|
79
|
+
function records(exporters) {
|
|
80
|
+
if (exporters?.otlp !== undefined) {
|
|
81
|
+
const resource = (exporters.otlp.resource ??= {});
|
|
82
|
+
resource['service.name'] ??= 'exposition';
|
|
83
|
+
resource['service.namespace'] ??= environment.get('TOA_CONTEXT');
|
|
84
|
+
resource['deployment.environment.name'] ??= environment.get('TOA_ENV');
|
|
85
|
+
}
|
|
86
|
+
return exporters;
|
|
87
|
+
}
|
|
63
88
|
/**
|
|
64
89
|
* The gateway measures what it serves, and what tells two products apart in one backend is the
|
|
65
90
|
* resource rather than the metric name.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../source/service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,EACP,MAAM,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../source/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{H as e,U as t,V as n,W as r,it as i,n as a,ot as o,t as s,vt as c}from"./BVDJTrf4.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function _(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function te(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var ne=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(ie(e)),ne(e,t));var v=new Map;function y(e,t){let n=ie(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=te(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function re(e,t,n){if(v.size>0){let t=ie(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function ie(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${_(...e)}"]`}return n}var ae=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,oe=/^\/\((?:[^)]+)\)$/;function se(e){let t=[];return{pattern:e===`/`||oe.test(e)?/^\/$/:RegExp(`^${le(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return de(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return de(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=ae.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return de(e)}).join(``)}).join(``)}/?$`),params:t}}function ce(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function le(e){return e.slice(1).split(`/`).filter(ce)}function ue(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function de(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}var fe=/\[(\[)?(\.\.\.)?(\w+?)(?:=(\w+))?\]\]?/g;function pe(e,t){let n=le(e),r=e!=`/`&&e.endsWith(`/`);return`/`+n.map(n=>n.replace(fe,(n,r,i,a)=>{let o=t[a];if(!o){if(r||i&&o!==void 0)return``;throw Error(`Missing parameter '${a}' in route ${e}`)}if(o.startsWith(`/`)||o.endsWith(`/`))throw Error(`Parameter '${a}' in route ${e} cannot start or end with a slash -- this would cause an invalid route like foo//bar`);return o})).filter(Boolean).join(`/`)+(r?`/`:``)}function me({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=se(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ue(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function he(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function ge(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var b=globalThis.__sveltekit_h1y5a?.base??`/.discovery`,_e=globalThis.__sveltekit_h1y5a?.assets??b??``,ve=``;function ye(...e){if(!e[0].startsWith(`/`))throw Error(`Cannot use \`resolve(...)\` with a non-absolute pathname or route ID (got "${e[0]}"). \`resolve\` is only for internal pathnames and route IDs; external URLs should be used directly.`);return b+ve+pe(e[0],e[1])}var be=`1789426861210`,xe=`sveltekit:snapshot`,Se=`sveltekit:scroll`,Ce=`sveltekit:states`,we=`sveltekit:pageurl`,x=`sveltekit:history`,S=`sveltekit:navigation`,C={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Te=location.origin;function Ee(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function w(){return{x:pageXOffset,y:pageYOffset}}function T(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var De={...C,"":C.hover};function Oe(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function ke(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Oe(e)}}function Ae(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||D(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===Te&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function E(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=T(s,`preload-code`)),i===null&&(i=T(s,`preload-data`)),t===null&&(t=T(s,`keepfocus`)),n===null&&(n=T(s,`noscroll`)),a===null&&(a=T(s,`reload`)),o===null&&(o=T(s,`replacestate`)),s=Oe(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:De[r??`off`],preload_data:De[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function je(e){let t=c(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function a(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:a}}var Me={v:g};function Ne(){let{set:e,subscribe:t}=c(!1),n;async function r(){clearTimeout(n);try{let t=await fetch(`${_e}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==be;return r&&(e(!0),Me.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:r}}function D(e,t,n){return e.origin!==Te||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Pe(e){}var Fe=2**32-1-1,Ie=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function Le(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===Ie}function Re(e){return Object.prototype.toString.call(e).slice(8,-1)}function ze(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Be(e){return!(!Number.isInteger(e)||e<0||e>Fe)}function Ve(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Be(+e)}function He(e){for(var t=e.length-1;t>=0&&!Ve(e[t]);t--);return t+1}function Ue(e){let t=Object.keys(e);return t.length=He(t),t}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var We=Object.freeze({kind:`not-plain`}),Ge=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>Re(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Ue(e),shapeOf:e=>Le(e)?ze(e).length>0?Ge:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:We,get:(e,t)=>e[t]}),Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[Fe]=void 0,delete t[Fe],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});var Ke=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Ke],[...new Set([...Ke])];function qe(e){return e.filter(e=>e!=null)}function O(e,t){return e+`/`+t}function Je(e){return e instanceof l||e instanceof d?e.status:500}function Ye(e){return e instanceof d?e.text:`Internal Error`}var k,A,Xe,Ze=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),Qe=`a:`;Ze?(k={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Qe)},A={current:null},Xe={current:!1}):(k=new class{#e=o({});get data(){return n(this.#e)}set data(e){i(this.#e,e)}#t=o(null);get form(){return n(this.#t)}set form(e){i(this.#t,e)}#n=o(null);get error(){return n(this.#n)}set error(e){i(this.#n,e)}#r=o({});get params(){return n(this.#r)}set params(e){i(this.#r,e)}#i=o({id:null});get route(){return n(this.#i)}set route(e){i(this.#i,e)}#a=o({});get state(){return n(this.#a)}set state(e){i(this.#a,e)}#o=o(-1);get status(){return n(this.#o)}set status(e){i(this.#o,e)}#s=o(new URL(Qe));get url(){return n(this.#s)}set url(e){i(this.#s,e)}},A=new class{#e=o(null);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Xe=new class{#e=o(!1);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Me.v=()=>Xe.current=!0);function $e(e){Object.assign(k,e)}var et={spanContext(){return tt},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},tt={traceId:``,spanId:``,traceFlags:0},{onMount:nt,tick:rt}=s,it=r??(e=>e()),at=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),j=null,M=he(`sveltekit:scroll`)??{},N=he(`sveltekit:snapshot`)??{},P={url:je({}),page:je({}),navigating:c(null),updated:Ne()};function ot(e){M[e]=w()}function st(e,t){let n=e+1;for(;M[n];)delete M[n],n+=1;for(n=t+1;N[n];)delete N[n],n+=1}function F(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function ct(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(b||`/`);e&&await e.update()}}var lt,ut,I,L,dt,R,ft={},pt={},mt=[],ht=[],z=null;function B(){z?.fork?.then(e=>e?.discard()),z=null,Q={element:void 0,href:void 0}}var V=new Map,gt=new Set,_t=new Set,H=new Set,U={branch:[],error:null,url:null,nav:null},vt=!1,W=!1,yt=!0,G=!1,K=!1,bt=!1,xt=!1,St,q,J,Y,X=new Set,Ct=new Map,wt=new Map;async function Tt(e,t,n){if(globalThis.__sveltekit_h1y5a.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_h1y5a.data;for(let t in e)ft[t]=e[t];for(let e in n)ft[e]=n[e];for(let e in r)ft[e]=r[e];for(let e in t)pt[e]=t[e]}document.URL!==location.href&&(location.href=location.href),R=e,await e.hooks.init?.(),lt=me(e),L=document.documentElement,dt=t,ut=e.nodes[0],I=e.nodes[1],ut(),I(),q=history.state?.[x],J=history.state?.[S],q||(q=J=Date.now(),history.replaceState({...history.state,[x]:q,[S]:J},``));let r=M[q];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await nn(dt,n)):(await Z({type:`enter`,url:Ee(R.hash?ln(new URL(location.href)):location.href),replace_state:!0}),i()),tn()}function Et(){mt.length=0,xt=!1}function Dt(e){ht.some(e=>e?.snapshot)&&(N[e]=ht.map(e=>e?.snapshot?.capture()))}function Ot(e){N[e]?.forEach((e,t)=>{ht[t]?.snapshot?.restore(e)})}function kt(){ot(q),ge(Se,M),Dt(J),ge(xe,N)}async function At(e,n,r,i){let a,o;n.invalidateAll&&B(),await Z({type:`goto`,url:Ee(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){xt=!0,a=new Set;for(let[e,t]of Ct)for(let[n,r]of t)r.resource?.reset(),a.add(O(e,n));o=new Set;for(let[e,t]of wt)for(let n of t.keys())o.add(O(e,n))}n.invalidate&&n.invalidate.forEach($t)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of Ct)for(let[n,{resource:r}]of t)a?.has(O(e,n))&&r.start();for(let[e,t]of wt)for(let[n,{resource:r}]of t)o?.has(O(e,n))&&r.reconnect()})}async function jt(e){if(e.id!==z?.id){B();let t={};X.add(t),z={id:e.id,token:t,promise:Vt({...e,preload:t}).then(e=>(X.delete(t),e.type===`loaded`&&e.state.error&&B(),e)),fork:null}}return z.promise}async function Mt(e){let t=(await Gt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Nt(e,t,n){let r={params:U.params,route:{id:U.route?.id??null},url:new URL(location.href)};if(U={...e.state,nav:r},$e(e.props.page),St=new R.root({target:t,props:{...e.props,stores:P,components:ht},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:M[q]??w()},willUnload:!1,type:`enter`,complete:Promise.resolve()};H.forEach(t=>t(e))}Ot(J),W=!0}async function Pt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(b&&(e.pathname===b||e.pathname===b+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:qe(n).map(e=>e.node.component),page:cn(k)}};s!==void 0&&(l.props.form=s);let u={},d=!k,p=0;for(let e=0;e<Math.max(n.length,U.branch.length);e+=1){let t=n[e],r=U.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!U.url||e.href!==U.url.href||U.error!==a||s!==void 0&&s!==k.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:k.data}),l}async function Ft({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:et,current:et},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},R.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=It(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function It(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:W?re(r,i.href,t):y(r,t)}}function Lt(e,t,n,r,i,a){if(xt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==U.params[e])return!0;for(let e of i.dependencies)if(mt.some(t=>t(new URL(e))))return!0;return!1}function Rt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function zt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Bt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:cn(k),constructors:[]}}}async function Vt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(z?.id===e)return X.delete(z.token),z.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(g)),d.forEach(e=>e?.[1]().catch(g));let f=U.url?e!==qt(U.url):!1,p=U.route?i.id!==U.route.id:!1,ee=zt(U.url,n),m=!1,h=d.map(async(e,t)=>{if(!e)return;let a=U.branch[t];return e[1]===a?.loader&&!Lt(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,Ft({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await h[n])?.data);return e},server_data_node:Rt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of h)e.catch(g);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await h[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&&X.has(a))return Bt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Je(t),c;if(t instanceof l)c=t.body;else{if(await P.updated.check())return await ct(),await F(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Ht(e,_,o);return d?Pt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Yt(n,{id:i.id},c,s)}else _.push(void 0);return Pt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ht(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ut({status:e,error:t,url:n,route:r}){let i={};try{return Pt({url:n,params:i,branch:[await Ft({loader:ut,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:Rt(null)}),{node:await I(),loader:I,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await At(new URL(t.location,location.href),{},0);return}let a=await R.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Wt(e){let t=e.href;if(V.has(t))return V.get(t);let n;try{let r=(async()=>{let t=await R.hooks.reroute({url:new URL(e),fetch:async(t,n)=>It(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);R.hash?n.hash=t:n.pathname=t,t=n}return t})();V.set(t,r),n=await r}catch{V.delete(t);return}return n}async function Gt(e,t){if(e&&!D(e,b,R.hash)){let n=await Wt(e);if(!n)return;let r=Kt(n);for(let n of lt){let i=n.exec(r);if(i)return{id:qt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function Kt(e){return p(R.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(b.length))||`/`}function qt(e){return(R.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Jt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=sn(U,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return G||gt.forEach(e=>e(c)),o?null:s}async function Z({type:n,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=g,block:p=g,event:ee}){let m=Y;Y=u;let h=await Gt(r,!1),_=n===`enter`?sn(U,h,r,n):Jt({url:r,type:n,delta:i?.delta,intent:h,scroll:i?.scroll,event:ee});if(!_){p(),Y===u&&(Y=m);return}let te=q,ne=J;f(),G=!0,W&&_.navigation.type!==`enter`&&P.navigating.set(A.current=_.navigation);let v=h&&await Vt(h);if(!v){if(D(r,b,R.hash))return await F(r,s);v=await Yt(r,{id:null},await $(new d(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=h?.url||r,Y!==u){_.reject(Error(`navigation aborted`));return}if(!v)return;if(v.type===`redirect`){if(l<20){await Z({type:n,url:new URL(v.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(v=await Ut({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}}),!v)return}else if(v.props.page.status>=400&&await P.updated.check())return await ct(),await F(r,s);if(Et(),ot(te),Dt(ne),v.props.page.url.pathname!==r.pathname&&(r.pathname=v.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[x]:q+=e,[S]:J+=e,[Ce]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||st(q,J)}let y=h&&z?.id===h.id?z.fork:null;z?.fork&&!y?B():(z=null,Q={element:void 0,href:void 0}),v.props.page.state=c;let re;if(W){let t=(await Promise.all(Array.from(_t,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{H.delete(e)})}t.push(e),t.forEach(e=>{H.add(e)})}let n=_.navigation.to;U={...v.state,nav:{params:n.params,route:n.route,url:n.url}},v.props.page&&(v.props.page.url=r),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=y&&await y;i?re=i.commit():(j=null,St.$set(v.props),j&&Object.assign(v.props.page,j),$e(v.props.page),re=e?.()),bt=!0}else await Nt(v,dt,!1);let{activeElement:ie}=document;if(await re,await t(),await t(),Y!==u){_.reject(Error(`navigation aborted`));return}v.props.page&&j&&Object.assign(v.props.page,j);let ae=null;if(yt){let e=i?i.scroll:o?w():null;e?scrollTo(e.x,e.y):(ae=r.hash&&document.getElementById(un(r)))?ae.scrollIntoView():scrollTo(0,0)}let oe=document.activeElement!==ie&&document.activeElement!==document.body;!a&&!oe&&on(r,!ae),yt=!0,G=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=w()),H.forEach(e=>e(_.navigation)),n===`popstate`&&Ot(J),P.navigating.set(A.current=null)}async function Yt(e,t,n,r,i){return e.origin===Te&&e.pathname===location.pathname&&!vt?await Ut({status:r,error:n,url:e,route:t}):await F(e,i)}var Q={element:void 0,href:void 0};function Xt(){let e,t;L.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,C.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],C.tap)}L.addEventListener(`mousedown`,n),L.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Mt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=ke(e,L),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=Ae(r,b,R.hash);if(o||s)return;let c=E(r),l=a&&qt(U.url)===qt(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=C.tap;let e=await Gt(a,!1);if(!e)return;jt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Mt(a))}}function a(){r.disconnect();for(let e of L.querySelectorAll(`a`)){let{url:t,external:n,download:i}=Ae(e,b,R.hash);if(n||i)continue;let a=E(e);a.reload||(a.preload_code===C.viewport&&r.observe(e),a.preload_code===C.eager&&Mt(t))}}H.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=Je(e),r=Ye(e);return R.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Zt(e,t){nt(()=>(e.add(t),()=>{e.delete(t)}))}function Qt(e){Zt(_t,e)}function $t(e){if(typeof e==`function`)mt.push(e);else{let{href:t}=new URL(e,location.href);mt.push(e=>e.href===t)}}function en(e,t){let n={[x]:q,[S]:J,[we]:k.url.href,[Ce]:t};history.replaceState(n,``,Ee(e)),k.state=t,St.$set({page:it(()=>cn(k))})}function tn(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(kt(),!G){let e=sn(U,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};gt.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&kt()}),navigator.connection?.saveData||Xt(),L.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=ke(t.composedPath()[0],L);if(!n)return;let{url:r,external:i,target:a,download:o}=Ae(n,b,R.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=E(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(R.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Jt({url:r,type:`link`,event:t})?G=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=U.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(K=!0,ot(q),e(r),!s.replace_state)return;K=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),L.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(D(r,b,!1))return;let i=e.target,a=E(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!an){if(t.state?.[`sveltekit:history`]){let n=t.state[x];if(Y={},n===q)return;let r=M[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[S],s=U.url?m(location)===m(U.url):!1;if(o===J&&(bt||s)){i!==k.state&&(k.state=i),e(a),M[q]=w(),r&&scrollTo(r.x,r.y),q=n;return}let c=n-q;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{q=n,J=o},block:()=>{history.go(-c)},nav_token:Y,event:t})}else K||(e(new URL(location.href)),R.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{K&&(K=!1,history.replaceState({...history.state,[x]:++q,[S]:J},``,location.href))});for(let e of document.querySelectorAll(`link`))at.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&P.navigating.set(A.current=null)});function e(e){U.url=k.url=e,P.page.set(cn(k)),P.page.notify()}}async function nn(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){vt=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await Gt(l,!1)||{}),d=lt.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=rn(r.uses)),Ft({loader:R.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:Rt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Pt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await F(new URL(t.location,location.href));f=await Ut({status:Je(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Nt(f,e,p))}function rn(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var an=!1;function on(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=un(e);if(n&&document.getElementById(n)){let{x:r,y:i}=w();setTimeout(()=>{let a=history.state;an=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),an=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function sn(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:w()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function cn(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function ln(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function un(e){let t;if(R.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{k as a,ye as c,A as i,en as n,Pe as o,Tt as r,be as s,Qt as t};
|