@clairejs/core
v3.8.10
Published
Claire dependency injection foundation and common services.
Downloads
706
Readme
Change Log
3.8.10
- update id for Identifiable model
- fix registerModel DAG issue
3.8.8
- update CachedDataContainer
- fix DAG order for global store models
- change returning queries from boolean to string[]
- allow RecursiveKey in AbstractModel "_" function
- change model-field separator from '.' to ':'
- fix getObjectMetadata,
- auto recognize nested dto
- remove DataType.POINT
3.7.13
- fix floating in GeoPoint
- add RecursiveType to allow query to sub document
- add RecursiveKeys util type and fix @Index key
- update IndexType
- restrict index type
- add back @Index decorator
- fix accent map
- remove @Index decorator from core
- fix DefaultLogger output
- change ApiInfo.name to ApiInfo.displayName
- return DataType.Object if reflect data type not found
- rename Permission to ApiInfo add back api group name
- remove access condition types from core, moved to id-sdk
3.6.5
- add LogHandler interface into AbstractLogger and public the log method
- allow registering exit handler in ClaireApp
- fix missing relax: true in query validators
- fix validateData adding undefined keys
- fix OrderDirective in queries
3.5.2
- export as esm module
- remove webpack, use tsc to compile
3.4.2
- remove UpdateRecordsResponse, re-use the UpdateManyResponse, and update records dto factories
- add UpdateRecordsBody & UpdateRecordsResponse
3.4.0
- add LogContext to provide log context for logger
3.3.28
- fix protected scope
- generic the args[] of CachedDataContainer
3.3.26
- add ApiInfoResponse dto
3.3.25
- fix registerSingleton instance not inited
3.3.24
- fix data cointainer set value must update cache value
3.3.23
- type resolve of GeoPoint
- fix @Index decorator typing issue
3.3.21
- add POINT data type and GeoPoint dto class
3.3.20
- add TFA_REQUIRED to core errors
- fix type issue with @Inject()
3.3.18
- add getFieldMetadata function
3.3.17
- export searchCompare function
3.3.16
- export getInstance function
3.3.15
- fix nested error message
3.3.14
- add registerSingleton method in service provider
3.3.13
- add some errors with code
- update error builder to return normal object instead of Error object
3.3.10
- remove dataType from OmitProps, allow data type to be explicitly scepcified in some case
3.3.9
- export FieldsQuery
3.3.8
- add @Index decorator for model and IndexInfo in ModelMetadata
3.3.6
- add pick function to pick metadata to new class
3.3.5
- add select/combine function to combine multiple @Data classes
- split GetManyQueries class into multiple sub classes
3.3.3
- add CachedDataContainer
- add SerializedValueProvider
3.3.2
- fix IdParam
- Fix Identificable remove @Field decorator
- AbstractModel has id converted from number to string
3.2.10
- generalize Identificable class
3.2.9
- fix missing HttpMethod
3.2.8
- move setSystemLocale & getSystemLocale from server to core
- conditional types for GetManyQueries & UpdateManyQueries (nested @HasMany & HasOne fields)
3.2.5
- registerModel sorts the models array by DAG order
3.2.4
- add random to order directive
3.2.3
- add omitData function
- return default option field in CRUD create many
3.2.1
- fix enum array element data type
- move crud dto factory to core
- add GetManyQueriesClass factory
3.1.36
- fix validateData validate rangeProps
- add GetManyResponseBodyClass factory
3.1.34
- fix validateData replace empty string by undefined
- fix pickData ignore zero and empty string value
3.1.32
- fix diffNestedArray to return undefined if array are the same
- fix diffData to accept partial as new object
- add diffNestedArray to diff @HasMany field
- add fillDefault to validateData to control auto fill of default value when validate data
3.1.27
- add uniqueReducer
- fix type check for @HasOne and @HasMany
3.1.26
- add removeAccent function, fix mising accent
- improve diffData, add pickData function
- fix deepMerge not handle null correctly
- diffData recursively
3.1.21
- move LocaleEntry & LocaleTranslation models to claire server
- add locale for GetManyQueries
- add @LocalOf() decorator for multi-lingual processing
- add LocaleEntry & LocaleTranslation models
3.1.15
- fix typing
- add default value in DtoFieldMetadata => fix validateData to replace default value
- add @HasOne in dto decorator
3.1.10
- replace Socket message type DISCONNECTION to READY
- IClientSocket on disconnect with error
- remove QueryOperator (move back to server package)
3.1.6
- remove ISocket
- refactor socket message
3.1.5
- fix leanData
- add deepMerge
3.1.3
- ignore crud to dto
- DeepPartial for http request/response dto
3.1.2
- move fk and pk to dto
- move hasMany and ignoreCrud to Dto
3.1.1
- add Identifiable class
- @Data strict is now the default behavior
- add DeepPartial and DeepPartialClass
3.0.30
- remove currentUser, move to claire server logic
3.0.29
- remove uriMapper from claire core (move to claire server)
3.0.28
- update mimeProps adding oldUri param for uriMapper
3.0.27
- add diffData, leanData, stripData functions to data validator
3.0.25
-- add @ElementDto decorator
3.0.24
- add ISocket interface
- add DTO as new condition value type
3.0.21
- fix metadata field clone using array slice, using object clone instead
3.0.20
- add isPrimitive and description to DtoMetadata
- change DtoFieldMetadata.objectTypeConstructor -> DtoFieldMetadata.elementDto
3.0.15
- add allow null in vector props
- add isSymbol to support array search for setting key
3.0.10
- timestampt bigint decoration
3.0.9
- re-introduce Errors & ErrorBuilder
3.0.8
- add Enum decorator support
3.0.6
- using getTableName to convert model name to table name and model id
- static _ method return "key of T" so that IQuery won't complain
- add static _ method to AbstractModel to extract column name
3.0.3
- refactor @DTO -> @Data
- unify interface for @Field & @Column decorator
- remore ClaireError
2.3.10
- move QueryOperator interfaces to core
2.3.8
- add cascade to hasMany
- fix isIntegral => floating
2.3.7
- remove @Integral, add @Floating
2.3.6
- fix default value for model
2.3.5
- update UpdateManyResponse interface
2.3.4
- add @HasMany decorator, add currentUser to @FK() decorator
2.3.1
- add uriMapper/public info in @URI decorator
2.3.0 [Breaking change]
- @Provider now require baseClass, and no longer need addProvider to be called
2.2.8
- fix abstract model created at = 0
2.2.7
- downgrade webpack
2.2.6
- add @Register for DI injection
2.2.3
- npm audit
2.2.2
- allow optional @Inject
- add resolveOptional to IInjector
2.2.0
- @Injectable now does not auto register service, but only there to trigger constructor params metadata
2.1.6
- add timestamp to DefaultLogger
2.1.5
- add Regex decorator for DTO
2.1.4
- fix abstract model default value for created at and id
- auto-detect model default value and apply @Default decorator
2.1.2
- fix abstract model default value for created at and id
2.1.1
- add Initable for default logger
- add IInit in ILogMedium
2.1.0
- add SocketMethod
- rename Http to HttpMethod
2.0.9
- add more errors code
- export AccessToken interface
2.0.5
- move constructor dependencies info to metadata to avoid registration when using @Inject decorator
2.0.0
- BIG CHANGE: upgrade dependency injection and resolve technic
- WARNING: this change affects the fundamental logic in all of @clairejs/core depedants
1.6.16:
- update socket messages
1.6.15:
- fix build script
- update socket messages
- fix default logger content serializer
1.6.9:
- fix some DTO decorators requires AbstractModel
1.6.8:
- fix SocketAuthenticationDownstreamMessage: authId => authInfo
1.6.7:
- remove ISocket
1.6.6:
- add onReconnect and onDisconnect for ISocket
1.6.5:
- add isOpen(): boolean to ISocket
1.6.4:
- add @Required(false) ability for @Inject() decorator
1.6.3:
- adjust ISocket interface
1.6.2:
- add ISocket
1.6.1:
- filter initables by environment
1.6.0:
- revert back to 1.4.23
1.4.23:
- copy extra keys to validated DTO if not strict
1.4.22:
- update server modify fn
1.4.20:
- add mime file size check in dto validator
1.4.16 (Breaking change):
- move some decorators from Model to Dto
1.4.15:
- fix validator not validate empty string
1.4.12:
- add IdParam
1.4.11:
- add @Relation decorator to dto decorators
1.4.9:
- add partial to @DTO decorator
1.4.8:
- move @ServerValue to DtoMetadata
1.4.6:
- remove isRequired from @PK and @ServerTime decorators to allow DTO extension from Model
1.4.4:
- reintroduce terser plugin to keep mangled class name
1.4.3:
- emit source map
1.4.2:
- fix @Labal decorator
- export @Label decorator
1.4.0 (Breaking change):
- introduce DAG to sort initables
- remove getModels and use public property instead
1.3.9:
- can provide constructor class to @Inject decorator
1.3.8 (Breaking change):
- add @Label decorator
- remove name property of @Field decorator
1.3.7:
- improve ClaireError
1.3.6:
- adjust @Timestamp and @ServerTime decorators
1.3.5:
- add Utils
1.3.4:
- optional environment and configuration resolver
1.3.3:
- export @Timestamp decorator
1.3.2:
- fix typo
1.3.1:
- refactor ClaireApp and its builder
1.2.7:
- throw ClaireError in decorators
1.2.6:
- update tsconfig.json build config
1.2.3:
- add DtoClass decorator
1.2.2:
- fix DTO validator
1.2.1:
- introduce AbstractBootstrap
1.2.0 (Breaking change):
- update injection, remove some rarely used functions
1.1.2 (Breaking change):
- update GetManyQueries and UpdateManyQueries signature
1.0.16:
- fix enum value check
1.0.15:
- update request response dtos
1.0.14:
- fix missing export @Searchable decorator
1.0.13:
- add case and accent sensitive config in @TextField decorator
1.0.10:
- fix ClaireApp not validate configuration