@klerick/json-api-nestjs-sdk 10.0.0-beta.1 → 10.0.0-beta.11

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/CHANGELOG.md +163 -0
  2. package/README.md +876 -0
  3. package/cjs/src/index.js +3 -1
  4. package/cjs/src/index.js.map +1 -1
  5. package/cjs/src/lib/json-api-angular.js +7 -3
  6. package/cjs/src/lib/json-api-angular.js.map +1 -1
  7. package/cjs/src/lib/json-api-js.js +24 -5
  8. package/cjs/src/lib/json-api-js.js.map +1 -1
  9. package/cjs/src/lib/service/atomic-operations.service.js.map +1 -1
  10. package/cjs/src/lib/service/fetch-inner-client.js +8 -2
  11. package/cjs/src/lib/service/fetch-inner-client.js.map +1 -1
  12. package/cjs/src/lib/service/json-api-sdk.service.js +49 -18
  13. package/cjs/src/lib/service/json-api-sdk.service.js.map +1 -1
  14. package/cjs/src/lib/service/json-api-utils.service.js +111 -49
  15. package/cjs/src/lib/service/json-api-utils.service.js.map +1 -1
  16. package/cjs/src/lib/types/entity-chain.js +3 -0
  17. package/cjs/src/lib/types/entity-chain.js.map +1 -0
  18. package/cjs/src/lib/types/index.js +1 -0
  19. package/cjs/src/lib/types/index.js.map +1 -1
  20. package/cjs/src/lib/utils/adapter-for-axios.js.map +1 -1
  21. package/cjs/src/lib/utils/generate-atomic-body.js +14 -2
  22. package/cjs/src/lib/utils/generate-atomic-body.js.map +1 -1
  23. package/cjs/src/lib/utils/http-params.js +1 -1
  24. package/cjs/src/lib/utils/http-params.js.map +1 -1
  25. package/cjs/src/lib/utils/utils.js +46 -2
  26. package/cjs/src/lib/utils/utils.js.map +1 -1
  27. package/cjs/src/ngModule.js.map +1 -1
  28. package/mjs/package.json +1 -75
  29. package/mjs/src/index.d.ts +2 -2
  30. package/mjs/src/index.js +1 -1
  31. package/mjs/src/index.js.map +1 -1
  32. package/mjs/src/lib/json-api-angular.d.ts +5 -7
  33. package/mjs/src/lib/json-api-angular.js +7 -3
  34. package/mjs/src/lib/json-api-angular.js.map +1 -1
  35. package/mjs/src/lib/json-api-js.d.ts +2 -2
  36. package/mjs/src/lib/json-api-js.js +23 -3
  37. package/mjs/src/lib/json-api-js.js.map +1 -1
  38. package/mjs/src/lib/service/atomic-operations.service.d.ts +2 -2
  39. package/mjs/src/lib/service/atomic-operations.service.js.map +1 -1
  40. package/mjs/src/lib/service/json-api-sdk.service.d.ts +8 -3
  41. package/mjs/src/lib/service/json-api-sdk.service.js +36 -12
  42. package/mjs/src/lib/service/json-api-sdk.service.js.map +1 -1
  43. package/mjs/src/lib/service/json-api-utils.service.d.ts +4 -3
  44. package/mjs/src/lib/service/json-api-utils.service.js +84 -33
  45. package/mjs/src/lib/service/json-api-utils.service.js.map +1 -1
  46. package/mjs/src/lib/types/atomic-operation.d.ts +4 -4
  47. package/mjs/src/lib/types/atomic-operation.js +0 -1
  48. package/mjs/src/lib/types/config.js +0 -1
  49. package/mjs/src/lib/types/entity-chain.d.ts +32 -0
  50. package/mjs/src/lib/types/entity-chain.js +1 -0
  51. package/mjs/src/lib/types/entity-chain.js.map +1 -0
  52. package/mjs/src/lib/types/http-inner-client.js +0 -1
  53. package/mjs/src/lib/types/http-request-params.js +0 -1
  54. package/mjs/src/lib/types/index.d.ts +1 -0
  55. package/mjs/src/lib/types/index.js +1 -0
  56. package/mjs/src/lib/types/index.js.map +1 -1
  57. package/mjs/src/lib/types/promise-json-api-sdk.d.ts +14 -3
  58. package/mjs/src/lib/types/promise-json-api-sdk.js +0 -1
  59. package/mjs/src/lib/types/query-params.d.ts +3 -3
  60. package/mjs/src/lib/types/utils.js +0 -1
  61. package/mjs/src/lib/utils/adapter-for-axios.d.ts +2 -2
  62. package/mjs/src/lib/utils/adapter-for-axios.js.map +1 -1
  63. package/mjs/src/lib/utils/generate-atomic-body.js +3 -0
  64. package/mjs/src/lib/utils/generate-atomic-body.js.map +1 -1
  65. package/mjs/src/lib/utils/utils.d.ts +19 -0
  66. package/mjs/src/lib/utils/utils.js +35 -0
  67. package/mjs/src/lib/utils/utils.js.map +1 -1
  68. package/mjs/src/ngModule.d.ts +1 -1
  69. package/mjs/src/ngModule.js.map +1 -1
  70. package/package.json +26 -27
  71. package/cjs/package.json +0 -73
  72. package/cjs/src/index.d.ts +0 -5
  73. package/cjs/src/lib/constants/index.d.ts +0 -1
  74. package/cjs/src/lib/json-api-angular.d.ts +0 -21
  75. package/cjs/src/lib/json-api-js.d.ts +0 -15
  76. package/cjs/src/lib/service/atomic-operations.service.d.ts +0 -22
  77. package/cjs/src/lib/service/fetch-inner-client.d.ts +0 -20
  78. package/cjs/src/lib/service/index.d.ts +0 -3
  79. package/cjs/src/lib/service/json-api-sdk.service.d.ts +0 -21
  80. package/cjs/src/lib/service/json-api-utils.service.d.ts +0 -28
  81. package/cjs/src/lib/token/index.d.ts +0 -4
  82. package/cjs/src/lib/types/atomic-operation.d.ts +0 -33
  83. package/cjs/src/lib/types/atomic-type.d.ts +0 -23
  84. package/cjs/src/lib/types/config.d.ts +0 -14
  85. package/cjs/src/lib/types/filter-operand.d.ts +0 -10
  86. package/cjs/src/lib/types/http-inner-client.d.ts +0 -19
  87. package/cjs/src/lib/types/http-request-params.d.ts +0 -20
  88. package/cjs/src/lib/types/index.d.ts +0 -9
  89. package/cjs/src/lib/types/promise-json-api-sdk.d.ts +0 -16
  90. package/cjs/src/lib/types/query-params.d.ts +0 -47
  91. package/cjs/src/lib/types/utils.d.ts +0 -6
  92. package/cjs/src/lib/utils/adapter-for-axios.d.ts +0 -3
  93. package/cjs/src/lib/utils/entity-array.d.ts +0 -9
  94. package/cjs/src/lib/utils/generate-atomic-body.d.ts +0 -22
  95. package/cjs/src/lib/utils/http-params.d.ts +0 -154
  96. package/cjs/src/lib/utils/index.d.ts +0 -5
  97. package/cjs/src/lib/utils/utils.d.ts +0 -4
  98. package/cjs/src/ngModule.d.ts +0 -4
@@ -1,6 +1,7 @@
1
1
  import { EMPTY, expand, reduce, throwError } from 'rxjs';
2
2
  import { map } from 'rxjs/operators';
3
3
  import { EntityArray, getTypeForReq } from '../utils';
4
+ const AS_PLAIN_RESULT = Symbol('asPlainResult');
4
5
  export class JsonApiSdkService {
5
6
  http;
6
7
  jsonApiUtilsService;
@@ -10,16 +11,35 @@ export class JsonApiSdkService {
10
11
  this.jsonApiUtilsService = jsonApiUtilsService;
11
12
  this.jsonApiSdkConfig = jsonApiSdkConfig;
12
13
  }
13
- getList(entity, params) {
14
+ entity(typeName, data, raw) {
15
+ const instance = this.jsonApiUtilsService.createEntityInstance(typeName);
16
+ const entityObj = Object.assign(instance, data);
17
+ if (raw)
18
+ return entityObj;
19
+ // Mark for plain result when used via chain
20
+ Reflect.set(entityObj, AS_PLAIN_RESULT, true);
21
+ return new Proxy(this, {
22
+ get: (target, method) => {
23
+ const fn = target[method];
24
+ if (typeof fn === 'function') {
25
+ return (...args) => fn.call(target, entityObj, ...args);
26
+ }
27
+ return fn;
28
+ },
29
+ });
30
+ }
31
+ getList(entityOrTypeName, params) {
32
+ const asPlain = typeof entityOrTypeName === 'string';
33
+ const name = asPlain ? entityOrTypeName : entityOrTypeName.name;
14
34
  const query = this.jsonApiUtilsService.getQueryStringParams(params);
15
35
  return this.http
16
- .get(this.jsonApiUtilsService.getUrlForResource(entity.name), {
36
+ .get(this.jsonApiUtilsService.getUrlForResource(name), {
17
37
  params: query.toObject(),
18
38
  })
19
39
  .pipe(map((result) => {
20
40
  const resource = params
21
- ? this.jsonApiUtilsService.convertResponseData(result, params.include)
22
- : this.jsonApiUtilsService.convertResponseData(result);
41
+ ? this.jsonApiUtilsService.convertResponseData(result, params.include, asPlain)
42
+ : this.jsonApiUtilsService.convertResponseData(result, undefined, asPlain);
23
43
  const { totalItems, pageSize, pageNumber } = Object.assign({
24
44
  totalItems: 0,
25
45
  pageNumber: 0,
@@ -32,8 +52,8 @@ export class JsonApiSdkService {
32
52
  });
33
53
  }));
34
54
  }
35
- getAll(entity, params, push = true) {
36
- const request = this.getList(entity, params).pipe(expand((r) => {
55
+ getAll(entityOrTypeName, params, push = true) {
56
+ const request = this.getList(entityOrTypeName, params).pipe(expand((r) => {
37
57
  if (r.pageNumber * r.pageSize >= r.totalItems) {
38
58
  return EMPTY;
39
59
  }
@@ -46,7 +66,7 @@ export class JsonApiSdkService {
46
66
  },
47
67
  },
48
68
  };
49
- return this.getList(entity, newParams);
69
+ return this.getList(entityOrTypeName, newParams);
50
70
  }));
51
71
  if (!push) {
52
72
  return request.pipe(reduce((acum, item) => {
@@ -63,18 +83,21 @@ export class JsonApiSdkService {
63
83
  }
64
84
  return request;
65
85
  }
66
- getOne(entity, id, params) {
86
+ getOne(entityOrTypeName, id, params) {
67
87
  if (!id) {
68
88
  return throwError(() => new Error('Id for resource is required'));
69
89
  }
90
+ const asPlain = typeof entityOrTypeName === 'string';
91
+ const name = asPlain ? entityOrTypeName : entityOrTypeName.name;
70
92
  const query = this.jsonApiUtilsService.getQueryStringParams(params);
71
93
  return this.http
72
- .get(`${this.jsonApiUtilsService.getUrlForResource(entity.name)}/${id}`, {
94
+ .get(`${this.jsonApiUtilsService.getUrlForResource(name)}/${id}`, {
73
95
  params: query.toObject(),
74
96
  })
75
- .pipe(map((result) => this.jsonApiUtilsService.convertResponseData(result, params?.include)));
97
+ .pipe(map((result) => this.jsonApiUtilsService.convertResponseData(result, params?.include, asPlain)));
76
98
  }
77
99
  postOne(entity) {
100
+ const asPlain = Reflect.has(entity, AS_PLAIN_RESULT);
78
101
  const { attributes, relationships } = this.jsonApiUtilsService.generateBody(entity);
79
102
  const body = {
80
103
  data: {
@@ -85,13 +108,14 @@ export class JsonApiSdkService {
85
108
  };
86
109
  return this.http
87
110
  .post(this.jsonApiUtilsService.getUrlForResource(entity.constructor.name), body)
88
- .pipe(map((r) => this.jsonApiUtilsService.convertResponseData(r)));
111
+ .pipe(map((r) => this.jsonApiUtilsService.convertResponseData(r, (Object.keys(relationships).length > 0 ? Object.keys(relationships) : undefined), asPlain)));
89
112
  }
90
113
  patchOne(entity) {
91
114
  const id = Reflect.get(entity, this.jsonApiSdkConfig.idKey);
92
115
  if (!id) {
93
116
  return throwError(() => new Error('Resource params should be instance of resource with id params'));
94
117
  }
118
+ const asPlain = Reflect.has(entity, AS_PLAIN_RESULT);
95
119
  const { attributes, relationships } = this.jsonApiUtilsService.generateBody(entity);
96
120
  const body = {
97
121
  data: {
@@ -107,7 +131,7 @@ export class JsonApiSdkService {
107
131
  }
108
132
  return this.http
109
133
  .patch(`${this.jsonApiUtilsService.getUrlForResource(entity.constructor.name)}/${id}`, body)
110
- .pipe(map((r) => this.jsonApiUtilsService.convertResponseData(r)));
134
+ .pipe(map((r) => this.jsonApiUtilsService.convertResponseData(r, (Object.keys(relationships).length > 0 ? Object.keys(relationships) : undefined), asPlain)));
111
135
  }
112
136
  deleteOne(entity) {
113
137
  const id = Reflect.get(entity, this.jsonApiSdkConfig.idKey);
@@ -1 +1 @@
1
- {"version":3,"file":"json-api-sdk.service.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/service/json-api-sdk.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-api-sdk.service.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/service/json-api-sdk.service.ts"],"names":[],"mappings":"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"}
@@ -13,10 +13,11 @@ export declare class JsonApiUtilsService {
13
13
  private getFieldParam;
14
14
  private getFilterParam;
15
15
  convertResponseData<E extends object>(body: ResourceObject<E>, includeEntity?: QueryParams<E>['include']): E;
16
- convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'array', null, IdKey>, includeEntity?: QueryParams<E>['include']): E[];
17
- convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'object', null, IdKey>, includeEntity?: QueryParams<E>['include']): E;
18
- convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'array', null, IdKey>, includeEntity?: QueryParams<E>['include']): E[];
16
+ convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'array', null, IdKey>, includeEntity?: QueryParams<E>['include'], asPlain?: boolean): E[];
17
+ convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'object', null, IdKey>, includeEntity?: QueryParams<E>['include'], asPlain?: boolean): E;
18
+ convertResponseData<E extends object, IdKey extends string>(body: ResourceObject<E, 'array', null, IdKey>, includeEntity?: QueryParams<E>['include'], asPlain?: boolean): E[];
19
19
  createEntityInstance<E>(name: string): E;
20
+ private createMinimalEntityFromRelationship;
20
21
  private findIncludeEntity;
21
22
  generateBody<E extends object>(entity: E): {
22
23
  attributes: {} | undefined;
@@ -1,6 +1,6 @@
1
1
  import { createEntityInstance, isObject, ObjectTyped, } from '@klerick/json-api-nestjs-shared';
2
2
  import { kebabCase } from 'change-case-commonjs';
3
- import { getTypeForReq, HttpParams, isRelation } from '../utils';
3
+ import { getTypeForReq, HttpParams, isRelation, isNullRef, isEmptyArrayRef } from '../utils';
4
4
  import { ID_KEY } from '../constants';
5
5
  export class JsonApiUtilsService {
6
6
  jsonApiSdkConfig;
@@ -113,16 +113,19 @@ export class JsonApiUtilsService {
113
113
  }
114
114
  return httpParams;
115
115
  }
116
- convertResponseData(body, includeEntity) {
116
+ convertResponseData(body, includeEntity, asPlain = false) {
117
117
  const { data, included = [] } = body;
118
118
  const isArray = Array.isArray(data);
119
119
  const arrayData = isArray ? data : [data];
120
120
  const result = [];
121
121
  for (const dataItem of arrayData) {
122
+ let id = dataItem[this.jsonApiSdkConfig.idKey];
123
+ if (this.jsonApiSdkConfig.idIsNumber) {
124
+ const idNumber = parseInt(id, 10);
125
+ id = isNaN(idNumber) ? id : idNumber;
126
+ }
122
127
  const entityObject = {
123
- [this.jsonApiSdkConfig.idKey]: this.jsonApiSdkConfig.idIsNumber
124
- ? parseInt(dataItem[this.jsonApiSdkConfig.idKey], 10)
125
- : dataItem[this.jsonApiSdkConfig.idKey],
128
+ [this.jsonApiSdkConfig.idKey]: id,
126
129
  ...Object.entries(dataItem.attributes || []).reduce((acum, [key, val]) => {
127
130
  acum[key] = this.jsonApiSdkConfig.dateFields.includes(key)
128
131
  ? new Date(String(val))
@@ -130,32 +133,55 @@ export class JsonApiUtilsService {
130
133
  return acum;
131
134
  }, {}),
132
135
  };
133
- const itemEntity = Object.assign(this.createEntityInstance(dataItem.type), entityObject);
134
- if (!includeEntity || includeEntity.length === 0) {
135
- result.push(itemEntity);
136
- continue;
137
- }
138
- for (const itemInclude of includeEntity) {
139
- if (!(dataItem.relationships && dataItem.relationships[itemInclude])) {
140
- continue;
141
- }
142
- const relationship = dataItem.relationships[itemInclude];
143
- if (!relationship || !('data' in relationship) || !relationship.data) {
144
- continue;
145
- }
146
- const relationshipData = relationship.data;
147
- if (Array.isArray(relationshipData)) {
148
- itemEntity[itemInclude] = relationshipData.reduce((acum, item) => {
149
- const result = this.findIncludeEntity(item, included);
150
- if (result)
151
- acum.push(result);
152
- return acum;
153
- }, []);
154
- }
155
- else {
156
- const relation = this.findIncludeEntity(relationshipData, included);
157
- if (relation)
158
- itemEntity[itemInclude] = relation;
136
+ const itemEntity = (asPlain
137
+ ? entityObject
138
+ : Object.assign(this.createEntityInstance(dataItem.type), entityObject));
139
+ // Process all relationships from response
140
+ if (dataItem.relationships) {
141
+ for (const [relKey, relationship] of Object.entries(dataItem.relationships)) {
142
+ if (!relationship || typeof relationship !== 'object' || !('data' in relationship)) {
143
+ continue;
144
+ }
145
+ const relationshipData = relationship.data;
146
+ // Skip if no data (null relationship)
147
+ if (relationshipData === null || relationshipData === undefined) {
148
+ continue;
149
+ }
150
+ const isIncluded = includeEntity?.includes(relKey);
151
+ if (Array.isArray(relationshipData)) {
152
+ itemEntity[relKey] = relationshipData.reduce((acum, item) => {
153
+ // Try to find in included first
154
+ const result = isIncluded
155
+ ? this.findIncludeEntity(item, included, asPlain)
156
+ : null;
157
+ if (result) {
158
+ acum.push(result);
159
+ }
160
+ else {
161
+ // Create minimal entity with just id
162
+ const minimalEntity = this.createMinimalEntityFromRelationship(item, asPlain);
163
+ if (minimalEntity)
164
+ acum.push(minimalEntity);
165
+ }
166
+ return acum;
167
+ }, []);
168
+ }
169
+ else {
170
+ // Try to find in included first
171
+ const relation = isIncluded
172
+ ? this.findIncludeEntity(relationshipData, included, asPlain)
173
+ : null;
174
+ if (relation) {
175
+ itemEntity[relKey] = relation;
176
+ }
177
+ else {
178
+ // Create minimal entity with just id
179
+ const minimalEntity = this.createMinimalEntityFromRelationship(relationshipData, asPlain);
180
+ if (minimalEntity) {
181
+ itemEntity[relKey] = minimalEntity;
182
+ }
183
+ }
184
+ }
159
185
  }
160
186
  }
161
187
  result.push(itemEntity);
@@ -170,7 +196,23 @@ export class JsonApiUtilsService {
170
196
  createEntityInstance(name) {
171
197
  return createEntityInstance(name);
172
198
  }
173
- findIncludeEntity(item, included) {
199
+ createMinimalEntityFromRelationship(item, asPlain = false) {
200
+ if (!item || !item['id'])
201
+ return;
202
+ let id = item['id'];
203
+ if (this.jsonApiSdkConfig.idIsNumber) {
204
+ const idNumber = parseInt(id, 10);
205
+ id = isNaN(idNumber) ? id : idNumber;
206
+ }
207
+ const entityObject = {
208
+ [this.jsonApiSdkConfig.idKey]: id,
209
+ };
210
+ if (asPlain) {
211
+ return entityObject;
212
+ }
213
+ return Object.assign(this.createEntityInstance(item.type.toString()), entityObject);
214
+ }
215
+ findIncludeEntity(item, included, asPlain = false) {
174
216
  const relatedIncluded = included.find((includedItem) => includedItem.type === item.type && includedItem.id === item.id);
175
217
  if (!relatedIncluded)
176
218
  return;
@@ -185,6 +227,9 @@ export class JsonApiUtilsService {
185
227
  return acum;
186
228
  }, {}),
187
229
  };
230
+ if (asPlain) {
231
+ return entityObject;
232
+ }
188
233
  return Object.assign(this.createEntityInstance(item.type.toString()), entityObject);
189
234
  }
190
235
  generateBody(entity) {
@@ -208,7 +253,13 @@ export class JsonApiUtilsService {
208
253
  })
209
254
  .reduce((acum, [key, val]) => {
210
255
  let data;
211
- if (Array.isArray(val)) {
256
+ if (isNullRef(val)) {
257
+ data = null;
258
+ }
259
+ else if (isEmptyArrayRef(val)) {
260
+ data = [];
261
+ }
262
+ else if (Array.isArray(val)) {
212
263
  data = val.map((i) => ({
213
264
  type: getTypeForReq(i.constructor.name),
214
265
  id: i[ID_KEY].toString(),
@@ -1 +1 @@
1
- {"version":3,"file":"json-api-utils.service.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/service/json-api-utils.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-api-utils.service.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/service/json-api-utils.service.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,8 @@ export interface AtomicRunPromise<T extends unknown[]> {
8
8
  run(): Promise<T>;
9
9
  }
10
10
  export interface AtomicMainOperations<T extends unknown[]> {
11
- postOne<Entity extends object>(entity: Entity): AtomicOperations<[...T, Entity]>;
12
- patchOne<Entity extends object>(entity: Entity): AtomicOperations<[...T, Entity]>;
11
+ postOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): AtomicOperations<[...T, OutputEntity]>;
12
+ patchOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): AtomicOperations<[...T, OutputEntity]>;
13
13
  deleteOne<Entity extends object>(entity: Entity): AtomicOperations<[...T]>;
14
14
  deleteOne<Entity extends object>(entity: Entity, skipEmpty: true): AtomicOperations<[...T]>;
15
15
  deleteOne<Entity extends object>(entity: Entity, skipEmpty: false): AtomicOperations<[...T, 'EMPTY']>;
@@ -18,8 +18,8 @@ export interface AtomicMainOperations<T extends unknown[]> {
18
18
  deleteRelationships<Entity extends object, Rel extends RelationKeys<Entity>>(entity: Entity, relationType: Rel): AtomicOperations<[...T]>;
19
19
  }
20
20
  export interface AtomicMainOperationsPromise<T extends unknown[]> {
21
- postOne<Entity extends object>(entity: Entity): AtomicOperationsPromise<[...T, Entity]>;
22
- patchOne<Entity extends object>(entity: Entity): AtomicOperationsPromise<[...T, Entity]>;
21
+ postOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): AtomicOperationsPromise<[...T, OutputEntity]>;
22
+ patchOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): AtomicOperationsPromise<[...T, OutputEntity]>;
23
23
  deleteOne<Entity extends object>(entity: Entity): AtomicOperationsPromise<[...T]>;
24
24
  patchRelationships<Entity extends object, Rel extends RelationKeys<Entity>>(entity: Entity, relationType: Rel): AtomicOperationsPromise<[...T, ReturnIfArray<Entity[Rel], string>]>;
25
25
  postRelationships<Entity extends object, Rel extends RelationKeys<Entity>>(entity: Entity, relationType: Rel): AtomicOperationsPromise<[...T, ReturnIfArray<Entity[Rel], string>]>;
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=atomic-operation.js.map
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=config.js.map
@@ -0,0 +1,32 @@
1
+ import { Observable } from 'rxjs';
2
+ import { RelationKeys } from '@klerick/json-api-nestjs-shared';
3
+ import { ReturnIfArray } from './utils';
4
+ /**
5
+ * Chainable entity methods returning Observable
6
+ * @param E - Input entity type (for request body)
7
+ * @param OutputE - Output entity type (for response), defaults to E
8
+ * @param IdKey - ID field key, defaults to 'id'
9
+ */
10
+ export interface EntityChain<E extends object, OutputE extends E = E, IdKey extends string = 'id'> {
11
+ postOne(): Observable<OutputE>;
12
+ patchOne(): Observable<OutputE>;
13
+ deleteOne(): Observable<void>;
14
+ getRelationships<Rel extends RelationKeys<E, IdKey>>(relationType: Rel): Observable<ReturnIfArray<E[Rel], string>>;
15
+ patchRelationships<Rel extends RelationKeys<E, IdKey>>(relationType: Rel): Observable<ReturnIfArray<E[Rel], string>>;
16
+ postRelationships<Rel extends RelationKeys<E, IdKey>>(relationType: Rel): Observable<ReturnIfArray<E[Rel], string>>;
17
+ deleteRelationships<Rel extends RelationKeys<E, IdKey>>(relationType: Rel): Observable<void>;
18
+ }
19
+ /**
20
+ * Converts Observable<T> to Promise<T>
21
+ */
22
+ type ToPromise<T> = T extends Observable<infer U> ? Promise<U> : T;
23
+ /**
24
+ * EntityChain with Promise return types (derived automatically)
25
+ * @param E - Input entity type (for request body)
26
+ * @param OutputE - Output entity type (for response), defaults to E
27
+ * @param IdKey - ID field key, defaults to 'id'
28
+ */
29
+ export type PromiseEntityChain<E extends object, OutputE extends E = E, IdKey extends string = 'id'> = {
30
+ [K in keyof EntityChain<E, OutputE, IdKey>]: EntityChain<E, OutputE, IdKey>[K] extends (...args: infer A) => infer R ? (...args: A) => ToPromise<R> : never;
31
+ };
32
+ export {};
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=entity-chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-chain.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/types/entity-chain.ts"],"names":[],"mappings":""}
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=http-inner-client.js.map
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=http-request-params.js.map
@@ -7,3 +7,4 @@ export * from './config';
7
7
  export * from './query-params';
8
8
  export * from './promise-json-api-sdk';
9
9
  export * from './filter-operand';
10
+ export * from './entity-chain';
@@ -7,4 +7,5 @@ export * from './config';
7
7
  export * from './query-params';
8
8
  export * from './promise-json-api-sdk';
9
9
  export * from './filter-operand';
10
+ export * from './entity-chain';
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
@@ -2,15 +2,26 @@ import { EntityClass, RelationKeys } from '@klerick/json-api-nestjs-shared';
2
2
  import { QueryParams, QueryParamsForOneItem } from './query-params';
3
3
  import { EntityArray } from '../utils';
4
4
  import { ReturnIfArray } from './utils';
5
+ import { PromiseEntityChain } from './entity-chain';
6
+ /**
7
+ * JsonApiSdkService with Promise return types
8
+ * POST/PATCH methods support separate Input and Output types via generics.
9
+ * If OutputEntity is not specified, it defaults to the same as Entity.
10
+ */
5
11
  export interface PromiseJsonApiSdkService {
6
12
  getList<Entity extends object>(entity: EntityClass<Entity>, params?: QueryParams<Entity>): Promise<EntityArray<Entity>>;
7
- getAll<Entity extends object>(entity: EntityClass<Entity>, params?: QueryParams<Entity>): Promise<EntityArray<Entity>>;
13
+ getList<Entity extends object>(typeName: string, params?: QueryParams<Entity>): Promise<EntityArray<Entity>>;
14
+ getAll<Entity extends object>(entity: EntityClass<Entity>, params?: QueryParams<Entity>, push?: boolean): Promise<EntityArray<Entity>>;
15
+ getAll<Entity extends object>(typeName: string, params?: QueryParams<Entity>, push?: boolean): Promise<EntityArray<Entity>>;
8
16
  getOne<Entity extends object>(entity: EntityClass<Entity>, id: string | number, params?: QueryParamsForOneItem<Entity>): Promise<Entity>;
9
- postOne<Entity extends object>(entity: Entity): Promise<Entity>;
10
- patchOne<Entity extends object>(entity: Entity): Promise<Entity>;
17
+ getOne<Entity extends object>(typeName: string, id: string | number, params?: QueryParamsForOneItem<Entity>): Promise<Entity>;
18
+ postOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): Promise<OutputEntity>;
19
+ patchOne<Entity extends object, OutputEntity extends Entity = Entity>(entity: Entity): Promise<OutputEntity>;
11
20
  deleteOne<Entity extends object>(entity: Entity): Promise<void>;
12
21
  getRelationships<Entity extends object, IdKey extends string = 'id', Rel extends RelationKeys<Entity, IdKey> = RelationKeys<Entity, IdKey>>(entity: Entity, relationType: Rel): Promise<ReturnIfArray<Entity[Rel], string>>;
13
22
  patchRelationships<Entity extends object, IdKey extends string = 'id', Rel extends RelationKeys<Entity, IdKey> = RelationKeys<Entity, IdKey>>(entity: Entity, relationType: Rel): Promise<ReturnIfArray<Entity[Rel], string>>;
14
23
  postRelationships<Entity extends object, IdKey extends string = 'id', Rel extends RelationKeys<Entity, IdKey> = RelationKeys<Entity, IdKey>>(entity: Entity, relationType: Rel): Promise<ReturnIfArray<Entity[Rel], string>>;
15
24
  deleteRelationships<Entity extends object, IdKey extends string = 'id', Rel extends RelationKeys<Entity, IdKey> = RelationKeys<Entity, IdKey>>(entity: Entity, relationType: Rel): Promise<void>;
25
+ entity<E extends object, OutputE extends E = E>(typeName: string, data: E): PromiseEntityChain<E, OutputE>;
26
+ entity<E extends object>(typeName: string, data: E, raw: true): E;
16
27
  }
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=promise-json-api-sdk.js.map
@@ -17,8 +17,8 @@ type TargetSort<E> = {
17
17
  type RelationSort<E> = {
18
18
  [K in RelationKeys<E>]?: SortForEntity<TypeOfArray<E[K]>>;
19
19
  };
20
- type Sort<E> = TargetSort<E> & RelationSort<E>;
21
- type Fields<E> = TargetField<E> & RelationField<E>;
20
+ export type Sort<E> = TargetSort<E> & RelationSort<E>;
21
+ export type Fields<E> = TargetField<E> & RelationField<E>;
22
22
  export type Pagination = {
23
23
  number: number;
24
24
  size: number;
@@ -30,7 +30,7 @@ type EntityFilter<E> = {
30
30
  [K in PropertyKeys<E>]?: Operands;
31
31
  };
32
32
  type TargetFilter<E> = {
33
- target: EntityFilter<E> & TargetRelationFilter<E>;
33
+ target?: EntityFilter<E> & TargetRelationFilter<E>;
34
34
  };
35
35
  type RelationFilter<E> = {
36
36
  [K in RelationKeys<E>]?: EntityFilter<TypeOfArray<E[K]>>;
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=utils.js.map
@@ -1,3 +1,3 @@
1
- import { Axios } from 'axios';
1
+ import { AxiosStatic, AxiosInstance } from 'axios';
2
2
  import { HttpInnerClient } from '../types';
3
- export declare function adapterForAxios(axios: Axios): HttpInnerClient;
3
+ export declare function adapterForAxios(axios: AxiosStatic | AxiosInstance): HttpInnerClient;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-for-axios.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/utils/adapter-for-axios.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAYrC,MAAM,eAAe;IACC;IAApB,YAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAE5B,SAAS,CACf,WAA6B,EAC7B,UAA2B;QAE3B,OAAO,IAAI,UAAU,CAAC,CAAC,UAAU,EAAE,EAAE;YACnC,WAAW,EAAE;iBACV,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC7C,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBAClD,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;YAExC,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe;QAIrB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAEjC,OAAO;YACL,UAAU;YACV,MAAM;SACP,CAAC;IACJ,CAAC;IAED,MAAM,CACJ,GAAW,EACX,IAA4C;QAE5C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;IAcD,GAAG,CAQD,GAAW,EAAE,MAAgC;QAC7C,OAAO,IAAI,CAAC,OAAO,CACjB,GAAG,EACH,KAAK,EACL,SAAS,EACT,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CACnC,CAAC;IACJ,CAAC;IAcD,KAAK,CAKH,GAAW,EACX,IAA0D;QAI1D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAkBD,IAAI,CACF,GAAW,EACX,IAAsE;QAMtE,OAAO,IAAI,CAAC,OAAO,CAKjB,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAEO,OAAO,CACb,GAAW,EACX,MAAc,EACd,IAAQ,EACR,MAAoB;QAEpB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC,SAAS,CACnB,GAAG,EAAE,CACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B;YAC5C,GAAG;YACH,MAAM;YACN,IAAI;YACJ,MAAM;YACN,MAAM;SACP,CAAC,EACJ,UAAU,CACX,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"adapter-for-axios.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/utils/adapter-for-axios.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAYrC,MAAM,eAAe;IACC;IAApB,YAAoB,KAAkC;QAAlC,UAAK,GAAL,KAAK,CAA6B;IAAG,CAAC;IAElD,SAAS,CACf,WAA6B,EAC7B,UAA2B;QAE3B,OAAO,IAAI,UAAU,CAAC,CAAC,UAAU,EAAE,EAAE;YACnC,WAAW,EAAE;iBACV,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC7C,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBAClD,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;YAExC,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe;QAIrB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAEjC,OAAO;YACL,UAAU;YACV,MAAM;SACP,CAAC;IACJ,CAAC;IAED,MAAM,CACJ,GAAW,EACX,IAA4C;QAE5C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;IAcD,GAAG,CAQD,GAAW,EAAE,MAAgC;QAC7C,OAAO,IAAI,CAAC,OAAO,CACjB,GAAG,EACH,KAAK,EACL,SAAS,EACT,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CACnC,CAAC;IACJ,CAAC;IAcD,KAAK,CAKH,GAAW,EACX,IAA0D;QAI1D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAkBD,IAAI,CACF,GAAW,EACX,IAAsE;QAMtE,OAAO,IAAI,CAAC,OAAO,CAKjB,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAEO,OAAO,CACb,GAAW,EACX,MAAc,EACd,IAAQ,EACR,MAAoB;QAEpB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC,SAAS,CACnB,GAAG,EAAE,CACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B;YAC5C,GAAG;YACH,MAAM;YACN,IAAI;YACJ,MAAM;YACN,MAAM;SACP,CAAC,EACJ,UAAU,CACX,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,KAAkC;IAChE,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
@@ -27,6 +27,9 @@ export class GenerateAtomicBody {
27
27
  };
28
28
  const rel = relationType ? { relationship: String(relationType) } : {};
29
29
  const tmpId = op === 'add' && id && !relationType ? { tmpId: String(id) } : {};
30
+ if (op === 'add' && id && !relationType) {
31
+ idObj['id'] = String(id);
32
+ }
30
33
  this.bodyData = {
31
34
  op,
32
35
  ref: { type, ...idObj, ...rel, ...tmpId },
@@ -1 +1 @@
1
- {"version":3,"file":"generate-atomic-body.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/utils/generate-atomic-body.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-atomic-body.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-sdk/src/lib/utils/generate-atomic-body.ts"],"names":[],"mappings":"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"}