ng2-rest 21.0.12 → 21.0.17

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 (125) hide show
  1. package/browser/fesm2022/ng2-rest-browser.mjs +3 -5
  2. package/browser/fesm2022/ng2-rest-browser.mjs.map +1 -1
  3. package/browser/package.json +1 -1
  4. package/browser/types/ng2-rest-browser.d.ts +2 -8
  5. package/browser-prod/README.md +24 -0
  6. package/browser-prod/fesm2022/ng2-rest-browser.mjs +1787 -0
  7. package/browser-prod/fesm2022/ng2-rest-browser.mjs.map +1 -0
  8. package/browser-prod/package.json +23 -0
  9. package/browser-prod/types/ng2-rest-browser.d.ts +417 -0
  10. package/browser-prod.split-namespaces.json +72 -0
  11. package/lib/build-info._auto-generated_.d.ts +5 -1
  12. package/lib/build-info._auto-generated_.js +6 -2
  13. package/lib/build-info._auto-generated_.js.map +1 -1
  14. package/lib/env/env.angular-node-app.d.ts +30 -28
  15. package/lib/env/env.angular-node-app.js +32 -30
  16. package/lib/env/env.angular-node-app.js.map +1 -1
  17. package/lib/env/env.docs-webapp.d.ts +30 -28
  18. package/lib/env/env.docs-webapp.js +32 -30
  19. package/lib/env/env.docs-webapp.js.map +1 -1
  20. package/lib/env/env.electron-app.d.ts +30 -28
  21. package/lib/env/env.electron-app.js +32 -30
  22. package/lib/env/env.electron-app.js.map +1 -1
  23. package/lib/env/env.mobile-app.d.ts +30 -28
  24. package/lib/env/env.mobile-app.js +32 -30
  25. package/lib/env/env.mobile-app.js.map +1 -1
  26. package/lib/env/env.npm-lib-and-cli-tool.d.ts +30 -28
  27. package/lib/env/env.npm-lib-and-cli-tool.js +32 -30
  28. package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
  29. package/lib/env/env.vscode-plugin.d.ts +30 -28
  30. package/lib/env/env.vscode-plugin.js +32 -30
  31. package/lib/env/env.vscode-plugin.js.map +1 -1
  32. package/lib/models.d.ts +2 -8
  33. package/lib/models.js +2 -4
  34. package/lib/models.js.map +1 -1
  35. package/lib/package.json +4 -0
  36. package/lib/rest-request.js.map +1 -1
  37. package/lib/rest.class.js +0 -1
  38. package/lib/rest.class.js.map +1 -1
  39. package/lib-prod/axios-interceptors.d.ts +22 -0
  40. package/lib-prod/axios-interceptors.js +22 -0
  41. package/lib-prod/axios-interceptors.js.map +1 -0
  42. package/lib-prod/build-info._auto-generated_.d.ts +24 -0
  43. package/lib-prod/build-info._auto-generated_.js +30 -0
  44. package/lib-prod/build-info._auto-generated_.js.map +1 -0
  45. package/lib-prod/content-type.d.ts +5 -0
  46. package/lib-prod/content-type.js +15 -0
  47. package/lib-prod/content-type.js.map +1 -0
  48. package/lib-prod/cookie.d.ts +8 -0
  49. package/lib-prod/cookie.js +32 -0
  50. package/lib-prod/cookie.js.map +1 -0
  51. package/lib-prod/env/env.angular-node-app.d.ts +64 -0
  52. package/lib-prod/env/env.angular-node-app.js +71 -0
  53. package/lib-prod/env/env.angular-node-app.js.map +1 -0
  54. package/lib-prod/env/env.docs-webapp.d.ts +64 -0
  55. package/lib-prod/env/env.docs-webapp.js +71 -0
  56. package/lib-prod/env/env.docs-webapp.js.map +1 -0
  57. package/lib-prod/env/env.electron-app.d.ts +64 -0
  58. package/lib-prod/env/env.electron-app.js +71 -0
  59. package/lib-prod/env/env.electron-app.js.map +1 -0
  60. package/lib-prod/env/env.mobile-app.d.ts +64 -0
  61. package/lib-prod/env/env.mobile-app.js +71 -0
  62. package/lib-prod/env/env.mobile-app.js.map +1 -0
  63. package/lib-prod/env/env.npm-lib-and-cli-tool.d.ts +64 -0
  64. package/lib-prod/env/env.npm-lib-and-cli-tool.js +71 -0
  65. package/lib-prod/env/env.npm-lib-and-cli-tool.js.map +1 -0
  66. package/lib-prod/env/env.vscode-plugin.d.ts +64 -0
  67. package/lib-prod/env/env.vscode-plugin.js +71 -0
  68. package/lib-prod/env/env.vscode-plugin.js.map +1 -0
  69. package/lib-prod/env/index.d.ts +6 -0
  70. package/{migrations → lib-prod/env}/index.js +6 -2
  71. package/lib-prod/env/index.js.map +1 -0
  72. package/lib-prod/helpers.d.ts +11 -0
  73. package/lib-prod/helpers.js +26 -0
  74. package/lib-prod/helpers.js.map +1 -0
  75. package/lib-prod/index._auto-generated_.js +6 -0
  76. package/lib-prod/index._auto-generated_.js.map +1 -0
  77. package/lib-prod/index.d.ts +10 -0
  78. package/lib-prod/index.js +30 -0
  79. package/lib-prod/index.js.map +1 -0
  80. package/lib-prod/mapping.d.ts +11 -0
  81. package/lib-prod/mapping.js +278 -0
  82. package/lib-prod/mapping.js.map +1 -0
  83. package/lib-prod/models.d.ts +178 -0
  84. package/lib-prod/models.js +207 -0
  85. package/lib-prod/models.js.map +1 -0
  86. package/lib-prod/other/simple-resource.d.ts +30 -0
  87. package/lib-prod/other/simple-resource.js +138 -0
  88. package/lib-prod/other/simple-resource.js.map +1 -0
  89. package/lib-prod/package.json +4 -0
  90. package/lib-prod/params.d.ts +24 -0
  91. package/lib-prod/params.js +319 -0
  92. package/lib-prod/params.js.map +1 -0
  93. package/lib-prod/resource-service.d.ts +43 -0
  94. package/lib-prod/resource-service.js +210 -0
  95. package/lib-prod/resource-service.js.map +1 -0
  96. package/lib-prod/rest-headers.d.ts +58 -0
  97. package/lib-prod/rest-headers.js +141 -0
  98. package/lib-prod/rest-headers.js.map +1 -0
  99. package/lib-prod/rest-request.d.ts +29 -0
  100. package/lib-prod/rest-request.js +376 -0
  101. package/lib-prod/rest-request.js.map +1 -0
  102. package/lib-prod/rest.class.d.ts +36 -0
  103. package/lib-prod/rest.class.js +144 -0
  104. package/lib-prod/rest.class.js.map +1 -0
  105. package/lib-prod.split-namespaces.json +72 -0
  106. package/package.json +9 -7
  107. package/websql/fesm2022/ng2-rest-websql.mjs +3 -5
  108. package/websql/fesm2022/ng2-rest-websql.mjs.map +1 -1
  109. package/websql/package.json +1 -1
  110. package/websql/types/ng2-rest-websql.d.ts +2 -8
  111. package/websql-prod/README.md +24 -0
  112. package/websql-prod/fesm2022/ng2-rest-websql.mjs +1787 -0
  113. package/websql-prod/fesm2022/ng2-rest-websql.mjs.map +1 -0
  114. package/websql-prod/package.json +23 -0
  115. package/websql-prod/types/ng2-rest-websql.d.ts +417 -0
  116. package/websql-prod.split-namespaces.json +72 -0
  117. package/lib/request-cache.d.ts +0 -18
  118. package/lib/request-cache.js +0 -118
  119. package/lib/request-cache.js.map +0 -1
  120. package/migrations/index.d.ts +0 -1
  121. package/migrations/index.js.map +0 -1
  122. package/migrations/migrations_index._auto-generated_.js +0 -4
  123. package/migrations/migrations_index._auto-generated_.js.map +0 -1
  124. package/tmp-environment.json +0 -43
  125. /package/{migrations/migrations_index._auto-generated_.d.ts → lib-prod/index._auto-generated_.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Models_HttpResponse, Models_UrlParams } from '../models';
3
+ export interface RestPromises<A, TA, QP extends Models_UrlParams> {
4
+ get: (tem?: A, queryParams?: QP) => Observable<Models_HttpResponse<A>>;
5
+ head: (tem?: A, queryParams?: QP) => Observable<Models_HttpResponse<A>>;
6
+ query: (tem?: A, queryParams?: QP) => Observable<Models_HttpResponse<TA>>;
7
+ put: (item?: A, queryParams?: QP) => Observable<Models_HttpResponse<A>>;
8
+ patch: (item?: A, queryParams?: QP) => Observable<Models_HttpResponse<A>>;
9
+ post: (item?: A, queryParams?: QP) => Observable<Models_HttpResponse<A>>;
10
+ delete: (item?: A, queryParams?: QP) => Observable<Models_HttpResponse<A> | any>;
11
+ }
12
+ export interface Model<A, TA, RP extends Object, QP extends Models_UrlParams> {
13
+ (restParams?: RP): RestPromises<A, TA, QP>;
14
+ }
15
+ /**
16
+ *
17
+ * @export
18
+ * @class SimpleResource
19
+ * @template A single model type
20
+ * @template TA array model type
21
+ * @template RP rest parameters type
22
+ * @template QP query parameters type
23
+ */
24
+ export declare class SimpleResource<A, TA> {
25
+ model: Model<A, TA, Object, Models_UrlParams>;
26
+ private static _isSetQueryParamsSerialization;
27
+ static set doNotSerializeQueryParams(value: any);
28
+ static __destroy(): void;
29
+ constructor(endpoint: string, model: string);
30
+ }
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleResource = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const resource_service_1 = require("../resource-service");
6
+ /**
7
+ *
8
+ * @export
9
+ * @abstract
10
+ * @class SimpleResource
11
+ * @extends {Resource<T, A, TA>}
12
+ * @template E Endpoint type
13
+ * @template A Single modle type
14
+ * @template TA Array Model Type
15
+ * @template RP rest url parameters type
16
+ * @template QP query parameter type
17
+ */
18
+ class ExtendedResource {
19
+ endpoint;
20
+ path_model;
21
+ static doNotSerializeQueryParams = false;
22
+ static handlers = [];
23
+ rest;
24
+ /**
25
+ * Get model by rest params
26
+ */
27
+ model = (restParams) => {
28
+ return {
29
+ get: (item, queryPrams) => {
30
+ return rxjs_1.Observable.create((observer) => {
31
+ ExtendedResource.handlers.push(this.rest
32
+ .model(restParams)
33
+ .get(item, [queryPrams], {
34
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
35
+ })
36
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
37
+ });
38
+ },
39
+ patch: (item, queryParams) => {
40
+ return rxjs_1.Observable.create((observer) => {
41
+ ExtendedResource.handlers.push(this.rest
42
+ .model(restParams)
43
+ .put(item, [queryParams], {
44
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
45
+ })
46
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
47
+ });
48
+ },
49
+ head: (item, queryPrams) => {
50
+ return rxjs_1.Observable.create((observer) => {
51
+ ExtendedResource.handlers.push(this.rest
52
+ .model(restParams)
53
+ .head(item, [queryPrams], {
54
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
55
+ })
56
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
57
+ });
58
+ },
59
+ query: (item, queryPrams) => {
60
+ return rxjs_1.Observable.create((observer) => {
61
+ ExtendedResource.handlers.push(this.rest
62
+ .model(restParams)
63
+ .array.get(item, [queryPrams], {
64
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
65
+ })
66
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
67
+ });
68
+ },
69
+ post: (item, queryParams) => {
70
+ return rxjs_1.Observable.create((observer) => {
71
+ ExtendedResource.handlers.push(this.rest
72
+ .model(restParams)
73
+ .post(item, [queryParams], {
74
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
75
+ })
76
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
77
+ });
78
+ },
79
+ put: (item, queryParams) => {
80
+ return rxjs_1.Observable.create((observer) => {
81
+ ExtendedResource.handlers.push(this.rest
82
+ .model(restParams)
83
+ .put(item, [queryParams], {
84
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
85
+ })
86
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
87
+ });
88
+ },
89
+ delete: (item, queryPrams) => {
90
+ return rxjs_1.Observable.create((observer) => {
91
+ ExtendedResource.handlers.push(this.rest
92
+ .model(restParams)
93
+ .delete(item, [queryPrams], {
94
+ doNotSerializeParams: ExtendedResource.doNotSerializeQueryParams,
95
+ })
96
+ .observable.subscribe(data => observer.next(data.body.json), err => observer.error(err), () => observer.complete()));
97
+ });
98
+ },
99
+ };
100
+ };
101
+ // add(endpoint: E, model: string, group?: string, name?: string, description?: string) { }
102
+ constructor(endpoint, path_model) {
103
+ this.endpoint = endpoint;
104
+ this.path_model = path_model;
105
+ this.rest = resource_service_1.Resource.create(endpoint, path_model);
106
+ }
107
+ }
108
+ /**
109
+ *
110
+ * @export
111
+ * @class SimpleResource
112
+ * @template A single model type
113
+ * @template TA array model type
114
+ * @template RP rest parameters type
115
+ * @template QP query parameters type
116
+ */
117
+ class SimpleResource {
118
+ model;
119
+ static _isSetQueryParamsSerialization = false;
120
+ static set doNotSerializeQueryParams(value) {
121
+ if (!SimpleResource._isSetQueryParamsSerialization) {
122
+ SimpleResource._isSetQueryParamsSerialization = true;
123
+ ExtendedResource.doNotSerializeQueryParams = value;
124
+ return;
125
+ }
126
+ console.warn(`Query params serialization already set as
127
+ ${ExtendedResource.doNotSerializeQueryParams},`);
128
+ }
129
+ static __destroy() {
130
+ ExtendedResource.handlers.forEach(h => h.unsubscribe());
131
+ }
132
+ constructor(endpoint, model) {
133
+ let rest = new ExtendedResource(endpoint, model);
134
+ this.model = rest.model;
135
+ }
136
+ }
137
+ exports.SimpleResource = SimpleResource;
138
+ //# sourceMappingURL=simple-resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-resource.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ {
2
+ "name": "ng2-rest/lib-prod",
3
+ "version": "21.0.17"
4
+ }
@@ -0,0 +1,24 @@
1
+ import { Models_UrlParams } from './models';
2
+ /** check if string is a valid pattern */
3
+ export declare function isValid(pattern: string): boolean;
4
+ export declare function check(url: string, pattern: string): boolean;
5
+ export declare function getModels(pattern: string): string[];
6
+ export declare function getRestPramsNames(pattern: string): string[];
7
+ export declare function containsModels(url: string, models: string[]): boolean;
8
+ export declare function stars(n: number): string;
9
+ export declare function getRestParams(url: string, pattern: string): Object;
10
+ export declare const regexisPath: RegExp;
11
+ export declare function interpolateParamsToUrl(params: Object, url: string): string;
12
+ /**
13
+ * Get query params from url, like 'ex' in /api/books?ex=value
14
+ */
15
+ export declare function decodeUrl(url: string): Object;
16
+ /**
17
+ * Create query params string for url
18
+ *
19
+ * @export
20
+ * @param {UrlParams[]} params
21
+ * @returns {string}
22
+ */
23
+ export declare function getParamsUrl(params: Models_UrlParams[], doNotSerialize?: boolean): string;
24
+ export declare function prepareUrlOldWay(params?: TemplateStringsArray): string;
@@ -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":"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"}
@@ -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_Mapping } from './mapping';
6
+ import { Models_BackendError, Models_HttpResponse, Models_ResourceModel } 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
+ }