@clairejs/server 3.11.8 → 3.11.10

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