Releases: conorbrandon/ts-dynamodb
Releases · conorbrandon/ts-dynamodb
v1.2.1
v1.2.0
- refactor
ProjectionExpression
type - allow union
Item
s toput
- filter symbol keys and stringify number keys in
GetAllKeys
- remove built in
Limit: 1
onqueryItem*
methods
v1.1.0
- Add
query*Key[PE]
methods. These are more convenience methods that automatically create anAND
edKeyConditionExpression
based on the fields in a providedKey
- Smarter detection of accessing out of bounds tuple indices. Previously, if any index was invalid, the tuple would become
never
. Now, invalid indices are ignored, except in the case that only an invalid index was accessed, the tuple will beundefined
instead. - Auto generated
ExpressionAttribute
s are checked for user-defined usage before using. If an attribute with that name is already being used, a new name is chosen (by incrementing the number) - Better support for
any
/unknown
Record
index signatures support forPE
s andUE
s. Behavior is based on your preferrednoUncheckedIndexAccess
tsconfig setting. Read more hereupdateSimpleSET
did not correctly use the most specificAttributes
type when usingReturnType
=“UPDATED_NEW/OLD”
. Now it will restrictAttributes
to only the properties provided in theItem
. (This comes with the drawback that the error when invalid, TS won't error on theItem
property, but instead complains that a "dummy" error property is missing from the params. This limitation is (I believe) required to work around gotchas with the newconst
type parameter keyword, especially as it relates to tuples requiring thereadonly
modifier, as detailed on the PR.)- When putting or updating non-discriminated object unions, multiple union constituents can be satisfied at once, as long as each contains all the properties required for that constituent. This is actually stricter than TS’s built in excess property checking. Previously, only one union constituent could be satisfied at a time. This was due to a distributive conditional type splitting each constituent into it’s own “branch” to perform excess property checking and reporting the results separately