Skip to content

Conversation

@Tbhesswebber
Copy link

@Tbhesswebber Tbhesswebber commented Nov 25, 2023

This PR adds the basic convenience types for manual type construction of logics using kea-forms. There are two primary ways of doing this - directly using FormValues and FormActions types or using the convenience MakeFormLogicType wrapper that pushes the former two utilities into kea's MakeLogicType.

In order to get around the TypeScript restrictions on template literal and generic types as keys, I had to create an array of tuples to interpolate and a type utility parallel to Object.entries to turn the interpolation into an array using mapped types. I believe that this is pretty computationally heavy from the typescript side, so I'd especially like feedback on how to improve that if you can think of a meaningful way to do it.

I'll update documentation after I get feedback on the direction of this PR. (cc @mariusandra)

Closes #4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Manual Type Creation

1 participant