@vertikalx/vtx-backend-client 3.0.0-dev.8 → 3.0.1-dev-max.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/package.json +16 -3
- package/src/api/api-call-headers.ts +35 -0
- package/src/api/backend-response.ts +14 -0
- package/src/api/domains.ts +6 -0
- package/src/api/response-builder.ts +165 -0
- package/src/api/types.ts +9 -0
- package/src/api/vtx-apikey-api.ts +23 -0
- package/src/api/vtx-base-api.ts +2253 -0
- package/src/api/vtx-mobile-api.ts +43 -0
- package/src/api/vtx-web-browser-api.ts +46 -0
- package/src/api/vtx-web-server-api.ts +41 -0
- package/src/client/index.ts +65 -0
- package/src/client/runtime/batcher.ts +275 -0
- package/src/client/runtime/createClient.ts +68 -0
- package/src/client/runtime/error.ts +29 -0
- package/src/client/runtime/fetcher.ts +97 -0
- package/src/client/runtime/generateGraphqlOperation.ts +225 -0
- package/src/client/runtime/index.ts +13 -0
- package/src/client/runtime/linkTypeMap.ts +156 -0
- package/src/client/runtime/typeSelection.ts +95 -0
- package/src/client/runtime/types.ts +69 -0
- package/src/client/schema.graphql +4256 -0
- package/src/client/schema.ts +8329 -0
- package/src/client/{types.js → types.ts} +6016 -2230
- package/src/generated/graphql.ts +12445 -0
- package/src/{index.d.ts → index.ts} +7 -2
- package/src/operations/admin.graphql +19 -0
- package/src/operations/ai-coach.graphql +117 -0
- package/src/operations/athlete.graphql +1764 -0
- package/src/operations/auth.graphql +301 -0
- package/src/operations/campaign.graphql +775 -0
- package/src/operations/email-campaign.graphql +160 -0
- package/src/operations/followers.graphql +45 -0
- package/src/operations/integrations.graphql +216 -0
- package/src/operations/leaderboard.graphql +54 -0
- package/src/operations/media.graphql +179 -0
- package/src/operations/notifications.graphql +93 -0
- package/src/operations/offers.graphql +368 -0
- package/src/operations/onboarding.graphql +29 -0
- package/src/operations/sponsor.graphql +368 -0
- package/src/operations/sport.graphql +132 -0
- package/src/operations/user.graphql +446 -0
- package/tsconfig.lib.json +10 -0
- package/src/api/api-call-headers.d.ts +0 -12
- package/src/api/api-call-headers.js +0 -16
- package/src/api/api-call-headers.js.map +0 -1
- package/src/api/backend-response.d.ts +0 -10
- package/src/api/backend-response.js +0 -3
- package/src/api/backend-response.js.map +0 -1
- package/src/api/domains.d.ts +0 -4
- package/src/api/domains.js +0 -8
- package/src/api/domains.js.map +0 -1
- package/src/api/response-builder.d.ts +0 -4
- package/src/api/response-builder.js +0 -123
- package/src/api/response-builder.js.map +0 -1
- package/src/api/types.d.ts +0 -2
- package/src/api/types.js +0 -3
- package/src/api/types.js.map +0 -1
- package/src/api/vtx-apikey-api.d.ts +0 -6
- package/src/api/vtx-apikey-api.js +0 -19
- package/src/api/vtx-apikey-api.js.map +0 -1
- package/src/api/vtx-base-api.d.ts +0 -134
- package/src/api/vtx-base-api.js +0 -8586
- package/src/api/vtx-base-api.js.map +0 -1
- package/src/api/vtx-mobile-api.d.ts +0 -9
- package/src/api/vtx-mobile-api.js +0 -62
- package/src/api/vtx-mobile-api.js.map +0 -1
- package/src/api/vtx-web-browser-api.d.ts +0 -7
- package/src/api/vtx-web-browser-api.js +0 -36
- package/src/api/vtx-web-browser-api.js.map +0 -1
- package/src/api/vtx-web-server-api.d.ts +0 -7
- package/src/api/vtx-web-server-api.js +0 -33
- package/src/api/vtx-web-server-api.js.map +0 -1
- package/src/client/index.d.ts +0 -25
- package/src/client/index.js +0 -44
- package/src/client/index.js.map +0 -1
- package/src/client/runtime/batcher.d.ts +0 -36
- package/src/client/runtime/batcher.js +0 -123
- package/src/client/runtime/batcher.js.map +0 -1
- package/src/client/runtime/createClient.d.ts +0 -17
- package/src/client/runtime/createClient.js +0 -28
- package/src/client/runtime/createClient.js.map +0 -1
- package/src/client/runtime/error.d.ts +0 -15
- package/src/client/runtime/error.js +0 -19
- package/src/client/runtime/error.js.map +0 -1
- package/src/client/runtime/fetcher.d.ts +0 -10
- package/src/client/runtime/fetcher.js +0 -68
- package/src/client/runtime/fetcher.js.map +0 -1
- package/src/client/runtime/generateGraphqlOperation.d.ts +0 -30
- package/src/client/runtime/generateGraphqlOperation.js +0 -134
- package/src/client/runtime/generateGraphqlOperation.js.map +0 -1
- package/src/client/runtime/index.d.ts +0 -11
- package/src/client/runtime/index.js +0 -17
- package/src/client/runtime/index.js.map +0 -1
- package/src/client/runtime/linkTypeMap.d.ts +0 -9
- package/src/client/runtime/linkTypeMap.js +0 -95
- package/src/client/runtime/linkTypeMap.js.map +0 -1
- package/src/client/runtime/typeSelection.d.ts +0 -28
- package/src/client/runtime/typeSelection.js +0 -3
- package/src/client/runtime/typeSelection.js.map +0 -1
- package/src/client/runtime/types.d.ts +0 -55
- package/src/client/runtime/types.js +0 -3
- package/src/client/runtime/types.js.map +0 -1
- package/src/client/schema.d.ts +0 -4886
- package/src/client/schema.js +0 -1051
- package/src/client/schema.js.map +0 -1
- package/src/client/types.d.ts +0 -2601
- package/src/client/types.js.map +0 -1
- package/src/index.js +0 -28
- package/src/index.js.map +0 -1
- package/tsconfig.lib.tsbuildinfo +0 -1
package/package.json
CHANGED
|
@@ -1,16 +1,29 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vertikalx/vtx-backend-client",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.1-dev-max.0",
|
|
4
4
|
"description": "GraphQL API generated client for VTX",
|
|
5
5
|
"types": "src/index.d.ts",
|
|
6
6
|
"main": "src/index.js",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"test": "echo \"Error: no test specified\" && exit 1"
|
|
8
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
9
|
+
"codegen": "graphql-codegen --config codegen.yml"
|
|
9
10
|
},
|
|
10
11
|
"keywords": [
|
|
11
12
|
"GraphQL",
|
|
12
13
|
"VTX"
|
|
13
14
|
],
|
|
14
15
|
"author": "Daniel Castañeda <daniel@vtxathlete.com>",
|
|
15
|
-
"license": "SEE LICENSE IN LICENSE.md"
|
|
16
|
+
"license": "SEE LICENSE IN LICENSE.md",
|
|
17
|
+
"dependencies": {
|
|
18
|
+
"graphql": "^16.12.0",
|
|
19
|
+
"graphql-request": "^7.4.0",
|
|
20
|
+
"graphql-tag": "^2.12.6"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@graphql-codegen/cli": "^6.1.1",
|
|
24
|
+
"@graphql-codegen/typescript": "^5.0.7",
|
|
25
|
+
"@graphql-codegen/typescript-operations": "^5.0.7",
|
|
26
|
+
"@graphql-codegen/typescript-graphql-request": "^6.4.0",
|
|
27
|
+
"@graphql-codegen/add": "^6.0.0"
|
|
28
|
+
}
|
|
16
29
|
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export type APICallHeaders = { [key: string]: string };
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
// Default System ID for VTX backend
|
|
8
|
+
export const DEFAULT_SYSTEM_ID = 'vtx';
|
|
9
|
+
|
|
10
|
+
// Default HEADER key for System ID
|
|
11
|
+
export const DEFAULT_SYSTEM_ID_HEADER = 'io-stackbus-cms-system-id';
|
|
12
|
+
|
|
13
|
+
// Default HEADER key for system-key name (name of the key)
|
|
14
|
+
export const DEFAULT_SYSTEM_KEY_NAME_HEADER = 'io-stackbus-cms-system-key-name';
|
|
15
|
+
|
|
16
|
+
// Default HEADER key for system-key value (value of the key)
|
|
17
|
+
export const DEFAULT_SYSTEM_KEY_VALUE_HEADER = 'io-stackbus-cms-system-key-value';
|
|
18
|
+
|
|
19
|
+
// Default HEADER key for providing APP KEY (access key to API from non-trusted devices such as our mobile app)
|
|
20
|
+
export const DEFAULT_APP_KEY_HEADER = 'io-stackbus-app-key';
|
|
21
|
+
|
|
22
|
+
// Default HEADER key for sensing user backend token
|
|
23
|
+
export const DEFAULT_SYSTEM_USER_TOKEN_HEADER = 'io-stackbus-cms-system-user-token';
|
|
24
|
+
|
|
25
|
+
// Default HEADER key for api-key-id header key
|
|
26
|
+
export const DEFAULT_API_KEY_ID_HEADER = 'io-stackbus-cms-api-key-id';
|
|
27
|
+
|
|
28
|
+
// Default HEADER key for api-key-value header key
|
|
29
|
+
export const DEFAULT_API_KEY_VALUE_HEADER = 'io-stackbus-cms-api-key-value';
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
export const DEFAULT_HEADERS:APICallHeaders = {
|
|
33
|
+
["Content-Type"]:"application/json",
|
|
34
|
+
[DEFAULT_SYSTEM_ID_HEADER]:DEFAULT_SYSTEM_ID
|
|
35
|
+
};
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { AnyARecord } from "dns";
|
|
2
|
+
import { BackendError, ITypedBackendResponse } from "./backend-response";
|
|
3
|
+
import { VTX_ERRORS } from "@vertikalx/vtx-core-common";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export type checkerFn = (response:any)=>boolean;
|
|
7
|
+
|
|
8
|
+
const Logger = {
|
|
9
|
+
log:(msg:string)=>{
|
|
10
|
+
//console.log(msg)
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export function buildResponse<T>(response:any, rootProperty:string, checker: checkerFn):ITypedBackendResponse<T>{
|
|
15
|
+
const retValue:ITypedBackendResponse<T> = {}
|
|
16
|
+
|
|
17
|
+
//console.log("=========== BEGIN buildResponse =============");
|
|
18
|
+
//console.log(JSON.stringify(response, null, 2));
|
|
19
|
+
|
|
20
|
+
//console.log("=========== END buildResponse =============");
|
|
21
|
+
|
|
22
|
+
if (checker(response)){
|
|
23
|
+
|
|
24
|
+
//Logger.log('checker 1');
|
|
25
|
+
try {
|
|
26
|
+
retValue.data = response[rootProperty] as T;
|
|
27
|
+
} catch (casterr) {
|
|
28
|
+
Logger.log('Error trying to cast to return type');
|
|
29
|
+
retValue.error = {
|
|
30
|
+
httpStatus:500,
|
|
31
|
+
code:VTX_ERRORS.VTX_SERVER_ERROR.code,
|
|
32
|
+
message:"Error: Obtained incorrect data from Backend"
|
|
33
|
+
};
|
|
34
|
+
retValue.rawErrors = [
|
|
35
|
+
{
|
|
36
|
+
data:response,
|
|
37
|
+
error:casterr
|
|
38
|
+
}
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
} else if (response?.errors) {
|
|
43
|
+
|
|
44
|
+
//Logger.log('checker 2');
|
|
45
|
+
if (Array.isArray(response.errors)) {
|
|
46
|
+
retValue.rawErrors = response.errors;
|
|
47
|
+
} else {
|
|
48
|
+
retValue.rawErrors = [response.errors];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
} else if (response?.error) {
|
|
52
|
+
//Logger.log('checker 3');
|
|
53
|
+
|
|
54
|
+
if (Array.isArray(response.error)) {
|
|
55
|
+
retValue.rawErrors = response.error;
|
|
56
|
+
} else {
|
|
57
|
+
retValue.rawErrors = [response.error];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
} else if (checker(response?.data)) {
|
|
61
|
+
//Logger.log('checker 4');
|
|
62
|
+
|
|
63
|
+
try {
|
|
64
|
+
retValue.data = response.data[rootProperty] as T;
|
|
65
|
+
} catch (casterr) {
|
|
66
|
+
Logger.log('Error trying to cast to return type');
|
|
67
|
+
|
|
68
|
+
retValue.error = {
|
|
69
|
+
httpStatus:500,
|
|
70
|
+
code:VTX_ERRORS.VTX_SERVER_ERROR.code,
|
|
71
|
+
message:"Error: Obtained incorrect data from Backend"
|
|
72
|
+
};
|
|
73
|
+
retValue.rawErrors = [
|
|
74
|
+
{
|
|
75
|
+
data:response.data,
|
|
76
|
+
error:casterr
|
|
77
|
+
}
|
|
78
|
+
];
|
|
79
|
+
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
//Logger.log('checker 5');
|
|
83
|
+
retValue.error = {
|
|
84
|
+
httpStatus:500,
|
|
85
|
+
code:VTX_ERRORS.VTX_SERVER_ERROR.code,
|
|
86
|
+
message:"Error: Obtained incorrect data from Backend"
|
|
87
|
+
};
|
|
88
|
+
retValue.rawErrors = ['Error: Obtained incorrect data from Backend'];
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
Logger.log('buildResponse retValue:');
|
|
93
|
+
Logger.log(JSON.stringify(retValue,null,2));
|
|
94
|
+
|
|
95
|
+
return retValue;
|
|
96
|
+
}
|
|
97
|
+
export function buildErrorResponse<T>(error:any):ITypedBackendResponse<T>{
|
|
98
|
+
|
|
99
|
+
//Logger.log("=========== BEGIN buildErrorResponse received =============");
|
|
100
|
+
//Logger.log(JSON.stringify(error, null, 2));
|
|
101
|
+
|
|
102
|
+
//Logger.log("=========== END buildErrorResponse received =============");
|
|
103
|
+
|
|
104
|
+
const retValue:ITypedBackendResponse<T> = {}
|
|
105
|
+
if (error.errors){
|
|
106
|
+
|
|
107
|
+
if (Array.isArray(error.errors)){
|
|
108
|
+
retValue.rawErrors = error.errors;
|
|
109
|
+
|
|
110
|
+
}else{
|
|
111
|
+
retValue.rawErrors = [error.errors];
|
|
112
|
+
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
}else{
|
|
116
|
+
if (Array.isArray(error)){
|
|
117
|
+
retValue.rawErrors = error;
|
|
118
|
+
}else{
|
|
119
|
+
retValue.rawErrors = [error];
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
retValue.error = extractError(retValue.rawErrors );
|
|
124
|
+
|
|
125
|
+
//Logger.log("=========== BEGIN buildErrorResponse returned =============");
|
|
126
|
+
//Logger.log(JSON.stringify(retValue, null, 2));
|
|
127
|
+
|
|
128
|
+
//Logger.log("=========== END buildErrorResponse returned =============");
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
return retValue;
|
|
132
|
+
}
|
|
133
|
+
function extractError(rawErrors: any[]|undefined): BackendError {
|
|
134
|
+
|
|
135
|
+
let retValue:BackendError = {
|
|
136
|
+
httpStatus:500,
|
|
137
|
+
code:VTX_ERRORS.VTX_SERVER_ERROR.code,
|
|
138
|
+
message:VTX_ERRORS.VTX_SERVER_ERROR.description
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
if (! rawErrors || rawErrors.length <= 0){
|
|
142
|
+
return retValue;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
let theError:any = rawErrors.find( e => {
|
|
146
|
+
|
|
147
|
+
if (e.extensions && e.extensions.type === "VtxError"){
|
|
148
|
+
return true;
|
|
149
|
+
}
|
|
150
|
+
return false;
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
if (theError){
|
|
154
|
+
retValue = {
|
|
155
|
+
httpStatus:theError?.extensions?.httpStatus ?? 500,
|
|
156
|
+
code: theError?.extensions?.vtxError?.code ?? VTX_ERRORS.VTX_SERVER_ERROR.code,
|
|
157
|
+
message: theError?.extensions?.vtxError?.description ?? VTX_ERRORS.VTX_SERVER_ERROR.description
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return retValue;
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
}
|
|
165
|
+
|
package/src/api/types.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { QualificationDto,
|
|
2
|
+
AgeQualificationDto, GenderQualificationDto ,
|
|
3
|
+
ScoreQualificationDto, LocationQualificationDto,
|
|
4
|
+
NationalityQualificationDto, DistanceQualificationDto,
|
|
5
|
+
SportsQualificationDto, SportsLevelQualificationDto
|
|
6
|
+
} from "../client";
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
export type QualificationDtoUnion = QualificationDto | AgeQualificationDto | GenderQualificationDto | ScoreQualificationDto | LocationQualificationDto | NationalityQualificationDto | DistanceQualificationDto | SportsQualificationDto | SportsLevelQualificationDto;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
|
|
2
|
+
import pjson from "../../package.json";
|
|
3
|
+
import { APICallHeaders, DEFAULT_API_KEY_ID_HEADER, DEFAULT_API_KEY_VALUE_HEADER, DEFAULT_APP_KEY_HEADER, DEFAULT_HEADERS } from "./api-call-headers";
|
|
4
|
+
import { VTXBaseAPI } from "./vtx-base-api";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
export class VTXAPIKeyAPI extends VTXBaseAPI{
|
|
11
|
+
|
|
12
|
+
constructor(backendUrl:string, apiKeyId:string, apiKeyValue:string ){
|
|
13
|
+
super(backendUrl, VTXAPIKeyAPI.getDefaultHeaders(apiKeyId, apiKeyValue));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
public static getDefaultHeaders(apiKeyId:string, apiKeyValue:string):APICallHeaders{
|
|
17
|
+
return {
|
|
18
|
+
[DEFAULT_API_KEY_ID_HEADER]: apiKeyId,
|
|
19
|
+
[DEFAULT_API_KEY_VALUE_HEADER]: apiKeyValue,
|
|
20
|
+
...DEFAULT_HEADERS
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|