@meshmakers/octo-services 2.0.2304-13005 → 2.0.2304-23001
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 +24 -28
- package/esm2020/lib/models/pagedGraphResultDto.mjs +8 -4
- package/esm2020/lib/octo-services.module.mjs +28 -28
- package/esm2020/lib/options/octo-service-options.mjs +7 -3
- package/esm2020/lib/services/octo-graph-ql-service-base.mjs +95 -95
- package/esm2020/lib/shared/graphQL.mjs +13 -13
- package/esm2020/meshmakers-octo-services.mjs +4 -4
- package/esm2020/public-api.mjs +9 -9
- package/fesm2015/meshmakers-octo-services.mjs +137 -129
- package/fesm2015/meshmakers-octo-services.mjs.map +1 -1
- package/fesm2020/meshmakers-octo-services.mjs +137 -129
- package/fesm2020/meshmakers-octo-services.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/models/pagedGraphResultDto.d.ts +5 -4
- package/lib/octo-services.module.d.ts +9 -9
- package/lib/options/octo-service-options.d.ts +5 -4
- package/lib/services/octo-graph-ql-service-base.d.ts +21 -20
- package/lib/shared/graphQL.d.ts +5 -5
- package/package.json +8 -8
- package/public-api.d.ts +5 -5
|
@@ -4,147 +4,155 @@ import { InMemoryCache } from '@apollo/client/core';
|
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
5
|
import { NgModule } from '@angular/core';
|
|
6
6
|
|
|
7
|
-
class PagedGraphResultDto extends PagedResultDto {
|
|
7
|
+
class PagedGraphResultDto extends PagedResultDto {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.document = null;
|
|
11
|
+
}
|
|
8
12
|
}
|
|
9
13
|
|
|
10
|
-
class OctoGraphQLServiceBase {
|
|
11
|
-
constructor(apollo, httpLink, octoServiceOptions) {
|
|
12
|
-
this.apollo = apollo;
|
|
13
|
-
this.httpLink = httpLink;
|
|
14
|
-
this.octoServiceOptions = octoServiceOptions;
|
|
15
|
-
}
|
|
16
|
-
getEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
17
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
18
|
-
return query.pipe(map(result => {
|
|
19
|
-
const resultSet = new PagedResultDto();
|
|
20
|
-
if (result.errors) {
|
|
21
|
-
console.error(result.errors);
|
|
22
|
-
throw Error("Error in GraphQL statement.");
|
|
23
|
-
}
|
|
24
|
-
else if (result.data) {
|
|
25
|
-
f(resultSet, result.data);
|
|
26
|
-
}
|
|
27
|
-
return resultSet;
|
|
28
|
-
}));
|
|
29
|
-
}
|
|
30
|
-
getGraphEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
31
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
32
|
-
return query.pipe(map(result => {
|
|
33
|
-
const resultSet = new PagedGraphResultDto();
|
|
34
|
-
if (result.errors) {
|
|
35
|
-
console.error(result.errors);
|
|
36
|
-
throw Error("Error in GraphQL statement.");
|
|
37
|
-
}
|
|
38
|
-
else if (result.data) {
|
|
39
|
-
f(resultSet, result.data);
|
|
40
|
-
}
|
|
41
|
-
return resultSet;
|
|
42
|
-
}));
|
|
43
|
-
}
|
|
44
|
-
getEntityDetail(tenantId, variables, queryNode, watchQuery, f) {
|
|
45
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
46
|
-
return query.pipe(map(result => {
|
|
47
|
-
if (result.errors) {
|
|
48
|
-
console.error(result.errors);
|
|
49
|
-
throw Error("Error in GraphQL statement.");
|
|
50
|
-
}
|
|
51
|
-
else if (result.data) {
|
|
52
|
-
return f(result.data);
|
|
53
|
-
}
|
|
54
|
-
return null;
|
|
55
|
-
}));
|
|
56
|
-
}
|
|
57
|
-
createUpdateEntity(tenantId, variables, queryNode, f) {
|
|
58
|
-
this.createApolloForTenant(tenantId);
|
|
59
|
-
return this.apollo.use(tenantId).mutate({
|
|
60
|
-
mutation: queryNode,
|
|
61
|
-
variables: variables
|
|
62
|
-
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
63
|
-
}
|
|
64
|
-
deleteEntity(tenantId, variables, queryNode, f) {
|
|
65
|
-
this.createApolloForTenant(tenantId);
|
|
66
|
-
return this.apollo.use(tenantId).mutate({
|
|
67
|
-
mutation: queryNode,
|
|
68
|
-
variables: variables
|
|
69
|
-
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).
|
|
70
|
-
}
|
|
71
|
-
createApolloForTenant(tenantId) {
|
|
72
|
-
const result = this.apollo.use(tenantId);
|
|
73
|
-
if (result) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;
|
|
77
|
-
this.apollo.createNamed(tenantId, {
|
|
78
|
-
link: this.httpLink.create({ uri }),
|
|
79
|
-
cache: new InMemoryCache({
|
|
80
|
-
dataIdFromObject: o => o
|
|
81
|
-
}),
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
prepareWatchQuery(tenantId, variables, queryNode) {
|
|
85
|
-
this.createApolloForTenant(tenantId);
|
|
86
|
-
return this.apollo.use(tenantId).watchQuery({
|
|
87
|
-
query: queryNode,
|
|
88
|
-
variables: variables
|
|
89
|
-
}).valueChanges;
|
|
90
|
-
}
|
|
91
|
-
prepareQuery(tenantId, variables, queryNode) {
|
|
92
|
-
this.createApolloForTenant(tenantId);
|
|
93
|
-
return this.apollo.use(tenantId).query({
|
|
94
|
-
query: queryNode,
|
|
95
|
-
variables: variables,
|
|
96
|
-
fetchPolicy: "network-only"
|
|
97
|
-
});
|
|
98
|
-
}
|
|
14
|
+
class OctoGraphQLServiceBase {
|
|
15
|
+
constructor(apollo, httpLink, octoServiceOptions) {
|
|
16
|
+
this.apollo = apollo;
|
|
17
|
+
this.httpLink = httpLink;
|
|
18
|
+
this.octoServiceOptions = octoServiceOptions;
|
|
19
|
+
}
|
|
20
|
+
getEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
21
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
22
|
+
return query.pipe(map(result => {
|
|
23
|
+
const resultSet = new PagedResultDto();
|
|
24
|
+
if (result.errors) {
|
|
25
|
+
console.error(result.errors);
|
|
26
|
+
throw Error("Error in GraphQL statement.");
|
|
27
|
+
}
|
|
28
|
+
else if (result.data) {
|
|
29
|
+
f(resultSet, result.data);
|
|
30
|
+
}
|
|
31
|
+
return resultSet;
|
|
32
|
+
}));
|
|
33
|
+
}
|
|
34
|
+
getGraphEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
35
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
36
|
+
return query.pipe(map(result => {
|
|
37
|
+
const resultSet = new PagedGraphResultDto();
|
|
38
|
+
if (result.errors) {
|
|
39
|
+
console.error(result.errors);
|
|
40
|
+
throw Error("Error in GraphQL statement.");
|
|
41
|
+
}
|
|
42
|
+
else if (result.data) {
|
|
43
|
+
f(resultSet, result.data);
|
|
44
|
+
}
|
|
45
|
+
return resultSet;
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
getEntityDetail(tenantId, variables, queryNode, watchQuery, f) {
|
|
49
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
50
|
+
return query.pipe(map(result => {
|
|
51
|
+
if (result.errors) {
|
|
52
|
+
console.error(result.errors);
|
|
53
|
+
throw Error("Error in GraphQL statement.");
|
|
54
|
+
}
|
|
55
|
+
else if (result.data) {
|
|
56
|
+
return f(result.data);
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}));
|
|
60
|
+
}
|
|
61
|
+
createUpdateEntity(tenantId, variables, queryNode, f) {
|
|
62
|
+
this.createApolloForTenant(tenantId);
|
|
63
|
+
return this.apollo.use(tenantId).mutate({
|
|
64
|
+
mutation: queryNode,
|
|
65
|
+
variables: variables
|
|
66
|
+
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
67
|
+
}
|
|
68
|
+
deleteEntity(tenantId, variables, queryNode, f) {
|
|
69
|
+
this.createApolloForTenant(tenantId);
|
|
70
|
+
return this.apollo.use(tenantId).mutate({
|
|
71
|
+
mutation: queryNode,
|
|
72
|
+
variables: variables
|
|
73
|
+
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
74
|
+
}
|
|
75
|
+
createApolloForTenant(tenantId) {
|
|
76
|
+
const result = this.apollo.use(tenantId);
|
|
77
|
+
if (result) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;
|
|
81
|
+
this.apollo.createNamed(tenantId, {
|
|
82
|
+
link: this.httpLink.create({ uri }),
|
|
83
|
+
cache: new InMemoryCache({
|
|
84
|
+
dataIdFromObject: o => o['rtId']
|
|
85
|
+
}),
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
prepareWatchQuery(tenantId, variables, queryNode) {
|
|
89
|
+
this.createApolloForTenant(tenantId);
|
|
90
|
+
return this.apollo.use(tenantId).watchQuery({
|
|
91
|
+
query: queryNode,
|
|
92
|
+
variables: variables
|
|
93
|
+
}).valueChanges;
|
|
94
|
+
}
|
|
95
|
+
prepareQuery(tenantId, variables, queryNode) {
|
|
96
|
+
this.createApolloForTenant(tenantId);
|
|
97
|
+
return this.apollo.use(tenantId).query({
|
|
98
|
+
query: queryNode,
|
|
99
|
+
variables: variables,
|
|
100
|
+
fetchPolicy: "network-only"
|
|
101
|
+
});
|
|
102
|
+
}
|
|
99
103
|
}
|
|
100
104
|
|
|
101
|
-
class OctoServiceOptions {
|
|
105
|
+
class OctoServiceOptions {
|
|
106
|
+
constructor() {
|
|
107
|
+
this.assetServices = null;
|
|
108
|
+
this.defaultDataSourceId = undefined;
|
|
109
|
+
}
|
|
102
110
|
}
|
|
103
111
|
|
|
104
|
-
class OctoServicesModule {
|
|
105
|
-
static forRoot(octoServiceOptions) {
|
|
106
|
-
return {
|
|
107
|
-
ngModule: OctoServicesModule,
|
|
108
|
-
providers: [
|
|
109
|
-
{
|
|
110
|
-
provide: OctoServiceOptions,
|
|
111
|
-
useValue: octoServiceOptions
|
|
112
|
-
}
|
|
113
|
-
]
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
OctoServicesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
118
|
-
OctoServicesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
119
|
-
OctoServicesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
121
|
-
type: NgModule,
|
|
122
|
-
args: [{
|
|
123
|
-
declarations: [],
|
|
124
|
-
imports: [],
|
|
125
|
-
exports: []
|
|
126
|
-
}]
|
|
112
|
+
class OctoServicesModule {
|
|
113
|
+
static forRoot(octoServiceOptions) {
|
|
114
|
+
return {
|
|
115
|
+
ngModule: OctoServicesModule,
|
|
116
|
+
providers: [
|
|
117
|
+
{
|
|
118
|
+
provide: OctoServiceOptions,
|
|
119
|
+
useValue: octoServiceOptions
|
|
120
|
+
}
|
|
121
|
+
]
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
OctoServicesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
126
|
+
OctoServicesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule });
|
|
127
|
+
OctoServicesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule });
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule, decorators: [{
|
|
129
|
+
type: NgModule,
|
|
130
|
+
args: [{
|
|
131
|
+
declarations: [],
|
|
132
|
+
imports: [],
|
|
133
|
+
exports: []
|
|
134
|
+
}]
|
|
127
135
|
}] });
|
|
128
136
|
|
|
129
|
-
class GraphQL {
|
|
130
|
-
static getCursor(position) {
|
|
131
|
-
return btoa(`arrayconnection:${position}`);
|
|
132
|
-
}
|
|
133
|
-
static offsetToCursor(offset) {
|
|
134
|
-
if (!offset) {
|
|
135
|
-
return null;
|
|
136
|
-
}
|
|
137
|
-
return this.getCursor(offset - 1);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
137
|
+
class GraphQL {
|
|
138
|
+
static getCursor(position) {
|
|
139
|
+
return btoa(`arrayconnection:${position}`);
|
|
140
|
+
}
|
|
141
|
+
static offsetToCursor(offset) {
|
|
142
|
+
if (!offset) {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
return this.getCursor(offset - 1);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
140
148
|
const GraphQLCloneIgnoredProperties = ["id", "rtId", "__typename"];
|
|
141
149
|
|
|
142
|
-
/*
|
|
143
|
-
* Public API Surface of
|
|
150
|
+
/*
|
|
151
|
+
* Public API Surface of octo-services
|
|
144
152
|
*/
|
|
145
153
|
|
|
146
|
-
/**
|
|
147
|
-
* Generated bundle index. Do not edit.
|
|
154
|
+
/**
|
|
155
|
+
* Generated bundle index. Do not edit.
|
|
148
156
|
*/
|
|
149
157
|
|
|
150
158
|
export { GraphQL, GraphQLCloneIgnoredProperties, OctoGraphQLServiceBase, OctoServiceOptions, OctoServicesModule, PagedGraphResultDto };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meshmakers-octo-services.mjs","sources":["../../../../projects/meshmakers/octo-services/src/lib/models/pagedGraphResultDto.ts","../../../../projects/meshmakers/octo-services/src/lib/services/octo-graph-ql-service-base.ts","../../../../projects/meshmakers/octo-services/src/lib/options/octo-service-options.ts","../../../../projects/meshmakers/octo-services/src/lib/octo-services.module.ts","../../../../projects/meshmakers/octo-services/src/lib/shared/graphQL.ts","../../../../projects/meshmakers/octo-services/src/public-api.ts","../../../../projects/meshmakers/octo-services/src/meshmakers-octo-services.ts"],"sourcesContent":["import {PagedResultDto} from \"@meshmakers/shared-services\";\r\n\r\nexport class PagedGraphResultDto<P, C> extends PagedResultDto<C> {\r\n\r\n document: P;\r\n}\r\n","import {DocumentNode} from \"graphql\";\r\nimport {finalize, map} from \"rxjs/operators\";\r\nimport {Apollo} from \"apollo-angular\";\r\nimport {OctoServiceOptions} from \"../options/octo-service-options\";\r\nimport {PagedGraphResultDto} from \"../models/pagedGraphResultDto\";\r\nimport {PagedResultDto} from \"@meshmakers/shared-services\";\r\nimport {HttpLink} from 'apollo-angular/http';\r\nimport {InMemoryCache} from '@apollo/client/core';\r\n\r\nexport class OctoGraphQLServiceBase {\r\n\r\n constructor(private apollo: Apollo, private httpLink: HttpLink, private octoServiceOptions: OctoServiceOptions) {\r\n }\r\n\r\n protected getEntities<TResult, TEntity, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (resultSet: PagedResultDto<TEntity>, result: TResult) => void) {\r\n\r\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\r\n return query.pipe(map(result => {\r\n\r\n const resultSet = new PagedResultDto<TEntity>();\r\n\r\n if (result.errors) {\r\n console.error(result.errors);\r\n throw Error(\"Error in GraphQL statement.\")\r\n } else if (result.data) {\r\n f(resultSet, result.data);\r\n }\r\n return resultSet;\r\n }));\r\n }\r\n\r\n protected getGraphEntities<TResult, TP, TC, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (resultSet: PagedGraphResultDto<TP, TC>, result: TResult) => void) {\r\n\r\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\r\n return query.pipe(map(result => {\r\n\r\n const resultSet = new PagedGraphResultDto<TP, TC>();\r\n\r\n if (result.errors) {\r\n console.error(result.errors);\r\n throw Error(\"Error in GraphQL statement.\")\r\n } else if (result.data) {\r\n f(resultSet, result.data);\r\n }\r\n return resultSet;\r\n }));\r\n }\r\n\r\n protected getEntityDetail<TResult, TEntity, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (result: TResult) => TEntity) {\r\n\r\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\r\n return query.pipe(map(result => {\r\n\r\n if (result.errors) {\r\n console.error(result.errors);\r\n throw Error(\"Error in GraphQL statement.\")\r\n } else if (result.data) {\r\n return f(result.data);\r\n }\r\n return null;\r\n }));\r\n }\r\n\r\n protected createUpdateEntity<TResult, TEntity, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode, f: (result: TResult) => TEntity) {\r\n\r\n this.createApolloForTenant(tenantId);\r\n\r\n return this.apollo.use(tenantId).mutate<TResult>({\r\n mutation: queryNode,\r\n variables: variables\r\n }).pipe(\r\n map(value => f(value.data)),\r\n finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true))\r\n );\r\n }\r\n\r\n protected deleteEntity<TResult, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode, f: (result: TResult) => boolean) {\r\n this.createApolloForTenant(tenantId);\r\n\r\n return this.apollo.use(tenantId).mutate<TResult>({\r\n mutation: queryNode,\r\n variables: variables\r\n }).pipe(\r\n map(value => f(value.data)),\r\n finalize(() => this.apollo.use(tenantId).getClient().reFetchObservableQueries(true))\r\n );\r\n }\r\n\r\n private createApolloForTenant(tenantId: string) {\r\n\r\n const result = this.apollo.use(tenantId);\r\n if (result) {\r\n return;\r\n }\r\n\r\n const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;\r\n\r\n this.apollo.createNamed(tenantId,\r\n {\r\n link: this.httpLink.create({uri}),\r\n cache: new InMemoryCache({\r\n dataIdFromObject: o => <string>o.rtId\r\n }),\r\n });\r\n }\r\n\r\n private prepareWatchQuery<TResult, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode) {\r\n this.createApolloForTenant(tenantId);\r\n\r\n return this.apollo.use(tenantId).watchQuery<TResult>({\r\n query: queryNode,\r\n variables: variables\r\n }).valueChanges;\r\n }\r\n\r\n private prepareQuery<TResult, TVariable>(tenantId: string, variables: TVariable, queryNode: DocumentNode) {\r\n this.createApolloForTenant(tenantId);\r\n\r\n return this.apollo.use(tenantId).query<TResult>({\r\n query: queryNode,\r\n variables: variables,\r\n fetchPolicy: \"network-only\"\r\n });\r\n }\r\n\r\n\r\n}\r\n","export class OctoServiceOptions {\r\n assetServices: string;\r\n defaultDataSourceId?: string;\r\n}\r\n","import {ModuleWithProviders, NgModule} from '@angular/core';\r\nimport {OctoServiceOptions} from \"./options/octo-service-options\";\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [],\r\n exports: []\r\n})\r\nexport class OctoServicesModule {\r\n static forRoot(octoServiceOptions: OctoServiceOptions): ModuleWithProviders<OctoServicesModule> {\r\n return {\r\n ngModule: OctoServicesModule,\r\n providers: [\r\n {\r\n provide: OctoServiceOptions,\r\n useValue: octoServiceOptions\r\n }\r\n ]\r\n }\r\n }\r\n}\r\n","export class GraphQL {\r\n\r\n public static getCursor(position: number): string {\r\n return btoa(`arrayconnection:${position}`);\r\n }\r\n\r\n public static offsetToCursor(offset: number): string {\r\n if (!offset) {\r\n return null;\r\n }\r\n\r\n return this.getCursor(offset - 1);\r\n }\r\n}\r\n\r\nexport const GraphQLCloneIgnoredProperties = [\"id\", \"rtId\", \"__typename\"];\r\n","/*\r\n * Public API Surface of osp-services\r\n */\r\n\r\nexport * from './lib/services/octo-graph-ql-service-base';\r\nexport * from './lib/options/octo-service-options';\r\nexport * from './lib/octo-services.module';\r\nexport * from './lib/models/pagedGraphResultDto';\r\nexport * from './lib/shared/graphQL';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"meshmakers-octo-services.mjs","sources":["../../../../projects/meshmakers/octo-services/src/lib/models/pagedGraphResultDto.ts","../../../../projects/meshmakers/octo-services/src/lib/services/octo-graph-ql-service-base.ts","../../../../projects/meshmakers/octo-services/src/lib/options/octo-service-options.ts","../../../../projects/meshmakers/octo-services/src/lib/octo-services.module.ts","../../../../projects/meshmakers/octo-services/src/lib/shared/graphQL.ts","../../../../projects/meshmakers/octo-services/src/public-api.ts","../../../../projects/meshmakers/octo-services/src/meshmakers-octo-services.ts"],"sourcesContent":["import {PagedResultDto} from \"@meshmakers/shared-services\";\n\nexport class PagedGraphResultDto<P, C> extends PagedResultDto<C> {\n\n document: P | null;\n\n constructor() {\n super();\n\n this.document = null;\n }\n}\n","import {DocumentNode} from \"graphql\";\nimport {finalize, map} from \"rxjs/operators\";\nimport {Apollo} from \"apollo-angular\";\nimport {OctoServiceOptions} from \"../options/octo-service-options\";\nimport {PagedGraphResultDto} from \"../models/pagedGraphResultDto\";\nimport {PagedResultDto} from \"@meshmakers/shared-services\";\nimport {HttpLink} from 'apollo-angular/http';\nimport {InMemoryCache} from '@apollo/client/core';\nimport {OperationVariables} from \"@apollo/client/core/types\";\nimport {EmptyObject} from \"apollo-angular/types\";\n\nexport class OctoGraphQLServiceBase {\n\n constructor(private apollo: Apollo, private httpLink: HttpLink, private octoServiceOptions: OctoServiceOptions) {\n }\n\n protected getEntities<TResult, TEntity, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (resultSet: PagedResultDto<TEntity>, result: TResult) => void) {\n\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\n return query.pipe(map(result => {\n\n const resultSet = new PagedResultDto<TEntity>();\n\n if (result.errors) {\n console.error(result.errors);\n throw Error(\"Error in GraphQL statement.\")\n } else if (result.data) {\n f(resultSet, result.data);\n }\n return resultSet;\n }));\n }\n\n protected getGraphEntities<TResult, TP, TC, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (resultSet: PagedGraphResultDto<TP, TC>, result: TResult) => void) {\n\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\n return query.pipe(map(result => {\n\n const resultSet = new PagedGraphResultDto<TP, TC>();\n\n if (result.errors) {\n console.error(result.errors);\n throw Error(\"Error in GraphQL statement.\")\n } else if (result.data) {\n f(resultSet, result.data);\n }\n return resultSet;\n }));\n }\n\n protected getEntityDetail<TResult, TEntity, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode, watchQuery: boolean, f: (result: TResult) => TEntity) {\n\n const query = watchQuery ? this.prepareWatchQuery<TResult, TVariable>(tenantId, variables, queryNode) : this.prepareQuery<TResult, TVariable>(tenantId, variables, queryNode);\n return query.pipe(map(result => {\n\n if (result.errors) {\n console.error(result.errors);\n throw Error(\"Error in GraphQL statement.\")\n } else if (result.data) {\n return f(result.data);\n }\n return null;\n }));\n }\n\n protected createUpdateEntity<TResult, TEntity, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode, f: (result: TResult | null | undefined) => TEntity) {\n\n this.createApolloForTenant(tenantId);\n\n return this.apollo.use(tenantId).mutate<TResult>({\n mutation: queryNode,\n variables: variables\n }).pipe(\n map(value => f(value.data)),\n finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true))\n );\n }\n\n protected deleteEntity<TResult, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode, f: (result: TResult | null | undefined) => boolean) {\n this.createApolloForTenant(tenantId);\n\n return this.apollo.use(tenantId).mutate<TResult>({\n mutation: queryNode,\n variables: variables\n }).pipe(\n map(value => f(value.data)),\n finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true))\n );\n }\n\n private createApolloForTenant(tenantId: string) {\n\n const result = this.apollo.use(tenantId);\n if (result) {\n return;\n }\n\n const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;\n\n this.apollo.createNamed(tenantId,\n {\n link: this.httpLink.create({uri}),\n cache: new InMemoryCache({\n dataIdFromObject: o => <string>o['rtId']\n }),\n });\n }\n\n private prepareWatchQuery<TResult, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode) {\n this.createApolloForTenant(tenantId);\n\n return this.apollo.use(tenantId).watchQuery<TResult>({\n query: queryNode,\n variables: variables\n }).valueChanges;\n }\n\n private prepareQuery<TResult, TVariable extends OperationVariables>(tenantId: string, variables: TVariable, queryNode: DocumentNode) {\n this.createApolloForTenant(tenantId);\n\n return this.apollo.use(tenantId).query<TResult>({\n query: queryNode,\n variables: variables,\n fetchPolicy: \"network-only\"\n });\n }\n\n\n}\n","export class OctoServiceOptions {\n assetServices: string | null;\n defaultDataSourceId?: string;\n\n constructor() {\n this.assetServices = null;\n this.defaultDataSourceId = undefined;\n }\n}\n","import {ModuleWithProviders, NgModule} from '@angular/core';\nimport {OctoServiceOptions} from \"./options/octo-service-options\";\n\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: []\n})\nexport class OctoServicesModule {\n static forRoot(octoServiceOptions: OctoServiceOptions): ModuleWithProviders<OctoServicesModule> {\n return {\n ngModule: OctoServicesModule,\n providers: [\n {\n provide: OctoServiceOptions,\n useValue: octoServiceOptions\n }\n ]\n }\n }\n}\n","export class GraphQL {\n\n public static getCursor(position: number): string {\n return btoa(`arrayconnection:${position}`);\n }\n\n public static offsetToCursor(offset: number): string | null {\n if (!offset) {\n return null;\n }\n\n return this.getCursor(offset - 1);\n }\n}\n\nexport const GraphQLCloneIgnoredProperties = [\"id\", \"rtId\", \"__typename\"];\n","/*\n * Public API Surface of octo-services\n */\n\nexport * from './lib/services/octo-graph-ql-service-base';\nexport * from './lib/options/octo-service-options';\nexport * from './lib/octo-services.module';\nexport * from './lib/models/pagedGraphResultDto';\nexport * from './lib/shared/graphQL';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAEM,MAAO,mBAA0B,SAAQ,cAAiB,CAAA;AAI9D,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;AAER,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;KACtB;AACF;;MCAY,sBAAsB,CAAA;AAEjC,IAAA,WAAA,CAAoB,MAAc,EAAU,QAAkB,EAAU,kBAAsC,EAAA;AAA1F,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;AAAU,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;AAAU,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;KAC7G;IAES,WAAW,CAAyD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAE,UAAmB,EAAE,CAAgE,EAAA;AAElO,QAAA,MAAM,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9K,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAG;AAE7B,YAAA,MAAM,SAAS,GAAG,IAAI,cAAc,EAAW,CAAC;YAEhD,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,gBAAA,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAA,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAA;AAC3C,aAAA;iBAAM,IAAI,MAAM,CAAC,IAAI,EAAE;AACtB,gBAAA,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AAC3B,aAAA;AACD,YAAA,OAAO,SAAS,CAAC;SAClB,CAAC,CAAC,CAAC;KACL;IAES,gBAAgB,CAAwD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAE,UAAmB,EAAE,CAAoE,EAAA;AAE1O,QAAA,MAAM,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9K,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAG;AAE7B,YAAA,MAAM,SAAS,GAAG,IAAI,mBAAmB,EAAU,CAAC;YAEpD,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,gBAAA,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAA,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAA;AAC3C,aAAA;iBAAM,IAAI,MAAM,CAAC,IAAI,EAAE;AACtB,gBAAA,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AAC3B,aAAA;AACD,YAAA,OAAO,SAAS,CAAC;SAClB,CAAC,CAAC,CAAC;KACL;IAES,eAAe,CAAyD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAE,UAAmB,EAAE,CAA+B,EAAA;AAErM,QAAA,MAAM,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,CAAqB,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9K,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAG;YAE7B,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,gBAAA,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAA,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAA;AAC3C,aAAA;iBAAM,IAAI,MAAM,CAAC,IAAI,EAAE;AACtB,gBAAA,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACvB,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;SACb,CAAC,CAAC,CAAC;KACL;AAES,IAAA,kBAAkB,CAAyD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAE,CAAkD,EAAA;AAEtM,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAU;AAC/C,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,SAAS,EAAE,SAAS;AACrB,SAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAC3B,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAChF,CAAC;KACH;AAES,IAAA,YAAY,CAAgD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAE,CAAkD,EAAA;AACvL,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAU;AAC/C,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,SAAS,EAAE,SAAS;AACrB,SAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAC3B,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAChF,CAAC;KACH;AAEO,IAAA,qBAAqB,CAAC,QAAgB,EAAA;QAE5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACzC,QAAA,IAAI,MAAM,EAAE;YACV,OAAO;AACR,SAAA;QAED,MAAM,GAAG,GAAG,CAAA,EAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAA,QAAA,EAAW,QAAQ,CAAA,QAAA,CAAU,CAAC;AAElF,QAAA,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAC9B;YACE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAC,GAAG,EAAC,CAAC;YACjC,KAAK,EAAE,IAAI,aAAa,CAAC;gBACvB,gBAAgB,EAAE,CAAC,IAAY,CAAC,CAAC,MAAM,CAAC;aACzC,CAAC;AACH,SAAA,CAAC,CAAC;KACN;AAEO,IAAA,iBAAiB,CAAgD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAA;AACtI,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAU;AACnD,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC,YAAY,CAAC;KACjB;AAEO,IAAA,YAAY,CAAgD,QAAgB,EAAE,SAAoB,EAAE,SAAuB,EAAA;AACjI,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAU;AAC9C,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,SAAS,EAAE,SAAS;AACpB,YAAA,WAAW,EAAE,cAAc;AAC5B,SAAA,CAAC,CAAC;KACJ;AAGF;;MChIY,kBAAkB,CAAA;AAI7B,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;KACtC;AACF;;MCCY,kBAAkB,CAAA;IAC7B,OAAO,OAAO,CAAC,kBAAsC,EAAA;QACnD,OAAO;AACL,YAAA,QAAQ,EAAE,kBAAkB;AAC5B,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,kBAAkB;AAC3B,oBAAA,QAAQ,EAAE,kBAAkB;AAC7B,iBAAA;AACF,aAAA;SACF,CAAA;KACF;;+GAXU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,OAAO,EAAE,EAAE;iBACZ,CAAA;;;MCRY,OAAO,CAAA;IAEX,OAAO,SAAS,CAAC,QAAgB,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,CAAA,gBAAA,EAAmB,QAAQ,CAAA,CAAE,CAAC,CAAC;KAC5C;IAEM,OAAO,cAAc,CAAC,MAAc,EAAA;QACzC,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KACnC;AACF,CAAA;AAEY,MAAA,6BAA6B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY;;ACfxE;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -4,147 +4,155 @@ import { InMemoryCache } from '@apollo/client/core';
|
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
5
|
import { NgModule } from '@angular/core';
|
|
6
6
|
|
|
7
|
-
class PagedGraphResultDto extends PagedResultDto {
|
|
7
|
+
class PagedGraphResultDto extends PagedResultDto {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.document = null;
|
|
11
|
+
}
|
|
8
12
|
}
|
|
9
13
|
|
|
10
|
-
class OctoGraphQLServiceBase {
|
|
11
|
-
constructor(apollo, httpLink, octoServiceOptions) {
|
|
12
|
-
this.apollo = apollo;
|
|
13
|
-
this.httpLink = httpLink;
|
|
14
|
-
this.octoServiceOptions = octoServiceOptions;
|
|
15
|
-
}
|
|
16
|
-
getEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
17
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
18
|
-
return query.pipe(map(result => {
|
|
19
|
-
const resultSet = new PagedResultDto();
|
|
20
|
-
if (result.errors) {
|
|
21
|
-
console.error(result.errors);
|
|
22
|
-
throw Error("Error in GraphQL statement.");
|
|
23
|
-
}
|
|
24
|
-
else if (result.data) {
|
|
25
|
-
f(resultSet, result.data);
|
|
26
|
-
}
|
|
27
|
-
return resultSet;
|
|
28
|
-
}));
|
|
29
|
-
}
|
|
30
|
-
getGraphEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
31
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
32
|
-
return query.pipe(map(result => {
|
|
33
|
-
const resultSet = new PagedGraphResultDto();
|
|
34
|
-
if (result.errors) {
|
|
35
|
-
console.error(result.errors);
|
|
36
|
-
throw Error("Error in GraphQL statement.");
|
|
37
|
-
}
|
|
38
|
-
else if (result.data) {
|
|
39
|
-
f(resultSet, result.data);
|
|
40
|
-
}
|
|
41
|
-
return resultSet;
|
|
42
|
-
}));
|
|
43
|
-
}
|
|
44
|
-
getEntityDetail(tenantId, variables, queryNode, watchQuery, f) {
|
|
45
|
-
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
46
|
-
return query.pipe(map(result => {
|
|
47
|
-
if (result.errors) {
|
|
48
|
-
console.error(result.errors);
|
|
49
|
-
throw Error("Error in GraphQL statement.");
|
|
50
|
-
}
|
|
51
|
-
else if (result.data) {
|
|
52
|
-
return f(result.data);
|
|
53
|
-
}
|
|
54
|
-
return null;
|
|
55
|
-
}));
|
|
56
|
-
}
|
|
57
|
-
createUpdateEntity(tenantId, variables, queryNode, f) {
|
|
58
|
-
this.createApolloForTenant(tenantId);
|
|
59
|
-
return this.apollo.use(tenantId).mutate({
|
|
60
|
-
mutation: queryNode,
|
|
61
|
-
variables: variables
|
|
62
|
-
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
63
|
-
}
|
|
64
|
-
deleteEntity(tenantId, variables, queryNode, f) {
|
|
65
|
-
this.createApolloForTenant(tenantId);
|
|
66
|
-
return this.apollo.use(tenantId).mutate({
|
|
67
|
-
mutation: queryNode,
|
|
68
|
-
variables: variables
|
|
69
|
-
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).
|
|
70
|
-
}
|
|
71
|
-
createApolloForTenant(tenantId) {
|
|
72
|
-
const result = this.apollo.use(tenantId);
|
|
73
|
-
if (result) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;
|
|
77
|
-
this.apollo.createNamed(tenantId, {
|
|
78
|
-
link: this.httpLink.create({ uri }),
|
|
79
|
-
cache: new InMemoryCache({
|
|
80
|
-
dataIdFromObject: o => o
|
|
81
|
-
}),
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
prepareWatchQuery(tenantId, variables, queryNode) {
|
|
85
|
-
this.createApolloForTenant(tenantId);
|
|
86
|
-
return this.apollo.use(tenantId).watchQuery({
|
|
87
|
-
query: queryNode,
|
|
88
|
-
variables: variables
|
|
89
|
-
}).valueChanges;
|
|
90
|
-
}
|
|
91
|
-
prepareQuery(tenantId, variables, queryNode) {
|
|
92
|
-
this.createApolloForTenant(tenantId);
|
|
93
|
-
return this.apollo.use(tenantId).query({
|
|
94
|
-
query: queryNode,
|
|
95
|
-
variables: variables,
|
|
96
|
-
fetchPolicy: "network-only"
|
|
97
|
-
});
|
|
98
|
-
}
|
|
14
|
+
class OctoGraphQLServiceBase {
|
|
15
|
+
constructor(apollo, httpLink, octoServiceOptions) {
|
|
16
|
+
this.apollo = apollo;
|
|
17
|
+
this.httpLink = httpLink;
|
|
18
|
+
this.octoServiceOptions = octoServiceOptions;
|
|
19
|
+
}
|
|
20
|
+
getEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
21
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
22
|
+
return query.pipe(map(result => {
|
|
23
|
+
const resultSet = new PagedResultDto();
|
|
24
|
+
if (result.errors) {
|
|
25
|
+
console.error(result.errors);
|
|
26
|
+
throw Error("Error in GraphQL statement.");
|
|
27
|
+
}
|
|
28
|
+
else if (result.data) {
|
|
29
|
+
f(resultSet, result.data);
|
|
30
|
+
}
|
|
31
|
+
return resultSet;
|
|
32
|
+
}));
|
|
33
|
+
}
|
|
34
|
+
getGraphEntities(tenantId, variables, queryNode, watchQuery, f) {
|
|
35
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
36
|
+
return query.pipe(map(result => {
|
|
37
|
+
const resultSet = new PagedGraphResultDto();
|
|
38
|
+
if (result.errors) {
|
|
39
|
+
console.error(result.errors);
|
|
40
|
+
throw Error("Error in GraphQL statement.");
|
|
41
|
+
}
|
|
42
|
+
else if (result.data) {
|
|
43
|
+
f(resultSet, result.data);
|
|
44
|
+
}
|
|
45
|
+
return resultSet;
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
getEntityDetail(tenantId, variables, queryNode, watchQuery, f) {
|
|
49
|
+
const query = watchQuery ? this.prepareWatchQuery(tenantId, variables, queryNode) : this.prepareQuery(tenantId, variables, queryNode);
|
|
50
|
+
return query.pipe(map(result => {
|
|
51
|
+
if (result.errors) {
|
|
52
|
+
console.error(result.errors);
|
|
53
|
+
throw Error("Error in GraphQL statement.");
|
|
54
|
+
}
|
|
55
|
+
else if (result.data) {
|
|
56
|
+
return f(result.data);
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}));
|
|
60
|
+
}
|
|
61
|
+
createUpdateEntity(tenantId, variables, queryNode, f) {
|
|
62
|
+
this.createApolloForTenant(tenantId);
|
|
63
|
+
return this.apollo.use(tenantId).mutate({
|
|
64
|
+
mutation: queryNode,
|
|
65
|
+
variables: variables
|
|
66
|
+
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
67
|
+
}
|
|
68
|
+
deleteEntity(tenantId, variables, queryNode, f) {
|
|
69
|
+
this.createApolloForTenant(tenantId);
|
|
70
|
+
return this.apollo.use(tenantId).mutate({
|
|
71
|
+
mutation: queryNode,
|
|
72
|
+
variables: variables
|
|
73
|
+
}).pipe(map(value => f(value.data)), finalize(() => this.apollo.use(tenantId).client.reFetchObservableQueries(true)));
|
|
74
|
+
}
|
|
75
|
+
createApolloForTenant(tenantId) {
|
|
76
|
+
const result = this.apollo.use(tenantId);
|
|
77
|
+
if (result) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const uri = `${this.octoServiceOptions.assetServices}tenants/${tenantId}/GraphQL`;
|
|
81
|
+
this.apollo.createNamed(tenantId, {
|
|
82
|
+
link: this.httpLink.create({ uri }),
|
|
83
|
+
cache: new InMemoryCache({
|
|
84
|
+
dataIdFromObject: o => o['rtId']
|
|
85
|
+
}),
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
prepareWatchQuery(tenantId, variables, queryNode) {
|
|
89
|
+
this.createApolloForTenant(tenantId);
|
|
90
|
+
return this.apollo.use(tenantId).watchQuery({
|
|
91
|
+
query: queryNode,
|
|
92
|
+
variables: variables
|
|
93
|
+
}).valueChanges;
|
|
94
|
+
}
|
|
95
|
+
prepareQuery(tenantId, variables, queryNode) {
|
|
96
|
+
this.createApolloForTenant(tenantId);
|
|
97
|
+
return this.apollo.use(tenantId).query({
|
|
98
|
+
query: queryNode,
|
|
99
|
+
variables: variables,
|
|
100
|
+
fetchPolicy: "network-only"
|
|
101
|
+
});
|
|
102
|
+
}
|
|
99
103
|
}
|
|
100
104
|
|
|
101
|
-
class OctoServiceOptions {
|
|
105
|
+
class OctoServiceOptions {
|
|
106
|
+
constructor() {
|
|
107
|
+
this.assetServices = null;
|
|
108
|
+
this.defaultDataSourceId = undefined;
|
|
109
|
+
}
|
|
102
110
|
}
|
|
103
111
|
|
|
104
|
-
class OctoServicesModule {
|
|
105
|
-
static forRoot(octoServiceOptions) {
|
|
106
|
-
return {
|
|
107
|
-
ngModule: OctoServicesModule,
|
|
108
|
-
providers: [
|
|
109
|
-
{
|
|
110
|
-
provide: OctoServiceOptions,
|
|
111
|
-
useValue: octoServiceOptions
|
|
112
|
-
}
|
|
113
|
-
]
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
OctoServicesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
118
|
-
OctoServicesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
119
|
-
OctoServicesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
121
|
-
type: NgModule,
|
|
122
|
-
args: [{
|
|
123
|
-
declarations: [],
|
|
124
|
-
imports: [],
|
|
125
|
-
exports: []
|
|
126
|
-
}]
|
|
112
|
+
class OctoServicesModule {
|
|
113
|
+
static forRoot(octoServiceOptions) {
|
|
114
|
+
return {
|
|
115
|
+
ngModule: OctoServicesModule,
|
|
116
|
+
providers: [
|
|
117
|
+
{
|
|
118
|
+
provide: OctoServiceOptions,
|
|
119
|
+
useValue: octoServiceOptions
|
|
120
|
+
}
|
|
121
|
+
]
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
OctoServicesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
126
|
+
OctoServicesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule });
|
|
127
|
+
OctoServicesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule });
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OctoServicesModule, decorators: [{
|
|
129
|
+
type: NgModule,
|
|
130
|
+
args: [{
|
|
131
|
+
declarations: [],
|
|
132
|
+
imports: [],
|
|
133
|
+
exports: []
|
|
134
|
+
}]
|
|
127
135
|
}] });
|
|
128
136
|
|
|
129
|
-
class GraphQL {
|
|
130
|
-
static getCursor(position) {
|
|
131
|
-
return btoa(`arrayconnection:${position}`);
|
|
132
|
-
}
|
|
133
|
-
static offsetToCursor(offset) {
|
|
134
|
-
if (!offset) {
|
|
135
|
-
return null;
|
|
136
|
-
}
|
|
137
|
-
return this.getCursor(offset - 1);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
137
|
+
class GraphQL {
|
|
138
|
+
static getCursor(position) {
|
|
139
|
+
return btoa(`arrayconnection:${position}`);
|
|
140
|
+
}
|
|
141
|
+
static offsetToCursor(offset) {
|
|
142
|
+
if (!offset) {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
return this.getCursor(offset - 1);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
140
148
|
const GraphQLCloneIgnoredProperties = ["id", "rtId", "__typename"];
|
|
141
149
|
|
|
142
|
-
/*
|
|
143
|
-
* Public API Surface of
|
|
150
|
+
/*
|
|
151
|
+
* Public API Surface of octo-services
|
|
144
152
|
*/
|
|
145
153
|
|
|
146
|
-
/**
|
|
147
|
-
* Generated bundle index. Do not edit.
|
|
154
|
+
/**
|
|
155
|
+
* Generated bundle index. Do not edit.
|
|
148
156
|
*/
|
|
149
157
|
|
|
150
158
|
export { GraphQL, GraphQLCloneIgnoredProperties, OctoGraphQLServiceBase, OctoServiceOptions, OctoServicesModule, PagedGraphResultDto };
|