@constructive-io/graphql-server 2.19.2 → 2.19.4
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/codegen/orm/index.d.ts +7 -603
- package/codegen/orm/index.js +4 -127
- package/codegen/orm/input-types.d.ts +14682 -7790
- package/codegen/orm/input-types.js +0 -5
- package/codegen/orm/models/api.d.ts +6 -6
- package/codegen/orm/models/api.js +3 -4
- package/codegen/orm/models/domain.d.ts +6 -6
- package/codegen/orm/models/domain.js +3 -4
- package/codegen/orm/models/index.d.ts +1 -58
- package/codegen/orm/models/index.js +3 -118
- package/codegen/orm/mutation/index.d.ts +1 -525
- package/codegen/orm/mutation/index.js +2 -591
- package/codegen/orm/query/index.d.ts +3 -257
- package/codegen/orm/query/index.js +8 -274
- package/codegen/orm/query-builder.d.ts +2 -1
- package/codegen/orm/query-builder.js +376 -129
- package/codegen/orm/select-types.d.ts +33 -0
- package/esm/codegen/orm/index.js +4 -127
- package/esm/codegen/orm/input-types.js +0 -5
- package/esm/codegen/orm/models/api.js +3 -4
- package/esm/codegen/orm/models/domain.js +3 -4
- package/esm/codegen/orm/models/index.js +1 -58
- package/esm/codegen/orm/mutation/index.js +2 -591
- package/esm/codegen/orm/query/index.js +8 -274
- package/esm/codegen/orm/query-builder.js +343 -129
- package/esm/middleware/api.js +145 -173
- package/esm/middleware/gql.js +72 -71
- package/middleware/api.d.ts +16 -3
- package/middleware/api.js +148 -173
- package/middleware/gql.d.ts +174 -24
- package/middleware/gql.js +76 -76
- package/middleware/types.d.ts +3 -19
- package/package.json +17 -14
- package/types.d.ts +17 -44
- package/codegen/orm/models/apiExtension.d.ts +0 -42
- package/codegen/orm/models/apiExtension.js +0 -77
- package/codegen/orm/models/apiModule.d.ts +0 -42
- package/codegen/orm/models/apiModule.js +0 -77
- package/codegen/orm/models/apiSchema.d.ts +0 -42
- package/codegen/orm/models/apiSchema.js +0 -77
- package/codegen/orm/models/app.d.ts +0 -42
- package/codegen/orm/models/app.js +0 -77
- package/codegen/orm/models/checkConstraint.d.ts +0 -42
- package/codegen/orm/models/checkConstraint.js +0 -77
- package/codegen/orm/models/connectedAccountsModule.d.ts +0 -42
- package/codegen/orm/models/connectedAccountsModule.js +0 -77
- package/codegen/orm/models/cryptoAddressesModule.d.ts +0 -42
- package/codegen/orm/models/cryptoAddressesModule.js +0 -77
- package/codegen/orm/models/cryptoAuthModule.d.ts +0 -42
- package/codegen/orm/models/cryptoAuthModule.js +0 -77
- package/codegen/orm/models/database.d.ts +0 -42
- package/codegen/orm/models/database.js +0 -77
- package/codegen/orm/models/databaseExtension.d.ts +0 -42
- package/codegen/orm/models/databaseExtension.js +0 -77
- package/codegen/orm/models/databaseProvision.d.ts +0 -42
- package/codegen/orm/models/databaseProvision.js +0 -77
- package/codegen/orm/models/defaultIdsModule.d.ts +0 -42
- package/codegen/orm/models/defaultIdsModule.js +0 -77
- package/codegen/orm/models/denormalizedTableField.d.ts +0 -42
- package/codegen/orm/models/denormalizedTableField.js +0 -77
- package/codegen/orm/models/emailsModule.d.ts +0 -42
- package/codegen/orm/models/emailsModule.js +0 -77
- package/codegen/orm/models/encryptedSecretsModule.d.ts +0 -42
- package/codegen/orm/models/encryptedSecretsModule.js +0 -77
- package/codegen/orm/models/extension.d.ts +0 -42
- package/codegen/orm/models/extension.js +0 -77
- package/codegen/orm/models/field.d.ts +0 -42
- package/codegen/orm/models/field.js +0 -77
- package/codegen/orm/models/fieldModule.d.ts +0 -42
- package/codegen/orm/models/fieldModule.js +0 -77
- package/codegen/orm/models/foreignKeyConstraint.d.ts +0 -42
- package/codegen/orm/models/foreignKeyConstraint.js +0 -77
- package/codegen/orm/models/fullTextSearch.d.ts +0 -42
- package/codegen/orm/models/fullTextSearch.js +0 -77
- package/codegen/orm/models/hierarchyModule.d.ts +0 -42
- package/codegen/orm/models/hierarchyModule.js +0 -77
- package/codegen/orm/models/indexModel.d.ts +0 -42
- package/codegen/orm/models/indexModel.js +0 -77
- package/codegen/orm/models/invitesModule.d.ts +0 -42
- package/codegen/orm/models/invitesModule.js +0 -77
- package/codegen/orm/models/levelsModule.d.ts +0 -42
- package/codegen/orm/models/levelsModule.js +0 -77
- package/codegen/orm/models/limitFunction.d.ts +0 -42
- package/codegen/orm/models/limitFunction.js +0 -77
- package/codegen/orm/models/limitsModule.d.ts +0 -42
- package/codegen/orm/models/limitsModule.js +0 -77
- package/codegen/orm/models/membershipTypesModule.d.ts +0 -42
- package/codegen/orm/models/membershipTypesModule.js +0 -77
- package/codegen/orm/models/membershipsModule.d.ts +0 -42
- package/codegen/orm/models/membershipsModule.js +0 -77
- package/codegen/orm/models/module.d.ts +0 -42
- package/codegen/orm/models/module.js +0 -77
- package/codegen/orm/models/moduleDefinition.d.ts +0 -42
- package/codegen/orm/models/moduleDefinition.js +0 -77
- package/codegen/orm/models/moduleField.d.ts +0 -42
- package/codegen/orm/models/moduleField.js +0 -77
- package/codegen/orm/models/moduleInputRecord.d.ts +0 -42
- package/codegen/orm/models/moduleInputRecord.js +0 -77
- package/codegen/orm/models/moduleOutput.d.ts +0 -42
- package/codegen/orm/models/moduleOutput.js +0 -77
- package/codegen/orm/models/permissionsModule.d.ts +0 -42
- package/codegen/orm/models/permissionsModule.js +0 -77
- package/codegen/orm/models/phoneNumbersModule.d.ts +0 -42
- package/codegen/orm/models/phoneNumbersModule.js +0 -77
- package/codegen/orm/models/policy.d.ts +0 -42
- package/codegen/orm/models/policy.js +0 -77
- package/codegen/orm/models/primaryKeyConstraint.d.ts +0 -42
- package/codegen/orm/models/primaryKeyConstraint.js +0 -77
- package/codegen/orm/models/procedure.d.ts +0 -42
- package/codegen/orm/models/procedure.js +0 -77
- package/codegen/orm/models/profilesModule.d.ts +0 -42
- package/codegen/orm/models/profilesModule.js +0 -77
- package/codegen/orm/models/rlsFunction.d.ts +0 -42
- package/codegen/orm/models/rlsFunction.js +0 -77
- package/codegen/orm/models/rlsModule.d.ts +0 -42
- package/codegen/orm/models/rlsModule.js +0 -77
- package/codegen/orm/models/schema.d.ts +0 -42
- package/codegen/orm/models/schema.js +0 -77
- package/codegen/orm/models/schemaGrant.d.ts +0 -42
- package/codegen/orm/models/schemaGrant.js +0 -77
- package/codegen/orm/models/secretsModule.d.ts +0 -42
- package/codegen/orm/models/secretsModule.js +0 -77
- package/codegen/orm/models/site.d.ts +0 -42
- package/codegen/orm/models/site.js +0 -77
- package/codegen/orm/models/siteMetadatum.d.ts +0 -42
- package/codegen/orm/models/siteMetadatum.js +0 -77
- package/codegen/orm/models/siteModule.d.ts +0 -42
- package/codegen/orm/models/siteModule.js +0 -77
- package/codegen/orm/models/siteTheme.d.ts +0 -42
- package/codegen/orm/models/siteTheme.js +0 -77
- package/codegen/orm/models/table.d.ts +0 -42
- package/codegen/orm/models/table.js +0 -77
- package/codegen/orm/models/tableGrant.d.ts +0 -42
- package/codegen/orm/models/tableGrant.js +0 -77
- package/codegen/orm/models/tokensModule.d.ts +0 -42
- package/codegen/orm/models/tokensModule.js +0 -77
- package/codegen/orm/models/trigger.d.ts +0 -42
- package/codegen/orm/models/trigger.js +0 -77
- package/codegen/orm/models/triggerFunction.d.ts +0 -42
- package/codegen/orm/models/triggerFunction.js +0 -77
- package/codegen/orm/models/uniqueConstraint.d.ts +0 -42
- package/codegen/orm/models/uniqueConstraint.js +0 -77
- package/codegen/orm/models/userAuthModule.d.ts +0 -42
- package/codegen/orm/models/userAuthModule.js +0 -77
- package/codegen/orm/models/usersModule.d.ts +0 -42
- package/codegen/orm/models/usersModule.js +0 -77
- package/codegen/orm/models/uuidModule.d.ts +0 -42
- package/codegen/orm/models/uuidModule.js +0 -77
- package/esm/codegen/orm/models/apiExtension.js +0 -73
- package/esm/codegen/orm/models/apiModule.js +0 -73
- package/esm/codegen/orm/models/apiSchema.js +0 -73
- package/esm/codegen/orm/models/app.js +0 -73
- package/esm/codegen/orm/models/checkConstraint.js +0 -73
- package/esm/codegen/orm/models/connectedAccountsModule.js +0 -73
- package/esm/codegen/orm/models/cryptoAddressesModule.js +0 -73
- package/esm/codegen/orm/models/cryptoAuthModule.js +0 -73
- package/esm/codegen/orm/models/database.js +0 -73
- package/esm/codegen/orm/models/databaseExtension.js +0 -73
- package/esm/codegen/orm/models/databaseProvision.js +0 -73
- package/esm/codegen/orm/models/defaultIdsModule.js +0 -73
- package/esm/codegen/orm/models/denormalizedTableField.js +0 -73
- package/esm/codegen/orm/models/emailsModule.js +0 -73
- package/esm/codegen/orm/models/encryptedSecretsModule.js +0 -73
- package/esm/codegen/orm/models/extension.js +0 -73
- package/esm/codegen/orm/models/field.js +0 -73
- package/esm/codegen/orm/models/fieldModule.js +0 -73
- package/esm/codegen/orm/models/foreignKeyConstraint.js +0 -73
- package/esm/codegen/orm/models/fullTextSearch.js +0 -73
- package/esm/codegen/orm/models/hierarchyModule.js +0 -73
- package/esm/codegen/orm/models/indexModel.js +0 -73
- package/esm/codegen/orm/models/invitesModule.js +0 -73
- package/esm/codegen/orm/models/levelsModule.js +0 -73
- package/esm/codegen/orm/models/limitFunction.js +0 -73
- package/esm/codegen/orm/models/limitsModule.js +0 -73
- package/esm/codegen/orm/models/membershipTypesModule.js +0 -73
- package/esm/codegen/orm/models/membershipsModule.js +0 -73
- package/esm/codegen/orm/models/module.js +0 -73
- package/esm/codegen/orm/models/moduleDefinition.js +0 -73
- package/esm/codegen/orm/models/moduleField.js +0 -73
- package/esm/codegen/orm/models/moduleInputRecord.js +0 -73
- package/esm/codegen/orm/models/moduleOutput.js +0 -73
- package/esm/codegen/orm/models/permissionsModule.js +0 -73
- package/esm/codegen/orm/models/phoneNumbersModule.js +0 -73
- package/esm/codegen/orm/models/policy.js +0 -73
- package/esm/codegen/orm/models/primaryKeyConstraint.js +0 -73
- package/esm/codegen/orm/models/procedure.js +0 -73
- package/esm/codegen/orm/models/profilesModule.js +0 -73
- package/esm/codegen/orm/models/rlsFunction.js +0 -73
- package/esm/codegen/orm/models/rlsModule.js +0 -73
- package/esm/codegen/orm/models/schema.js +0 -73
- package/esm/codegen/orm/models/schemaGrant.js +0 -73
- package/esm/codegen/orm/models/secretsModule.js +0 -73
- package/esm/codegen/orm/models/site.js +0 -73
- package/esm/codegen/orm/models/siteMetadatum.js +0 -73
- package/esm/codegen/orm/models/siteModule.js +0 -73
- package/esm/codegen/orm/models/siteTheme.js +0 -73
- package/esm/codegen/orm/models/table.js +0 -73
- package/esm/codegen/orm/models/tableGrant.js +0 -73
- package/esm/codegen/orm/models/tokensModule.js +0 -73
- package/esm/codegen/orm/models/trigger.js +0 -73
- package/esm/codegen/orm/models/triggerFunction.js +0 -73
- package/esm/codegen/orm/models/uniqueConstraint.js +0 -73
- package/esm/codegen/orm/models/userAuthModule.js +0 -73
- package/esm/codegen/orm/models/usersModule.js +0 -73
- package/esm/codegen/orm/models/uuidModule.js +0 -73
package/middleware/gql.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
const
|
|
3
|
+
exports.normalizeApiRecord = exports.createGraphileOrm = exports.apiListSelect = exports.domainSelect = exports.apiSelect = exports.connectionFirst = void 0;
|
|
4
|
+
const client_1 = require("../codegen/orm/client");
|
|
5
|
+
const models_1 = require("../codegen/orm/models");
|
|
6
|
+
const query_1 = require("../codegen/orm/query");
|
|
7
|
+
exports.connectionFirst = 1000;
|
|
8
|
+
exports.apiSelect = {
|
|
6
9
|
databaseId: true,
|
|
7
10
|
dbname: true,
|
|
8
11
|
roleName: true,
|
|
@@ -13,15 +16,15 @@ const apiSelect = {
|
|
|
13
16
|
subdomain: true,
|
|
14
17
|
domain: true,
|
|
15
18
|
},
|
|
16
|
-
|
|
19
|
+
first: exports.connectionFirst,
|
|
17
20
|
},
|
|
18
21
|
apiExtensions: {
|
|
19
22
|
select: { schemaName: true },
|
|
20
|
-
|
|
23
|
+
first: exports.connectionFirst,
|
|
21
24
|
},
|
|
22
25
|
schemasByApiSchemaApiIdAndSchemaId: {
|
|
23
26
|
select: { schemaName: true },
|
|
24
|
-
|
|
27
|
+
first: exports.connectionFirst,
|
|
25
28
|
},
|
|
26
29
|
rlsModule: {
|
|
27
30
|
select: {
|
|
@@ -32,30 +35,17 @@ const apiSelect = {
|
|
|
32
35
|
currentRoleId: true,
|
|
33
36
|
},
|
|
34
37
|
},
|
|
35
|
-
database: {
|
|
36
|
-
select: {
|
|
37
|
-
sites: {
|
|
38
|
-
select: {
|
|
39
|
-
domains: {
|
|
40
|
-
select: { subdomain: true, domain: true },
|
|
41
|
-
connection: true,
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
connection: true,
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
},
|
|
48
38
|
apiModules: {
|
|
49
39
|
select: { name: true, data: true },
|
|
50
|
-
|
|
40
|
+
first: exports.connectionFirst,
|
|
51
41
|
},
|
|
52
42
|
};
|
|
53
|
-
|
|
43
|
+
exports.domainSelect = {
|
|
54
44
|
domain: true,
|
|
55
45
|
subdomain: true,
|
|
56
|
-
api: { select: apiSelect },
|
|
46
|
+
api: { select: exports.apiSelect },
|
|
57
47
|
};
|
|
58
|
-
|
|
48
|
+
exports.apiListSelect = {
|
|
59
49
|
id: true,
|
|
60
50
|
databaseId: true,
|
|
61
51
|
name: true,
|
|
@@ -65,62 +55,72 @@ const apisSelect = {
|
|
|
65
55
|
isPublic: true,
|
|
66
56
|
domains: {
|
|
67
57
|
select: { domain: true, subdomain: true },
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
database: {
|
|
71
|
-
select: {
|
|
72
|
-
sites: {
|
|
73
|
-
select: {
|
|
74
|
-
domains: {
|
|
75
|
-
select: { domain: true, subdomain: true },
|
|
76
|
-
connection: true,
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
connection: true,
|
|
80
|
-
},
|
|
81
|
-
},
|
|
58
|
+
first: exports.connectionFirst,
|
|
82
59
|
},
|
|
83
60
|
};
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
const buildDomainLookup = (vars) => {
|
|
90
|
-
const where = {
|
|
91
|
-
domain: { equalTo: vars.domain },
|
|
92
|
-
};
|
|
93
|
-
if (vars.subdomain === null || vars.subdomain === undefined) {
|
|
94
|
-
where.subdomain = { isNull: true };
|
|
61
|
+
class GraphileOrmClient extends client_1.OrmClient {
|
|
62
|
+
graphile;
|
|
63
|
+
constructor(graphile) {
|
|
64
|
+
super({ endpoint: 'http://localhost/graphql' });
|
|
65
|
+
this.graphile = graphile;
|
|
95
66
|
}
|
|
96
|
-
|
|
97
|
-
|
|
67
|
+
async execute(document, variables) {
|
|
68
|
+
const result = await this.graphile.query({
|
|
69
|
+
role: 'administrator',
|
|
70
|
+
query: document,
|
|
71
|
+
variables,
|
|
72
|
+
});
|
|
73
|
+
if (result.errors?.length) {
|
|
74
|
+
return {
|
|
75
|
+
ok: false,
|
|
76
|
+
data: null,
|
|
77
|
+
errors: result.errors,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
return {
|
|
81
|
+
ok: true,
|
|
82
|
+
data: result.data,
|
|
83
|
+
errors: undefined,
|
|
84
|
+
};
|
|
98
85
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
// Import buildCustomDocument locally to avoid circular dependency
|
|
108
|
-
const { buildCustomDocument } = require('../codegen/orm/query-builder');
|
|
109
|
-
return buildCustomDocument('query', 'ApiByDatabaseIdAndName', 'apiByDatabaseIdAndName', apiSelect, vars, [
|
|
110
|
-
{ name: 'databaseId', type: 'UUID!' },
|
|
111
|
-
{ name: 'name', type: 'String!' },
|
|
112
|
-
]);
|
|
86
|
+
}
|
|
87
|
+
const createGraphileOrm = (graphile) => {
|
|
88
|
+
const client = new GraphileOrmClient(graphile);
|
|
89
|
+
return {
|
|
90
|
+
api: new models_1.ApiModel(client),
|
|
91
|
+
domain: new models_1.DomainModel(client),
|
|
92
|
+
query: (0, query_1.createQueryOperations)(client),
|
|
93
|
+
};
|
|
113
94
|
};
|
|
114
|
-
exports.
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
95
|
+
exports.createGraphileOrm = createGraphileOrm;
|
|
96
|
+
const normalizeApiRecord = (api) => {
|
|
97
|
+
const schemaNames = (api.apiExtensions?.nodes ?? []).flatMap((node) => node.schemaName ? [node.schemaName] : []);
|
|
98
|
+
const additionalSchemas = (api.schemasByApiSchemaApiIdAndSchemaId?.nodes ?? []).flatMap((node) => (node.schemaName ? [node.schemaName] : []));
|
|
99
|
+
let domains = [];
|
|
100
|
+
if (api.domains?.nodes?.length) {
|
|
101
|
+
domains = api.domains.nodes.reduce((acc, domain) => {
|
|
102
|
+
if (!domain.domain)
|
|
103
|
+
return acc;
|
|
104
|
+
const hostname = domain.subdomain
|
|
105
|
+
? `${domain.subdomain}.${domain.domain}`
|
|
106
|
+
: domain.domain;
|
|
107
|
+
const protocol = domain.domain === 'localhost' ? 'http://' : 'https://';
|
|
108
|
+
return [...acc, protocol + hostname];
|
|
109
|
+
}, []);
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
dbname: api.dbname,
|
|
113
|
+
anonRole: api.anonRole,
|
|
114
|
+
roleName: api.roleName,
|
|
115
|
+
schema: [...schemaNames, ...additionalSchemas],
|
|
116
|
+
apiModules: api.apiModules?.nodes?.map((node) => ({
|
|
117
|
+
name: node.name,
|
|
118
|
+
data: node.data,
|
|
119
|
+
})) || [],
|
|
120
|
+
rlsModule: api.rlsModule,
|
|
121
|
+
domains,
|
|
122
|
+
databaseId: api.databaseId,
|
|
123
|
+
isPublic: api.isPublic,
|
|
124
|
+
};
|
|
125
125
|
};
|
|
126
|
-
exports.
|
|
126
|
+
exports.normalizeApiRecord = normalizeApiRecord;
|
package/middleware/types.d.ts
CHANGED
|
@@ -1,29 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ApiStructure } from '../types';
|
|
2
2
|
export type ConstructiveAPIToken = {
|
|
3
3
|
id: string;
|
|
4
4
|
user_id: string;
|
|
5
|
-
[key: string]:
|
|
5
|
+
[key: string]: unknown;
|
|
6
6
|
};
|
|
7
7
|
declare global {
|
|
8
8
|
namespace Express {
|
|
9
9
|
interface Request {
|
|
10
|
-
api?:
|
|
11
|
-
dbname: string;
|
|
12
|
-
anonRole: string;
|
|
13
|
-
roleName: string;
|
|
14
|
-
schema: string[];
|
|
15
|
-
apiModules: ApiModule[];
|
|
16
|
-
rlsModule?: {
|
|
17
|
-
authenticate?: string;
|
|
18
|
-
authenticateStrict?: string;
|
|
19
|
-
privateSchema: {
|
|
20
|
-
schemaName: string;
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
domains?: string[];
|
|
24
|
-
databaseId?: string;
|
|
25
|
-
isPublic?: boolean;
|
|
26
|
-
};
|
|
10
|
+
api?: ApiStructure;
|
|
27
11
|
svc_key?: string;
|
|
28
12
|
clientIp?: string;
|
|
29
13
|
databaseId?: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@constructive-io/graphql-server",
|
|
3
|
-
"version": "2.19.
|
|
3
|
+
"version": "2.19.4",
|
|
4
4
|
"author": "Constructive <developers@constructive.io>",
|
|
5
5
|
"description": "Constructive GraphQL Server",
|
|
6
6
|
"main": "index.js",
|
|
@@ -31,7 +31,8 @@
|
|
|
31
31
|
"test:watch": "jest --watch",
|
|
32
32
|
"bucket:create": "ts-node src/scripts/create-bucket.ts",
|
|
33
33
|
"codegen:schema": "ts-node src/scripts/codegen-schema.ts",
|
|
34
|
-
"codegen": "
|
|
34
|
+
"codegen:clean": "rimraf src/codegen/orm codegen/schema.graphql",
|
|
35
|
+
"codegen": "npm run codegen:clean && npm run codegen:schema && graphql-codegen generate-orm --schema codegen/schema.graphql --output src/codegen/orm"
|
|
35
36
|
},
|
|
36
37
|
"keywords": [
|
|
37
38
|
"server",
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
"backend"
|
|
42
43
|
],
|
|
43
44
|
"dependencies": {
|
|
44
|
-
"@constructive-io/graphql-env": "^2.9.
|
|
45
|
+
"@constructive-io/graphql-env": "^2.9.1",
|
|
45
46
|
"@constructive-io/graphql-types": "^2.13.0",
|
|
46
47
|
"@constructive-io/s3-utils": "^2.5.1",
|
|
47
48
|
"@constructive-io/upload-names": "^2.4.0",
|
|
@@ -52,17 +53,18 @@
|
|
|
52
53
|
"@pgpmjs/types": "^2.15.0",
|
|
53
54
|
"cors": "^2.8.5",
|
|
54
55
|
"express": "^5.2.1",
|
|
56
|
+
"gql-ast": "^2.6.0",
|
|
55
57
|
"graphile-build": "^4.14.1",
|
|
56
58
|
"graphile-cache": "^1.8.0",
|
|
57
|
-
"graphile-i18n": "^0.6.
|
|
58
|
-
"graphile-meta-schema": "^0.7.
|
|
59
|
-
"graphile-plugin-connection-filter": "^2.8.
|
|
60
|
-
"graphile-plugin-connection-filter-postgis": "^1.5.
|
|
61
|
-
"graphile-plugin-fulltext-filter": "^2.5.
|
|
59
|
+
"graphile-i18n": "^0.6.1",
|
|
60
|
+
"graphile-meta-schema": "^0.7.1",
|
|
61
|
+
"graphile-plugin-connection-filter": "^2.8.1",
|
|
62
|
+
"graphile-plugin-connection-filter-postgis": "^1.5.1",
|
|
63
|
+
"graphile-plugin-fulltext-filter": "^2.5.1",
|
|
62
64
|
"graphile-query": "^2.5.1",
|
|
63
|
-
"graphile-search-plugin": "^0.6.
|
|
64
|
-
"graphile-settings": "^2.14.
|
|
65
|
-
"graphile-simple-inflector": "^0.6.
|
|
65
|
+
"graphile-search-plugin": "^0.6.1",
|
|
66
|
+
"graphile-settings": "^2.14.1",
|
|
67
|
+
"graphile-simple-inflector": "^0.6.1",
|
|
66
68
|
"graphile-utils": "^4.14.1",
|
|
67
69
|
"graphql": "15.10.1",
|
|
68
70
|
"graphql-tag": "2.12.6",
|
|
@@ -76,16 +78,17 @@
|
|
|
76
78
|
},
|
|
77
79
|
"devDependencies": {
|
|
78
80
|
"@aws-sdk/client-s3": "^3.971.0",
|
|
79
|
-
"@constructive-io/graphql-codegen": "2.28.
|
|
81
|
+
"@constructive-io/graphql-codegen": "2.28.3",
|
|
80
82
|
"@types/cors": "^2.8.17",
|
|
81
83
|
"@types/express": "^5.0.6",
|
|
82
84
|
"@types/graphql-upload": "^8.0.12",
|
|
83
85
|
"@types/pg": "^8.16.0",
|
|
84
86
|
"@types/request-ip": "^0.0.41",
|
|
85
|
-
"graphile-test": "2.15.
|
|
87
|
+
"graphile-test": "2.15.1",
|
|
86
88
|
"makage": "^0.1.10",
|
|
87
89
|
"nodemon": "^3.1.10",
|
|
90
|
+
"rimraf": "^6.1.2",
|
|
88
91
|
"ts-node": "^10.9.2"
|
|
89
92
|
},
|
|
90
|
-
"gitHead": "
|
|
93
|
+
"gitHead": "7e8bb857e6e981195f2784933ce342edbf0bc321"
|
|
91
94
|
}
|
package/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PgpmOptions } from '@pgpmjs/types';
|
|
1
2
|
export interface CorsModuleData {
|
|
2
3
|
urls: string[];
|
|
3
4
|
}
|
|
@@ -10,7 +11,7 @@ export interface PublicKeyChallengeData {
|
|
|
10
11
|
sign_in_with_challenge: string;
|
|
11
12
|
}
|
|
12
13
|
export interface GenericModuleData {
|
|
13
|
-
[key: string]:
|
|
14
|
+
[key: string]: unknown;
|
|
14
15
|
}
|
|
15
16
|
export type ApiModule = {
|
|
16
17
|
name: 'cors';
|
|
@@ -29,49 +30,6 @@ export interface RlsModule {
|
|
|
29
30
|
schemaName: string;
|
|
30
31
|
};
|
|
31
32
|
}
|
|
32
|
-
export interface SchemaNode {
|
|
33
|
-
schemaName: string;
|
|
34
|
-
}
|
|
35
|
-
export interface SchemaNodes {
|
|
36
|
-
nodes: SchemaNode[];
|
|
37
|
-
}
|
|
38
|
-
export interface Domain {
|
|
39
|
-
subdomain?: string;
|
|
40
|
-
domain: string;
|
|
41
|
-
}
|
|
42
|
-
export interface DomainNodes {
|
|
43
|
-
nodes: Domain[];
|
|
44
|
-
}
|
|
45
|
-
export interface Site {
|
|
46
|
-
domains: DomainNodes;
|
|
47
|
-
}
|
|
48
|
-
export interface SiteNodes {
|
|
49
|
-
nodes: Site[];
|
|
50
|
-
}
|
|
51
|
-
export interface ApiModuleNodes {
|
|
52
|
-
nodes: ApiModule[];
|
|
53
|
-
}
|
|
54
|
-
export interface Database {
|
|
55
|
-
sites: SiteNodes;
|
|
56
|
-
}
|
|
57
|
-
export interface OldApiStructure {
|
|
58
|
-
dbname: string;
|
|
59
|
-
anonRole: string;
|
|
60
|
-
roleName: string;
|
|
61
|
-
schemasByApiSchemaApiIdAndSchemaId: SchemaNodes;
|
|
62
|
-
apiExtensions: SchemaNodes;
|
|
63
|
-
apiModules: ApiModuleNodes;
|
|
64
|
-
rlsModule?: RlsModule;
|
|
65
|
-
database?: Database;
|
|
66
|
-
databaseId?: string;
|
|
67
|
-
isPublic?: boolean;
|
|
68
|
-
}
|
|
69
|
-
export interface ServiceData {
|
|
70
|
-
api: OldApiStructure;
|
|
71
|
-
}
|
|
72
|
-
export interface Service {
|
|
73
|
-
data: ServiceData;
|
|
74
|
-
}
|
|
75
33
|
export interface ApiStructure {
|
|
76
34
|
dbname: string;
|
|
77
35
|
anonRole: string;
|
|
@@ -83,3 +41,18 @@ export interface ApiStructure {
|
|
|
83
41
|
databaseId?: string;
|
|
84
42
|
isPublic?: boolean;
|
|
85
43
|
}
|
|
44
|
+
export type ApiError = {
|
|
45
|
+
errorHtml: string;
|
|
46
|
+
};
|
|
47
|
+
export type ApiConfigResult = ApiStructure | ApiError | null;
|
|
48
|
+
export type ApiOptions = PgpmOptions & {
|
|
49
|
+
api?: {
|
|
50
|
+
enableServicesApi?: boolean;
|
|
51
|
+
exposedSchemas?: string[];
|
|
52
|
+
anonRole?: string;
|
|
53
|
+
roleName?: string;
|
|
54
|
+
defaultDatabaseId?: string;
|
|
55
|
+
metaSchemas?: string[];
|
|
56
|
+
isPublic?: boolean;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ApiExtension model for ORM client
|
|
3
|
-
* @generated by @constructive-io/graphql-codegen
|
|
4
|
-
* DO NOT EDIT - changes will be overwritten
|
|
5
|
-
*/
|
|
6
|
-
import { OrmClient } from '../client';
|
|
7
|
-
import { QueryBuilder } from '../query-builder';
|
|
8
|
-
import { type ConnectionResult, type FindManyArgs, type FindFirstArgs, type CreateArgs, type UpdateArgs, type DeleteArgs, type InferSelectResult } from '../select-types';
|
|
9
|
-
import { type ApiExtensionWithRelations, type ApiExtensionSelect, type ApiExtensionFilter, type ApiExtensionsOrderBy, type CreateApiExtensionInput, type ApiExtensionPatch } from '../input-types';
|
|
10
|
-
export declare class ApiExtensionModel {
|
|
11
|
-
private client;
|
|
12
|
-
constructor(client: OrmClient);
|
|
13
|
-
findMany<const S extends ApiExtensionSelect>(args?: FindManyArgs<S, ApiExtensionFilter, ApiExtensionsOrderBy>): QueryBuilder<{
|
|
14
|
-
apiExtensions: ConnectionResult<InferSelectResult<ApiExtensionWithRelations, S>>;
|
|
15
|
-
}>;
|
|
16
|
-
findFirst<const S extends ApiExtensionSelect>(args?: FindFirstArgs<S, ApiExtensionFilter>): QueryBuilder<{
|
|
17
|
-
apiExtensions: {
|
|
18
|
-
nodes: InferSelectResult<ApiExtensionWithRelations, S>[];
|
|
19
|
-
};
|
|
20
|
-
}>;
|
|
21
|
-
create<const S extends ApiExtensionSelect>(args: CreateArgs<S, CreateApiExtensionInput['apiExtension']>): QueryBuilder<{
|
|
22
|
-
createApiExtension: {
|
|
23
|
-
apiExtension: InferSelectResult<ApiExtensionWithRelations, S>;
|
|
24
|
-
};
|
|
25
|
-
}>;
|
|
26
|
-
update<const S extends ApiExtensionSelect>(args: UpdateArgs<S, {
|
|
27
|
-
id: string;
|
|
28
|
-
}, ApiExtensionPatch>): QueryBuilder<{
|
|
29
|
-
updateApiExtension: {
|
|
30
|
-
apiExtension: InferSelectResult<ApiExtensionWithRelations, S>;
|
|
31
|
-
};
|
|
32
|
-
}>;
|
|
33
|
-
delete(args: DeleteArgs<{
|
|
34
|
-
id: string;
|
|
35
|
-
}>): QueryBuilder<{
|
|
36
|
-
deleteApiExtension: {
|
|
37
|
-
apiExtension: {
|
|
38
|
-
id: string;
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
}>;
|
|
42
|
-
}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApiExtensionModel = void 0;
|
|
4
|
-
const query_builder_1 = require("../query-builder");
|
|
5
|
-
// ============================================================================
|
|
6
|
-
// Model Class
|
|
7
|
-
// ============================================================================
|
|
8
|
-
class ApiExtensionModel {
|
|
9
|
-
client;
|
|
10
|
-
constructor(client) {
|
|
11
|
-
this.client = client;
|
|
12
|
-
}
|
|
13
|
-
findMany(args) {
|
|
14
|
-
const { document, variables } = (0, query_builder_1.buildFindManyDocument)('ApiExtension', 'apiExtensions', args?.select, {
|
|
15
|
-
where: args?.where,
|
|
16
|
-
orderBy: args?.orderBy,
|
|
17
|
-
first: args?.first,
|
|
18
|
-
last: args?.last,
|
|
19
|
-
after: args?.after,
|
|
20
|
-
before: args?.before,
|
|
21
|
-
offset: args?.offset,
|
|
22
|
-
}, 'ApiExtensionFilter', 'ApiExtensionsOrderBy');
|
|
23
|
-
return new query_builder_1.QueryBuilder({
|
|
24
|
-
client: this.client,
|
|
25
|
-
operation: 'query',
|
|
26
|
-
operationName: 'ApiExtension',
|
|
27
|
-
fieldName: 'apiExtensions',
|
|
28
|
-
document,
|
|
29
|
-
variables,
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
findFirst(args) {
|
|
33
|
-
const { document, variables } = (0, query_builder_1.buildFindFirstDocument)('ApiExtension', 'apiExtensions', args?.select, { where: args?.where }, 'ApiExtensionFilter');
|
|
34
|
-
return new query_builder_1.QueryBuilder({
|
|
35
|
-
client: this.client,
|
|
36
|
-
operation: 'query',
|
|
37
|
-
operationName: 'ApiExtension',
|
|
38
|
-
fieldName: 'apiExtensions',
|
|
39
|
-
document,
|
|
40
|
-
variables,
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
create(args) {
|
|
44
|
-
const { document, variables } = (0, query_builder_1.buildCreateDocument)('ApiExtension', 'createApiExtension', 'apiExtension', args.select, args.data, 'CreateApiExtensionInput');
|
|
45
|
-
return new query_builder_1.QueryBuilder({
|
|
46
|
-
client: this.client,
|
|
47
|
-
operation: 'mutation',
|
|
48
|
-
operationName: 'ApiExtension',
|
|
49
|
-
fieldName: 'createApiExtension',
|
|
50
|
-
document,
|
|
51
|
-
variables,
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
update(args) {
|
|
55
|
-
const { document, variables } = (0, query_builder_1.buildUpdateDocument)('ApiExtension', 'updateApiExtension', 'apiExtension', args.select, args.where, args.data, 'UpdateApiExtensionInput');
|
|
56
|
-
return new query_builder_1.QueryBuilder({
|
|
57
|
-
client: this.client,
|
|
58
|
-
operation: 'mutation',
|
|
59
|
-
operationName: 'ApiExtension',
|
|
60
|
-
fieldName: 'updateApiExtension',
|
|
61
|
-
document,
|
|
62
|
-
variables,
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
delete(args) {
|
|
66
|
-
const { document, variables } = (0, query_builder_1.buildDeleteDocument)('ApiExtension', 'deleteApiExtension', 'apiExtension', args.where, 'DeleteApiExtensionInput');
|
|
67
|
-
return new query_builder_1.QueryBuilder({
|
|
68
|
-
client: this.client,
|
|
69
|
-
operation: 'mutation',
|
|
70
|
-
operationName: 'ApiExtension',
|
|
71
|
-
fieldName: 'deleteApiExtension',
|
|
72
|
-
document,
|
|
73
|
-
variables,
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
exports.ApiExtensionModel = ApiExtensionModel;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ApiModule model for ORM client
|
|
3
|
-
* @generated by @constructive-io/graphql-codegen
|
|
4
|
-
* DO NOT EDIT - changes will be overwritten
|
|
5
|
-
*/
|
|
6
|
-
import { OrmClient } from '../client';
|
|
7
|
-
import { QueryBuilder } from '../query-builder';
|
|
8
|
-
import { type ConnectionResult, type FindManyArgs, type FindFirstArgs, type CreateArgs, type UpdateArgs, type DeleteArgs, type InferSelectResult } from '../select-types';
|
|
9
|
-
import { type ApiModuleWithRelations, type ApiModuleSelect, type ApiModuleFilter, type ApiModulesOrderBy, type CreateApiModuleInput, type ApiModulePatch } from '../input-types';
|
|
10
|
-
export declare class ApiModuleModel {
|
|
11
|
-
private client;
|
|
12
|
-
constructor(client: OrmClient);
|
|
13
|
-
findMany<const S extends ApiModuleSelect>(args?: FindManyArgs<S, ApiModuleFilter, ApiModulesOrderBy>): QueryBuilder<{
|
|
14
|
-
apiModules: ConnectionResult<InferSelectResult<ApiModuleWithRelations, S>>;
|
|
15
|
-
}>;
|
|
16
|
-
findFirst<const S extends ApiModuleSelect>(args?: FindFirstArgs<S, ApiModuleFilter>): QueryBuilder<{
|
|
17
|
-
apiModules: {
|
|
18
|
-
nodes: InferSelectResult<ApiModuleWithRelations, S>[];
|
|
19
|
-
};
|
|
20
|
-
}>;
|
|
21
|
-
create<const S extends ApiModuleSelect>(args: CreateArgs<S, CreateApiModuleInput['apiModule']>): QueryBuilder<{
|
|
22
|
-
createApiModule: {
|
|
23
|
-
apiModule: InferSelectResult<ApiModuleWithRelations, S>;
|
|
24
|
-
};
|
|
25
|
-
}>;
|
|
26
|
-
update<const S extends ApiModuleSelect>(args: UpdateArgs<S, {
|
|
27
|
-
id: string;
|
|
28
|
-
}, ApiModulePatch>): QueryBuilder<{
|
|
29
|
-
updateApiModule: {
|
|
30
|
-
apiModule: InferSelectResult<ApiModuleWithRelations, S>;
|
|
31
|
-
};
|
|
32
|
-
}>;
|
|
33
|
-
delete(args: DeleteArgs<{
|
|
34
|
-
id: string;
|
|
35
|
-
}>): QueryBuilder<{
|
|
36
|
-
deleteApiModule: {
|
|
37
|
-
apiModule: {
|
|
38
|
-
id: string;
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
}>;
|
|
42
|
-
}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApiModuleModel = void 0;
|
|
4
|
-
const query_builder_1 = require("../query-builder");
|
|
5
|
-
// ============================================================================
|
|
6
|
-
// Model Class
|
|
7
|
-
// ============================================================================
|
|
8
|
-
class ApiModuleModel {
|
|
9
|
-
client;
|
|
10
|
-
constructor(client) {
|
|
11
|
-
this.client = client;
|
|
12
|
-
}
|
|
13
|
-
findMany(args) {
|
|
14
|
-
const { document, variables } = (0, query_builder_1.buildFindManyDocument)('ApiModule', 'apiModules', args?.select, {
|
|
15
|
-
where: args?.where,
|
|
16
|
-
orderBy: args?.orderBy,
|
|
17
|
-
first: args?.first,
|
|
18
|
-
last: args?.last,
|
|
19
|
-
after: args?.after,
|
|
20
|
-
before: args?.before,
|
|
21
|
-
offset: args?.offset,
|
|
22
|
-
}, 'ApiModuleFilter', 'ApiModulesOrderBy');
|
|
23
|
-
return new query_builder_1.QueryBuilder({
|
|
24
|
-
client: this.client,
|
|
25
|
-
operation: 'query',
|
|
26
|
-
operationName: 'ApiModule',
|
|
27
|
-
fieldName: 'apiModules',
|
|
28
|
-
document,
|
|
29
|
-
variables,
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
findFirst(args) {
|
|
33
|
-
const { document, variables } = (0, query_builder_1.buildFindFirstDocument)('ApiModule', 'apiModules', args?.select, { where: args?.where }, 'ApiModuleFilter');
|
|
34
|
-
return new query_builder_1.QueryBuilder({
|
|
35
|
-
client: this.client,
|
|
36
|
-
operation: 'query',
|
|
37
|
-
operationName: 'ApiModule',
|
|
38
|
-
fieldName: 'apiModules',
|
|
39
|
-
document,
|
|
40
|
-
variables,
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
create(args) {
|
|
44
|
-
const { document, variables } = (0, query_builder_1.buildCreateDocument)('ApiModule', 'createApiModule', 'apiModule', args.select, args.data, 'CreateApiModuleInput');
|
|
45
|
-
return new query_builder_1.QueryBuilder({
|
|
46
|
-
client: this.client,
|
|
47
|
-
operation: 'mutation',
|
|
48
|
-
operationName: 'ApiModule',
|
|
49
|
-
fieldName: 'createApiModule',
|
|
50
|
-
document,
|
|
51
|
-
variables,
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
update(args) {
|
|
55
|
-
const { document, variables } = (0, query_builder_1.buildUpdateDocument)('ApiModule', 'updateApiModule', 'apiModule', args.select, args.where, args.data, 'UpdateApiModuleInput');
|
|
56
|
-
return new query_builder_1.QueryBuilder({
|
|
57
|
-
client: this.client,
|
|
58
|
-
operation: 'mutation',
|
|
59
|
-
operationName: 'ApiModule',
|
|
60
|
-
fieldName: 'updateApiModule',
|
|
61
|
-
document,
|
|
62
|
-
variables,
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
delete(args) {
|
|
66
|
-
const { document, variables } = (0, query_builder_1.buildDeleteDocument)('ApiModule', 'deleteApiModule', 'apiModule', args.where, 'DeleteApiModuleInput');
|
|
67
|
-
return new query_builder_1.QueryBuilder({
|
|
68
|
-
client: this.client,
|
|
69
|
-
operation: 'mutation',
|
|
70
|
-
operationName: 'ApiModule',
|
|
71
|
-
fieldName: 'deleteApiModule',
|
|
72
|
-
document,
|
|
73
|
-
variables,
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
exports.ApiModuleModel = ApiModuleModel;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ApiSchema model for ORM client
|
|
3
|
-
* @generated by @constructive-io/graphql-codegen
|
|
4
|
-
* DO NOT EDIT - changes will be overwritten
|
|
5
|
-
*/
|
|
6
|
-
import { OrmClient } from '../client';
|
|
7
|
-
import { QueryBuilder } from '../query-builder';
|
|
8
|
-
import { type ConnectionResult, type FindManyArgs, type FindFirstArgs, type CreateArgs, type UpdateArgs, type DeleteArgs, type InferSelectResult } from '../select-types';
|
|
9
|
-
import { type ApiSchemaWithRelations, type ApiSchemaSelect, type ApiSchemaFilter, type ApiSchemasOrderBy, type CreateApiSchemaInput, type ApiSchemaPatch } from '../input-types';
|
|
10
|
-
export declare class ApiSchemaModel {
|
|
11
|
-
private client;
|
|
12
|
-
constructor(client: OrmClient);
|
|
13
|
-
findMany<const S extends ApiSchemaSelect>(args?: FindManyArgs<S, ApiSchemaFilter, ApiSchemasOrderBy>): QueryBuilder<{
|
|
14
|
-
apiSchemas: ConnectionResult<InferSelectResult<ApiSchemaWithRelations, S>>;
|
|
15
|
-
}>;
|
|
16
|
-
findFirst<const S extends ApiSchemaSelect>(args?: FindFirstArgs<S, ApiSchemaFilter>): QueryBuilder<{
|
|
17
|
-
apiSchemas: {
|
|
18
|
-
nodes: InferSelectResult<ApiSchemaWithRelations, S>[];
|
|
19
|
-
};
|
|
20
|
-
}>;
|
|
21
|
-
create<const S extends ApiSchemaSelect>(args: CreateArgs<S, CreateApiSchemaInput['apiSchema']>): QueryBuilder<{
|
|
22
|
-
createApiSchema: {
|
|
23
|
-
apiSchema: InferSelectResult<ApiSchemaWithRelations, S>;
|
|
24
|
-
};
|
|
25
|
-
}>;
|
|
26
|
-
update<const S extends ApiSchemaSelect>(args: UpdateArgs<S, {
|
|
27
|
-
id: string;
|
|
28
|
-
}, ApiSchemaPatch>): QueryBuilder<{
|
|
29
|
-
updateApiSchema: {
|
|
30
|
-
apiSchema: InferSelectResult<ApiSchemaWithRelations, S>;
|
|
31
|
-
};
|
|
32
|
-
}>;
|
|
33
|
-
delete(args: DeleteArgs<{
|
|
34
|
-
id: string;
|
|
35
|
-
}>): QueryBuilder<{
|
|
36
|
-
deleteApiSchema: {
|
|
37
|
-
apiSchema: {
|
|
38
|
-
id: string;
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
}>;
|
|
42
|
-
}
|