@kinotic-ai/persistence 1.0.0-beta.0 → 1.0.0-beta.1

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.
package/dist/index.js ADDED
@@ -0,0 +1,318 @@
1
+ // packages/persistence/src/api/model/QueryOptions.ts
2
+ class QueryOptions {
3
+ timeZone;
4
+ requestTimeout;
5
+ pageTimeout;
6
+ }
7
+ // packages/persistence/src/api/model/TenantSpecificId.ts
8
+ class TenantSpecificId {
9
+ entityId;
10
+ tenantId;
11
+ constructor(entityId, tenantId) {
12
+ this.entityId = entityId;
13
+ this.tenantId = tenantId;
14
+ }
15
+ }
16
+ // packages/persistence/src/api/idl/EntityServiceDecorator.ts
17
+ import { C3Decorator } from "@kinotic-ai/idl";
18
+
19
+ class EntityServiceDecorator extends C3Decorator {
20
+ }
21
+ // packages/persistence/src/api/idl/EntityServiceDecoratorsDecorator.ts
22
+ import { C3Decorator as C3Decorator2 } from "@kinotic-ai/idl";
23
+
24
+ class EntityServiceDecoratorsDecorator extends C3Decorator2 {
25
+ config;
26
+ constructor() {
27
+ super();
28
+ this.type = "EntityServiceDecoratorsDecorator";
29
+ }
30
+ }
31
+ // packages/persistence/src/api/idl/EntityType.ts
32
+ var EntityType;
33
+ ((EntityType2) => {
34
+ EntityType2[EntityType2["TABLE"] = 0] = "TABLE";
35
+ EntityType2[EntityType2["STREAM"] = 1] = "STREAM";
36
+ })(EntityType ||= {});
37
+ // packages/persistence/src/api/idl/EsIndexConfigurationData.ts
38
+ class EsIndexConfigurationData {
39
+ componentTemplates = [];
40
+ }
41
+ // packages/persistence/src/api/idl/MultiTenancyType.ts
42
+ var MultiTenancyType;
43
+ ((MultiTenancyType2) => {
44
+ MultiTenancyType2[MultiTenancyType2["NONE"] = 0] = "NONE";
45
+ MultiTenancyType2[MultiTenancyType2["SHARED"] = 1] = "SHARED";
46
+ })(MultiTenancyType ||= {});
47
+ // packages/persistence/src/api/idl/PrecisionType.ts
48
+ var PrecisionType;
49
+ ((PrecisionType2) => {
50
+ PrecisionType2[PrecisionType2["DOUBLE"] = 0] = "DOUBLE";
51
+ PrecisionType2[PrecisionType2["FLOAT"] = 1] = "FLOAT";
52
+ PrecisionType2[PrecisionType2["INT"] = 2] = "INT";
53
+ PrecisionType2[PrecisionType2["LONG"] = 3] = "LONG";
54
+ PrecisionType2[PrecisionType2["SHORT"] = 4] = "SHORT";
55
+ })(PrecisionType ||= {});
56
+ // packages/persistence/src/api/IEntitiesService.ts
57
+ import {
58
+ FunctionalIterablePage
59
+ } from "@kinotic-ai/core";
60
+
61
+ class EntitiesService {
62
+ serviceProxy;
63
+ constructor(kinotic) {
64
+ this.serviceProxy = kinotic.serviceProxy("org.kinotic.persistence.api.services.JsonEntitiesService");
65
+ }
66
+ bulkSave(structureId, entities) {
67
+ return this.serviceProxy.invoke("bulkSave", [structureId, entities]);
68
+ }
69
+ bulkUpdate(structureId, entities) {
70
+ return this.serviceProxy.invoke("bulkUpdate", [structureId, entities]);
71
+ }
72
+ count(structureId) {
73
+ return this.serviceProxy.invoke("count", [structureId]);
74
+ }
75
+ countByQuery(structureId, query) {
76
+ return this.serviceProxy.invoke("countByQuery", [structureId, query]);
77
+ }
78
+ deleteById(structureId, id) {
79
+ return this.serviceProxy.invoke("deleteById", [structureId, id]);
80
+ }
81
+ deleteByQuery(structureId, query) {
82
+ return this.serviceProxy.invoke("deleteByQuery", [structureId, query]);
83
+ }
84
+ async findAll(structureId, pageable) {
85
+ const page = await this.findAllSinglePage(structureId, pageable);
86
+ return new FunctionalIterablePage(pageable, page, (pageable2) => this.findAllSinglePage(structureId, pageable2));
87
+ }
88
+ async findAllSinglePage(structureId, pageable) {
89
+ return this.serviceProxy.invoke("findAll", [structureId, pageable]);
90
+ }
91
+ findById(structureId, id) {
92
+ return this.serviceProxy.invoke("findById", [structureId, id]);
93
+ }
94
+ findByIds(structureId, ids) {
95
+ return this.serviceProxy.invoke("findByIds", [structureId, ids]);
96
+ }
97
+ namedQuery(structureId, queryName, parameters) {
98
+ return this.serviceProxy.invoke("namedQuery", [structureId, queryName, parameters]);
99
+ }
100
+ async namedQueryPage(structureId, queryName, parameters, pageable) {
101
+ const page = await this.namedQuerySinglePage(structureId, queryName, parameters, pageable);
102
+ return new FunctionalIterablePage(pageable, page, (pageable2) => this.namedQuerySinglePage(structureId, queryName, parameters, pageable2));
103
+ }
104
+ namedQuerySinglePage(structureId, queryName, parameters, pageable) {
105
+ return this.serviceProxy.invoke("namedQueryPage", [structureId, queryName, parameters, pageable]);
106
+ }
107
+ save(structureId, entity) {
108
+ return this.serviceProxy.invoke("save", [structureId, entity]);
109
+ }
110
+ async search(structureId, searchText, pageable) {
111
+ const page = await this.searchSinglePage(structureId, searchText, pageable);
112
+ return new FunctionalIterablePage(pageable, page, (pageable2) => this.searchSinglePage(structureId, searchText, pageable2));
113
+ }
114
+ async searchSinglePage(structureId, searchText, pageable) {
115
+ return this.serviceProxy.invoke("search", [structureId, searchText, pageable]);
116
+ }
117
+ async syncIndex(structureId) {
118
+ return this.serviceProxy.invoke("syncIndex", [structureId]);
119
+ }
120
+ update(structureId, entity) {
121
+ return this.serviceProxy.invoke("update", [structureId, entity]);
122
+ }
123
+ }
124
+ // packages/persistence/src/api/IAdminEntitiesService.ts
125
+ import {
126
+ FunctionalIterablePage as FunctionalIterablePage2
127
+ } from "@kinotic-ai/core";
128
+
129
+ class AdminEntitiesService {
130
+ serviceProxy;
131
+ constructor(kinotic) {
132
+ this.serviceProxy = kinotic.serviceProxy("org.kinotic.persistence.api.services.AdminJsonEntitiesService");
133
+ }
134
+ count(structureId, tenantSelection) {
135
+ return this.serviceProxy.invoke("count", [structureId, tenantSelection]);
136
+ }
137
+ countByQuery(structureId, query, tenantSelection) {
138
+ return this.serviceProxy.invoke("countByQuery", [structureId, query, tenantSelection]);
139
+ }
140
+ deleteById(structureId, id) {
141
+ return this.serviceProxy.invoke("deleteById", [structureId, id]);
142
+ }
143
+ deleteByQuery(structureId, query, tenantSelection) {
144
+ return this.serviceProxy.invoke("deleteByQuery", [structureId, query, tenantSelection]);
145
+ }
146
+ async findAll(structureId, tenantSelection, pageable) {
147
+ const page = await this.findAllSinglePage(structureId, tenantSelection, pageable);
148
+ return new FunctionalIterablePage2(pageable, page, (pageable2) => this.findAllSinglePage(structureId, tenantSelection, pageable2));
149
+ }
150
+ async findAllSinglePage(structureId, tenantSelection, pageable) {
151
+ return this.serviceProxy.invoke("findAll", [structureId, tenantSelection, pageable]);
152
+ }
153
+ findById(structureId, id) {
154
+ return this.serviceProxy.invoke("findById", [structureId, id]);
155
+ }
156
+ findByIds(structureId, ids) {
157
+ return this.serviceProxy.invoke("findByIds", [structureId, ids]);
158
+ }
159
+ namedQuery(structureId, queryName, parameters) {
160
+ return this.serviceProxy.invoke("namedQuery", [structureId, queryName, parameters]);
161
+ }
162
+ async namedQueryPage(structureId, queryName, parameters, pageable) {
163
+ const page = await this.namedQuerySinglePage(structureId, queryName, parameters, pageable);
164
+ return new FunctionalIterablePage2(pageable, page, (pageable2) => this.namedQuerySinglePage(structureId, queryName, parameters, pageable2));
165
+ }
166
+ namedQuerySinglePage(structureId, queryName, parameters, pageable) {
167
+ return this.serviceProxy.invoke("namedQueryPage", [structureId, queryName, parameters, pageable]);
168
+ }
169
+ async search(structureId, searchText, tenantSelection, pageable) {
170
+ const page = await this.searchSinglePage(structureId, searchText, tenantSelection, pageable);
171
+ return new FunctionalIterablePage2(pageable, page, (pageable2) => this.searchSinglePage(structureId, searchText, tenantSelection, pageable2));
172
+ }
173
+ async searchSinglePage(structureId, searchText, tenantSelection, pageable) {
174
+ return this.serviceProxy.invoke("search", [structureId, searchText, tenantSelection, pageable]);
175
+ }
176
+ }
177
+ // packages/persistence/src/api/IEntityService.ts
178
+ import { Kinotic } from "@kinotic-ai/core";
179
+ class EntityService {
180
+ structureApplicationId;
181
+ structureName;
182
+ structureId;
183
+ entitiesService;
184
+ constructor(structureApplicationId, structureName, entitiesService) {
185
+ this.structureApplicationId = structureApplicationId;
186
+ this.structureName = structureName;
187
+ this.structureId = (structureApplicationId + "." + structureName).toLowerCase();
188
+ this.entitiesService = entitiesService ?? new EntitiesService(Kinotic);
189
+ }
190
+ async bulkSave(entities) {
191
+ const entitiesToSave = await this.beforeBulkSaveOrUpdate(entities);
192
+ return this.entitiesService.bulkSave(this.structureId, entitiesToSave);
193
+ }
194
+ async bulkUpdate(entities) {
195
+ const entitiesToSave = await this.beforeBulkSaveOrUpdate(entities);
196
+ return this.entitiesService.bulkUpdate(this.structureId, entitiesToSave);
197
+ }
198
+ count() {
199
+ return this.entitiesService.count(this.structureId);
200
+ }
201
+ countByQuery(query) {
202
+ return this.entitiesService.countByQuery(this.structureId, query);
203
+ }
204
+ deleteById(id) {
205
+ return this.entitiesService.deleteById(this.structureId, id);
206
+ }
207
+ deleteByQuery(query) {
208
+ return this.entitiesService.deleteByQuery(this.structureId, query);
209
+ }
210
+ findAll(pageable) {
211
+ return this.entitiesService.findAll(this.structureId, pageable);
212
+ }
213
+ findById(id) {
214
+ return this.entitiesService.findById(this.structureId, id);
215
+ }
216
+ findByIds(ids) {
217
+ return this.entitiesService.findByIds(this.structureId, ids);
218
+ }
219
+ namedQuery(queryName, queryParameters) {
220
+ return this.entitiesService.namedQuery(this.structureId, queryName, queryParameters);
221
+ }
222
+ namedQueryPage(queryName, queryParameters, pageable) {
223
+ return this.entitiesService.namedQueryPage(this.structureId, queryName, queryParameters, pageable);
224
+ }
225
+ async save(entity) {
226
+ const entityToSave = await this.beforeSaveOrUpdate(entity);
227
+ return this.entitiesService.save(this.structureId, entityToSave);
228
+ }
229
+ search(searchText, pageable) {
230
+ return this.entitiesService.search(this.structureId, searchText, pageable);
231
+ }
232
+ async syncIndex() {
233
+ return this.entitiesService.syncIndex(this.structureId);
234
+ }
235
+ async update(entity) {
236
+ const entityToSave = await this.beforeSaveOrUpdate(entity);
237
+ return this.entitiesService.update(this.structureId, entityToSave);
238
+ }
239
+ async beforeBulkSaveOrUpdate(entities) {
240
+ return Promise.resolve(entities);
241
+ }
242
+ async beforeSaveOrUpdate(entity) {
243
+ return Promise.resolve(entity);
244
+ }
245
+ }
246
+ // packages/persistence/src/api/IAdminEntityService.ts
247
+ import { Kinotic as Kinotic2 } from "@kinotic-ai/core";
248
+ class AdminEntityService {
249
+ structureApplicationId;
250
+ structureName;
251
+ structureId;
252
+ adminEntitiesService;
253
+ constructor(structureApplicationId, structureName, adminEntitiesService) {
254
+ this.structureApplicationId = structureApplicationId;
255
+ this.structureName = structureName;
256
+ this.structureId = (structureApplicationId + "." + structureName).toLowerCase();
257
+ this.adminEntitiesService = adminEntitiesService ?? new AdminEntitiesService(Kinotic2);
258
+ }
259
+ count(tenantSelection) {
260
+ return this.adminEntitiesService.count(this.structureId, tenantSelection);
261
+ }
262
+ countByQuery(query, tenantSelection) {
263
+ return this.adminEntitiesService.countByQuery(this.structureId, query, tenantSelection);
264
+ }
265
+ deleteById(id) {
266
+ return this.adminEntitiesService.deleteById(this.structureId, id);
267
+ }
268
+ deleteByQuery(query, tenantSelection) {
269
+ return this.adminEntitiesService.deleteByQuery(this.structureId, query, tenantSelection);
270
+ }
271
+ findAll(tenantSelection, pageable) {
272
+ return this.adminEntitiesService.findAll(this.structureId, tenantSelection, pageable);
273
+ }
274
+ findById(id) {
275
+ return this.adminEntitiesService.findById(this.structureId, id);
276
+ }
277
+ findByIds(ids) {
278
+ return this.adminEntitiesService.findByIds(this.structureId, ids);
279
+ }
280
+ namedQuery(queryName, queryParameters) {
281
+ return this.adminEntitiesService.namedQuery(this.structureId, queryName, queryParameters);
282
+ }
283
+ namedQueryPage(queryName, queryParameters, pageable) {
284
+ return this.adminEntitiesService.namedQueryPage(this.structureId, queryName, queryParameters, pageable);
285
+ }
286
+ search(searchText, tenantSelection, pageable) {
287
+ return this.adminEntitiesService.search(this.structureId, searchText, tenantSelection, pageable);
288
+ }
289
+ }
290
+ // packages/persistence/src/api/PersistencePlugin.ts
291
+ var PersistencePlugin = {
292
+ install(kinotic) {
293
+ return {
294
+ entities: new EntitiesService(kinotic),
295
+ adminEntities: new AdminEntitiesService(kinotic)
296
+ };
297
+ }
298
+ };
299
+
300
+ // packages/persistence/src/index.ts
301
+ import { Kinotic as Kinotic3, KinoticSingleton } from "@kinotic-ai/core";
302
+ export {
303
+ TenantSpecificId,
304
+ QueryOptions,
305
+ PrecisionType,
306
+ PersistencePlugin,
307
+ MultiTenancyType,
308
+ KinoticSingleton,
309
+ Kinotic3 as Kinotic,
310
+ EsIndexConfigurationData,
311
+ EntityType,
312
+ EntityServiceDecoratorsDecorator,
313
+ EntityServiceDecorator,
314
+ EntityService,
315
+ EntitiesService,
316
+ AdminEntityService,
317
+ AdminEntitiesService
318
+ };
package/package.json CHANGED
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "name": "@kinotic-ai/persistence",
3
- "version": "1.0.0-beta.0",
4
3
  "type": "module",
5
4
  "files": [
6
5
  "dist"
@@ -50,5 +49,6 @@
50
49
  "typescript": {
51
50
  "optional": true
52
51
  }
53
- }
52
+ },
53
+ "version": "1.0.0-beta.1"
54
54
  }