-
-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: @storybook/addon-actions: Type 'Addon_DecoratorFunction<unknown>' is not assignable to type 'DecoratorFunction<ReactRenderer, { #22384
Comments
@ndelangen this must be due to https://github.com/storybookjs/storybook/pull/22261/files @kasperpeulen commented on it here #22261 (comment) and I also asked you about it when we chatted about it in person. If we had type tests, could we have avoided this? |
I think we should definitely add a type test for this! Will look at it. |
The types added in #22261 are not working for code that is actually imported by users. I thought approved that PR because I thought they were not actually used. Making a correct type of a decorator that can be used for any renderer is tricky. This is sadly enough: const withActions: DecoratorFunction<Renderer>; Basically, you want something like: declare const withActions<T extends Renderer>: DecoratorFunction<T>; However, this is not a syntax that TS support. You basically have to inline the function type of DecoratorFunction, which looks like this: const withActions: <T extends Renderer>(storyFn: PartialStoryFn<T>) => T['storyResult'] Added that in this PR: This needs to be done for every decorator in this PR, that needs to be imported: You can not annotate an array of decorators with this. It needs to be done for every individual decorator I believe. |
Yo-ho-ho!! I just released https://github.com/storybookjs/storybook/releases/tag/v7.1.0-alpha.20 containing PR #22455 that references this issue. Upgrade today to the
|
…enable audit for prod (#1322) # Pull Request ## 🤨 Rationale Fixes #1317. The `npm audit` of production dependencies was failing because of deps that Storybook brought in. But Storybook should really be a dev dependency. Storybook is listed as a production dependency because it's in `peerDependencies` in the root `package.json`. We added it there in [this commit](321cdd3) of the PR that migrated us to Storybook 7. I believe the rationale was that it was necessary to apply [a patch](https://github.com/ni/nimble/blob/main/patches/%40storybook%2Bhtml%2B7.0.0.patch) to the package. (I'd like to remove that patch but I think it's not possible until storybookjs/storybook#22384 is available. Currently it's only released in an alpha branch) ## 👩💻 Implementation 1. Remove `@storybook/html` from `peerDependencies` in the root `package.json` 2. `git clean -fdx` 3. `npm install` to regenerate `package-lock.json` 4. Re-enable audit for all severity levels for prod dependencies ## 🧪 Testing I locally verified that the patch was still applied to the file inside node_modules. If it isn't applied, I believe we'd see a build error. I locally verified that `npm audit --only=prod` succeeds now. Otherwise relying on the PR build. ## ✅ Checklist <!--- Review the list and put an x in the boxes that apply or ~~strike through~~ around items that don't (along with an explanation). --> - [ ] I have updated the project documentation to reflect my changes or determined no changes are needed.
# Pull Request ## 🤨 Rationale Wanted to see if there were any improvements. ## 👩💻 Implementation - Bumped version from 7.4.0 to 7.6.13 - Had to work around an [issue](storybookjs/storybook#25170) related to the typing of `withActions` decorator of actions add-on. ~~Re-exporting `withActions` from our Storybook utilities file with a type that works (based on [comment in related issue](storybookjs/storybook#22384 (comment) Now providing type argument to generic `withActions` function. - Marked docs support disabled in `addon-essentials` since we import that addon separately (`addon-docs`) so we can configure it. Not sure if this improves anything, but it doesn't seem to hurt. - Also fixes #1639 ## 🧪 Testing Ran Storybook. `npm run storybook` seems to get everything ready about 25% faster (40s -> 30s). ## ✅ Checklist <!--- Review the list and put an x in the boxes that apply or ~~strike through~~ around items that don't (along with an explanation). --> - [x] I have updated the project documentation to reflect my changes or determined no changes are needed.
Describe the bug
Cannot use withActions from @storybook/addon-actions/decorator as it throws a type error:
To Reproduce
Edit RouteNoteDialog.stories.tsx lines 74-76 to reproduce.
GitHub:
https://github.com/JeffreyStevens/addon-actions.git
Chromatic:
https://64527bd174e7442f19279395-jzhubeajpz.chromatic.com/?path=/story/admin-unit-routenotedialog--note
System
Additional context
Started failing with 7.0.7 version.
The text was updated successfully, but these errors were encountered: