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,214 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HttpResponseError = exports.Models = exports.RestErrorResponseWrapper = exports.RestResponseWrapper = void 0;
4
+ const lib_prod_1 = require("json10/lib-prod");
5
+ const lib_prod_2 = require("tnp-core/lib-prod");
6
+ const lib_prod_3 = require("tnp-core/lib-prod");
7
+ const lib_prod_4 = require("tnp-core/lib-prod");
8
+ const lib_prod_5 = require("typescript-class-helpers/lib-prod");
9
+ const cookie_1 = require("./cookie");
10
+ const mapping_1 = require("./mapping");
11
+ class RestCommonHttpResponseWrapper {
12
+ }
13
+ class RestResponseWrapper extends RestCommonHttpResponseWrapper {
14
+ }
15
+ exports.RestResponseWrapper = RestResponseWrapper;
16
+ class RestErrorResponseWrapper extends RestCommonHttpResponseWrapper {
17
+ }
18
+ exports.RestErrorResponseWrapper = RestErrorResponseWrapper;
19
+ // const log = Log.create('rest namespace', Level.__NOTHING)
20
+ var Models;
21
+ (function (Models) {
22
+ Models.MethodConfig = lib_prod_5.Models.MethodConfig;
23
+ Models.ClassConfig = lib_prod_5.Models.ClassConfig;
24
+ Models.ParamConfig = lib_prod_5.Models.ParamConfig;
25
+ [];
26
+ class BaseBody {
27
+ toJSON(data, opt) {
28
+ opt = opt || { isJSONArray: false };
29
+ let r = opt.isJSONArray ? [] : {};
30
+ if (typeof data === 'string') {
31
+ try {
32
+ let parsed = JSON.parse(data);
33
+ if (typeof parsed === 'string' && parsed.trim().startsWith('{')) {
34
+ parsed = JSON.parse(parsed);
35
+ }
36
+ if (opt.parsingError && parsed[lib_prod_3.CoreModels.TaonHttpErrorCustomProp]) {
37
+ return lib_prod_2._.merge(new RestErrorResponseWrapper(), parsed);
38
+ }
39
+ return parsed;
40
+ }
41
+ catch (e) { }
42
+ }
43
+ else if (typeof data === 'object') {
44
+ return data;
45
+ }
46
+ return r;
47
+ }
48
+ }
49
+ Models.BaseBody = BaseBody;
50
+ class HttpBody extends BaseBody {
51
+ responseText;
52
+ isArray;
53
+ entity;
54
+ circular;
55
+ constructor(responseText, isArray = false, entity, circular) {
56
+ super();
57
+ this.responseText = responseText;
58
+ this.isArray = isArray;
59
+ this.entity = entity;
60
+ this.circular = circular;
61
+ }
62
+ get blob() {
63
+ return this.responseText;
64
+ }
65
+ get booleanValue() {
66
+ if (!lib_prod_4.Helpers.isBlob(this.responseText)) {
67
+ return ['ok', 'true'].includes(this.responseText?.trim());
68
+ }
69
+ }
70
+ get numericValue() {
71
+ if (!lib_prod_4.Helpers.isBlob(this.responseText)) {
72
+ return Number(this.responseText?.trim());
73
+ }
74
+ }
75
+ get rawJson() {
76
+ if (!lib_prod_4.Helpers.isBlob(this.responseText)) {
77
+ let res = this.toJSON(this.responseText, { isJSONArray: this.isArray });
78
+ if (this.circular && Array.isArray(this.circular)) {
79
+ res = lib_prod_1.JSON10.parse(JSON.stringify(res), this.circular);
80
+ }
81
+ return res;
82
+ }
83
+ }
84
+ get json() {
85
+ const isBlob = lib_prod_4.Helpers.isBlob(this.responseText);
86
+ if (isBlob) {
87
+ return void 0;
88
+ }
89
+ if (this.entity && typeof this.entity === 'function') {
90
+ return this.entity(); // @LAST
91
+ }
92
+ if (this.entity && typeof this.entity === 'object') {
93
+ const json = this.toJSON(this.responseText, {
94
+ isJSONArray: this.isArray,
95
+ });
96
+ return mapping_1.Mapping.encode(json, this.entity, this.circular);
97
+ }
98
+ let res = this.toJSON(this.responseText, { isJSONArray: this.isArray });
99
+ if (this.circular && Array.isArray(this.circular)) {
100
+ res = lib_prod_1.JSON10.parse(JSON.stringify(res), this.circular);
101
+ }
102
+ return res;
103
+ }
104
+ /**
105
+ * undefined when blob
106
+ */
107
+ get text() {
108
+ if (!lib_prod_4.Helpers.isBlob(this.responseText)) {
109
+ return this.responseText
110
+ .replace(/^\"/, '')
111
+ .replace(/\"$/, '');
112
+ }
113
+ }
114
+ }
115
+ Models.HttpBody = HttpBody;
116
+ class ErrorBody extends BaseBody {
117
+ data;
118
+ constructor(data) {
119
+ super();
120
+ this.data = data;
121
+ }
122
+ get json() {
123
+ return this.toJSON(this.data, { parsingError: true });
124
+ }
125
+ get text() {
126
+ return this.data;
127
+ }
128
+ }
129
+ Models.ErrorBody = ErrorBody;
130
+ class BaseResponse {
131
+ responseText;
132
+ headers;
133
+ statusCode;
134
+ isArray;
135
+ static cookies = cookie_1.Cookie.Instance;
136
+ get cookies() {
137
+ return BaseResponse.cookies;
138
+ }
139
+ constructor(responseText, headers, statusCode, isArray = false) {
140
+ this.responseText = responseText;
141
+ this.headers = headers;
142
+ this.statusCode = statusCode;
143
+ this.isArray = isArray;
144
+ }
145
+ }
146
+ Models.BaseResponse = BaseResponse;
147
+ class HttpResponse extends BaseResponse {
148
+ sourceRequest;
149
+ responseText;
150
+ headers;
151
+ statusCode;
152
+ entity;
153
+ circular;
154
+ jobid;
155
+ isArray;
156
+ body;
157
+ // public readonly TOTAL_COUNT_HEADER = 'X-Total-Count'.toLowerCase();
158
+ // public get totalElements(): number {
159
+ // return Number(this.headers.get(this.TOTAL_COUNT_HEADER));
160
+ // }
161
+ constructor(sourceRequest, responseText, headers, statusCode, entity, circular, jobid, isArray = false) {
162
+ // console.log({
163
+ // sourceRequest, responseText, headers, statusCode, entity, circular, jobid, isArray
164
+ // })
165
+ super(responseText, headers, statusCode, isArray);
166
+ this.sourceRequest = sourceRequest;
167
+ this.responseText = responseText;
168
+ this.headers = headers;
169
+ this.statusCode = statusCode;
170
+ this.entity = entity;
171
+ this.circular = circular;
172
+ this.jobid = jobid;
173
+ this.isArray = isArray;
174
+ this.init();
175
+ }
176
+ init() {
177
+ if (typeof this.entity === 'string') {
178
+ // const headerWithMapping = headers.get(entity);
179
+ let entityJSON = this.headers?.getAll(this.entity);
180
+ if (!!entityJSON) {
181
+ this.entity = JSON.parse(entityJSON.join());
182
+ }
183
+ }
184
+ if (typeof this.circular === 'string') {
185
+ // const headerWithMapping = headers.get(circular);
186
+ let circuralJSON = this.headers?.getAll(this.circular);
187
+ if (!!circuralJSON) {
188
+ this.circular = JSON.parse(circuralJSON.join());
189
+ }
190
+ }
191
+ this.body = new HttpBody(this.responseText, this.isArray, this.entity, this.circular);
192
+ }
193
+ }
194
+ Models.HttpResponse = HttpResponse;
195
+ // | 'json' - I am parsing json from text...
196
+ //#endregion
197
+ })(Models || (exports.Models = Models = {}));
198
+ class HttpResponseError extends Models.BaseResponse {
199
+ message;
200
+ jobid;
201
+ sourceRequest;
202
+ body;
203
+ // public tryRecconect() {
204
+ // }
205
+ constructor(message, responseText, headers, statusCode, jobid, sourceRequest) {
206
+ super(responseText, headers, statusCode);
207
+ this.message = message;
208
+ this.jobid = jobid;
209
+ this.sourceRequest = sourceRequest;
210
+ this.body = new Models.ErrorBody(responseText);
211
+ }
212
+ }
213
+ exports.HttpResponseError = HttpResponseError;
214
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAGA,8CAA+C;AAI/C,gDAAsC;AACtC,gDAA+C;AAC/C,gDAA4C;AAC5C,gEAA4E;AAE5E,qCAAkC;AAClC,uCAAoC;AAIpC,MAAM,6BAA6B;CAElC;AAED,MAAa,mBAAoB,SAAQ,6BAA6B;CAErE;AAFD,kDAEC;AAED,MAAa,wBAAyB,SAAQ,6BAA6B;CAc1E;AAdD,4DAcC;AAED,4DAA4D;AAE5D,IAAiB,MAAM,CAgTtB;AAhTD,WAAiB,MAAM;IAIP,mBAAY,GAAG,iBAAa,CAAC,YAAY,CAAC;IAC1C,kBAAW,GAAG,iBAAa,CAAC,WAAW,CAAC;IACxC,kBAAW,GAAG,iBAAa,CAAC,WAAW,CAAC;IAuGtD,EAAE,CAAC;IAEH,MAAsB,QAAQ;QAClB,MAAM,CACd,IAAI,EACJ,GAGC;YAED,GAAG,GAAG,GAAG,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wBAChE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC9B,CAAC;oBACD,IAAI,GAAG,CAAC,YAAY,IAAI,MAAM,CAAC,qBAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;wBACnE,OAAO,YAAC,CAAC,KAAK,CAAC,IAAI,wBAAwB,EAAE,EAAE,MAAM,CAAC,CAAC;oBACzD,CAAC;oBACD,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;YAChB,CAAC;iBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,CAAQ,CAAC;QAClB,CAAC;KACF;IA1BqB,eAAQ,WA0B7B,CAAA;IAED,MAAa,QAAY,SAAQ,QAAQ;QAE7B;QACA;QACA;QACA;QAJV,YACU,YAA2B,EAC3B,UAAU,KAAK,EACf,MAAuB,EACvB,QAAgB;YAExB,KAAK,EAAE,CAAC;YALA,iBAAY,GAAZ,YAAY,CAAe;YAC3B,YAAO,GAAP,OAAO,CAAQ;YACf,WAAM,GAAN,MAAM,CAAiB;YACvB,aAAQ,GAAR,QAAQ,CAAQ;QAG1B,CAAC;QAED,IAAW,IAAI;YACb,OAAO,IAAI,CAAC,YAAoB,CAAC;QACnC,CAAC;QAED,IAAW,YAAY;YACrB,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAE,IAAI,CAAC,YAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,IAAW,YAAY;YACrB,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,OAAO,MAAM,CAAE,IAAI,CAAC,YAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,IAAW,OAAO;YAChB,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxE,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClD,GAAG,GAAG,iBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzD,CAAC;gBAED,OAAO,GAAG,CAAC;YACb,CAAC;QACH,CAAC;QAED,IAAW,IAAI;YACb,MAAM,MAAM,GAAG,kBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,KAAK,CAAC,CAAC;YAChB,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACrD,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ;YAChC,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACnD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE;oBAC1C,WAAW,EAAE,IAAI,CAAC,OAAO;iBAC1B,CAAC,CAAC;gBACH,OAAO,iBAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAQ,CAAC;YACjE,CAAC;YACD,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClD,GAAG,GAAG,iBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,GAAU,CAAC;QACpB,CAAC;QAED;;WAEG;QACH,IAAW,IAAI;YACb,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,OAAQ,IAAI,CAAC,YAAuB;qBACjC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;qBAClB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;KACF;IApEY,eAAQ,WAoEpB,CAAA;IAED,MAAa,SAAwC,SAAQ,QAAQ;QAC/C;QAApB,YAAoB,IAAI;YACtB,KAAK,EAAE,CAAC;YADU,SAAI,GAAJ,IAAI,CAAA;QAExB,CAAC;QAED,IAAW,IAAI;YACb,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAQ,CAAC;QAC/D,CAAC;QACD,IAAW,IAAI;YACb,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;KACF;IAXY,gBAAS,YAWrB,CAAA;IAED,MAAsB,YAAY;QAOvB;QACS;QACA;QACT;QATC,MAAM,CAAU,OAAO,GAAG,eAAM,CAAC,QAAQ,CAAC;QAEpD,IAAW,OAAO;YAChB,OAAO,YAAY,CAAC,OAAO,CAAC;QAC9B,CAAC;QACD,YACS,YAA4B,EACnB,OAAqB,EACrB,UAA8B,EACvC,UAAU,KAAK;YAHf,iBAAY,GAAZ,YAAY,CAAgB;YACnB,YAAO,GAAP,OAAO,CAAc;YACrB,eAAU,GAAV,UAAU,CAAoB;YACvC,YAAO,GAAP,OAAO,CAAQ;QACrB,CAAC;;IAXgB,mBAAY,eAYjC,CAAA;IAED,MAAa,YAAgB,SAAQ,YAAe;QAQzC;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QAdF,IAAI,CAAc;QACzB,sEAAsE;QACtE,uCAAuC;QACvC,gEAAgE;QAChE,IAAI;QAEJ,YACS,aAAsD,EACtD,YAA4B,EAC5B,OAAqB,EACrB,UAA8B,EAC9B,MAAmC,EACnC,QAAiB,EACjB,KAAc,EACd,UAAU,KAAK;YAEtB,gBAAgB;YAChB,uFAAuF;YACvF,KAAK;YACL,KAAK,CAAC,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAZ3C,kBAAa,GAAb,aAAa,CAAyC;YACtD,iBAAY,GAAZ,YAAY,CAAgB;YAC5B,YAAO,GAAP,OAAO,CAAc;YACrB,eAAU,GAAV,UAAU,CAAoB;YAC9B,WAAM,GAAN,MAAM,CAA6B;YACnC,aAAQ,GAAR,QAAQ,CAAS;YACjB,UAAK,GAAL,KAAK,CAAS;YACd,YAAO,GAAP,OAAO,CAAQ;YAOtB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;QAEM,IAAI;YACT,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpC,iDAAiD;gBACjD,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;oBACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YACD,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACtC,mDAAmD;gBACnD,IAAI,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvD,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;oBACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,CACtB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CACP,CAAC;QACX,CAAC;KACF;IA/CY,mBAAY,eA+CxB,CAAA;IAkBD,4CAA4C;IAE5C,YAAY;AACd,CAAC,EAhTgB,MAAM,sBAAN,MAAM,QAgTtB;AAED,MAAa,iBAEX,SAAQ,MAAM,CAAC,YAAiB;IAMvB;IAIA;IACA;IAVO,IAAI,CAA+B;IACnD,0BAA0B;IAE1B,IAAI;IACJ,YACS,OAAe,EACtB,YAAqB,EACrB,OAAqB,EACrB,UAAqC,EAC9B,KAAc,EACd,aAAuD;QAE9D,KAAK,CAAC,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAPlC,YAAO,GAAP,OAAO,CAAQ;QAIf,UAAK,GAAL,KAAK,CAAS;QACd,kBAAa,GAAb,aAAa,CAA0C;QAG9D,IAAI,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,SAAS,CAAa,YAAY,CAAC,CAAC;IAC7D,CAAC;CACF;AAlBD,8CAkBC"}
@@ -0,0 +1,30 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Models } 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,24 @@
1
+ import { Models } 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;