@goatlab/fluent-formio 0.6.5 → 0.6.6
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 +22 -4
- package/dist/FormioConnector.d.ts +2 -37
- package/dist/FormioConnector.js +1 -340
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -91
- package/dist/test/advanced/advancedTestSuite.d.ts +0 -1
- package/dist/test/advanced/advancedTestSuite.js +0 -114
- package/dist/test/advanced/typeOrm.entity.d.ts +0 -16
- package/dist/test/advanced/typeOrm.entity.js +0 -57
- package/dist/test/advanced/typeOrm.repository.d.ts +0 -5
- package/dist/test/advanced/typeOrm.repository.js +0 -11
- package/dist/test/basic/basicTestSuite.d.ts +0 -1
- package/dist/test/basic/basicTestSuite.js +0 -45
- package/dist/test/basic/goat.dto.d.ts +0 -8
- package/dist/test/basic/goat.dto.js +0 -18
- package/dist/test/basic/goat.entity.d.ts +0 -10
- package/dist/test/basic/goat.entity.js +0 -41
- package/dist/test/basic/goat.repository.d.ts +0 -6
- package/dist/test/basic/goat.repository.js +0 -11
- package/dist/test/flock.d.ts +0 -4
- package/dist/test/flock.js +0 -25
- package/dist/test/relations/car/car.dto.d.ts +0 -5
- package/dist/test/relations/car/car.dto.js +0 -12
- package/dist/test/relations/car/car.entity.d.ts +0 -7
- package/dist/test/relations/car/car.entity.js +0 -32
- package/dist/test/relations/car/car.repositoryTypeOrm.d.ts +0 -8
- package/dist/test/relations/car/car.repositoryTypeOrm.js +0 -13
- package/dist/test/relations/relationsTestsSuite.d.ts +0 -1
- package/dist/test/relations/relationsTestsSuite.js +0 -93
- package/dist/test/relations/roles/role.dto.d.ts +0 -5
- package/dist/test/relations/roles/role.dto.js +0 -12
- package/dist/test/relations/roles/roles.entity.d.ts +0 -6
- package/dist/test/relations/roles/roles.entity.js +0 -29
- package/dist/test/relations/roles/roles.repositoryTypeOrm.d.ts +0 -8
- package/dist/test/relations/roles/roles.repositoryTypeOrm.js +0 -14
- package/dist/test/relations/roles/roles_user.dto.d.ts +0 -5
- package/dist/test/relations/roles/roles_user.dto.js +0 -12
- package/dist/test/relations/roles/roles_user.entity.d.ts +0 -5
- package/dist/test/relations/roles/roles_user.entity.js +0 -23
- package/dist/test/relations/roles/roles_users.repositoryTypeOrm.d.ts +0 -6
- package/dist/test/relations/roles/roles_users.repositoryTypeOrm.js +0 -11
- package/dist/test/relations/user/user.dto.d.ts +0 -5
- package/dist/test/relations/user/user.dto.js +0 -12
- package/dist/test/relations/user/user.entity.d.ts +0 -14
- package/dist/test/relations/user/user.entity.js +0 -56
- package/dist/test/relations/user/user.repositoryTypeOrm.d.ts +0 -10
- package/dist/test/relations/user/user.repositoryTypeOrm.js +0 -16
package/README.md
CHANGED
|
@@ -12,20 +12,38 @@
|
|
|
12
12
|
<img src="https://docs.goatlab.io/logo.png" alt="Logo" width="150" height="150">
|
|
13
13
|
</a>
|
|
14
14
|
|
|
15
|
-
<h3 align="center">GOAT-FLUENT</h3>
|
|
15
|
+
<h3 align="center">GOAT - FLUENT-FORM.IO</h3>
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
18
|
-
|
|
18
|
+
Fluent - Time Saving (TS) utils
|
|
19
19
|
<br />
|
|
20
|
-
<a href="https://docs.goatlab.io/#/0.
|
|
20
|
+
<a href="https://docs.goatlab.io/#/0.7.x/fluent/fluent"><strong>Explore the docs »</strong></a>
|
|
21
21
|
<br />
|
|
22
22
|
<br />
|
|
23
|
-
<a href="https://codesandbox.io/s/goat-nestjs-tytmv?file=/src/main.ts">View Demo</a>
|
|
24
23
|
·
|
|
25
24
|
<a href="https://github.com/goat-io/fluent/issues">Report Bug</a>
|
|
26
25
|
·
|
|
27
26
|
<a href="https://github.com/goat-io/fluent/issues">Request Feature</a>
|
|
28
27
|
</p>
|
|
28
|
+
</p>
|
|
29
29
|
</p>
|
|
30
30
|
|
|
31
31
|
# Goat - Fluent
|
|
32
|
+
|
|
33
|
+
Fluent query interface for Multiple database types and helpers for fast API generation and general App building.
|
|
34
|
+
|
|
35
|
+
## Supported Databases
|
|
36
|
+
|
|
37
|
+
1. Form.io
|
|
38
|
+
|
|
39
|
+
### Installing
|
|
40
|
+
|
|
41
|
+
To install this package in your project, you can use the following command within your terminal.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
yarn add @goatlab/fluent-formio
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Documentation
|
|
48
|
+
|
|
49
|
+
To learn how to use this visit the [Goat Docs](https://docs.goatlab.io/#/0.7.x/fluent/fluent)
|
|
@@ -1,37 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
interface IFormioConnector {
|
|
4
|
-
baseEndPoint: string;
|
|
5
|
-
token?: string;
|
|
6
|
-
}
|
|
7
|
-
export declare class Formioconnector<ModelDTO = BaseDataElement, InputDTO = ModelDTO, OutputDTO = ModelDTO> extends BaseConnector<ModelDTO, InputDTO, OutputDTO> implements FluentConnectorInterface<InputDTO, OutputDTO> {
|
|
8
|
-
private baseEndPoint;
|
|
9
|
-
private authToken;
|
|
10
|
-
constructor({ baseEndPoint, token }: IFormioConnector);
|
|
11
|
-
get(): Promise<OutputDTO[]>;
|
|
12
|
-
all(): Promise<OutputDTO[]>;
|
|
13
|
-
find(filter: Filter): Promise<OutputDTO[]>;
|
|
14
|
-
paginate(paginator: Paginator): Promise<PaginatedData<OutputDTO>>;
|
|
15
|
-
insert(data: InputDTO): Promise<OutputDTO>;
|
|
16
|
-
insertMany(data: InputDTO[]): Promise<OutputDTO[]>;
|
|
17
|
-
updateById(id: string, data: InputDTO): Promise<OutputDTO>;
|
|
18
|
-
truncate({ sure }: Sure): Promise<void>;
|
|
19
|
-
deleteById(id: string): Promise<string>;
|
|
20
|
-
findById(id: string): Promise<OutputDTO>;
|
|
21
|
-
private numberOfRows;
|
|
22
|
-
private getToken;
|
|
23
|
-
private getUrl;
|
|
24
|
-
private getHeaders;
|
|
25
|
-
private getSpacer;
|
|
26
|
-
private httpGET;
|
|
27
|
-
private httpPOST;
|
|
28
|
-
private httpPUT;
|
|
29
|
-
private httpDelete;
|
|
30
|
-
private getTokenType;
|
|
31
|
-
private getFilters;
|
|
32
|
-
private getLimit;
|
|
33
|
-
private getSkip;
|
|
34
|
-
private getOrder;
|
|
35
|
-
private getSelect;
|
|
36
|
-
}
|
|
37
|
-
export {};
|
|
1
|
+
declare const Formioconnector: {};
|
|
2
|
+
export { Formioconnector };
|
package/dist/FormioConnector.js
CHANGED
|
@@ -1,344 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Formioconnector = void 0;
|
|
4
|
-
const
|
|
5
|
-
const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
6
|
-
const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
|
|
7
|
-
const isSameOrAfter_1 = tslib_1.__importDefault(require("dayjs/plugin/isSameOrAfter"));
|
|
8
|
-
const jwt_decode_1 = tslib_1.__importDefault(require("jwt-decode"));
|
|
9
|
-
const await_to_js_1 = tslib_1.__importDefault(require("await-to-js"));
|
|
10
|
-
const js_utils_1 = require("@goatlab/js-utils");
|
|
11
|
-
const fluent_1 = require("@goatlab/fluent");
|
|
12
|
-
dayjs_1.default.extend(isSameOrAfter_1.default);
|
|
13
|
-
const GoatExtenderAttributes = [
|
|
14
|
-
'id',
|
|
15
|
-
'owner',
|
|
16
|
-
'roles',
|
|
17
|
-
'created',
|
|
18
|
-
'modified',
|
|
19
|
-
'_ngram'
|
|
20
|
-
];
|
|
21
|
-
class Formioconnector extends fluent_1.BaseConnector {
|
|
22
|
-
constructor({ baseEndPoint, token }) {
|
|
23
|
-
super();
|
|
24
|
-
this.baseEndPoint = '';
|
|
25
|
-
this.authToken = '';
|
|
26
|
-
this.baseEndPoint = baseEndPoint;
|
|
27
|
-
this.authToken = token;
|
|
28
|
-
}
|
|
29
|
-
async get() {
|
|
30
|
-
const [error, result] = await (0, await_to_js_1.default)(this.httpGET());
|
|
31
|
-
if (error) {
|
|
32
|
-
console.log(error);
|
|
33
|
-
throw new Error('Error while getting submissions');
|
|
34
|
-
}
|
|
35
|
-
const data = result.data.map(r => {
|
|
36
|
-
const response = {
|
|
37
|
-
...{
|
|
38
|
-
id: r.id,
|
|
39
|
-
owner: r.owner,
|
|
40
|
-
roles: r.roles,
|
|
41
|
-
created: r.created,
|
|
42
|
-
modified: r.modified
|
|
43
|
-
},
|
|
44
|
-
...r.data
|
|
45
|
-
};
|
|
46
|
-
return response;
|
|
47
|
-
});
|
|
48
|
-
let orderedResults = this.jsApplySelect(data);
|
|
49
|
-
orderedResults = this.jsApplyOrderBy(orderedResults);
|
|
50
|
-
this.reset();
|
|
51
|
-
return orderedResults;
|
|
52
|
-
}
|
|
53
|
-
async all() {
|
|
54
|
-
return this.get();
|
|
55
|
-
}
|
|
56
|
-
async find(filter) {
|
|
57
|
-
return this.get();
|
|
58
|
-
}
|
|
59
|
-
async paginate(paginator) {
|
|
60
|
-
const numberOfRows = await this.numberOfRows();
|
|
61
|
-
this.offset((paginator.page - 1) * paginator.perPage).take(paginator.perPage);
|
|
62
|
-
const results = {
|
|
63
|
-
data: await this.get(),
|
|
64
|
-
current_page: paginator.page,
|
|
65
|
-
first_page_url: '',
|
|
66
|
-
prev_page_url: '',
|
|
67
|
-
next_page_url: '',
|
|
68
|
-
per_page: paginator.perPage,
|
|
69
|
-
path: '',
|
|
70
|
-
total: Number(numberOfRows)
|
|
71
|
-
};
|
|
72
|
-
this.reset();
|
|
73
|
-
return results;
|
|
74
|
-
}
|
|
75
|
-
async insert(data) {
|
|
76
|
-
const [error, result] = await (0, await_to_js_1.default)(this.httpPOST(data));
|
|
77
|
-
if (error) {
|
|
78
|
-
console.log(error);
|
|
79
|
-
throw new Error('Cannot insert data');
|
|
80
|
-
}
|
|
81
|
-
const response = {
|
|
82
|
-
...{
|
|
83
|
-
id: result.data.id,
|
|
84
|
-
owner: result.data.owner,
|
|
85
|
-
roles: result.data.roles,
|
|
86
|
-
created: result.data.created,
|
|
87
|
-
modified: result.data.modified
|
|
88
|
-
},
|
|
89
|
-
...result.data.data
|
|
90
|
-
};
|
|
91
|
-
this.reset();
|
|
92
|
-
return response;
|
|
93
|
-
}
|
|
94
|
-
async insertMany(data) {
|
|
95
|
-
const insertedElements = [];
|
|
96
|
-
for (const element of data) {
|
|
97
|
-
const inserted = await this.insert({
|
|
98
|
-
...element
|
|
99
|
-
});
|
|
100
|
-
insertedElements.push(inserted);
|
|
101
|
-
}
|
|
102
|
-
this.reset();
|
|
103
|
-
return insertedElements;
|
|
104
|
-
}
|
|
105
|
-
async updateById(id, data) {
|
|
106
|
-
if (!id) {
|
|
107
|
-
throw new Error('Formio connector error. Cannot update a Model without id key');
|
|
108
|
-
}
|
|
109
|
-
if (id.includes('_local')) {
|
|
110
|
-
throw new Error('Formio connector error. Cannot update a local document');
|
|
111
|
-
}
|
|
112
|
-
const [error, result] = await (0, await_to_js_1.default)(this.httpPUT(id, data));
|
|
113
|
-
if (error) {
|
|
114
|
-
console.log(error);
|
|
115
|
-
throw new Error('Cannot insert data');
|
|
116
|
-
}
|
|
117
|
-
const response = result.data;
|
|
118
|
-
this.reset();
|
|
119
|
-
return response;
|
|
120
|
-
}
|
|
121
|
-
async truncate({ sure }) {
|
|
122
|
-
}
|
|
123
|
-
async deleteById(id) {
|
|
124
|
-
const [error, removed] = await (0, await_to_js_1.default)(this.httpDelete(id));
|
|
125
|
-
if (error) {
|
|
126
|
-
console.log(error);
|
|
127
|
-
throw new Error(`FormioConnector: Could not delete ${id}`);
|
|
128
|
-
}
|
|
129
|
-
this.reset();
|
|
130
|
-
return removed.data;
|
|
131
|
-
}
|
|
132
|
-
async findById(id) {
|
|
133
|
-
const [error, data] = await (0, await_to_js_1.default)(this.first());
|
|
134
|
-
if (error) {
|
|
135
|
-
console.log(error);
|
|
136
|
-
throw new Error('Find() could not get remote data');
|
|
137
|
-
}
|
|
138
|
-
this.reset();
|
|
139
|
-
return data;
|
|
140
|
-
}
|
|
141
|
-
async numberOfRows() {
|
|
142
|
-
let url = this.getUrl();
|
|
143
|
-
const headers = this.getHeaders();
|
|
144
|
-
const filters = this.getFilters();
|
|
145
|
-
const limit = '?limit=1';
|
|
146
|
-
const skip = this.getSkip();
|
|
147
|
-
const order = this.getOrder();
|
|
148
|
-
const select = this.getSelect();
|
|
149
|
-
const spacer = '';
|
|
150
|
-
url = url + spacer + limit;
|
|
151
|
-
url = filters ? url + this.getSpacer(url) + filters : url;
|
|
152
|
-
url = skip ? url + this.getSpacer(url) + skip : url;
|
|
153
|
-
url = order ? url + this.getSpacer(url) + order : url;
|
|
154
|
-
url = select ? url + this.getSpacer(url) + select : url;
|
|
155
|
-
const isOnline = true;
|
|
156
|
-
if (!isOnline) {
|
|
157
|
-
throw new Error(`Cannot make get request to ${url}.You are not online`);
|
|
158
|
-
}
|
|
159
|
-
const response = await axios_1.default.get(url, { headers });
|
|
160
|
-
return response.headers['content-range'].split('/')[1];
|
|
161
|
-
}
|
|
162
|
-
getToken() {
|
|
163
|
-
if (typeof localStorage === 'undefined') {
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
const token = localStorage.getItem('formioToken');
|
|
167
|
-
if (!token || this.getTokenType(token) === 'x-jwt-token') {
|
|
168
|
-
return token;
|
|
169
|
-
}
|
|
170
|
-
const decodedToken = (0, jwt_decode_1.default)(token);
|
|
171
|
-
const expDate = dayjs_1.default.unix(decodedToken.exp);
|
|
172
|
-
if ((0, dayjs_1.default)().isSameOrAfter(expDate)) {
|
|
173
|
-
js_utils_1.Events.emit('GOAT:SESSION:EXPIRED', {
|
|
174
|
-
data: expDate,
|
|
175
|
-
text: 'Session expired'
|
|
176
|
-
});
|
|
177
|
-
throw new Error('Token has expired.');
|
|
178
|
-
}
|
|
179
|
-
return token;
|
|
180
|
-
}
|
|
181
|
-
getUrl() {
|
|
182
|
-
const baseUrl = `${this.baseEndPoint}/submission`;
|
|
183
|
-
return baseUrl;
|
|
184
|
-
}
|
|
185
|
-
getHeaders() {
|
|
186
|
-
const headers = {};
|
|
187
|
-
let token = {};
|
|
188
|
-
if (typeof localStorage !== 'undefined') {
|
|
189
|
-
token = this.getToken();
|
|
190
|
-
}
|
|
191
|
-
if (this.authToken || this.authToken === '') {
|
|
192
|
-
token = this.authToken;
|
|
193
|
-
}
|
|
194
|
-
if (!token) {
|
|
195
|
-
return headers;
|
|
196
|
-
}
|
|
197
|
-
const type = this.getTokenType(token);
|
|
198
|
-
headers[type] = token;
|
|
199
|
-
return headers;
|
|
200
|
-
}
|
|
201
|
-
getSpacer(url) {
|
|
202
|
-
return url.substr(url.length - 1) === '&' ? '' : '&';
|
|
203
|
-
}
|
|
204
|
-
async httpGET() {
|
|
205
|
-
let url = this.getUrl();
|
|
206
|
-
const headers = this.getHeaders();
|
|
207
|
-
const filters = this.getFilters();
|
|
208
|
-
const limit = this.getLimit();
|
|
209
|
-
const skip = this.getSkip();
|
|
210
|
-
const order = this.getOrder();
|
|
211
|
-
const select = this.getSelect();
|
|
212
|
-
const spacer = '';
|
|
213
|
-
url = url + spacer + limit;
|
|
214
|
-
url = filters ? url + this.getSpacer(url) + filters : url;
|
|
215
|
-
url = skip ? url + this.getSpacer(url) + skip : url;
|
|
216
|
-
url = order ? url + this.getSpacer(url) + order : url;
|
|
217
|
-
url = select ? url + this.getSpacer(url) + select : url;
|
|
218
|
-
const isOnline = true;
|
|
219
|
-
if (!isOnline) {
|
|
220
|
-
throw new Error(`Cannot make get request to ${url}.You are not online`);
|
|
221
|
-
}
|
|
222
|
-
return axios_1.default.get(url, { headers });
|
|
223
|
-
}
|
|
224
|
-
async httpPOST(data) {
|
|
225
|
-
const url = this.getUrl();
|
|
226
|
-
const headers = this.getHeaders();
|
|
227
|
-
const isOnline = true;
|
|
228
|
-
if (!isOnline) {
|
|
229
|
-
throw new Error(`Cannot make request post to ${url}.You are not online`);
|
|
230
|
-
}
|
|
231
|
-
return axios_1.default.post(url, { data }, { headers });
|
|
232
|
-
}
|
|
233
|
-
async httpPUT(id, data) {
|
|
234
|
-
const isOnline = true;
|
|
235
|
-
const url = `${this.getUrl()}/${id}`;
|
|
236
|
-
const headers = this.getHeaders();
|
|
237
|
-
if (!isOnline) {
|
|
238
|
-
throw new Error(`Cannot make request post to ${url}.You are not online`);
|
|
239
|
-
}
|
|
240
|
-
return axios_1.default.put(url, { data }, { headers });
|
|
241
|
-
}
|
|
242
|
-
httpDelete(id) {
|
|
243
|
-
const headers = this.getHeaders();
|
|
244
|
-
const url = `${this.getUrl()}/${id}`;
|
|
245
|
-
return axios_1.default.delete(url, { headers });
|
|
246
|
-
}
|
|
247
|
-
getTokenType(token) {
|
|
248
|
-
return token.length > 32 ? 'x-jwt-token' : 'x-token';
|
|
249
|
-
}
|
|
250
|
-
getFilters() {
|
|
251
|
-
const filter = this.whereArray;
|
|
252
|
-
if (!filter || filter.length === 0) {
|
|
253
|
-
return undefined;
|
|
254
|
-
}
|
|
255
|
-
let filterQuery = '';
|
|
256
|
-
filter.forEach(condition => {
|
|
257
|
-
let valueString = '';
|
|
258
|
-
const element = GoatExtenderAttributes.includes(condition[0])
|
|
259
|
-
? condition[0]
|
|
260
|
-
: `data.${condition[0]}`;
|
|
261
|
-
const operator = condition[1];
|
|
262
|
-
const value = condition[2];
|
|
263
|
-
switch (operator) {
|
|
264
|
-
case '=':
|
|
265
|
-
filterQuery = `${filterQuery + element}=${value}&`;
|
|
266
|
-
break;
|
|
267
|
-
case '!=':
|
|
268
|
-
filterQuery = `${filterQuery + element}__ne=${value}&`;
|
|
269
|
-
break;
|
|
270
|
-
case '>':
|
|
271
|
-
filterQuery = `${filterQuery + element}__gt=${value}&`;
|
|
272
|
-
break;
|
|
273
|
-
case '>=':
|
|
274
|
-
filterQuery = `${filterQuery + element}__gte=${value}&`;
|
|
275
|
-
break;
|
|
276
|
-
case '<':
|
|
277
|
-
filterQuery = `${filterQuery + element}__lt=${value}&`;
|
|
278
|
-
break;
|
|
279
|
-
case '<=':
|
|
280
|
-
filterQuery = `${filterQuery + element}__lte=${value}&`;
|
|
281
|
-
break;
|
|
282
|
-
case 'in':
|
|
283
|
-
valueString = '';
|
|
284
|
-
value.forEach((val, index, array) => {
|
|
285
|
-
valueString =
|
|
286
|
-
index === array.length - 1
|
|
287
|
-
? valueString + val
|
|
288
|
-
: `${valueString + val},`;
|
|
289
|
-
});
|
|
290
|
-
filterQuery = `${filterQuery + element}__in=${valueString}&`;
|
|
291
|
-
break;
|
|
292
|
-
case 'nin':
|
|
293
|
-
valueString = '';
|
|
294
|
-
value.forEach((val, index, array) => {
|
|
295
|
-
valueString =
|
|
296
|
-
index === array.length - 1
|
|
297
|
-
? valueString + val
|
|
298
|
-
: `${valueString + val},`;
|
|
299
|
-
});
|
|
300
|
-
filterQuery = `${filterQuery + element}__nin=${valueString}&`;
|
|
301
|
-
break;
|
|
302
|
-
case 'exists':
|
|
303
|
-
filterQuery = `${filterQuery + element}__exists=${true}&`;
|
|
304
|
-
break;
|
|
305
|
-
case '!exists':
|
|
306
|
-
filterQuery = `${filterQuery + element}__exists=${false}&`;
|
|
307
|
-
break;
|
|
308
|
-
case 'regex':
|
|
309
|
-
filterQuery = `${filterQuery + element}__regex=${value}&`;
|
|
310
|
-
break;
|
|
311
|
-
}
|
|
312
|
-
});
|
|
313
|
-
return filterQuery.substring(0, filterQuery.length - 1);
|
|
314
|
-
}
|
|
315
|
-
getLimit() {
|
|
316
|
-
const limit = '?limit=';
|
|
317
|
-
if (!this.limitNumber || this.limitNumber === 0) {
|
|
318
|
-
this.limitNumber = 50;
|
|
319
|
-
}
|
|
320
|
-
return `${limit}${this.limitNumber}`;
|
|
321
|
-
}
|
|
322
|
-
getSkip() {
|
|
323
|
-
const skip = 'skip=';
|
|
324
|
-
if (!this.offsetNumber) {
|
|
325
|
-
this.offsetNumber = 0;
|
|
326
|
-
}
|
|
327
|
-
return skip + this.offsetNumber;
|
|
328
|
-
}
|
|
329
|
-
getOrder() {
|
|
330
|
-
const order = 'sort=';
|
|
331
|
-
const or = this.orderByArray[1] === 'DESC' ? '-' : '';
|
|
332
|
-
return order + or + this.orderByArray[0];
|
|
333
|
-
}
|
|
334
|
-
getSelect() {
|
|
335
|
-
let select = this.selectArray;
|
|
336
|
-
select = select.map(e => e.split(' as ')[0]);
|
|
337
|
-
if (!select) {
|
|
338
|
-
return;
|
|
339
|
-
}
|
|
340
|
-
select = select.map(e => GoatExtenderAttributes.includes(e) ? e : `data.${e}`);
|
|
341
|
-
return `select=${select.join(',')}`;
|
|
342
|
-
}
|
|
343
|
-
}
|
|
4
|
+
const Formioconnector = {};
|
|
344
5
|
exports.Formioconnector = Formioconnector;
|