ng2-rest-swagger-generator 19.0.1 → 19.0.3

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.
@@ -0,0 +1,387 @@
1
+ import { /* */ /* */ _ } from 'tnp-core/browser'; /* */
2
+ import { CoreHelpers as TnpHelpers } from 'tnp-core/browser';
3
+ export class HelpersSwagger extends TnpHelpers {
4
+ static { this.SYMBOL = {
5
+ INDEX_SWG: Symbol(),
6
+ OUTPUT_FOLDER: Symbol()
7
+ }; }
8
+ static preparePaths(apis, outputBase) {
9
+ this.output = `${process.cwd()}/${outputBase}`;
10
+ this.apis = apis;
11
+ }
12
+ static prepareModel(swg, indexSwg, isHttpsEnable) {
13
+ swg[this.SYMBOL.INDEX_SWG] = indexSwg;
14
+ swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`;
15
+ if (!swg.basePath) {
16
+ swg.basePath = '';
17
+ }
18
+ }
19
+ /* */
20
+ /* */
21
+ /* */
22
+ /* */
23
+ /* */
24
+ /* */
25
+ /* */
26
+ /* */
27
+ /* */
28
+ /* */
29
+ /* */
30
+ /* */
31
+ /* */
32
+ /* */
33
+ /* */
34
+ /* */
35
+ /* */
36
+ /* */
37
+ /* */
38
+ /* */
39
+ /* */
40
+ /* */
41
+ static get serviceFromTag() {
42
+ const self = this;
43
+ return {
44
+ allClassNames() {
45
+ const names = [];
46
+ self.apis.map(swg => {
47
+ swg.tags.forEach(tag => {
48
+ names.push(self.serviceFromTag.className(swg, tag));
49
+ });
50
+ });
51
+ return names;
52
+ },
53
+ className(swg, tag) {
54
+ const groupFolderName = self.groupFromJSON.folderName(swg);
55
+ const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';
56
+ return `${groupFolderName}${className.replace(/\//g, '')}`;
57
+ },
58
+ absoluteFilePath(swg, tag) {
59
+ return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;
60
+ }
61
+ };
62
+ }
63
+ static get endpoints() {
64
+ return this.apis.map(swg => {
65
+ return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`;
66
+ });
67
+ }
68
+ static get absolutePath() {
69
+ const self = this;
70
+ return {
71
+ get output() {
72
+ return self.output;
73
+ },
74
+ get PathFile_index_ts() {
75
+ const APIpath = self.output;
76
+ return `${APIpath}/index.ts`;
77
+ },
78
+ get PathFile_module_ts() {
79
+ const APIpath = self.output;
80
+ return `${APIpath}/module.ts`;
81
+ },
82
+ get PathFolder_services() {
83
+ const APIpath = self.output;
84
+ return `${APIpath}/services`;
85
+ },
86
+ get PathFile_services_index_ts() {
87
+ return `${self.absolutePath.PathFolder_services}/index.ts`;
88
+ },
89
+ PathFolder_services_groupName(swg) {
90
+ const groupFolderName = self.groupFromJSON.folderName(swg);
91
+ return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;
92
+ },
93
+ PathFile_services_groupName_index_ts(swg) {
94
+ return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;
95
+ },
96
+ PathFile_services_groupNAme_serviceName_ts(swg, tag) {
97
+ const serviceFileName = self.serviceFromTag.className(swg, tag);
98
+ return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;
99
+ }
100
+ };
101
+ }
102
+ static get groupFromJSON() {
103
+ const self = this;
104
+ return {
105
+ get allGroupNames() {
106
+ const names = [];
107
+ self.apis.map(swg => {
108
+ names.push(self.groupFromJSON.folderName(swg));
109
+ });
110
+ return names;
111
+ },
112
+ folderName(swg) {
113
+ const basePath = swg.basePath;
114
+ const index = swg[self.SYMBOL.INDEX_SWG];
115
+ return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));
116
+ }
117
+ };
118
+ }
119
+ static findTags(swg) {
120
+ const tags = [];
121
+ Object.keys(swg.paths).forEach(p => {
122
+ Object.keys(swg.paths[p]).forEach(m => {
123
+ const a = swg.paths[p][m];
124
+ if (_.isArray(a.tags)) {
125
+ a.tags.forEach(tag => {
126
+ if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore
127
+ tags.push({ name: tag });
128
+ }
129
+ });
130
+ }
131
+ });
132
+ });
133
+ return tags;
134
+ }
135
+ /**
136
+ * To generate get/books/{id} => get_books__id_
137
+ */
138
+ static cleanPath(path) {
139
+ return path.replace(/{/g, "_").replace(/}/g, "_").replace(/\//g, "_").replace(/-/g, "_");
140
+ }
141
+ static cleanPathModel(pathModel) {
142
+ return pathModel.replace(/\/{/g, '/:').replace(/}/g, '');
143
+ }
144
+ static swaggerTypeToJS(type, itemsType = 'any') {
145
+ return (type === 'integer') ? 'number'
146
+ : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`
147
+ : (type === 'file') ? 'any' : type;
148
+ }
149
+ static getObjectDefinition(ref, swg, deep = 0) {
150
+ if (deep == 1)
151
+ return '';
152
+ if (!ref) {
153
+ console.log('Bad json $ref inside swagger');
154
+ return '';
155
+ }
156
+ let res = '';
157
+ ref = ref.replace('#/', '').replace(/\//g, '.');
158
+ let obj = _.get(swg, ref);
159
+ _.forOwn(obj.properties, (v, k) => {
160
+ if (v.$ref && typeof v.$ref === "string") {
161
+ res += k + ":{" + this.getObjectDefinition(v.$ref, swg, deep++) + "};\n";
162
+ }
163
+ else if (v.schema && v.schema.$ref && typeof v.schema.$ref === "string") {
164
+ res += k + ":{" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + "};\n";
165
+ }
166
+ else if (v.items && v.items.$ref && typeof v.items.$ref === "string" && v.type && v.type === 'array') {
167
+ res += k + ":{" + this.getObjectDefinition(v.items.$ref, swg, deep++) + "}[];\n";
168
+ }
169
+ else if (v.items && v.items.$ref && typeof v.items.$ref === "string") {
170
+ res += k + ":{" + this.getObjectDefinition(v.items.$ref, swg, deep++) + "};\n";
171
+ }
172
+ else {
173
+ let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0);
174
+ let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)
175
+ ? v.enum.map(e => '"' + e + '"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');
176
+ res += k + (!isRequired ? '?' : "") + ":" + type + ";\n";
177
+ }
178
+ });
179
+ return res;
180
+ }
181
+ /**
182
+ * private pathes = {
183
+ * get_all_companies: new SimpleResource<
184
+ * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),
185
+ * get_byid_companies: new SimpleResource<
186
+ * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)
187
+ * }
188
+ */
189
+ static getAngularPrivatePathesByTag(swg, tag) {
190
+ let res = [];
191
+ let base = swg.basePath.replace('/', '');
192
+ let pathes = {};
193
+ _.forOwn(swg.paths, (v, k) => {
194
+ _.forOwn(v, (v2, k2) => {
195
+ if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {
196
+ let resp = v2.responses['200'] && v2.responses['200'].schema;
197
+ if (pathes[k] === void 0)
198
+ pathes[k] = {}; // @ts-ignore
199
+ let type = this.getResponseType(resp, swg);
200
+ if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['
201
+ && !pathes[k]['array']) {
202
+ pathes[k]['array'] = type;
203
+ }
204
+ else if (k2 !== 'delete' && !pathes[k]['single']) {
205
+ pathes[k]['single'] = type;
206
+ }
207
+ }
208
+ });
209
+ });
210
+ let pathResources = [];
211
+ _.forOwn(pathes, (v, p) => {
212
+ pathResources.push({
213
+ clean_path: this.cleanPath(p),
214
+ model: this.cleanPathModel(p),
215
+ endpoint: swg.basePath,
216
+ singleModelType: !v['single'] ? 'any' : v['single'],
217
+ multipleModelType: !v['array'] ? 'any' : v['array'],
218
+ queryParamsType: 'any',
219
+ pathParamsType: 'any'
220
+ });
221
+ });
222
+ pathResources.forEach(p => {
223
+ res.push(`${p.clean_path}: new SimpleResource<\n${p.singleModelType},\n${p.multipleModelType}\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);
224
+ });
225
+ return `private pathes = { \n${res.join(',\n')}\n};`;
226
+ }
227
+ /*
228
+ schema": {
229
+ "type": "array",
230
+ "items": {
231
+ "$ref": "#/definitions/CompanyDTO"
232
+ }
233
+ }
234
+
235
+ "schema": {
236
+ "$ref": "#/definitions/CompanyDTO"
237
+ }
238
+ */
239
+ static getResponseType(o, swg) {
240
+ let res = '{} | any';
241
+ if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {
242
+ res = "{" + this.getObjectDefinition(o.$ref, swg) + "}";
243
+ }
244
+ else if (o && o.type === 'array' && o.items && o.items.$ref &&
245
+ typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {
246
+ res = "{" + this.getObjectDefinition(o.items.$ref, swg) + "}[]";
247
+ }
248
+ return res;
249
+ }
250
+ /* */
251
+ /* */
252
+ /* */
253
+ /* */
254
+ /* */
255
+ /* */
256
+ /* */
257
+ /* */
258
+ /* */
259
+ /* */
260
+ /* */
261
+ /* */
262
+ /* */
263
+ /* */
264
+ /* */
265
+ /* */
266
+ /* */
267
+ /* */
268
+ /* */
269
+ /* */
270
+ /* */
271
+ /* */
272
+ /* */
273
+ /* */
274
+ /* */
275
+ /* */
276
+ /* */
277
+ /* */
278
+ /* */
279
+ /* */
280
+ /* */
281
+ /* */
282
+ /* */
283
+ /* */
284
+ /* */
285
+ /* */
286
+ /* */
287
+ /* */
288
+ /* */
289
+ /* */
290
+ /* */
291
+ /* */
292
+ /* */
293
+ /* */
294
+ /* */
295
+ /* */
296
+ /* */
297
+ /* */
298
+ /* */
299
+ /* */
300
+ /* */
301
+ /* */
302
+ /* */
303
+ /* */
304
+ /* */
305
+ /* */
306
+ /* */
307
+ /* */
308
+ /* */
309
+ /* */
310
+ /* */
311
+ /* */
312
+ /* */
313
+ /* */
314
+ /* */
315
+ /* */
316
+ /* */
317
+ /* */
318
+ /* */
319
+ /* */
320
+ /* */
321
+ /* */
322
+ /* */
323
+ /* */
324
+ /* */
325
+ /* */
326
+ /* */
327
+ /* */
328
+ /* */
329
+ /* */
330
+ /* */
331
+ /* */
332
+ /* */
333
+ /* */
334
+ /* */
335
+ /* */
336
+ /* */
337
+ /* */
338
+ /* */
339
+ /* */
340
+ /* */
341
+ /* */
342
+ /* */
343
+ /* */
344
+ /* */
345
+ /* */
346
+ /* */
347
+ /* */
348
+ /* */
349
+ /* */
350
+ /* */
351
+ /* */
352
+ /* */
353
+ /* */
354
+ /* */
355
+ /* */
356
+ /* */
357
+ /* */
358
+ /* */
359
+ /* */
360
+ /* */
361
+ /* */
362
+ /* */
363
+ /* */
364
+ /* */
365
+ /* */
366
+ /* */
367
+ /* */
368
+ /* */
369
+ /* */
370
+ /* */
371
+ /* */
372
+ /* */
373
+ /* */
374
+ /* */
375
+ /* */
376
+ /* */
377
+ /* */
378
+ /* */
379
+ /* */
380
+ static { this.count1 = 0; }
381
+ static recreateSummary(summary) {
382
+ return summary;
383
+ }
384
+ }
385
+ ;
386
+ ({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/helpers.ts
387
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L25nMi1yZXN0LXN3YWdnZXItZ2VuZXJhdG9yL3Byb2plY3RzL25nMi1yZXN0LXN3YWdnZXItZ2VuZXJhdG9yL3NyYy9saWIvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQVUsS0FBSyxDQUFDLEtBQUssQ0FBTSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQyxDQUFBLEtBQUs7QUFRbkUsT0FBTyxFQUFFLFdBQVcsSUFBSSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUk3RCxNQUFNLE9BQU8sY0FBZSxTQUFRLFVBQVU7YUFFckMsV0FBTSxHQUFHO1FBQ2QsU0FBUyxFQUFFLE1BQU0sRUFBRTtRQUNuQixhQUFhLEVBQUUsTUFBTSxFQUFFO0tBQ3hCLENBQUE7SUFJRCxNQUFNLENBQUMsWUFBWSxDQUFDLElBQW1DLEVBQUUsVUFBa0I7UUFDekUsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQTtRQUM5QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFnQyxFQUFFLFFBQWdCLEVBQUUsYUFBc0I7UUFDNUYsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBRXRDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFBO1FBQ3BHLElBQUksQ0FBQyxHQUFHLENB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QUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssT0FBTyxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQzNELE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ2pFLEdBQUcsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUVsRSxDQUFDO1FBSUQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUgsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUdMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSzthQUVZLFdBQU0sR0FBRyxDQUFDLENBQUM7SUFFMUIsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFlO1FBSXBDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7O0FBZ0RGLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsc0VBQXNFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgICBwYXRoLCAvKiAqLyAvKiAqLyAgICAgIF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJzsvKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG5cbmltcG9ydCB7IE1vZGVscyB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IENvcmVIZWxwZXJzIGFzIFRucEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtaGVscGVycy9icm93c2VyJztcblxuXG5leHBvcnQgY2xhc3MgSGVscGVyc1N3YWdnZXIgZXh0ZW5kcyBUbnBIZWxwZXJzIHtcblxuICBzdGF0aWMgU1lNQk9MID0ge1xuICAgIElOREVYX1NXRzogU3ltYm9sKCksXG4gICAgT1VUUFVUX0ZPTERFUjogU3ltYm9sKClcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG91dHB1dDogc3RyaW5nO1xuICBwcml2YXRlIHN0YXRpYyBhcGlzOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWxbXTtcbiAgc3RhdGljIHByZXBhcmVQYXRocyhhcGlzOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWxbXSwgb3V0cHV0QmFzZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vdXRwdXQgPSBgJHtwcm9jZXNzLmN3ZCgpfS8ke291dHB1dEJhc2V9YFxuICAgIHRoaXMuYXBpcyA9IGFwaXM7XG4gIH1cblxuICBzdGF0aWMgcHJlcGFyZU1vZGVsKHN3ZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlck1vZGVsLCBpbmRleFN3ZzogbnVtYmVyLCBpc0h0dHBzRW5hYmxlOiBib29sZWFuKSB7XG4gICAgc3dnW3RoaXMuU1lNQk9MLklOREVYX1NXR10gPSBpbmRleFN3ZztcblxuICAgIHN3Zy5ob3N0ID0gc3dnLmhvc3QgJiYgKGlzSHR0cHNFbmFibGUgPyAnaHR0cHMnIDogJ2h0dHAnKSArIGA6Ly8ke3N3Zy5ob3N0LnJlcGxhY2UoLzpbMC05XSovZywgJycpfWBcbiAgICBpZiAoIXN3Zy5iYXNlUGF0aCkge1xuICAgICAgc3dnLmJhc2VQYXRoID0gJydcbiAgICB9XG4gIH1cblxuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG5cblxuICBzdGF0aWMgZ2V0IHNlcnZpY2VGcm9tVGFnKCkge1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG5cbiAgICByZXR1cm4ge1xuICAgICAgYWxsQ2xhc3NOYW1lcygpIHtcbiAgICAgICAgY29uc3QgbmFtZXMgPSBbXVxuICAgICAgICBzZWxmLmFwaXMubWFwKHN3ZyA9PiB7XG4gICAgICAgICAgc3dnLnRhZ3MuZm9yRWFjaCh0YWcgPT4geyAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICBuYW1lcy5wdXNoKHNlbGYuc2VydmljZUZyb21UYWcuY2xhc3NOYW1lKHN3ZywgdGFnKSlcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gbmFtZXM7XG4gICAgICB9LFxuICAgICAgY2xhc3NOYW1lKHN3ZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlck1vZGVsLCB0YWc6IE1vZGVscy5Td2FnZ2VyLlN3YWdnZXJUYWcpIHtcbiAgICAgICAgY29uc3QgZ3JvdXBGb2xkZXJOYW1lID0gc2VsZi5ncm91cEZyb21KU09OLmZvbGRlck5hbWUoc3dnKVxuXG4gICAgICAgIGNvbnN0IGNsYXNzTmFtZSA9IF8udXBwZXJGaXJzdChfLmNhbWVsQ2FzZSh0YWcubmFtZSkpICsgJ1NlcnZpY2UnO1xuICAgICAgICByZXR1cm4gYCR7Z3JvdXBGb2xkZXJOYW1lfSR7Y2xhc3NOYW1lLnJlcGxhY2UoL1xcLy9nLCAnJyl9YDtcbiAgICAgIH0sXG4gICAgICBhYnNvbHV0ZUZpbGVQYXRoKHN3ZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlck1vZGVsLCB0YWc6IE1vZGVscy5Td2FnZ2VyLlN3YWdnZXJUYWcpIHtcblxuICAgICAgICByZXR1cm4gYCR7c2VsZi5hYnNvbHV0ZVBhdGguUGF0aEZvbGRlcl9zZXJ2aWNlc19ncm91cE5hbWUoc3dnKX0vJHtzZWxmLnNlcnZpY2VGcm9tVGFnLmNsYXNzTmFtZShzd2csIHRhZyl9LnRzYDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZ2V0IGVuZHBvaW50cygpIHtcbiAgICByZXR1cm4gdGhpcy5hcGlzLm1hcChzd2cgPT4ge1xuICAgICAgcmV0dXJuIGAke3RoaXMuZ3JvdXBGcm9tSlNPTi5mb2xkZXJOYW1lKHN3Zyl9Oicke3N3Zy5ob3N0fSdgXG4gICAgfSlcbiAgfVxuXG5cblxuICBzdGF0aWMgZ2V0IGFic29sdXRlUGF0aCgpIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcblxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGdldCBvdXRwdXQoKSB7XG4gICAgICAgIHJldHVybiBzZWxmLm91dHB1dDtcbiAgICAgIH0sXG5cbiAgICAgIGdldCBQYXRoRmlsZV9pbmRleF90cygpIHtcbiAgICAgICAgY29uc3QgQVBJcGF0aCA9IHNlbGYub3V0cHV0O1xuICAgICAgICByZXR1cm4gYCR7QVBJcGF0aH0vaW5kZXgudHNgO1xuICAgICAgfSxcbiAgICAgIGdldCBQYXRoRmlsZV9tb2R1bGVfdHMoKSB7XG4gICAgICAgIGNvbnN0IEFQSXBhdGggPSBzZWxmLm91dHB1dDtcbiAgICAgICAgcmV0dXJuIGAke0FQSXBhdGh9L21vZHVsZS50c2A7XG4gICAgICB9LFxuXG4gICAgICBnZXQgUGF0aEZvbGRlcl9zZXJ2aWNlcygpIHtcbiAgICAgICAgY29uc3QgQVBJcGF0aCA9IHNlbGYub3V0cHV0O1xuICAgICAgICByZXR1cm4gYCR7QVBJcGF0aH0vc2VydmljZXNgO1xuICAgICAgfSxcblxuICAgICAgZ2V0IFBhdGhGaWxlX3NlcnZpY2VzX2luZGV4X3RzKCkge1xuICAgICAgICByZXR1cm4gYCR7c2VsZi5hYnNvbHV0ZVBhdGguUGF0aEZvbGRlcl9zZXJ2aWNlc30vaW5kZXgudHNgO1xuICAgICAgfSxcblxuICAgICAgUGF0aEZvbGRlcl9zZXJ2aWNlc19ncm91cE5hbWUoc3dnOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWwpIHtcbiAgICAgICAgY29uc3QgZ3JvdXBGb2xkZXJOYW1lID0gc2VsZi5ncm91cEZyb21KU09OLmZvbGRlck5hbWUoc3dnKVxuXG4gICAgICAgIHJldHVybiBgJHtzZWxmLmFic29sdXRlUGF0aC5QYXRoRm9sZGVyX3NlcnZpY2VzfS8ke2dyb3VwRm9sZGVyTmFtZX1gO1xuICAgICAgfSxcblxuICAgICAgUGF0aEZpbGVfc2VydmljZXNfZ3JvdXBOYW1lX2luZGV4X3RzKHN3ZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlck1vZGVsKSB7XG4gICAgICAgIHJldHVybiBgJHtzZWxmLmFic29sdXRlUGF0aC5QYXRoRm9sZGVyX3NlcnZpY2VzX2dyb3VwTmFtZShzd2cpfS9pbmRleC50c2A7XG4gICAgICB9LFxuXG4gICAgICBQYXRoRmlsZV9zZXJ2aWNlc19ncm91cE5BbWVfc2VydmljZU5hbWVfdHMoc3dnOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWwsIHRhZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlclRhZykge1xuICAgICAgICBjb25zdCBzZXJ2aWNlRmlsZU5hbWUgPSBzZWxmLnNlcnZpY2VGcm9tVGFnLmNsYXNzTmFtZShzd2csIHRhZyk7XG4gICAgICAgIHJldHVybiBgJHtzZWxmLmFic29sdXRlUGF0aC5QYXRoRm9sZGVyX3NlcnZpY2VzX2dyb3VwTmFtZShzd2cpfS8ke3NlcnZpY2VGaWxlTmFtZX0udHNgO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGdldCBncm91cEZyb21KU09OKCkge1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIHJldHVybiB7XG4gICAgICBnZXQgYWxsR3JvdXBOYW1lcygpIHtcbiAgICAgICAgY29uc3QgbmFtZXMgPSBbXVxuICAgICAgICBzZWxmLmFwaXMubWFwKHN3ZyA9PiB7ICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgbmFtZXMucHVzaChzZWxmLmdyb3VwRnJvbUpTT04uZm9sZGVyTmFtZShzd2cpKVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gbmFtZXM7XG4gICAgICB9LFxuICAgICAgZm9sZGVyTmFtZShzd2c6IE1vZGVscy5Td2FnZ2VyLlN3YWdnZXJNb2RlbCkge1xuICAgICAgICBjb25zdCBiYXNlUGF0aDogc3RyaW5nID0gc3dnLmJhc2VQYXRoO1xuICAgICAgICBjb25zdCBpbmRleDogbnVtYmVyID0gc3dnW3NlbGYuU1lNQk9MLklOREVYX1NXR107XG4gICAgICAgIHJldHVybiBfLnVwcGVyRmlyc3QoXy5jYW1lbENhc2UoYmFzZVBhdGgudHJpbSgpID09PSAnJyA/IGBqc29uJHtpbmRleH1gIDogYmFzZVBhdGgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZmluZFRhZ3Moc3dnOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWwpIHtcbiAgICBjb25zdCB0YWdzID0gW11cbiAgICBPYmplY3Qua2V5cyhzd2cucGF0aHMpLmZvckVhY2gocCA9PiB7XG4gICAgICBPYmplY3Qua2V5cyhzd2cucGF0aHNbcF0pLmZvckVhY2gobSA9PiB7XG4gICAgICAgIGNvbnN0IGEgPSBzd2cucGF0aHNbcF1bbV07XG4gICAgICAgIGlmIChfLmlzQXJyYXkoYS50YWdzKSkge1xuICAgICAgICAgIGEudGFncy5mb3JFYWNoKHRhZyA9PiB7XG4gICAgICAgICAgICBpZiAodGFncy5maWx0ZXIoKHsgbmFtZSB9KSA9PiBuYW1lID09PSB0YWcpLmxlbmd0aCA9PT0gMCkgeyAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICB0YWdzLnB1c2goeyBuYW1lOiB0YWcgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KVxuICAgIHJldHVybiB0YWdzO1xuICB9XG5cblxuXG5cblxuXG4gIC8qKlxuICAgKiBUbyBnZW5lcmF0ZSBnZXQvYm9va3Mve2lkfSA9PiBnZXRfYm9va3NfX2lkX1xuICAgKi9cbiAgc3RhdGljIGNsZWFuUGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcGF0aC5yZXBsYWNlKC97L2csIFwiX1wiKS5yZXBsYWNlKC99L2csIFwiX1wiKS5yZXBsYWNlKC9cXC8vZywgXCJfXCIpLnJlcGxhY2UoLy0vZywgXCJfXCIpO1xuICB9XG5cblxuICBzdGF0aWMgY2xlYW5QYXRoTW9kZWwocGF0aE1vZGVsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcGF0aE1vZGVsLnJlcGxhY2UoL1xcL3svZywgJy86JykucmVwbGFjZSgvfS9nLCAnJyk7XG4gIH1cblxuXG4gIHN0YXRpYyBzd2FnZ2VyVHlwZVRvSlModHlwZTogXCJzdHJpbmdcIiB8IFwibnVtYmVyXCIgfCBcImludGVnZXJcIiB8IFwiYm9vbGVhblwiIHwgXCJhcnJheVwiIHwgXCJmaWxlXCIsIGl0ZW1zVHlwZTogYW55ID0gJ2FueScpIHtcbiAgICByZXR1cm4gKHR5cGUgPT09ICdpbnRlZ2VyJykgPyAnbnVtYmVyJ1xuICAgICAgOiAodHlwZSA9PT0gJ2FycmF5JykgPyAhaXRlbXNUeXBlID8gJ2FueScgOiBgJHt0aGlzLnN3YWdnZXJUeXBlVG9KUyhpdGVtc1R5cGUpfVtdYFxuICAgICAgICA6ICh0eXBlID09PSAnZmlsZScpID8gJ2FueScgOiB0eXBlO1xuICB9XG5cblxuXG4gIHN0YXRpYyBnZXRPYmplY3REZWZpbml0aW9uKHJlZjogc3RyaW5nLCBzd2c6IE1vZGVscy5Td2FnZ2VyLlN3YWdnZXJNb2RlbCwgZGVlcCA9IDApOiBzdHJpbmcge1xuICAgIGlmIChkZWVwID09IDEpIHJldHVybiAnJztcbiAgICBpZiAoIXJlZikge1xuICAgICAgY29uc29sZS5sb2coJ0JhZCBqc29uICRyZWYgaW5zaWRlIHN3YWdnZXInKVxuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBsZXQgcmVzID0gJyc7XG4gICAgcmVmID0gcmVmLnJlcGxhY2UoJyMvJywgJycpLnJlcGxhY2UoL1xcLy9nLCAnLicpO1xuXG4gICAgbGV0IG9iajogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlckRlZiA9IDxNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyRGVmPl8uZ2V0KHN3ZywgcmVmKTtcblxuXG5cblxuXG5cblxuXG5cbiAgICBfLmZvck93bihvYmoucHJvcGVydGllcywgKHYsIGspID0+IHtcblxuICAgICAgaWYgKHYuJHJlZiAmJiB0eXBlb2Ygdi4kcmVmID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHJlcyArPSBrICsgXCI6e1wiICsgdGhpcy5nZXRPYmplY3REZWZpbml0aW9uKHYuJHJlZiwgc3dnLCBkZWVwKyspICsgXCJ9O1xcblwiO1xuICAgICAgfSBlbHNlIGlmICh2LnNjaGVtYSAmJiB2LnNjaGVtYS4kcmVmICYmIHR5cGVvZiB2LnNjaGVtYS4kcmVmID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHJlcyArPSBrICsgXCI6e1wiICsgdGhpcy5nZXRPYmplY3REZWZpbml0aW9uKHYuc2NoZW1hLiRyZWYsIHN3ZywgZGVlcCsrKSArIFwifTtcXG5cIjtcblxuICAgICAgfSBlbHNlIGlmICh2Lml0ZW1zICYmIHYuaXRlbXMuJHJlZiAmJiB0eXBlb2Ygdi5pdGVtcy4kcmVmID09PSBcInN0cmluZ1wiICYmIHYudHlwZSAmJiB2LnR5cGUgPT09ICdhcnJheScpIHtcbiAgICAgICAgcmVzICs9IGsgKyBcIjp7XCIgKyB0aGlzLmdldE9iamVjdERlZmluaXRpb24odi5pdGVtcy4kcmVmLCBzd2csIGRlZXArKykgKyBcIn1bXTtcXG5cIjtcblxuXG4gICAgICB9IGVsc2UgaWYgKHYuaXRlbXMgJiYgdi5pdGVtcy4kcmVmICYmIHR5cGVvZiB2Lml0ZW1zLiRyZWYgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgcmVzICs9IGsgKyBcIjp7XCIgKyB0aGlzLmdldE9iamVjdERlZmluaXRpb24odi5pdGVtcy4kcmVmLCBzd2csIGRlZXArKykgKyBcIn07XFxuXCI7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgaXNSZXF1aXJlZCA9IChvYmoucmVxdWlyZWQgJiYgb2JqLnJlcXVpcmVkIGluc3RhbmNlb2YgQXJyYXkgJiYgb2JqLnJlcXVpcmVkLmZpbHRlcihvID0+IG8gPT09IGspLmxlbmd0aCA+IDApXG4gICAgICAgIGxldCB0eXBlID0gKHYuZW51bSAmJiB2LmVudW0gaW5zdGFuY2VvZiBBcnJheSAmJiB2LmVudW0ubGVuZ3RoID4gMClcbiAgICAgICAgICA/IHYuZW51bS5tYXAoZSA9PiAnXCInICsgZSArICdcIicpLmpvaW4oJ3wnKSA6IHRoaXMuc3dhZ2dlclR5cGVUb0pTKHYudHlwZSwgdi5pdGVtcyA/IHYuaXRlbXMudHlwZSA6ICdhbnknKTtcblxuICAgICAgICByZXMgKz0gayArICghaXNSZXF1aXJlZCA/ICc/JyA6IFwiXCIpICsgXCI6XCIgKyB0eXBlICsgXCI7XFxuXCJcbiAgICAgIH1cbiAgICB9KTtcblxuXG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBwcml2YXRlIHBhdGhlcyA9IHtcbiAgICogICAgICBnZXRfYWxsX2NvbXBhbmllczogbmV3IFNpbXBsZVJlc291cmNlPFxuICAgKiAgICAgICAgICBzdHJpbmcsIEEsIFRBLCBSUCBleHRlbmRzIE9iamVjdCwgUVAgZXh0ZW5kcyBSZXN0LlVybFBhcmFtcz4oZW5kcG9pbnQsIG1vZGVsKSxcbiAgICogICAgICBnZXRfYnlpZF9jb21wYW5pZXM6IG5ldyBTaW1wbGVSZXNvdXJjZTxcbiAgICogICAgICAgICAgc3RyaW5nLCBBLCBUQSwgUlAgZXh0ZW5kcyBPYmplY3QsIFFQIGV4dGVuZHMgUmVzdC5VcmxQYXJhbXM+KGVuZHBvaW50LCBtb2RlbClcbiAgICogfVxuICAgKi9cbiAgc3RhdGljIGdldEFuZ3VsYXJQcml2YXRlUGF0aGVzQnlUYWcoc3dnOiBNb2RlbHMuU3dhZ2dlci5Td2FnZ2VyTW9kZWwsIHRhZzogTW9kZWxzLlN3YWdnZXIuU3dhZ2dlclRhZyk6IHN0cmluZyB7XG4gICAgbGV0IHJlczogc3RyaW5nW10gPSBbXTtcbiAgICBsZXQgYmFzZSA9IHN3Zy5iYXNlUGF0aC5yZXBsYWNlKCcvJywgJycpO1xuXG4gICAgbGV0IHBhdGhlczogT2JqZWN0ID0ge307XG4gICAgXy5mb3JPd24oc3dnLnBhdGhzLCAodiwgaykgPT4ge1xuICAgICAgXy5mb3JPd24odiwgKHYyLCBrMikgPT4ge1xuICAgICAgICBpZiAoXy5pc0FycmF5KHYyLnRhZ3MpICYmIHYyLnRhZ3MuZmlsdGVyKGYgPT4gZiA9PT0gdGFnLm5hbWUpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBsZXQgcmVzcCA9IHYyLnJlc3BvbnNlc1snMjAwJ10gJiYgdjIucmVzcG9uc2VzWycyMDAnXS5zY2hlbWE7XG5cblxuXG5cbiAgICAgICAgICBpZiAocGF0aGVzW2tdID09PSB2b2lkIDApIHBhdGhlc1trXSA9IHt9OyAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgbGV0IHR5cGUgPSB0aGlzLmdldFJlc3BvbnNlVHlwZShyZXNwLCBzd2cpO1xuXG4gICAgICAgICAgaWYgKHR5cGUubGVuZ3RoID4gMyAmJiB0eXBlLmNoYXJBdCh0eXBlLmxlbmd0aCAtIDEpID09PSAnXScgJiYgdHlwZS5jaGFyQXQodHlwZS5sZW5ndGggLSAyKSA9PT0gJ1snXG4gICAgICAgICAgICAmJiAhcGF0aGVzW2tdWydhcnJheSddKSB7XG4gICAgICAgICAgICBwYXRoZXNba11bJ2FycmF5J10gPSB0eXBlO1xuICAgICAgICAgIH0gZWxzZSBpZiAoazIgIT09ICdkZWxldGUnICYmICFwYXRoZXNba11bJ3NpbmdsZSddKSB7XG4gICAgICAgICAgICBwYXRoZXNba11bJ3NpbmdsZSddID0gdHlwZTtcbiAgICAgICAgICB9XG5cblxuXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSlcblxuICAgIGxldCBwYXRoUmVzb3VyY2VzOiBNb2RlbHMuUGF0aFJlc291cmNlW10gPSBbXTtcblxuICAgIF8uZm9yT3duKHBhdGhlcywgKHYsIHApID0+IHtcblxuICAgICAgcGF0aFJlc291cmNlcy5wdXNoKHtcbiAgICAgICAgY2xlYW5fcGF0aDogdGhpcy5jbGVhblBhdGgocCksXG4gICAgICAgIG1vZGVsOiB0aGlzLmNsZWFuUGF0aE1vZGVsKHApLFxuICAgICAgICBlbmRwb2ludDogc3dnLmJhc2VQYXRoLFxuICAgICAgICBzaW5nbGVNb2RlbFR5cGU6ICF2WydzaW5nbGUnXSA/ICdhbnknIDogdlsnc2luZ2xlJ10sXG4gICAgICAgIG11bHRpcGxlTW9kZWxUeXBlOiAhdlsnYXJyYXknXSA/ICdhbnknIDogdlsnYXJyYXknXSxcbiAgICAgICAgcXVlcnlQYXJhbXNUeXBlOiAnYW55JyxcbiAgICAgICAgcGF0aFBhcmFtc1R5cGU6ICdhbnknXG4gICAgICB9KVxuICAgIH0pXG5cblxuICAgIHBhdGhSZXNvdXJjZXMuZm9yRWFjaChwID0+IHtcbiAgICAgIHJlcy5wdXNoKGAke3AuY2xlYW5fcGF0aH06IG5ldyBTaW1wbGVSZXNvdXJjZTxcXG4ke3Auc2luZ2xlTW9kZWxUeXBlfSxcXG4ke3AubXVsdGlwbGVNb2RlbFR5cGV9XFxuPiggTmcyUmVzdEdlbk1vZHVsZS5lbnBvaW50VXJscy4ke3RoaXMuZ3JvdXBGcm9tSlNPTi5mb2xkZXJOYW1lKHN3Zyl9LCAnJHtwLm1vZGVsfScgKWApO1xuICAgIH0pXG5cbiAgICByZXR1cm4gYHByaXZhdGUgcGF0aGVzID0geyBcXG4ke3Jlcy5qb2luKCcsXFxuJyl9XFxufTtgXG4gIH1cblxuXG4gIC8qXG4gICBzY2hlbWFcIjoge1xuICAgICAgXCJ0eXBlXCI6IFwiYXJyYXlcIixcbiAgICAgIFwiaXRlbXNcIjoge1xuICAgICAgICAgIFwiJHJlZlwiOiBcIiMvZGVmaW5pdGlvbnMvQ29tcGFueURUT1wiXG4gICAgICB9XG4gIH1cblxuICBcInNjaGVtYVwiOiB7XG4gICAgICBcIiRyZWZcIjogXCIjL2RlZmluaXRpb25zL0NvbXBhbnlEVE9cIlxuICB9XG4gICAqL1xuXG4gIHN0YXRpYyBnZXRSZXNwb25zZVR5cGUobzogTW9kZWxzLlN3YWdnZXIuT2JqU2NoZW1hLCBzd2c6IE1vZGVscy5Td2FnZ2VyLlN3YWdnZXJNb2RlbCkge1xuICAgIGxldCByZXMgPSAne30gfCBhbnknO1xuICAgIGlmIChvICYmIG8uJHJlZiAmJiB0eXBlb2Ygby4kcmVmID09PSAnc3RyaW5nJyAmJiBvLiRyZWYudHJpbSgpICE9PSAnJykge1xuICAgICAgcmVzID0gXCJ7XCIgKyB0aGlzLmdldE9iamVjdERlZmluaXRpb24oby4kcmVmLCBzd2cpICsgXCJ9XCI7XG5cbiAgICB9IGVsc2UgaWYgKG8gJiYgby50eXBlID09PSAnYXJyYXknICYmIG8uaXRlbXMgJiYgby5pdGVtcy4kcmVmICYmXG4gICAgICB0eXBlb2Ygby5pdGVtcy4kcmVmID09PSAnc3RyaW5nJyAmJiBvLml0ZW1zLiRyZWYudHJpbSgpICE9PSAnJykge1xuICAgICAgcmVzID0gXCJ7XCIgKyB0aGlzLmdldE9iamVjdERlZmluaXRpb24oby5pdGVtcy4kcmVmLCBzd2cpICsgXCJ9W11cIjtcblxuICAgIH1cblxuXG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuICBwcml2YXRlIHN0YXRpYyBjb3VudDEgPSAwO1xuXG4gIHN0YXRpYyByZWNyZWF0ZVN1bW1hcnkoc3VtbWFyeTogc3RyaW5nKSB7XG5cblxuXG4gICAgcmV0dXJuIHN1bW1hcnk7XG4gIH1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPW5nMi1yZXN0LXN3YWdnZXItZ2VuZXJhdG9yIGxpYi9oZWxwZXJzLnRzIl19
@@ -0,0 +1,4 @@
1
+ export * from './helpers';
2
+ ;
3
+ ({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/index.ts
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9uZzItcmVzdC1zd2FnZ2VyLWdlbmVyYXRvci9wcm9qZWN0cy9uZzItcmVzdC1zd2FnZ2VyLWdlbmVyYXRvci9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGNBQWMsV0FBVyxDQUFDO0FBRXpCLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0VBQW9FIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycyc7XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT1uZzItcmVzdC1zd2FnZ2VyLWdlbmVyYXRvciBsaWIvaW5kZXgudHMiXX0=
@@ -0,0 +1,4 @@
1
+ ;
2
+ ({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/models.ts
3
+ export {};
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvbmcyLXJlc3Qtc3dhZ2dlci1nZW5lcmF0b3IvcHJvamVjdHMvbmcyLXJlc3Qtc3dhZ2dlci1nZW5lcmF0b3Ivc3JjL2xpYi9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa01DLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUVBQXFFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuXG5cbmV4cG9ydCBuYW1lc3BhY2UgTW9kZWxzIHtcblxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUGF0aFJlc291cmNlIHtcbiAgICBjbGVhbl9wYXRoPzogc3RyaW5nO1xuICAgIHNpbmdsZU1vZGVsVHlwZT86IHN0cmluZztcbiAgICBtdWx0aXBsZU1vZGVsVHlwZT86IHN0cmluZztcbiAgICBwYXRoUGFyYW1zVHlwZT86IHN0cmluZztcbiAgICBxdWVyeVBhcmFtc1R5cGU/OiBzdHJpbmc7XG4gICAgZW5kcG9pbnQ/OiBzdHJpbmc7XG4gICAgbW9kZWw/OiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFBhcmFtIHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nOyAvLyBcInN0cmluZ1wiIHwgXCJudW1iZXJcIiB8IFwiaW50ZWdlclwiIHwgXCJib29sZWFuXCIgfCBcImFycmF5XCIgfCBcImZpbGVcIjtcbiAgICByZXF1aXJlZDogYm9vbGVhbjtcbiAgICBpc09iamVjdD86IGJvb2xlYW47XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VNZXRob2Qge1xuICAgIHN1bW1hcnk6IHN0cmluZztcbiAgICBwYXRoX2NsZWFuZDogc3RyaW5nO1xuICAgIHBhcmFtczoge1xuICAgICAgcGF0aD86IFBhcmFtW107XG4gICAgICBxdWVyeT86IFBhcmFtW107XG4gICAgICBib2R5PzogUGFyYW1bXTtcbiAgICB9XG4gICAgbWV0aG9kOiAgYW55OyAvL01vcnBoaS5SZXN0Lkh0dHBNZXRob2Q7XG4gICAgaXNBcnJheTogYm9vbGVhbjtcbiAgICBjb21tZW50Pzogc3RyaW5nO1xuICB9XG5cblxuXG4gIGV4cG9ydCBuYW1lc3BhY2UgU3dhZ2dlciB7XG4gICAgZXhwb3J0IHR5cGUgRGF0YUZvcm1hdCA9ICdpbnQzMicgfCAnaW50NjQnIHwgJ2RvdWJsZScgfCAnZmxvYXQnXG4gICAgZXhwb3J0IHR5cGUgRGF0YVR5cGUgPSAnb2JqZWN0JyB8ICdhcnJheScgfCAnc3RyaW5nJyB8ICdib29sZWFuJ1xuXG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFByb3BlcnR5TmFtZSB7XG4gICAgICBbbmFtZTogc3RyaW5nXTogUGFyYW1ldGVyXG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBTd2FnZ2VyRGVmIHtcbiAgICAgIHJlcXVpcmVkOiBzdHJpbmdbXTtcbiAgICAgIHR5cGU6IERhdGFUeXBlO1xuICAgICAgcHJvcGVydGllczogUHJvcGVydHlOYW1lO1xuICAgIH1cblxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBTd2FnZ2VyRGVmaW5pdGlvbiB7XG4gICAgICBbbmFtZTogc3RyaW5nXTogU3dhZ2dlckRlZjtcbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIE9ialNjaGVtYSB7XG4gICAgICAkcmVmOiBzdHJpbmc7XG4gICAgICB0eXBlOiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIiB8IFwiaW50ZWdlclwiIHwgXCJib29sZWFuXCIgfCBcImFycmF5XCIgfCBcImZpbGVcIjtcbiAgICAgIGl0ZW1zOiB7XG4gICAgICAgICRyZWY6IHN0cmluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgICBzY2hlbWE6IE9ialNjaGVtYTtcbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFN3YWdnZXJSZXNwb25zZSB7XG4gICAgICBbcGF0aDogc3RyaW5nXTogUmVzcG9uc2U7XG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBQYXJhbWV0ZXIge1xuICAgICAgJHJlZjogc3RyaW5nO1xuICAgICAgLyoqXG4gICAgICAgKiBcdFJlcXVpcmVkLiBUaGUgc2NoZW1hIGRlZmluaW5nIHRoZSB0eXBlIHVzZWQgZm9yIHRoZSBib2R5IHBhcmFtZXRlci5cbiAgICAgICAqL1xuICAgICAgc2NoZW1hOiB7XG4gICAgICAgICRyZWY6IHN0cmluZztcbiAgICAgICAgaXRlbXM6IFBhcmFtZXRlcjtcbiAgICAgICAgdHlwZTogXCJzdHJpbmdcIiB8IFwibnVtYmVyXCIgfCBcImludGVnZXJcIiB8IFwiYm9vbGVhblwiIHwgXCJhcnJheVwiIHwgXCJmaWxlXCI7XG4gICAgICB9XG4gICAgICAvKipcbiAgICAgICAqIFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgcGFyYW1ldGVyLiBQYXJhbWV0ZXIgbmFtZXMgYXJlIGNhc2Ugc2Vuc2l0aXZlLlxuICAgICAgICogSWYgaW4gaXMgXCJwYXRoXCIsIHRoZSBuYW1lIGZpZWxkIE1VU1QgY29ycmVzcG9uZCB0byB0aGUgYXNzb2NpYXRlZCBwYXRoIHNlZ21lbnRcbiAgICAgICAqIGZyb20gdGhlIHBhdGggZmllbGQgaW4gdGhlIFBhdGhzIE9iamVjdC4gU2VlIFBhdGggVGVtcGxhdGluZyBmb3IgZnVydGhlciBpbmZvcm1hdGlvbi5cbiAgICAgICAqIEZvciBhbGwgb3RoZXIgY2FzZXMsIHRoZSBuYW1lIGNvcnJlc3BvbmRzIHRvIHRoZSBwYXJhbWV0ZXIgbmFtZSB1c2VkIGJhc2VkIG9uIHRoZSBpbiBwcm9wZXJ0eS5cbiAgICAgICAqL1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgaW46ICdxdWVyeScgfCAncGF0aCcgfCAnYm9keScgfCAnZm9ybURhdGEnIHwgJ2hlYWRlcic7XG4gICAgICAvKipcbiAgICAgICAqIEEgYnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIHBhcmFtZXRlci4gVGhpcyBjb3VsZCBjb250YWluIGV4YW1wbGVzIG9mIHVzZS5cbiAgICAgICAqICBHRk0gc3ludGF4IGNhbiBiZSB1c2VkIGZvciByaWNoIHRleHQgcmVwcmVzZW50YXRpb24uXG4gICAgICAgKi9cbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgICAvKipcbiAgICAgICAqIFJlcXVpcmVkIGlmIHR5cGUgaXMgXCJhcnJheVwiLiBEZXNjcmliZXMgdGhlIHR5cGUgb2YgaXRlbXMgaW4gdGhlIGFycmF5LlxuICAgICAgICovXG4gICAgICBpdGVtczogUGFyYW1ldGVyO1xuICAgICAgcmVxdWlyZWQ6IGJvb2xlYW47XG4gICAgICAvKipcbiAgICAgICAqIFNldHMgdGhlIGFiaWxpdHkgdG8gcGFzcyBlbXB0eS12YWx1ZWQgcGFyYW1ldGVycy4gVGhpcyBpcyB2YWxpZCBvbmx5XG4gICAgICAgKiBmb3IgZWl0aGVyIHF1ZXJ5IG9yIGZvcm1EYXRhIHBhcmFtZXRlcnMgYW5kIGFsbG93cyB5b3UgdG8gc2VuZCBhIHBhcmFtZXRlclxuICAgICAgICogIHdpdGggYSBuYW1lIG9ubHkgb3IgYW4gZW1wdHkgdmFsdWUuIERlZmF1bHQgdmFsdWUgaXMgZmFsc2UuXG4gICAgICAgKi9cbiAgICAgIGFsbG93RW1wdHlWYWx1ZTogYm9vbGVhbjtcbiAgICAgIC8qKlxuICAgICAgICogUmVxdWlyZWQuIFRoZSB0eXBlIG9mIHRoZSBwYXJhbWV0ZXIuIFNpbmNlIHRoZSBwYXJhbWV0ZXIgaXMgbm90IGxvY2F0ZWRcbiAgICAgICAqIGF0IHRoZSByZXF1ZXN0IGJvZHksIGl0IGlzIGxpbWl0ZWQgdG8gc2ltcGxlIHR5cGVzICh0aGF0IGlzLCBub3QgYW4gb2JqZWN0KS5cbiAgICAgICAqICBUaGUgdmFsdWUgTVVTVCBiZSBvbmUgb2YgXCJzdHJpbmdcIiwgXCJudW1iZXJcIiwgXCJpbnRlZ2VyXCIsIFwiYm9vbGVhblwiLCBcImFycmF5XCJcbiAgICAgICAqIG9yIFwiZmlsZVwiLiBJZiB0eXBlIGlzIFwiZmlsZVwiLCB0aGUgY29uc3VtZXMgTVVTVCBiZSBlaXRoZXIgXCJtdWx0aXBhcnQvZm9ybS1kYXRhXCIsXG4gICAgICAgKiBcIiBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRcIiBvciBib3RoIGFuZCB0aGUgcGFyYW1ldGVyIE1VU1QgYmUgaW4gXCJmb3JtRGF0YVwiLlxuICAgICAgICovXG4gICAgICB0eXBlOiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIiB8IFwiaW50ZWdlclwiIHwgXCJib29sZWFuXCIgfCBcImFycmF5XCIgfCBcImZpbGVcIjtcbiAgICAgIGZvcm1hdDogXCJpbnQzMlwiIHwgXCJpbnQ2NFwiIHwgXCJmbG9hdFwiIHwgXCJkb3VibGVcIiB8IFwiYnl0ZVwiIHwgXCJiaW5hcnlcIiB8IFwiZGF0ZVwiIHwgXCJkYXRlLXRpbWVcIiB8IFwicGFzc3dvcmRcIjtcbiAgICAgIC8qKlxuICAgICAgICogRGV0ZXJtaW5lcyB0aGUgZm9ybWF0IG9mIHRoZSBhcnJheSBpZiB0eXBlIGFycmF5IGlzIHVzZWQuIFBvc3NpYmxlIHZhbHVlcyBhcmU6XG4gICAgICAgKiBjc3YgLSBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzIGZvbyxiYXIuXG4gICAgICAgKiBzc3YgLSBzcGFjZSBzZXBhcmF0ZWQgdmFsdWVzIGZvbyBiYXIuXG4gICAgICAgKiB0c3YgLSB0YWIgc2VwYXJhdGVkIHZhbHVlcyBmb29cXHRiYXIuXG4gICAgICAgKiBwaXBlcyAtIHBpcGUgc2VwYXJhdGVkIHZhbHVlcyBmb298YmFyLlxuICAgICAgICogRGVmYXVsdCB2YWx1ZSBpcyBjc3YuXG4gICAgICAgKi9cbiAgICAgIGNvbGxlY3Rpb25Gb3JtYXQ6ICdjc3YnIHwgJ3NzdicgfCAndHN2JyB8ICdwaXBlcyc7XG4gICAgICAvKipcbiAgICAgICAqIERlY2xhcmVzIHRoZSB2YWx1ZSBvZiB0aGUgaXRlbSB0aGF0IHRoZSBzZXJ2ZXIgd2lsbCB1c2UgaWYgbm9uZSBpcyBwcm92aWRlZC5cbiAgICAgICAqIChOb3RlOiBcImRlZmF1bHRcIiBoYXMgbm8gbWVhbmluZyBmb3IgcmVxdWlyZWQgaXRlbXMuKVxuICAgICAgICogU2VlIGh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvbGF0ZXN0L2pzb24tc2NoZW1hLXZhbGlkYXRpb24uaHRtbCNhbmNob3IxMDEuXG4gICAgICAgKiAgVW5saWtlIEpTT04gU2NoZW1hIHRoaXMgdmFsdWUgTVVTVCBjb25mb3JtIHRvIHRoZSBkZWZpbmVkIHR5cGUgZm9yIHRoZSBkYXRhIHR5cGUuXG4gICAgICAgKi9cbiAgICAgIGRlZmF1bHQ6IGFueTtcbiAgICAgIC8qKlxuICAgICAgICogVGhlIHZhbHVlIG9mIHRoaXMga2V5d29yZCBNVVNUIGJlIGFuIGFycmF5LlxuICAgICAgICogVGhpcyBhcnJheSBTSE9VTEQgaGF2ZSBhdCBsZWFzdCBvbmUgZWxlbWVudC5cbiAgICAgICAqIEVsZW1lbnRzIGluIHRoZSBhcnJheSBTSE9VTEQgYmUgdW5pcXVlLlxuICAgICAgICogRWxlbWVudHMgaW4gdGhlIGFycmF5IE1BWSBiZSBvZiBhbnkgdHlwZSwgaW5jbHVkaW5nIG51bGwuXG4gICAgICAgKiBBbiBpbnN0YW5jZSB2YWxpZGF0ZXMgc3VjY2Vzc2Z1bGx5IGFnYWluc3QgdGhpcyBrZXl3b3JkIGlmIGl0cyB2YWx1ZVxuICAgICAgICogaXMgZXF1YWwgdG8gb25lIG9mIHRoZSBlbGVtZW50cyBpbiB0aGlzIGtleXdvcmQncyBhcnJheSB2YWx1ZS5cbiAgICAgICAqL1xuICAgICAgZW51bTogYW55W107XG4gICAgICBtYXhMZW5ndGg6IG51bWJlcjtcbiAgICAgIG1pbkxlbmd0aDogbnVtYmVyO1xuICAgICAgbWF4SXRlbXM6IG51bWJlcjtcbiAgICAgIG1pbkl0ZW1zOiBudW1iZXI7XG4gICAgICB1bmlxdWVJdGVtczogYm9vbGVhbjtcbiAgICAgIHBhdHRlcm46IG51bWJlcjtcbiAgICAgIG1heGltdW06IG51bWJlcjtcbiAgICAgIGV4Y2x1c2l2ZU1heGltdW06IGJvb2xlYW47XG4gICAgICBtaW5pbXVtOiBudW1iZXI7XG4gICAgICBleGNsdXNpdmVNaW5pbXVtOiBudW1iZXI7XG4gICAgICBtdWx0aXBsZU9mOiBib29sZWFuO1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgTWV0aG9kIHtcbiAgICAgIHRhZ3M6IHN0cmluZ1tdO1xuICAgICAgc3VtbWFyeTogc3RyaW5nO1xuICAgICAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgICAgIGNvbnN1bWVzOiBzdHJpbmdbXTtcbiAgICAgIHByb2R1Y2VzOiBzdHJpbmdbXTtcbiAgICAgIHBhcmFtZXRlcnM6IFBhcmFtZXRlcltdO1xuICAgICAgcmVzcG9uc2VzOiBTd2FnZ2VyUmVzcG9uc2VbXTtcbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFN3YWdnZXJNZXRob2Qge1xuICAgICAgW3BhdGg6IHN0cmluZ106IE1ldGhvZDtcbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFN3YWdnZXJQYXRoIHtcbiAgICAgIFtwYXRoOiBzdHJpbmddOiBTd2FnZ2VyTWV0aG9kO1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgU3dhZ2dlclRhZyB7XG4gICAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIFN3YWdnZXJNb2RlbCB7XG4gICAgICBob3N0OiBzdHJpbmc7XG4gICAgICBiYXNlUGF0aDogc3RyaW5nO1xuICAgICAgdGFnczogU3dhZ2dlclRhZ1tdO1xuICAgICAgcGF0aHM6IFN3YWdnZXJQYXRoO1xuICAgICAgZGVmaW5pdGlvbnM6IFN3YWdnZXJEZWZpbml0aW9uO1xuICAgIH1cblxuXG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9bmcyLXJlc3Qtc3dhZ2dlci1nZW5lcmF0b3IgbGliL21vZGVscy50cyJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmcyLXJlc3Qtc3dhZ2dlci1nZW5lcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9uZzItcmVzdC1zd2FnZ2VyLWdlbmVyYXRvci9wcm9qZWN0cy9uZzItcmVzdC1zd2FnZ2VyLWdlbmVyYXRvci9zcmMvbmcyLXJlc3Qtc3dhZ2dlci1nZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './lib';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L25nMi1yZXN0LXN3YWdnZXItZ2VuZXJhdG9yL3Byb2plY3RzL25nMi1yZXN0LXN3YWdnZXItZ2VuZXJhdG9yL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWInO1xuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"ng2-rest-swagger-generator.mjs","sources":["../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/index.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator.ts"],"sourcesContent":["\n\n\nimport { path, /* */ /* */ _ } from 'tnp-core/browser';/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/browser';\nimport { Helpers } from 'tnp-helpers/browser';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n\n\n\n\n\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n\n\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n\n\n\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n\n }\n\n\n\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n\n\n\n return summary;\n }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n}\n\n ;({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/helpers.ts","\n\nexport * from './helpers';\n\n ;({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}
1
+ {"version":3,"file":"ng2-rest-swagger-generator.mjs","sources":["../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/helpers.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/lib/index.ts","../../../tmp-libs-for-dist/ng2-rest-swagger-generator/projects/ng2-rest-swagger-generator/src/ng2-rest-swagger-generator.ts"],"sourcesContent":["\n\n\nimport { path, /* */ /* */ _ } from 'tnp-core/browser';/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n\nimport { Models } from './models';\nimport { CoreHelpers as TnpHelpers } from 'tnp-core/browser';\nimport { Helpers } from 'tnp-helpers/browser';\n\n\nexport class HelpersSwagger extends TnpHelpers {\n\n static SYMBOL = {\n INDEX_SWG: Symbol(),\n OUTPUT_FOLDER: Symbol()\n }\n\n private static output: string;\n private static apis: Models.Swagger.SwaggerModel[];\n static preparePaths(apis: Models.Swagger.SwaggerModel[], outputBase: string) {\n this.output = `${process.cwd()}/${outputBase}`\n this.apis = apis;\n }\n\n static prepareModel(swg: Models.Swagger.SwaggerModel, indexSwg: number, isHttpsEnable: boolean) {\n swg[this.SYMBOL.INDEX_SWG] = indexSwg;\n\n swg.host = swg.host && (isHttpsEnable ? 'https' : 'http') + `://${swg.host.replace(/:[0-9]*/g, '')}`\n if (!swg.basePath) {\n swg.basePath = ''\n }\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n static get serviceFromTag() {\n const self = this;\n\n\n return {\n allClassNames() {\n const names = []\n self.apis.map(swg => {\n swg.tags.forEach(tag => { // @ts-ignore\n names.push(self.serviceFromTag.className(swg, tag))\n })\n })\n return names;\n },\n className(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n\n const className = _.upperFirst(_.camelCase(tag.name)) + 'Service';\n return `${groupFolderName}${className.replace(/\\//g, '')}`;\n },\n absoluteFilePath(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${self.serviceFromTag.className(swg, tag)}.ts`;\n }\n }\n }\n\n static get endpoints() {\n return this.apis.map(swg => {\n return `${this.groupFromJSON.folderName(swg)}:'${swg.host}'`\n })\n }\n\n\n\n static get absolutePath() {\n const self = this;\n\n\n return {\n get output() {\n return self.output;\n },\n\n get PathFile_index_ts() {\n const APIpath = self.output;\n return `${APIpath}/index.ts`;\n },\n get PathFile_module_ts() {\n const APIpath = self.output;\n return `${APIpath}/module.ts`;\n },\n\n get PathFolder_services() {\n const APIpath = self.output;\n return `${APIpath}/services`;\n },\n\n get PathFile_services_index_ts() {\n return `${self.absolutePath.PathFolder_services}/index.ts`;\n },\n\n PathFolder_services_groupName(swg: Models.Swagger.SwaggerModel) {\n const groupFolderName = self.groupFromJSON.folderName(swg)\n\n return `${self.absolutePath.PathFolder_services}/${groupFolderName}`;\n },\n\n PathFile_services_groupName_index_ts(swg: Models.Swagger.SwaggerModel) {\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/index.ts`;\n },\n\n PathFile_services_groupNAme_serviceName_ts(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag) {\n const serviceFileName = self.serviceFromTag.className(swg, tag);\n return `${self.absolutePath.PathFolder_services_groupName(swg)}/${serviceFileName}.ts`;\n }\n\n }\n }\n\n static get groupFromJSON() {\n const self = this;\n return {\n get allGroupNames() {\n const names = []\n self.apis.map(swg => { // @ts-ignore\n names.push(self.groupFromJSON.folderName(swg))\n })\n return names;\n },\n folderName(swg: Models.Swagger.SwaggerModel) {\n const basePath: string = swg.basePath;\n const index: number = swg[self.SYMBOL.INDEX_SWG];\n return _.upperFirst(_.camelCase(basePath.trim() === '' ? `json${index}` : basePath));\n }\n }\n }\n\n static findTags(swg: Models.Swagger.SwaggerModel) {\n const tags = []\n Object.keys(swg.paths).forEach(p => {\n Object.keys(swg.paths[p]).forEach(m => {\n const a = swg.paths[p][m];\n if (_.isArray(a.tags)) {\n a.tags.forEach(tag => {\n if (tags.filter(({ name }) => name === tag).length === 0) { // @ts-ignore\n tags.push({ name: tag })\n }\n });\n }\n })\n })\n return tags;\n }\n\n\n\n\n\n\n /**\n * To generate get/books/{id} => get_books__id_\n */\n static cleanPath(path: string) {\n return path.replace(/{/g, \"_\").replace(/}/g, \"_\").replace(/\\//g, \"_\").replace(/-/g, \"_\");\n }\n\n\n static cleanPathModel(pathModel: string) {\n return pathModel.replace(/\\/{/g, '/:').replace(/}/g, '');\n }\n\n\n static swaggerTypeToJS(type: \"string\" | \"number\" | \"integer\" | \"boolean\" | \"array\" | \"file\", itemsType: any = 'any') {\n return (type === 'integer') ? 'number'\n : (type === 'array') ? !itemsType ? 'any' : `${this.swaggerTypeToJS(itemsType)}[]`\n : (type === 'file') ? 'any' : type;\n }\n\n\n\n static getObjectDefinition(ref: string, swg: Models.Swagger.SwaggerModel, deep = 0): string {\n if (deep == 1) return '';\n if (!ref) {\n console.log('Bad json $ref inside swagger')\n return '';\n }\n let res = '';\n ref = ref.replace('#/', '').replace(/\\//g, '.');\n\n let obj: Models.Swagger.SwaggerDef = <Models.Swagger.SwaggerDef>_.get(swg, ref);\n\n\n\n\n\n\n\n\n\n _.forOwn(obj.properties, (v, k) => {\n\n if (v.$ref && typeof v.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.$ref, swg, deep++) + \"};\\n\";\n } else if (v.schema && v.schema.$ref && typeof v.schema.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.schema.$ref, swg, deep++) + \"};\\n\";\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\" && v.type && v.type === 'array') {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"}[];\\n\";\n\n\n } else if (v.items && v.items.$ref && typeof v.items.$ref === \"string\") {\n res += k + \":{\" + this.getObjectDefinition(v.items.$ref, swg, deep++) + \"};\\n\";\n } else {\n let isRequired = (obj.required && obj.required instanceof Array && obj.required.filter(o => o === k).length > 0)\n let type = (v.enum && v.enum instanceof Array && v.enum.length > 0)\n ? v.enum.map(e => '\"' + e + '\"').join('|') : this.swaggerTypeToJS(v.type, v.items ? v.items.type : 'any');\n\n res += k + (!isRequired ? '?' : \"\") + \":\" + type + \";\\n\"\n }\n });\n\n\n\n return res;\n }\n\n\n\n /**\n * private pathes = {\n * get_all_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model),\n * get_byid_companies: new SimpleResource<\n * string, A, TA, RP extends Object, QP extends Rest.UrlParams>(endpoint, model)\n * }\n */\n static getAngularPrivatePathesByTag(swg: Models.Swagger.SwaggerModel, tag: Models.Swagger.SwaggerTag): string {\n let res: string[] = [];\n let base = swg.basePath.replace('/', '');\n\n let pathes: Object = {};\n _.forOwn(swg.paths, (v, k) => {\n _.forOwn(v, (v2, k2) => {\n if (_.isArray(v2.tags) && v2.tags.filter(f => f === tag.name).length > 0) {\n let resp = v2.responses['200'] && v2.responses['200'].schema;\n\n\n\n\n if (pathes[k] === void 0) pathes[k] = {}; // @ts-ignore\n let type = this.getResponseType(resp, swg);\n\n if (type.length > 3 && type.charAt(type.length - 1) === ']' && type.charAt(type.length - 2) === '['\n && !pathes[k]['array']) {\n pathes[k]['array'] = type;\n } else if (k2 !== 'delete' && !pathes[k]['single']) {\n pathes[k]['single'] = type;\n }\n\n\n\n }\n })\n })\n\n let pathResources: Models.PathResource[] = [];\n\n _.forOwn(pathes, (v, p) => {\n\n pathResources.push({\n clean_path: this.cleanPath(p),\n model: this.cleanPathModel(p),\n endpoint: swg.basePath,\n singleModelType: !v['single'] ? 'any' : v['single'],\n multipleModelType: !v['array'] ? 'any' : v['array'],\n queryParamsType: 'any',\n pathParamsType: 'any'\n })\n })\n\n\n pathResources.forEach(p => {\n res.push(`${p.clean_path}: new SimpleResource<\\n${p.singleModelType},\\n${p.multipleModelType}\\n>( Ng2RestGenModule.enpointUrls.${this.groupFromJSON.folderName(swg)}, '${p.model}' )`);\n })\n\n return `private pathes = { \\n${res.join(',\\n')}\\n};`\n }\n\n\n /*\n schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n }\n\n \"schema\": {\n \"$ref\": \"#/definitions/CompanyDTO\"\n }\n */\n\n static getResponseType(o: Models.Swagger.ObjSchema, swg: Models.Swagger.SwaggerModel) {\n let res = '{} | any';\n if (o && o.$ref && typeof o.$ref === 'string' && o.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.$ref, swg) + \"}\";\n\n } else if (o && o.type === 'array' && o.items && o.items.$ref &&\n typeof o.items.$ref === 'string' && o.items.$ref.trim() !== '') {\n res = \"{\" + this.getObjectDefinition(o.items.$ref, swg) + \"}[]\";\n\n }\n\n\n\n return res;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n private static count1 = 0;\n\n static recreateSummary(summary: string) {\n\n\n\n return summary;\n }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n}\n\n ;({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/helpers.ts","\n\nexport * from './helpers';\n\n ;({}); // @--end-of-file-for-module=ng2-rest-swagger-generator lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["TnpHelpers"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "ng2-rest-swagger-generator/client",
3
+ "version": "19.0.3",
4
+ "module": "fesm2022/ng2-rest-swagger-generator.mjs",
5
+ "typings": "index.d.ts",
6
+ "exports": {
7
+ ".": {
8
+ "types": "./index.d.ts",
9
+ "default": "./fesm2022/ng2-rest-swagger-generator.mjs"
10
+ }
11
+ },
12
+ "sideEffects": false
13
+ }
@@ -1,2 +1,2 @@
1
1
  export declare const BUILD_FRAMEWORK_CLI_NAME = "tnp";
2
- export declare const CURRENT_PACKAGE_VERSION = "19.0.0";
2
+ export declare const CURRENT_PACKAGE_VERSION = "19.0.3";
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CURRENT_PACKAGE_VERSION = exports.BUILD_FRAMEWORK_CLI_NAME = void 0;
4
4
  // THIS FILE IS GENERATED - DO NOT MODIFY
5
5
  exports.BUILD_FRAMEWORK_CLI_NAME = 'tnp';
6
- exports.CURRENT_PACKAGE_VERSION = '19.0.0';
6
+ exports.CURRENT_PACKAGE_VERSION = '19.0.3';
7
7
  // THIS FILE IS GENERATED - DO NOT MODIFY
8
8
  //# sourceMappingURL=build-info._auto-generated_.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ng2-rest-swagger-generator",
3
- "version": "19.0.1",
3
+ "version": "19.0.3",
4
4
  "scripts": {
5
5
  "test": "mocha --require ts-node/register src/**/*.spec.ts",
6
6
  "test:watch": "mocha --compilers ts-node/register src/**/*.spec.ts --watch"