@_linked/server 2.1.7 → 2.3.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/.github/workflows/publish.yml +90 -7
- package/CHANGELOG.md +24 -0
- package/lib/esm/shapes/LincdAPI.d.ts +1 -1
- package/lib/esm/shapes/LincdAPI.js +2 -1
- package/lib/esm/shapes/LincdAPI.js.map +1 -1
- package/lib/esm/shapes/LinkedServer.js +44 -20
- package/lib/esm/shapes/LinkedServer.js.map +1 -1
- package/lib/esm/shapes/quadstores/BackendAPIStore.d.ts +9 -0
- package/lib/esm/shapes/quadstores/BackendAPIStore.js +16 -4
- package/lib/esm/shapes/quadstores/BackendAPIStore.js.map +1 -1
- package/lib/esm/shapes/quadstores/BackendAPIStoreProvider.d.ts +1 -0
- package/lib/esm/shapes/quadstores/BackendAPIStoreProvider.js +3 -0
- package/lib/esm/shapes/quadstores/BackendAPIStoreProvider.js.map +1 -1
- package/package.json +4 -4
- package/readme.md +40 -0
|
@@ -14,6 +14,12 @@ jobs:
|
|
|
14
14
|
permissions:
|
|
15
15
|
contents: write
|
|
16
16
|
pull-requests: write
|
|
17
|
+
# `npm stage publish --provenance` signs the tarball with a GitHub OIDC token, so the
|
|
18
|
+
# job needs to be able to mint one. This does NOT switch the package to OIDC trusted
|
|
19
|
+
# publishing — authentication is still the org npm token. It only lets npm attest where
|
|
20
|
+
# the tarball was built, which is worth having on a package a human is about to approve
|
|
21
|
+
# sight-unseen.
|
|
22
|
+
id-token: write
|
|
17
23
|
steps:
|
|
18
24
|
# Author the changesets "Version Packages" PR as the org release App (not the default
|
|
19
25
|
# GITHUB_TOKEN) so its CI runs without a manual "Approve and run" gate. Requires the org
|
|
@@ -36,31 +42,108 @@ jobs:
|
|
|
36
42
|
node-version: 22.16.0
|
|
37
43
|
registry-url: 'https://registry.npmjs.org'
|
|
38
44
|
|
|
45
|
+
# `npm stage` landed in CLI 11.15.0; Node 22.16 ships npm 10.x, so the bundled one
|
|
46
|
+
# cannot stage. Pinned rather than `@latest` so a future npm release cannot change how
|
|
47
|
+
# releases behave without a commit here.
|
|
48
|
+
- name: Use an npm that can stage
|
|
49
|
+
run: npm i -g npm@^11.15.0
|
|
50
|
+
|
|
39
51
|
- name: Install dependencies
|
|
40
52
|
run: npm ci --legacy-peer-deps
|
|
41
53
|
|
|
42
54
|
- name: Build
|
|
43
55
|
run: npm run build
|
|
44
56
|
|
|
45
|
-
|
|
57
|
+
# No `publish:` — changesets only opens/updates the version PR here. Publishing is the
|
|
58
|
+
# step below, because `changeset publish` shells out to `npm publish`, which a
|
|
59
|
+
# stage-only token cannot do (changesets/changesets#2025 is open for first-class
|
|
60
|
+
# support). Splitting them keeps changesets doing what it is good at — versions and
|
|
61
|
+
# changelogs — and leaves the registry call to us.
|
|
62
|
+
- name: Create release Pull Request
|
|
46
63
|
id: changesets
|
|
47
64
|
uses: changesets/action@v1
|
|
48
65
|
with:
|
|
49
|
-
publish: npx changeset publish
|
|
50
66
|
title: 'chore: release'
|
|
51
67
|
commit: 'chore: release'
|
|
52
68
|
env:
|
|
53
69
|
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
|
|
70
|
+
|
|
71
|
+
# Stage the version for a human to approve.
|
|
72
|
+
#
|
|
73
|
+
# A staged version is uploaded but NOT public: a maintainer reviews it and approves with
|
|
74
|
+
# 2FA, from the Staged Packages tab in the npm user menu or `npm stage approve`. That is
|
|
75
|
+
# the point — every release keeps a proof-of-presence step even though CI is
|
|
76
|
+
# unattended — and it is why the org token is scoped "read and write (stage only)".
|
|
77
|
+
#
|
|
78
|
+
# Idempotent: this workflow runs on every push to main, including the merge of the
|
|
79
|
+
# version PR and any later commit, so it must do nothing when the version is already on
|
|
80
|
+
# the registry or already sitting in the queue.
|
|
81
|
+
- name: Stage the release for approval
|
|
82
|
+
if: steps.changesets.outputs.hasChangesets != 'true'
|
|
83
|
+
env:
|
|
54
84
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
|
|
55
85
|
NPM_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
|
|
86
|
+
run: |
|
|
87
|
+
set -euo pipefail
|
|
88
|
+
name=$(node -p "require('./package.json').name")
|
|
89
|
+
version=$(node -p "require('./package.json').version")
|
|
90
|
+
private=$(node -p "require('./package.json').private === true")
|
|
91
|
+
if [ "$private" = "true" ]; then
|
|
92
|
+
echo "$name is private — nothing to publish."; exit 0
|
|
93
|
+
fi
|
|
94
|
+
|
|
95
|
+
if npm view "$name@$version" version >/dev/null 2>&1; then
|
|
96
|
+
echo "$name@$version is already on the registry — nothing to do."
|
|
97
|
+
exit 0
|
|
98
|
+
fi
|
|
99
|
+
|
|
100
|
+
if npm stage list "$name" 2>/dev/null | grep -q "$version"; then
|
|
101
|
+
echo "$name@$version is already staged and waiting for approval."
|
|
102
|
+
exit 0
|
|
103
|
+
fi
|
|
104
|
+
|
|
105
|
+
echo "Staging $name@$version…"
|
|
106
|
+
# Capture the output: `npm stage publish` prints the stage id, and `npm stage
|
|
107
|
+
# approve` takes ONLY that id — a package spec is rejected with "stage-id must be a
|
|
108
|
+
# valid UUID". Without this the notice below hands out a command that does not work.
|
|
109
|
+
out=$(npm stage publish --access public --provenance 2>&1 | tee /dev/stderr)
|
|
110
|
+
uuid='[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
|
|
111
|
+
# `|| true` because the script runs under `set -euo pipefail`: a grep that matches
|
|
112
|
+
# nothing exits 1 and would fail the step even though the staging itself succeeded.
|
|
113
|
+
stage_id=$(printf '%s' "$out" | grep -oE "$uuid" | tail -1 || true)
|
|
114
|
+
|
|
115
|
+
{
|
|
116
|
+
echo "### 📦 \`$name@$version\` is staged, not published"
|
|
117
|
+
echo
|
|
118
|
+
echo "It is uploaded and held for review. **Approve it to make it public:**"
|
|
119
|
+
echo
|
|
120
|
+
if [ -n "$stage_id" ]; then
|
|
121
|
+
echo "- **CLI:** \`npm stage approve $stage_id\`"
|
|
122
|
+
else
|
|
123
|
+
echo "- **CLI:** \`npm stage list $name\` to find the id, then"
|
|
124
|
+
echo " \`npm stage approve <stage-id>\`"
|
|
125
|
+
fi
|
|
126
|
+
echo "- **Web:** [npmjs.com](https://www.npmjs.com) → your avatar → **Staged"
|
|
127
|
+
echo " Packages** → **Approve**. The button stays disabled until npm has"
|
|
128
|
+
echo " finished scanning the tarball; the page refreshes every minute."
|
|
129
|
+
echo
|
|
130
|
+
echo "Both prompt for 2FA. Until then \`npm install $name\` still resolves"
|
|
131
|
+
echo "\`$(npm view "$name" version 2>/dev/null || echo 'nothing')\`."
|
|
132
|
+
} >> "$GITHUB_STEP_SUMMARY"
|
|
133
|
+
|
|
134
|
+
if [ -n "$stage_id" ]; then
|
|
135
|
+
echo "::notice title=Approval needed::$name@$version is staged. Run: npm stage approve $stage_id"
|
|
136
|
+
else
|
|
137
|
+
echo "::notice title=Approval needed::$name@$version is staged, but the stage id could not be read from the output. Run: npm stage list $name"
|
|
138
|
+
fi
|
|
56
139
|
|
|
57
|
-
# When changesets opened/updated the version PR
|
|
58
|
-
#
|
|
59
|
-
# workflow, which then
|
|
140
|
+
# When changesets opened/updated the version PR, merge it so the release reaches the
|
|
141
|
+
# staging queue without a manual click. App token → the merge's push re-triggers this
|
|
142
|
+
# workflow, which then stages. DIRECT-merge (not `--auto`): GitHub
|
|
60
143
|
# auto-merge ignores branch-protection review-bypass allowances; main is check-only so a
|
|
61
144
|
# direct merge lands once the required check is green — retry until then.
|
|
62
|
-
- name: Merge the version PR to
|
|
63
|
-
if: steps.changesets.outputs.hasChangesets == 'true'
|
|
145
|
+
- name: Merge the version PR to stage the release
|
|
146
|
+
if: steps.changesets.outputs.hasChangesets == 'true'
|
|
64
147
|
env:
|
|
65
148
|
GH_TOKEN: ${{ steps.app-token.outputs.token }}
|
|
66
149
|
run: |
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# @\_linked/server
|
|
2
2
|
|
|
3
|
+
## 2.3.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#36](https://github.com/linked-cm/server/pull/36) [`e0c0627`](https://github.com/linked-cm/server/commit/e0c06276e578396efe4be413f367b391b2132451) Thanks [@flyon](https://github.com/flyon)! - Make server call failures explicit. Update code that relied on failed calls resolving quietly.
|
|
8
|
+
|
|
9
|
+
- **No provider now answers 501.** A `/call/...` request that no provider handles gets `501 {"error": "No provider for <pkg>/<method>"}`. Before, it got `200` with an empty body (shape methods) or `200 null` (backend methods). This covers both a missing provider and a provider without the called method.
|
|
10
|
+
- **Provider errors answer 500 (since 2.2.0).** A provider method that throws answers `500 {"error": ...}` instead of `200 null`. The 2.2.0 changeset did not mention this.
|
|
11
|
+
- **Backend-to-backend `Server.call` rejects.** When `Server.call` runs on the backend, where it calls `LinkedServer` directly, a provider method that throws rejects the promise (since 2.2.0). An unmatched call throws a `ServerCallError` with status 501. `@_linked/server-utils` resolves that as `undefined` unless the caller passes `rejectOnError: true`.
|
|
12
|
+
- **`BackendAPIStore` rejects only on HTTP errors.** It calls with `rejectOnError: true`, so a failed query rejects with a `ServerCallError` carrying the HTTP `status` and the server's message. A successful call resolves whatever the provider returned, `undefined` included. Before, every `undefined` result was treated as a failure.
|
|
13
|
+
- **Dependency.** Requires `@_linked/server-utils` ^1.2.0.
|
|
14
|
+
|
|
15
|
+
## 2.2.0
|
|
16
|
+
|
|
17
|
+
### Minor Changes
|
|
18
|
+
|
|
19
|
+
- [#34](https://github.com/linked-cm/server/pull/34) [`f7ae758`](https://github.com/linked-cm/server/commit/f7ae758ba165df8c1f4a4ca46b189f3e17cc1e51) Thanks [@flyon](https://github.com/flyon)! - Honour `server.apiOnly` (set by `linked start --api-only`): LinkedServer skips the SPA catch-all, so a backend without a web frontend serves its API routes and answers page requests with a plain 404 instead of failing to render a missing `src/App.tsx`.
|
|
20
|
+
|
|
21
|
+
`BackendAPIStore` implements `askQuery`, required by `IDataset` since `@_linked/core` 2.18.1. It is forwarded to the backend like the other query kinds (as DSL-JSON through `Server.call`, rehydrated and answered by `BackendAPIStoreProvider` through `LinkedStorage.askQuery`), so it type-checks as an `IDataset` without a cast. `@_linked/core` is bumped to `^2.18.1`.
|
|
22
|
+
|
|
23
|
+
Linked packages whose `exports` have no `./backend` entry no longer log a `Missing "./backend" specifier` error at boot. Real backend load errors are still reported.
|
|
24
|
+
|
|
25
|
+
A backend or shape provider method that throws during a `/call/...` request now answers with HTTP 500 and a JSON `{error}` body (the same shape as other server errors) instead of `200 null`; direct backend-to-backend calls get a rejected promise. `BackendAPIStore` rejects when `Server.call` returns no response (a failed HTTP call), so a failed query no longer reads as an empty result.
|
|
26
|
+
|
|
3
27
|
## 2.1.7
|
|
4
28
|
|
|
5
29
|
### Patch Changes
|
|
@@ -36,6 +36,6 @@ export declare class LincdAPI extends Shape {
|
|
|
36
36
|
}): Promise<import("@_linked/core/queries/DeleteQuery").DeleteResponse>;
|
|
37
37
|
post_select_raw({ query }: {
|
|
38
38
|
query: any;
|
|
39
|
-
}): Promise<void | import("@_linked/core/sparql/resultMapping").
|
|
39
|
+
}): Promise<void | import("@_linked/core/sparql/resultMapping").SparqlQueryResults>;
|
|
40
40
|
private checkRawQuerySupport;
|
|
41
41
|
}
|
|
@@ -59,7 +59,8 @@ let LincdAPI = class LincdAPI extends Shape {
|
|
|
59
59
|
await LinkedStorage.getDefaultDataset()
|
|
60
60
|
.rawQuery(`SELECT (COUNT(?s) AS ?count) ?type WHERE { ?s a ?type } GROUP BY ?type`)
|
|
61
61
|
.then((results) => {
|
|
62
|
-
|
|
62
|
+
// rawQuery also types ASK results (a boolean envelope); this is a SELECT.
|
|
63
|
+
if (!results || !('results' in results))
|
|
63
64
|
return;
|
|
64
65
|
results.results.bindings.forEach((binding) => {
|
|
65
66
|
if (binding.type && binding.type.value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LincdAPI.js","sourceRoot":"","sources":["../../../src/shapes/LincdAPI.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"LincdAPI.js","sourceRoot":"","sources":["../../../src/shapes/LincdAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@ import { AppContextProvider } from '@_linked/server-utils/components/AppContext'
|
|
|
25
25
|
import { JSONParser } from '@_linked/server-utils/utils/JSONParser';
|
|
26
26
|
import { JSONWriter } from '@_linked/server-utils/utils/JSONWriter';
|
|
27
27
|
import { Server } from '@_linked/server-utils/utils/Server';
|
|
28
|
+
import { ServerCallError } from '@_linked/server-utils/utils/ServerCallError';
|
|
28
29
|
import { ShapeProvider } from '@_linked/server-utils/utils/ShapeProvider';
|
|
29
30
|
import { Shape } from '@_linked/core/shapes/Shape';
|
|
30
31
|
import { LinkedErrorLogging } from '@_linked/core/utils/LinkedErrorLogging';
|
|
@@ -214,7 +215,7 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
214
215
|
// })
|
|
215
216
|
// }
|
|
216
217
|
async start() {
|
|
217
|
-
var _a, _b, _c, _d;
|
|
218
|
+
var _a, _b, _c, _d, _e;
|
|
218
219
|
this.initPackage();
|
|
219
220
|
// Static assets should come from the static store URL (versioned path),
|
|
220
221
|
// not the upload store URL. storage-config sets STATIC_ACCESS_URL accordingly.
|
|
@@ -411,7 +412,11 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
411
412
|
// hook for providers to register their own routes, so installing the
|
|
412
413
|
// catch-all before it would shadow every GET route registered there —
|
|
413
414
|
// answering them with the client shell at status 200.
|
|
414
|
-
|
|
415
|
+
// An API-only backend (`linked start --api-only`) has no app to render:
|
|
416
|
+
// without the catch-all, page requests get express's plain 404.
|
|
417
|
+
if (!((_e = this.config.server) === null || _e === void 0 ? void 0 : _e.apiOnly)) {
|
|
418
|
+
this.installSpaFallback();
|
|
419
|
+
}
|
|
415
420
|
//remove http(s):// and remove port :[port]
|
|
416
421
|
const HOST = process.env.SITE_ROOT.replace(/https?:\/\//, '').replace(/:\d+$/, '');
|
|
417
422
|
//backlog of 1024 means maximum of 1024 connections in the queue (higher than default)
|
|
@@ -892,17 +897,21 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
892
897
|
// shapes:
|
|
893
898
|
// Node's import() → ERR_MODULE_NOT_FOUND + "Cannot find module 'X/backend'"
|
|
894
899
|
// Vite's ssrLoadModule() → "Failed to load url X/backend"
|
|
900
|
+
// package `exports` without a ./backend entry (Node + Vite)
|
|
901
|
+
// → 'Missing "./backend" specifier in "X" package'
|
|
895
902
|
// In either case, missing /backend on a package that doesn't
|
|
896
903
|
// ship a backend is expected; loud-error only on REAL load
|
|
897
904
|
// failures (syntax error inside an existing backend.ts, etc).
|
|
898
905
|
const nodeMatch = e.message.match(/module \'([^\']+)'/);
|
|
899
906
|
const viteMatch = e.message.match(/Failed to load url ([^\s]+)/);
|
|
900
907
|
const matchedSpec = (_a = nodeMatch === null || nodeMatch === void 0 ? void 0 : nodeMatch[1]) !== null && _a !== void 0 ? _a : viteMatch === null || viteMatch === void 0 ? void 0 : viteMatch[1];
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
(
|
|
904
|
-
|
|
905
|
-
e.
|
|
908
|
+
const notExported = /Missing "\.\/backend" specifier in "[^"]+" package/.test(e.message);
|
|
909
|
+
let providerNotFound = notExported ||
|
|
910
|
+
(!!matchedSpec &&
|
|
911
|
+
matchedSpec.includes('/backend') &&
|
|
912
|
+
((e.code === 'ERR_MODULE_NOT_FOUND' &&
|
|
913
|
+
e.message.indexOf(`Cannot find module`) !== -1) ||
|
|
914
|
+
e.message.indexOf('Failed to load url') !== -1));
|
|
906
915
|
if (providerNotFound) {
|
|
907
916
|
// console.warn('Error loading ' + providerPath + ': ' + e.stack);
|
|
908
917
|
if (warnIfNotFound) {
|
|
@@ -1092,6 +1101,7 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1092
1101
|
((_b = (_a = provider.shape) === null || _a === void 0 ? void 0 : _a.shape) === null || _b === void 0 ? void 0 : _b.id) === nodeShapeId);
|
|
1093
1102
|
});
|
|
1094
1103
|
};
|
|
1104
|
+
let providerMethodFailed = false;
|
|
1095
1105
|
try {
|
|
1096
1106
|
//- find matching provider
|
|
1097
1107
|
let shapeClass = getShapeClass(shapeURI);
|
|
@@ -1108,14 +1118,15 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1108
1118
|
}
|
|
1109
1119
|
}
|
|
1110
1120
|
}
|
|
1111
|
-
//
|
|
1112
|
-
//
|
|
1113
|
-
//
|
|
1114
|
-
//
|
|
1121
|
+
// No provider for this shape (e.g. it isn't registered on this side).
|
|
1122
|
+
// Framework packages are kept single-instance by the cli vite-config's
|
|
1123
|
+
// `optimizeDeps.exclude`, so a mismatch here signals a real
|
|
1124
|
+
// misconfiguration. Answer 501 (via handleErrorsJson) rather than an empty
|
|
1125
|
+
// 200; direct backend callers get a rejected ServerCallError.
|
|
1115
1126
|
if (!shapeProvider) {
|
|
1116
1127
|
console.warn(`[LinkedServer] callShapeMethod: no provider for '${shapeURI}' ` +
|
|
1117
|
-
`(pkg '${pkg}', method '${method}')
|
|
1118
|
-
|
|
1128
|
+
`(pkg '${pkg}', method '${method}').`);
|
|
1129
|
+
throw new ServerCallError(501, `No provider for ${pkg}/${method}`);
|
|
1119
1130
|
}
|
|
1120
1131
|
if (shapeProvider) {
|
|
1121
1132
|
//NOTE: if this is a direct call from backend to backend, we won't know the request & response here because those don't get passed to the Server utility
|
|
@@ -1147,6 +1158,11 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1147
1158
|
}
|
|
1148
1159
|
catch (e) {
|
|
1149
1160
|
console.warn(`Error whilst calling ${Object.getPrototypeOf(shapeProvider).constructor.name}.${method}(): `, e);
|
|
1161
|
+
// Rethrow so the HTTP route answers with an error status (via
|
|
1162
|
+
// handleErrorsJson) instead of `200 null`, and direct backend
|
|
1163
|
+
// callers get a rejected promise.
|
|
1164
|
+
providerMethodFailed = true;
|
|
1165
|
+
throw e;
|
|
1150
1166
|
}
|
|
1151
1167
|
}
|
|
1152
1168
|
else {
|
|
@@ -1154,15 +1170,16 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1154
1170
|
}
|
|
1155
1171
|
}
|
|
1156
1172
|
else {
|
|
1157
|
-
|
|
1173
|
+
console.warn(`${Object.getPrototypeOf(shapeProvider).constructor.name} does not have a method called ${method}`);
|
|
1174
|
+
throw new ServerCallError(501, `No provider for ${pkg}/${method}`);
|
|
1158
1175
|
}
|
|
1159
1176
|
}
|
|
1160
|
-
else {
|
|
1161
|
-
return this.sendError(response, 501, "Could not find provider for shape '" + shapeURI + "'");
|
|
1162
|
-
}
|
|
1163
1177
|
}
|
|
1164
1178
|
catch (err) {
|
|
1165
|
-
|
|
1179
|
+
if (!providerMethodFailed && !ServerCallError.is(err)) {
|
|
1180
|
+
console.warn(`Error whilst trying to access provider of ${pkg}: `, err);
|
|
1181
|
+
}
|
|
1182
|
+
throw err;
|
|
1166
1183
|
}
|
|
1167
1184
|
return null;
|
|
1168
1185
|
}
|
|
@@ -1183,6 +1200,11 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1183
1200
|
return await fn(req, res);
|
|
1184
1201
|
}
|
|
1185
1202
|
catch (err) {
|
|
1203
|
+
// A ServerCallError (e.g. 501 for a call no provider handles) carries
|
|
1204
|
+
// its own status and a message that is safe to send to the client.
|
|
1205
|
+
if (ServerCallError.is(err)) {
|
|
1206
|
+
return this.sendError(res, err.status, err.message);
|
|
1207
|
+
}
|
|
1186
1208
|
this.sendError(res, 500, 'internal server error' + (isDevelopment ? ': ' + (err === null || err === void 0 ? void 0 : err.stack) : ''), 'internal server error: ' + (err === null || err === void 0 ? void 0 : err.stack));
|
|
1187
1209
|
}
|
|
1188
1210
|
};
|
|
@@ -1547,12 +1569,12 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1547
1569
|
let result;
|
|
1548
1570
|
if (!genericBackendProvider) {
|
|
1549
1571
|
console.warn(`${chalk.magenta(pkg)} does not have a generic backend provider. If you can edit this package, make sure 'backend.ts' is included in 'tsconfig.json' and that it exports a provider.`);
|
|
1550
|
-
|
|
1572
|
+
throw new ServerCallError(501, `No provider for ${pkg}/${method}`);
|
|
1551
1573
|
}
|
|
1552
1574
|
//test if there is a matching method in the backend provider
|
|
1553
1575
|
if (!genericBackendProvider[method]) {
|
|
1554
1576
|
console.warn(`Generic provider '${Object.getPrototypeOf(genericBackendProvider).constructor.name}' of ${pkg} does not have a method called ${method}`);
|
|
1555
|
-
|
|
1577
|
+
throw new ServerCallError(501, `No provider for ${pkg}/${method}`);
|
|
1556
1578
|
}
|
|
1557
1579
|
try {
|
|
1558
1580
|
//TODO: remove init request.
|
|
@@ -1573,6 +1595,8 @@ let LinkedServer = class LinkedServer extends Shape {
|
|
|
1573
1595
|
console.warn(`Error whilst calling ${method}() in provider ${Object.getPrototypeOf(genericBackendProvider).constructor.name} of package ${pkg}:\n`, e);
|
|
1574
1596
|
// error logging
|
|
1575
1597
|
LinkedErrorLogging.log(e);
|
|
1598
|
+
// Rethrow so the HTTP route answers with an error status instead of `200 null`.
|
|
1599
|
+
throw e;
|
|
1576
1600
|
}
|
|
1577
1601
|
return result;
|
|
1578
1602
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkedServer.js","sourceRoot":"","sources":["../../../src/shapes/LinkedServer.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;AACb,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,OAAqC,MAAM,SAAS,CAAC;AAC5D,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAElC,oEAAoE;AACpE,oEAAoE;AACpE,oEAAoE;AACpE,0BAA0B;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,aAAa,EACb,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,gEAAgE;AAChE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;AAC3D,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC;AAG7D,mFAAmF;AACnF,oGAAoG;AACpG,MAAM,gBAAgB,GAAG,IAAI,SAAS,EAAE,CAAC;AACzC,6EAA6E;AAC7E,MAAM,uBAAuB,GAAG,WAAW,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAErE,sEAAsE;AACrE,UAAkB,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;AAExD,4DAA4D;AAC3D,UAAkB,CAAC,KAAK,GAAG,uBAAuB,CAAC;AAEpD,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;IACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnB,gBAAgB;IAChB,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE;IACvC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACvD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnB,gBAAgB;IAChB,kBAAkB,CAAC,GAAG,CAAC,GAAY,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAEpD,6DAA6D;AAC7D,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAEnD,kCAAkC;AAClC,2BAA2B;AAC3B,kDAAkD;AAClD,EAAE;AACF,iCAAiC;AACjC,MAAM,CAAC,qBAAqB,CAAC,GAAG,oBAAoB,CAAC;AAErD,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAGpB,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,KAAK;IAuBrC;;;OAGG;IACH,YAAY,MAAgD;QAC1D,KAAK,CACH,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC;YACtD,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CACd,CAAC;QA1BI,gBAAW,GAAwB,IAAI,GAAG,EAAE,CAAC;QAI7C,mBAAc,GAAkC,IAAI,CAAC;QAKrD,YAAO,GAAG,cAAc,CAAC;QACzB,YAAO,GAAY,KAAK,CAAC;QACzB,mBAAc,GAAiC,IAAI,GAAG,EAAE,CAAC;QACzD,qBAAgB,GAAiC,IAAI,GAAG,EAAE,CAAC;QACnE,4DAA4D;QACpD,mBAAc,GAAwB,IAAI,GAAG,EAAE,CAAC;QAatD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;YAC9D,uEAAuE;YACvE,0EAA0E;YAC1E,6BAA6B;YAC7B,IAAI,CAAC,MAAM,GAAG,MAAsB,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC,CAAC;QAEhE,iEAAiE;QACjE,qEAAqE;QACrE,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAmCE;IACF,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CACvB,QAAQ,CAAC,YAAY,CACnB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAC3C,OAAO,CACR,CACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;QAExB,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAElC,MAAM,qBAAqB,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,0BAA0B;;QACtC,qEAAqE;QACrE,+DAA+D;QAC/D,8EAA8E;QAC9E,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,UAAU,GAAG,MAAC,IAAI,CAAC,MAAc,0CAAE,gBAAgB,CAAC;QAC1D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;QACvD,IAAI,UAAU,KAAK,KAAK,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,iBAAiB,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC;YACH,MAAM,EAAC,UAAU,EAAC,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YACnD,yEAAyE;YACzE,2EAA2E;YAC3E,sEAAsE;YACtE,iDAAiD;YACjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAc,CAAC,CAAC;YAChD,yEAAyE;YACzE,6DAA6D;YAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;YACD,OAAO,CAAC,GAAG,CACT,+BAA+B,MAAM,CAAC,MAAM,yBAAyB,CACtE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,GAAG,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,4EAA4E;IAC5E,EAAE;IACF,4DAA4D;IAC5D,mDAAmD;IACnD,OAAO;IACP,IAAI;IAEJ,KAAK,CAAC,KAAK;;QACT,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,wEAAwE;QACxE,+EAA+E;QAC/E,yEAAyE;QACzE,qEAAqE;QACrE,sEAAsE;QACtE,0CAA0C;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC;QAC3D,MAAM,eAAe,GAAG,WAAW;YACjC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CACE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBAC7B,iBAAiB,CAAC,SAAS;gBAC3B,EAAE,CACH,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACzB,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAE,EAAE,CACxC,GAAG,eAAe,UAAU,SAAS,EAAE,CAAC;QAE1C,qEAAqE;QACrE,6DAA6D;QAC7D,IAAI,CAAC,MAAM,GAAG;YACZ,SAAS,EACP,WAAW,CAAC,yBAAyB,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;YACvE,UAAU,EAAE,WAAW,CAAC,mBAAmB,CAAC;SAC7C,CAAC;QACF,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CACnC,OAAO,CAAC,GAAG,EAAE,EACb,oCAAoC,CACrC,CAAC;YACF,IAAI,QAAQ,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;gBACrE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,YAAY,CAAC;gBACpC,8CAA8C;gBAC9C,uEAAuE;gBACvE,MAAM,SAAS,GACb,YAAY,CAAC,eAAe,CAAC;oBAC7B,YAAY,CAAC,cAAc,CAAC;oBAC5B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,CAAC,CAAC;gBAC3D,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,EAAE,CAAC;oBACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,YAAY,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrE,CAAC;gBACD,IAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,0CAAG,CAAC,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,YAAY,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;QACD,uEAAuE;QACvE,6DAA6D;QAC7D,mEAAmE;QACnE,IAAI,CAAA,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI,KAAI,CAAC,CAAA,MAAC,IAAI,CAAC,MAAM,CAAC,QAAgB,0CAAG,eAAe,CAAC,CAAA,EAAE,CAAC;YAC3F,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;QAC3D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,6BAA6B,CAAC;QAC9D,CAAC;QAED,wEAAwE;QACxE,+DAA+D;QAC/D,qEAAqE;QACrE,+CAA+C;QAC/C,oFAAoF;QACpF,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;QAExB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;QAExD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,gOAAgO;QAChO,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,qCAAqC;QACrC,kCAAkC;QAClC,YAAY;QACZ,MAAM;QACN,qBAAqB;QACrB,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAElC,MAAM,qBAAqB,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAExC,wCAAwC;QAExC,UAAU;QACV,sBAAsB;QACtB,gEAAgE;QAChE,6FAA6F;QAC7F,KAAK;QACL,uBAAuB;QACvB,qDAAqD;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAEjD,sCAAsC;QACtC,EAAE;QACF,sCAAsC;QACtC,yIAAyI;QACzI,yCAAyC;QAEzC,MAAM,IAAI,CAAC,iCAAiC,CAAC,wBAAwB,CAAC,CAAC;QAEvE,gEAAgE;QAChE,mEAAmE;QACnE,iEAAiE;QACjE,6CAA6C;QAC7C,MAAM,cAAc,GAAG,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,cAAc,CAAC;QACnE,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;QAED,qEAAqE;QACrE,mEAAmE;QACnE,iEAAiE;QACjE,gEAAgE;QAChE,qEAAqE;QACrE,0DAA0D;QAE1D,iCAAiC;QACjC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,kBAAkB;QAC7D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,kBAAkB;QAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,SAAS,EACT,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;YACzB,MAAM,EAAE,OAAO,EAAE,mCAAmC;YACpD,SAAS,EAAE,IAAI,EAAE,wCAAwC;SAC1D,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,UAAU,EACV,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE;YAC/B,MAAM,EAAE,OAAO,EAAE,mCAAmC;YACpD,SAAS,EAAE,IAAI,EAAE,wCAAwC;SAC1D,CAAC,CACH,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,cAAc,EACd,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE;YACrC,MAAM,EAAE,QAAQ,EAAE,mCAAmC;YACrD,SAAS,EAAE,IAAI,EAAE,wCAAwC;SAC1D,CAAC,CACH,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAExE,gGAAgG;QAChG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,8DAA8D;QAC9D,sEAAsE;QACtE,mEAAmE;QACnE,mEAAmE;QACnE,sEAAsE;QACtE,qEAAqE;QACrE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4BAA4B,EAC5B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACvC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,mCAAmC,EACnC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACvC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,oBAAoB,EACpB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CACvC,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CACxC,CACF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,2BAA2B,EAC3B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CACvC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC,CACtC,CACF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,uBAAuB,EACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CACvC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CACtC,CACF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,uBAAuB,EACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CACvC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CACrC,CACF,CAAC;QACF,oBAAoB;QACpB,0BAA0B;QAC1B,4EAA4E;QAC5E,KAAK;QAEL,0GAA0G;QAC1G,mBAAmB;QACnB,qCAAqC;QACrC,MAAM,IAAI,CAAC,iCAAiC,CAC1C,gCAAgC,CACjC,CAAC;QAEF,2FAA2F;QAC3F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACzC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,yEAAyE;QACzE,2EAA2E;QAC3E,kEAAkE;QAClE,oDAAoD;QACpD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACpD,2EAA2E;QAC3E,4EAA4E;QAC5E,MAAM,aAAa,GAAG,CAAC,QAA4B,EAAW,EAAE;YAC9D,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAC5C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,CAAC,GAAoB,EAAE,GAAqB,EAAW,EAAE;YAC5E,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,kCAAkC;gBACvD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBACpB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC;gBAAE,OAAO;YACpC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC9C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC;gBAAE,OAAO;YACpC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACpB,mEAAmE;YACnE,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,mBAAmB;QACnB,MAAM,IAAI,CAAC,iCAAiC,CAAC,uBAAuB,CAAC,CAAC;QAEtE,0EAA0E;QAC1E,qEAAqE;QACrE,sEAAsE;QACtE,sDAAsD;QACtD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,2CAA2C;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,OAAO,CACnE,OAAO,EACP,EAAE,CACH,CAAC;QAEF,sFAAsF;QACtF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;YACvE,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;YAC1D,mCAAmC;QACrC,CAAC,CAAC,CAAC;QACH,4HAA4H;QAC5H,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAM,CAAC;QAC1C,mJAAmJ;QACnJ,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,KAAM,CAAC;QAExC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK;YACzC,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5D,QAAQ,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,KAAK,QAAQ;oBACX,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,+BAA+B,CAAC,CAAC;oBACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,KAAK,YAAY;oBACf,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,oBAAoB,CAAC,CAAC;oBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB;oBACE,MAAM,KAAK,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,cAAc,KAAI,CAAC;IAEzB;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,OAAO,CAAC,GAAG,CAChB,aAAa,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACxC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,iCAAiC,CAAC,MAAc,EAAE,GAAG,IAAW;QACpE,KAAK,IAAI,eAAe,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3D,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjD,SAAS;YACX,CAAC;YACD,IAAI,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gBACjD,MAAM,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,qBAAqB;QACnB,8CAA8C;QAC9C,sBAAsB;QACtB,EAAE;QACF,8CAA8C;QAC9C,gDAAgD;QAChD,8BAA8B;QAC9B,gDAAgD;QAChD,UAAU;QACV,sBAAsB;QACtB,iBAAiB;QACjB,4BAA4B;QAC5B,UAAU;QACV,QAAQ;QACR,OAAO;QACP,8BAA8B;QAC9B,gCAAgC;QAChC,sCAAsC;IACxC,CAAC;IACD,KAAK,CAAC,oBAAoB;QACxB,mEAAmE;QACnE,kEAAkE;QAClE,0DAA0D;QAC1D,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,IAAI,GAAG,CAG7B,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,8BAA8B,CAC1D,eAAe,EACf,IAAI,CAAC,OAAO,CACb,CAAC;QACF,KAAK,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,gBAAgB,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE;iBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC;iBAC3D,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACvB,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC/B,6DAA6D;gBAC7D,6DAA6D;gBAC7D,iBAAiB;gBACjB,qBAAqB;gBACrB,2CAA2C;gBAC3C,0CAA0C;gBAC1C,QAAQ;gBACR,MAAM;gBACN,0CAA0C;gBAC1C,8DAA8D;gBAC9D,wDAAwD;gBACxD,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,8BAA8B,CACpC,WAA+D,EAC/D,cAAmB;QAEnB,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAG7B,CAAC;QACJ,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE5C,8CAA8C;QAC9C,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;YAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3D,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,OAAO,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC1D,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACpC,IAAI,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,SAAS;YACX,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACnC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,cAAc,EAAE,CAAC;gBACnB,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBAClD,MAAM,GAAG,GAAG,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,YAAY,EAAE,CAAC;oBACtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;wBAChD,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;4BACxD,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC3B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG;;QACxB,8CAA8C;QAC9C,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACxB,IAAI,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACzB,QAAQ;QACR,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACtB,gCAAgC;YAChC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,2EAA2E;QAC9G,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;QAE9C,IAAI,aAAa,EAAE,CAAC;YAClB,sFAAsF;YACtF,6CAA6C;YAC7C,uDAAuD;YACvD,kDAAkD;YAClD,OAAO;YAEP,6DAA6D;YAC7D,mDAAmD;YACnD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;YACnC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE/C,0DAA0D;YAC1D,0EAA0E;YAC1E,MAAM,OAAO,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GACjD,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAC1B,EAAE,CAAC;YAEH,wCAAwC;YACxC,mGAAmG;YACnG,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAC1B,SAAS,EACT,GAAG,OAAO,GAAG,GAAG,EAAE,CACnB,CAAC;YAEF,6CAA6C;YAC7C,uGAAuG;YACvG,MAAM,oBAAoB,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC;gBACtD,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtB,CAAC,CAAC,WAAW,CAAC;YAEhB,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAClD,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAC5D,OAAO;YACT,CAAC;YAED,uDAAuD;YACvD,MAAM,WAAW,GAAY,MAAM,iBAAiB,CAAC,UAAU,CAC7D,oBAAoB,CACrB,CAAC;YAEF,2CAA2C;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,gBAAgB,GAAW,SAAS,GAAG,GAAG,GAAG,oBAAoB,CAAC;gBACxE,eAAe;gBACf,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;gBAChE,4CAA4C;gBAC5C,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,GAAG,OAAO,CAAC,GAAG,MACZ,OAAO,CAAC,GAAG,CAAC,IACd,qBAAqB,aAAa,OAAO,KAAK,MAAM,MAAM,IAAI,EAAE,EAAE,CACnE,CAAC;gBACF,2GAA2G;gBAC3G,uFAAuF;gBACvF,wEAAwE;gBACxE,OAAO;gBAEP,mCAAmC;gBACnC,MAAM,KAAK,GAAG,MAAM,UAAU;qBAC3B,KAAK,CAAC,aAAa,CAAC;qBACpB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;qBAChC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;qBAC/C,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,IAAI,CAAC,kCAAkC,GAAG,GAAG,CAAC,CAAC;oBACvD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBAEL,+BAA+B;gBAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBAED,8BAA8B;gBAC9B,IAAI,MAAM,CAAC;gBACX,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;yBACxB,QAAQ,EAAE;yBACV,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,4BAA4B,GAAG,GAAG,CAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAC;oBAC5D,OAAO;gBACT,CAAC;gBAED,yEAAyE;gBACzE,IAAI,aAAa,CAAC;gBAClB,QAAQ,MAAM,EAAE,CAAC;oBACf,KAAK,MAAM;wBACT,aAAa,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;wBAChC,MAAM;oBACR,KAAK,KAAK;wBACR,aAAa,GAAG,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;wBACxC,MAAM;oBACR,KAAK,MAAM;wBACT,aAAa,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;wBAChC,MAAM;oBACR,wBAAwB;oBACxB;wBACE,aAAa,GAAG,EAAE,CAAC;gBACvB,CAAC;gBAED,mBAAmB;gBACnB,MAAM,YAAY,GAAW,MAAM,KAAK,CAAC,KAAK,CAAC;qBAC5C,MAAM,CACL,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CACjC;qBACA,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;qBAC/B,QAAQ,EAAE;qBACV,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,IAAI,CAAC,0BAA0B,GAAG,GAAG,CAAC,CAAC;oBAC/C,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBAEL,sCAAsC;gBACtC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;oBAC1D,OAAO;gBACT,CAAC;gBAED,sCAAsC;gBACtC,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CACvD,WAAW,EACX,YAAY,CACb,CAAC;gBAEF,eAAe;gBACf,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;gBAChE,4CAA4C;gBAC5C,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;QACH,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,MAAA,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,YAAY,EAAE,GAAG,UAAU,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,oBAAoB,GACtB,YAAY;YACZ,GAAG;YACH,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1B,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,GAAG;YACH,SAAS,CAAC;QAEZ,IAAI,eAAe,GAAG,IAAI,CAAC,IAAI,CAC7B,OAAO,CAAC,GAAG,EAAE,EACb,MAAM,EACN,SAAS,EACT,SAAS,EACT,oBAAoB,CACrB,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1C,kCAAkC;YAClC,sFAAsF;YACtF,mGAAmG;YACnG,IAAI;YAEJ,uCAAuC;YACvC,4CAA4C;YAC5C,IAAI,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAC/B,OAAO,CAAC,GAAG,EAAE,EACb,MAAM,EACN,SAAS,EACT,aAAa,CACd,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC5C,OAAO,CAAC,IAAI,CAAC,mCAAmC,GAAG,iBAAiB,CAAC,CAAC;gBACtE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACrC,KAAK,CAAC,MAAM,CACV,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CACjC,CAAC;gBAEF,qBAAqB;gBACrB,MAAM,KAAK;qBACR,MAAM,CAAC,eAAe,CAAC;qBACvB,IAAI,CAAC,GAAG,EAAE;oBACT,oEAAoE;gBACtE,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,IAAI,CACV,2CAA2C;wBACzC,eAAe;wBACf,IAAI;wBACJ,GAAG,CACN,CAAC;gBACJ,CAAC,CAAC,CAAC;gBACL,EAAE;gBACF,6CAA6C;gBAC7C,mBAAmB;gBACnB,kDAAkD;gBAClD,uBAAuB;gBACvB,gBAAgB;gBAChB,iBAAiB;gBACjB,kCAAkC;gBAClC,aAAa;gBACb,gBAAgB;gBAChB,iCAAiC;gBACjC,aAAa;gBACb,gBAAgB;gBAChB,iCAAiC;gBACjC,aAAa;gBACb,aAAa;gBACb,kCAAkC;gBAClC,IAAI;gBACJ,8CAA8C;gBAC9C,mBAAmB;YACrB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,wBAAwB;QACxB,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,GAAW,EAAE,iBAA0B,KAAK;;QAClE,IAAI,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,6CAA6C;YAC7C,eAAe;YACf,wCAAwC;YACxC,YAAY;YACZ,mCAAmC;YACnC,KAAK;YACL,yEAAyE;YACzE,uEAAuE;YACvE,yEAAyE;YACzE,sEAAsE;YACtE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,IAAI,GAAQ,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI,CAAC;YACpD,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBACrD,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,+DAA+D;gBAC/D,kEAAkE;gBAClE,iDAAiD;gBACjD,MAAM,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;YACD,gDAAgD;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,gBAAgB,GAClB,CAAC,CAAC,IAAI,KAAK,kBAAkB;gBAC7B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,wBAAwB,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3D,IAAI,gBAAgB,EAAE,CAAC;gBACrB,kEAAkE;gBAClE,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,OAAO,CACX,0BAA0B,GAAG,EAAE,EAC/B,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,OAAO,KAAK,WAAW;wBAC7D,CAAC,CAAC,YAAY;4BACZ,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wBAC3C,CAAC,CAAC,EAAE,CACP,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,GAAG,CACP,kBAAkB,GAAG,KACnB,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,OAAO,KAAK,WAAW;oBAC7D,CAAC,CAAC,YAAY;wBACZ,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC3C,CAAC,CAAC,EACN,KAAK,CAAC,CAAC,OAAO,IAAI,CACnB,EACD,CAAC,CAAC,KAAK,CACR,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,CAAC,4BAA4B,CAChC,GAAW,EACX,iBAA0B,KAAK,EAC/B,oBAA6B;;QAE7B,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,oBAAoB,GAAG,GAAG,GAAG,UAAU,CAAC;QAC1C,CAAC;QACD,IAAI,sBAAsB,CAAC;QAC3B,IAAI,sBAAsB,CAAC;QAC3B,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,oEAAoE;QACpE,uEAAuE;QACvE,yDAAyD;QACzD,wEAAwE;QACxE,yDAAyD;QACzD,MAAM,IAAI,GAAQ,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI,CAAC;QACpD,MAAM,UAAU,GAAG,KAAK,EAAE,SAAiB,EAAE,EAAE;;YAC7C,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBACrD,wEAAwE;gBACxE,mEAAmE;gBACnE,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,EAAE,CAAC;oBACjD,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBACrD,CAAC;gBACD,iEAAiE;gBACjE,+DAA+D;gBAC/D,gEAAgE;gBAChE,+DAA+D;gBAC/D,+BAA+B;gBAC/B,EAAE;gBACF,2DAA2D;gBAC3D,2DAA2D;gBAC3D,8DAA8D;gBAC9D,+DAA+D;gBAC/D,6DAA6D;gBAC7D,4DAA4D;gBAC5D,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,eAAe,0CAAE,SAAS,mDAAG,SAAS,CAAC,CAAA,CAAC;oBACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,2DAA2D;wBAC3D,iDAAiD;wBACjD,MAAM,GAAG,GAAQ,IAAI,KAAK,CACxB,sBAAsB,SAAS,kBAAkB,SAAS,yBAAyB,CACpF,CAAC;wBACF,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,0DAA0D;oBAC1D,4DAA4D;oBAC5D,mBAAmB;oBACnB,IAAI,CAAC,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,0CAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA,EAAE,CAAC;wBAChD,uDAAuD;oBACzD,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,CAAC;oBACV,CAAC;gBACH,CAAC;gBACD,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YAC7C,CAAC;YACD,8DAA8D;YAC9D,kDAAkD;YAClD,OAAO,MAAM,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACpD,CAAC,CAAC;QACF,MAAM,UAAU,CAAC,oBAAoB,CAAC;aACnC,IAAI,CAAC,CAAC,sBAAsB,EAAE,EAAE;YAC/B,2EAA2E;YAC3E,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClD,IAAI,aAAa,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;gBAChD,+CAA+C;gBAC/C,qFAAqF;gBACrF,IAAI,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACpD,IAAI,QAAQ,YAAY,aAAa,EAAE,CAAC;oBACtC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC9B,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC5D,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,GAAG,CAAC,GACR,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,IAC9C,eAAe,GAAG;gFAC8C,CAAC,CAClE,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,sBAAsB,EAAE,CAAC;wBAC3B,OAAO,CAAC,IAAI,CACV,WAAW,GAAG,4DAA4D,CAC3E,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,sBAAsB,GAAG,QAAQ,CAAC;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;;YACX,4DAA4D;YAC5D,UAAU;YACV,0FAA0F;YAC1F,iEAAiE;YACjE,6DAA6D;YAC7D,2DAA2D;YAC3D,8DAA8D;YAC9D,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjE,MAAM,WAAW,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAG,CAAC,CAAC,mCAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAG,CAAC,CAAC,CAAC;YACrD,IAAI,gBAAgB,GAClB,CAAC,CAAC,WAAW;gBACb,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAChC,CACE,CAAC,CAAC,CAAC,IAAI,KAAK,sBAAsB;oBAChC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;oBACjD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAC/C,CAAC;YACJ,IAAI,gBAAgB,EAAE,CAAC;gBACrB,kEAAkE;gBAClE,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,OAAO,CAAC,0CAA0C,GAAG;;;kGAGyB,CAAC,CACtF,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,GAAG,CACP,0CAA0C,GAAG,UAAU,OAAO,CAAC,GAAG,EAAE,KAAK,CAC1E,EACD,CAAC,CAAC,KAAK,CACR,CAAC;YACJ,CAAC;YACD,sBAAsB,GAAG,IAAI,CAAC;QAChC,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7C,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;OAWG;IACH;;;;OAIG;IACK,kBAAkB;QACxB,kBAAkB,CAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACnC,qDAAqD;YACrD,+BAA+B;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAW;;QAC9B,MAAM,kBAAkB,GAAG,KAAK,EAAE,CAAM,EAAE,KAAa,EAAE,EAAE;YACzD,IAAI,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,CAAA;gBAAE,OAAO;YACxB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,IAAI,CAAC;oBACjB,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oBACzC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CACxB,UAAU,CACR,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,EACnD,IAAI,CACL,CACF;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,CACjE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,mBAAmB,CAAC,CAAC;YAC7D,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,kBAAkB,CACtB,CAAC,EACD,GAAG,GAAG,IAAI,MAAA,MAAA,MAAA,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,0CAAE,WAAW,0CAAE,IAAI,mCAAI,gBAAgB,EAAE,CAC5E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,MAAM,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEnD,8DAA8D;QAC9D,oEAAoE;QACpE,mEAAmE;QACnE,oEAAoE;QACpE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,sBAAsB,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,sBAAsB,EAAE,CAAC;YACvC,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CACV,YAAY,GAAG,gDAAgD,GAAG,CAAC,OAAO,EAAE,CAC7E,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC;QACvD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,sBAAsB,EAAE,CAAC;gBAC9B,IAAI,CAAC;oBACH,MAAM,CAAC,CAAC,sBAAsB,EAAE,CAAC;gBACnC,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CACV,YAAY,GAAG,+DAA+D,GAAG,CAAC,OAAO,EAAE,CAC5F,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,2EAA2E;QAC3E,uEAAuE;QACvE,qEAAqE;QACrE,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,OAAO,EAAE,QAAQ;QAC9C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QACrC,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,WAAW,CAAW,OAAO,CAAC,IAAI,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,CACtE,CAAC,MAAM,EAAE,EAAE;YACT,kHAAkH;YAClH,iCAAiC;YACjC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,sDAAsD;gBACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,+EAA+E;gBAC/E,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;oBAC1B,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,QAAQ;QACd,QAAQ,CAAC,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QACpD,QAAQ,CAAC,SAAS,CAChB,eAAe,EACf,uDAAuD,CACxD,CAAC;QACF,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,KAAK,CAAC,cAAc,CAClB,OAAO,EACP,QAAQ,EACR,MAAyC;QAEzC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IACD,0CAA0C;IAC1C,EAAE;IACF,yCAAyC;IACzC,IAAI;IACJ,KAAK,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ;;QAC5C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvB,qCAAqC;QACrC,qCAAqC;QACrC,qDAAqD;QACrD,MAAM;QACN,EAAE;QACF,oCAAoC;QACpC,0BAA0B;QAC1B,MAAM;QACN,EAAE;QACF,kCAAkC;QAClC,wBAAwB;QACxB,MAAM;QACN,EAAE;QACF,qCAAqC;QACrC,2BAA2B;QAC3B,sCAAsC;QACtC,MAAM;QAEN,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAC5C,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,WAAW,CAI1D,OAAO,CAAC,IAAI,CAAC,CAAC;QAEjB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,MAAA,OAAO,CAAC,KAAK,0CAAE,QAAQ,EAAE,CAAC;gBAC5B,QAAQ,GAAG,MAAA,OAAO,CAAC,KAAK,0CAAE,QAAQ,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACxB,KAAK,EAAE,+BAA+B,GAAG,OAAO,CAAC,WAAW;iBAC7D,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,GAAG,CAAC,+BAA+B,GAAG,OAAO,CAAC,WAAW,CAAC,CACjE,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CACzB,GAAG,EACH,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,OAAO,EACP,QAAQ,CACT,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAChB,6KAA6K;YAC7K,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC3D,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,GAAW,EACX,MAAc,EACd,QAAgB,EAChB,YAAmC,EACnC,IAAW,EACX,OAAO,EACP,QAAQ;;QAER,0CAA0C;QAC1C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,qBAAqB,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEzD,IAAI,oBAAoB,GAAG,CAAC,WAAmB,EAAE,EAAE;YACjD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;;gBAC7C,kEAAkE;gBAClE,iEAAiE;gBACjE,OAAO,CACL,QAAQ,YAAY,aAAa;oBACjC,CAAA,MAAA,MAAA,QAAQ,CAAC,KAAK,0CAAE,KAAK,0CAAE,EAAE,MAAK,WAAW,CAC1C,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,0BAA0B;YAC1B,IAAI,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,aAAa,GAAkB,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK;gBAClD,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,CAAC,aAAa,IAAI,UAAU,EAAE,CAAC;gBACjC,IAAI,iBAAiB,GAAG,qBAAqB,CAC3C,UAAqC,CACtC,CAAC;gBACF,KAAK,IAAI,eAAe,IAAI,iBAAiB,EAAE,CAAC;oBAC9C,IAAI,kBAAkB,GAAG,oBAAoB,CAC3C,MAAA,eAAe,CAAC,KAAK,0CAAE,EAAE,CAC1B,CAAC;oBACF,IAAI,kBAAkB,EAAE,CAAC;wBACvB,aAAa,GAAG,kBAAkB,CAAC;wBACnC,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;YACD,2EAA2E;YAC3E,uEAAuE;YACvE,6DAA6D;YAC7D,8EAA8E;YAC9E,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CACV,oDAAoD,QAAQ,IAAI;oBAC9D,SAAS,GAAG,cAAc,MAAM,gBAAgB,CACnD,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,wJAAwJ;gBACxJ,+DAA+D;gBAC/D,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;oBACxB,wDAAwD;oBACxD,oFAAoF;oBACpF,MAAM,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACtE,CAAC;gBAED,uDAAuD;gBACvD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,4BAA4B;oBAC5B,yGAAyG;oBACzG,4BAA4B;oBAC5B,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;wBACxB,2HAA2H;wBAC3H,IAAI,YAAY,EAAE,CAAC;4BACjB,IAAI,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;4BAC7C,IAAI,QAAQ,GAAG,IAAK,kBAA0B,CAAC;gCAC7C,EAAE,EAAE,YAAY,CAAC,EAAE;6BACpB,CAAC,CAAC;4BAEH,uEAAuE;4BACvE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBACzB,CAAC;wBAED,IAAI,CAAC;4BACH,0CAA0C;4BAC1C,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAChC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CACjD,CAAC;4BACF,OAAO,MAAM,CAAC;wBAChB,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,OAAO,CAAC,IAAI,CACV,wBACE,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IACnD,IAAI,MAAM,MAAM,EAChB,CAAC,CACF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CACV,GACE,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IACnD,2FAA2F,CAC5F,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,EACR,GAAG,EACH,GACE,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IACnD,kCAAkC,MAAM,EAAE,CAC3C,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,EACR,GAAG,EACH,qCAAqC,GAAG,QAAQ,GAAG,GAAG,CACvD,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,6CAA6C,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,EAAE;QACb,OAAO,KAAK,WAAW,GAAG,EAAE,GAAG,EAAE,IAAI;YACnC,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACf,IAAI,CAAC,CAAC,CAAC,CAAC;YACV,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,EAAE;QACjB,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC9B,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,SAAS,CACZ,GAAG,EACH,GAAG,EACH,uBAAuB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,IAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,CAAA,CAAC,CAAC,CAAC,EAAE,CAAC,EAClE,yBAAyB,IAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,CAAA,CACvC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,GAAG,EAAE,OAAO,EAAE,UAAmB;QAC3D,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG;;QACnB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/B,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,4IAA4I;QAC5I,mEAAmE;QACnE,8BAA8B;QAC9B,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE,CAAC;YAChC,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QAC3B,CAAC;QAED,6BAA6B;QAC7B,IACE,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,UAAU;YAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAC/C,CAAC;YACD,2CAA2C;YAC3C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,oDAAoD;gBACpD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3C,6DAA6D;gBAC7D,+EAA+E;gBAC/E,6BAA6B;gBAC7B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,IAAI,GAAG,GAAG,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,gBAAgB;YAC5C,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE;YAC7C,CAAC,CAAC,IAAI,CAAC;QAET,0DAA0D;QAC1D,iEAAiE;QACjE,iEAAiE;QACjE,mEAAmE;QACnE,gEAAgE;QAChE,mEAAmE;QACnE,+DAA+D;QAC/D,sDAAsD;QACtD,uDAAuD;QACvD,MAAM,IAAI,GAAQ,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI,CAAC;QACpD,kDAAkD;QAClD,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,kEAAkE;QAClE,6DAA6D;QAC7D,+DAA+D;QAC/D,gCAAgC;QAChC,MAAM,cAAc,GAAQ,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,cAAc,CAAC;QACxE,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,KAAI,cAAc,IAAI,CAAE,IAAY,CAAC,iBAAiB,EAAE,CAAC;YAC9E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAa,MAAM,cAAc,EAAE,CAAC;gBACnD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;oBAC1B,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC9B,CAAC;oBAAC,QAAO,kDAAkD,IAAnD,CAAC,CAAA,kDAAkD,CAAA,CAAC;gBAC9D,CAAC;YACH,CAAC;YAAC,QAAO,YAAY,IAAb,CAAC,CAAA,YAAY,CAAA,CAAC;YACrB,IAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACzC,CAAC;QAED,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,0CAAE,aAAa,EAAE,CAAC;YACrC,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,+DAA+D;YAC/D,mEAAmE;YACnE,+DAA+D;YAC/D,iEAAiE;YACjE,kEAAkE;YAClE,gEAAgE;YAChE,gEAAgE;YAChE,8DAA8D;YAC9D,qCAAqC;YACrC,KAAK,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,aAGnC,EAAE,CAAC;gBACF,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAC3B,IAAI,CAAC,yCAAyC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAClE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACb,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;oBACjE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;oBACtD,IAAI,OAAO,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAA,KAAK,QAAQ,EAAE,CAAC;wBAC3C,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBACpC,CAAC;gBACH,CAAC;gBAAC,QAAO,UAAU,IAAX,CAAC,CAAA,UAAU,CAAA,CAAC;YACtB,CAAC;YACD,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACA,IAAI,CAAC,MAAc,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;QAE9C,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEvE,qEAAqE;QACrE,+CAA+C;QAC/C,iCAAiC;QACjC,gEAAgE;QAChE,+CAA+C;QAC/C,gEAAgE;QAChE,+CAA+C;QAC/C,IAAI,MAAM,CAAC;QACX,IAAI,OAAkD,CAAC;QACvD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,qCAAqC;QACrC,0EAA0E;QAC1E,4BAA4B;QAC5B,4BAA4B;QAC5B,gCAAgC;QAChC,MAAM;QACN,qBAAqB;QACrB,aAAa;QAEb,IAAI,QAAQ,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QACjE,IAAI,cAAc,GAAa,EAAE,CAAC;QAClC,IAAI,aAAa,GAAa,EAAE,CAAC;QACjC,IAAI,eAAe,GAAkB,IAAI,CAAC;QAC1C,iEAAiE;QACjE,+DAA+D;QAC/D,kEAAkE;QAClE,iEAAiE;QACjE,oDAAoD;QACpD,MAAM,YAAY,GAChB,CAAC,CAAC,CAAA,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI,CAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;QAE9D,mFAAmF;QACnF,IAAI,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC3D,MAAM,MAAM,GACV,YAAY,CAAC,MAAM;qBACnB,MAAA,YAAY,CAAC,OAAO,0CAAE,MAAM,CAAA;oBAC3B,YAA6B,CAAC;gBAEjC,4CAA4C;gBAC5C,IAAI,YAAY,GAAuB,IAAI,CAAC;gBAC5C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAClD,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAA;wBAAE,SAAS;oBAC3B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI;yBAC3B,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC;yBAC9B,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACxB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,WAAW,GAAG,GAAG,CAAC,CAAC;oBAClD,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzB,YAAY,GAAG,KAAK,CAAC;wBACrB,eAAe,GAAG,GAAG,CAAC;wBACtB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,2FAA2F;gBAC3F,wFAAwF;gBACxF,iFAAiF;gBACjF,mFAAmF;gBACnF,sBAAsB;gBACtB,IACE,CAAC,YAAY;qBACb,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,aAAa,CAAA;oBAC3B,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,EACzC,CAAC;oBACD,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAiB,EAAE;wBACrD,gEAAgE;wBAChE,oCAAoC;wBACpC,MAAM,SAAS,GACb,QAAQ,CAAC,aAAa,SAAS,MAAM,CAAC;4BACtC,QAAQ,CAAC,aAAa,SAAS,KAAK,CAAC;4BACrC,MAAM,CAAC,MAAM,CAAC,QAAe,CAAC,CAAC,IAAI,CACjC,CAAC,CAAM,EAAE,EAAE;;gCACT,OAAA,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,0CAAE,QAAQ,CAAC,GAAG,SAAS,MAAM,CAAC;qCACpC,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,0CAAE,QAAQ,CAAC,GAAG,SAAS,KAAK,CAAC,CAAA,CAAA;6BAAA,CACtC,CAAC;wBACJ,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAK,SAAiB,CAAC,IAAI,EAAE,CAAC;4BAC1E,OAAO,YAAa,SAAiB,CAAC,IAAI,EAAE,CAAC;wBAC/C,CAAC;wBACD,uCAAuC;wBACvC,OAAO,CACL,QAAQ,CAAC,GAAG,SAAS,KAAK,CAAC;4BAC3B,QAAQ,CAAC,GAAG,SAAS,YAAY,CAAC;4BAClC,QAAQ,CAAC,GAAG,SAAS,MAAM,CAAC;4BAC5B,IAAI,CACL,CAAC;oBACJ,CAAC,CAAC;oBACF,MAAM,UAAU,GAAG,CAAC,SAAiB,EAAY,EAAE;wBACjD,MAAM,SAAS,GACb,QAAQ,CAAC,aAAa,SAAS,MAAM,CAAC;4BACtC,QAAQ,CAAC,aAAa,SAAS,KAAK,CAAC;4BACrC,MAAM,CAAC,MAAM,CAAC,QAAe,CAAC,CAAC,IAAI,CACjC,CAAC,CAAM,EAAE,EAAE;;gCACT,OAAA,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,0CAAE,QAAQ,CAAC,GAAG,SAAS,MAAM,CAAC;qCACpC,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,0CAAE,QAAQ,CAAC,GAAG,SAAS,KAAK,CAAC,CAAA,CAAA;6BAAA,CACtC,CAAC;wBACJ,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAE,SAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;4BACxF,OAAQ,SAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;wBACpE,CAAC;wBACD,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,SAAS,MAAM,CAAC,CAAC;wBAChD,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxC,CAAC,CAAC;oBACF,cAAc,GAAG,YAAY,CAAC,aAAa;yBACxC,GAAG,CAAC,SAAS,CAAC;yBACd,MAAM,CAAC,OAAO,CAAa,CAAC;oBAC/B,aAAa,GAAG,YAAY,CAAC,aAAa;yBACvC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,GAAG,CAAC,iBAAiB,CAAC,GAAG,eAAe,CAAC;QAEzC,MAAM,GAAG,sBAAsB,CAC7B,oBAAC,KAAK,CAAC,UAAU;YACf,oBAAC,YAAY,IAAC,QAAQ,EAAE,GAAG,CAAC,GAAG;gBAC7B,oBAAC,kBAAkB,IACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,GAAG,EACnB,eAAe,EAAE,GAAG;oBAEpB,oBAAC,GAAG,OAAG,CACY,CACR,CACE,EACnB;YACE,qBAAqB;YACrB,kEAAkE;YAClE,iEAAiE;YACjE,iEAAiE;YACjE,6DAA6D;YAC7D,+DAA+D;YAC/D,8DAA8D;YAC9D,iDAAiD;YACjD,kEAAkE;YAClE,6CAA6C;YAC7C,GAAG,CAAC,CAAA,MAAC,IAAI,CAAC,MAAM,CAAC,MAAc,0CAAE,IAAI;gBACnC,CAAC,CAAC;oBACE,sBAAsB,EAAE;;;;;;;;;eASvB;iBACF;gBACH,CAAC,CAAC,EAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC;YACjD,YAAY,EAAE;;gBACZ,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBACtC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;gBAE3C,2EAA2E;gBAC3E,IACE,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,UAAU;oBAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAC/C,CAAC;oBACD,MAAM,cAAc,GAAa,EAAE,CAAC;oBAEpC,MAAM,WAAW,GAAG,IAAI,SAAS,CAAC;wBAChC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;4BACvB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc;4BAC1C,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,oBAAoB;wBACvC,CAAC;wBACD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;4BACZ,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;4BAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;4BACpC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gCACpC,UAAU,CACR,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAChC,CAAC;4BACJ,CAAC;4BACD,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,kCAAkC;4BACzD,EAAE,EAAE,CAAC;wBACP,CAAC;qBACF,CAAC,CAAC;oBAEH,iDAAiD;oBACjD,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAEtB,kEAAkE;oBAClE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACZ,YAAY,CAAC,CAAC;;gBACZ,QAAQ,GAAG,IAAI,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,gEAAgE;gBAChE,gEAAgE;gBAChE,gEAAgE;gBAChE,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;oBACpB,GAAG,CAAC,GAAG,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBACD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;gBAC5C,GAAG,CAAC,GAAG,CACL,mDAAmD;oBACjD,CAAC,MAAA,MAAC,CAAS,aAAT,CAAC,uBAAD,CAAC,CAAU,KAAK,mCAAK,CAAS,aAAT,CAAC,uBAAD,CAAC,CAAU,OAAO,mCAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAC1D,CAAC;YACJ,CAAC;SACF,CACF,CAAC;QAEF,gEAAgE;QAChE,+CAA+C;QAC/C,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACxB,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gBACrB,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC,EAAE,KAAM,CAAC,CAAC;QAEX,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sGAAsG;IACtG;;;;;;;;;;;;;;;;;SAiBE;IAEF,QAAQ,CAAC,GAAG,EAAE,GAAG;QACf,IAAI,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ;QACjC,sFAAsF;QACtF,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;aAChC,MAAM,CAAC,OAAO,CAAC;aACf,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;YAC3B,CAAC,GAAG,CAAC;iBACF,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,eAAe,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACxD,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CACV,yCACE,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,IACrD,IAAI,EACJ,GAAG,CACJ,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEL,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAAO,EACP,QAAQ;QAER,sEAAsE;QACtE,uEAAuE;QACvE,uEAAuE;QACvE,IAAI,WAAW,GAAwB,EAAE,CAAC;QAC1C,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE;YAC1D,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,OAAO,CAAC,OAAO,CACpB,eAAe,CAAC,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CACrE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACd,OAAO,CAAC,IAAI,CACV,2CACE,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,IACrD,IAAI,EACJ,GAAG,CACJ,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAClE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,GAAW,EACX,MAAc,EACd,IAAW,EACX,OAAO,EACP,QAAQ;QAER,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;QAED,gFAAgF;QAChF,IAAI,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE5D,IAAI,MAAM,CAAC;QACX,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CACV,GAAG,KAAK,CAAC,OAAO,CACd,GAAG,CACJ,gKAAgK,CAClK,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,4DAA4D;QAC5D,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CACV,qBACE,MAAM,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,WAAW,CAAC,IAC5D,QAAQ,GAAG,kCAAkC,MAAM,EAAE,CACtD,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,4BAA4B;YAC5B,sEAAsE;YACtE,wJAAwJ;YACxJ,+DAA+D;YAC/D,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;gBACxB,mDAAmD;gBACnD,oFAAoF;gBACpF,MAAM,OAAO,CAAC,OAAO,CACnB,sBAAsB,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CACtD,CAAC;YACJ,CAAC;YACD,sBAAsB;YACtB,uBAAuB;YAEvB,wEAAwE;YACxE,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAC5B,sBAAsB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAAC,CACnE,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CACV,wBAAwB,MAAM,kBAC5B,MAAM,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,WAAW,CAAC,IAC5D,eAAe,GAAG,KAAK,EACvB,CAAC,CACF,CAAC;YAEF,gBAAgB;YAChB,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;;AA11DD;;GAEG;AACI,wBAAW,GAAG,WAAW,CAAC,WAAW,AAA1B,CAA2B;AAJlC,YAAY;IADxB,WAAW;;GACC,YAAY,CA41DxB"}
|
|
1
|
+
{"version":3,"file":"LinkedServer.js","sourceRoot":"","sources":["../../../src/shapes/LinkedServer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Shape } from '@_linked/core/shapes/Shape';
|
|
2
2
|
import type { IDataset } from '@_linked/core/interfaces/IDataset';
|
|
3
3
|
import type { SelectQuery } from '@_linked/core/queries/SelectQuery';
|
|
4
|
+
import type { AskQuery } from '@_linked/core/queries/AskQuery';
|
|
4
5
|
import type { UpdateQuery } from '@_linked/core/queries/UpdateQuery';
|
|
5
6
|
import type { CreateQuery } from '@_linked/core/queries/CreateQuery';
|
|
6
7
|
import type { DeleteQuery, DeleteResponse } from '@_linked/core/queries/DeleteQuery';
|
|
@@ -27,7 +28,15 @@ export declare class BackendAPIStore extends Shape implements IDataset {
|
|
|
27
28
|
});
|
|
28
29
|
init(): Promise<void>;
|
|
29
30
|
selectQuery(query: SelectQuery): Promise<SelectResult>;
|
|
31
|
+
askQuery(query: AskQuery): Promise<boolean>;
|
|
30
32
|
updateQuery(query: UpdateQuery): Promise<UpdateResult>;
|
|
31
33
|
createQuery(query: CreateQuery): Promise<CreateResult>;
|
|
32
34
|
deleteQuery(query: DeleteQuery): Promise<DeleteResponse>;
|
|
35
|
+
/**
|
|
36
|
+
* Opts in to `rejectOnError`, so a failed call (HTTP error status, or no
|
|
37
|
+
* provider on the backend) rejects with a `ServerCallError` carrying the
|
|
38
|
+
* status and the server's message instead of reading as an empty result.
|
|
39
|
+
* Whatever a successful call returns, `undefined` included, resolves as is.
|
|
40
|
+
*/
|
|
41
|
+
private callBackend;
|
|
33
42
|
}
|
|
@@ -44,16 +44,28 @@ let BackendAPIStore = class BackendAPIStore extends Shape {
|
|
|
44
44
|
// live (closed) query can't cross Server.call as-is, so we ship `toJSON()` and
|
|
45
45
|
// the BackendAPIStoreProvider rehydrates with `fromJSON()` on the backend.
|
|
46
46
|
selectQuery(query) {
|
|
47
|
-
return
|
|
47
|
+
return this.callBackend('selectQuery', query.toJSON());
|
|
48
|
+
}
|
|
49
|
+
askQuery(query) {
|
|
50
|
+
return this.callBackend('askQuery', query.toJSON());
|
|
48
51
|
}
|
|
49
52
|
updateQuery(query) {
|
|
50
|
-
return
|
|
53
|
+
return this.callBackend('updateQuery', query.toJSON());
|
|
51
54
|
}
|
|
52
55
|
createQuery(query) {
|
|
53
|
-
return
|
|
56
|
+
return this.callBackend('createQuery', query.toJSON());
|
|
54
57
|
}
|
|
55
58
|
deleteQuery(query) {
|
|
56
|
-
return
|
|
59
|
+
return this.callBackend('deleteQuery', query.toJSON());
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Opts in to `rejectOnError`, so a failed call (HTTP error status, or no
|
|
63
|
+
* provider on the backend) rejects with a `ServerCallError` carrying the
|
|
64
|
+
* status and the server's message instead of reading as an empty result.
|
|
65
|
+
* Whatever a successful call returns, `undefined` included, resolves as is.
|
|
66
|
+
*/
|
|
67
|
+
callBackend(method, json) {
|
|
68
|
+
return Server.call(this, { method, rejectOnError: true }, json);
|
|
57
69
|
}
|
|
58
70
|
};
|
|
59
71
|
BackendAPIStore.targetClass = lincdServer.BackendAPIStore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackendAPIStore.js","sourceRoot":"","sources":["../../../../src/shapes/quadstores/BackendAPIStore.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"BackendAPIStore.js","sourceRoot":"","sources":["../../../../src/shapes/quadstores/BackendAPIStore.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AA4B5D;;;GAGG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,KAAK;IAGxC,YAAY,MAAyD;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,KAAK,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,sDAAsD;YACtD,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,sBAAsB,MAAM,EAAE,EAAE,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QACD,IAAK,MAAgC,CAAC,EAAE,EAAE,CAAC;YACzC,KAAK,CAAC,EAAE,EAAE,EAAG,MAAgC,CAAC,EAAG,EAAE,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,IAAK,MAAgC,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAI,MAAgC,CAAC,IAAK,CAAC;YACrD,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,sBAAsB,IAAI,EAAE,EAAE,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QACD,KAAK,EAAE,CAAC;IACV,CAAC;IAED,KAAK,CAAC,IAAI;QACR,+DAA+D;IACjE,CAAC;IAED,8EAA8E;IAC9E,+EAA+E;IAC/E,2EAA2E;IAC3E,WAAW,CAAC,KAAkB;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,QAAQ,CAAC,KAAe;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,WAAW,CAAC,KAAkB;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,WAAW,CAAC,KAAkB;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,WAAW,CAAC,KAAkB;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACK,WAAW,CAAI,MAAc,EAAE,IAAa;QAClD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;;AA3DM,2BAAW,GAAG,WAAW,CAAC,eAAe,AAA9B,CAA+B;AADtC,eAAe;IAD3B,WAAW;;GACC,eAAe,CA6D3B"}
|
|
@@ -12,6 +12,7 @@ import { ShapeProvider } from '@_linked/server-utils/utils/ShapeProvider';
|
|
|
12
12
|
export declare class BackendAPIStoreProvider extends ShapeProvider {
|
|
13
13
|
shape: typeof BackendAPIStore;
|
|
14
14
|
selectQuery(store: BackendAPIStore, json: any): Promise<unknown>;
|
|
15
|
+
askQuery(store: BackendAPIStore, json: any): Promise<boolean>;
|
|
15
16
|
updateQuery(store: BackendAPIStore, json: any): Promise<unknown>;
|
|
16
17
|
createQuery(store: BackendAPIStore, json: any): Promise<unknown>;
|
|
17
18
|
deleteQuery(store: BackendAPIStore, json: any): Promise<import("@_linked/core/queries/DeleteQuery").DeleteResponse>;
|
|
@@ -19,6 +19,9 @@ export class BackendAPIStoreProvider extends ShapeProvider {
|
|
|
19
19
|
selectQuery(store, json) {
|
|
20
20
|
return LinkedStorage.selectQuery(fromJSON(json));
|
|
21
21
|
}
|
|
22
|
+
askQuery(store, json) {
|
|
23
|
+
return LinkedStorage.askQuery(fromJSON(json));
|
|
24
|
+
}
|
|
22
25
|
updateQuery(store, json) {
|
|
23
26
|
return LinkedStorage.updateQuery(fromJSON(json));
|
|
24
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackendAPIStoreProvider.js","sourceRoot":"","sources":["../../../../src/shapes/quadstores/BackendAPIStoreProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IAA1D;;QACS,UAAK,GAAG,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"BackendAPIStoreProvider.js","sourceRoot":"","sources":["../../../../src/shapes/quadstores/BackendAPIStoreProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IAA1D;;QACS,UAAK,GAAG,eAAe,CAAC;IAqBjC,CAAC;IAnBC,WAAW,CAAC,KAAsB,EAAE,IAAS;QAC3C,OAAO,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,KAAsB,EAAE,IAAS;QACxC,OAAO,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAQ,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAC,KAAsB,EAAE,IAAS;QAC3C,OAAO,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,WAAW,CAAC,KAAsB,EAAE,IAAS;QAC3C,OAAO,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,WAAW,CAAC,KAAsB,EAAE,IAAS;QAC3C,OAAO,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAQ,CAAC,CAAC;IAC1D,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
},
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|
|
11
|
-
"url": ""
|
|
11
|
+
"url": "git+https://github.com/linked-cm/server.git"
|
|
12
12
|
},
|
|
13
|
-
"version": "2.
|
|
13
|
+
"version": "2.3.0",
|
|
14
14
|
"linkedPackage": true,
|
|
15
15
|
"type": "module",
|
|
16
16
|
"main": "lib/esm/index.js",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@_linked/cli": "^1.2",
|
|
38
|
-
"@_linked/core": "^2.
|
|
39
|
-
"@_linked/server-utils": "^1.0",
|
|
38
|
+
"@_linked/core": "^2.18.1",
|
|
39
|
+
"@_linked/server-utils": "^1.2.0",
|
|
40
40
|
"adm-zip": "^0.5.16",
|
|
41
41
|
"archiver": "^7.0.1",
|
|
42
42
|
"autoprefixer": "^10.4.18",
|
package/readme.md
CHANGED
|
@@ -17,6 +17,8 @@ If you want to further adjust the functionality of LincdServer yourself, either
|
|
|
17
17
|
- [Shape providers](#shape-providers)
|
|
18
18
|
- [Generic backend providers](#generic-backend-providers)
|
|
19
19
|
- [Gotchas](#gotchas)
|
|
20
|
+
- [Error semantics](#error-semantics)
|
|
21
|
+
- [API-only servers (`server.apiOnly`)](#api-only-servers-serverapionly)
|
|
20
22
|
- [Provider lifecycle and HMR](#provider-lifecycle-and-hmr)
|
|
21
23
|
- [When to implement `dispose()`](#when-to-implement-dispose)
|
|
22
24
|
- [Route tracking helpers](#route-tracking-helpers)
|
|
@@ -176,6 +178,44 @@ where the provider lives. Generally, this means you call `Server.call` from a co
|
|
|
176
178
|
Provider (and import packageName from `src/package.ts`). If you want to call a method from another package, then import
|
|
177
179
|
packageName from that package, or manually type it.
|
|
178
180
|
|
|
181
|
+
### Error semantics
|
|
182
|
+
|
|
183
|
+
The `/call/...` routes answer as follows:
|
|
184
|
+
|
|
185
|
+
| Situation | Response |
|
|
186
|
+
| --- | --- |
|
|
187
|
+
| The provider method returns a value | `200` with the JSON result (`null` when the method returns nothing and has not written the response itself) |
|
|
188
|
+
| The provider method throws | `500 {"error": "internal server error..."}`. The stack is included in development only. |
|
|
189
|
+
| No provider handles the call (no provider for the package or shape, or the provider has no such method) | `501 {"error": "No provider for <pkg>/<method>"}` |
|
|
190
|
+
|
|
191
|
+
What the caller sees depends on how it calls:
|
|
192
|
+
|
|
193
|
+
- **`Server.call` from the frontend (over HTTP).** By default a non-2xx response logs a warning and resolves `undefined`. Pass `{ method, rejectOnError: true }` as the method to reject with a `ServerCallError` instead. The error carries `status` and the server's `error` message.
|
|
194
|
+
|
|
195
|
+
```typescript
|
|
196
|
+
Server.call(this, { method: 'sendEmail', rejectOnError: true }, subject, message);
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
- **`Server.call` on the backend.** Here it calls the `LinkedServer` directly.
|
|
200
|
+
- A provider method that throws always rejects.
|
|
201
|
+
- An unmatched call resolves `undefined` by default and rejects with a 501 `ServerCallError` when `rejectOnError` is set.
|
|
202
|
+
- **`BackendAPIStore`.** It always uses `rejectOnError`, so a failed query rejects with the status and message. A successful call resolves with whatever the provider returned, `undefined` included.
|
|
203
|
+
|
|
204
|
+
## API-only servers (`server.apiOnly`)
|
|
205
|
+
|
|
206
|
+
A backend that serves no frontend app (e.g. started with `linked start --api-only`) can set `apiOnly` in its server config:
|
|
207
|
+
|
|
208
|
+
```typescript
|
|
209
|
+
new LinkedServer({
|
|
210
|
+
server: {
|
|
211
|
+
apiOnly: true,
|
|
212
|
+
//...
|
|
213
|
+
},
|
|
214
|
+
});
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
With `apiOnly` the server skips page rendering. It installs no SPA catch-all, so a `GET` for a page that no route handles gets express's plain `404` instead of the app shell. The `/call/...` and `/api/...` routes and the routes that providers register work as usual.
|
|
218
|
+
|
|
179
219
|
## Provider lifecycle and HMR
|
|
180
220
|
|
|
181
221
|
Every provider — generic (`BackendProvider`) or shape-scoped (`ShapeProvider`) — has a lifecycle the framework drives:
|