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

Components: Allow extra props for RadioControl component #28631

Merged
merged 2 commits into from
Feb 5, 2021
Merged

Components: Allow extra props for RadioControl component #28631

merged 2 commits into from
Feb 5, 2021

Conversation

ser-manjeet
Copy link
Contributor

@ser-manjeet ser-manjeet commented Feb 1, 2021

Description

This PR allows extra props for RadioControl component like disabled or ARIA related props.

How has this been tested?

Screenshots

Types of changes

It's an enhancement that aligns the component's API with other components.

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • My code has proper inline documentation.
  • I've included developer documentation if appropriate.
  • I've updated all React Native files affected by any refactorings/renamings in this PR.

Add Extra Props for disabled attribute like
@github-actions github-actions bot added the First-time Contributor Pull request opened by a first-time contributor to Gutenberg repository label Feb 1, 2021
@gziolo gziolo added the [Status] Needs More Info Follow-up required in order to be actionable. label Feb 4, 2021
@gziolo gziolo added the [Package] Components /packages/components label Feb 4, 2021
@gziolo
Copy link
Member

gziolo commented Feb 4, 2021

What props are exactly missing? Should they be part of the public API maybe?

@ItsJonQ, how optional props are handled in G2 components? Ideally, it should be either all components take custom props or only explicitly defined props are allowed.

Copy link
Contributor

@sarayourfriend sarayourfriend left a comment

Choose a reason for hiding this comment

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

This LGTM, thanks for the contribution!

@gziolo I think there are basically two classes of components in WordPress components. @ItsJonQ and I have discussed this before a couple of times. There are "primitive" components, like Button and the various Controls and there are UI components (I have no idea what to call these, I've seen them called UI Blocks before but "blocks" is too overloaded in the Gutenberg context). Each of these have different considerations as far as prop forwarding goes. For the primitive components, I think we should forward props as this PR does because it allows the consumer to fully control the underlying component without requiring us to document each and every single DOM attribute. G2 does this via the context system (and we've even successfully type annotated this through the PolymorphicComponent type). On the other hand, UI components like Placeholder, AnglePickerControl, or FontSizeControl don't make sense to do this for because... well, where would we forward those props onto? I think in the case of those components, they're so specific that they should just be used as is, rather than the more general "primitive" components.

Hopefully that makes sense. This is definitely just something that @ItsJonQ and I came up with to explain our thought process as this was discussed during the FontSizeControl intregration (we narrowed the props in that case) so it's something work having an ongoing discussion about, especially around the language we use to denote each type of component we have in this library.

What props are exactly missing? Should they be part of the public API maybe?

In thise case all DOM attribute props are missing (disabled, aria props, any additional data attributes the consumer may want to apply, etc). To document this as part of the API we merely have to add & React.HTMLProps<'div'> to the final prop type for this component.

@gziolo gziolo removed the [Status] Needs More Info Follow-up required in order to be actionable. label Feb 5, 2021
@gziolo gziolo changed the title Add Extra Props for disabled attribute like Components: Allow extra props for RadioControls Feb 5, 2021
@gziolo gziolo changed the title Components: Allow extra props for RadioControls Components: Allow extra props for RadioControl component Feb 5, 2021
@gziolo gziolo added the [Type] Enhancement A suggestion for improvement. label Feb 5, 2021
@github-actions
Copy link

github-actions bot commented Feb 5, 2021

Size Change: +2.87 kB (0%)

Total Size: 1.37 MB

Filename Size Change
build/annotations/index.js 3.77 kB -4 B (0%)
build/block-directory/index.js 9.08 kB +4 B (0%)
build/block-editor/index.js 124 kB +598 B (0%)
build/block-editor/style-rtl.css 12 kB +37 B (0%)
build/block-editor/style.css 12 kB +37 B (0%)
build/block-library/blocks/cover/editor-rtl.css 390 B -2 B (-1%)
build/block-library/blocks/cover/editor.css 389 B -4 B (-1%)
build/block-library/blocks/embed/style-rtl.css 396 B +21 B (+6%) 🔍
build/block-library/blocks/embed/style.css 395 B +20 B (+5%) 🔍
build/block-library/blocks/navigation/style-rtl.css 174 B -9 B (-5%)
build/block-library/blocks/navigation/style.css 174 B -9 B (-5%)
build/block-library/blocks/social-links/style-rtl.css 1.37 kB +1 B (0%)
build/block-library/editor-rtl.css 9.06 kB -3 B (0%)
build/block-library/editor.css 9.04 kB -3 B (0%)
build/block-library/index.js 144 kB +708 B (0%)
build/block-library/style-rtl.css 8.62 kB +4 B (0%)
build/block-library/style.css 8.62 kB +4 B (0%)
build/blocks/index.js 48.3 kB +14 B (0%)
build/components/index.js 279 kB +1.08 kB (0%)
build/compose/index.js 11.2 kB -1 B (0%)
build/data-controls/index.js 827 B -1 B (0%)
build/data/index.js 8.86 kB +50 B (+1%)
build/date/index.js 31.8 kB -1 B (0%)
build/deprecated/index.js 768 B -1 B (0%)
build/dom-ready/index.js 570 B -1 B (0%)
build/dom/index.js 4.93 kB +2 B (0%)
build/edit-navigation/index.js 11.2 kB +39 B (0%)
build/edit-navigation/style-rtl.css 1.01 kB +73 B (+8%) 🔍
build/edit-navigation/style.css 1.01 kB +69 B (+7%) 🔍
build/edit-post/index.js 307 kB -4 B (0%)
build/edit-site/index.js 24.2 kB +96 B (0%)
build/edit-widgets/index.js 20.1 kB -2 B (0%)
build/editor/index.js 41.9 kB +34 B (0%)
build/element/index.js 4.61 kB -1 B (0%)
build/format-library/index.js 6.77 kB +2 B (0%)
build/hooks/index.js 2.28 kB +8 B (0%)
build/i18n/index.js 3.74 kB -1 B (0%)
build/list-reusable-blocks/index.js 3.15 kB +1 B (0%)
build/media-utils/index.js 5.35 kB +19 B (0%)
build/notices/index.js 1.85 kB +2 B (0%)
build/plugins/index.js 2.54 kB -1 B (0%)
build/primitives/index.js 1.42 kB -2 B (0%)
build/redux-routine/index.js 2.84 kB +1 B (0%)
build/reusable-blocks/index.js 2.92 kB +1 B (0%)
build/rich-text/index.js 13.4 kB +1 B (0%)
build/token-list/index.js 1.27 kB -1 B (0%)
build/url/index.js 3.01 kB -1 B (0%)
build/warning/index.js 1.14 kB -1 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/api-fetch/index.js 3.4 kB 0 B
build/autop/index.js 2.84 kB 0 B
build/blob/index.js 665 B 0 B
build/block-directory/style-rtl.css 1.01 kB 0 B
build/block-directory/style.css 1.01 kB 0 B
build/block-library/blocks/archives/editor-rtl.css 61 B 0 B
build/block-library/blocks/archives/editor.css 60 B 0 B
build/block-library/blocks/audio/editor-rtl.css 58 B 0 B
build/block-library/blocks/audio/editor.css 58 B 0 B
build/block-library/blocks/audio/style-rtl.css 103 B 0 B
build/block-library/blocks/audio/style.css 103 B 0 B
build/block-library/blocks/block/editor-rtl.css 161 B 0 B
build/block-library/blocks/block/editor.css 161 B 0 B
build/block-library/blocks/button/editor-rtl.css 475 B 0 B
build/block-library/blocks/button/editor.css 474 B 0 B
build/block-library/blocks/button/style-rtl.css 453 B 0 B
build/block-library/blocks/button/style.css 451 B 0 B
build/block-library/blocks/buttons/editor-rtl.css 227 B 0 B
build/block-library/blocks/buttons/editor.css 227 B 0 B
build/block-library/blocks/buttons/style-rtl.css 297 B 0 B
build/block-library/blocks/buttons/style.css 297 B 0 B
build/block-library/blocks/calendar/style-rtl.css 208 B 0 B
build/block-library/blocks/calendar/style.css 208 B 0 B
build/block-library/blocks/categories/editor-rtl.css 84 B 0 B
build/block-library/blocks/categories/editor.css 83 B 0 B
build/block-library/blocks/categories/style-rtl.css 79 B 0 B
build/block-library/blocks/categories/style.css 79 B 0 B
build/block-library/blocks/code/style-rtl.css 90 B 0 B
build/block-library/blocks/code/style.css 90 B 0 B
build/block-library/blocks/columns/editor-rtl.css 190 B 0 B
build/block-library/blocks/columns/editor.css 190 B 0 B
build/block-library/blocks/columns/style-rtl.css 421 B 0 B
build/block-library/blocks/columns/style.css 421 B 0 B
build/block-library/blocks/cover/style-rtl.css 1.25 kB 0 B
build/block-library/blocks/cover/style.css 1.25 kB 0 B
build/block-library/blocks/embed/editor-rtl.css 486 B 0 B
build/block-library/blocks/embed/editor.css 486 B 0 B
build/block-library/blocks/file/editor-rtl.css 199 B 0 B
build/block-library/blocks/file/editor.css 198 B 0 B
build/block-library/blocks/file/style-rtl.css 248 B 0 B
build/block-library/blocks/file/style.css 248 B 0 B
build/block-library/blocks/freeform/editor-rtl.css 2.45 kB 0 B
build/block-library/blocks/freeform/editor.css 2.45 kB 0 B
build/block-library/blocks/gallery/editor-rtl.css 679 B 0 B
build/block-library/blocks/gallery/editor.css 679 B 0 B
build/block-library/blocks/gallery/style-rtl.css 1.07 kB 0 B
build/block-library/blocks/gallery/style.css 1.06 kB 0 B
build/block-library/blocks/group/editor-rtl.css 318 B 0 B
build/block-library/blocks/group/editor.css 317 B 0 B
build/block-library/blocks/group/style-rtl.css 57 B 0 B
build/block-library/blocks/group/style.css 57 B 0 B
build/block-library/blocks/heading/editor-rtl.css 129 B 0 B
build/block-library/blocks/heading/editor.css 129 B 0 B
build/block-library/blocks/heading/style-rtl.css 76 B 0 B
build/block-library/blocks/heading/style.css 76 B 0 B
build/block-library/blocks/html/editor-rtl.css 281 B 0 B
build/block-library/blocks/html/editor.css 281 B 0 B
build/block-library/blocks/image/editor-rtl.css 717 B 0 B
build/block-library/blocks/image/editor.css 716 B 0 B
build/block-library/blocks/image/style-rtl.css 477 B 0 B
build/block-library/blocks/image/style.css 478 B 0 B
build/block-library/blocks/latest-comments/editor-rtl.css 159 B 0 B
build/block-library/blocks/latest-comments/editor.css 158 B 0 B
build/block-library/blocks/latest-comments/style-rtl.css 269 B 0 B
build/block-library/blocks/latest-comments/style.css 269 B 0 B
build/block-library/blocks/latest-posts/editor-rtl.css 137 B 0 B
build/block-library/blocks/latest-posts/editor.css 137 B 0 B
build/block-library/blocks/latest-posts/style-rtl.css 523 B 0 B
build/block-library/blocks/latest-posts/style.css 522 B 0 B
build/block-library/blocks/list/editor-rtl.css 65 B 0 B
build/block-library/blocks/list/editor.css 65 B 0 B
build/block-library/blocks/list/style-rtl.css 63 B 0 B
build/block-library/blocks/list/style.css 63 B 0 B
build/block-library/blocks/media-text/editor-rtl.css 191 B 0 B
build/block-library/blocks/media-text/editor.css 191 B 0 B
build/block-library/blocks/media-text/style-rtl.css 535 B 0 B
build/block-library/blocks/media-text/style.css 532 B 0 B
build/block-library/blocks/more/editor-rtl.css 434 B 0 B
build/block-library/blocks/more/editor.css 434 B 0 B
build/block-library/blocks/navigation-link/editor-rtl.css 392 B 0 B
build/block-library/blocks/navigation-link/editor.css 394 B 0 B
build/block-library/blocks/navigation-link/style-rtl.css 704 B 0 B
build/block-library/blocks/navigation-link/style.css 702 B 0 B
build/block-library/blocks/navigation/editor-rtl.css 1.38 kB 0 B
build/block-library/blocks/navigation/editor.css 1.37 kB 0 B
build/block-library/blocks/nextpage/editor-rtl.css 395 B 0 B
build/block-library/blocks/nextpage/editor.css 395 B 0 B
build/block-library/blocks/paragraph/editor-rtl.css 109 B 0 B
build/block-library/blocks/paragraph/editor.css 109 B 0 B
build/block-library/blocks/paragraph/style-rtl.css 273 B 0 B
build/block-library/blocks/paragraph/style.css 273 B 0 B
build/block-library/blocks/post-author/editor-rtl.css 209 B 0 B
build/block-library/blocks/post-author/editor.css 209 B 0 B
build/block-library/blocks/post-author/style-rtl.css 183 B 0 B
build/block-library/blocks/post-author/style.css 184 B 0 B
build/block-library/blocks/post-comments-form/style-rtl.css 249 B 0 B
build/block-library/blocks/post-comments-form/style.css 249 B 0 B
build/block-library/blocks/post-content/editor-rtl.css 139 B 0 B
build/block-library/blocks/post-content/editor.css 139 B 0 B
build/block-library/blocks/post-excerpt/editor-rtl.css 73 B 0 B
build/block-library/blocks/post-excerpt/editor.css 73 B 0 B
build/block-library/blocks/post-featured-image/editor-rtl.css 338 B 0 B
build/block-library/blocks/post-featured-image/editor.css 338 B 0 B
build/block-library/blocks/post-featured-image/style-rtl.css 100 B 0 B
build/block-library/blocks/post-featured-image/style.css 100 B 0 B
build/block-library/blocks/preformatted/style-rtl.css 63 B 0 B
build/block-library/blocks/preformatted/style.css 63 B 0 B
build/block-library/blocks/pullquote/editor-rtl.css 183 B 0 B
build/block-library/blocks/pullquote/editor.css 183 B 0 B
build/block-library/blocks/pullquote/style-rtl.css 316 B 0 B
build/block-library/blocks/pullquote/style.css 316 B 0 B
build/block-library/blocks/query-loop/editor-rtl.css 90 B 0 B
build/block-library/blocks/query-loop/editor.css 89 B 0 B
build/block-library/blocks/query-loop/style-rtl.css 315 B 0 B
build/block-library/blocks/query-loop/style.css 317 B 0 B
build/block-library/blocks/query-pagination-numbers/editor-rtl.css 122 B 0 B
build/block-library/blocks/query-pagination-numbers/editor.css 121 B 0 B
build/block-library/blocks/query-pagination/editor-rtl.css 270 B 0 B
build/block-library/blocks/query-pagination/editor.css 262 B 0 B
build/block-library/blocks/query-pagination/style-rtl.css 168 B 0 B
build/block-library/blocks/query-pagination/style.css 168 B 0 B
build/block-library/blocks/query/editor-rtl.css 159 B 0 B
build/block-library/blocks/query/editor.css 160 B 0 B
build/block-library/blocks/quote/editor-rtl.css 61 B 0 B
build/block-library/blocks/quote/editor.css 61 B 0 B
build/block-library/blocks/quote/style-rtl.css 169 B 0 B
build/block-library/blocks/quote/style.css 169 B 0 B
build/block-library/blocks/rss/editor-rtl.css 201 B 0 B
build/block-library/blocks/rss/editor.css 202 B 0 B
build/block-library/blocks/rss/style-rtl.css 290 B 0 B
build/block-library/blocks/rss/style.css 290 B 0 B
build/block-library/blocks/search/editor-rtl.css 165 B 0 B
build/block-library/blocks/search/editor.css 165 B 0 B
build/block-library/blocks/search/style-rtl.css 342 B 0 B
build/block-library/blocks/search/style.css 344 B 0 B
build/block-library/blocks/separator/editor-rtl.css 99 B 0 B
build/block-library/blocks/separator/editor.css 99 B 0 B
build/block-library/blocks/separator/style-rtl.css 236 B 0 B
build/block-library/blocks/separator/style.css 236 B 0 B
build/block-library/blocks/shortcode/editor-rtl.css 504 B 0 B
build/block-library/blocks/shortcode/editor.css 504 B 0 B
build/block-library/blocks/site-logo/editor-rtl.css 201 B 0 B
build/block-library/blocks/site-logo/editor.css 201 B 0 B
build/block-library/blocks/site-logo/style-rtl.css 117 B 0 B
build/block-library/blocks/site-logo/style.css 117 B 0 B
build/block-library/blocks/social-link/editor-rtl.css 164 B 0 B
build/block-library/blocks/social-link/editor.css 165 B 0 B
build/block-library/blocks/social-links/editor-rtl.css 711 B 0 B
build/block-library/blocks/social-links/editor.css 712 B 0 B
build/block-library/blocks/social-links/style.css 1.37 kB 0 B
build/block-library/blocks/spacer/editor-rtl.css 302 B 0 B
build/block-library/blocks/spacer/editor.css 302 B 0 B
build/block-library/blocks/spacer/style-rtl.css 48 B 0 B
build/block-library/blocks/spacer/style.css 48 B 0 B
build/block-library/blocks/subhead/editor-rtl.css 99 B 0 B
build/block-library/blocks/subhead/editor.css 99 B 0 B
build/block-library/blocks/subhead/style-rtl.css 80 B 0 B
build/block-library/blocks/subhead/style.css 80 B 0 B
build/block-library/blocks/table/editor-rtl.css 489 B 0 B
build/block-library/blocks/table/editor.css 489 B 0 B
build/block-library/blocks/table/style-rtl.css 386 B 0 B
build/block-library/blocks/table/style.css 386 B 0 B
build/block-library/blocks/tag-cloud/editor-rtl.css 118 B 0 B
build/block-library/blocks/tag-cloud/editor.css 118 B 0 B
build/block-library/blocks/tag-cloud/style-rtl.css 94 B 0 B
build/block-library/blocks/tag-cloud/style.css 94 B 0 B
build/block-library/blocks/template-part/editor-rtl.css 680 B 0 B
build/block-library/blocks/template-part/editor.css 679 B 0 B
build/block-library/blocks/text-columns/editor-rtl.css 95 B 0 B
build/block-library/blocks/text-columns/editor.css 95 B 0 B
build/block-library/blocks/text-columns/style-rtl.css 166 B 0 B
build/block-library/blocks/text-columns/style.css 166 B 0 B
build/block-library/blocks/verse/editor-rtl.css 62 B 0 B
build/block-library/blocks/verse/editor.css 62 B 0 B
build/block-library/blocks/verse/style-rtl.css 87 B 0 B
build/block-library/blocks/verse/style.css 87 B 0 B
build/block-library/blocks/video/editor-rtl.css 504 B 0 B
build/block-library/blocks/video/editor.css 503 B 0 B
build/block-library/blocks/video/style-rtl.css 193 B 0 B
build/block-library/blocks/video/style.css 193 B 0 B
build/block-library/common-rtl.css 1.01 kB 0 B
build/block-library/common.css 1.01 kB 0 B
build/block-library/theme-rtl.css 748 B 0 B
build/block-library/theme.css 748 B 0 B
build/block-serialization-default-parser/index.js 1.88 kB 0 B
build/block-serialization-spec-parser/index.js 3.06 kB 0 B
build/components/style-rtl.css 15.5 kB 0 B
build/components/style.css 15.5 kB 0 B
build/core-data/index.js 16.8 kB 0 B
build/edit-post/style-rtl.css 6.79 kB 0 B
build/edit-post/style.css 6.78 kB 0 B
build/edit-site/style-rtl.css 4.04 kB 0 B
build/edit-site/style.css 4.04 kB 0 B
build/edit-widgets/style-rtl.css 3.2 kB 0 B
build/edit-widgets/style.css 3.2 kB 0 B
build/editor/editor-styles-rtl.css 543 B 0 B
build/editor/editor-styles.css 545 B 0 B
build/editor/style-rtl.css 3.89 kB 0 B
build/editor/style.css 3.89 kB 0 B
build/escape-html/index.js 735 B 0 B
build/format-library/style-rtl.css 637 B 0 B
build/format-library/style.css 639 B 0 B
build/html-entities/index.js 622 B 0 B
build/is-shallow-equal/index.js 698 B 0 B
build/keyboard-shortcuts/index.js 2.54 kB 0 B
build/keycodes/index.js 1.93 kB 0 B
build/list-reusable-blocks/style-rtl.css 629 B 0 B
build/list-reusable-blocks/style.css 628 B 0 B
build/nux/index.js 3.41 kB 0 B
build/nux/style-rtl.css 731 B 0 B
build/nux/style.css 727 B 0 B
build/priority-queue/index.js 790 B 0 B
build/server-side-render/index.js 2.77 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/viewport/index.js 1.86 kB 0 B
build/wordcount/index.js 1.22 kB 0 B

compressed-size-action

@gziolo
Copy link
Member

gziolo commented Feb 5, 2021

@saramarcondes – thank you for your detailed response. I agree with the reasoning. It all makes sense in the context of 3rd party usage. For those low-level/primitive components, it all makes sense to allow any props to be passed as an advanced use case.

What props are exactly missing? Should they be part of the public API maybe?
In thise case all DOM attribute props are missing (disabled, aria props, any additional data attributes the consumer may want to apply, etc). To document this as part of the API we merely have to add & React.HTMLProps<'div'> to the final prop type for this component.

All of the reasons to add props you mentioned are very much specific to the web. Do we plan to make G2 components cross-platform? At the moment it looks like they are for usage with the web only. If the answer is yes, we should consider a translation layer for stuff that becomes problematic like styles or accessibility-related attributes. It probably should be its own discussion though 😄

@gziolo gziolo merged commit e84f9b5 into WordPress:master Feb 5, 2021
@github-actions
Copy link

github-actions bot commented Feb 5, 2021

Congratulations on your first merged pull request, @ser-manjeet! We'd like to credit you for your contribution in the post announcing the next WordPress release, but we can't find a WordPress.org profile associated with your GitHub account. When you have a moment, visit the following URL and click "link your GitHub account" under "GitHub Username" to link your accounts:

https://profiles.wordpress.org/me/profile/edit/

And if you don't have a WordPress.org account, you can create one on this page:

https://login.wordpress.org/register

Kudos!

@github-actions github-actions bot added this to the Gutenberg 10.0 milestone Feb 5, 2021
@sarayourfriend
Copy link
Contributor

All of the reasons to add props you mentioned are very much specific to the web. Do we plan to make G2 components cross-platform? At the moment it looks like they are for usage with the web only. If the answer is yes, we should consider a translation layer for stuff that becomes problematic like styles or accessibility-related attributes. It probably should be its own discussion though 😄

Shall we start an issue to discuss this? I don't know what the plan is for this at all.

cc @ItsJonQ

@gziolo
Copy link
Member

gziolo commented Feb 5, 2021

It all depends on the mobile team if they plan to invest time in making G2 components cross-platform. Regardless, it probably is s good idea to open an issue to have this discussion well documented.

@ItsJonQ
Copy link

ItsJonQ commented Feb 9, 2021

If the answer is yes, we should consider a translation layer for stuff that becomes problematic like styles or accessibility-related attributes

@gziolo As @saramarcondes had mentioned, I'm not sure what the plan is for this.

However, I do feel strongly that Component library UI should provide the ability to render attributes accepted by HTML (e.g. data-*) and to extends props regularly used in React (e.g. className, style). Not supporting this often results in attempts to insert attributes or render styles in alternative less-desirable ways.

Examples may include:

Adding fragile styles in the tune of .container-component > div. Or worse... Creating a ref, and adding attributes directly to the DOM node.

As mentioned, this does mean that web props may not translate well into React Native.
We have something working in our favour though (from the G2 Components side)...

create-core-element - The thing that creates a View.

During this process, props are filtered out:

https://github.com/ItsJonQ/g2/blob/eb8deab0d64cfe2930b59494a8d3c39fb07ebef2/packages/create-styles/src/create-style-system/create-core-element.js#L130

This implementation is based on Emotion, and is a standard process for CSS-in-JS solutions. Interesting, it appears that other libraries have standardized around using @emotion/is-prop-valid.

For RN, we could adjust this to accommodate RN components - either remapping certain properties or filtering them out entirely.

Regardless, it probably is s good idea to open an issue to have this discussion well documented.

Sounds good :)

@jeffpaul
Copy link
Member

@ser-manjeet I've tried to reach out via other channels, but I have been unsuccessful in getting in touch. I wanted to make sure you saw the request to you for consent to re-license your contributions to Gutenberg under GPLv2 and MPLv2 here: #31893. If you would kindly review that description and comment accordingly it would be greatly appreciated.

Thanks!
Jeff.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
First-time Contributor Pull request opened by a first-time contributor to Gutenberg repository [Package] Components /packages/components [Type] Enhancement A suggestion for improvement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants