migrate withStorybook to typescript #633
Merged
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.
Proposal to fix #630
Note
Instead of manually defining the
d.ts
file I converted the current implementation to typescript and lettsup
emit the.js
and.d.ts
file. This should hopefully be more future-proof.In general it works, but I had to add a custom tsup cli cmd to the package.json (reason is explained below).
withStorybook
is imported like thisrequire('@storybook/react-native/metro/withStorybook');
I think ideally
withStorybook
would live in src like all other files and be transpiled todist
, but that would be a breaking change.dist
and put barrel files inmetro
folder so that it is not a breaking change, but that created problems with tsup because apparently it can not handle barrel.d.ts
files and always emits an empty.d.ts
.Using a separate
tsup
cmd to specify a differentoutDir
(metro
folder)