@codiac.io/codiac-cli 1.2.151 → 1.2.153-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/README.md +115 -110
- package/lib/api-clients/common/api-user-creds.d.ts +7 -0
- package/lib/api-clients/common/api-user-creds.js +19 -0
- package/lib/api-clients/common/api-user-creds.js.map +1 -0
- package/lib/api-clients/common/config-loader.d.ts +6 -0
- package/lib/api-clients/common/config-loader.js +19 -0
- package/lib/api-clients/common/config-loader.js.map +1 -0
- package/lib/api-clients/common/security/auth-constants.d.ts +15 -0
- package/lib/api-clients/common/security/auth-constants.js +22 -0
- package/lib/api-clients/common/security/auth-constants.js.map +1 -0
- package/lib/api-clients/common/security/i-auth-client.d.ts +44 -0
- package/lib/api-clients/common/security/i-auth-client.js +3 -0
- package/lib/api-clients/common/security/i-auth-client.js.map +1 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.d.ts +84 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.js +361 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.js.map +1 -0
- package/lib/api-clients/common/security/token-holder.d.ts +13 -0
- package/lib/api-clients/common/security/token-holder.js +18 -0
- package/lib/api-clients/common/security/token-holder.js.map +1 -0
- package/lib/api-clients/common/utils.d.ts +23 -0
- package/lib/api-clients/common/utils.js +83 -0
- package/lib/api-clients/common/utils.js.map +1 -0
- package/lib/api-clients/contracts/index.d.ts +1 -0
- package/lib/api-clients/contracts/index.js +5 -0
- package/lib/api-clients/contracts/index.js.map +1 -0
- package/lib/api-clients/gen/client-config.d.ts +10 -0
- package/lib/api-clients/gen/client-config.js +29 -0
- package/lib/api-clients/gen/client-config.js.map +1 -0
- package/lib/api-clients/gen/client.d.ts +45 -0
- package/lib/api-clients/gen/client.js +331 -0
- package/lib/api-clients/gen/client.js.map +1 -0
- package/lib/api-clients/gen/contracts.d.ts +2529 -0
- package/lib/api-clients/gen/contracts.js +370 -0
- package/lib/api-clients/gen/contracts.js.map +1 -0
- package/lib/api-clients/gen/endpoints.d.ts +3 -0
- package/lib/api-clients/gen/endpoints.js +3150 -0
- package/lib/api-clients/gen/endpoints.js.map +1 -0
- package/lib/api-clients/index.d.ts +2 -0
- package/lib/api-clients/index.js +6 -0
- package/lib/api-clients/index.js.map +1 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.d.ts +84 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.js +361 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.js.map +1 -0
- package/lib/apis/codiac-api/gen/endpoints.d.ts +3 -0
- package/lib/apis/codiac-api/gen/endpoints.js +3150 -0
- package/lib/apis/codiac-api/gen/endpoints.js.map +1 -0
- package/lib/apis/over-gen/temp-mods.d.ts +33 -0
- package/lib/apis/over-gen/temp-mods.js +91 -0
- package/lib/apis/over-gen/temp-mods.js.map +1 -0
- package/lib/commands/csp/login.js +52 -43
- package/lib/commands/csp/login.js.map +1 -1
- package/lib/k8s-command-base.d.ts +25 -15
- package/lib/k8s-command-base.js +92 -20
- package/lib/k8s-command-base.js.map +1 -1
- package/lib/relay/data/aws-regions.d.ts +0 -6
- package/lib/relay/data/aws-regions.js +32 -32
- package/lib/relay/data/aws-regions.js.map +1 -1
- package/lib/relay/relay-container.js +1 -1
- package/lib/relay/wsclient/bus-listener.ervice.d.ts +71 -0
- package/lib/relay/wsclient/bus-listener.ervice.js +150 -0
- package/lib/relay/wsclient/bus-listener.ervice.js.map +1 -0
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +0 -11
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +13 -14
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +33 -1
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +3712 -2
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +2 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -1
- package/lib/uilogic/enterprise-contextualizer-machine-scope.d.ts +69 -0
- package/lib/uilogic/enterprise-contextualizer-machine-scope.js +596 -0
- package/lib/uilogic/enterprise-contextualizer-machine-scope.js.map +1 -0
- package/lib/uilogic/registry-configurator-factory.d.ts +12 -0
- package/lib/uilogic/registry-configurator-factory.js +68 -0
- package/lib/uilogic/registry-configurator-factory.js.map +1 -0
- package/lib/uilogic/registry-configurator.d.ts +17 -0
- package/lib/uilogic/registry-configurator.js +145 -0
- package/lib/uilogic/registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.d.ts +15 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.js +67 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.d.ts +25 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.js +72 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.d.ts +18 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.js +55 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.d.ts +16 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.js +44 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.d.ts +17 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.js +60 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.js.map +1 -0
- package/oclif.manifest.json +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { IBetterLogger } from "@codiac.io/codiac-common/IBetterLogger";
|
|
2
|
+
import { ApiUserCreds } from "../common/api-user-creds";
|
|
3
|
+
import { RestClientBaseWithAuth } from "../common/security/rest-client-base-with-auth";
|
|
4
|
+
import { CodiacClientConfig } from "./client-config";
|
|
5
|
+
export declare class CodiacClient extends RestClientBaseWithAuth {
|
|
6
|
+
static bootstrap(logger?: IBetterLogger): void;
|
|
7
|
+
static DEFAULT_API_URL: string;
|
|
8
|
+
/** Hardcoded to match the current setting on the server.
|
|
9
|
+
* TODO: Get this from a config that is copied from the server proiject to the client project on build.
|
|
10
|
+
*/
|
|
11
|
+
/** This factory method is just for convenience and hasty backward compatibility with consumers not using ioc. */
|
|
12
|
+
static create(logger: IBetterLogger, apiRootUrl?: string, authToken?: string): CodiacClient;
|
|
13
|
+
/** Local interface for the remote api.
|
|
14
|
+
* @param settings (optional) configuration (ie: apiRootUrl) to use for the client. If not provided settings will be loaded from the config file on the local machine.
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
constructor(logger: IBetterLogger, settings?: CodiacClientConfig, credentials?: ApiUserCreds);
|
|
18
|
+
protected GetDefaultRootUrl(): string;
|
|
19
|
+
}
|
|
20
|
+
import { IRepoOptions, IDomainEntity, classDef } from "@codiac.io/codiac-common";
|
|
21
|
+
import * as contracts from "@codiac.io/codiac-common/contracts";
|
|
22
|
+
export interface IThrowingRepoOptions extends IRepoOptions {
|
|
23
|
+
throwNotFound?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/** HACK: This class exists ONLY because the client does not implement IRepo, so we cannot use ThrowingRepoWrapper.
|
|
26
|
+
* because the client needs criteriaType argument on tryReadMany, tryPatchWhere, and tryDeleteWhere.
|
|
27
|
+
*
|
|
28
|
+
* Wraps repo methods to throw on error or when unsuccessful.
|
|
29
|
+
* EXCEPT read, which can return undefined when none found
|
|
30
|
+
* and readMany which can return an empty array when none found.
|
|
31
|
+
*/
|
|
32
|
+
export declare class ThrowingCodiacClient {
|
|
33
|
+
repo: CodiacClient;
|
|
34
|
+
constructor(repo: CodiacClient);
|
|
35
|
+
create<T extends IDomainEntity>(entityType: classDef<T>, entity: T, options?: IRepoOptions): Promise<T>;
|
|
36
|
+
createMany<T extends IDomainEntity>(entityType: classDef<T>, entities: T[], options?: IRepoOptions): Promise<T[]>;
|
|
37
|
+
read<T extends IDomainEntity>(entityType: classDef<T>, idSpec: contracts.IdSpec, options?: IThrowingRepoOptions): Promise<T | undefined>;
|
|
38
|
+
readMany<T extends IDomainEntity, TCriteria extends contracts.ICriteria<T>>(entityType: classDef<T>, criteriaType: classDef<contracts.ICriteria<T>>, criteria: TCriteria, options?: IThrowingRepoOptions): Promise<T[]>;
|
|
39
|
+
update<T extends IDomainEntity>(entityType: classDef<T>, entity: T, options?: IRepoOptions): Promise<T>;
|
|
40
|
+
updateMany<T extends IDomainEntity>(entityType: classDef<T>, entities: T[], options?: IRepoOptions): Promise<T[]>;
|
|
41
|
+
patch<T extends IDomainEntity>(entityType: classDef<T>, operations: contracts.PatchSpecForOne<T>, options?: IRepoOptions): Promise<T>;
|
|
42
|
+
patchWhere<T extends IDomainEntity, TCriteria extends contracts.ICriteria<T>>(entityType: classDef<T>, criteriaType: classDef<contracts.ICriteria<T>>, operations: contracts.PatchSpecForMany<T, TCriteria>, options?: IRepoOptions): Promise<T[]>;
|
|
43
|
+
delete<T extends IDomainEntity>(entityType: classDef<T>, idSpec: contracts.IdSpec, options?: IRepoOptions): Promise<T>;
|
|
44
|
+
deleteWhere<T extends IDomainEntity>(entityType: classDef<T>, criteriaType: classDef<contracts.ICriteria<T>>, criteria: contracts.ICriteria<T>, options?: IRepoOptions): Promise<T[]>;
|
|
45
|
+
}
|
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var CodiacClient_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ThrowingCodiacClient = exports.CodiacClient = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const inversify_1 = require("inversify");
|
|
7
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
8
|
+
const api_user_creds_1 = require("../common/api-user-creds");
|
|
9
|
+
const rest_client_base_with_auth_1 = require("../common/security/rest-client-base-with-auth");
|
|
10
|
+
const endpoints_1 = require("./endpoints");
|
|
11
|
+
const client_config_1 = require("./client-config");
|
|
12
|
+
// export interface IEndpointSpec {
|
|
13
|
+
// entityType: typeRef; // this requires that TRequest extends Object. It prob should. Not sure where that breaks down - what is the scenario that we are passing in a contract that doesnt extend Object?
|
|
14
|
+
// httpMethod: httpRestVerb;
|
|
15
|
+
// route: string;
|
|
16
|
+
// serializerMap?: stringDictionary;
|
|
17
|
+
// }
|
|
18
|
+
let CodiacClient = CodiacClient_1 = class CodiacClient extends rest_client_base_with_auth_1.RestClientBaseWithAuth /* implements IRepo */ {
|
|
19
|
+
/** Local interface for the remote api.
|
|
20
|
+
* @param settings (optional) configuration (ie: apiRootUrl) to use for the client. If not provided settings will be loaded from the config file on the local machine.
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
constructor(logger, settings, credentials) {
|
|
24
|
+
let ultimateSettings = settings !== null && settings !== void 0 ? settings : client_config_1.CodiacClientConfig.load(); // load up default settings if not specified
|
|
25
|
+
super(logger, ultimateSettings === null || ultimateSettings === void 0 ? void 0 : ultimateSettings.apiBaseUrl, credentials === null || credentials === void 0 ? void 0 : credentials.apiToken);
|
|
26
|
+
}
|
|
27
|
+
static bootstrap(logger) {
|
|
28
|
+
this.bootstrap_base(endpoints_1.Endpoints.list);
|
|
29
|
+
}
|
|
30
|
+
/** Hardcoded to match the current setting on the server.
|
|
31
|
+
* TODO: Get this from a config that is copied from the server proiject to the client project on build.
|
|
32
|
+
*/
|
|
33
|
+
/** This factory method is just for convenience and hasty backward compatibility with consumers not using ioc. */
|
|
34
|
+
static create(logger, apiRootUrl, authToken) {
|
|
35
|
+
return new CodiacClient_1(logger, { apiBaseUrl: apiRootUrl }, (authToken) ? { apiToken: authToken } : undefined);
|
|
36
|
+
}
|
|
37
|
+
GetDefaultRootUrl() {
|
|
38
|
+
return CodiacClient_1.DEFAULT_API_URL;
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
CodiacClient.DEFAULT_API_URL = "https://api.codiac.io";
|
|
42
|
+
CodiacClient = CodiacClient_1 = tslib_1.__decorate([
|
|
43
|
+
(0, inversify_1.injectable)(),
|
|
44
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
45
|
+
tslib_1.__param(1, (0, inversify_1.inject)(client_config_1.CodiacClientConfig)),
|
|
46
|
+
tslib_1.__param(2, (0, inversify_1.inject)(api_user_creds_1.ApiUserCreds)),
|
|
47
|
+
tslib_1.__metadata("design:paramtypes", [Object, client_config_1.CodiacClientConfig,
|
|
48
|
+
api_user_creds_1.ApiUserCreds])
|
|
49
|
+
], CodiacClient);
|
|
50
|
+
exports.CodiacClient = CodiacClient;
|
|
51
|
+
/** HACK: This class exists ONLY because the client does not implement IRepo, so we cannot use ThrowingRepoWrapper.
|
|
52
|
+
* because the client needs criteriaType argument on tryReadMany, tryPatchWhere, and tryDeleteWhere.
|
|
53
|
+
*
|
|
54
|
+
* Wraps repo methods to throw on error or when unsuccessful.
|
|
55
|
+
* EXCEPT read, which can return undefined when none found
|
|
56
|
+
* and readMany which can return an empty array when none found.
|
|
57
|
+
*/
|
|
58
|
+
let ThrowingCodiacClient = class ThrowingCodiacClient /* implements IThrowingRepo */ {
|
|
59
|
+
constructor(repo) {
|
|
60
|
+
this.repo = repo;
|
|
61
|
+
}
|
|
62
|
+
// startTransaction(): Promise<void> { return this.repo.startTransaction(); }
|
|
63
|
+
// commit(): Promise<void> { return this.repo.commit(); }
|
|
64
|
+
// rollback(): Promise<void> { return this.repo.rollback(); }
|
|
65
|
+
create(entityType, entity, options) {
|
|
66
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
try {
|
|
68
|
+
let result = yield this.repo.tryCreate(entityType, entity, options);
|
|
69
|
+
if (result.error) {
|
|
70
|
+
throw result.error;
|
|
71
|
+
}
|
|
72
|
+
else if (result.success == false || result.output == undefined) {
|
|
73
|
+
throw new Error(`Create ${entityType.name} failed without error. ${result.message || ""}`);
|
|
74
|
+
}
|
|
75
|
+
resolve(result.output);
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
reject(err);
|
|
79
|
+
}
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
createMany(entityType, entities, options) {
|
|
83
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
var _a;
|
|
85
|
+
try {
|
|
86
|
+
let result = yield this.repo.tryCreateMany(entityType, entities, options);
|
|
87
|
+
if (result.error) {
|
|
88
|
+
throw result.error;
|
|
89
|
+
}
|
|
90
|
+
else if (result.failures && result.failures.length > 0) {
|
|
91
|
+
let messageList = result.failures.map(f => { var _a; return `${f.message || ""} ${((_a = f.error) === null || _a === void 0 ? void 0 : _a.message) || ""}`; }).join("\n");
|
|
92
|
+
throw new Error(`CreateMany ${entityType.name} incurred ${result.failures.length} failures (among ${((_a = result.successes) === null || _a === void 0 ? void 0 : _a.length) || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
93
|
+
}
|
|
94
|
+
else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
95
|
+
throw new Error(`CreateMany ${entityType.name} failed without error. ${result.message || ""}`);
|
|
96
|
+
}
|
|
97
|
+
resolve(result.successes);
|
|
98
|
+
}
|
|
99
|
+
catch (err) {
|
|
100
|
+
reject(err);
|
|
101
|
+
}
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
read(entityType, idSpec, options) {
|
|
105
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
106
|
+
try {
|
|
107
|
+
let result = yield this.repo.tryRead(entityType, idSpec, options);
|
|
108
|
+
if (result.error) {
|
|
109
|
+
throw result.error;
|
|
110
|
+
}
|
|
111
|
+
else if (result.output == undefined && (options === null || options === void 0 ? void 0 : options.throwNotFound) == true) {
|
|
112
|
+
throw new Error(`No ${entityType.name} found.`);
|
|
113
|
+
}
|
|
114
|
+
resolve(result.output);
|
|
115
|
+
}
|
|
116
|
+
catch (err) {
|
|
117
|
+
reject(err);
|
|
118
|
+
}
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
readMany(entityType, criteriaType, criteria, options) {
|
|
122
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
try {
|
|
124
|
+
let result = yield this.repo.tryReadMany(entityType, criteriaType, criteria, options);
|
|
125
|
+
if (result.error) {
|
|
126
|
+
throw result.error;
|
|
127
|
+
}
|
|
128
|
+
else if ((result.output == undefined || result.output.length == 0) && (options === null || options === void 0 ? void 0 : options.throwNotFound) == true) {
|
|
129
|
+
throw new Error(`No ${entityType.name} found.`);
|
|
130
|
+
}
|
|
131
|
+
resolve(result.output || []);
|
|
132
|
+
}
|
|
133
|
+
catch (err) {
|
|
134
|
+
reject(err);
|
|
135
|
+
}
|
|
136
|
+
}));
|
|
137
|
+
}
|
|
138
|
+
update(entityType, entity, options) {
|
|
139
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
try {
|
|
141
|
+
let result = yield this.repo.tryUpdate(entityType, entity, options);
|
|
142
|
+
if (result.error) {
|
|
143
|
+
throw result.error;
|
|
144
|
+
}
|
|
145
|
+
else if (result.success == false || result.output == undefined) {
|
|
146
|
+
throw new Error(`Update ${entityType.name} failed without error. ${result.message || ""}`);
|
|
147
|
+
}
|
|
148
|
+
resolve(result.output);
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
reject(err);
|
|
152
|
+
}
|
|
153
|
+
}));
|
|
154
|
+
}
|
|
155
|
+
updateMany(entityType, entities, options) {
|
|
156
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
157
|
+
var _a;
|
|
158
|
+
try {
|
|
159
|
+
let result = yield this.repo.tryUpdateMany(entityType, entities, options);
|
|
160
|
+
if (result.error) {
|
|
161
|
+
throw result.error;
|
|
162
|
+
}
|
|
163
|
+
else if (result.failures && result.failures.length > 0) {
|
|
164
|
+
let messageList = result.failures.map(f => { var _a; return `${f.message || ""} ${((_a = f.error) === null || _a === void 0 ? void 0 : _a.message) || ""}`; }).join("\n");
|
|
165
|
+
throw new Error(`UpdateMany ${entityType.name} incurred ${result.failures.length} failures (among ${((_a = result.successes) === null || _a === void 0 ? void 0 : _a.length) || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
166
|
+
}
|
|
167
|
+
else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
168
|
+
throw new Error(`UpdateMany ${entityType.name} failed without error. ${result.message || ""}`);
|
|
169
|
+
}
|
|
170
|
+
resolve(result.successes);
|
|
171
|
+
}
|
|
172
|
+
catch (err) {
|
|
173
|
+
reject(err);
|
|
174
|
+
}
|
|
175
|
+
}));
|
|
176
|
+
}
|
|
177
|
+
// upsert<T extends IDomainEntity>(entityType: classDef<T>, entity: T, options?: IRepoOptions): Promise<T> {
|
|
178
|
+
// return new Promise<T>(async (resolve, reject) => {
|
|
179
|
+
// try {
|
|
180
|
+
// let result = await this.repo.tryUpsert(entityType, entity, options);
|
|
181
|
+
// if (result.error) {
|
|
182
|
+
// throw result.error;
|
|
183
|
+
// } else if (result.success == false || result.output == undefined) {
|
|
184
|
+
// throw new Error(`Upsert failed without error. ${result.message || ""}`);
|
|
185
|
+
// }
|
|
186
|
+
// resolve(result.output);
|
|
187
|
+
// } catch (err) {
|
|
188
|
+
// reject(err);
|
|
189
|
+
// }
|
|
190
|
+
// });
|
|
191
|
+
// }
|
|
192
|
+
// upsertMany<T extends IDomainEntity>(entityType: classDef<T>, entities: T[], options?: IRepoOptions): Promise<T[]> {
|
|
193
|
+
// return new Promise<T[]>(async (resolve, reject) => {
|
|
194
|
+
// try {
|
|
195
|
+
// let result = await this.repo.tryUpsertMany(entityType, entities, options);
|
|
196
|
+
// if (result.error) {
|
|
197
|
+
// throw result.error;
|
|
198
|
+
// } else if (result.failures && result.failures.length > 0) {
|
|
199
|
+
// let messageList = result.failures.map(f => `${f.message || ""} ${f.error?.message || ""}`).join("\n");
|
|
200
|
+
// throw new Error(`UpsertMany incurred ${result.failures.length} failures (among ${result.successes?.length || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
201
|
+
// } else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
202
|
+
// throw new Error(`UpsertMany failed without error. ${result.message || ""}`);
|
|
203
|
+
// }
|
|
204
|
+
// resolve(result.successes);
|
|
205
|
+
// } catch (err) {
|
|
206
|
+
// reject(err);
|
|
207
|
+
// }
|
|
208
|
+
// });
|
|
209
|
+
// }
|
|
210
|
+
// updatePartial<T extends IDomainEntity>(entityType: classDef<T>, entity: Partial<T>, options?: IRepoOptions): Promise<Partial<T>> {
|
|
211
|
+
// return new Promise<Partial<T>>(async (resolve, reject) => {
|
|
212
|
+
// try {
|
|
213
|
+
// let operations = this.createPatchSpec(entity);
|
|
214
|
+
// let result = await this.repo.tryPatch(entityType, operations, options);
|
|
215
|
+
// if (result.error) {
|
|
216
|
+
// throw result.error;
|
|
217
|
+
// } else if (result.success == false || result.output == undefined) {
|
|
218
|
+
// throw new Error(`UpdatePartial failed without error. ${result.message || ""}`);
|
|
219
|
+
// }
|
|
220
|
+
// resolve(result.output);
|
|
221
|
+
// } catch (err) {
|
|
222
|
+
// reject(err);
|
|
223
|
+
// }
|
|
224
|
+
// });
|
|
225
|
+
// }
|
|
226
|
+
// updateManyPartial<T extends IDomainEntity>(entityType: classDef<T>, partials: Partial<T>[], options?: IRepoOptions): Promise<Partial<T>[]> {
|
|
227
|
+
// return new Promise<Partial<T>[]>(async (resolve, reject) => {
|
|
228
|
+
// try {
|
|
229
|
+
// let criteriaType = /* how do we get this? */;
|
|
230
|
+
// let operations = this.createPatchSpecForMany(partials);
|
|
231
|
+
// let result = await this.repo.tryPatchWhere(entityType, criteriaType, operations, options);
|
|
232
|
+
// if (result.error) {
|
|
233
|
+
// throw result.error;
|
|
234
|
+
// } else if (result.failures && result.failures.length > 0) {
|
|
235
|
+
// let messageList = result.failures.map(f => `${f.message || ""} ${f.error?.message || ""}`).join("\n");
|
|
236
|
+
// throw new Error(`UpdateManyPartial incurred ${result.failures.length} failures (among ${result.successes?.length || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
237
|
+
// } else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
238
|
+
// throw new Error(`UpdateManyPartial failed without error. ${result.message || ""}`);
|
|
239
|
+
// }
|
|
240
|
+
// resolve(result.successes);
|
|
241
|
+
// } catch (err) {
|
|
242
|
+
// reject(err);
|
|
243
|
+
// }
|
|
244
|
+
// });
|
|
245
|
+
// }
|
|
246
|
+
patch(entityType, operations, options) {
|
|
247
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
248
|
+
try {
|
|
249
|
+
let result = yield this.repo.tryPatch(entityType, operations, options);
|
|
250
|
+
if (result.error) {
|
|
251
|
+
throw result.error;
|
|
252
|
+
}
|
|
253
|
+
else if (result.success == false || result.output == undefined) {
|
|
254
|
+
throw new Error(`UpdatePartial ${entityType.name} failed without error. ${result.message || ""}`);
|
|
255
|
+
}
|
|
256
|
+
resolve(result.output);
|
|
257
|
+
}
|
|
258
|
+
catch (err) {
|
|
259
|
+
reject(err);
|
|
260
|
+
}
|
|
261
|
+
}));
|
|
262
|
+
}
|
|
263
|
+
patchWhere(entityType, criteriaType, operations, options) {
|
|
264
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
265
|
+
var _a;
|
|
266
|
+
try {
|
|
267
|
+
let result = yield this.repo.tryPatchWhere(entityType, criteriaType, operations, options);
|
|
268
|
+
if (result.error) {
|
|
269
|
+
throw result.error;
|
|
270
|
+
}
|
|
271
|
+
else if (result.failures && result.failures.length > 0) {
|
|
272
|
+
let messageList = result.failures.map(f => { var _a; return `${f.message || ""} ${((_a = f.error) === null || _a === void 0 ? void 0 : _a.message) || ""}`; }).join("\n");
|
|
273
|
+
throw new Error(`${entityType.name} PatchWhere incurred ${result.failures.length} failures (among ${((_a = result.successes) === null || _a === void 0 ? void 0 : _a.length) || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
274
|
+
}
|
|
275
|
+
else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
276
|
+
throw new Error(`${entityType.name} PatchWhere failed without error. ${result.message || ""}`);
|
|
277
|
+
}
|
|
278
|
+
resolve(result.successes);
|
|
279
|
+
}
|
|
280
|
+
catch (err) {
|
|
281
|
+
reject(err);
|
|
282
|
+
}
|
|
283
|
+
}));
|
|
284
|
+
}
|
|
285
|
+
delete(entityType, idSpec, options) {
|
|
286
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
287
|
+
try {
|
|
288
|
+
let result = yield this.repo.tryDelete(entityType, idSpec, options);
|
|
289
|
+
if (result.error) {
|
|
290
|
+
throw result.error;
|
|
291
|
+
}
|
|
292
|
+
else if (result.success == false || result.output == undefined) {
|
|
293
|
+
throw new Error(`Delete ${entityType.name} failed without error. ${result.message || ""}`);
|
|
294
|
+
}
|
|
295
|
+
resolve(result.output);
|
|
296
|
+
}
|
|
297
|
+
catch (err) {
|
|
298
|
+
reject(err);
|
|
299
|
+
}
|
|
300
|
+
}));
|
|
301
|
+
}
|
|
302
|
+
deleteWhere(entityType, criteriaType, criteria, options) {
|
|
303
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
304
|
+
var _a;
|
|
305
|
+
try {
|
|
306
|
+
let result = yield this.repo.tryDeleteWhere(entityType, criteriaType, criteria, options);
|
|
307
|
+
if (result.error) {
|
|
308
|
+
throw result.error;
|
|
309
|
+
}
|
|
310
|
+
else if (result.failures && result.failures.length > 0) {
|
|
311
|
+
let messageList = result.failures.map(f => { var _a; return `${f.message || ""} ${((_a = f.error) === null || _a === void 0 ? void 0 : _a.message) || ""}`; }).join("\n");
|
|
312
|
+
throw new Error(`${entityType.name} DeleteWhere incurred ${result.failures.length} failures (among ${((_a = result.successes) === null || _a === void 0 ? void 0 : _a.length) || 0} successes). ${result.message || ""}.\n ${messageList}`);
|
|
313
|
+
}
|
|
314
|
+
else if (result.success == false || result.successes == undefined || result.successes.length == 0) {
|
|
315
|
+
throw new Error(`${entityType.name} DeleteWhere failed without error. ${result.message || ""}`);
|
|
316
|
+
}
|
|
317
|
+
resolve(result.successes);
|
|
318
|
+
}
|
|
319
|
+
catch (err) {
|
|
320
|
+
reject(err);
|
|
321
|
+
}
|
|
322
|
+
}));
|
|
323
|
+
}
|
|
324
|
+
};
|
|
325
|
+
ThrowingCodiacClient = tslib_1.__decorate([
|
|
326
|
+
(0, inversify_1.injectable)(),
|
|
327
|
+
tslib_1.__param(0, (0, inversify_1.inject)(CodiacClient)),
|
|
328
|
+
tslib_1.__metadata("design:paramtypes", [CodiacClient])
|
|
329
|
+
], ThrowingCodiacClient);
|
|
330
|
+
exports.ThrowingCodiacClient = ThrowingCodiacClient;
|
|
331
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api-clients/gen/client.ts"],"names":[],"mappings":"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"}
|