feat!: various type improvements #6385
Open
+562
−487
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
TypeWithID
orGlobalTypeWithID
, as globals do not have IDs. Now they are justRecord<string, unknown>
GeneratedTypes['collections'][TSlug]
toDataFromCollectionSlug<TSlug>
MarkOptional<GeneratedTypes['collections'][TSlug],'createdAt' | 'id' | 'sizes' | 'updatedAt'>
toRequiredDataFromCollectionSlug<TSlug>
T
generics into more descriptive ones (TSlug
orTData
)BasePayload
as we always useGeneratedTypes
anywaysTSlug
generic toCollectionConfig
. Currently it's used to properly type theAfterOperationHook
result. In a later PR, I want to trickle that down to all the other hooks which are currently mostly untyped!relationTo
is now properly typed to the collection slugs (from generated types)!number | string | symbol
with the help of a newStringKeyOf
utility type. This makeskeyof
operations on them more reliableBREAKING:
relationTo
props on filterOptions, relationship fields and upload fieldsType of change
Checklist: