@clairejs/server
TypeScript icon, indicating that this package has built-in type declarations

3.22.8 • Public • Published

Change Log

3.22.8

  • remove log, aws job scheduler issue fixed
  • add log
  • fix Lambda Wrapper resolve job scheduler
  • add log to debug aws cron

3.22.3:

  • fix AwsCron expression
  • fix ModelRepository return correct vector props nested fields
  • fix uri mapper to map Identifiable classes
  • remove support of uri mapper for locale fields
  • support uri mapper for nested array field

3.21.9:

  • fix express wrapper parse multipart form data
  • upgrade packages
  • fix getApiInfo return circular object
  • fix cron expression
  • add log to aws job scheduler & fix cronjob sync
  • simplify lambda job scheduler, remove job interval that is less than 60s

3.20.2:

  • fix redlock timeout issue
  • fix req not resolve leads to undefined request in DefaultHttpRequestHandler
  • fix concurrent transactions in updateRecords
  • update claire core, claire orm and fix returning

3.19.7:

  • public expose endpointMetadat in HttpRequest
  • ModelRepository export uriHandling & beforeReturning
  • fix uri mapper with vector props
  • update claire orm and fix
  • fix isEndpoint
  • fix ModelRepository getMany
  • adapt interface with new claire orm

3.18.2:

  • fix multi locale issue with model repo
  • fix multi locale field data type
  • adapt claire core & clare orm

3.17.10:

  • fix socket manager & isEndpoint
  • remove handlerFunctionName (using name & displayName instead)
  • fix missing controller & handlerFunctionName in EndpointMetadata
  • remove AbstractController
  • mount socket metadata from getChannelName
  • refactor EndpointMetadata, remove MountedEndpointInfo
  • add putFile in AbstractFileService

3.16.19:

  • fix dependency
  • allow file service to resolve empty uri to empty string
  • fix job param type from any[] to any
  • fix CRUD order
  • fix Job repo
  • fix AbstractJob
  • fix LocalJobScheduler
  • add abstract job model, default job repo

3.16.10:

  • update core, orm
  • fix aws s3 file service
  • do not throw when fail to clean up in ModelRepository
  • fix file controllers
  • fix socket authentication, fix http error code in response
  • update claire orm
  • update packages, fix mount undefined:undefined when introducing updateRecords
  • remove webpack build config, export as esm module

3.15.2:

  • add updateRecords to CrudHttpController

3.15.0:

  • ioredis becomes peer dependency
  • refactor classes to receive Redis instance instead of redis server url
  • fix DefaultHttpRequest handler to run access control after middleware

3.14.6:

  • update claire core, add LogContext to some implementation

3.14.5:

  • update claire core

3.14.4: critical fix

  • fix HttpRequestHandler parsing request data

3.14.3:

  • lazy validate request data

3.14.2:

  • add clientIP in HttpRequest
  • move access control to run before middleware

3.14.0: breaking changes

  • remove AbstractCacheService
  • remove @Injectable from some service implementations
  • remove SystemService, move getApiInfo outside of service
  • move getUploadUrlForTempUri from FileUploadController to AbstractFileService

3.13.13:

  • update claire orm
  • fix update many does not return lastModified field

3.13.9:

  • return code in response body in case error

3.13.8:

  • fix claire client

3.13.7

  • fix express & lambda http return code

3.13.6

  • update packages

3.13.5

  • fix wrong nested returning in createMany

3.13.4

  • fix updateMany in ModelRepository not returning full URL for update nested mimeProps

3.13.3

  • fix index

3.13.2

  • fix IPrincipal
  • remove SystemSetting model

3.13.0

  • adapt model id changing from number to string
  • remove RBAC related implementation
  • update AbtractHttpAuthorizer interface

3.12.13

  • add missing socket controller permission group metadata
  • add AbstractController and fix @Controller decorator to check for AbstractController
  • AbstractSocketController now extends AbstractController

3.12.11

  • rename AbstractHttpAuthorizationProvider -> AbstractHttpAuthorizer

3.12.10

  • fix update many not reflect changes of uriHandling

3.12.9

  • remove Twilio dependency & TwilioSmsService

3.12.8

  • add @Transactional for AbstractJobController

3.12.7

  • fix update many calling before returning before return result
  • fix updateMany not returning uri after handling
  • add missing file copy endpoint in file manage controller

3.12.4

  • fix uri handling in ModelRepository
  • move get/set system locale to core

3.12.2

  • fix UriMapper typing
  • simplify uri mapper, no more record & IQueryProvider
  • improve ModelRepository bby removing redundant locale DB requests

3.12.0

  • uri mapper does no more provide record id to reduce DB request

3.11.17

  • fix remove URI files in CRUD updateMany & deleteMany
  • support multi locale handling for uri mapper fields
  • add @Head HTTP method & endpoint decorator

3.11.16

  • fix ModelRepository return empty object for localof field without translations
  • fix localeof not to generate translation for default locale

3.11.11

  • fix ExpressWrapper raw parse
  • do not log request body
  • fix ExpressWrapper raw middleware handle any file type
  • handle throw of condition check
  • improve model repository to search nested field

3.11.6

  • log error when request failed
  • add limit setting to json request in ExpressWrapper
  • remote get multiple upload url limits
  • add default info log in DefaultHttpRequestHandler

3.11.1

  • update webpack config
  • merge with @clairejs/base-server

3.10.17

  • fix lambda request mapper parsing cookies
  • move cors config to AbstractHttpRequestHandler

3.10.15

  • add / adjust cors setting
  • add cookie parser
  • fix set cookie with options
  • fix express & lambda wrapper to return cookies

3.10.7

  • add random to order option in model repository
  • socket_read -> disable_write, socket_write -> disable_read

3.10.5

  • AbstractJobScheduler run job with spread params
  • use setTimeout for local scheduler at timestamp
  • fix AwsJobScheduler cron expression
  • breaking change update to AbstractFileService

3.9.2

  • moving and using crud dto factory from claire core
  • add expire param to AbstractCacheService set

3.9.0

  • fix AbstractHttpMiddleware to accept response as second param and return boolean as result

3.8.8

  • update core package, reduce db calls in ModelRepository
  • allow nested update HasMany / HasOne field in ModelRepository

3.8.6

  • fix auto fill of post/put default value (no more auto fill, because of access condition check)
  • fix getMany projection in ModelRepository
  • fix hasMany fields in CRUD projection

3.8.3

  • RedisRbacAuthProvider service id resolver

3.8.1

  • fix @CurrentUser does no more require Identifiable class
  • fix default locale reading empty object properties in ModelRepository

3.8.0

  • add @LocaleOf decorator
  • handle multi-locale for ModelRepository & CrudHtppController

3.7.12

  • handle gcd of interval to reduce step function trigger rate
  • handle cron event for lambda wrapper
  • fix remove cron job for AwsJobScheduler
  • fix cron expression
  • fix rate 1 minute without 's'
  • add more debug log
  • fix cron expression validation
  • remove job executor
  • implement AwsJobScheduler (EventBridge + Step Function)
  • fix LocalJobScheduler interface
  • allow persist LocalJobScheduler job info & multi instance support

3.6.23

  • unify handle not found error
  • fix create many does not return mime field in CrudHttpController
  • fix local socket manager buffer message while socket is creating
  • fix async handling in lambda socket manager
  • handling READY socket message
  • fix AwsSocketManager does not remove socket from redis when disconnect
  • handle default "" or "/" endpoint correctly
  • fix CrudHttpController filter by boolean field
  • fix AwsSocketManager not remove socket from channel after disconnection
  • support @HasOne for Crud controller
  • fix nested queries for ModelRepository

3.6.3

  • fix onChannelConnected cannot send back data to socket (because socket was not yet added to channel and old instance was used)
  • add READY socket message

3.6.0

  • move database to @clairejs/orm package. Bye bye...

3.5.4

  • fix aws get socket by id
  • send error when close socket
  • remove constructor dependency of socket connection handler in socket managers

3.5.0

  • use ioredis instead of redis (for redlock to work)
  • update job interfaces
  • adapt socket managers to use ioredis

3.4.0

  • add job related classes

3.3.27

  • add random order
  • add _nin operator

3.3.26

  • remove socket if authentication failed for aws socket manager
  • fix lambda request mapper
  • fix Express parse Api gateway query for socket connection
  • add debug log
  • refactor principal data resolver for socket manager

3.3.19

  • ExpressWrapper don't send response for gateway socket integration (except for connection request)
  • fix ExpressWrapper handle APi gateway socket message data
  • fix LocalSocketManager get socket by id
  • fix auth resolver typing
  • fix socket data parsing problem
  • fix local socket manager subscribe
  • update redis client to v4

3.3.10

  • fix LambdaWrapper receive ClaireApp factory
  • socket pong return original data
  • fix ModelRepository getNestedQueries
  • add ops to ICrudRepository

3.3.5

  • fix socket auth provider
  • add getSocketsByChannels
  • fix express server exit close connection
  • update socket manager to support multiple instances

3.2.8

  • fix CrudHttpController condition check for update body

3.2.6

  • add cache to RedisRbacAuthProvider

3.2.5

  • add TfaRequired() decorator and hasTfa to IPrincipal
  • abstract DefaultHttpRequestHandler accessControl

3.2.4

  • IPrincipal id to be any

3.2.3

  • simplify dto dissolver interface
  • introduce DtoRepository

3.2.0

  • introduce ICrudRepository
  • CrudHttpController now requires param of ICrudRepository

3.1.16

  • fix uri mapper in CRUD update request

3.1.15

  • re-implement @CurrentUser decorator

3.1.14

  • fix UriMapper & UriMapperHandler types

3.1.13

  • provide IQueryProvider to uriMapper, move uriMapper to server logic
  • provide tmpUri to uriMapper in ModelRepository

3.1.11

  • fix CrudHttpController missing description
  • fix projection query data type

3.1.9

  • strip response data if responseDto is present

3.1.8

  • return 401 http code if not auth throw

3.1.7

  • fix CrudHtppController merge wrong endpoint

3.1.5

  • fix aws socket manager parse null redis

3.1.4

  • abstract file service and cache service does not extends AbstractService anymore
  • fix abstract file service

3.1.2

  • fix server socket sending incorrect plain message

3.1.1

  • fix server socket
  • add permission conditions to CrudHttpController
  • add abstract services
  • add FileUploadHandler
  • add Abstract RbacAuthProvider, Redis & Cache Rbac Auth Provider
  • add rbac dto
  • add MaximumQueryLimit & DtoFieldValidation conditions

3.0.36

  • fix crud controller metadata

3.0.33

  • add @ApiDescription
  • add CrudHttpController metadata description

3.0.30

  • fix objectTypeConstructor

3.0.29:

  • @Socket -> @Message
  • use @Socket to get socket injection in controller method

3.0.26:

  • add error log in http request handler

3.0.25:

  • add null search in vector
  • support array search for isSymbol field

3.0.22:

  • fix timestamp field

3.0.19:

  • fix error throw in transactional

3.0.18:

  • fix not escape search value
  • fix accent & sensitive search in Mysql and Postgres

3.0.15:

  • require injection of database adapter in AbstractSerivce & AbstractHttpController

3.0.14:

  • add getById and getByIds to IQuery

3.0.12:

  • fix error return

3.0.10:

  • remove count query when getOne

3.0.8:

  • freeze table name in join clause

3.0.6:

  • fix index export
  • fix AbstractAccessCondition signature

3.0.5:

  • tested on Postgres & MySql
  • add join ability to IQuery, awesome!!

3.0.3: http method decorator return type check

  • add @ApiResponse decorator to store response body validator
  • add TypedPropertyDescriptor in HTTP method decorator to validate function return type (Promise<HttpResponse>>)

3.0.2: improve http response

  • add binary response

3.0.0:

  • update claire core 3.0
  • controller function param decorators
  • ResponseBuilder
  • remove ops in getMany

2.3.13:

  • update raw query function signature

2.3.12:

  • fix & export CrudService

2.3.10:

  • Array & Object model field persist & parse

2.3.9:

  • @TextField will default to Sequelize.TEXT if length is not specified

2.3.6:

  • fix missing beforeCreate call when update nesting

2.3.1:

  • fix returning nested uris

2.3.0:

  • introduce CrudService
  • CrudHttpController support @HasMany

2.2.12:

  • fix isIntegral default

2.2.10:

  • update CrudHttpController Update and Delete to return Partial<T>

2.2.2:

  • fix @CurrentUser decorator
  • implement @CurrentUser decorator

2.2.0:

  • add AbstractFileUploadHandler and handle file upload in CrudHttpController
  • fix migration contraint remove order

2.1.20:

  • extends IPrincipal

2.1.19:

  • fix crud http controller not init database adapter

2.1.18:

  • downgrade webpack

2.1.16:

  • add pg-hstore

2.1.15:

  • add optional injection for socket manager

2.1.14:

  • AwsSocketManger needs always to be fed by JSON object

2.1.13:

  • correct json parsing when hanling aws socket message

2.1.11:

  • adjust getMany and getRecords to return Pick type based on projection
  • add getRecords for IQuery to return just the records

2.1.9:

  • fix CrudHttpController updateMany FilterField condition check

2.1.8:

  • fix server socket remove not delete its redis info
  • add socket created timestamp info
  • add get all alive sockets to remove stale sockets in server

2.1.5:

  • support model defualt value in db migrator & adapter

2.1.3:

  • add test for cascade delete

2.1.2:

  • update claire core
  • fix converting QueryCondition use "and" as default operator

2.1.1:

  • update claire core
  • update implementation of FileLogMedium

2.0.26:

  • parse client socket data
  • add more debug log
  • fix ExpressWrapper AWS GW socket http integration

2.0.17:

  • add AWS API GW socket request parser for express

2.0.16:

  • add log to http request handler
  • refactor to allow AwsSocketManager to be used with ExpressWrapper

2.0.14:

  • fix express socket unique id

2.0.13:

  • update error code from claire core

2.0.12:

  • export Get, Post, Put, Del decorators

2.0.11:

  • add log in http request handler
  • fix AbstractAccessCondition signature

2.0.9:

  • fix AccessCondition (to use injection)
  • fix ExpressWrapper & LambdaWrapper to resolve AbstractServerSocketManager
  • remove getMountedEndpointInfo from AbstractHttpRequestHandler, move to ServerGlobalStore
  • fix property assignment in isolated transactional object
  • add log for AwsSocketManager, fix connection problem to redis

2.0.1:

  • fix some import redundancies

2.0.0:

  • Upgrade with claire core 2.0.0

1.6.4:

  • Add pong socket response

1.6.3:

  • AbstractDatabaseMigrator: supply migration directory to migrate and rollback functions
  • fix migrator cli path

1.6.1:

  • AbstractPrincipal -> IPrincipal (for serialization)

1.5.51:

  • fix AwsSocketManager not release redis connection, add more log
  • fix ExpressWrapper unhandled socket promise exception

1.5.39 (Breaking change):

  • fix properties null check
  • socket multiplex

1.5.28:

  • fix server socket authId => authInfo

1.5.26:

  • add OwnedResourceAccessCondition

1.5.24:

  • replace HttpRequest.getPrincipalId by HttpRequest.getAuthInfo

1.5.23:

  • fix ServerSocket
  • fix not remove disconnect socket from socket manager

1.5.15 (Breaking change):

  • remove getValue / setValue in HttpRequest
  • add setPrincipalId / getPrincipalId in HttpRequest
  • adjust Socket Server

1.5.12:

  • handle socket in lambda wrapper

1.5.11:

  • fix ServerSocket

1.5.6:

  • update claire core
  • fix ServerSocket

1.5.4:

  • run middleware before socket authentication

1.5.2:

  • add websocket support in ExpressWrapper

1.5.1:

  • update claire core

1.5.0:

  • revert back to 1.3.38

1.3.38:

  • export QueryCondition

1.3.37:

  • return error name instead of TRANSACTION_ERROR
  • update claire core

1.3.36:

  • fix missing down script of unique constraint in database migrator
  • add rollback to database migrator

1.3.34:

  • export AbstractDatabaseMigrator
  • fix DefaultSqlDatabaseMigrator not generate new unique constraints for new field

1.3.32:

  • fix DefaultSqlDatabaseMigrator missing foreign constraint check when add/remove fields

1.3.31:

  • update server modify

1.3.30:

  • adjust body raw parser in ExpressWrapper

1.3.28:

  • fix not supply HttpResponse in Http handler

1.3.27:

  • add body parser raw middleware

1.3.26:

  • modify express wrapper send result

1.3.25:

  • add request options mapper in LambdaWrapper

1.3.24:

  • add LambdaWrapper

1.3.23:

  • add ExpressWrapper

1.3.22:

  • merge accessConditions in CrudHttpController

1.3.21:

  • DefaultSqlDatabaseMigrator will no longer generate remove table query.

1.3.20:

  • add permissionGroup and displayName metadata for EndpointMetadata

1.3.16:

  • update claire core
  • allow empty records for CrudHttpController createMany

1.3.15:

  • fix incorrect parse Http params

1.3.13:

  • update claire core

1.3.12:

  • re-introduce terser plugin
  • update claire core

1.3.10:

  • emit source map

1.3.9:

  • update claire core

1.3.8:

  • fix missing HttpResponse export

1.3.7:

  • upgrade Clairejs/core

1.3.6:

  • upgrade Clairejs/core

  • interpret @ServerTime and @Timestamp

1.3.2 (Breaking change):

  • re-introduce http response to controller

1.2.6:

  • add unaccent operators (uSUBSTR, iuSUBSTR)

1.2.5:

  • allow multiple calls to boot

1.2.4:

  • fix http request handler parse get and delete request body

1.2.2:

  • split database migrator
  • rework of ClaireServer to be request handler
  • remove dependency of expressjs and its middleware

1.1.9:

  • revert 1.1.8

1.1.8:

  • init app when getExpressApp

1.1.7:

  • add pg-hstore as dependency

1.1.6:

  • fix autoCommit in @Transactional

1.1.5:

  • use AbstractModel id field for primary key query

1.1.3:

  • fix returning ids for updateMany and deleteMany

1.1.2:

  • fix not auto generate migration when changing cascade of @FK
  • set build target es6

1.1.0:

  • fix foreign key cascase delete
  • fix auto commit of crud http controller
  • return array of ids when updateMany or deleteMany

1.0.22:

  • CrudHttpController exposes static validators

1.0.21:

  • update Clairejs Core

1.0.20:

  • update CrudHttpController for query change

1.0.17:

  • perform json parsing for fields of request params and queries

1.0.15:

  • fix @Searchable in CrudHttpController

1.0.13:

  • add iSUBSTR operator to search for case insensitive string

1.0.9:

  • fix CrudHttpController endpoint naming

1.0.8:

  • fix DefaultHttpRequestHandler upgrade Http

1.0.6:

  • fix DefaultHttpRequestHandler cannot return request body when no validator is provided

Readme

Keywords

none

Package Sidebar

Install

npm i @clairejs/server

Weekly Downloads

281

Version

3.22.8

License

ISC

Unpacked Size

271 kB

Total Files

146

Last publish

Collaborators

  • athongintel