All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- added MapPlainParseHelper
- added JsonHelper methods: mapJsonSerializableMapToJson(), mapPrimitiveMapToJson(), mapJsonSerializableArrayToJson()
- JsonSchemaFactory.Object() add missing 'additionalProperties' option
- added 'additionalProperties' option to JsonSchema Object
- added PlainParseHelper.parseRecord()
- changed HDateTime.now() precision to milis
- changed HDateTime.toJson() return type to ISO 8601
- added Uuid ValueObject
- added UuidBase converters to base62 and base36
- added JsonSchema prop to HObjects
- added OrganizationId, OrganizationGroupId, OrganizationMemberId, TenantId
- added PrimitiveComparable
- added ObjectFilter
- UBigInt64 -> UInt64.
- HValueObject -> ValueObject
- GetQueryOptions -> GetListQueryOptions
- Dto -> DTO
- temporaly removed EmailHash(need rework to support browser&node versions in one)
- removed AccountId -> replaced with TenantId
- reworked HObjects(no backward compatible changes)
- AbstractValueObject -> HValueObject
- Removed generic self from HObjects
- reworked HObjects(no backward compatible changes)
- renamed ValueObjects:
- DateTime -> HDateTime
- UIntValue -> UInt
- UBigInt -> UBigInt64
- StringValue -> HString
- RegexStringValue -> HRegexString
- added HObject concept with parse from unknown method generated from AOT(Transformer in core).
- added first package benchmark stuff
- added types: NonMethodRequiredPropertyNames,NonMethodOptionalPropertyNames,NonMethodProperties, ToJSONReturnType, JsonObjectType
- refactor ValueObject concept to HObject.
- pascalCaseToSnakeCase() - implemented faster version.
- OK() returns constant objects for:
true
,false
,undefined
,null
values for performence.
- extractLoggerFromObject(), extractTestLoggerFromObject(), extractTestLoggerRecordsFromObject
- AppMeta - default EnvProvider in NodeJS env.
- separated http exports(/http and ./testing/http).
- export ./testutil -> ./testing
- separated Jest matchers export ./testing/jest
- removed MailContent Value Object
- shrinked build size
- removed
xss
dep - removed bin docker
- removed
string.prototype.matchall
dep
- small types fixes in strict mode
- ES module build .
- DateTime.c() and DateTime.cs() - better support date/time string formats:
2023-10-01
,2023-10-01 08:50:00
2023-10-01T08:50:00
. - ConsoleLogger -
message -> msg
timestamp
->time
.
- Removed ConsoleLogger log record app_id and app_env append(with logging solution like fluentd we can append it on higher level).
- RefId value object
- DateTime.formatRfc1123()
- ARW() - more meaning name for wrapping Promise with AsyncResult
- AsyncResult.fromPromise() -> AsyncResult.wrap().
- AsyncResult.fromPromiseOkTrue() -> AsyncResult.warpOnOkTrue().
- AsyncResult.from() - accepts functions returns Promise(async/await support).
- RetryHelper.retryAsync() - returns AR.
- AsyncResult.fromSafePromise() - AsyncResult.from supports both.
- P() - use ARW()
- PS() - use ARW()
- PB() - use ARWB()
- JsonHelper class.
- Added optional error type constraint Result and AsyncResult.
- Handler in [Result|AsyncResult].onOk() and [Result|AsyncResult].onErr() now can return all values(Value will be Wrapped to Result if need).
- [Result|AsyncResult].onErr() now can filter what fn can handle on first parameter.
- Removed Result.onOkA - now onOk can change mode to async.
- Removed using object event type map to callback in [Result|AsyncResult].onErr().
- Removed [Result|AsyncResult].map() and [Result|AsyncResult].mapErr();
- Removed UNKNOWN_ERROR_TYPE.
- AccountId and UserId.
- Jest matcher: toMatchSuccessResult.
- function stripAnsiColors().
- function wrapToIterable().
- interface GetQueryOptions.
- class RetryHelper.
- type DropFirstItem.
- type TupleTail.
- type ParamsTail.
- AccountId and UserId value Objects.
- many changes, initial changelog.
- many changes.
[unreleased] https://github.com/hexancore/common/compare/0.16.5...HEAD
[0.16.5] https://github.com/hexancore/common/compare/0.16.4...0.16.5
[0.16.4] https://github.com/hexancore/common/compare/0.16.3...0.16.4
[0.16.3] https://github.com/hexancore/common/compare/0.16.2...0.16.3
[0.16.2] https://github.com/hexancore/common/compare/0.16.1...0.16.2
[0.16.1] https://github.com/hexancore/common/compare/0.16.0...0.16.1
[0.16.0] https://github.com/hexancore/common/compare/0.15.0...0.16.0
[0.15.0] https://github.com/hexancore/common/compare/0.14.0...0.15.0
[0.14.0] https://github.com/hexancore/common/compare/0.13.3...0.14.0
[0.13.3] https://github.com/hexancore/common/compare/0.13.2...0.13.3
[0.13.2] https://github.com/hexancore/common/compare/0.13.1...0.13.2
[0.13.1] https://github.com/hexancore/common/compare/0.13.0...0.13.1
[0.13.0] https://github.com/hexancore/common/compare/0.12.5...0.13.0
[0.12.5] https://github.com/hexancore/common/compare/0.12.4...0.12.5
[0.12.4] https://github.com/hexancore/common/compare/0.12.3...0.12.4
[0.12.3] https://github.com/hexancore/common/compare/0.10.4...0.12.3
[0.10.4] https://github.com/hexancore/common/releases/tag/0.10.4