Skip to content
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

[Templates] Plugin deps & Custom.d.ts #15798

Merged
merged 9 commits into from
Feb 17, 2023
Merged

[Templates] Plugin deps & Custom.d.ts #15798

merged 9 commits into from
Feb 17, 2023

Conversation

joshuaellis
Copy link
Member

What does it do?

  • Correctly adds the deps that are listed in the generated plugin template
  • Correctly adds the dev deps types packages in the generated plugin template for TS only
  • Adds custom.d.ts file for Typescript plugins so it doesn't fail with our own packages

Why is it needed?

  • When you try to make a plugin with those template, they fail horrifically because we don't list most of the deps. We assume they're in a monorepo set up but that isn't necessarily the case and is poor practice imo.

Related issue(s)/PR(s)

@joshuaellis joshuaellis added pr: fix This PR is fixing a bug source: generators:app Source is generators/app package labels Feb 13, 2023
@joshuaellis joshuaellis added this to the 4.6.2 milestone Feb 13, 2023
@codecov
Copy link

codecov bot commented Feb 13, 2023

Codecov Report

Base: 58.40% // Head: 58.41% // Increases project coverage by +0.00% 🎉

Coverage data is based on head (f2e38ed) compared to base (2f1e37c).
Patch has no changes to coverable lines.

❗ Current head f2e38ed differs from pull request most recent head 29761db. Consider uploading reports for the commit 29761db to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #15798   +/-   ##
=======================================
  Coverage   58.40%   58.41%           
=======================================
  Files        1545     1545           
  Lines       38196    38199    +3     
  Branches     7512     7510    -2     
=======================================
+ Hits        22309    22314    +5     
+ Misses      13594    13592    -2     
  Partials     2293     2293           
Flag Coverage Δ
back 47.39% <ø> (ø)
front 66.05% <ø> (+0.01%) ⬆️
unit_back 47.39% <ø> (ø)
unit_front 66.05% <ø> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...core/admin/admin/src/pages/HomePage/SocialLinks.js 100.00% <0.00%> (ø)
...re/admin/admin/src/pages/Admin/Onboarding/index.js 100.00% <0.00%> (ø)
...s/SettingsPage/pages/ApplicationInfosPage/index.js 92.00% <0.00%> (+2.52%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

joshuaellis and others added 2 commits February 15, 2023 08:49
Co-authored-by: markkaylor <mark.kaylor@strapi.io>
….json.hbs

Co-authored-by: markkaylor <mark.kaylor@strapi.io>
@gu-stav
Copy link
Contributor

gu-stav commented Feb 16, 2023

@joshuaellis Unfortunately I don't feel comfortable to review this PR. Generators are owned by @markkaylor and @remidej and I believe they should be the ones reviewing this.

Copy link
Contributor

@markkaylor markkaylor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I do the following test for a TypeScript plugin:

  1. Generate a TypeScript plugin via ./node_modules/.bin/strapi generate in examples/getstarted
  2. Add the plugin config
  3. In the TypeScript plugin run yarn && yarn build

The same test seems to work on main though 🤔

Screenshot 2023-02-16 at 16 57 07

@joshuaellis
Copy link
Member Author

Should we remove axiosInstance considering we now have useFetchClient hook? @gu-stav & @markkaylor

@gu-stav
Copy link
Contributor

gu-stav commented Feb 16, 2023

@joshuaellis I'd love that.

@joshuaellis
Copy link
Member Author

So because we don't have types for the StrapiApp class, i've had to put any. I've also removed the react deprecated classes because imo inference is easier with react-components -> React.FC in 17.X was highly discouraged to be used.

I've also removed axiosInstance because people should be using useFetchClient – I couldn't see any documentation on the site for this though... so i'm not sure how we communicate this change?

@github-actions
Copy link
Contributor

github-actions bot commented Feb 16, 2023

Size Change: 0 B

Total Size: 1.54 MB

ℹ️ View Unchanged
Filename Size
packages/core/admin/build/Admin_homePage.********.chunk.js 3.7 kB
packages/core/admin/build/Admin_InternalErrorPage.********.chunk.js 533 B
packages/core/admin/build/Admin_marketplace.********.chunk.js 6.37 kB
packages/core/admin/build/Admin_pluginsPage.********.chunk.js 974 B
packages/core/admin/build/Admin_profilePage.********.chunk.js 3.02 kB
packages/core/admin/build/Admin_settingsPage.********.chunk.js 22.3 kB
packages/core/admin/build/admin-app.********.chunk.js 23.9 kB
packages/core/admin/build/Admin-authenticatedApp.********.chunk.js 8.26 kB
packages/core/admin/build/admin-edit-roles-page.********.chunk.js 1.92 kB
packages/core/admin/build/admin-edit-users.********.chunk.js 3.77 kB
packages/core/admin/build/admin-users.********.chunk.js 5.17 kB
packages/core/admin/build/api-tokens-create-page.********.chunk.js 247 B
packages/core/admin/build/api-tokens-edit-page.********.chunk.js 247 B
packages/core/admin/build/api-tokens-list-page.********.chunk.js 2.52 kB
packages/core/admin/build/ar-json.********.chunk.js 4.98 kB
packages/core/admin/build/audit-logs-settings-page.********.chunk.js 3.58 kB
packages/core/admin/build/ca-json.********.chunk.js 13 kB
packages/core/admin/build/content-manager.********.chunk.js 63.9 kB
packages/core/admin/build/content-type-builder-list-view.********.chunk.js 6.27 kB
packages/core/admin/build/content-type-builder-translation-ar-json.********.chunk.js 1.35 kB
packages/core/admin/build/content-type-builder-translation-cs-json.********.chunk.js 2.88 kB
packages/core/admin/build/content-type-builder-translation-de-json.********.chunk.js 4.19 kB
packages/core/admin/build/content-type-builder-translation-dk-json.********.chunk.js 3.75 kB
packages/core/admin/build/content-type-builder-translation-en-json.********.chunk.js 3.95 kB
packages/core/admin/build/content-type-builder-translation-es-json.********.chunk.js 3.98 kB
packages/core/admin/build/content-type-builder-translation-fr-json.********.chunk.js 1.66 kB
packages/core/admin/build/content-type-builder-translation-id-json.********.chunk.js 3.34 kB
packages/core/admin/build/content-type-builder-translation-it-json.********.chunk.js 3.47 kB
packages/core/admin/build/content-type-builder-translation-ja-json.********.chunk.js 1.23 kB
packages/core/admin/build/content-type-builder-translation-ko-json.********.chunk.js 4.37 kB
packages/core/admin/build/content-type-builder-translation-ms-json.********.chunk.js 3.28 kB
packages/core/admin/build/content-type-builder-translation-nl-json.********.chunk.js 3.3 kB
packages/core/admin/build/content-type-builder-translation-pl-json.********.chunk.js 4.17 kB
packages/core/admin/build/content-type-builder-translation-pt-BR-json.********.chunk.js 4.17 kB
packages/core/admin/build/content-type-builder-translation-pt-json.********.chunk.js 1.1 kB
packages/core/admin/build/content-type-builder-translation-ru-json.********.chunk.js 4.69 kB
packages/core/admin/build/content-type-builder-translation-sk-json.********.chunk.js 3.74 kB
packages/core/admin/build/content-type-builder-translation-sv-json.********.chunk.js 4.18 kB
packages/core/admin/build/content-type-builder-translation-th-json.********.chunk.js 4.36 kB
packages/core/admin/build/content-type-builder-translation-tr-json.********.chunk.js 3.84 kB
packages/core/admin/build/content-type-builder-translation-uk-json.********.chunk.js 4.37 kB
packages/core/admin/build/content-type-builder-translation-zh-Hans-json.********.chunk.js 3.24 kB
packages/core/admin/build/content-type-builder-translation-zh-json.********.chunk.js 4.5 kB
packages/core/admin/build/content-type-builder.********.chunk.js 24 kB
packages/core/admin/build/cs-json.********.chunk.js 5.88 kB
packages/core/admin/build/de-json.********.chunk.js 12.9 kB
packages/core/admin/build/dk-json.********.chunk.js 10.6 kB
packages/core/admin/build/email-settings-page.********.chunk.js 2.1 kB
packages/core/admin/build/email-translation-ar-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-cs-json.********.chunk.js 121 B
packages/core/admin/build/email-translation-de-json.********.chunk.js 120 B
packages/core/admin/build/email-translation-dk-json.********.chunk.js 616 B
packages/core/admin/build/email-translation-en-json.********.chunk.js 610 B
packages/core/admin/build/email-translation-es-json.********.chunk.js 675 B
packages/core/admin/build/email-translation-fr-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-id-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-it-json.********.chunk.js 118 B
packages/core/admin/build/email-translation-ja-json.********.chunk.js 787 B
packages/core/admin/build/email-translation-ko-json.********.chunk.js 758 B
packages/core/admin/build/email-translation-ms-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-nl-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-pl-json.********.chunk.js 660 B
packages/core/admin/build/email-translation-pt-BR-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-pt-json.********.chunk.js 668 B
packages/core/admin/build/email-translation-ru-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-sk-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-th-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-tr-json.********.chunk.js 687 B
packages/core/admin/build/email-translation-uk-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-vi-json.********.chunk.js 122 B
packages/core/admin/build/email-translation-zh-Hans-json.********.chunk.js 473 B
packages/core/admin/build/email-translation-zh-json.********.chunk.js 730 B
packages/core/admin/build/en-json.********.chunk.js 14.2 kB
packages/core/admin/build/es-json.********.chunk.js 14.1 kB
packages/core/admin/build/eu-json.********.chunk.js 14.3 kB
packages/core/admin/build/fr-json.********.chunk.js 11.3 kB
packages/core/admin/build/gu-json.********.chunk.js 14.4 kB
packages/core/admin/build/he-json.********.chunk.js 6.6 kB
packages/core/admin/build/hi-json.********.chunk.js 16.5 kB
packages/core/admin/build/highlight.js.********.chunk.js 842 B
packages/core/admin/build/hu-json.********.chunk.js 15.5 kB
packages/core/admin/build/i18n-settings-page.********.chunk.js 3.82 kB
packages/core/admin/build/i18n-translation-de-json.********.chunk.js 1.62 kB
packages/core/admin/build/i18n-translation-dk-json.********.chunk.js 1.62 kB
packages/core/admin/build/i18n-translation-en-json.********.chunk.js 1.55 kB
packages/core/admin/build/i18n-translation-es-json.********.chunk.js 1.68 kB
packages/core/admin/build/i18n-translation-fr-json.********.chunk.js 1.73 kB
packages/core/admin/build/i18n-translation-ko-json.********.chunk.js 1.86 kB
packages/core/admin/build/i18n-translation-pl-json.********.chunk.js 1.8 kB
packages/core/admin/build/i18n-translation-tr-json.********.chunk.js 1.7 kB
packages/core/admin/build/i18n-translation-zh-Hans-json.********.chunk.js 1.64 kB
packages/core/admin/build/i18n-translation-zh-json.********.chunk.js 1.73 kB
packages/core/admin/build/id-json.********.chunk.js 7.59 kB
packages/core/admin/build/index.html 262 B
packages/core/admin/build/it-json.********.chunk.js 8.03 kB
packages/core/admin/build/ja-json.********.chunk.js 12.3 kB
packages/core/admin/build/ko-json.********.chunk.js 11.6 kB
packages/core/admin/build/main.********.js 684 kB
packages/core/admin/build/ml-json.********.chunk.js 17.4 kB
packages/core/admin/build/ms-json.********.chunk.js 6.16 kB
packages/core/admin/build/nl-json.********.chunk.js 14.4 kB
packages/core/admin/build/no-json.********.chunk.js 5.59 kB
packages/core/admin/build/pl-json.********.chunk.js 13.2 kB
packages/core/admin/build/pt-BR-json.********.chunk.js 13.9 kB
packages/core/admin/build/pt-json.********.chunk.js 5.71 kB
packages/core/admin/build/ru-json.********.chunk.js 18.9 kB
packages/core/admin/build/runtime~main.********.js 4.61 kB
packages/core/admin/build/sa-json.********.chunk.js 17 kB
packages/core/admin/build/sk-json.********.chunk.js 11.9 kB
packages/core/admin/build/sso-settings-page.********.chunk.js 1.48 kB
packages/core/admin/build/sv-json.********.chunk.js 14.2 kB
packages/core/admin/build/th-json.********.chunk.js 9.16 kB
packages/core/admin/build/tr-json.********.chunk.js 13.9 kB
packages/core/admin/build/uk-json.********.chunk.js 7.71 kB
packages/core/admin/build/Upload_ConfigureTheView.********.chunk.js 1.74 kB
packages/core/admin/build/upload-settings.********.chunk.js 1.85 kB
packages/core/admin/build/upload-translation-ca-json.********.chunk.js 2.48 kB
packages/core/admin/build/upload-translation-de-json.********.chunk.js 2.19 kB
packages/core/admin/build/upload-translation-dk-json.********.chunk.js 1.96 kB
packages/core/admin/build/upload-translation-en-json.********.chunk.js 2.58 kB
packages/core/admin/build/upload-translation-es-json.********.chunk.js 2.45 kB
packages/core/admin/build/upload-translation-fr-json.********.chunk.js 1.78 kB
packages/core/admin/build/upload-translation-he-json.********.chunk.js 1.84 kB
packages/core/admin/build/upload-translation-it-json.********.chunk.js 1.56 kB
packages/core/admin/build/upload-translation-ja-json.********.chunk.js 1.92 kB
packages/core/admin/build/upload-translation-ko-json.********.chunk.js 2.5 kB
packages/core/admin/build/upload-translation-ms-json.********.chunk.js 1.41 kB
packages/core/admin/build/upload-translation-pl-json.********.chunk.js 2.19 kB
packages/core/admin/build/upload-translation-pt-BR-json.********.chunk.js 1.61 kB
packages/core/admin/build/upload-translation-pt-json.********.chunk.js 1.61 kB
packages/core/admin/build/upload-translation-ru-json.********.chunk.js 2.02 kB
packages/core/admin/build/upload-translation-sk-json.********.chunk.js 2.58 kB
packages/core/admin/build/upload-translation-th-json.********.chunk.js 1.99 kB
packages/core/admin/build/upload-translation-tr-json.********.chunk.js 2.35 kB
packages/core/admin/build/upload-translation-uk-json.********.chunk.js 1.96 kB
packages/core/admin/build/upload-translation-zh-Hans-json.********.chunk.js 1.94 kB
packages/core/admin/build/upload-translation-zh-json.********.chunk.js 2.65 kB
packages/core/admin/build/upload.********.chunk.js 5.64 kB
packages/core/admin/build/users-advanced-settings-page.********.chunk.js 2.33 kB
packages/core/admin/build/users-email-settings-page.********.chunk.js 2.38 kB
packages/core/admin/build/users-permissions-translation-ar-json.********.chunk.js 1.51 kB
packages/core/admin/build/users-permissions-translation-cs-json.********.chunk.js 1.46 kB
packages/core/admin/build/users-permissions-translation-de-json.********.chunk.js 1.58 kB
packages/core/admin/build/users-permissions-translation-dk-json.********.chunk.js 1.92 kB
packages/core/admin/build/users-permissions-translation-en-json.********.chunk.js 1.81 kB
packages/core/admin/build/users-permissions-translation-es-json.********.chunk.js 2.05 kB
packages/core/admin/build/users-permissions-translation-fr-json.********.chunk.js 1.41 kB
packages/core/admin/build/users-permissions-translation-id-json.********.chunk.js 1.49 kB
packages/core/admin/build/users-permissions-translation-it-json.********.chunk.js 1.57 kB
packages/core/admin/build/users-permissions-translation-ja-json.********.chunk.js 1.53 kB
packages/core/admin/build/users-permissions-translation-ko-json.********.chunk.js 2.23 kB
packages/core/admin/build/users-permissions-translation-ms-json.********.chunk.js 1.27 kB
packages/core/admin/build/users-permissions-translation-nl-json.********.chunk.js 1.32 kB
packages/core/admin/build/users-permissions-translation-pl-json.********.chunk.js 2.11 kB
packages/core/admin/build/users-permissions-translation-pt-BR-json.********.chunk.js 1.21 kB
packages/core/admin/build/users-permissions-translation-pt-json.********.chunk.js 1.3 kB
packages/core/admin/build/users-permissions-translation-ru-json.********.chunk.js 2.12 kB
packages/core/admin/build/users-permissions-translation-sk-json.********.chunk.js 1.38 kB
packages/core/admin/build/users-permissions-translation-sv-json.********.chunk.js 2.01 kB
packages/core/admin/build/users-permissions-translation-th-json.********.chunk.js 2.01 kB
packages/core/admin/build/users-permissions-translation-tr-json.********.chunk.js 2.07 kB
packages/core/admin/build/users-permissions-translation-uk-json.********.chunk.js 1.75 kB
packages/core/admin/build/users-permissions-translation-vi-json.********.chunk.js 1.51 kB
packages/core/admin/build/users-permissions-translation-zh-Hans-json.********.chunk.js 1.8 kB
packages/core/admin/build/users-permissions-translation-zh-json.********.chunk.js 2.1 kB
packages/core/admin/build/users-providers-settings-page.********.chunk.js 3.41 kB
packages/core/admin/build/users-roles-settings-page.********.chunk.js 8.06 kB
packages/core/admin/build/vi-json.********.chunk.js 5.98 kB
packages/core/admin/build/webhook-edit-page.********.chunk.js 4.56 kB
packages/core/admin/build/webhook-list-page.********.chunk.js 2.52 kB
packages/core/admin/build/zh-Hans-json.********.chunk.js 12.6 kB
packages/core/admin/build/zh-json.********.chunk.js 15.2 kB
packages/core/helper-plugin/build/helper-plugin.esm.js 19.5 kB
packages/core/helper-plugin/build/helper-plugin.js 17.7 kB

compressed-size-action

markkaylor
markkaylor previously approved these changes Feb 17, 2023
Copy link
Contributor

@markkaylor markkaylor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me 👍

I couldn't see any documentation on the site for this though... so i'm not sure how we communicate this change?

I guess maybe we could add a small comment in the release notes?

examples/getstarted/src/index.js Outdated Show resolved Hide resolved
chore: fix scripts

chore: fix dev to be develop

Update examples/getstarted/src/index.js

Update examples/getstarted/src/index.js

Co-Authored-By: markkaylor <mark.kaylor@strapi.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr: fix This PR is fixing a bug source: generators:app Source is generators/app package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Cannot import @strapi/design-system in a (blank) plugin in a (blank) strapi app.
4 participants