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

fix: Add generic type support to the antd theme #3338

Merged
merged 2 commits into from Jan 4, 2023

Conversation

heath-freenome
Copy link
Member

@heath-freenome heath-freenome commented Jan 3, 2023

Reasons for making this change

fix: #3336 by switching the withConfigConsumer to ConfigConsumer
partially fix: #3072 by adding generic type support to the antd theme as follows:

  • In @rjsf/antd added generic type support as follows:
    • Updated all of the template and widget components to add the T = any, S extends StrictRJSFSchema = RJSFSchema and F extends FormContextType = any generics on the function definitions, types and utility function calls
    • Converted the three components that used the withConfigConsumer() HOC to instead use the <ConfigConsumer> component to generate the prefixCls
    • Added a generateForm<T, S, F>() function to main index.ts, exporting it and exporting the default Form as a call to generateForm()
    • Added a generateTemplates<T, S, F>() function to the Templates.tsx, exporting it and exporting the default Templates as a call to generateTemplates()
    • Added a generateTheme<T, S, F>() function to the main index.ts, exporting it and exporting the default Theme as a call to generateTheme()
    • Added a generateWidgets<T, S, F>() function to the Widgets.tsx, exporting it and exporting the default Widgets as a call to generateWidgets()
    • Updated the main index.ts for the theme to also export the generateTemplates() and generateWidgets() functions
  • Updated the CHANGELOG.md accordingly

Checklist

  • I'm updating documentation
  • I'm adding or updating code
    • I've added and/or updated tests. I've run npm run test:update to update snapshots, if needed.
    • I've updated docs if needed
    • I've updated the changelog with a description of the PR
  • I'm adding a new feature
    • I've updated the playground with an example use of the feature

partially fix: rjsf-team#3072 by adding generic type support to the `antd` theme as follows:

- In `@rjsf/antd` added generic type support as follows:
  - Updated all of the template and widget components to add the `T = any`, `S extends StrictRJSFSchema = RJSFSchema` and `F extends FormContextType = any` generics on the function definitions, types and utility function calls
  - Converted the three components that used the `withConfigConsumer()` HOC to instead use the `<ConfigConsumer>` component to generate the prefixCls
  - Added a `generateForm<T, S, F>()` function to main `index.ts`, exporting it and exporting the default `Form` as a call to `generateForm()`
  - Added a `generateTemplates<T, S, F>()` function to the `Templates.tsx`, exporting it and exporting the default `Templates` as a call to `generateTemplates()`
  - Added a `generateTheme<T, S, F>()` function to the main `index.ts`, exporting it and exporting the default `Theme` as a call to `generateTheme()`
  - Added a `generateWidgets<T, S, F>()` function to the `Widgets.tsx`, exporting it and exporting the default `Widgets` as a call to `generateWidgets()`
  - Updated the main `index.ts` for the theme to also export the `generateTemplates()` and `generateWidgets()` functions
- Updated the `CHANGELOG.md` accordingly
@heath-freenome heath-freenome merged commit fdc2941 into rjsf-team:main Jan 4, 2023
@heath-freenome heath-freenome deleted the fix-3072-antd branch January 4, 2023 18:36
shijistar pushed a commit to shijistar/react-jsonschema-form that referenced this pull request Jun 8, 2023
partially fix: rjsf-team#3072 by adding generic type support to the `antd` theme as follows:

- In `@rjsf/antd` added generic type support as follows:
  - Updated all of the template and widget components to add the `T = any`, `S extends StrictRJSFSchema = RJSFSchema` and `F extends FormContextType = any` generics on the function definitions, types and utility function calls
  - Converted the three components that used the `withConfigConsumer()` HOC to instead use the `<ConfigConsumer>` component to generate the prefixCls
  - Added a `generateForm<T, S, F>()` function to main `index.ts`, exporting it and exporting the default `Form` as a call to `generateForm()`
  - Added a `generateTemplates<T, S, F>()` function to the `Templates.tsx`, exporting it and exporting the default `Templates` as a call to `generateTemplates()`
  - Added a `generateTheme<T, S, F>()` function to the main `index.ts`, exporting it and exporting the default `Theme` as a call to `generateTheme()`
  - Added a `generateWidgets<T, S, F>()` function to the `Widgets.tsx`, exporting it and exporting the default `Widgets` as a call to `generateWidgets()`
  - Updated the main `index.ts` for the theme to also export the `generateTemplates()` and `generateWidgets()` functions
- Updated the `CHANGELOG.md` accordingly
shijistar pushed a commit to shijistar/react-jsonschema-form that referenced this pull request Jun 8, 2023
partially fix: rjsf-team#3072 by adding generic type support to the `antd` theme as follows:

- In `@rjsf/antd` added generic type support as follows:
  - Updated all of the template and widget components to add the `T = any`, `S extends StrictRJSFSchema = RJSFSchema` and `F extends FormContextType = any` generics on the function definitions, types and utility function calls
  - Converted the three components that used the `withConfigConsumer()` HOC to instead use the `<ConfigConsumer>` component to generate the prefixCls
  - Added a `generateForm<T, S, F>()` function to main `index.ts`, exporting it and exporting the default `Form` as a call to `generateForm()`
  - Added a `generateTemplates<T, S, F>()` function to the `Templates.tsx`, exporting it and exporting the default `Templates` as a call to `generateTemplates()`
  - Added a `generateTheme<T, S, F>()` function to the main `index.ts`, exporting it and exporting the default `Theme` as a call to `generateTheme()`
  - Added a `generateWidgets<T, S, F>()` function to the `Widgets.tsx`, exporting it and exporting the default `Widgets` as a call to `generateWidgets()`
  - Updated the main `index.ts` for the theme to also export the `generateTemplates()` and `generateWidgets()` functions
- Updated the `CHANGELOG.md` accordingly
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants