@clairejs/server 3.6.21 → 3.7.0

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 (70) hide show
  1. package/.prettierrc +8 -8
  2. package/README.md +685 -676
  3. package/dist/common/FileOperation.d.ts +5 -5
  4. package/dist/common/ServerModelMetadata.d.ts +10 -10
  5. package/dist/common/auth/AbstractPrincipalResolver.d.ts +4 -4
  6. package/dist/common/auth/IPrincipal.d.ts +4 -4
  7. package/dist/common/constants.d.ts +1 -1
  8. package/dist/common/request/EndpointMetadata.d.ts +40 -40
  9. package/dist/common/request/HttpData.d.ts +1 -1
  10. package/dist/common/request/HttpEndpoint.d.ts +8 -8
  11. package/dist/common/request/JobData.d.ts +1 -1
  12. package/dist/common/request/MountedEndpointInfo.d.ts +6 -6
  13. package/dist/common/request/RequestOptions.d.ts +6 -6
  14. package/dist/common/request/SocketData.d.ts +1 -1
  15. package/dist/common/request/types.d.ts +1 -1
  16. package/dist/http/auth/AbstractHttpAuthorizationProvider.d.ts +9 -9
  17. package/dist/http/auth/AbstractRbacAuthProvider.d.ts +18 -18
  18. package/dist/http/auth/RedisRbacAuthProvider.d.ts +23 -23
  19. package/dist/http/auth/SocketRbacAuthProvider.d.ts +25 -25
  20. package/dist/http/auth/rbac.d.ts +34 -34
  21. package/dist/http/common/HttpRequest.d.ts +37 -37
  22. package/dist/http/common/HttpResponse.d.ts +25 -25
  23. package/dist/http/controller/AbstractHttpController.d.ts +9 -9
  24. package/dist/http/controller/AbstractHttpMiddleware.d.ts +5 -5
  25. package/dist/http/controller/AbstractHttpRequestHandler.d.ts +16 -16
  26. package/dist/http/controller/ControllerMetadata.d.ts +6 -6
  27. package/dist/http/controller/CrudHttpController.d.ts +55 -55
  28. package/dist/http/controller/DefaultHttpRequestHandler.d.ts +19 -19
  29. package/dist/http/decorators.d.ts +32 -32
  30. package/dist/http/file-upload/AbstractFileUploadHandler.d.ts +6 -6
  31. package/dist/http/file-upload/FileUploadHandler.d.ts +10 -10
  32. package/dist/http/file-upload/types.d.ts +3 -3
  33. package/dist/http/repository/AbstractRepository.d.ts +10 -10
  34. package/dist/http/repository/DtoRepository.d.ts +58 -58
  35. package/dist/http/repository/ICrudRepository.d.ts +27 -27
  36. package/dist/http/repository/ModelRepository.d.ts +37 -37
  37. package/dist/http/security/AbstractAccessCondition.d.ts +7 -7
  38. package/dist/http/security/access-conditions/DtoFieldValidation.d.ts +4 -4
  39. package/dist/http/security/access-conditions/FilterModelFieldAccessCondition.d.ts +4 -4
  40. package/dist/http/security/access-conditions/MaximumQueryLimit.d.ts +8 -8
  41. package/dist/index.d.ts +53 -55
  42. package/dist/index.js +1 -1
  43. package/dist/job/AbstractJobController.d.ts +4 -4
  44. package/dist/job/AbstractJobRepository.d.ts +17 -0
  45. package/dist/job/AbstractJobScheduler.d.ts +38 -8
  46. package/dist/job/AwsJobScheduler.d.ts +47 -5
  47. package/dist/job/LocalJobScheduler.d.ts +88 -21
  48. package/dist/job/decorators.d.ts +5 -4
  49. package/dist/job/interfaces.d.ts +49 -16
  50. package/dist/logging/FileLogMedium.d.ts +13 -13
  51. package/dist/service/AbstractCacheService.d.ts +22 -22
  52. package/dist/service/AbstractFileService.d.ts +8 -8
  53. package/dist/service/AbstractService.d.ts +7 -7
  54. package/dist/socket/AbstractServerSocket.d.ts +18 -18
  55. package/dist/socket/AbstractServerSocketManager.d.ts +46 -46
  56. package/dist/socket/AbstractSocketConnectionHandler.d.ts +6 -6
  57. package/dist/socket/AbstractSocketController.d.ts +14 -14
  58. package/dist/socket/AwsSocketManager.d.ts +30 -30
  59. package/dist/socket/IServerSocket.d.ts +16 -16
  60. package/dist/socket/LocalSocketManager.d.ts +47 -47
  61. package/dist/system/ClaireServer.d.ts +13 -13
  62. package/dist/system/ExpressWrapper.d.ts +17 -17
  63. package/dist/system/LambdaWrapper.d.ts +20 -19
  64. package/dist/system/ServerGlobalStore.d.ts +5 -5
  65. package/dist/system/errors.d.ts +14 -14
  66. package/dist/system/lamba-request-mapper.d.ts +17 -12
  67. package/package.json +61 -59
  68. package/dist/job/AbstractJobExecutor.d.ts +0 -10
  69. package/dist/job/AwsJobExecutor.d.ts +0 -8
  70. package/dist/job/LocalJobExecutor.d.ts +0 -8
package/README.md CHANGED
@@ -1,676 +1,685 @@
1
- ## Change Log
2
-
3
- #### 3.6.21
4
-
5
- - fix local socket manager buffer message while socket is creating
6
- - fix async handling in lambda socket manager
7
- - handling READY socket message
8
- - fix AwsSocketManager does not remove socket from redis when disconnect
9
- - handle default "" or "/" endpoint correctly
10
- - fix CrudHttpController filter by boolean field
11
- - fix AwsSocketManager not remove socket from channel after disconnection
12
- - support @HasOne for Crud controller
13
- - fix nested queries for ModelRepository
14
-
15
- #### 3.6.3
16
-
17
- - fix onChannelConnected cannot send back data to socket (because socket was not yet added to channel and old instance was used)
18
- - add READY socket message
19
-
20
- #### 3.6.0
21
-
22
- - move database to @clairejs/orm package. Bye bye...
23
-
24
- #### 3.5.4
25
-
26
- - fix aws get socket by id
27
- - send error when close socket
28
- - remove constructor dependency of socket connection handler in socket managers
29
-
30
- #### 3.5.0
31
-
32
- - use ioredis instead of redis (for redlock to work)
33
- - update job interfaces
34
- - adapt socket managers to use ioredis
35
-
36
- #### 3.4.0
37
-
38
- - add job related classes
39
-
40
- #### 3.3.27
41
-
42
- - add random order
43
- - add \_nin operator
44
-
45
- #### 3.3.26
46
-
47
- - remove socket if authentication failed for aws socket manager
48
- - fix lambda request mapper
49
- - fix Express parse Api gateway query for socket connection
50
- - add debug log
51
- - refactor principal data resolver for socket manager
52
-
53
- #### 3.3.19
54
-
55
- - ExpressWrapper don't send response for gateway socket integration (except for connection request)
56
- - fix ExpressWrapper handle APi gateway socket message data
57
- - fix LocalSocketManager get socket by id
58
- - fix auth resolver typing
59
- - fix socket data parsing problem
60
- - fix local socket manager subscribe
61
- - update redis client to v4
62
-
63
- #### 3.3.10
64
-
65
- - fix LambdaWrapper receive ClaireApp factory
66
- - socket pong return original data
67
- - fix ModelRepository getNestedQueries
68
- - add ops to ICrudRepository
69
-
70
- #### 3.3.5
71
-
72
- - fix socket auth provider
73
- - add getSocketsByChannels
74
- - fix express server exit close connection
75
- - update socket manager to support multiple instances
76
-
77
- #### 3.2.8
78
-
79
- - fix CrudHttpController condition check for update body
80
-
81
- #### 3.2.6
82
-
83
- - add cache to RedisRbacAuthProvider
84
-
85
- #### 3.2.5
86
-
87
- - add TfaRequired() decorator and hasTfa to IPrincipal
88
- - abstract DefaultHttpRequestHandler accessControl
89
-
90
- #### 3.2.4
91
-
92
- - IPrincipal id to be any
93
-
94
- #### 3.2.3
95
-
96
- - simplify dto dissolver interface
97
- - introduce DtoRepository
98
-
99
- #### 3.2.0
100
-
101
- - introduce ICrudRepository
102
- - CrudHttpController now requires param of ICrudRepository
103
-
104
- #### 3.1.16
105
-
106
- - fix uri mapper in CRUD update request
107
-
108
- #### 3.1.15
109
-
110
- - re-implement @CurrentUser decorator
111
-
112
- #### 3.1.14
113
-
114
- - fix UriMapper & UriMapperHandler types
115
-
116
- #### 3.1.13
117
-
118
- - provide IQueryProvider to uriMapper, move uriMapper to server logic
119
- - provide tmpUri to uriMapper in ModelRepository
120
-
121
- #### 3.1.11
122
-
123
- - fix CrudHttpController missing description
124
- - fix projection query data type
125
-
126
- #### 3.1.9
127
-
128
- - strip response data if responseDto is present
129
-
130
- #### 3.1.8
131
-
132
- - return 401 http code if not auth throw
133
-
134
- #### 3.1.7
135
-
136
- - fix CrudHtppController merge wrong endpoint
137
-
138
- #### 3.1.5
139
-
140
- - fix aws socket manager parse null redis
141
-
142
- #### 3.1.4
143
-
144
- - abstract file service and cache service does not extends AbstractService anymore
145
- - fix abstract file service
146
-
147
- #### 3.1.2
148
-
149
- - fix server socket sending incorrect plain message
150
-
151
- #### 3.1.1
152
-
153
- - fix server socket
154
- - add permission conditions to CrudHttpController
155
- - add abstract services
156
- - add FileUploadHandler
157
- - add Abstract RbacAuthProvider, Redis & Cache Rbac Auth Provider
158
- - add rbac dto
159
- - add MaximumQueryLimit & DtoFieldValidation conditions
160
-
161
- #### 3.0.36
162
-
163
- - fix crud controller metadata
164
-
165
- #### 3.0.33
166
-
167
- - add @ApiDescription
168
- - add CrudHttpController metadata description
169
-
170
- #### 3.0.30
171
-
172
- - fix objectTypeConstructor
173
-
174
- #### 3.0.29:
175
-
176
- - @Socket -> @Message
177
- - use @Socket to get socket injection in controller method
178
-
179
- #### 3.0.26:
180
-
181
- - add error log in http request handler
182
-
183
- #### 3.0.25:
184
-
185
- - add null search in vector
186
- - support array search for isSymbol field
187
-
188
- #### 3.0.22:
189
-
190
- - fix timestamp field
191
-
192
- #### 3.0.19:
193
-
194
- - fix error throw in transactional
195
-
196
- #### 3.0.18:
197
-
198
- - fix not escape search value
199
- - fix accent & sensitive search in Mysql and Postgres
200
-
201
- #### 3.0.15:
202
-
203
- - require injection of database adapter in AbstractSerivce & AbstractHttpController
204
-
205
- #### 3.0.14:
206
-
207
- - add getById and getByIds to IQuery
208
-
209
- #### 3.0.12:
210
-
211
- - fix error return
212
-
213
- #### 3.0.10:
214
-
215
- - remove count query when getOne
216
-
217
- #### 3.0.8:
218
-
219
- - freeze table name in join clause
220
-
221
- #### 3.0.6:
222
-
223
- - fix index export
224
- - fix AbstractAccessCondition signature
225
-
226
- #### 3.0.5:
227
-
228
- - tested on Postgres & MySql
229
- - add join ability to IQuery, awesome!!
230
-
231
- #### 3.0.3: http method decorator return type check
232
-
233
- - add @ApiResponse decorator to store response body validator
234
- - add TypedPropertyDescriptor in HTTP method decorator to validate function return type (Promise<HttpResponse<any>>>)
235
-
236
- #### 3.0.2: improve http response
237
-
238
- - add binary response
239
-
240
- #### 3.0.0:
241
-
242
- - update claire core 3.0
243
- - controller function param decorators
244
- - ResponseBuilder
245
- - remove ops in getMany
246
-
247
- #### 2.3.13:
248
-
249
- - update raw query function signature
250
-
251
- #### 2.3.12:
252
-
253
- - fix & export CrudService
254
-
255
- #### 2.3.10:
256
-
257
- - Array & Object model field persist & parse
258
-
259
- #### 2.3.9:
260
-
261
- - @TextField will default to Sequelize.TEXT if length is not specified
262
-
263
- #### 2.3.6:
264
-
265
- - fix missing beforeCreate call when update nesting
266
-
267
- #### 2.3.1:
268
-
269
- - fix returning nested uris
270
-
271
- #### 2.3.0:
272
-
273
- - introduce CrudService
274
- - CrudHttpController support @HasMany
275
-
276
- #### 2.2.12:
277
-
278
- - fix isIntegral default
279
-
280
- #### 2.2.10:
281
-
282
- - update `CrudHttpController` Update and Delete to return `Partial<T>`
283
-
284
- #### 2.2.2:
285
-
286
- - fix `@CurrentUser` decorator
287
- - implement `@CurrentUser` decorator
288
-
289
- #### 2.2.0:
290
-
291
- - add `AbstractFileUploadHandler` and handle file upload in `CrudHttpController`
292
- - fix migration contraint remove order
293
-
294
- #### 2.1.20:
295
-
296
- - extends IPrincipal
297
-
298
- #### 2.1.19:
299
-
300
- - fix crud http controller not init database adapter
301
-
302
- #### 2.1.18:
303
-
304
- - downgrade webpack
305
-
306
- #### 2.1.16:
307
-
308
- - add pg-hstore
309
-
310
- #### 2.1.15:
311
-
312
- - add optional injection for socket manager
313
-
314
- #### 2.1.14:
315
-
316
- - AwsSocketManger needs always to be fed by JSON object
317
-
318
- #### 2.1.13:
319
-
320
- - correct json parsing when hanling aws socket message
321
-
322
- #### 2.1.11:
323
-
324
- - adjust getMany and getRecords to return Pick type based on projection
325
- - add getRecords for IQuery to return just the records
326
-
327
- #### 2.1.9:
328
-
329
- - fix CrudHttpController updateMany FilterField condition check
330
-
331
- #### 2.1.8:
332
-
333
- - fix server socket remove not delete its redis info
334
- - add socket created timestamp info
335
- - add get all alive sockets to remove stale sockets in server
336
-
337
- #### 2.1.5:
338
-
339
- - support model defualt value in db migrator & adapter
340
-
341
- #### 2.1.3:
342
-
343
- - add test for cascade delete
344
-
345
- #### 2.1.2:
346
-
347
- - update claire core
348
- - fix converting QueryCondition use "and" as default operator
349
-
350
- #### 2.1.1:
351
-
352
- - update claire core
353
- - update implementation of FileLogMedium
354
-
355
- #### 2.0.26:
356
-
357
- - parse client socket data
358
- - add more debug log
359
- - fix ExpressWrapper AWS GW socket http integration
360
-
361
- #### 2.0.17:
362
-
363
- - add AWS API GW socket request parser for express
364
-
365
- #### 2.0.16:
366
-
367
- - add log to http request handler
368
- - refactor to allow AwsSocketManager to be used with ExpressWrapper
369
-
370
- #### 2.0.14:
371
-
372
- - fix express socket unique id
373
-
374
- #### 2.0.13:
375
-
376
- - update error code from claire core
377
-
378
- #### 2.0.12:
379
-
380
- - export Get, Post, Put, Del decorators
381
-
382
- #### 2.0.11:
383
-
384
- - add log in http request handler
385
- - fix AbstractAccessCondition signature
386
-
387
- #### 2.0.9:
388
-
389
- - fix AccessCondition (to use injection)
390
- - fix ExpressWrapper & LambdaWrapper to resolve AbstractServerSocketManager
391
- - remove getMountedEndpointInfo from AbstractHttpRequestHandler, move to ServerGlobalStore
392
- - fix property assignment in isolated transactional object
393
- - add log for AwsSocketManager, fix connection problem to redis
394
-
395
- #### 2.0.1:
396
-
397
- - fix some import redundancies
398
-
399
- #### 2.0.0:
400
-
401
- - Upgrade with claire core 2.0.0
402
-
403
- #### 1.6.4:
404
-
405
- - Add pong socket response
406
-
407
- #### 1.6.3:
408
-
409
- - AbstractDatabaseMigrator: supply migration directory to migrate and rollback functions
410
- - fix migrator cli path
411
-
412
- #### 1.6.1:
413
-
414
- - AbstractPrincipal -> IPrincipal (for serialization)
415
-
416
- #### 1.5.51:
417
-
418
- - fix AwsSocketManager not release redis connection, add more log
419
- - fix ExpressWrapper unhandled socket promise exception
420
-
421
- #### 1.5.39 (Breaking change):
422
-
423
- - fix properties null check
424
- - socket multiplex
425
-
426
- #### 1.5.28:
427
-
428
- - fix server socket authId => authInfo
429
-
430
- #### 1.5.26:
431
-
432
- - add OwnedResourceAccessCondition
433
-
434
- #### 1.5.24:
435
-
436
- - replace HttpRequest.getPrincipalId by HttpRequest.getAuthInfo
437
-
438
- #### 1.5.23:
439
-
440
- - fix ServerSocket
441
- - fix not remove disconnect socket from socket manager
442
-
443
- #### 1.5.15 (Breaking change):
444
-
445
- - remove getValue / setValue in HttpRequest
446
- - add setPrincipalId / getPrincipalId in HttpRequest
447
- - adjust Socket Server
448
-
449
- #### 1.5.12:
450
-
451
- - handle socket in lambda wrapper
452
-
453
- #### 1.5.11:
454
-
455
- - fix ServerSocket
456
-
457
- #### 1.5.6:
458
-
459
- - update claire core
460
- - fix ServerSocket
461
-
462
- #### 1.5.4:
463
-
464
- - run middleware before socket authentication
465
-
466
- #### 1.5.2:
467
-
468
- - add websocket support in ExpressWrapper
469
-
470
- #### 1.5.1:
471
-
472
- - update claire core
473
-
474
- #### 1.5.0:
475
-
476
- - revert back to 1.3.38
477
-
478
- #### 1.3.38:
479
-
480
- - export QueryCondition
481
-
482
- #### 1.3.37:
483
-
484
- - return error name instead of TRANSACTION_ERROR
485
- - update claire core
486
-
487
- #### 1.3.36:
488
-
489
- - fix missing down script of unique constraint in database migrator
490
- - add rollback to database migrator
491
-
492
- #### 1.3.34:
493
-
494
- - export AbstractDatabaseMigrator
495
- - fix DefaultSqlDatabaseMigrator not generate new unique constraints for new field
496
-
497
- #### 1.3.32:
498
-
499
- - fix DefaultSqlDatabaseMigrator missing foreign constraint check when add/remove fields
500
-
501
- #### 1.3.31:
502
-
503
- - update server modify
504
-
505
- #### 1.3.30:
506
-
507
- - adjust body raw parser in ExpressWrapper
508
-
509
- #### 1.3.28:
510
-
511
- - fix not supply HttpResponse in Http handler
512
-
513
- #### 1.3.27:
514
-
515
- - add body parser raw middleware
516
-
517
- #### 1.3.26:
518
-
519
- - modify express wrapper send result
520
-
521
- #### 1.3.25:
522
-
523
- - add request options mapper in LambdaWrapper
524
-
525
- #### 1.3.24:
526
-
527
- - add LambdaWrapper
528
-
529
- #### 1.3.23:
530
-
531
- - add ExpressWrapper
532
-
533
- #### 1.3.22:
534
-
535
- - merge accessConditions in CrudHttpController
536
-
537
- #### 1.3.21:
538
-
539
- - DefaultSqlDatabaseMigrator will no longer generate remove table query.
540
-
541
- #### 1.3.20:
542
-
543
- - add permissionGroup and displayName metadata for EndpointMetadata
544
-
545
- #### 1.3.16:
546
-
547
- - update claire core
548
- - allow empty records for CrudHttpController createMany
549
-
550
- #### 1.3.15:
551
-
552
- - fix incorrect parse Http params
553
-
554
- #### 1.3.13:
555
-
556
- - update claire core
557
-
558
- #### 1.3.12:
559
-
560
- - re-introduce terser plugin
561
- - update claire core
562
-
563
- #### 1.3.10:
564
-
565
- - emit source map
566
-
567
- #### 1.3.9:
568
-
569
- - update claire core
570
-
571
- #### 1.3.8:
572
-
573
- - fix missing HttpResponse export
574
-
575
- #### 1.3.7:
576
-
577
- - upgrade Clairejs/core
578
-
579
- #### 1.3.6:
580
-
581
- - upgrade Clairejs/core
582
-
583
- - interpret @ServerTime and @Timestamp
584
-
585
- #### 1.3.2 (Breaking change):
586
-
587
- - re-introduce http response to controller
588
-
589
- #### 1.2.6:
590
-
591
- - add unaccent operators (uSUBSTR, iuSUBSTR)
592
-
593
- #### 1.2.5:
594
-
595
- - allow multiple calls to boot
596
-
597
- #### 1.2.4:
598
-
599
- - fix http request handler parse get and delete request body
600
-
601
- #### 1.2.2:
602
-
603
- - split database migrator
604
- - rework of ClaireServer to be request handler
605
- - remove dependency of expressjs and its middleware
606
-
607
- #### 1.1.9:
608
-
609
- - revert 1.1.8
610
-
611
- #### 1.1.8:
612
-
613
- - init app when getExpressApp
614
-
615
- #### 1.1.7:
616
-
617
- - add pg-hstore as dependency
618
-
619
- #### 1.1.6:
620
-
621
- - fix autoCommit in @Transactional
622
-
623
- #### 1.1.5:
624
-
625
- - use AbstractModel id field for primary key query
626
-
627
- #### 1.1.3:
628
-
629
- - fix returning ids for updateMany and deleteMany
630
-
631
- #### 1.1.2:
632
-
633
- - fix not auto generate migration when changing cascade of @FK
634
- - set build target es6
635
-
636
- #### 1.1.0:
637
-
638
- - fix foreign key cascase delete
639
- - fix auto commit of crud http controller
640
- - return array of ids when updateMany or deleteMany
641
-
642
- #### 1.0.22:
643
-
644
- - CrudHttpController exposes static validators
645
-
646
- #### 1.0.21:
647
-
648
- - update Clairejs Core
649
-
650
- #### 1.0.20:
651
-
652
- - update CrudHttpController for query change
653
-
654
- #### 1.0.17:
655
-
656
- - perform json parsing for fields of request params and queries
657
-
658
- #### 1.0.15:
659
-
660
- - fix @Searchable in CrudHttpController
661
-
662
- #### 1.0.13:
663
-
664
- - add iSUBSTR operator to search for case insensitive string
665
-
666
- #### 1.0.9:
667
-
668
- - fix CrudHttpController endpoint naming
669
-
670
- #### 1.0.8:
671
-
672
- - fix DefaultHttpRequestHandler upgrade Http
673
-
674
- #### 1.0.6:
675
-
676
- - fix DefaultHttpRequestHandler cannot return request body when no validator is provided
1
+ ## Change Log
2
+
3
+ #### 3.7.0
4
+
5
+ - remove job executor
6
+ - implement AwsJobScheduler (EventBridge + Step Function)
7
+ - fix LocalJobScheduler interface
8
+ - allow persist LocalJobScheduler job info & multi instance support
9
+
10
+ #### 3.6.23
11
+
12
+ - unify handle not found error
13
+ - fix create many does not return mime field in CrudHttpController
14
+ - fix local socket manager buffer message while socket is creating
15
+ - fix async handling in lambda socket manager
16
+ - handling READY socket message
17
+ - fix AwsSocketManager does not remove socket from redis when disconnect
18
+ - handle default "" or "/" endpoint correctly
19
+ - fix CrudHttpController filter by boolean field
20
+ - fix AwsSocketManager not remove socket from channel after disconnection
21
+ - support @HasOne for Crud controller
22
+ - fix nested queries for ModelRepository
23
+
24
+ #### 3.6.3
25
+
26
+ - fix onChannelConnected cannot send back data to socket (because socket was not yet added to channel and old instance was used)
27
+ - add READY socket message
28
+
29
+ #### 3.6.0
30
+
31
+ - move database to @clairejs/orm package. Bye bye...
32
+
33
+ #### 3.5.4
34
+
35
+ - fix aws get socket by id
36
+ - send error when close socket
37
+ - remove constructor dependency of socket connection handler in socket managers
38
+
39
+ #### 3.5.0
40
+
41
+ - use ioredis instead of redis (for redlock to work)
42
+ - update job interfaces
43
+ - adapt socket managers to use ioredis
44
+
45
+ #### 3.4.0
46
+
47
+ - add job related classes
48
+
49
+ #### 3.3.27
50
+
51
+ - add random order
52
+ - add \_nin operator
53
+
54
+ #### 3.3.26
55
+
56
+ - remove socket if authentication failed for aws socket manager
57
+ - fix lambda request mapper
58
+ - fix Express parse Api gateway query for socket connection
59
+ - add debug log
60
+ - refactor principal data resolver for socket manager
61
+
62
+ #### 3.3.19
63
+
64
+ - ExpressWrapper don't send response for gateway socket integration (except for connection request)
65
+ - fix ExpressWrapper handle APi gateway socket message data
66
+ - fix LocalSocketManager get socket by id
67
+ - fix auth resolver typing
68
+ - fix socket data parsing problem
69
+ - fix local socket manager subscribe
70
+ - update redis client to v4
71
+
72
+ #### 3.3.10
73
+
74
+ - fix LambdaWrapper receive ClaireApp factory
75
+ - socket pong return original data
76
+ - fix ModelRepository getNestedQueries
77
+ - add ops to ICrudRepository
78
+
79
+ #### 3.3.5
80
+
81
+ - fix socket auth provider
82
+ - add getSocketsByChannels
83
+ - fix express server exit close connection
84
+ - update socket manager to support multiple instances
85
+
86
+ #### 3.2.8
87
+
88
+ - fix CrudHttpController condition check for update body
89
+
90
+ #### 3.2.6
91
+
92
+ - add cache to RedisRbacAuthProvider
93
+
94
+ #### 3.2.5
95
+
96
+ - add TfaRequired() decorator and hasTfa to IPrincipal
97
+ - abstract DefaultHttpRequestHandler accessControl
98
+
99
+ #### 3.2.4
100
+
101
+ - IPrincipal id to be any
102
+
103
+ #### 3.2.3
104
+
105
+ - simplify dto dissolver interface
106
+ - introduce DtoRepository
107
+
108
+ #### 3.2.0
109
+
110
+ - introduce ICrudRepository
111
+ - CrudHttpController now requires param of ICrudRepository
112
+
113
+ #### 3.1.16
114
+
115
+ - fix uri mapper in CRUD update request
116
+
117
+ #### 3.1.15
118
+
119
+ - re-implement @CurrentUser decorator
120
+
121
+ #### 3.1.14
122
+
123
+ - fix UriMapper & UriMapperHandler types
124
+
125
+ #### 3.1.13
126
+
127
+ - provide IQueryProvider to uriMapper, move uriMapper to server logic
128
+ - provide tmpUri to uriMapper in ModelRepository
129
+
130
+ #### 3.1.11
131
+
132
+ - fix CrudHttpController missing description
133
+ - fix projection query data type
134
+
135
+ #### 3.1.9
136
+
137
+ - strip response data if responseDto is present
138
+
139
+ #### 3.1.8
140
+
141
+ - return 401 http code if not auth throw
142
+
143
+ #### 3.1.7
144
+
145
+ - fix CrudHtppController merge wrong endpoint
146
+
147
+ #### 3.1.5
148
+
149
+ - fix aws socket manager parse null redis
150
+
151
+ #### 3.1.4
152
+
153
+ - abstract file service and cache service does not extends AbstractService anymore
154
+ - fix abstract file service
155
+
156
+ #### 3.1.2
157
+
158
+ - fix server socket sending incorrect plain message
159
+
160
+ #### 3.1.1
161
+
162
+ - fix server socket
163
+ - add permission conditions to CrudHttpController
164
+ - add abstract services
165
+ - add FileUploadHandler
166
+ - add Abstract RbacAuthProvider, Redis & Cache Rbac Auth Provider
167
+ - add rbac dto
168
+ - add MaximumQueryLimit & DtoFieldValidation conditions
169
+
170
+ #### 3.0.36
171
+
172
+ - fix crud controller metadata
173
+
174
+ #### 3.0.33
175
+
176
+ - add @ApiDescription
177
+ - add CrudHttpController metadata description
178
+
179
+ #### 3.0.30
180
+
181
+ - fix objectTypeConstructor
182
+
183
+ #### 3.0.29:
184
+
185
+ - @Socket -> @Message
186
+ - use @Socket to get socket injection in controller method
187
+
188
+ #### 3.0.26:
189
+
190
+ - add error log in http request handler
191
+
192
+ #### 3.0.25:
193
+
194
+ - add null search in vector
195
+ - support array search for isSymbol field
196
+
197
+ #### 3.0.22:
198
+
199
+ - fix timestamp field
200
+
201
+ #### 3.0.19:
202
+
203
+ - fix error throw in transactional
204
+
205
+ #### 3.0.18:
206
+
207
+ - fix not escape search value
208
+ - fix accent & sensitive search in Mysql and Postgres
209
+
210
+ #### 3.0.15:
211
+
212
+ - require injection of database adapter in AbstractSerivce & AbstractHttpController
213
+
214
+ #### 3.0.14:
215
+
216
+ - add getById and getByIds to IQuery
217
+
218
+ #### 3.0.12:
219
+
220
+ - fix error return
221
+
222
+ #### 3.0.10:
223
+
224
+ - remove count query when getOne
225
+
226
+ #### 3.0.8:
227
+
228
+ - freeze table name in join clause
229
+
230
+ #### 3.0.6:
231
+
232
+ - fix index export
233
+ - fix AbstractAccessCondition signature
234
+
235
+ #### 3.0.5:
236
+
237
+ - tested on Postgres & MySql
238
+ - add join ability to IQuery, awesome!!
239
+
240
+ #### 3.0.3: http method decorator return type check
241
+
242
+ - add @ApiResponse decorator to store response body validator
243
+ - add TypedPropertyDescriptor in HTTP method decorator to validate function return type (Promise<HttpResponse<any>>>)
244
+
245
+ #### 3.0.2: improve http response
246
+
247
+ - add binary response
248
+
249
+ #### 3.0.0:
250
+
251
+ - update claire core 3.0
252
+ - controller function param decorators
253
+ - ResponseBuilder
254
+ - remove ops in getMany
255
+
256
+ #### 2.3.13:
257
+
258
+ - update raw query function signature
259
+
260
+ #### 2.3.12:
261
+
262
+ - fix & export CrudService
263
+
264
+ #### 2.3.10:
265
+
266
+ - Array & Object model field persist & parse
267
+
268
+ #### 2.3.9:
269
+
270
+ - @TextField will default to Sequelize.TEXT if length is not specified
271
+
272
+ #### 2.3.6:
273
+
274
+ - fix missing beforeCreate call when update nesting
275
+
276
+ #### 2.3.1:
277
+
278
+ - fix returning nested uris
279
+
280
+ #### 2.3.0:
281
+
282
+ - introduce CrudService
283
+ - CrudHttpController support @HasMany
284
+
285
+ #### 2.2.12:
286
+
287
+ - fix isIntegral default
288
+
289
+ #### 2.2.10:
290
+
291
+ - update `CrudHttpController` Update and Delete to return `Partial<T>`
292
+
293
+ #### 2.2.2:
294
+
295
+ - fix `@CurrentUser` decorator
296
+ - implement `@CurrentUser` decorator
297
+
298
+ #### 2.2.0:
299
+
300
+ - add `AbstractFileUploadHandler` and handle file upload in `CrudHttpController`
301
+ - fix migration contraint remove order
302
+
303
+ #### 2.1.20:
304
+
305
+ - extends IPrincipal
306
+
307
+ #### 2.1.19:
308
+
309
+ - fix crud http controller not init database adapter
310
+
311
+ #### 2.1.18:
312
+
313
+ - downgrade webpack
314
+
315
+ #### 2.1.16:
316
+
317
+ - add pg-hstore
318
+
319
+ #### 2.1.15:
320
+
321
+ - add optional injection for socket manager
322
+
323
+ #### 2.1.14:
324
+
325
+ - AwsSocketManger needs always to be fed by JSON object
326
+
327
+ #### 2.1.13:
328
+
329
+ - correct json parsing when hanling aws socket message
330
+
331
+ #### 2.1.11:
332
+
333
+ - adjust getMany and getRecords to return Pick type based on projection
334
+ - add getRecords for IQuery to return just the records
335
+
336
+ #### 2.1.9:
337
+
338
+ - fix CrudHttpController updateMany FilterField condition check
339
+
340
+ #### 2.1.8:
341
+
342
+ - fix server socket remove not delete its redis info
343
+ - add socket created timestamp info
344
+ - add get all alive sockets to remove stale sockets in server
345
+
346
+ #### 2.1.5:
347
+
348
+ - support model defualt value in db migrator & adapter
349
+
350
+ #### 2.1.3:
351
+
352
+ - add test for cascade delete
353
+
354
+ #### 2.1.2:
355
+
356
+ - update claire core
357
+ - fix converting QueryCondition use "and" as default operator
358
+
359
+ #### 2.1.1:
360
+
361
+ - update claire core
362
+ - update implementation of FileLogMedium
363
+
364
+ #### 2.0.26:
365
+
366
+ - parse client socket data
367
+ - add more debug log
368
+ - fix ExpressWrapper AWS GW socket http integration
369
+
370
+ #### 2.0.17:
371
+
372
+ - add AWS API GW socket request parser for express
373
+
374
+ #### 2.0.16:
375
+
376
+ - add log to http request handler
377
+ - refactor to allow AwsSocketManager to be used with ExpressWrapper
378
+
379
+ #### 2.0.14:
380
+
381
+ - fix express socket unique id
382
+
383
+ #### 2.0.13:
384
+
385
+ - update error code from claire core
386
+
387
+ #### 2.0.12:
388
+
389
+ - export Get, Post, Put, Del decorators
390
+
391
+ #### 2.0.11:
392
+
393
+ - add log in http request handler
394
+ - fix AbstractAccessCondition signature
395
+
396
+ #### 2.0.9:
397
+
398
+ - fix AccessCondition (to use injection)
399
+ - fix ExpressWrapper & LambdaWrapper to resolve AbstractServerSocketManager
400
+ - remove getMountedEndpointInfo from AbstractHttpRequestHandler, move to ServerGlobalStore
401
+ - fix property assignment in isolated transactional object
402
+ - add log for AwsSocketManager, fix connection problem to redis
403
+
404
+ #### 2.0.1:
405
+
406
+ - fix some import redundancies
407
+
408
+ #### 2.0.0:
409
+
410
+ - Upgrade with claire core 2.0.0
411
+
412
+ #### 1.6.4:
413
+
414
+ - Add pong socket response
415
+
416
+ #### 1.6.3:
417
+
418
+ - AbstractDatabaseMigrator: supply migration directory to migrate and rollback functions
419
+ - fix migrator cli path
420
+
421
+ #### 1.6.1:
422
+
423
+ - AbstractPrincipal -> IPrincipal (for serialization)
424
+
425
+ #### 1.5.51:
426
+
427
+ - fix AwsSocketManager not release redis connection, add more log
428
+ - fix ExpressWrapper unhandled socket promise exception
429
+
430
+ #### 1.5.39 (Breaking change):
431
+
432
+ - fix properties null check
433
+ - socket multiplex
434
+
435
+ #### 1.5.28:
436
+
437
+ - fix server socket authId => authInfo
438
+
439
+ #### 1.5.26:
440
+
441
+ - add OwnedResourceAccessCondition
442
+
443
+ #### 1.5.24:
444
+
445
+ - replace HttpRequest.getPrincipalId by HttpRequest.getAuthInfo
446
+
447
+ #### 1.5.23:
448
+
449
+ - fix ServerSocket
450
+ - fix not remove disconnect socket from socket manager
451
+
452
+ #### 1.5.15 (Breaking change):
453
+
454
+ - remove getValue / setValue in HttpRequest
455
+ - add setPrincipalId / getPrincipalId in HttpRequest
456
+ - adjust Socket Server
457
+
458
+ #### 1.5.12:
459
+
460
+ - handle socket in lambda wrapper
461
+
462
+ #### 1.5.11:
463
+
464
+ - fix ServerSocket
465
+
466
+ #### 1.5.6:
467
+
468
+ - update claire core
469
+ - fix ServerSocket
470
+
471
+ #### 1.5.4:
472
+
473
+ - run middleware before socket authentication
474
+
475
+ #### 1.5.2:
476
+
477
+ - add websocket support in ExpressWrapper
478
+
479
+ #### 1.5.1:
480
+
481
+ - update claire core
482
+
483
+ #### 1.5.0:
484
+
485
+ - revert back to 1.3.38
486
+
487
+ #### 1.3.38:
488
+
489
+ - export QueryCondition
490
+
491
+ #### 1.3.37:
492
+
493
+ - return error name instead of TRANSACTION_ERROR
494
+ - update claire core
495
+
496
+ #### 1.3.36:
497
+
498
+ - fix missing down script of unique constraint in database migrator
499
+ - add rollback to database migrator
500
+
501
+ #### 1.3.34:
502
+
503
+ - export AbstractDatabaseMigrator
504
+ - fix DefaultSqlDatabaseMigrator not generate new unique constraints for new field
505
+
506
+ #### 1.3.32:
507
+
508
+ - fix DefaultSqlDatabaseMigrator missing foreign constraint check when add/remove fields
509
+
510
+ #### 1.3.31:
511
+
512
+ - update server modify
513
+
514
+ #### 1.3.30:
515
+
516
+ - adjust body raw parser in ExpressWrapper
517
+
518
+ #### 1.3.28:
519
+
520
+ - fix not supply HttpResponse in Http handler
521
+
522
+ #### 1.3.27:
523
+
524
+ - add body parser raw middleware
525
+
526
+ #### 1.3.26:
527
+
528
+ - modify express wrapper send result
529
+
530
+ #### 1.3.25:
531
+
532
+ - add request options mapper in LambdaWrapper
533
+
534
+ #### 1.3.24:
535
+
536
+ - add LambdaWrapper
537
+
538
+ #### 1.3.23:
539
+
540
+ - add ExpressWrapper
541
+
542
+ #### 1.3.22:
543
+
544
+ - merge accessConditions in CrudHttpController
545
+
546
+ #### 1.3.21:
547
+
548
+ - DefaultSqlDatabaseMigrator will no longer generate remove table query.
549
+
550
+ #### 1.3.20:
551
+
552
+ - add permissionGroup and displayName metadata for EndpointMetadata
553
+
554
+ #### 1.3.16:
555
+
556
+ - update claire core
557
+ - allow empty records for CrudHttpController createMany
558
+
559
+ #### 1.3.15:
560
+
561
+ - fix incorrect parse Http params
562
+
563
+ #### 1.3.13:
564
+
565
+ - update claire core
566
+
567
+ #### 1.3.12:
568
+
569
+ - re-introduce terser plugin
570
+ - update claire core
571
+
572
+ #### 1.3.10:
573
+
574
+ - emit source map
575
+
576
+ #### 1.3.9:
577
+
578
+ - update claire core
579
+
580
+ #### 1.3.8:
581
+
582
+ - fix missing HttpResponse export
583
+
584
+ #### 1.3.7:
585
+
586
+ - upgrade Clairejs/core
587
+
588
+ #### 1.3.6:
589
+
590
+ - upgrade Clairejs/core
591
+
592
+ - interpret @ServerTime and @Timestamp
593
+
594
+ #### 1.3.2 (Breaking change):
595
+
596
+ - re-introduce http response to controller
597
+
598
+ #### 1.2.6:
599
+
600
+ - add unaccent operators (uSUBSTR, iuSUBSTR)
601
+
602
+ #### 1.2.5:
603
+
604
+ - allow multiple calls to boot
605
+
606
+ #### 1.2.4:
607
+
608
+ - fix http request handler parse get and delete request body
609
+
610
+ #### 1.2.2:
611
+
612
+ - split database migrator
613
+ - rework of ClaireServer to be request handler
614
+ - remove dependency of expressjs and its middleware
615
+
616
+ #### 1.1.9:
617
+
618
+ - revert 1.1.8
619
+
620
+ #### 1.1.8:
621
+
622
+ - init app when getExpressApp
623
+
624
+ #### 1.1.7:
625
+
626
+ - add pg-hstore as dependency
627
+
628
+ #### 1.1.6:
629
+
630
+ - fix autoCommit in @Transactional
631
+
632
+ #### 1.1.5:
633
+
634
+ - use AbstractModel id field for primary key query
635
+
636
+ #### 1.1.3:
637
+
638
+ - fix returning ids for updateMany and deleteMany
639
+
640
+ #### 1.1.2:
641
+
642
+ - fix not auto generate migration when changing cascade of @FK
643
+ - set build target es6
644
+
645
+ #### 1.1.0:
646
+
647
+ - fix foreign key cascase delete
648
+ - fix auto commit of crud http controller
649
+ - return array of ids when updateMany or deleteMany
650
+
651
+ #### 1.0.22:
652
+
653
+ - CrudHttpController exposes static validators
654
+
655
+ #### 1.0.21:
656
+
657
+ - update Clairejs Core
658
+
659
+ #### 1.0.20:
660
+
661
+ - update CrudHttpController for query change
662
+
663
+ #### 1.0.17:
664
+
665
+ - perform json parsing for fields of request params and queries
666
+
667
+ #### 1.0.15:
668
+
669
+ - fix @Searchable in CrudHttpController
670
+
671
+ #### 1.0.13:
672
+
673
+ - add iSUBSTR operator to search for case insensitive string
674
+
675
+ #### 1.0.9:
676
+
677
+ - fix CrudHttpController endpoint naming
678
+
679
+ #### 1.0.8:
680
+
681
+ - fix DefaultHttpRequestHandler upgrade Http
682
+
683
+ #### 1.0.6:
684
+
685
+ - fix DefaultHttpRequestHandler cannot return request body when no validator is provided