@clairejs/server 3.10.5 → 3.10.6

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