@valancex/valance 0.7.1 → 0.8.0
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/dist/errors.d.ts +5 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +8 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -1
- package/dist/index.js.map +1 -1
- package/dist/web-manifest.d.ts +4 -1
- package/dist/web-manifest.d.ts.map +1 -1
- package/dist/web-manifest.js +3 -1
- package/dist/web-manifest.js.map +1 -1
- package/dist/web-plugin.d.ts +131 -0
- package/dist/web-plugin.d.ts.map +1 -0
- package/dist/web-plugin.js +149 -0
- package/dist/web-plugin.js.map +1 -0
- package/dist/web-server.d.ts +12 -3
- package/dist/web-server.d.ts.map +1 -1
- package/dist/web-server.js +11 -5
- package/dist/web-server.js.map +1 -1
- package/dist/web.d.ts +24 -2
- package/dist/web.d.ts.map +1 -1
- package/dist/web.js +61 -21
- package/dist/web.js.map +1 -1
- package/package.json +6 -1
package/dist/errors.d.ts
CHANGED
|
@@ -11,7 +11,11 @@ export type ValanceErrorCode =
|
|
|
11
11
|
/** A render names a view the definition doesn't have. A mistake in the definition. */
|
|
12
12
|
| "unknown-view"
|
|
13
13
|
/** A target reported an interaction before anything was drawn. A mistake in the target. */
|
|
14
|
-
| "target-not-drawn"
|
|
14
|
+
| "target-not-drawn"
|
|
15
|
+
/** Two parties declared the same thing that can be declared only once (a tag, the URL policy). A mistake in the composition. */
|
|
16
|
+
| "plugin-conflict"
|
|
17
|
+
/** A head tag carries a value the head refuses (a script-bearing URL). A mistake in the data. */
|
|
18
|
+
| "invalid-head";
|
|
15
19
|
/**
|
|
16
20
|
* The defect VALANCE dies with for misuse and for work refused because the application is closing. It is a defect, never a typed
|
|
17
21
|
* failure; typed failures carry `_tag`, and a thrown or dying error carries `code` (as NEXUS's `Runtime.Refusal` does). Messages are for people.
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,MAAM,MAAM,gBAAgB;AAC1B,+IAA+I;AAC7I,kBAAkB;AACpB,uIAAuI;GACrI,mBAAmB;AACrB,yDAAyD;GACvD,oBAAoB;AACtB,4FAA4F;GAC1F,sBAAsB;AACxB,sFAAsF;GACpF,cAAc;AAChB,2FAA2F;GACzF,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,MAAM,MAAM,gBAAgB;AAC1B,+IAA+I;AAC7I,kBAAkB;AACpB,uIAAuI;GACrI,mBAAmB;AACrB,yDAAyD;GACvD,oBAAoB;AACtB,4FAA4F;GAC1F,sBAAsB;AACxB,sFAAsF;GACpF,cAAc;AAChB,2FAA2F;GACzF,kBAAkB;AACpB,gIAAgI;GAC9H,iBAAiB;AACnB,iGAAiG;GAC/F,cAAc,CAAC;AAEnB;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;gBAEpB,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAKpD;AAID,mIAAmI;AACnI,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAC+H,CAAC;AAEzL;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,OAAO,KAAG,OACoI,CAAC"}
|
package/dist/errors.js
CHANGED
|
@@ -11,7 +11,7 @@ export class ValanceError extends Error {
|
|
|
11
11
|
this.name = "ValanceError";
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
const CODES = new Set(["admission-closed", "application-ended", "not-an-application", "bare-command-binding", "unknown-view", "target-not-drawn"]);
|
|
14
|
+
const CODES = new Set(["admission-closed", "application-ended", "not-an-application", "bare-command-binding", "unknown-view", "target-not-drawn", "plugin-conflict", "invalid-head"]);
|
|
15
15
|
/** Whether `value` is a `ValanceError`, by its shape and not its class, so it works across two installed copies of the package. */
|
|
16
16
|
export const isValanceError = (value) => value instanceof Error && value.name === "ValanceError" && typeof value.code === "string" && CODES.has(value.code);
|
|
17
17
|
/**
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAqBzC;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAmB;IAEhC,YAAY,IAAsB,EAAE,OAAe;QACjD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,KAAK,GAAwB,IAAI,GAAG,CAAmB,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC,CAAC;AAE7N,mIAAmI;AACnI,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAc,EAAyB,EAAE,CACtE,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,OAAQ,KAAuC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAE,KAAqC,CAAC,IAAI,CAAC,CAAC;AAEzL;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAc,EAAW,EAAE,CACnD,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -106,11 +106,15 @@ export type Outcome<A> = {
|
|
|
106
106
|
readonly error: unknown;
|
|
107
107
|
};
|
|
108
108
|
/** What a command that waits says. Every function is a plain function of the state; none may throw (a throw is a defect, as in any command). */
|
|
109
|
-
export interface Waiting<S, I, A> {
|
|
109
|
+
export interface Waiting<S, I, A, R extends Ambient = never> {
|
|
110
110
|
/** The state when the run starts, before the work: typically "loading". Optional: the state may already say so (start-time work). */
|
|
111
111
|
readonly begin?: (input: I, current: S) => S;
|
|
112
|
-
/**
|
|
113
|
-
|
|
112
|
+
/**
|
|
113
|
+
* The work: the only asynchronous thing. Either a Promise (`signal` aborts when the run is interrupted: the application closes), or, when the work needs a capability, an Effect
|
|
114
|
+
* that requires the application's environment (`Nexus.Capability.require`), which Effect interrupts itself. Its result, or its rejection or failure, reaches `settle`; an
|
|
115
|
+
* Effect's typed failure arrives exactly as it failed.
|
|
116
|
+
*/
|
|
117
|
+
readonly work: (input: I, signal: AbortSignal) => Promise<A> | Effect.Effect<A, unknown, R>;
|
|
114
118
|
/**
|
|
115
119
|
* Is the result still relevant to the state as it is NOW? Asked when the work ends, in the same step as the commit; false and nothing is committed. **Required**, because a
|
|
116
120
|
* result that no longer fits the application must not land silently. This is relevance to the application's state; it is separate from, and in addition to, a newer run of this
|
|
@@ -129,7 +133,7 @@ export interface CommandMaker<S> {
|
|
|
129
133
|
* **A newer run of the same command supersedes an older one**: the older run is NOT cancelled (its work continues, and its caller sees it complete) but its result is discarded,
|
|
130
134
|
* success or failure. Whether a result is still wanted by the state is `wanted`'s question, answered per run.
|
|
131
135
|
*/
|
|
132
|
-
waiting<I, A>(input: Schema.Schema<I>, spec: Waiting<S, I, A>): Nexus.Command.Command<I, void, never,
|
|
136
|
+
waiting<I, A, R extends Ambient = never>(input: Schema.Schema<I>, spec: Waiting<S, I, A, R>): Nexus.Command.Command<I, void, never, R>;
|
|
133
137
|
}
|
|
134
138
|
/**
|
|
135
139
|
* Binds the application's state, and returns the function that makes commands whose whole behavior is a pure transition of it:
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAiB,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGnG,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAkC,KAAK,YAAY,EAA6B,MAAM,eAAe,CAAC;AAC7G,OAAO,EAA6B,MAAM,EAAE,IAAI,EAAgB,MAAM,EAAE,KAAK,EAAU,MAAM,QAAQ,CAAC;AAEtG,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,mGAAmG;AACnG,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;AAEpF,yJAAyJ;AACzJ,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AAEzC,uJAAuJ;AACvJ,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAExD,qGAAqG;AACrG,MAAM,WAAW,IAAI,CAAC,CAAC;IACrB,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;IACrC,uEAAuE;IACvE,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvD;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5I,MAAM,WAAW,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,MAAM;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,6GAA6G;IAC7G,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IACpF,wGAAwG;IACxG,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KAAE,CAAC;IAC/C,6HAA6H;IAC7H,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IAC/B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,iGAAiG;AACjG,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;AAC/I,oFAAoF;AACpF,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;AAErJ;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,MAAM,EAC9E,YAAY,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;CAAE,KACxI,qBAAqB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAkK,CAAC;AAEzS,iHAAiH;AACjH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAEpH,gJAAgJ;AAChJ,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK;IACzD,qIAAqI;IACrI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;IAC7C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAC5F;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC;IACnD,gHAAgH;IAChH,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;CACnE;AAED,+EAA+E;AAC/E,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACpH;;;;OAIG;IACH,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;CACxI;AASD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAG,YAAY,CAAC,CAAC,CA2C5E,CAAC;AA+BF;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC9B,KAAK,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,QAAQ,CAAC,GAAG,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,KACrD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CACqB,CAAC;AAEvF;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;CAAE,CAAC;AAEnI;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;AAE9K,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,qGAAqG;IACrG,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC/C,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC;CACnD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACjC;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;CAC1I;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,MAAM,EAAE,KAAK,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,UAAS,YAAY,CAAC,CAAC,CAAM,KAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CA+KnM,CAAC;AAEL,wEAAwE;AACxE,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;AAExE;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;IACnD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,2GAA2G;AAC3G,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,MAAM;IACjD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,CAAC,CAAC;CAC9B;AAED,gDAAgD;AAChD,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,6JAA6J;IAC7J,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;CAC/E;AA0GD;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EAAE,aAAa,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,aAAa,CAAC,MAAM,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CACxC,CAAC;AAE5H;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,aAAa,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;CAAE,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CAChE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -53,7 +53,20 @@ export const command = (state) => {
|
|
|
53
53
|
}
|
|
54
54
|
// A Promise's rejection is `unknown` and is passed to `settle` exactly as received. Interruption (the application closing, or the caller's) is not a failure: it ends the
|
|
55
55
|
// run here, aborts `signal`, and `settle` never runs.
|
|
56
|
-
|
|
56
|
+
// The work is a Promise or an Effect. A Promise is awaited here, with the signal; an Effect is only taken here and run after, so it is interrupted as any Effect is and may use the
|
|
57
|
+
// application's capabilities. Whichever it is, a throw from `work` itself is a failure outcome.
|
|
58
|
+
const started = yield* Effect.tryPromise({
|
|
59
|
+
try: async (signal) => {
|
|
60
|
+
const produced = spec.work(decoded, signal);
|
|
61
|
+
return Effect.isEffect(produced) ? { effect: produced } : { value: await produced };
|
|
62
|
+
},
|
|
63
|
+
catch: (error) => error,
|
|
64
|
+
}).pipe(Effect.catchAll((error) => Effect.succeed({ failed: error })));
|
|
65
|
+
const outcome = "failed" in started
|
|
66
|
+
? { ok: false, error: started.failed }
|
|
67
|
+
: "value" in started
|
|
68
|
+
? { ok: true, value: started.value }
|
|
69
|
+
: yield* started.effect.pipe(Effect.map((value) => ({ ok: true, value })), Effect.catchAll((error) => Effect.succeed({ ok: false, error })));
|
|
57
70
|
// Both questions are asked in the same atomic step as the commit: is this still the newest run of this command, and is the result still wanted by the state as it is now.
|
|
58
71
|
yield* state.update((current) => Effect.sync(() => mine === latest && spec.wanted(decoded, current) ? spec.settle(outcome, decoded, current) : current));
|
|
59
72
|
}).pipe(Effect.asVoid));
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/web-manifest.d.ts
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
import type { WebPrimitives } from "@valancex/port-web";
|
|
21
21
|
import type * as Nexus from "@valancex/nexus";
|
|
22
22
|
import { Schema } from "effect";
|
|
23
|
+
import type { Plugin } from "./web-plugin.js";
|
|
23
24
|
export declare class ManifestError extends Error {
|
|
24
25
|
readonly path: string;
|
|
25
26
|
readonly _tag = "ManifestError";
|
|
@@ -68,7 +69,9 @@ export interface ManifestOptions {
|
|
|
68
69
|
readonly scopes: Readonly<Record<string, Schema.Schema<any, any, never>>>;
|
|
69
70
|
/** The application's `commands`: the very function `define` takes. It is called once, with a state that fails if the table reads it while being built. */
|
|
70
71
|
readonly commands: (state: Nexus.State.StateHandle<any>) => Readonly<Record<string, unknown>>;
|
|
72
|
+
/** Plugins whose tags are part of the application's vocabulary: their `primitives` join `primitives`, composed as `compose` in `./web/plugin` says (a tag is declared once). */
|
|
73
|
+
readonly plugins?: ReadonlyArray<Plugin<any>>;
|
|
71
74
|
}
|
|
72
75
|
/** The manifest of an application, derived from its Web primitives table, its views' scope Schemas and its command table. Pass it to `compileProgram` as JSON. */
|
|
73
|
-
export declare const manifest: (
|
|
76
|
+
export declare const manifest: (given: ManifestOptions) => Manifest;
|
|
74
77
|
//# sourceMappingURL=web-manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-manifest.d.ts","sourceRoot":"","sources":["../src/web-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAoB,MAAM,QAAQ,CAAC;AAIlD,qBAAa,aAAc,SAAQ,KAAK;IAG1B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,IAAI,mBAAmB;gBAEX,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIlD;AAED,uCAAuC;AACvC,MAAM,MAAM,QAAQ,GAChB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC,CAAA;CAAE,GAC/H;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;QAC3C,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC,CAAC;QAClG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;SAAE,CAAC,CAAC,CAAC;QAC3E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;gBAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;aAAE,CAAC,CAAA;SAAE,CAAC,CAAC,CAAC;QACxI,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;KACpD,CAAC,CAAC,CAAC;CACL;AAED,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,6HAA6H;IAC7H,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,0JAA0J;IAC1J,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC/
|
|
1
|
+
{"version":3,"file":"web-manifest.d.ts","sourceRoot":"","sources":["../src/web-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAoB,MAAM,QAAQ,CAAC;AAIlD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,qBAAa,aAAc,SAAQ,KAAK;IAG1B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,IAAI,mBAAmB;gBAEX,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIlD;AAED,uCAAuC;AACvC,MAAM,MAAM,QAAQ,GAChB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC,CAAA;CAAE,GAC/H;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;QAC3C,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC,CAAC;QAClG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;SAAE,CAAC,CAAC,CAAC;QAC3E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;gBAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;aAAE,CAAC,CAAA;SAAE,CAAC,CAAC,CAAC;QACxI,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;KACpD,CAAC,CAAC,CAAC;CACL;AAED,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,6HAA6H;IAC7H,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,0JAA0J;IAC1J,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9F,gLAAgL;IAChL,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/C;AA4ID,kKAAkK;AAClK,eAAO,MAAM,QAAQ,GAAI,OAAO,eAAe,KAAG,QAoCjD,CAAC"}
|
package/dist/web-manifest.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SchemaAST as AST } from "effect";
|
|
2
2
|
import { payloadKindOf } from "./web-payload.js";
|
|
3
|
+
import { compose } from "./web-plugin.js";
|
|
3
4
|
export class ManifestError extends Error {
|
|
4
5
|
path;
|
|
5
6
|
_tag = "ManifestError";
|
|
@@ -116,7 +117,8 @@ const commandsOf = (table, views) => {
|
|
|
116
117
|
};
|
|
117
118
|
const noState = new Proxy({}, { get: (_target, property) => { throw new ManifestError("commands", `the table read state.${String(property)} while it was being built; a table is built without reading state (commands read it when they RUN)`); } });
|
|
118
119
|
/** The manifest of an application, derived from its Web primitives table, its views' scope Schemas and its command table. Pass it to `compileProgram` as JSON. */
|
|
119
|
-
export const manifest = (
|
|
120
|
+
export const manifest = (given) => {
|
|
121
|
+
const options = { ...given, primitives: compose({ primitives: given.primitives }, given.plugins ?? []).primitives };
|
|
120
122
|
const views = new Set(Object.keys(options.scopes));
|
|
121
123
|
const commands = commandsOf(options.commands(noState), views);
|
|
122
124
|
for (const name of [...Object.keys(options.primitives), ...views]) {
|
package/dist/web-manifest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-manifest.js","sourceRoot":"","sources":["../src/web-manifest.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAU,SAAS,IAAI,GAAG,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"web-manifest.js","sourceRoot":"","sources":["../src/web-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The plugin contract for the Web target, and the three small operations that make it real: composing plugins, writing a head as HTML, and keeping a document's head in step.
|
|
3
|
+
*
|
|
4
|
+
* A plugin is a plain value, never a registration: nothing here runs on import, no module keeps a list, and a plugin does nothing until it is handed to `run`,
|
|
5
|
+
* `renderToHtml` or `manifest`. Each contribution is independent and optional, and each one lands on a seam that already existed (the primitives table, the platform, the URL policy,
|
|
6
|
+
* the document's head), so a plugin adds no concept the application did not already have.
|
|
7
|
+
*
|
|
8
|
+
* What a plugin cannot do is stated by what is missing: it has no view, state, command or lifecycle. A plugin that ships templates is read by the build step that compiles
|
|
9
|
+
* MPRX (outside VALANCE, which compiles nothing); this contract carries what VALANCE itself composes.
|
|
10
|
+
*/
|
|
11
|
+
import type { BoundaryValue } from "@valancex/mesh-runtime";
|
|
12
|
+
import type { WebPrimitives } from "@valancex/port-web";
|
|
13
|
+
import * as Nexus from "@valancex/nexus";
|
|
14
|
+
type Platform = Nexus.Application.Platform;
|
|
15
|
+
/** How a route is delivered: rendered once at build time (`static`, the default) or per request (`server`, opt-in). */
|
|
16
|
+
export type Delivery = "static" | "server";
|
|
17
|
+
/** A `<meta>`: a `name` (or a `property`, as Open Graph uses) and its `content`. */
|
|
18
|
+
export type MetaTag = {
|
|
19
|
+
readonly name: string;
|
|
20
|
+
readonly content: string;
|
|
21
|
+
} | {
|
|
22
|
+
readonly property: string;
|
|
23
|
+
readonly content: string;
|
|
24
|
+
};
|
|
25
|
+
/** A `<link>` in the head: a stylesheet, a canonical URL, an icon, a preload. `href` may not carry script (`javascript:`, `vbscript:`, `data:`). */
|
|
26
|
+
export interface LinkTag {
|
|
27
|
+
readonly rel: string;
|
|
28
|
+
readonly href: string;
|
|
29
|
+
readonly as?: string;
|
|
30
|
+
readonly type?: string;
|
|
31
|
+
/** The language of the document it points to: an `alternate` in another language (`hreflang`). */
|
|
32
|
+
readonly hreflang?: string;
|
|
33
|
+
/** What a reader or a feed reader calls it (`title`): a feed's name. */
|
|
34
|
+
readonly title?: string;
|
|
35
|
+
}
|
|
36
|
+
/** What the document's head says for a state: the one title, and the metas and links that go with it. Plain data, the same on the server and in the browser. */
|
|
37
|
+
export interface HeadTags {
|
|
38
|
+
readonly title?: string;
|
|
39
|
+
readonly meta?: ReadonlyArray<MetaTag>;
|
|
40
|
+
readonly links?: ReadonlyArray<LinkTag>;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* An application's URL policy as one value. `urlOf` and `stateOf` are what `HistoryOptions` takes; `known` and `paths` are what a build and a server need and a browser does not.
|
|
44
|
+
*
|
|
45
|
+
* `paths()` lists every concrete pathname the application can show. A static export renders those whose `delivery` is `static`; those marked `server` are left for a server.
|
|
46
|
+
*/
|
|
47
|
+
export interface RouteTable<S> {
|
|
48
|
+
/** The URL (path and query) shown for `state`. */
|
|
49
|
+
readonly urlOf: (state: S) => string;
|
|
50
|
+
/** The one argument of the navigate command, for a URL. */
|
|
51
|
+
readonly stateOf: (url: URL) => BoundaryValue;
|
|
52
|
+
/** The application's navigate command: a bare name or an exact binding key (see `HistoryOptions.navigate`). */
|
|
53
|
+
readonly navigate: string;
|
|
54
|
+
/** Whether `pathname` is a page of the application (a server answers 404 for one that is not). */
|
|
55
|
+
readonly known: (pathname: string) => boolean;
|
|
56
|
+
/** Every pathname the application can show, in a stable order. */
|
|
57
|
+
readonly paths: () => ReadonlyArray<string>;
|
|
58
|
+
/** How `pathname` is delivered. Absent: `static`. */
|
|
59
|
+
readonly delivery?: (pathname: string) => Delivery;
|
|
60
|
+
/** Called after each navigation (see `HistoryOptions.onNavigated`): where scroll and focus policy lives. */
|
|
61
|
+
readonly onNavigated?: (navigation: Navigation) => void;
|
|
62
|
+
}
|
|
63
|
+
/** A navigation that has been written to the URL (a link click) or taken from it (Back and Forward). */
|
|
64
|
+
export interface Navigation {
|
|
65
|
+
/** `link`: the user followed a link the application handled. `popstate`: the browser moved through its history. */
|
|
66
|
+
readonly kind: "link" | "popstate";
|
|
67
|
+
/** The destination exactly as the browser has it, `#fragment` included (a fragment is never part of the application's state). */
|
|
68
|
+
readonly url: URL;
|
|
69
|
+
}
|
|
70
|
+
/** One plugin. Every contribution is optional; `name` is the identity a conflict is reported with. */
|
|
71
|
+
export interface Plugin<S> {
|
|
72
|
+
readonly name: string;
|
|
73
|
+
/** Tags it adds to the Web realization table. */
|
|
74
|
+
readonly primitives?: WebPrimitives;
|
|
75
|
+
/** Capabilities it provides. */
|
|
76
|
+
readonly platform?: Platform;
|
|
77
|
+
/** The application's URL policy, for an application that has none of its own. */
|
|
78
|
+
readonly routes?: RouteTable<S>;
|
|
79
|
+
/** What the document's head says for a state. Merged with the application's own and every other plugin's. */
|
|
80
|
+
readonly head?: (state: S) => HeadTags;
|
|
81
|
+
}
|
|
82
|
+
/** What `deliveryOf` answers for a route table that doesn't say. */
|
|
83
|
+
export declare const DEFAULT_DELIVERY: Delivery;
|
|
84
|
+
/** How `pathname` is delivered under `routes`. */
|
|
85
|
+
export declare const deliveryOf: <S>(routes: RouteTable<S>, pathname: string) => Delivery;
|
|
86
|
+
/** The pathnames a static export renders: every known path that is delivered `static`. */
|
|
87
|
+
export declare const staticPaths: <S>(routes: RouteTable<S>) => ReadonlyArray<string>;
|
|
88
|
+
/** What the application itself declares on the seams a plugin can also declare on. */
|
|
89
|
+
export interface Own<S> {
|
|
90
|
+
readonly primitives?: WebPrimitives | undefined;
|
|
91
|
+
readonly platform?: Platform | undefined;
|
|
92
|
+
/** The application declares a URL policy of its own (`history`). */
|
|
93
|
+
readonly routes?: boolean | undefined;
|
|
94
|
+
readonly head?: ((state: S) => HeadTags) | undefined;
|
|
95
|
+
}
|
|
96
|
+
export interface Composed<S> {
|
|
97
|
+
readonly primitives: WebPrimitives;
|
|
98
|
+
readonly platform: Platform | undefined;
|
|
99
|
+
readonly routes: RouteTable<S> | undefined;
|
|
100
|
+
readonly head: ((state: S) => HeadTags) | undefined;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Merges the application's own declarations with its plugins'. The rules, which are the whole of the precedence:
|
|
104
|
+
*
|
|
105
|
+
* primitives a tag is declared once. Two declarations of one tag are a `plugin-conflict`, naming both owners; nothing is overridden silently.
|
|
106
|
+
* routes one URL policy. The application's own `history` and a plugin's `routes`, or two plugins' `routes`, are a `plugin-conflict`.
|
|
107
|
+
* platform merged in order (`mergePlatforms`): plugins as listed, the application's own last, so a capability provided twice is the later one's.
|
|
108
|
+
* head merged in order, the application's own first. The title is the first one defined; a meta is identified by its name or property and a link by its rel, href and language, and the first one wins; the rest are appended in order.
|
|
109
|
+
*
|
|
110
|
+
* Pure, and the same inputs give the same output.
|
|
111
|
+
*/
|
|
112
|
+
export declare const compose: <S>(own: Own<S>, plugins: ReadonlyArray<Plugin<S>>) => Composed<S>;
|
|
113
|
+
/**
|
|
114
|
+
* Platforms merged into one, in order. A platform is a Layer that provides the one Environment, so two cannot be combined as Layers (the second Environment would replace the
|
|
115
|
+
* first, and the first's capabilities would vanish): each is built in the merged platform's own scope and their resolutions are combined, a capability resolved by two being
|
|
116
|
+
* the later one's. What a platform acquires is released with the merged platform, last built first, as one platform's resources are.
|
|
117
|
+
*/
|
|
118
|
+
export declare const mergePlatforms: (platforms: ReadonlyArray<Platform>) => Platform;
|
|
119
|
+
/** Heads merged in order; see `compose` for what wins. */
|
|
120
|
+
export declare const mergeHeads: (heads: ReadonlyArray<HeadTags>) => HeadTags;
|
|
121
|
+
/** Marks the elements VALANCE wrote into the head, so the browser replaces exactly those and never an element someone else put there. */
|
|
122
|
+
export declare const HEAD_MARK = "data-valance-head";
|
|
123
|
+
/** The `<title>` is not marked: the browser keeps one, so the document's own is replaced in place. */
|
|
124
|
+
export declare const renderHead: (head: HeadTags) => string;
|
|
125
|
+
/**
|
|
126
|
+
* Makes `document`'s head say `head`: the title is set when there is one, and the metas and links this function wrote before are replaced by these. Elements it did not write
|
|
127
|
+
* (no `data-valance-head`) are never touched, so a stylesheet the server linked stays. Mutates the document it is given and nothing else.
|
|
128
|
+
*/
|
|
129
|
+
export declare const applyHead: (document: Document, head: HeadTags) => void;
|
|
130
|
+
export {};
|
|
131
|
+
//# sourceMappingURL=web-plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-plugin.d.ts","sourceRoot":"","sources":["../src/web-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import * as Nexus from "@valancex/nexus";
|
|
2
|
+
import { Context, Effect, Layer } from "effect";
|
|
3
|
+
import { ValanceError } from "./errors.js";
|
|
4
|
+
/** What `deliveryOf` answers for a route table that doesn't say. */
|
|
5
|
+
export const DEFAULT_DELIVERY = "static";
|
|
6
|
+
/** How `pathname` is delivered under `routes`. */
|
|
7
|
+
export const deliveryOf = (routes, pathname) => routes.delivery?.(pathname) ?? DEFAULT_DELIVERY;
|
|
8
|
+
/** The pathnames a static export renders: every known path that is delivered `static`. */
|
|
9
|
+
export const staticPaths = (routes) => routes.paths().filter((pathname) => deliveryOf(routes, pathname) === "static");
|
|
10
|
+
const APPLICATION = "the application";
|
|
11
|
+
/**
|
|
12
|
+
* Merges the application's own declarations with its plugins'. The rules, which are the whole of the precedence:
|
|
13
|
+
*
|
|
14
|
+
* primitives a tag is declared once. Two declarations of one tag are a `plugin-conflict`, naming both owners; nothing is overridden silently.
|
|
15
|
+
* routes one URL policy. The application's own `history` and a plugin's `routes`, or two plugins' `routes`, are a `plugin-conflict`.
|
|
16
|
+
* platform merged in order (`mergePlatforms`): plugins as listed, the application's own last, so a capability provided twice is the later one's.
|
|
17
|
+
* head merged in order, the application's own first. The title is the first one defined; a meta is identified by its name or property and a link by its rel, href and language, and the first one wins; the rest are appended in order.
|
|
18
|
+
*
|
|
19
|
+
* Pure, and the same inputs give the same output.
|
|
20
|
+
*/
|
|
21
|
+
export const compose = (own, plugins) => {
|
|
22
|
+
const owners = new Map();
|
|
23
|
+
const primitives = {};
|
|
24
|
+
const claim = (from, table) => {
|
|
25
|
+
for (const [tag, primitive] of Object.entries(table ?? {})) {
|
|
26
|
+
const holder = owners.get(tag);
|
|
27
|
+
if (holder !== undefined) {
|
|
28
|
+
throw new ValanceError("plugin-conflict", `the tag "${tag}" is declared by ${holder} and by ${from}; a tag is declared once (remove one, or rename it)`);
|
|
29
|
+
}
|
|
30
|
+
owners.set(tag, from);
|
|
31
|
+
primitives[tag] = primitive;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const names = new Set();
|
|
35
|
+
claim(APPLICATION, own.primitives);
|
|
36
|
+
let routes;
|
|
37
|
+
for (const plugin of plugins) {
|
|
38
|
+
if (names.has(plugin.name)) {
|
|
39
|
+
throw new ValanceError("plugin-conflict", `two plugins are named "${plugin.name}"; a plugin's name identifies it`);
|
|
40
|
+
}
|
|
41
|
+
names.add(plugin.name);
|
|
42
|
+
claim(`the plugin "${plugin.name}"`, plugin.primitives);
|
|
43
|
+
if (plugin.routes !== undefined) {
|
|
44
|
+
const holder = own.routes === true ? APPLICATION : routes?.from;
|
|
45
|
+
if (holder !== undefined) {
|
|
46
|
+
throw new ValanceError("plugin-conflict", `the URL policy is declared by ${holder} and by the plugin "${plugin.name}"; an application has one`);
|
|
47
|
+
}
|
|
48
|
+
routes = { from: `the plugin "${plugin.name}"`, table: plugin.routes };
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const layers = [...plugins.flatMap((plugin) => plugin.platform === undefined ? [] : [plugin.platform]), ...(own.platform === undefined ? [] : [own.platform])];
|
|
52
|
+
const heads = [...(own.head === undefined ? [] : [own.head]), ...plugins.flatMap((plugin) => plugin.head === undefined ? [] : [plugin.head])];
|
|
53
|
+
return {
|
|
54
|
+
primitives,
|
|
55
|
+
platform: layers.length === 0 ? undefined : layers.length === 1 ? layers[0] : mergePlatforms(layers),
|
|
56
|
+
routes: routes?.table,
|
|
57
|
+
head: heads.length === 0 ? undefined : heads.length === 1 ? heads[0] : (state) => mergeHeads(heads.map((head) => head(state))),
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Platforms merged into one, in order. A platform is a Layer that provides the one Environment, so two cannot be combined as Layers (the second Environment would replace the
|
|
62
|
+
* first, and the first's capabilities would vanish): each is built in the merged platform's own scope and their resolutions are combined, a capability resolved by two being
|
|
63
|
+
* the later one's. What a platform acquires is released with the merged platform, last built first, as one platform's resources are.
|
|
64
|
+
*/
|
|
65
|
+
export const mergePlatforms = (platforms) => Layer.scoped(Nexus.Capability.Environment, Effect.gen(function* () {
|
|
66
|
+
const resolutions = new Map();
|
|
67
|
+
for (const platform of platforms) {
|
|
68
|
+
const environment = Context.get(yield* Layer.build(platform), Nexus.Capability.Environment);
|
|
69
|
+
for (const [id, resolution] of environment.resolutions) {
|
|
70
|
+
resolutions.set(id, resolution);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return { resolutions };
|
|
74
|
+
}));
|
|
75
|
+
/** Heads merged in order; see `compose` for what wins. */
|
|
76
|
+
export const mergeHeads = (heads) => {
|
|
77
|
+
const meta = new Map();
|
|
78
|
+
const links = new Map();
|
|
79
|
+
for (const head of heads) {
|
|
80
|
+
for (const tag of head.meta ?? []) {
|
|
81
|
+
const key = "name" in tag ? `name:${tag.name}` : `property:${tag.property}`;
|
|
82
|
+
if (!meta.has(key)) {
|
|
83
|
+
meta.set(key, tag);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
for (const tag of head.links ?? []) {
|
|
87
|
+
const key = `${tag.rel}\n${tag.href}\n${tag.hreflang ?? ""}`;
|
|
88
|
+
if (!links.has(key)) {
|
|
89
|
+
links.set(key, tag);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const title = heads.find((head) => head.title !== undefined)?.title;
|
|
94
|
+
return { ...(title === undefined ? {} : { title }), meta: [...meta.values()], links: [...links.values()] };
|
|
95
|
+
};
|
|
96
|
+
// ---- the head as HTML, and as DOM ---------------------------------------------------------------------------------------------------------------------------------
|
|
97
|
+
/** Marks the elements VALANCE wrote into the head, so the browser replaces exactly those and never an element someone else put there. */
|
|
98
|
+
export const HEAD_MARK = "data-valance-head";
|
|
99
|
+
const escapeText = (text) => text.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">");
|
|
100
|
+
const escapeAttribute = (text) => escapeText(text).replaceAll('"', """);
|
|
101
|
+
/** A URL a head link may carry: anything but a scheme that runs script or embeds a document. Relative URLs, http, https and the rest are allowed. */
|
|
102
|
+
const refused = (href) => /^[\u0000- ]*(javascript|vbscript|data):/i.test(href.replace(/[\t\n\r]/g, ""));
|
|
103
|
+
const checked = (head) => {
|
|
104
|
+
for (const link of head.links ?? []) {
|
|
105
|
+
if (refused(link.href)) {
|
|
106
|
+
throw new ValanceError("invalid-head", `the head link rel="${link.rel}" has an href that carries script (${link.href.slice(0, 24)}…); a head link points at a document or a file`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return head;
|
|
110
|
+
};
|
|
111
|
+
/** The `<title>` is not marked: the browser keeps one, so the document's own is replaced in place. */
|
|
112
|
+
export const renderHead = (head) => {
|
|
113
|
+
const { title, meta = [], links = [] } = checked(head);
|
|
114
|
+
return [
|
|
115
|
+
title === undefined ? "" : `<title>${escapeText(title)}</title>`,
|
|
116
|
+
...meta.map((tag) => `<meta ${"name" in tag ? `name="${escapeAttribute(tag.name)}"` : `property="${escapeAttribute(tag.property)}"`} content="${escapeAttribute(tag.content)}" ${HEAD_MARK}>`),
|
|
117
|
+
...links.map((tag) => `<link rel="${escapeAttribute(tag.rel)}" href="${escapeAttribute(tag.href)}"${tag.as === undefined ? "" : ` as="${escapeAttribute(tag.as)}"`}${tag.type === undefined ? "" : ` type="${escapeAttribute(tag.type)}"`}${tag.hreflang === undefined ? "" : ` hreflang="${escapeAttribute(tag.hreflang)}"`}${tag.title === undefined ? "" : ` title="${escapeAttribute(tag.title)}"`} ${HEAD_MARK}>`)
|
|
118
|
+
].join("");
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* Makes `document`'s head say `head`: the title is set when there is one, and the metas and links this function wrote before are replaced by these. Elements it did not write
|
|
122
|
+
* (no `data-valance-head`) are never touched, so a stylesheet the server linked stays. Mutates the document it is given and nothing else.
|
|
123
|
+
*/
|
|
124
|
+
export const applyHead = (document, head) => {
|
|
125
|
+
const { title, meta = [], links = [] } = checked(head);
|
|
126
|
+
if (title !== undefined) {
|
|
127
|
+
document.title = title;
|
|
128
|
+
}
|
|
129
|
+
for (const stale of Array.from(document.head.querySelectorAll(`[${HEAD_MARK}]`))) {
|
|
130
|
+
stale.remove();
|
|
131
|
+
}
|
|
132
|
+
const add = (tag, attributes) => {
|
|
133
|
+
const element = document.createElement(tag);
|
|
134
|
+
for (const [name, value] of Object.entries(attributes)) {
|
|
135
|
+
if (value !== undefined) {
|
|
136
|
+
element.setAttribute(name, value);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
element.setAttribute(HEAD_MARK, "");
|
|
140
|
+
document.head.append(element);
|
|
141
|
+
};
|
|
142
|
+
for (const tag of meta) {
|
|
143
|
+
add("meta", "name" in tag ? { name: tag.name, content: tag.content } : { property: tag.property, content: tag.content });
|
|
144
|
+
}
|
|
145
|
+
for (const tag of links) {
|
|
146
|
+
add("link", { rel: tag.rel, href: tag.href, as: tag.as, type: tag.type, hreflang: tag.hreflang, title: tag.title });
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
//# sourceMappingURL=web-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-plugin.js","sourceRoot":"","sources":["../src/web-plugin.ts"],"names":[],"mappings":"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"}
|
package/dist/web-server.d.ts
CHANGED
|
@@ -6,13 +6,22 @@
|
|
|
6
6
|
import type { Mesh } from "@valancex/nexus";
|
|
7
7
|
import type { WebPrimitives } from "@valancex/port-web/server";
|
|
8
8
|
import type { Ambient, ApplicationDefinition, StartError, StartOptions } from "./index.js";
|
|
9
|
+
import type { HeadTags, Plugin } from "./web-plugin.js";
|
|
9
10
|
import { Effect } from "effect";
|
|
10
11
|
export interface Served<S> {
|
|
11
12
|
readonly html: string;
|
|
12
13
|
readonly state: S;
|
|
14
|
+
/** What the document's head says for the state rendered (empty when neither the application nor a plugin has a head). Write it with `renderHead` from `./web/plugin`. */
|
|
15
|
+
readonly head: HeadTags;
|
|
16
|
+
}
|
|
17
|
+
export interface RenderOptions<S> extends StartOptions<S> {
|
|
18
|
+
/** The application's Web realization table. Absent: only the tags its plugins add. */
|
|
19
|
+
readonly primitives?: WebPrimitives;
|
|
20
|
+
/** What the head says for a state: the very function `Web.history`'s `head` takes, so the server and the browser say the same. */
|
|
21
|
+
readonly head?: (state: S) => HeadTags;
|
|
22
|
+
/** Plugins, composed with the application's own declarations (see `compose` in `./web/plugin`). A plugin's `routes` is not used here: a server renders the URL it is given. */
|
|
23
|
+
readonly plugins?: ReadonlyArray<Plugin<S>>;
|
|
13
24
|
}
|
|
14
25
|
/** Starts the application, renders it once, and ends it. No target object, no DOM. */
|
|
15
|
-
export declare const renderToHtml: <S, E, R extends Ambient, V extends string>(app: ApplicationDefinition<S, E, R, V>, options:
|
|
16
|
-
readonly primitives: WebPrimitives;
|
|
17
|
-
}) => Effect.Effect<Served<S>, StartError | Mesh.MeshDiagnostics>;
|
|
26
|
+
export declare const renderToHtml: <S, E, R extends Ambient, V extends string>(app: ApplicationDefinition<S, E, R, V>, options: RenderOptions<S>) => Effect.Effect<Served<S>, StartError | Mesh.MeshDiagnostics>;
|
|
18
27
|
//# sourceMappingURL=web-server.d.ts.map
|
package/dist/web-server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-server.d.ts","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"web-server.d.ts","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC3F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,yKAAyK;IACzK,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACvD,sFAAsF;IACtF,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC,kIAAkI;IAClI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,QAAQ,CAAC;IACvC,+KAA+K;IAC/K,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7C;AAED,sFAAsF;AACtF,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,MAAM,EACpE,KAAK,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,SAAS,aAAa,CAAC,CAAC,CAAC,KACxB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,eAAe,CAYzD,CAAC"}
|
package/dist/web-server.js
CHANGED
|
@@ -2,10 +2,16 @@ import { realizeHtml } from "@valancex/port-web/server";
|
|
|
2
2
|
import { Effect } from "effect";
|
|
3
3
|
import { runningOf } from "./internal.js";
|
|
4
4
|
import { start } from "./index.js";
|
|
5
|
+
import { compose } from "./web-plugin.js";
|
|
5
6
|
/** Starts the application, renders it once, and ends it. No target object, no DOM. */
|
|
6
|
-
export const renderToHtml = (app, options) => Effect.
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
return
|
|
10
|
-
}));
|
|
7
|
+
export const renderToHtml = (app, options) => Effect.suspend(() => {
|
|
8
|
+
// Composed before anything is acquired: a conflict fails the call with nothing started.
|
|
9
|
+
const composed = compose({ primitives: options.primitives, platform: options.platform, head: options.head }, options.plugins ?? []);
|
|
10
|
+
return Effect.scoped(Effect.gen(function* () {
|
|
11
|
+
const running = runningOf(yield* start(app, { ...options, ...(composed.platform === undefined ? {} : { platform: composed.platform }) }));
|
|
12
|
+
const viewed = yield* running.render;
|
|
13
|
+
const state = yield* running.state;
|
|
14
|
+
return { html: realizeHtml(viewed.render.tree, composed.primitives), state, head: composed.head?.(state) ?? {} };
|
|
15
|
+
}));
|
|
16
|
+
});
|
|
11
17
|
//# sourceMappingURL=web-server.js.map
|
package/dist/web-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-server.js","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"web-server.js","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAkB1C,sFAAsF;AACtF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,GAAsC,EACtC,OAAyB,EACoC,EAAE,CAC/D,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;IAClB,wFAAwF;IACxF,MAAM,QAAQ,GAAG,OAAO,CAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAEvI,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACvC,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1I,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAEnC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACnH,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC"}
|
package/dist/web.d.ts
CHANGED
|
@@ -6,11 +6,13 @@
|
|
|
6
6
|
import type { HydrationResult, WebPort, WebPortOptions, WebPrimitive, WebPrimitives } from "@valancex/port-web";
|
|
7
7
|
import type { BoundaryValue } from "@valancex/mesh-runtime";
|
|
8
8
|
import type { Ambient, ApplicationDefinition, ApplicationHandle, Mounted, StartOptions, TargetFactory } from "./index.js";
|
|
9
|
+
import type { HeadTags, Navigation, Plugin } from "./web-plugin.js";
|
|
9
10
|
import { Effect, Scope } from "effect";
|
|
10
11
|
export type { HydrationResult, WebPrimitive, WebPrimitives } from "@valancex/port-web";
|
|
11
12
|
export { attribute, booleanAttribute, controlled, property, textProperty } from "@valancex/port-web";
|
|
12
13
|
export { event } from "./web-payload.js";
|
|
13
14
|
export type { PayloadKind } from "./web-payload.js";
|
|
15
|
+
export type { Delivery, HeadTags, LinkTag, MetaTag, Navigation, Plugin, RouteTable } from "./web-plugin.js";
|
|
14
16
|
/**
|
|
15
17
|
* A link: an `<a>` whose one prop, `href`, is the destination. It declares no event: with `history` and a `container` (which `run` supplies), a click on it is the
|
|
16
18
|
* application's own navigation (see `HistoryOptions.container`), and without them it is an ordinary anchor. Put it in the primitives table under the name the view uses.
|
|
@@ -49,6 +51,20 @@ export interface HistoryOptions<S> {
|
|
|
49
51
|
* already on (a `#fragment`), and a click something else already handled (`defaultPrevented`). Absent: links are ordinary anchors. `run` passes its own container.
|
|
50
52
|
*/
|
|
51
53
|
readonly container?: Element;
|
|
54
|
+
/**
|
|
55
|
+
* What the document's head says for a state: the title, the metas and the links (a stylesheet, a canonical URL). It is kept in step like `titleOf`, set for the first state and for
|
|
56
|
+
* every later one, and the server writes the result of this same function for the state it rendered (`renderToHtml`'s `head`, then `renderHead`). It replaces only the elements
|
|
57
|
+
* it wrote before (marked `data-valance-head`); an element it did not write is never touched. A title here wins over `titleOf`. A head the head refuses (a link whose href
|
|
58
|
+
* carries script) is logged and leaves the document as it was. Absent: the head is left alone.
|
|
59
|
+
*/
|
|
60
|
+
readonly head?: (state: S) => HeadTags;
|
|
61
|
+
/**
|
|
62
|
+
* Called after a navigation is accounted for, with how it happened and the destination as the browser has it, `#fragment` included. This is where scroll and focus policy
|
|
63
|
+
* belongs (scroll to the fragment, move focus to the main region): VALANCE decides neither, except that a link click to a place without a fragment starts at the top, as it
|
|
64
|
+
* always did. It runs after the URL is written (a link click) or after the navigate command finished (Back and Forward), and not at all for a link click that leads to the
|
|
65
|
+
* state already shown. A defect in it is logged and ends nothing. Absent: nothing is called.
|
|
66
|
+
*/
|
|
67
|
+
readonly onNavigated?: (navigation: Navigation) => void;
|
|
52
68
|
}
|
|
53
69
|
/**
|
|
54
70
|
* Keeps `location` and the application in step, in both directions, until the caller's Scope closes.
|
|
@@ -75,8 +91,8 @@ export declare const history: <S, E>(application: ApplicationHandle<S, E>, optio
|
|
|
75
91
|
export interface RunOptions<S> extends StartOptions<S> {
|
|
76
92
|
/** The element the application is presented in. */
|
|
77
93
|
readonly container: Element;
|
|
78
|
-
/** The application's Web realization table (the same one the server rendered with, when it did). */
|
|
79
|
-
readonly primitives
|
|
94
|
+
/** The application's Web realization table (the same one the server rendered with, when it did). Absent: only the tags its plugins add. */
|
|
95
|
+
readonly primitives?: WebPrimitives;
|
|
80
96
|
/**
|
|
81
97
|
* Explicit, and never inferred from what the container holds. `"mount"` creates the presentation: whatever the container held is replaced.
|
|
82
98
|
* `"hydrate"` adopts server-rendered markup in the container with the client's own render, and reports whether it did in `Host.mounted.hydration`.
|
|
@@ -84,6 +100,12 @@ export interface RunOptions<S> extends StartOptions<S> {
|
|
|
84
100
|
readonly present: "mount" | "hydrate";
|
|
85
101
|
/** The application's own URL policy, handed to `history` unread. Absent: the URL is not kept in step. */
|
|
86
102
|
readonly history?: HistoryOptions<S>;
|
|
103
|
+
/**
|
|
104
|
+
* Plugins, composed with the application's own declarations by `compose` (see `./web/plugin` for the rules: a tag and the URL policy are declared once, platforms merge in order,
|
|
105
|
+
* heads merge with the application's first). Absent: none, and the run is exactly what it was. A plugin that declares `routes` is the URL policy; `history` and `routes` together
|
|
106
|
+
* are a `plugin-conflict`.
|
|
107
|
+
*/
|
|
108
|
+
readonly plugins?: ReadonlyArray<Plugin<S>>;
|
|
87
109
|
}
|
|
88
110
|
/** One application running on one page: the core's handle, the presentation, and the one operation the host adds. */
|
|
89
111
|
export interface Host<S, E> {
|
package/dist/web.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"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"}
|
package/dist/web.js
CHANGED
|
@@ -2,6 +2,7 @@ import { attribute, controlled, createWebPort } from "@valancex/port-web";
|
|
|
2
2
|
import { hydrate, mount, start } from "./index.js";
|
|
3
3
|
import { INPUT_KEY, runningOf } from "./internal.js";
|
|
4
4
|
import { event } from "./web-payload.js";
|
|
5
|
+
import { applyHead, compose } from "./web-plugin.js";
|
|
5
6
|
import { Cause, Effect, Exit, Fiber, Option, Queue, Scope, Stream } from "effect";
|
|
6
7
|
export { attribute, booleanAttribute, controlled, property, textProperty } from "@valancex/port-web";
|
|
7
8
|
export { event } from "./web-payload.js";
|
|
@@ -77,25 +78,46 @@ export const history = (application, options) => Effect.gen(function* () {
|
|
|
77
78
|
// A link click whose destination starts at the top is waiting for its URL to be written: the browser records the position of the entry being left WHEN the URL is pushed, so the
|
|
78
79
|
// reset must come after the push, never before it, or Back would restore the top.
|
|
79
80
|
let top = false;
|
|
81
|
+
// The destination of the link click that is waiting for its URL to be written, so `onNavigated` can be told once the write has happened.
|
|
82
|
+
let arrived;
|
|
83
|
+
// `onNavigated` is the plugin's or the application's: a defect in it is logged and ends nothing, like every other function it supplies.
|
|
84
|
+
const announce = (navigation) => options.onNavigated === undefined
|
|
85
|
+
? Effect.void
|
|
86
|
+
: Effect.try(() => { options.onNavigated?.(navigation); }).pipe(Effect.catchAllCause((cause) => Effect.logError("navigation hook failed", cause)));
|
|
80
87
|
const follower = yield* Stream.runForEach(Stream.merge(Stream.map(running.states, (state) => ({ _tag: "state", state })), Stream.map(Stream.fromQueue(popped), (href) => ({ _tag: "popstate", href }))), (event) => (event._tag === "state"
|
|
81
|
-
? Effect.
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
if (
|
|
92
|
-
|
|
88
|
+
? Effect.gen(function* () {
|
|
89
|
+
// The URL first. The link click this write answers (if any) is taken here, once, so it is announced once.
|
|
90
|
+
const landed = yield* Effect.sync(() => {
|
|
91
|
+
const url = options.urlOf(event.state);
|
|
92
|
+
if (last === undefined) {
|
|
93
|
+
last = url;
|
|
94
|
+
}
|
|
95
|
+
else if (url !== last) {
|
|
96
|
+
last = url;
|
|
97
|
+
win.history.pushState(null, "", url);
|
|
98
|
+
if (top) {
|
|
99
|
+
top = false;
|
|
100
|
+
if (win.scrollY !== 0 || win.scrollX !== 0) {
|
|
101
|
+
win.scrollTo(0, 0);
|
|
102
|
+
}
|
|
93
103
|
}
|
|
104
|
+
const destination = arrived;
|
|
105
|
+
arrived = undefined;
|
|
106
|
+
return destination;
|
|
94
107
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
108
|
+
return undefined;
|
|
109
|
+
});
|
|
110
|
+
// After the URL, so a title or head function that throws cannot keep the URL from following the state. The head wins over the title.
|
|
111
|
+
yield* Effect.sync(() => {
|
|
112
|
+
if (options.titleOf !== undefined) {
|
|
113
|
+
win.document.title = options.titleOf(event.state);
|
|
114
|
+
}
|
|
115
|
+
if (options.head !== undefined) {
|
|
116
|
+
applyHead(win.document, options.head(event.state));
|
|
117
|
+
}
|
|
118
|
+
}).pipe(Effect.catchAllCause((cause) => Effect.logError("history synchronization failed", cause)));
|
|
119
|
+
if (landed !== undefined) {
|
|
120
|
+
yield* announce({ kind: "link", url: landed });
|
|
99
121
|
}
|
|
100
122
|
})
|
|
101
123
|
: Effect.gen(function* () {
|
|
@@ -103,6 +125,7 @@ export const history = (application, options) => Effect.gen(function* () {
|
|
|
103
125
|
yield* running.invoke(navigateKey, [{ value: options.stateOf(new URL(event.href)) }]).pipe(Effect.catchAllCause((cause) => Effect.logError("popstate navigation failed", cause)));
|
|
104
126
|
// The state the popstate produced is the new baseline, whatever URL history happens to hold for it.
|
|
105
127
|
last = options.urlOf(yield* running.state);
|
|
128
|
+
yield* announce({ kind: "popstate", url: new URL(event.href) });
|
|
106
129
|
})).pipe(
|
|
107
130
|
// `urlOf` and `stateOf` are the application's: a defect in either is a failed synchronization, logged like a failed popstate navigation.
|
|
108
131
|
// It never ends the follower, which would silently stop every later URL write; the baseline stays where it was.
|
|
@@ -120,11 +143,13 @@ export const history = (application, options) => Effect.gen(function* () {
|
|
|
120
143
|
// A link click is a page change, and a page change starts at the top, as a native link does (taking the click took that with it). The follower does it, after it writes the URL.
|
|
121
144
|
// Back and Forward are not this: the browser restores their position itself. A destination with a #fragment is the application's own to scroll to.
|
|
122
145
|
top = destination.hash === "";
|
|
146
|
+
arrived = destination;
|
|
123
147
|
Effect.runFork(running.invoke(navigateKey, [{ value: options.stateOf(destination) }]).pipe(Effect.flatMap(() => running.state),
|
|
124
148
|
// The command is done. If the state's URL is the one already written, no push is coming (or it already happened): nothing is waiting for the top any more.
|
|
125
149
|
Effect.flatMap((state) => Effect.sync(() => { if (options.urlOf(state) === last) {
|
|
126
150
|
top = false;
|
|
127
|
-
|
|
151
|
+
arrived = undefined;
|
|
152
|
+
} })), Effect.catchAllCause((cause) => Effect.sync(() => { top = false; arrived = undefined; }).pipe(Effect.zipRight(Effect.logError("link navigation failed", cause)))), Effect.forkIn(scope)));
|
|
128
153
|
};
|
|
129
154
|
container?.addEventListener("click", onClick);
|
|
130
155
|
// Reverse order of the scope: before the application ends.
|
|
@@ -147,12 +172,27 @@ export const history = (application, options) => Effect.gen(function* () {
|
|
|
147
172
|
*/
|
|
148
173
|
export const run = async (app, options) => {
|
|
149
174
|
const scope = await Effect.runPromise(Scope.make());
|
|
175
|
+
// Composed before anything is acquired: a conflict is a mistake in the composition and fails the call, with nothing started.
|
|
176
|
+
const composed = compose({ primitives: options.primitives, platform: options.platform, routes: options.history !== undefined, head: options.history?.head }, options.plugins ?? []);
|
|
177
|
+
const view = options.container.ownerDocument.defaultView;
|
|
178
|
+
const policy = options.history !== undefined
|
|
179
|
+
? (composed.head === undefined ? options.history : { ...options.history, head: composed.head })
|
|
180
|
+
: composed.routes === undefined || view === null
|
|
181
|
+
? undefined
|
|
182
|
+
: {
|
|
183
|
+
window: view,
|
|
184
|
+
urlOf: composed.routes.urlOf,
|
|
185
|
+
stateOf: composed.routes.stateOf,
|
|
186
|
+
navigate: composed.routes.navigate,
|
|
187
|
+
...(composed.routes.onNavigated === undefined ? {} : { onNavigated: composed.routes.onNavigated }),
|
|
188
|
+
...(composed.head === undefined ? {} : { head: composed.head })
|
|
189
|
+
};
|
|
150
190
|
const startup = Effect.gen(function* () {
|
|
151
|
-
const handle = yield* start(app, options);
|
|
152
|
-
const web = target({ container: options.container, primitives:
|
|
191
|
+
const handle = yield* start(app, { ...options, ...(composed.platform === undefined ? {} : { platform: composed.platform }) });
|
|
192
|
+
const web = target({ container: options.container, primitives: composed.primitives });
|
|
153
193
|
const mounted = options.present === "hydrate" ? yield* hydrate(handle, web) : yield* mount(handle, web);
|
|
154
|
-
if (
|
|
155
|
-
yield* history(handle, { container: options.container, ...
|
|
194
|
+
if (policy !== undefined) {
|
|
195
|
+
yield* history(handle, { container: options.container, ...policy });
|
|
156
196
|
}
|
|
157
197
|
return { handle, mounted };
|
|
158
198
|
});
|
package/dist/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGlF,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrG,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAiB,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;AAEvF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAiB;IACrC,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE;IACrC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAE,OAA4B,CAAC,KAAK,EAAE,CAAC,EAAE;CACpH,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAuC,EAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AA8B7I;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,KAAiB,EAAE,GAAW,EAAE,SAAkB,EAAmB,EAAE;IAC9F,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACrH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqH,CAAC;IAC3I,MAAM,IAAI,GAAG,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,MAAiB,CAAC,CAAC,CAAC,MAAM,EAAE,aAAa,IAAI,IAAI,CAAC;IACzH,MAAM,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,SAAS,CAAyC,CAAC;IAEhF,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QACrK,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExC,4HAA4H;IAC5H,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACpJ,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAO,WAAoC,EAAE,OAA0B,EAA2C,EAAE,CACzI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,EAAU,CAAC;IAChD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAC9B,6IAA6I;IAC7I,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpG,qHAAqH;IACrH,IAAI,IAAwB,CAAC;IAC7B,iLAAiL;IACjL,kFAAkF;IAClF,IAAI,GAAG,GAAG,KAAK,CAAC;IAEhB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CACvC,MAAM,CAAC,KAAK,CACV,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,KAAK,EAAE,CAAC,CAAC,EAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CACtF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;QAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACjB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAEvC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,GAAG,GAAG,CAAC;YACb,CAAC;iBAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACxB,IAAI,GAAG,GAAG,CAAC;gBACX,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAErC,IAAI,GAAG,EAAE,CAAC;oBACR,GAAG,GAAG,KAAK,CAAC;oBAEZ,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;wBAC3C,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+FAA+F;YAC/F,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAClC,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,CAAC;QACF,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACpB,4HAA4H;YAC5H,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACxF,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC,CACtF,CAAC;YACF,oGAAoG;YACpG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC,CAAC,CACH,CAAC,IAAI;IACJ,yIAAyI;IACzI,gHAAgH;IAChH,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAC1F,CACF,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,GAAS,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjF,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAE7C,8KAA8K;IAC9K,+JAA+J;IAC/J,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAQ,EAAE;QAC1C,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAEjG,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,iLAAiL;QACjL,mJAAmJ;QACnJ,GAAG,GAAG,WAAW,CAAC,IAAI,KAAK,EAAE,CAAC;QAE9B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACxF,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,2JAA2J;QAC3J,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YAAC,GAAG,GAAG,KAAK,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrG,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAC5I,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CACrB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC;IAE/D,2DAA2D;IAC3D,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACnD,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClJ,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC;AA6BL;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,EAA6C,GAAsC,EAAE,OAAsB,EAAuB,EAAE;IAC1J,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACrF,MAAM,OAAO,GAA0B,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE/H,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAEvE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,iJAAiJ;QACjJ,gEAAgE;QAChE,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAEtD,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,QAAmC,CAAC;IAExC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,KAAK,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACtG,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGlF,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrG,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzC;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GAAiB,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;AAEvF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAiB;IACrC,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE;IACrC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAE,OAA4B,CAAC,KAAK,EAAE,CAAC,EAAE;CACpH,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAuC,EAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AA4C7I;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,KAAiB,EAAE,GAAW,EAAE,SAAkB,EAAmB,EAAE;IAC9F,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACrH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqH,CAAC;IAC3I,MAAM,IAAI,GAAG,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,MAAiB,CAAC,CAAC,CAAC,MAAM,EAAE,aAAa,IAAI,IAAI,CAAC;IACzH,MAAM,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,SAAS,CAAyC,CAAC;IAEhF,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QACrK,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExC,4HAA4H;IAC5H,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACpJ,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAO,WAAoC,EAAE,OAA0B,EAA2C,EAAE,CACzI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,EAAU,CAAC;IAChD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAC9B,6IAA6I;IAC7I,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpG,qHAAqH;IACrH,IAAI,IAAwB,CAAC;IAC7B,iLAAiL;IACjL,kFAAkF;IAClF,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,yIAAyI;IACzI,IAAI,OAAwB,CAAC;IAC7B,wIAAwI;IACxI,MAAM,QAAQ,GAAG,CAAC,UAAsB,EAAuB,EAAE,CAC/D,OAAO,CAAC,WAAW,KAAK,SAAS;QAC/B,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAEvJ,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CACvC,MAAM,CAAC,KAAK,CACV,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,KAAK,EAAE,CAAC,CAAC,EAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CACtF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;QAChC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACpB,0GAA0G;YAC1G,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrC,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAEvC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,IAAI,GAAG,GAAG,CAAC;gBACb,CAAC;qBAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACxB,IAAI,GAAG,GAAG,CAAC;oBACX,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;oBAErC,IAAI,GAAG,EAAE,CAAC;wBACR,GAAG,GAAG,KAAK,CAAC;wBAEZ,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;4BAC3C,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACrB,CAAC;oBACH,CAAC;oBAED,MAAM,WAAW,GAAG,OAAO,CAAC;oBAE5B,OAAO,GAAG,SAAS,CAAC;oBAEpB,OAAO,WAAW,CAAC;gBACrB,CAAC;gBAED,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH,qIAAqI;YACrI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtB,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAClC,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACpD,CAAC;gBAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAC/B,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAEnG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC,CAAC;QACF,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACpB,4HAA4H;YAC5H,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACxF,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC,CACtF,CAAC;YACF,oGAAoG;YACpG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3C,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC,CACH,CAAC,IAAI;IACJ,yIAAyI;IACzI,gHAAgH;IAChH,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC,CAC1F,CACF,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,GAAS,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjF,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAE7C,8KAA8K;IAC9K,+JAA+J;IAC/J,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAQ,EAAE;QAC1C,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAEjG,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,iLAAiL;QACjL,mJAAmJ;QACnJ,GAAG,GAAG,WAAW,CAAC,IAAI,KAAK,EAAE,CAAC;QAC9B,OAAO,GAAG,WAAW,CAAC;QAEtB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACxF,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,2JAA2J;QAC3J,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YAAC,GAAG,GAAG,KAAK,CAAC;YAAC,OAAO,GAAG,SAAS,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1H,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EACjK,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CACrB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC;IAE/D,2DAA2D;IAC3D,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACnD,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClJ,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC;AAmCL;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,EAA6C,GAAsC,EAAE,OAAsB,EAAuB,EAAE;IAC1J,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,6HAA6H;IAC7H,MAAM,QAAQ,GAAG,OAAO,CAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACvL,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC;IACzD,MAAM,MAAM,GAAkC,OAAO,CAAC,OAAO,KAAK,SAAS;QACzE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/F,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;YAC9C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACA,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK;gBAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAChC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAClG,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;aAChE,CAAC;IACN,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9H,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACtF,MAAM,OAAO,GAA0B,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE/H,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAEvE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,iJAAiJ;QACjJ,gEAAgE;QAChE,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAEtD,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,QAAmC,CAAC;IAExC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,KAAK,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACtG,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@valancex/valance",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "VALANCE application composition: starts a NEXUS application, renders it with MESH, and realizes it on a PORT target.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,6 +27,10 @@
|
|
|
27
27
|
"types": "./dist/web-server.d.ts",
|
|
28
28
|
"default": "./dist/web-server.js"
|
|
29
29
|
},
|
|
30
|
+
"./web/plugin": {
|
|
31
|
+
"types": "./dist/web-plugin.d.ts",
|
|
32
|
+
"default": "./dist/web-plugin.js"
|
|
33
|
+
},
|
|
30
34
|
"./web/build": {
|
|
31
35
|
"types": "./dist/web-manifest.d.ts",
|
|
32
36
|
"default": "./dist/web-manifest.js"
|
|
@@ -60,6 +64,7 @@
|
|
|
60
64
|
"@valancex/mesh-runtime": "^0.10.0",
|
|
61
65
|
"@valancex/port-web": "^0.4.0",
|
|
62
66
|
"effect": "^3.10.0",
|
|
67
|
+
"esbuild": "0.28.2",
|
|
63
68
|
"typescript": "^5.6.0",
|
|
64
69
|
"vitest": "^3.2.0"
|
|
65
70
|
},
|