@decaf-ts/for-fabric 0.1.17 → 0.1.18
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/for-fabric.cjs +1 -1
- package/dist/for-fabric.cjs.map +1 -1
- package/dist/for-fabric.js +1 -1
- package/dist/for-fabric.js.map +1 -1
- package/lib/bin/build-contracts2.cjs +73 -0
- package/lib/bin/build-contracts2.d.ts +1 -0
- package/lib/bin/build-contracts2.js.map +1 -0
- package/lib/bin/compile-indexes.cjs +30 -0
- package/lib/bin/compile-indexes.d.ts +1 -0
- package/lib/bin/compile-indexes.js.map +1 -0
- package/lib/cli-module.cjs +139 -0
- package/lib/cli-module.d.ts +2 -0
- package/lib/cli-module.js.map +1 -0
- package/lib/client/FabricClientAdapter.cjs +39 -40
- package/lib/client/FabricClientAdapter.d.ts +17 -13
- package/lib/client/FabricClientAdapter.js.map +1 -1
- package/lib/client/FabricClientPaginator.cjs +69 -0
- package/lib/client/FabricClientPaginator.d.ts +10 -0
- package/lib/client/FabricClientPaginator.js.map +1 -0
- package/lib/client/FabricClientRepository.cjs +36 -12
- package/lib/client/FabricClientRepository.d.ts +5 -1
- package/lib/client/FabricClientRepository.js.map +1 -1
- package/lib/client/FabricClientStatement.cjs +111 -0
- package/lib/client/FabricClientStatement.d.ts +10 -0
- package/lib/client/FabricClientStatement.js.map +1 -0
- package/lib/client/fabric-fs.d.ts +1 -1
- package/lib/client/indexes/generation.cjs +156 -0
- package/lib/client/indexes/generation.d.ts +16 -0
- package/lib/client/indexes/generation.js.map +1 -0
- package/lib/client/indexes/index.cjs +18 -0
- package/lib/client/indexes/index.d.ts +1 -0
- package/lib/client/indexes/index.js.map +1 -0
- package/lib/client/services/FabricEnrollmentService.d.ts +1 -1
- package/lib/client/types.cjs +3 -0
- package/lib/client/types.d.ts +7 -0
- package/lib/client/types.js.map +1 -0
- package/lib/contracts/ContractAdapter.cjs +54 -40
- package/lib/contracts/ContractAdapter.d.ts +20 -8
- package/lib/contracts/ContractAdapter.js.map +1 -1
- package/lib/contracts/FabricContractRepository.d.ts +2 -2
- package/lib/contracts/FabricContractRepository.js.map +1 -1
- package/lib/contracts/crud/crud-contract.cjs +30 -1
- package/lib/contracts/crud/crud-contract.d.ts +29 -14
- package/lib/contracts/crud/crud-contract.js.map +1 -1
- package/lib/contracts/crud/serialized-crud-contract.cjs +27 -15
- package/lib/contracts/crud/serialized-crud-contract.d.ts +9 -8
- package/lib/contracts/crud/serialized-crud-contract.js.map +1 -1
- package/lib/contracts/erc20/erc20contract.cjs +40 -34
- package/lib/contracts/erc20/erc20contract.d.ts +15 -15
- package/lib/contracts/erc20/erc20contract.js.map +1 -1
- package/lib/esm/bin/build-contracts2.d.ts +1 -0
- package/lib/esm/bin/build-contracts2.js +68 -0
- package/lib/esm/bin/build-contracts2.js.map +1 -0
- package/lib/esm/bin/compile-indexes.d.ts +1 -0
- package/lib/esm/bin/compile-indexes.js +25 -0
- package/lib/esm/bin/compile-indexes.js.map +1 -0
- package/lib/esm/cli-module.d.ts +2 -0
- package/lib/esm/cli-module.js +133 -0
- package/lib/esm/cli-module.js.map +1 -0
- package/lib/esm/client/FabricClientAdapter.d.ts +17 -13
- package/lib/esm/client/FabricClientAdapter.js +41 -42
- package/lib/esm/client/FabricClientAdapter.js.map +1 -1
- package/lib/esm/client/FabricClientPaginator.d.ts +10 -0
- package/lib/esm/client/FabricClientPaginator.js +65 -0
- package/lib/esm/client/FabricClientPaginator.js.map +1 -0
- package/lib/esm/client/FabricClientRepository.d.ts +5 -1
- package/lib/esm/client/FabricClientRepository.js +37 -13
- package/lib/esm/client/FabricClientRepository.js.map +1 -1
- package/lib/esm/client/FabricClientStatement.d.ts +10 -0
- package/lib/esm/client/FabricClientStatement.js +107 -0
- package/lib/esm/client/FabricClientStatement.js.map +1 -0
- package/lib/esm/client/fabric-fs.d.ts +1 -1
- package/lib/esm/client/indexes/generation.d.ts +16 -0
- package/lib/esm/client/indexes/generation.js +118 -0
- package/lib/esm/client/indexes/generation.js.map +1 -0
- package/lib/esm/client/indexes/index.d.ts +1 -0
- package/lib/esm/client/indexes/index.js +2 -0
- package/lib/esm/client/indexes/index.js.map +1 -0
- package/lib/esm/client/services/FabricEnrollmentService.d.ts +1 -1
- package/lib/esm/client/types.d.ts +7 -0
- package/lib/esm/client/types.js +2 -0
- package/lib/esm/client/types.js.map +1 -0
- package/lib/esm/contracts/ContractAdapter.d.ts +20 -8
- package/lib/esm/contracts/ContractAdapter.js +55 -41
- package/lib/esm/contracts/ContractAdapter.js.map +1 -1
- package/lib/esm/contracts/FabricContractRepository.d.ts +2 -2
- package/lib/esm/contracts/FabricContractRepository.js.map +1 -1
- package/lib/esm/contracts/crud/crud-contract.d.ts +29 -14
- package/lib/esm/contracts/crud/crud-contract.js +31 -2
- package/lib/esm/contracts/crud/crud-contract.js.map +1 -1
- package/lib/esm/contracts/crud/serialized-crud-contract.d.ts +9 -8
- package/lib/esm/contracts/crud/serialized-crud-contract.js +27 -15
- package/lib/esm/contracts/crud/serialized-crud-contract.js.map +1 -1
- package/lib/esm/contracts/erc20/erc20contract.d.ts +15 -15
- package/lib/esm/contracts/erc20/erc20contract.js +40 -34
- package/lib/esm/contracts/erc20/erc20contract.js.map +1 -1
- package/lib/esm/shared/model/FabricBaseModel.d.ts +7 -0
- package/lib/esm/shared/model/FabricBaseModel.js +40 -0
- package/lib/esm/shared/model/FabricBaseModel.js.map +1 -0
- package/lib/esm/shared/model/FabricIdentifiedBaseModel.d.ts +7 -0
- package/lib/esm/shared/model/{Sequence.js → FabricIdentifiedBaseModel.js} +19 -18
- package/lib/esm/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
- package/lib/esm/shared/model/Identity.js +2 -1
- package/lib/esm/shared/model/Identity.js.map +1 -1
- package/lib/esm/shared/model/index.d.ts +0 -1
- package/lib/esm/shared/model/index.js +0 -1
- package/lib/esm/shared/model/index.js.map +1 -1
- package/lib/esm/shared/utils.d.ts +1 -1
- package/lib/esm/version.d.ts +1 -1
- package/lib/esm/version.js +1 -1
- package/lib/shared/model/FabricBaseModel.cjs +43 -0
- package/lib/shared/model/FabricBaseModel.d.ts +7 -0
- package/lib/shared/model/FabricBaseModel.js.map +1 -0
- package/lib/shared/model/FabricIdentifiedBaseModel.cjs +37 -0
- package/lib/shared/model/FabricIdentifiedBaseModel.d.ts +7 -0
- package/lib/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
- package/lib/shared/model/Identity.cjs +1 -0
- package/lib/shared/model/Identity.js.map +1 -1
- package/lib/shared/model/index.cjs +0 -1
- package/lib/shared/model/index.d.ts +0 -1
- package/lib/shared/model/index.js.map +1 -1
- package/lib/shared/utils.d.ts +1 -1
- package/lib/version.cjs +1 -1
- package/lib/version.d.ts +1 -1
- package/package.json +10 -6
- package/lib/esm/shared/model/Sequence.d.ts +0 -14
- package/lib/esm/shared/model/Sequence.js.map +0 -1
- package/lib/shared/model/Sequence.cjs +0 -36
- package/lib/shared/model/Sequence.d.ts +0 -14
- package/lib/shared/model/Sequence.js.map +0 -1
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = fabric;
|
|
7
|
+
const commander_1 = require("commander");
|
|
8
|
+
const logging_1 = require("@decaf-ts/logging");
|
|
9
|
+
const child_process_1 = require("child_process");
|
|
10
|
+
const fs_1 = __importDefault(require("fs"));
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
const rollup_1 = require("rollup");
|
|
13
|
+
const plugin_replace_1 = __importDefault(require("@rollup/plugin-replace"));
|
|
14
|
+
const plugin_typescript_1 = __importDefault(require("@rollup/plugin-typescript"));
|
|
15
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
16
|
+
const logger = logging_1.Logging.for("fabric");
|
|
17
|
+
const compileCommand = new commander_1.Command()
|
|
18
|
+
.name("compile-contract")
|
|
19
|
+
.description("Creates a global contract")
|
|
20
|
+
.option("--dev", "compiles contracts without minification", false)
|
|
21
|
+
.option("--debug", "makes attaching debugger possible", true)
|
|
22
|
+
.option("--name <String>", "contract name", "global-contract")
|
|
23
|
+
.option("--description <String>", "contract description", "Global contract implementation")
|
|
24
|
+
.option("--input <String>", "input folder for contracts", "src/contracts")
|
|
25
|
+
.option("--output <String>", "output folder for contracts", "./contracts")
|
|
26
|
+
.action(async (options) => {
|
|
27
|
+
const pkg = JSON.parse(fs_1.default.readFileSync(path_1.default.join(process.cwd(), "package.json"), "utf-8"));
|
|
28
|
+
const version = pkg.version;
|
|
29
|
+
const { dev, debug, name, description, output, input } = options;
|
|
30
|
+
const log = logger.for("compile-contract");
|
|
31
|
+
log.debug(`running with options: ${JSON.stringify(options)} for ${pkg.name} version ${version}`);
|
|
32
|
+
log.info(`Deleting existing output folder (if exists) under ${output}`);
|
|
33
|
+
(0, child_process_1.execSync)(`rm -rf ${output}`);
|
|
34
|
+
log.info(`bundling contract from ${input}`);
|
|
35
|
+
const bundle = await (0, rollup_1.rollup)({
|
|
36
|
+
input: `${input}/index.ts`,
|
|
37
|
+
plugins: [
|
|
38
|
+
(0, plugin_replace_1.default)({
|
|
39
|
+
preventAssignment: true,
|
|
40
|
+
delimiters: ["", ""],
|
|
41
|
+
values: { "##VERSION##": version, "##PACKAGE##": pkg.name },
|
|
42
|
+
}),
|
|
43
|
+
(0, plugin_typescript_1.default)({
|
|
44
|
+
tsconfig: "./tsconfig.json",
|
|
45
|
+
compilerOptions: {
|
|
46
|
+
outDir: output,
|
|
47
|
+
},
|
|
48
|
+
module: "esnext",
|
|
49
|
+
declaration: false,
|
|
50
|
+
}),
|
|
51
|
+
],
|
|
52
|
+
});
|
|
53
|
+
log.info(`withing contract to ${output} with name ${(0, logging_1.toPascalCase)(name)}.js`);
|
|
54
|
+
await bundle.write({
|
|
55
|
+
file: `${output}/${(0, logging_1.toPascalCase)(name)}.js`,
|
|
56
|
+
format: "umd",
|
|
57
|
+
name: `${(0, logging_1.toPascalCase)(name)}.js`,
|
|
58
|
+
});
|
|
59
|
+
const scripts = {
|
|
60
|
+
start: debug
|
|
61
|
+
? "node --inspect=0.0.0.0:9229 /usr/local/src/node_modules/.bin/fabric-chaincode-node start"
|
|
62
|
+
: "fabric-chaincode-node start",
|
|
63
|
+
"start:dev": 'fabric-chaincode-node start --peer.address "127.0.0.1:8541" --chaincode-id-name "chaincode1:0.0.1" --tls.enabled false',
|
|
64
|
+
"start:watch": 'nodemon --exec "npm run start:dev"',
|
|
65
|
+
build: 'echo "No need to build the chaincode"',
|
|
66
|
+
lint: "eslint . --fix --ext .js",
|
|
67
|
+
};
|
|
68
|
+
const contractPackage = pkg;
|
|
69
|
+
contractPackage.name = name;
|
|
70
|
+
contractPackage.description = description;
|
|
71
|
+
contractPackage.scripts = scripts;
|
|
72
|
+
delete contractPackage.type;
|
|
73
|
+
delete contractPackage.types;
|
|
74
|
+
delete contractPackage.exports;
|
|
75
|
+
contractPackage.main = `${(0, logging_1.toPascalCase)(name)}.js`;
|
|
76
|
+
fs_1.default.writeFileSync(path_1.default.join(output, "package.json"), JSON.stringify(contractPackage));
|
|
77
|
+
log.info(`Installing and shrinkwrapping dependencies`);
|
|
78
|
+
(0, child_process_1.execSync)(`cd ${output} && npm install`);
|
|
79
|
+
(0, child_process_1.execSync)(`cd ${output} && npm shrinkwrap`);
|
|
80
|
+
(0, child_process_1.execSync)("cd ${output} && rm -rf node_modules");
|
|
81
|
+
log.info(`deleting temp folders`);
|
|
82
|
+
(0, child_process_1.execSync)(`rm -rf ${output}/lib && rm -rf ${output}/dist`);
|
|
83
|
+
});
|
|
84
|
+
const ensureInfra = new commander_1.Command()
|
|
85
|
+
.name("await-infra")
|
|
86
|
+
.description("waits for the infrastructure to be up and running")
|
|
87
|
+
.option("--container <String>", "docker container name to test (usually last peer)", "boot-org-c-peer-0")
|
|
88
|
+
.option("--timeout <String>", "timeout between tests in milliseconds", "5000")
|
|
89
|
+
.option("--attempts <String>", "number of attempts before giving up", "10")
|
|
90
|
+
.action(async (options) => {
|
|
91
|
+
// eslint-disable-next-line prefer-const
|
|
92
|
+
let { container, timeout, attempts } = options;
|
|
93
|
+
timeout = parseInt(timeout) || 5000;
|
|
94
|
+
attempts = parseInt(attempts) || 10;
|
|
95
|
+
const log = logger.for("await-infra");
|
|
96
|
+
function didInfrastructureBoot() {
|
|
97
|
+
try {
|
|
98
|
+
const output = (0, child_process_1.execSync)(`docker inspect ${container} --format='{{.State.ExitCode}}'`)
|
|
99
|
+
.toString()
|
|
100
|
+
.trim();
|
|
101
|
+
return output === "0";
|
|
102
|
+
}
|
|
103
|
+
catch (err) {
|
|
104
|
+
console.error("Error inspecting container:", err.message);
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
while (!didInfrastructureBoot()) {
|
|
109
|
+
if (--attempts <= 0)
|
|
110
|
+
throw new db_decorators_1.InternalError("exceeded allowed attempts");
|
|
111
|
+
log.info("Waiting for infrastructure to boot...");
|
|
112
|
+
await new Promise((r) => setTimeout(r, timeout)); // Wait for 5 seconds before retrying
|
|
113
|
+
}
|
|
114
|
+
log.info(`Infrastructure booted successfully (according to container ${container})!`);
|
|
115
|
+
});
|
|
116
|
+
const copyContracts = new commander_1.Command()
|
|
117
|
+
.name("copy-contracts")
|
|
118
|
+
.description("copies the contracts to the folder they'll be consumed by fabric")
|
|
119
|
+
.option("--input <String>", "input folder", "./contracts")
|
|
120
|
+
.option("--name <String>", "contract name (and folder name within input folder)", "global-contract")
|
|
121
|
+
.option("--output <String>", "output folder", "./docker/infrastructure/chaincode")
|
|
122
|
+
.action(async (options) => {
|
|
123
|
+
// eslint-disable-next-line prefer-const
|
|
124
|
+
let { input, output, name } = options;
|
|
125
|
+
const log = logger.for("copy-contracts");
|
|
126
|
+
const inputPath = path_1.default.join(input, name);
|
|
127
|
+
const outputPath = path_1.default.join(output, name);
|
|
128
|
+
log.info(`deleting previous contract folder at ${outputPath}`);
|
|
129
|
+
(0, child_process_1.execSync)(`rm -rf ${outputPath}`);
|
|
130
|
+
});
|
|
131
|
+
function fabric() {
|
|
132
|
+
const mainCommand = new commander_1.Command()
|
|
133
|
+
.name("fabric")
|
|
134
|
+
.description("exposes several commands to help manage the fabric infrastructure");
|
|
135
|
+
mainCommand.addCommand(compileCommand);
|
|
136
|
+
mainCommand.addCommand(ensureInfra);
|
|
137
|
+
return mainCommand;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=cli-module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-module.js","sourceRoot":"","sources":["../src/cli-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,6 +57,8 @@ const FabricClientRepository_1 = require("./FabricClientRepository.cjs");
|
|
|
57
57
|
const constants_1 = require("./../shared/constants.cjs");
|
|
58
58
|
const ClientSerializer_1 = require("./../shared/ClientSerializer.cjs");
|
|
59
59
|
const fabric_hsm_1 = require("./fabric-hsm.cjs");
|
|
60
|
+
const index_1 = require("./indexes/index.cjs");
|
|
61
|
+
const FabricClientStatement_1 = require("./FabricClientStatement.cjs");
|
|
60
62
|
class FabricClientContext extends db_decorators_2.Context {
|
|
61
63
|
}
|
|
62
64
|
exports.FabricClientContext = FabricClientContext;
|
|
@@ -111,7 +113,7 @@ exports.FabricClientContext = FabricClientContext;
|
|
|
111
113
|
* FabricAdapter->>FabricAdapter: serializer.deserialize(decodedResult)
|
|
112
114
|
* FabricAdapter-->>Client: deserializedResult
|
|
113
115
|
*/
|
|
114
|
-
class FabricClientAdapter extends
|
|
116
|
+
class FabricClientAdapter extends core_1.Adapter {
|
|
115
117
|
/**
|
|
116
118
|
* @description Static text decoder for converting Uint8Array to string
|
|
117
119
|
*/
|
|
@@ -128,6 +130,9 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
128
130
|
super(config, constants_1.FabricFlavour, alias);
|
|
129
131
|
this.serializer = FabricClientAdapter.serializer;
|
|
130
132
|
}
|
|
133
|
+
Statement() {
|
|
134
|
+
return new FabricClientStatement_1.FabricClientStatement(this);
|
|
135
|
+
}
|
|
131
136
|
async context(operation, overrides, model, ...args) {
|
|
132
137
|
const log = this.log.for(this.context);
|
|
133
138
|
log.debug(`Creating new context for ${operation} operation on ${Array.isArray(model) ? model.map((m) => m.name) : model.name} model with flag overrides: ${JSON.stringify(overrides)}`);
|
|
@@ -151,7 +156,6 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
151
156
|
const tableName = decorator_validation_1.Model.tableName(clazz);
|
|
152
157
|
const record = {};
|
|
153
158
|
record[for_couchdb_1.CouchDBKeys.TABLE] = tableName;
|
|
154
|
-
// record[CouchDBKeys.ID] = this.generateId(tableName, id as any);
|
|
155
159
|
Object.assign(record, model);
|
|
156
160
|
return [clazz, id, record, ...ctxArgs];
|
|
157
161
|
}
|
|
@@ -172,7 +176,6 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
172
176
|
const records = ids.map((id, count) => {
|
|
173
177
|
const record = {};
|
|
174
178
|
record[for_couchdb_1.CouchDBKeys.TABLE] = tableName;
|
|
175
|
-
// record[CouchDBKeys.ID] = this.generateId(tableName, id);
|
|
176
179
|
Object.assign(record, models[count]);
|
|
177
180
|
return record;
|
|
178
181
|
});
|
|
@@ -183,17 +186,9 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
183
186
|
if (ids.length !== models.length)
|
|
184
187
|
throw new db_decorators_1.InternalError("Ids and models must have the same length");
|
|
185
188
|
const { ctxArgs } = this.logCtx(args, this.updateAllPrefix);
|
|
186
|
-
const records = ids.map((
|
|
189
|
+
const records = ids.map(() => {
|
|
187
190
|
const record = {};
|
|
188
191
|
record[for_couchdb_1.CouchDBKeys.TABLE] = tableName;
|
|
189
|
-
// record[CouchDBKeys.ID] = this.generateId(tableName, id);
|
|
190
|
-
// // const rev = models[count][PersistenceKeys.METADATA];
|
|
191
|
-
// if (!rev)
|
|
192
|
-
// throw new InternalError(
|
|
193
|
-
// `No revision number found for record with id ${id}`
|
|
194
|
-
// );
|
|
195
|
-
// Object.assign(record, models[count]);
|
|
196
|
-
// record[CouchDBKeys.REV] = rev;
|
|
197
192
|
return record;
|
|
198
193
|
});
|
|
199
194
|
return [clazz, ids, records, ...ctxArgs];
|
|
@@ -363,14 +358,31 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
363
358
|
return result;
|
|
364
359
|
}
|
|
365
360
|
/**
|
|
366
|
-
* @description Creates
|
|
367
|
-
* @summary
|
|
368
|
-
* @template M -
|
|
369
|
-
* @param {Constructor<M>} models - The model
|
|
370
|
-
* @return {Promise<void>}
|
|
361
|
+
* @description Creates indexes for the given models
|
|
362
|
+
* @summary Abstract method that must be implemented to create database indexes for the specified models
|
|
363
|
+
* @template M - The model type
|
|
364
|
+
* @param {...Constructor<M>} models - The model constructors to create indexes for
|
|
365
|
+
* @return {Promise<void>} A promise that resolves when all indexes are created
|
|
371
366
|
*/
|
|
372
|
-
index(
|
|
373
|
-
|
|
367
|
+
async index(...args) {
|
|
368
|
+
const { log } = this.logCtx(args, this.index);
|
|
369
|
+
const outDir = args.shift();
|
|
370
|
+
const models = (await Promise.all(args.map(async (m) => {
|
|
371
|
+
const isFolder = typeof m === "string";
|
|
372
|
+
if (isFolder) {
|
|
373
|
+
log.verbose(`Loading models from ${m}...`);
|
|
374
|
+
return await (0, index_1.readModelFolders)(m);
|
|
375
|
+
}
|
|
376
|
+
return m;
|
|
377
|
+
}))).flat();
|
|
378
|
+
const result = {};
|
|
379
|
+
for (const m of models) {
|
|
380
|
+
log.verbose(`Extracting indexes for table ${decorator_validation_1.Model.tableName(m)}`);
|
|
381
|
+
(0, index_1.generateModelIndexes)(m, result);
|
|
382
|
+
}
|
|
383
|
+
log.verbose(`Found ${Object.keys(result).length} indexes to create`);
|
|
384
|
+
log.debug(`Indexes: ${JSON.stringify(result)}`);
|
|
385
|
+
(0, index_1.writeIndexes)(Object.values(result), outDir);
|
|
374
386
|
}
|
|
375
387
|
/**
|
|
376
388
|
* @description Creates a single record
|
|
@@ -477,18 +489,9 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
477
489
|
* FabricAdapter-->>Client: processed result
|
|
478
490
|
*/
|
|
479
491
|
async raw(rawInput, ...args) {
|
|
480
|
-
const ctxArgs =
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
}
|
|
484
|
-
let tableName;
|
|
485
|
-
if (ctxArgs.length &&
|
|
486
|
-
(typeof ctxArgs[0] === "string" || typeof ctxArgs[0] === "function")) {
|
|
487
|
-
tableName = ctxArgs.shift();
|
|
488
|
-
}
|
|
489
|
-
const { log } = this.logCtx(ctxArgs, this.raw);
|
|
490
|
-
log.info(`Performing raw query on table`);
|
|
491
|
-
log.debug(`processing raw input for query: ${JSON.stringify(rawInput)}`);
|
|
492
|
+
const { log, ctxArgs } = this.logCtx(args, this.raw);
|
|
493
|
+
const tableName = rawInput.class.name;
|
|
494
|
+
log.info(`Performing prepared statement ${rawInput.method} on table ${decorator_validation_1.Model.tableName(rawInput.class)}`);
|
|
492
495
|
let input;
|
|
493
496
|
try {
|
|
494
497
|
input = JSON.stringify(rawInput);
|
|
@@ -498,9 +501,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
498
501
|
}
|
|
499
502
|
let transactionResult;
|
|
500
503
|
try {
|
|
501
|
-
|
|
502
|
-
tableName = tableName?.name;
|
|
503
|
-
transactionResult = await this.evaluateTransaction("query", [input], undefined, undefined, tableName);
|
|
504
|
+
transactionResult = await this.evaluateTransaction(core_1.PersistenceKeys.STATEMENT, [rawInput.method, ...rawInput.args, rawInput.params], undefined, undefined, tableName);
|
|
504
505
|
}
|
|
505
506
|
catch (e) {
|
|
506
507
|
throw this.parseError(e);
|
|
@@ -623,8 +624,8 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
623
624
|
* @param {string} [reason] - Optional reason for the error
|
|
624
625
|
* @return {BaseError} The parsed error
|
|
625
626
|
*/
|
|
626
|
-
parseError(err
|
|
627
|
-
return FabricClientAdapter.parseError(err
|
|
627
|
+
parseError(err) {
|
|
628
|
+
return FabricClientAdapter.parseError(err);
|
|
628
629
|
}
|
|
629
630
|
/**
|
|
630
631
|
* @description Submits a transaction to the Fabric network
|
|
@@ -821,7 +822,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
821
822
|
* @param {string} [reason] - Optional reason for the error
|
|
822
823
|
* @return {BaseError} The parsed error
|
|
823
824
|
*/
|
|
824
|
-
static parseError(err
|
|
825
|
+
static parseError(err) {
|
|
825
826
|
// if (
|
|
826
827
|
// MISSING_PRIVATE_DATA_REGEX.test(
|
|
827
828
|
// typeof err === "string" ? err : err.message
|
|
@@ -858,9 +859,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
858
859
|
}
|
|
859
860
|
exports.FabricClientAdapter = FabricClientAdapter;
|
|
860
861
|
__decorate([
|
|
861
|
-
(0, logging_1.debug)()
|
|
862
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
863
|
-
,
|
|
862
|
+
(0, logging_1.debug)(),
|
|
864
863
|
__metadata("design:type", Function),
|
|
865
864
|
__metadata("design:paramtypes", [Object]),
|
|
866
865
|
__metadata("design:returntype", Promise)
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { CouchDBAdapter, type MangoQuery } from "@decaf-ts/for-couchdb";
|
|
2
1
|
import { Client } from "@grpc/grpc-js";
|
|
3
2
|
import { Model, type Serializer } from "@decaf-ts/decorator-validation";
|
|
4
3
|
import { type FabricFlags, type PeerConfig } from "../shared/types";
|
|
5
4
|
import { Gateway, Network, Contract as Contrakt } from "@hyperledger/fabric-gateway";
|
|
6
5
|
import { BaseError, OperationKeys } from "@decaf-ts/db-decorators";
|
|
7
6
|
import { Context, type PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
8
|
-
import { Adapter, ContextOf, PreparedModel, Repository } from "@decaf-ts/core";
|
|
7
|
+
import { Adapter, ContextOf, PreparedModel, Repository, Statement } from "@decaf-ts/core";
|
|
9
8
|
import type { ContextualArgs, MaybeContextualArg } from "@decaf-ts/core";
|
|
10
9
|
import type { FabricClientDispatch } from "./FabricClientDispatch";
|
|
11
10
|
import { type Constructor } from "@decaf-ts/decoration";
|
|
11
|
+
import { type FabricQuery } from "./types";
|
|
12
12
|
export declare class FabricClientContext extends Context<FabricFlags> {
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
@@ -62,7 +62,7 @@ export declare class FabricClientContext extends Context<FabricFlags> {
|
|
|
62
62
|
* FabricAdapter->>FabricAdapter: serializer.deserialize(decodedResult)
|
|
63
63
|
* FabricAdapter-->>Client: deserializedResult
|
|
64
64
|
*/
|
|
65
|
-
export declare class FabricClientAdapter extends
|
|
65
|
+
export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, FabricQuery, FabricClientContext> {
|
|
66
66
|
/**
|
|
67
67
|
* @description Static text decoder for converting Uint8Array to string
|
|
68
68
|
*/
|
|
@@ -77,6 +77,7 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
77
77
|
* @param {string} [alias] - Optional alias for the adapter instance
|
|
78
78
|
*/
|
|
79
79
|
constructor(config: PeerConfig, alias?: string);
|
|
80
|
+
Statement<M extends Model>(): Statement<M, Adapter<PeerConfig, Client, any, any>, any>;
|
|
80
81
|
context<M extends Model>(operation: OperationKeys.CREATE | OperationKeys.READ | OperationKeys.UPDATE | OperationKeys.DELETE | string, overrides: Partial<FabricFlags>, model: Constructor<M> | Constructor<M>[], ...args: any[]): Promise<FabricClientContext>;
|
|
81
82
|
/**
|
|
82
83
|
* @description Decodes a Uint8Array to a string
|
|
@@ -85,7 +86,7 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
85
86
|
* @return {string} The decoded string
|
|
86
87
|
*/
|
|
87
88
|
decode(data: Uint8Array): string;
|
|
88
|
-
repository<R extends Repository<any, Adapter<PeerConfig, Client,
|
|
89
|
+
repository<R extends Repository<any, Adapter<PeerConfig, Client, FabricQuery, FabricClientContext>>>(): Constructor<R>;
|
|
89
90
|
protected createPrefix<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: MaybeContextualArg<ContextOf<FabricClientAdapter>>): [Constructor<M>, PrimaryKeyType, Record<string, any>, ...any[], Context];
|
|
90
91
|
/**
|
|
91
92
|
* @description Prepares multiple records for creation
|
|
@@ -159,13 +160,16 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
159
160
|
*/
|
|
160
161
|
revert<M extends Model>(obj: Record<string, any>, clazz: Constructor<M>, id: PrimaryKeyType, transient?: Record<string, any>, ...args: ContextualArgs<FabricClientContext>): M;
|
|
161
162
|
/**
|
|
162
|
-
* @description Creates
|
|
163
|
-
* @summary
|
|
164
|
-
* @template M -
|
|
165
|
-
* @param {Constructor<M>} models - The model
|
|
166
|
-
* @return {Promise<void>}
|
|
163
|
+
* @description Creates indexes for the given models
|
|
164
|
+
* @summary Abstract method that must be implemented to create database indexes for the specified models
|
|
165
|
+
* @template M - The model type
|
|
166
|
+
* @param {...Constructor<M>} models - The model constructors to create indexes for
|
|
167
|
+
* @return {Promise<void>} A promise that resolves when all indexes are created
|
|
167
168
|
*/
|
|
168
|
-
protected index<M>(
|
|
169
|
+
protected index<M extends Model>(...args: MaybeContextualArg<FabricClientContext, [
|
|
170
|
+
string,
|
|
171
|
+
...(Constructor<M> | string)[]
|
|
172
|
+
]>): Promise<void>;
|
|
169
173
|
/**
|
|
170
174
|
* @description Creates a single record
|
|
171
175
|
* @summary Submits a transaction to create a record in the Fabric ledger
|
|
@@ -228,7 +232,7 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
228
232
|
* FabricAdapter->>FabricAdapter: Process result based on type
|
|
229
233
|
* FabricAdapter-->>Client: processed result
|
|
230
234
|
*/
|
|
231
|
-
raw<V>(rawInput:
|
|
235
|
+
raw<V>(rawInput: FabricQuery, ...args: ContextualArgs<FabricClientContext>): Promise<V>;
|
|
232
236
|
/**
|
|
233
237
|
* @description Gets or creates a gRPC client for the Fabric peer
|
|
234
238
|
* @summary Returns a cached client or creates a new one if none exists
|
|
@@ -284,7 +288,7 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
284
288
|
* @param {string} [reason] - Optional reason for the error
|
|
285
289
|
* @return {BaseError} The parsed error
|
|
286
290
|
*/
|
|
287
|
-
parseError<E extends BaseError>(err: Error | string
|
|
291
|
+
parseError<E extends BaseError>(err: Error | string): E;
|
|
288
292
|
/**
|
|
289
293
|
* @description Submits a transaction to the Fabric network
|
|
290
294
|
* @summary Executes a transaction that modifies the ledger state
|
|
@@ -384,5 +388,5 @@ export declare class FabricClientAdapter extends CouchDBAdapter<PeerConfig, Clie
|
|
|
384
388
|
* @param {string} [reason] - Optional reason for the error
|
|
385
389
|
* @return {BaseError} The parsed error
|
|
386
390
|
*/
|
|
387
|
-
protected static parseError<E extends BaseError>(err: Error | string
|
|
391
|
+
protected static parseError<E extends BaseError>(err: Error | string): E;
|
|
388
392
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAI+B;AAC/B,2CAAuC;AACvC,oDAAsC;AACtC,yEAAwE;AACxE,+CAA0D;AAE1D,gEAQqC;AACrC,+CAAqD;AACrD,2DASiC;AACjC,2DAAuE;AACvE,yCAcwB;AAExB,yEAAkE;AAClE,yDAAoD;AACpD,uEAA8D;AAE9D,iDAAsD;AAGtD,MAAa,mBAAoB,SAAQ,uBAAoB;CAAG;AAAhE,kDAAgE;AAChE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAa,mBAAoB,SAAQ,4BAIxC;IACC;;OAEG;aACY,YAAO,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,AAA1B,CAA2B;aAElC,eAAU,GAAG,IAAI,mCAAgB,EAAE,AAAzB,CAA0B;aAElC,QAAG,GAAG,iBAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,AAAnC,CAAoC;IAKxD;;;;;OAKG;IACH,YAAY,MAAkB,EAAE,KAAc;QAC5C,KAAK,CAAC,MAAM,EAAE,yBAAa,EAAE,KAAK,CAAC,CAAC;QAVnB,eAAU,GAC3B,mBAAmB,CAAC,UAAU,CAAC;IAUjC,CAAC;IAEQ,KAAK,CAAC,OAAO,CACpB,SAKU,EACV,SAA+B,EAC/B,KAAwC,EACxC,GAAG,IAAW;QAEd,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,GAAG,CAAC,KAAK,CACP,4BAA4B,SAAS,iBAAiB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,+BAA+B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAC7K,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;QACrE,OAAO,IAAI,mBAAmB,EAAE,CAAC,UAAU,CAAC,KAAK,CAAwB,CAAC;IAC5E,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAgB;QACrB,OAAO,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAEQ,UAAU;QAMjB,OAAO,+CAAmD,CAAC;IAC7D,CAAC;IAEkB,YAAY,CAC7B,KAAqB,EACrB,EAAkB,EAClB,KAA0B,EAC1B,GAAG,IAAwD;QAE3D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,CAAC,yBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;QACtC,kEAAkE;QAClE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACgB,eAAe,CAChC,KAAqB,EACrB,GAAwB,EACxB,MAA6B,EAC7B,GAAG,IAAwD;QAE3D,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QACtE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,MAAM,CAAC,yBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;YACtC,2DAA2D;YAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3C,CAAC;IAEkB,eAAe,CAChC,KAAqB,EACrB,GAAqB,EACrB,MAA6B,EAC7B,GAAG,IAAwD;QAE3D,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QACtE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,MAAM,CAAC,yBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;YACtC,2DAA2D;YAC3D,0DAA0D;YAC1D,YAAY;YACZ,6BAA6B;YAC7B,0DAA0D;YAC1D,OAAO;YACP,wCAAwC;YACxC,iCAAiC;YACjC,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;;OAQG;IACM,KAAK,CAAC,SAAS,CACtB,KAAqB,EACrB,GAAqB,EACrB,MAA6B,EAC7B,GAAG,IAAyC;QAE5C,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,CAAC,GAAI,IAAyB,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAyB,CAAC;QACzD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CACzB,OAA8C,EAC9C,IAAI,CAAC,SAAS,CACf,CAAC;QACF,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEzC,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,eAAe,SAAS,QAAQ,CAAC,CAAC;QAC/D,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,qCAAqB,CAAC,UAAU,EAChC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAClE,SAAS,EACT,SAAS,EACT,SAAS,CACV,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAkB,CAAC,CAAU,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACM,KAAK,CAAC,OAAO,CACpB,KAAqB,EACrB,GAAqB,EACrB,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,eAAe,SAAS,QAAQ,CAAC,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3C,qCAAqB,CAAC,QAAQ,EAC9B,CAAC,GAAG,CAAC,EACL,SAAS,EACT,SAAS,EACT,SAAS,CACV,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAkB,CAAC,CAAU,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACM,KAAK,CAAC,SAAS,CACtB,KAAqB,EACrB,GAAqB,EACrB,MAA6B,EAC7B,GAAG,IAAyC;QAE5C,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,CAAC,GAAI,IAAyB,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAyB,CAAC;QACzD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CACzB,OAA8C,EAC9C,IAAI,CAAC,SAAS,CACf,CAAC;QACF,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,eAAe,SAAS,QAAQ,CAAC,CAAC;QACjE,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAE3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,qCAAqB,CAAC,UAAU,EAChC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAClE,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAkB,CAAC,CAAU,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACM,KAAK,CAAC,SAAS,CACtB,KAAqB,EACrB,GAAqB,EACrB,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,cAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,eAAe,SAAS,QAAQ,CAAC,CAAC;QACjE,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,qCAAqB,CAAC,UAAU,EAChC,CAAC,GAAG,CAAC,EACL,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,kCAAkB,CAAC,CAAU,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACM,OAAO,CACd,KAAQ,EACR,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACrC,IAAK,KAAa,CAAC,sBAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,GAAG,CAAC,KAAK,CACP,0CAA2C,KAAa,CAAC,sBAAe,CAAC,QAAQ,CAAC,EAAE,CACrF,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,sBAAe,CAAC,QAAQ,EAAE;gBAC3D,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;gBACf,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAG,KAAa,CAAC,sBAAe,CAAC,QAAQ,CAAC;aAChD,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,MAAM,EAAE,KAAK,CAAC,KAAK;YACnB,EAAE,EAAE,KAAK,CAAC,4BAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAA6B,CAAC,CAAW;YAClE,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACM,MAAM,CACb,GAAwB,EACxB,KAAqB,EACrB,EAAkB,EAClB,SAA+B,EAC/B,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,EAAE,GAAwB,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,4BAAK,CAAC,EAAE,CAAC,KAAK,CAAW,CAAC;QACrC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACZ,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAM,CAAC;QAC7B,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,WAAW,CAAC,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,GAAG,CAAC,sBAAe,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAQ,EAAE,GAAG,EAAE,EAAE;YACpD,KAA6B,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC,EAAE,CAAC,CAAC,CAAC;QAEN,IAAI,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,SAAS,EAAE,CAAC;YACjD,GAAG,CAAC,OAAO,CACT,mCAAmC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvE,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;gBAC/C,IAAI,GAAG,IAAI,MAAM;oBACf,MAAM,IAAI,6BAAa,CACrB,sBAAsB,GAAG,4BAA4B,CAAC,CAAC,WAAW,CAAC,IAAI,wBAAwB,CAChG,CAAC;gBACJ,MAAM,CAAC,GAAc,CAAC,GAAG,GAAG,CAAC;YAC/B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,uBAAuB;YACvB,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,CAAC,OAAO,6BAA6B,CAAC,CAAC,WAAW,CAAC,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CACrG,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,sBAAe,CAAC,QAAQ,EAAE;gBACtD,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IAGO,KAAK,CAAI,MAAsB;QACvC,MAAM,IAAI,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;;;;;;OAQG;IAGY,AAAN,KAAK,CAAC,MAAM,CACnB,KAAqB,EACrB,EAAkB,EAClB,KAA0B,EAC1B,GAAG,IAAyC;QAE5C,MAAM,OAAO,GAAG,CAAC,GAAI,IAAyB,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,8DAA8D;QACpF,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CACzB,OAA8C,EAC9C,IAAI,CAAC,MAAM,CACZ,CAAC;QACF,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,mBAAmB,SAAS,QAAQ,CAAC,CAAC;QAClD,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,6BAAa,CAAC,MAAM,EACpB,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAC9C,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IAGG,AAAN,KAAK,CAAC,IAAI,CACR,KAAqB,EACrB,EAAkB,EAClB,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEzC,GAAG,CAAC,OAAO,CAAC,sBAAsB,SAAS,QAAQ,CAAC,CAAC;QACrD,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3C,6BAAa,CAAC,IAAI,EAClB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EACf,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEQ,YAAY,CACnB,KAAqB,EACrB,EAAkB,EAClB,KAA0B,EAC1B,GAAG,IAA6C;QAEhD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,CAAC,yBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;QACtC,2DAA2D;QAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IAGG,AAAN,KAAK,CAAC,MAAM,CACV,KAAqB,EACrB,EAAkB,EAClB,KAA0B,EAC1B,GAAG,IAAyC;QAE5C,MAAM,OAAO,GAAG,CAAC,GAAI,IAAyB,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,8DAA8D;QACpF,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CACzB,OAA8C,EAC9C,IAAI,CAAC,SAAS,CACf,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,yBAAyB,OAAO,KAAK,EAAE,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,qBAAqB,SAAS,QAAQ,CAAC,CAAC;QACpD,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,6BAAa,CAAC,MAAM,EACpB,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,EAAE,wDAAwD;QACjH,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IAGY,AAAN,KAAK,CAAC,MAAM,CACnB,KAAqB,EACrB,EAAkB,EAClB,GAAG,IAAyC;QAE5C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,4BAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,uBAAuB,SAAS,QAAQ,CAAC,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACzC,6BAAa,CAAC,MAAM,EACpB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EACf,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CACX,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IAEY,AAAN,KAAK,CAAC,GAAG,CAChB,QAAoB,EACpB,GAAG,IAAyC;QAE5C,MAAM,OAAO,GAAG,CAAC,GAAI,IAAyB,CAAC,CAAC;QAChD,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,SAAgD,CAAC;QACrD,IACE,OAAO,CAAC,MAAM;YACd,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,EACpE,CAAC;YACD,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;QACD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CACzB,OAA8C,EAC9C,IAAI,CAAC,GAAG,CACT,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC3C,GAAG,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACzE,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,kCAAkB,CAC1B,0CAA0C,CAAC,EAAE,CAC9C,CAAC;QACJ,CAAC;QACD,IAAI,iBAAsB,CAAC;QAC3B,IAAI,CAAC;YACH,IAAI,OAAO,SAAS,KAAK,QAAQ;gBAC/B,SAAS,GAAI,SAA0C,EAAE,IAAI,CAAC;YAChE,iBAAiB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAChD,OAAO,EACP,CAAC,KAAK,CAAC,EACP,SAAS,EACT,SAAS,EACT,SAAS,CACV,CAAC;QACJ,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,UAAU,CAAC,CAAU,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,MAAW,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,kCAAkB,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,MAAwB,EAAE,EAAE;YAC/C,IAAI,4BAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO,4BAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QAEF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,MAAM;gBAAE,OAAO,MAAW,CAAC;YACvC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,4BAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnB,8CAA8C;gBAC9C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,4BAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAM,CAAC;YAClD,OAAO,MAAW,CAAC;QACrB,CAAC;QAED,OAAO,WAAW,CAAC,MAAa,CAAM,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACM,SAAS;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO;YACf,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,OAAO;QACrB,OAAO,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IAEO,eAAe,CAAC,SAAkB;QACxC,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAC;QACjC,OAAO,GAAG,SAAS,UAAU,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,QAAQ,CAAC,YAAqB;QAC5C,OAAO,mBAAmB,CAAC,WAAW,CACpC,MAAM,IAAI,CAAC,OAAO,EAAE,EACpB,IAAI,CAAC,MAAM,EACX,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACO,KAAK,CAAC,WAAW,CACzB,GAAW,EACX,MAAM,GAAG,IAAI,EACb,IAAY,EACZ,aAAsC,EACtC,sBAAsC,EACtC,SAAkB;QAElB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;YACtE,GAAG,CAAC,OAAO,CACT,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,oBAAoB,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,GAAG,EAAE,CAC1H,CAAC;YACF,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAE5D,sBAAsB,GAAG,sBAAsB,EAAE,MAAM;gBACrD,CAAC,CAAC,sBAAsB;gBACxB,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,eAAe,GAAoB;gBACvC,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,aAAa,EAAE,aAAa;gBAC5B,0EAA0E;aAC3E,CAAC;YAEF,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,qBAAqB,CAAC,CAAC;YAClE,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACM,UAAU,CACjB,GAAmB,EACnB,MAAe;QAEf,OAAO,mBAAmB,CAAC,UAAU,CAAI,GAAG,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,iBAAiB,CACrB,GAAW,EACX,IAAY,EACZ,aAAsC,EACtC,sBAAsC,EACtC,SAAkB;QAElB,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,sBAAsB,EACtB,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CACvB,GAAW,EACX,IAAY,EACZ,aAAsC,EACtC,sBAAsC,EACtC,SAAkB;QAElB,OAAO,IAAI,CAAC,WAAW,CACrB,GAAG,EACH,KAAK,EACL,IAAI,EACJ,aAAa,EACb,sBAAsB,EACtB,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,iBAAiB,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAChB,OAAgB,EAChB,MAAkB,EAClB,YAAqB;QAErB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,GAAG,CAAC,KAAK,CACP,wBAAwB,MAAM,CAAC,aAAa,aAAa,YAAY,IAAI,MAAM,CAAC,YAAY,iBAAiB,MAAM,CAAC,OAAO,EAAE,CAC9H,CAAC;YACF,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACjE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,OAAgB,EAAE,WAAmB;QACrD,MAAM,GAAG,GAAG,iBAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;YAClD,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAkB,EAAE,MAAe;QACzD,OAAO,CAAC,MAAM,IAAI,CAAC,aAAa,CAC9B,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACxC,MAAM,CACP,CAAY,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,MAAkB;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,GAAG,CAAC,KAAK,CAAC,sCAAsC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAC/C,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;YAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YAC7B,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,qCAAqC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACtE,OAAO,IAAI,gBAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,MAAkB;QAC3D,MAAM,GAAG,GAAG,iBAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,GAAG,CAAC,KAAK,CACP,gCAAgC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,uBAAuB,EAAE,CACvF,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAW,EAChC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,uBAA8B,CACtC,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,8BAA8B,MAAM,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAEzE,IAAI,MAAc,EAChB,KAAK,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,GAAG,MAAM,IAAA,qBAAS,EAAC,MAAM,CAAC,sBAA6B,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,mCAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,UAAU,GAAG,GAAG,CAAC,yBAAyB,CAC9C,MAAM,CAAC,uBAA8B,CACtC,CAAC;YACF,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC;gBACjC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,UAAoB;gBACtC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAW;gBACrC,UAAU,EAAE,UAAU;gBACtB,6BAA6B;aAC9B,CAAC,CAAC;YACH,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;YAE7B,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QAC7B,CAAC;QAED,MAAM,OAAO,GAAG;YACd,MAAM;YACN,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,4CAA4C;YAC5C,eAAe,EAAE,GAAG,EAAE;gBACpB,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,YAAY;YACtD,CAAC;YACD,cAAc,EAAE,GAAG,EAAE;gBACnB,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,aAAa;YACxD,CAAC;YACD,aAAa,EAAE,GAAG,EAAE;gBAClB,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,YAAY;YACtD,CAAC;YACD,mBAAmB,EAAE,GAAG,EAAE;gBACxB,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,WAAW;YACtD,CAAC;SACgB,CAAC;QAEpB,GAAG,CAAC,KAAK,CAAC,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAA,wBAAO,EAAC,OAAO,CAAC,CAAC;QAEjC,iBAAiB;QACjB,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE;gBACvC,KAAK,CAAC,MAAkB,EAAE,OAAY,EAAE,QAAe;oBACrD,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;oBACzC,KAAK,EAAE,CAAC;gBACV,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACM,QAAQ;QACf,OAAO,IAAI,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACO,MAAM,CAAU,UAAU,CAClC,GAAmB,EACnB,MAAe;QAEf,OAAO;QACP,qCAAqC;QACrC,kDAAkD;QAClD,MAAM;QACN,IAAI;QACJ,wDAAwD;QACxD,MAAM,GAAG,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;QACxD,IAAI,GAAG,CAAC,QAAQ,CAAC,6BAAa,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,6BAAa,CAAC,GAAG,CAAM,CAAC;QACzE,IAAI,GAAG,CAAC,QAAQ,CAAC,6BAAa,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,6BAAa,CAAC,GAAG,CAAM,CAAC;QACzE,IAAI,GAAG,CAAC,QAAQ,CAAC,+BAAe,CAAC,IAAI,CAAC;YACpC,OAAO,IAAI,+BAAe,CAAC,GAAG,CAAM,CAAC;QACvC,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,iBAAU,CAAC,GAAG,CAAM,CAAC;QACnE,IAAI,GAAG,CAAC,QAAQ,CAAC,kBAAW,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,kBAAW,CAAC,GAAG,CAAM,CAAC;QACrE,IAAI,GAAG,CAAC,QAAQ,CAAC,uBAAgB,CAAC,IAAI,CAAC;YACrC,OAAO,IAAI,uBAAgB,CAAC,GAAG,CAAM,CAAC;QACxC,IAAI,GAAG,CAAC,QAAQ,CAAC,qBAAc,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,qBAAc,CAAC,GAAG,CAAM,CAAC;QAC3E,IAAI,GAAG,CAAC,QAAQ,CAAC,oBAAa,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,oBAAa,CAAC,GAAG,CAAM,CAAC;QACzE,IAAI,GAAG,CAAC,QAAQ,CAAC,yBAAkB,CAAC,IAAI,CAAC;YACvC,OAAO,IAAI,yBAAkB,CAAC,GAAG,CAAM,CAAC;QAC1C,IAAI,GAAG,CAAC,QAAQ,CAAC,qBAAc,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,qBAAc,CAAC,GAAG,CAAM,CAAC;QAC3E,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAe,CAAC,IAAI,CAAC;YACpC,OAAO,IAAI,sBAAe,CAAC,GAAG,CAAM,CAAC;QACvC,IAAI,GAAG,CAAC,QAAQ,CAAC,kCAAkB,CAAC,IAAI,CAAC;YACvC,OAAO,IAAI,kCAAkB,CAAC,GAAG,CAAM,CAAC;QAC1C,OAAO,IAAI,6BAAa,CAAC,GAAG,CAAM,CAAC;IACrC,CAAC;;AAhgCH,kDAigCC;AApoBW;IAFT,IAAA,eAAK,GAAE;IACR,6DAA6D;;;;;gDAG5D;AAac;IAFd,IAAA,eAAK,GAAE;IACP,IAAA,eAAK,GAAE;;6DAKkB,mBAAmB;;iDAmB5C;AAWK;IAFL,IAAA,eAAK,GAAE;IACP,IAAA,eAAK,GAAE;;qDAIkB,mBAAmB;;+CAe5C;AA4BK;IAFL,IAAA,eAAK,GAAE;IACP,IAAA,eAAK,GAAE;;6DAKkB,mBAAmB;;iDAoB5C;AAWc;IAFd,IAAA,eAAK,GAAE;IACP,IAAA,eAAK,GAAE;;qDAIkB,mBAAmB;;iDAc5C;AA4Bc;IADd,IAAA,eAAK,GAAE;;6CAGkB,mBAAmB;;8CA+D5C;AAsZH,mBAAmB,CAAC,UAAU,EAAE,CAAC;AACjC,cAAO,CAAC,UAAU,CAAC,yBAAa,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FabricClientPaginator = void 0;
|
|
4
|
+
const core_1 = require("@decaf-ts/core");
|
|
5
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
6
|
+
const logging_1 = require("@decaf-ts/logging");
|
|
7
|
+
class FabricClientPaginator extends core_1.Paginator {
|
|
8
|
+
constructor(adapter, query, size, clazz) {
|
|
9
|
+
super(adapter, query, size, clazz);
|
|
10
|
+
}
|
|
11
|
+
async page(page = 1, ...args) {
|
|
12
|
+
const contextArgs = await db_decorators_1.Context.args(db_decorators_1.OperationKeys.READ, this.clazz, args, this.adapter);
|
|
13
|
+
let statement = Object.assign({}, this.statement, {
|
|
14
|
+
args: [...this.statement.args],
|
|
15
|
+
params: { ...this.statement.params },
|
|
16
|
+
});
|
|
17
|
+
if (!this.statement.method.includes("pageBy"))
|
|
18
|
+
statement = this.prepare(statement);
|
|
19
|
+
statement.args.push(page);
|
|
20
|
+
page = this.validatePage(page);
|
|
21
|
+
const results = await this.adapter.raw(statement, ...contextArgs.args);
|
|
22
|
+
this._currentPage = page;
|
|
23
|
+
return results;
|
|
24
|
+
}
|
|
25
|
+
prepare(rawStatement) {
|
|
26
|
+
// only support main attr for now before implementing pageBy
|
|
27
|
+
let attrs = rawStatement.method.split(new RegExp(`(${[core_1.QueryClause.FIND_BY, core_1.QueryClause.SELECT, core_1.QueryClause.ORDER_BY, core_1.QueryClause.GROUP_BY, core_1.QueryClause.AND, core_1.QueryClause.OR].join("|")})`, "i"));
|
|
28
|
+
attrs = attrs
|
|
29
|
+
.map((s) => s.trim())
|
|
30
|
+
.filter(Boolean)
|
|
31
|
+
.filter((s) => ![
|
|
32
|
+
core_1.QueryClause.FIND_BY,
|
|
33
|
+
core_1.QueryClause.SELECT,
|
|
34
|
+
core_1.QueryClause.ORDER_BY,
|
|
35
|
+
core_1.QueryClause.GROUP_BY,
|
|
36
|
+
(0, logging_1.toPascalCase)(core_1.OrderDirection.ASC),
|
|
37
|
+
(0, logging_1.toPascalCase)(core_1.OrderDirection.DSC),
|
|
38
|
+
].find((c) => s.includes(c)));
|
|
39
|
+
const fullOrderBy = rawStatement.method.split(core_1.QueryClause.ORDER_BY);
|
|
40
|
+
let orderBy;
|
|
41
|
+
if (fullOrderBy.length) {
|
|
42
|
+
orderBy = fullOrderBy[1]
|
|
43
|
+
.split(new RegExp(`${[(0, logging_1.toPascalCase)(core_1.OrderDirection.ASC), (0, logging_1.toPascalCase)(core_1.OrderDirection.DSC), core_1.QueryClause.GROUP_BY + ".*", core_1.QueryClause.THEN_BY].join("|")}`, "i"))
|
|
44
|
+
.map((s) => s.trim())
|
|
45
|
+
.filter(Boolean);
|
|
46
|
+
orderBy = [
|
|
47
|
+
orderBy[0],
|
|
48
|
+
fullOrderBy[1].includes((0, logging_1.toPascalCase)(core_1.OrderDirection.ASC))
|
|
49
|
+
? core_1.OrderDirection.ASC
|
|
50
|
+
: core_1.OrderDirection.DSC,
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
if (attrs.length === 1 && attrs[0] === orderBy[0]) {
|
|
54
|
+
const attr = attrs[0];
|
|
55
|
+
return Object.assign({}, rawStatement, {
|
|
56
|
+
method: "pageBy",
|
|
57
|
+
args: [(0, logging_1.toCamelCase)(attr), orderBy[1], this.size],
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
return Object.assign({}, rawStatement, {
|
|
62
|
+
method: rawStatement.method.replace(core_1.QueryClause.FIND_BY, "pageBy"),
|
|
63
|
+
args: [...rawStatement.args, this.size],
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.FabricClientPaginator = FabricClientPaginator;
|
|
69
|
+
//# sourceMappingURL=FabricClientPaginator.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Paginator } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { FabricQuery } from "./types";
|
|
4
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
5
|
+
import { FabricClientAdapter } from "./FabricClientAdapter";
|
|
6
|
+
export declare class FabricClientPaginator<M extends Model> extends Paginator<M, M, FabricQuery> {
|
|
7
|
+
constructor(adapter: FabricClientAdapter, query: FabricQuery, size: number, clazz: Constructor<M>);
|
|
8
|
+
page(page?: number, ...args: any[]): Promise<M[]>;
|
|
9
|
+
protected prepare(rawStatement: FabricQuery): FabricQuery;
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FabricClientPaginator.js","sourceRoot":"","sources":["../../src/client/FabricClientPaginator.ts"],"names":[],"mappings":"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"}
|