ng2-rest 21.0.12 → 21.0.15

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.
Files changed (98) hide show
  1. package/browser/package.json +1 -1
  2. package/browser-prod/README.md +24 -0
  3. package/browser-prod/fesm2022/ng2-rest-browser.mjs +1804 -0
  4. package/browser-prod/fesm2022/ng2-rest-browser.mjs.map +1 -0
  5. package/browser-prod/types/ng2-rest-browser.d.ts +427 -0
  6. package/lib/build-info._auto-generated_.d.ts +5 -1
  7. package/lib/build-info._auto-generated_.js +6 -2
  8. package/lib/build-info._auto-generated_.js.map +1 -1
  9. package/lib/env/env.angular-node-app.d.ts +30 -28
  10. package/lib/env/env.angular-node-app.js +32 -30
  11. package/lib/env/env.angular-node-app.js.map +1 -1
  12. package/lib/env/env.docs-webapp.d.ts +30 -28
  13. package/lib/env/env.docs-webapp.js +32 -30
  14. package/lib/env/env.docs-webapp.js.map +1 -1
  15. package/lib/env/env.electron-app.d.ts +30 -28
  16. package/lib/env/env.electron-app.js +32 -30
  17. package/lib/env/env.electron-app.js.map +1 -1
  18. package/lib/env/env.mobile-app.d.ts +30 -28
  19. package/lib/env/env.mobile-app.js +32 -30
  20. package/lib/env/env.mobile-app.js.map +1 -1
  21. package/lib/env/env.npm-lib-and-cli-tool.d.ts +30 -28
  22. package/lib/env/env.npm-lib-and-cli-tool.js +32 -30
  23. package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
  24. package/lib/env/env.vscode-plugin.d.ts +30 -28
  25. package/lib/env/env.vscode-plugin.js +32 -30
  26. package/lib/env/env.vscode-plugin.js.map +1 -1
  27. package/lib-prod/axios-interceptors.d.ts +22 -0
  28. package/lib-prod/axios-interceptors.js +22 -0
  29. package/lib-prod/axios-interceptors.js.map +1 -0
  30. package/lib-prod/build-info._auto-generated_.d.ts +24 -0
  31. package/lib-prod/build-info._auto-generated_.js +30 -0
  32. package/lib-prod/build-info._auto-generated_.js.map +1 -0
  33. package/lib-prod/content-type.d.ts +5 -0
  34. package/lib-prod/content-type.js +15 -0
  35. package/lib-prod/content-type.js.map +1 -0
  36. package/lib-prod/cookie.d.ts +8 -0
  37. package/lib-prod/cookie.js +32 -0
  38. package/lib-prod/cookie.js.map +1 -0
  39. package/lib-prod/env/env.angular-node-app.d.ts +64 -0
  40. package/lib-prod/env/env.angular-node-app.js +71 -0
  41. package/lib-prod/env/env.angular-node-app.js.map +1 -0
  42. package/lib-prod/env/env.docs-webapp.d.ts +64 -0
  43. package/lib-prod/env/env.docs-webapp.js +71 -0
  44. package/lib-prod/env/env.docs-webapp.js.map +1 -0
  45. package/lib-prod/env/env.electron-app.d.ts +64 -0
  46. package/lib-prod/env/env.electron-app.js +71 -0
  47. package/lib-prod/env/env.electron-app.js.map +1 -0
  48. package/lib-prod/env/env.mobile-app.d.ts +64 -0
  49. package/lib-prod/env/env.mobile-app.js +71 -0
  50. package/lib-prod/env/env.mobile-app.js.map +1 -0
  51. package/lib-prod/env/env.npm-lib-and-cli-tool.d.ts +64 -0
  52. package/lib-prod/env/env.npm-lib-and-cli-tool.js +71 -0
  53. package/lib-prod/env/env.npm-lib-and-cli-tool.js.map +1 -0
  54. package/lib-prod/env/env.vscode-plugin.d.ts +64 -0
  55. package/lib-prod/env/env.vscode-plugin.js +71 -0
  56. package/lib-prod/env/env.vscode-plugin.js.map +1 -0
  57. package/lib-prod/env/index.d.ts +6 -0
  58. package/lib-prod/env/index.js +23 -0
  59. package/lib-prod/env/index.js.map +1 -0
  60. package/lib-prod/helpers.d.ts +11 -0
  61. package/lib-prod/helpers.js +26 -0
  62. package/lib-prod/helpers.js.map +1 -0
  63. package/lib-prod/index._auto-generated_.d.ts +0 -0
  64. package/lib-prod/index._auto-generated_.js +6 -0
  65. package/lib-prod/index._auto-generated_.js.map +1 -0
  66. package/lib-prod/index.d.ts +10 -0
  67. package/lib-prod/index.js +30 -0
  68. package/lib-prod/index.js.map +1 -0
  69. package/lib-prod/mapping.d.ts +13 -0
  70. package/lib-prod/mapping.js +280 -0
  71. package/lib-prod/mapping.js.map +1 -0
  72. package/lib-prod/models.d.ts +186 -0
  73. package/lib-prod/models.js +214 -0
  74. package/lib-prod/models.js.map +1 -0
  75. package/lib-prod/other/simple-resource.d.ts +30 -0
  76. package/lib-prod/other/simple-resource.js +138 -0
  77. package/lib-prod/other/simple-resource.js.map +1 -0
  78. package/lib-prod/params.d.ts +24 -0
  79. package/lib-prod/params.js +319 -0
  80. package/lib-prod/params.js.map +1 -0
  81. package/lib-prod/resource-service.d.ts +43 -0
  82. package/lib-prod/resource-service.js +210 -0
  83. package/lib-prod/resource-service.js.map +1 -0
  84. package/lib-prod/rest-headers.d.ts +58 -0
  85. package/lib-prod/rest-headers.js +141 -0
  86. package/lib-prod/rest-headers.js.map +1 -0
  87. package/lib-prod/rest-request.d.ts +29 -0
  88. package/lib-prod/rest-request.js +376 -0
  89. package/lib-prod/rest-request.js.map +1 -0
  90. package/lib-prod/rest.class.d.ts +36 -0
  91. package/lib-prod/rest.class.js +145 -0
  92. package/lib-prod/rest.class.js.map +1 -0
  93. package/package.json +9 -7
  94. package/websql/package.json +1 -1
  95. package/websql-prod/README.md +24 -0
  96. package/websql-prod/fesm2022/ng2-rest-websql.mjs +1804 -0
  97. package/websql-prod/fesm2022/ng2-rest-websql.mjs.map +1 -0
  98. package/websql-prod/types/ng2-rest-websql.d.ts +427 -0
@@ -0,0 +1,319 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.regexisPath = void 0;
4
+ exports.isValid = isValid;
5
+ exports.check = check;
6
+ exports.getModels = getModels;
7
+ exports.getRestPramsNames = getRestPramsNames;
8
+ exports.containsModels = containsModels;
9
+ exports.stars = stars;
10
+ exports.getRestParams = getRestParams;
11
+ exports.interpolateParamsToUrl = interpolateParamsToUrl;
12
+ exports.decodeUrl = decodeUrl;
13
+ exports.getParamsUrl = getParamsUrl;
14
+ exports.prepareUrlOldWay = prepareUrlOldWay;
15
+ const diff_1 = require("diff");
16
+ const lib_prod_1 = require("tnp-core/lib-prod");
17
+ const lib_prod_2 = require("ng2-logger/lib-prod");
18
+ const helpers_1 = require("./helpers");
19
+ const log = lib_prod_2.Log.create('[ng2-rest] params', lib_prod_2.Level.__NOTHING);
20
+ /** check if string is a valid pattern */
21
+ function isValid(pattern) {
22
+ return (new RegExp('\/:[a-zA-Z]*', 'g')).test(pattern.replace('://', ''));
23
+ }
24
+ function check(url, pattern) {
25
+ if (!helpers_1.Helpers.checkValidUrl(url)) {
26
+ log.error(`Incorrect url: ${url}`);
27
+ return false;
28
+ }
29
+ if (url.charAt(url.length - 1) === '/')
30
+ url = url.slice(0, url.length - 2);
31
+ if (pattern.charAt(pattern.length - 1) === '/')
32
+ pattern = pattern.slice(0, url.length - 2);
33
+ pattern = pattern.replace(/\//g, '\/');
34
+ pattern = pattern.replace(new RegExp('\/:[a-zA-Z]*', 'g'), '.+');
35
+ let reg = new RegExp(pattern, 'g');
36
+ return reg.test(url);
37
+ }
38
+ function getModels(pattern) {
39
+ let m = pattern.match(new RegExp('[a-z-A-Z]*\/:', 'g'));
40
+ return m.map(p => p.replace('/:', ''));
41
+ }
42
+ function getRestPramsNames(pattern) {
43
+ if (pattern.charAt(pattern.length - 1) !== '/')
44
+ pattern = `${pattern}/`;
45
+ let m = pattern.match(new RegExp(':[a-zA-Z]*\/', 'g'));
46
+ let res = m.map(p => p.replace(':', '').replace('/', ''));
47
+ return res.filter(p => p.trim() !== '');
48
+ }
49
+ function containsModels(url, models) {
50
+ if (url.charAt(0) !== '/')
51
+ url = '/' + url;
52
+ // url = url.replace(new RegExp('\/', 'g'), '');
53
+ let res = models.filter(m => {
54
+ let word = '/' + m;
55
+ // log.d('word', word)
56
+ let iii = url.indexOf(word);
57
+ // log.d('iii', iii)
58
+ if (iii + word.length < url.length && url.charAt(iii + word.length) !== '/') {
59
+ return false;
60
+ }
61
+ if (iii !== -1) {
62
+ url = url.replace(new RegExp('\/' + m, 'g'), '');
63
+ return true;
64
+ }
65
+ return false;
66
+ }).length;
67
+ // log.d('containsModels', res);
68
+ return res === models.length;
69
+ }
70
+ function stars(n) {
71
+ let res = '';
72
+ for (let i = 0; i < n; i++)
73
+ res += '*';
74
+ return res;
75
+ }
76
+ function getRestParams(url, pattern) {
77
+ let res = {};
78
+ let models = getRestPramsNames(pattern);
79
+ // log.d('models', models);
80
+ models.forEach(m => {
81
+ pattern = pattern.replace(`:${m}`, stars(m.length));
82
+ });
83
+ let currentModel = void 0;
84
+ (0, diff_1.diffChars)(pattern, url).forEach(d => {
85
+ // log.d('d', d);
86
+ if (d.added) {
87
+ if (!isNaN(Number(d.value)))
88
+ res[currentModel] = Number(d.value);
89
+ else if (d.value.trim() === 'true')
90
+ res[currentModel] = true;
91
+ else if (d.value.trim() === 'false')
92
+ res[currentModel] = false;
93
+ else
94
+ res[currentModel] = decodeURIComponent(d.value);
95
+ currentModel = void 0;
96
+ }
97
+ let m = d.value.replace(':', "");
98
+ // log.d('model m', m)
99
+ if (d.removed) {
100
+ currentModel = models.shift();
101
+ }
102
+ });
103
+ return res;
104
+ }
105
+ exports.regexisPath = /[^\..]+(\.[^\..]+)+/g;
106
+ /**
107
+ * Models like books/:id
108
+ */
109
+ function cutUrlModel(params, models, output) {
110
+ if (models.length === 0)
111
+ return output.join('\/');
112
+ let m = models.pop();
113
+ let param = m.match(/:[a-zA-Z0-9\.]+/)[0].replace(':', '');
114
+ const paramIsPath = exports.regexisPath.test(param);
115
+ // log.i('cut param', param)
116
+ let model = m.match(/[a-zA-Z0-9]+\//)[0].replace('\/', '');
117
+ if (params === void 0 ||
118
+ (paramIsPath ? lib_prod_1._.get(params, param) === void 0 : params[param] === void 0) ||
119
+ param === 'undefined') {
120
+ output.length = 0;
121
+ output.unshift(model);
122
+ return cutUrlModel(params, models, output);
123
+ }
124
+ else {
125
+ if (paramIsPath) {
126
+ // log.i('param is path', param)
127
+ let mrep = m.replace(new RegExp(`:${param}`, 'g'), `${lib_prod_1._.get(params, param)}`);
128
+ output.unshift(mrep);
129
+ return cutUrlModel(params, models, output);
130
+ }
131
+ else {
132
+ // log.i('param is normal', param)
133
+ let mrep = m.replace(new RegExp(`:${param}`, 'g'), `${params[param]}`);
134
+ output.unshift(mrep);
135
+ return cutUrlModel(params, models, output);
136
+ }
137
+ }
138
+ }
139
+ function interpolateParamsToUrl(params, url) {
140
+ const regexInt = /\[\[([^\..]+\.[^\..]+)+\]\]/g;
141
+ url = url.split('/').map(p => {
142
+ // log.d('url parts', p)
143
+ let isParam = p.startsWith(':');
144
+ if (isParam) {
145
+ let part = p.slice(1);
146
+ // log.d('url param part', p)
147
+ if (regexInt.test(part)) {
148
+ // let level = (url.split('.').length - 1)
149
+ part = part.replace('[[', '');
150
+ part = part.replace(']]', '');
151
+ }
152
+ return `:${part}`;
153
+ }
154
+ return p;
155
+ }).join('/');
156
+ // log.i('URL TO EXPOSE', url)
157
+ // log.i('params', params)
158
+ let slash = {
159
+ start: url.charAt(0) === '\/',
160
+ end: url.charAt(url.length - 1) === '\/'
161
+ };
162
+ let morePramsOnEnd = url.match(/(\/:[a-zA-Z0-9\.]+){2,10}/g);
163
+ if (morePramsOnEnd && (Array.isArray(morePramsOnEnd) && morePramsOnEnd.length === 1)) {
164
+ // log.i('morePramsOnEnd', morePramsOnEnd)
165
+ let m = morePramsOnEnd[0];
166
+ let match = m.match(/\/:[a-zA-Z0-9\.]+/g);
167
+ // log.i('match', match)
168
+ match.forEach(e => {
169
+ let c = e.replace('\/:', '');
170
+ // log.i('c', c)
171
+ if (exports.regexisPath.test(c)) {
172
+ url = url.replace(e, `/${lib_prod_1._.get(params, c)}`);
173
+ }
174
+ else {
175
+ url = url.replace(e, `/${params[c]}`);
176
+ }
177
+ // log.i('prog url', url)
178
+ });
179
+ return url;
180
+ }
181
+ let nestedParams = url.match(/[a-zA-Z0-9]+\/:[a-zA-Z0-9\.]+/g);
182
+ if (!nestedParams || (Array.isArray(nestedParams) && nestedParams.length === 0))
183
+ return url;
184
+ // check alone params
185
+ if (!slash.end)
186
+ url = `${url}/`;
187
+ let addUndefinedForAlone = (!/:[a-zA-Z0-9\.]+\/$/g.test(url) && /[a-zA-Z0-9]+\/$/g.test(url));
188
+ let replace = (nestedParams.length > 1 ? nestedParams.join('\/') : nestedParams[0]) +
189
+ (addUndefinedForAlone ? '\/' + url.match(/[a-zA-Z0-9]+\/$/g)[0] : '\/');
190
+ let beginHref = url.replace(replace, '');
191
+ if (addUndefinedForAlone) {
192
+ url = url.replace(/\/$/g, '/:undefined');
193
+ nestedParams = url.match(/[a-zA-Z0-9]+\/:[a-zA-Z0-9\.]+/g);
194
+ url = cutUrlModel(params, nestedParams, []);
195
+ }
196
+ else {
197
+ url = cutUrlModel(params, nestedParams, []);
198
+ }
199
+ url = beginHref + url;
200
+ if (url.charAt(url.length - 1) !== '/' && slash.end)
201
+ url = `${url}/`;
202
+ if (url.charAt(0) !== '\/' && slash.start)
203
+ url = `/${url}`;
204
+ return url;
205
+ }
206
+ /**
207
+ * Get query params from url, like 'ex' in /api/books?ex=value
208
+ */
209
+ function decodeUrl(url) {
210
+ let regex = /[?&]([^=#]+)=([^&#]*)/g, params = {}, match;
211
+ while (match = regex.exec(url)) {
212
+ params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
213
+ }
214
+ let paramsObject = params;
215
+ for (let p in paramsObject) {
216
+ if (paramsObject[p] === void 0) {
217
+ delete paramsObject[p];
218
+ continue;
219
+ }
220
+ if (paramsObject.hasOwnProperty(p)) {
221
+ // chcek if property is number
222
+ let n = Number(params[p]);
223
+ if (!isNaN(n)) {
224
+ params[p] = n;
225
+ continue;
226
+ }
227
+ if (typeof params[p] === 'string') {
228
+ // check if property is object
229
+ let json;
230
+ try {
231
+ json = JSON.parse(params[p]);
232
+ }
233
+ catch (error) { }
234
+ if (json !== void 0) {
235
+ params[p] = json;
236
+ continue;
237
+ }
238
+ // chcek if property value is like regular rexpression
239
+ // let regexExpression;
240
+ // try {
241
+ // regexExpression = new RegExp(params[p]);
242
+ // } catch (e) { }
243
+ // if (regexExpression !== undefined) params[p] = regexExpression;
244
+ }
245
+ }
246
+ }
247
+ return params;
248
+ }
249
+ /**
250
+ * Create query params string for url
251
+ *
252
+ * @export
253
+ * @param {UrlParams[]} params
254
+ * @returns {string}
255
+ */
256
+ function getParamsUrl(params, doNotSerialize = false) {
257
+ let urlparts = [];
258
+ if (!params)
259
+ return '';
260
+ if (!(params instanceof Array))
261
+ return '';
262
+ if (params.length === 0)
263
+ return '';
264
+ params.forEach(urlparam => {
265
+ if (JSON.stringify(urlparam) !== '{}') {
266
+ let parameters = [];
267
+ let paramObject = urlparam;
268
+ for (let p in paramObject) {
269
+ if (paramObject[p] === void 0)
270
+ delete paramObject[p];
271
+ if (paramObject.hasOwnProperty(p) && typeof p === 'string' && p !== 'regex' && !(paramObject[p] instanceof RegExp)) {
272
+ if (p.length > 0 && p[0] === '/') {
273
+ let newName = p.slice(1, p.length - 1);
274
+ urlparam[newName] = urlparam[p];
275
+ urlparam[p] = void 0;
276
+ p = newName;
277
+ }
278
+ if (p.length > 0 && p[p.length - 1] === '/') {
279
+ let newName = p.slice(0, p.length - 2);
280
+ urlparam[newName] = urlparam[p];
281
+ urlparam[p] = void 0;
282
+ p = newName;
283
+ }
284
+ let v = urlparam[p];
285
+ if (v instanceof Object) {
286
+ urlparam[p] = JSON.stringify(urlparam[p]);
287
+ }
288
+ urlparam[p] = doNotSerialize ? urlparam[p] : encodeURIComponent(urlparam[p]);
289
+ if (urlparam.regex !== void 0 && urlparam.regex instanceof RegExp) {
290
+ if (!urlparam.regex.test(urlparam[p])) {
291
+ console.warn(`Data: ${urlparam[p]} incostistent with regex ${urlparam.regex.source}`);
292
+ }
293
+ }
294
+ parameters.push(`${p}=${urlparam[p]}`);
295
+ }
296
+ }
297
+ urlparts.push(parameters.join('&'));
298
+ }
299
+ });
300
+ let join = urlparts.join().trim();
301
+ if (join.trim() === '')
302
+ return '';
303
+ return `?${urlparts.join('&')}`;
304
+ }
305
+ function transform(o) {
306
+ if (typeof o === 'object') {
307
+ return encodeURIComponent(JSON.stringify(o));
308
+ }
309
+ return o;
310
+ }
311
+ function prepareUrlOldWay(params) {
312
+ if (!params)
313
+ return this.endpoint;
314
+ if (typeof params === 'object') {
315
+ params = transform(params);
316
+ }
317
+ return this.endpoint + '/' + params;
318
+ }
319
+ //# sourceMappingURL=params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAWA,0BAEC;AAED,sBAWC;AAED,8BAGC;AAED,8CAKC;AAED,wCAmBC;AAED,sBAIC;AAED,sCAyBC;AAsCD,wDA0EC;AAKD,8BA0CC;AASD,oCAsDC;AAWD,4CAMC;AA3UD,+BAAiC;AACjC,gDAAsC;AACtC,kDAAiD;AAEjD,uCAAoC;AAEpC,MAAM,GAAG,GAAG,cAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,gBAAK,CAAC,SAAS,CAAC,CAAA;AAI5D,yCAAyC;AACzC,SAAgB,OAAO,CAAC,OAAe;IACrC,OAAO,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAgB,KAAK,CAAC,GAAW,EAAE,OAAe;IAChD,IAAI,CAAC,iBAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3F,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACvC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IACjE,IAAI,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,SAAgB,SAAS,CAAC,OAAe;IACvC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,iBAAiB,CAAC,OAAe;IAC/C,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,GAAG,GAAG,OAAO,GAAG,CAAC;IACxE,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,SAAgB,cAAc,CAAC,GAAW,EAAE,MAAgB;IAC1D,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,gDAAgD;IAChD,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC1B,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;QACnB,sBAAsB;QACtB,IAAI,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5B,oBAAoB;QACpB,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC,MAAM,CAAC;IACV,gCAAgC;IAChC,OAAO,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC;AAC/B,CAAC;AAED,SAAgB,KAAK,CAAC,CAAS;IAC7B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,GAAG,CAAC;IACvC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,aAAa,CAAC,GAAW,EAAE,OAAe;IACxD,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,2BAA2B;IAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACjB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAA;IAEF,IAAI,YAAY,GAAW,KAAK,CAAC,CAAC;IAClC,IAAA,gBAAS,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAClC,iBAAiB;QACjB,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;iBAC5D,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,MAAM;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;iBACxD,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,OAAO;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;;gBAC1D,GAAG,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACrD,YAAY,GAAG,KAAK,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,sBAAsB;QACtB,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,YAAY,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAEY,QAAA,WAAW,GAAG,sBAAsB,CAAC;AAElD;;GAEG;AACH,SAAS,WAAW,CAAC,MAAc,EAAE,MAAgB,EAAE,MAAgB;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;IAErB,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,mBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC3C,4BAA4B;IAC5B,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3D,IAAI,MAAM,KAAK,KAAK,CAAC;QACnB,CAAC,WAAW,CAAC,CAAC,CAAC,YAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC;QAC1E,KAAK,KAAK,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrB,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,IAAI,WAAW,EAAE,CAAC;YAChB,gCAAgC;YAChC,IAAI,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,YAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;YAC7E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACpB,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,IAAI,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACtE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACpB,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;IAEH,CAAC;AACH,CAAC;AAGD,SAAgB,sBAAsB,CAAC,MAAc,EAAE,GAAW;IAEhE,MAAM,QAAQ,GAAG,8BAA8B,CAAC;IAEhD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC3B,wBAAwB;QACxB,IAAI,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,6BAA6B;YAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,0CAA0C;gBAC1C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;gBAC7B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;YAC/B,CAAC;YACD,OAAO,IAAI,IAAI,EAAE,CAAA;QACnB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,8BAA8B;IAE9B,0BAA0B;IAE1B,IAAI,KAAK,GAAG;QACV,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI;QAC7B,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI;KACzC,CAAA;IAED,IAAI,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC7D,IAAI,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACrF,0CAA0C;QAC1C,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC1C,wBAAwB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,gBAAgB;YAChB,IAAI,mBAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,YAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;YAC9C,CAAC;iBAAM,CAAC;gBACN,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACvC,CAAC;YAGD,yBAAyB;QAC3B,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC/D,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC;IAE5F,qBAAqB;IACrB,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAChC,IAAI,oBAAoB,GAAG,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAE9F,IAAI,OAAO,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1E,IAAI,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAExC,IAAI,oBAAoB,EAAE,CAAC;QACzB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACxC,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAC3D,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC;IACD,GAAG,GAAG,SAAS,GAAG,GAAG,CAAC;IAEtB,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACrE,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IAE3D,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;EAEE;AACF,SAAgB,SAAS,CAAC,GAAW;IACnC,IAAI,KAAK,GAAG,wBAAwB,EAClC,MAAM,GAAG,EAAE,EACX,KAAK,CAAC;IACR,OAAO,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,YAAY,GAAW,MAAM,CAAC;IAClC,KAAK,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QAC3B,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,8BAA8B;YAC9B,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACd,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACd,SAAS;YACX,CAAC;YACD,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAElC,8BAA8B;gBAC9B,IAAI,IAAI,CAAC;gBACT,IAAI,CAAC;oBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC;gBACnB,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;oBACjB,SAAS;gBACX,CAAC;gBAED,sDAAsD;gBACtD,uBAAuB;gBACvB,QAAQ;gBACR,+CAA+C;gBAC/C,kBAAkB;gBAClB,kEAAkE;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,MAA0B,EAAE,iBAA0B,KAAK;IACtF,IAAI,QAAQ,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,IAAI,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEnC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QACxB,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;YAEtC,IAAI,UAAU,GAAa,EAAE,CAAC;YAC9B,IAAI,WAAW,GAAW,QAAQ,CAAC;YAGnC,KAAK,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC;gBAC1B,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;oBAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;gBACrD,IAAI,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,EAAE,CAAC;oBACnH,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBACjC,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACvC,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;wBAChC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;wBACrB,CAAC,GAAG,OAAO,CAAC;oBACd,CAAC;oBACD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBAC5C,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACvC,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;wBAChC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;wBACrB,CAAC,GAAG,OAAO,CAAC;oBACd,CAAC;oBACD,IAAI,CAAC,GAAQ,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACzB,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC;wBACxB,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5C,CAAC;oBACD,QAAQ,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7F,IAAI,QAAQ,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;wBAElE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC9C,OAAO,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,4BAA4B,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;wBACxF,CAAC;oBACH,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACzC,CAAC;YAEH,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAGtC,CAAC;IAGH,CAAC,CAAC,CAAC;IACH,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,CAAC;AAGD,SAAS,SAAS,CAAC,CAAC;IAClB,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAGD,SAAgB,gBAAgB,CAAC,MAA6B;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;IAClC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,MAAM,CAAC;AACtC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { Circ } from 'json10/lib-prod';
2
+ import { Observable } from 'rxjs';
3
+ import { Subject } from 'rxjs';
4
+ import { Cookie } from './cookie';
5
+ import { Mapping } from './mapping';
6
+ import { Models } from './models';
7
+ import { RestHeaders } from './rest-headers';
8
+ import { RestRequest } from './rest-request';
9
+ import { Rest } from './rest.class';
10
+ export declare class Resource<E, T, TA> {
11
+ protected static _listenErrors: Subject<Models.BackendError>;
12
+ protected static _listenSuccess: Subject<Models.HttpResponse<any>>;
13
+ static get listenErrors(): Observable<Models.BackendError>;
14
+ static get listenSuccessOperations(): Observable<Models.HttpResponse<any>>;
15
+ static enableWarnings: boolean;
16
+ private checkNestedModels;
17
+ private static instance;
18
+ private static endpoints;
19
+ static getModel(endpoint: string, model: string): Rest<any>;
20
+ static request: RestRequest;
21
+ static create<A, TA = A[]>(e: string, model?: string, entityMapping?: Mapping.Mapping, circular?: Circ[], customContentType?: RestHeaders): Models.ResourceModel<A, TA>;
22
+ static reset(): void;
23
+ private constructor();
24
+ static Cookies: Cookie;
25
+ private static map;
26
+ private static prepareModel;
27
+ /**
28
+ * And enipoint to application
29
+ *
30
+ * @param {E} endpoint
31
+ * @param {string} model
32
+ * @returns {boolean}
33
+ */
34
+ private add;
35
+ /**
36
+ * Access api throught endpoint
37
+ *
38
+ * @param {E} endpoint
39
+ * @param {string} model
40
+ * @returns {Rest<T, TA>}
41
+ */
42
+ private api;
43
+ }
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Resource = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const cookie_1 = require("./cookie");
6
+ const params_1 = require("./params");
7
+ const rest_request_1 = require("./rest-request");
8
+ const rest_class_1 = require("./rest.class");
9
+ //#endregion
10
+ // const log = Log.create('resouce-service', Level.__NOTHING);
11
+ class Resource {
12
+ static _listenErrors = new rxjs_1.Subject();
13
+ static _listenSuccess = new rxjs_1.Subject();
14
+ static get listenErrors() {
15
+ return this._listenErrors.asObservable();
16
+ }
17
+ static get listenSuccessOperations() {
18
+ return this._listenSuccess.asObservable();
19
+ }
20
+ static enableWarnings = true;
21
+ //#region private mthods and fields
22
+ checkNestedModels(model, allModels) {
23
+ // if (model.indexOf('/') !== -1) { //TODO make this better, becouse now I unecesary checking shit
24
+ for (let p in allModels) {
25
+ if (allModels.hasOwnProperty(p)) {
26
+ let m = allModels[p];
27
+ if ((0, params_1.isValid)(p)) {
28
+ let urlModels = (0, params_1.getModels)(p);
29
+ if ((0, params_1.containsModels)(model, urlModels)) {
30
+ model = p;
31
+ break;
32
+ }
33
+ }
34
+ }
35
+ }
36
+ // }
37
+ return model;
38
+ }
39
+ static instance = new Resource();
40
+ static endpoints = {};
41
+ static getModel(endpoint, model) {
42
+ model = Resource.prepareModel(model);
43
+ const e = Resource.endpoints[endpoint];
44
+ if (!e) {
45
+ return void 0;
46
+ }
47
+ const r = Resource.endpoints[endpoint].models[model];
48
+ return Resource.endpoints[endpoint].models[model];
49
+ }
50
+ static request = new rest_request_1.RestRequest();
51
+ //#endregion
52
+ //#region create
53
+ static create(e, model, entityMapping, circular, customContentType) {
54
+ const badRestRegEX = new RegExp('((\/:)[a-z]+)+', 'g');
55
+ const matchArr = model.match(badRestRegEX) || [];
56
+ const badModelsNextToEachOther = matchArr.join();
57
+ const atleas2DoubleDots = (badModelsNextToEachOther.match(new RegExp(':', 'g')) || []).length >= 2;
58
+ if (atleas2DoubleDots && model.search(badModelsNextToEachOther) !== -1) {
59
+ throw new Error(`
60
+
61
+ Bad rest model: ${model}
62
+
63
+ Do not create rest models like this: /book/author/:bookid/:authorid
64
+ Instead use nested approach: /book/:bookid/author/:authorid
65
+ `);
66
+ }
67
+ Resource.map(e, e);
68
+ Resource.instance.add(e, model ? model : '', entityMapping, circular, customContentType);
69
+ // if (model.charAt(model.length - 1) !== '/') model = `${model}/`;
70
+ return {
71
+ model: (params) => Resource.instance.api(e, (0, params_1.interpolateParamsToUrl)(params, model)),
72
+ get headers() {
73
+ return Resource.getModel(e, model).headers;
74
+ },
75
+ };
76
+ }
77
+ //#endregion
78
+ //#region reset
79
+ static reset() {
80
+ Resource.endpoints = {};
81
+ }
82
+ //#endregion
83
+ //#region constructor
84
+ constructor() { }
85
+ //#endregion
86
+ static Cookies = cookie_1.Cookie.Instance;
87
+ //#region map
88
+ static map(endpoint, url) {
89
+ // log.i('url', url);
90
+ let regex = /(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-\/]))?/;
91
+ let e = endpoint;
92
+ if (!regex.test(url)) {
93
+ throw `Url address is not correct: ${url}`;
94
+ }
95
+ if (url.charAt(url.length - 1) === '/')
96
+ url = url.slice(0, url.length - 1);
97
+ // log.i('url after', url);
98
+ if (Resource.endpoints[e] !== void 0) {
99
+ // Helpers.log(
100
+ // 'Cannot use map function at the same API endpoint again (' +
101
+ // Resource.endpoints[e].url +
102
+ // ')',
103
+ // );
104
+ return false;
105
+ }
106
+ Resource.endpoints[e] = {
107
+ url: url,
108
+ models: {},
109
+ entity: null,
110
+ };
111
+ // log.i('enpoints', Resource.endpoints);
112
+ return true;
113
+ }
114
+ //#endregion
115
+ static prepareModel(model) {
116
+ if (model.charAt(model.length - 1) === '/') {
117
+ model = model.slice(0, model.length - 1);
118
+ }
119
+ if (model.charAt(0) === '/') {
120
+ model = model.slice(1, model.length);
121
+ }
122
+ return model;
123
+ }
124
+ //#region add
125
+ /**
126
+ * And enipoint to application
127
+ *
128
+ * @param {E} endpoint
129
+ * @param {string} model
130
+ * @returns {boolean}
131
+ */
132
+ add(endpoint, model, entity, circular, customContentType) {
133
+ // log.i(`I am maping ${model} on ${<any>endpoint}`);
134
+ model = Resource.prepareModel(model);
135
+ let e;
136
+ e = endpoint.toString();
137
+ if (Resource.endpoints[e] === void 0) {
138
+ console.error('Endpoint is not mapped ! Cannot add model ' + model);
139
+ return;
140
+ }
141
+ if (Resource.endpoints[e].models[model] !== void 0) {
142
+ if (Resource.enableWarnings)
143
+ console.warn(`Model '${model}' is already defined in endpoint: ` +
144
+ Resource.endpoints[e].url);
145
+ return;
146
+ }
147
+ Resource.endpoints[e].models[model] = new rest_class_1.Rest(Resource.endpoints[e].url + '/' + model, Resource.request, {
148
+ endpoint: e,
149
+ path: model,
150
+ entity,
151
+ circular,
152
+ }, customContentType); // TODO put custom content type in meta ?
153
+ return;
154
+ }
155
+ //#endregion
156
+ //#region api
157
+ /**
158
+ * Access api throught endpoint
159
+ *
160
+ * @param {E} endpoint
161
+ * @param {string} model
162
+ * @returns {Rest<T, TA>}
163
+ */
164
+ api(endpoint, model) {
165
+ // log.i(`[api]
166
+ // creating for endpoint: "${endpoint}"
167
+ // model: "${model}"
168
+ // `)
169
+ if (model.charAt(0) === '/')
170
+ model = model.slice(1, model.length);
171
+ let e = endpoint.toString();
172
+ if (Resource.endpoints[e] === void 0) {
173
+ throw `Endpoint: ${endpoint} is not mapped ! Cannot add model: ${model}`;
174
+ }
175
+ let allModels = Resource.endpoints[e].models;
176
+ let orgModel = model;
177
+ model = this.checkNestedModels(model, allModels);
178
+ if (Resource.endpoints[e].models[model] === void 0) {
179
+ // log.d('Resource.endpoints', Resource.endpoints);
180
+ throw `Model '${model}' is undefined in endpoint: ${Resource.endpoints[e].url} `;
181
+ }
182
+ let res = Resource.endpoints[endpoint.toString()].models[model];
183
+ // log.d(`
184
+ // orgModel: ${orgModel}
185
+ // model: ${model}
186
+ // `)
187
+ if (orgModel !== model) {
188
+ let baseUrl = Resource.endpoints[endpoint.toString()].url;
189
+ // log.d('base', Resource.endpoints[<string>(endpoint).toString()])
190
+ // log.d('baseUrl', baseUrl)
191
+ // log.d('orgModel', orgModel)
192
+ res.__rest_endpoint = `${baseUrl}/${orgModel}`;
193
+ }
194
+ else {
195
+ res.__rest_endpoint = void 0;
196
+ }
197
+ // log.i(`Resource.endpoints`, Resource.endpoints)
198
+ return res;
199
+ }
200
+ }
201
+ exports.Resource = Resource;
202
+ // const res = Resource.create('')
203
+ // res.model()
204
+ // .mock({
205
+ // code: 500,
206
+ // data: {},
207
+ // isArray: true
208
+ // })
209
+ // .array.
210
+ //# sourceMappingURL=resource-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-service.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Based on Headers from https://github.com/angular/angular/blob/master/packages/http/src/headers.ts
3
+ */
4
+ export type RestHeadersOptions = RestHeaders | {
5
+ [name: string]: (string | string[]);
6
+ };
7
+ export declare class RestHeaders {
8
+ /** @internal header names are lower case */
9
+ _headers: Map<string, string[]>;
10
+ /** @internal map lower case names to actual names */
11
+ _normalizedNames: Map<string, string>;
12
+ static from(headers?: RestHeadersOptions): RestHeaders;
13
+ private constructor();
14
+ /**
15
+ * Returns a new RestHeaders instance from the given DOMString of Response RestHeaders
16
+ */
17
+ static fromResponseHeaderString(headersString: string): RestHeaders;
18
+ /**
19
+ * Appends a header to existing list of header values for a given header name.
20
+ */
21
+ append(name: string, value: string): void;
22
+ /**
23
+ * Deletes all header values for the given name.
24
+ */
25
+ delete(name: string): void;
26
+ forEach(fn: (values: string[], name: string, headers: Map<string, string[]>) => void): void;
27
+ /**
28
+ * Returns first header that matches given name.
29
+ */
30
+ get(name: string): string;
31
+ /**
32
+ * Checks for existence of header by given name.
33
+ */
34
+ has(name: string): boolean;
35
+ /**
36
+ * Returns the names of the headers
37
+ */
38
+ keys(): string[];
39
+ /**
40
+ * Sets or overrides header value for given name.
41
+ */
42
+ set(name: string, value: string | string[]): void;
43
+ /**
44
+ * Returns values of all headers.
45
+ */
46
+ values(): string[][];
47
+ /**
48
+ * Returns string of all headers.
49
+ */
50
+ toJSON(): {
51
+ [name: string]: any;
52
+ };
53
+ /**
54
+ * Returns list of header values for a given name.
55
+ */
56
+ getAll(name: string): string[];
57
+ private mayBeSetNormalizedName;
58
+ }