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