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: Promote VisuallyHidden from ui into full components #31244

Merged
merged 5 commits into from
Apr 28, 2021

Conversation

sarayourfriend
Copy link
Contributor

Description

Promotes ui/visually-hidden into components/src/visually-hidden and exports it as the canonical VisuallyHidden for wp/components.

Please test this PR, test out a few places that use VisuallyHidden 🙂 They have the exact same API so there should be no differences between the two but just in case!

How has this been tested?

Storybook, unit tests

Types of changes

New feature! This actually expands the API of VisuallyHidden to have a properly implemented as and polymorphism. Not sure if we should include that in the CHANGELOG.

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • I've tested my changes with keyboard and screen readers.
  • 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 (please manually search all *.native.js files for terms that need renaming or removal).

*
* function Example() {
* return (
* <VisuallyHidden>
* <View as="label">Code is Poetry</View>
* <label>Code is Poetry</label>
* </VisuallyHidden>
* );
* }
Copy link
Contributor

Choose a reason for hiding this comment

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

I just noticed this createComponent util. Looking at its code, it seems it doesn't do much and basically coping that component here would make things simpler for me at least.

What do you think about it? Is it a good abstraction to have?

Copy link
Contributor

Choose a reason for hiding this comment

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

For instance why useVisuallyHidden is a hook in the first place, it just adds a class, so why not just add it inline?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think it's a good abstraction to have and encourages "pure hook" components, which I think is generally a good thing (makes us think twice before using Context or adding extra components to the React tree for example).

Additionally it's used for a ton of components in ui and refactoring them all to just copy the code from createComponent would increase the maintenance cost of all those components.

Copy link
Contributor

Choose a reason for hiding this comment

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

makes us think twice before using Context or adding extra components to the React tree for example

Why is this a bad thing?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Additionally, it enforces the use of View where we will be able to add back the base styles that we lost by moving away from the custom style system. Because everything is ultimately a View we can just apply the base styles there.

Copy link
Contributor

Choose a reason for hiding this comment

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

Now looking more at createCompnent, It does call memo by default in all components, that personally doesn't make sense to me. It's going to do the opposite of what it's meant to solve. Basically, most of these small components don't need to be memoized, React already only update the underlying Dom element if its prop changes, so this extra memo is useless. At least we should change the default value to false there.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

My main worry is that it's an abstraction that doesn't bring much while raising the bar for casual components to understand how components are built in this package, why it's just just a regular component.

That's fair, it is a new abstraction and does technically redirect from the core functionality of a component.

How do you envision, for example, the Text component looking if we removed createComponent? Would we get rid of the useText hook?

My concern is that if we remove createComponent, we'll just be duplicating a ton of code everywhere, indeed, that's why Reakit uses it for example. If a component is follows the pattern established in createComponent, namely:

  1. Push all props through a hook
  2. Pass all processed props to View
  3. Connect to the contextSystem

Then we've just duplicated that code, well, more than duplicated, we've replicated probably dozens of times over across the components codebase, just to avoid a tidy, well-tested abstraction. Is that worth it? 🤷‍♀️

Copy link
Contributor

Choose a reason for hiding this comment

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

How do you envision, for example, the Text component looking if we removed createComponent? Would we get rid of the useText hook?

Well! for me these useVisuallyHidden, useText... hooks are very weird hooks. They don't really match what hooks are meant to be used for. They correspond to "components" and not "behavior". It looks like a hack to the hooks system :P

Push all props through a hook

What is this exactly? :P Is it a requirement to pass all props through a hook?

Push all props through a hook

Do all components need to support "as" and other features proposed by the "View" component? I guess my opinion is probably "no" Why should an Icon component support that? an Icon always renders an svg (just an example)

Connect to the contextSystem

Do all components need to connect to the context system. Isn't that just useless overhead for most components? Not sure I understand that system well enough but it seems only useful for components that compose (Card, CardBody...)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

At least we should change the default value to false there.

Agreed! We need to update that in contextConnect as well.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It looks like a hack to the hooks system :P

That's fair, they probably are 😅

Is it a requirement to pass all props through a hook?

No, but it's just the way that the g2 components were designed from a technical perspective, to encapsulate all, or as much as possible, logic into a hook that can be reused by other components.

For example, if another component wanted to implement the same logic as useText without rendering a Text element (like useHeading for example, does everything a Text can do but with some extras, same with VStack, it's just HStack with some extra props, which in turn is just Flex configured a specific way), this is now possible using these "hacky" hooks.

I'm not saying it's not complicated, but I think approach the technical design of components in this way does add some value around composibility within the library itself (without necessarily exposing all the details of that to consumers of the library).

Do all components need to support "as" and other features proposed by the "View" component

I think so. It's hard to decide what components don't benefit from the as prop. It's an extremely powerful tool for composition.

Icon itself probably doesn't need it, you're correct, but I think the exceptions are few.

Do all components need to connect to the context system

You'd be surprised. We even have examples of Text being accessed via the context system.

I have wondered about the increased overhead of the context system but I think ultimately it's negligible. There were other things like memoization that apparently yielded more significant performance benefits: ItsJonQ/g2#57

/**
* @param {import('../context').ViewOwnProps<{}, 'div'>} props
* @param {import('../ui/context').ViewOwnProps<{}, 'div'>} props
*/
export function useVisuallyHidden( { className, ...props } ) {
// circumvent the context system and write the classnames ourselves
Copy link
Contributor

Choose a reason for hiding this comment

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

should we remove the wp-components-visually-hidden classname?

@@ -1,30 +0,0 @@
.components-visually-hidden {
Copy link
Contributor

Choose a reason for hiding this comment

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

Removing all these styles could potentially impact some third-party plugins that rely on them. The good news is that these are not official APIs, meaning plugins should be using components and not classnames. I think once we make more progress into merging G2 components and removing these old styles, we should consider writing a dev note to document the removed classnames.


export default withNextComponent( forwardRef( VisuallyHidden ) );
export { default as VisuallyHidden } from './component';
export { default } from './component';
Copy link
Contributor

Choose a reason for hiding this comment

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

Why do we export the component twice?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Some places were importing it as the default and others were importing it by name, so I figured this would minimize the number of changes elsewhere in the components package. I can switch to just one or the other if you prefer though (probably just the named export is best?)

Copy link
Contributor

Choose a reason for hiding this comment

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

I think we historically started with default exports for components. Even if I personally would prefer named components now, I think it's probably better to stay consistent and use default export here.

@@ -18,7 +18,7 @@ function FormGroupLabel( { children, id, labelHidden = false, ...props } ) {

if ( labelHidden ) {
return (
<VisuallyHidden as="label" htmlFor={ id }>
<VisuallyHidden as="label" htmlFor={ id?.toString() }>
Copy link
Contributor

Choose a reason for hiding this comment

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

Curious why this change was needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The previous prop types were not comprehensive so they didn't have strict checking of htmlFor. But id comes in as either a number | string and htmlFor, when properly type checked against a label only accepts strings.

The polymorphism that existed in the previous component implementation didn't actually make any difference to the types, but now that it's a true PolymorphicComponent that has ViewOwnProps for its arguments, it actually gets the correct full prop types when using the as prop.

Copy link
Contributor

Choose a reason for hiding this comment

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

Question though, it's just for typing right? I mean, a user passing a numeric value there will still work? (thinking about BC)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yup! It'll still work, just a type issue.

@sarayourfriend sarayourfriend force-pushed the add/upgrade-visually-hidden branch from 61d8ee1 to a529105 Compare April 27, 2021 19:10
@github-actions
Copy link

github-actions bot commented Apr 27, 2021

Size Change: -445 B (0%)

Total Size: 1.31 MB

Filename Size Change
build/a11y/index.js 1.12 kB -1 B (0%)
build/annotations/index.js 2.92 kB -1 B (0%)
build/block-editor/index.js 116 kB +1 B (0%)
build/block-library/blocks/file/frontend.js 772 B -1 B (0%)
build/block-library/index.js 142 kB +2 B (0%)
build/block-serialization-default-parser/index.js 1.3 kB +1 B (0%)
build/blocks/index.js 47 kB -1 B (0%)
build/components/index.js 186 kB -140 B (0%)
build/components/style-rtl.css 16.1 kB -167 B (-1%)
build/components/style.css 16.1 kB -168 B (-1%)
build/compose/index.js 9.97 kB +5 B (0%)
build/core-data/index.js 12 kB +3 B (0%)
build/data-controls/index.js 829 B -1 B (0%)
build/data/index.js 7.57 kB +2 B (0%)
build/date/index.js 31.8 kB +1 B (0%)
build/edit-navigation/index.js 13.4 kB -1 B (0%)
build/edit-post/index.js 334 kB +4 B (0%)
build/edit-site/index.js 25.2 kB +5 B (0%)
build/edit-widgets/index.js 13.1 kB +2 B (0%)
build/editor/index.js 60.4 kB -1 B (0%)
build/format-library/index.js 5.68 kB +1 B (0%)
build/i18n/index.js 3.73 kB +2 B (0%)
build/keyboard-shortcuts/index.js 1.65 kB -1 B (0%)
build/notices/index.js 1.07 kB -1 B (0%)
build/nux/index.js 2.3 kB +1 B (0%)
build/plugins/index.js 2.01 kB +4 B (0%)
build/reusable-blocks/index.js 2.56 kB +1 B (0%)
build/server-side-render/index.js 1.64 kB -1 B (0%)
build/shortcode/index.js 1.69 kB +2 B (0%)
build/token-list/index.js 848 B +1 B (0%)
build/viewport/index.js 1.28 kB +2 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/api-fetch/index.js 2.42 kB 0 B
build/autop/index.js 2.28 kB 0 B
build/blob/index.js 672 B 0 B
build/block-directory/index.js 6.61 kB 0 B
build/block-directory/style-rtl.css 993 B 0 B
build/block-directory/style.css 995 B 0 B
build/block-editor/style-rtl.css 13 kB 0 B
build/block-editor/style.css 13 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 112 B 0 B
build/block-library/blocks/audio/style.css 112 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 501 B 0 B
build/block-library/blocks/button/style.css 500 B 0 B
build/block-library/blocks/buttons/editor-rtl.css 315 B 0 B
build/block-library/blocks/buttons/editor.css 315 B 0 B
build/block-library/blocks/buttons/style-rtl.css 368 B 0 B
build/block-library/blocks/buttons/style.css 368 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 422 B 0 B
build/block-library/blocks/columns/style.css 422 B 0 B
build/block-library/blocks/cover/editor-rtl.css 603 B 0 B
build/block-library/blocks/cover/editor.css 604 B 0 B
build/block-library/blocks/cover/style-rtl.css 1.22 kB 0 B
build/block-library/blocks/cover/style.css 1.22 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/embed/style-rtl.css 401 B 0 B
build/block-library/blocks/embed/style.css 400 B 0 B
build/block-library/blocks/file/editor-rtl.css 301 B 0 B
build/block-library/blocks/file/editor.css 300 B 0 B
build/block-library/blocks/file/style-rtl.css 255 B 0 B
build/block-library/blocks/file/style.css 255 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 704 B 0 B
build/block-library/blocks/gallery/editor.css 705 B 0 B
build/block-library/blocks/gallery/style-rtl.css 1.06 kB 0 B
build/block-library/blocks/gallery/style.css 1.05 kB 0 B
build/block-library/blocks/group/editor-rtl.css 160 B 0 B
build/block-library/blocks/group/editor.css 160 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 476 B 0 B
build/block-library/blocks/image/style.css 478 B 0 B
build/block-library/blocks/latest-comments/style-rtl.css 281 B 0 B
build/block-library/blocks/latest-comments/style.css 282 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/legacy-widget/editor-rtl.css 557 B 0 B
build/block-library/blocks/legacy-widget/editor.css 557 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 176 B 0 B
build/block-library/blocks/media-text/editor.css 176 B 0 B
build/block-library/blocks/media-text/style-rtl.css 492 B 0 B
build/block-library/blocks/media-text/style.css 489 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 617 B 0 B
build/block-library/blocks/navigation-link/editor.css 619 B 0 B
build/block-library/blocks/navigation-link/style-rtl.css 1.16 kB 0 B
build/block-library/blocks/navigation-link/style.css 1.16 kB 0 B
build/block-library/blocks/navigation/editor-rtl.css 1.19 kB 0 B
build/block-library/blocks/navigation/editor.css 1.19 kB 0 B
build/block-library/blocks/navigation/style-rtl.css 272 B 0 B
build/block-library/blocks/navigation/style.css 271 B 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/page-list/editor-rtl.css 239 B 0 B
build/block-library/blocks/page-list/editor.css 240 B 0 B
build/block-library/blocks/page-list/style-rtl.css 167 B 0 B
build/block-library/blocks/page-list/style.css 167 B 0 B
build/block-library/blocks/paragraph/editor-rtl.css 157 B 0 B
build/block-library/blocks/paragraph/editor.css 157 B 0 B
build/block-library/blocks/paragraph/style-rtl.css 247 B 0 B
build/block-library/blocks/paragraph/style.css 248 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 250 B 0 B
build/block-library/blocks/post-comments-form/style.css 250 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-excerpt/style-rtl.css 69 B 0 B
build/block-library/blocks/post-excerpt/style.css 69 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/post-title/style-rtl.css 60 B 0 B
build/block-library/blocks/post-title/style.css 60 B 0 B
build/block-library/blocks/preformatted/style-rtl.css 103 B 0 B
build/block-library/blocks/preformatted/style.css 103 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 318 B 0 B
build/block-library/blocks/pullquote/style.css 318 B 0 B
build/block-library/blocks/query-loop/editor-rtl.css 83 B 0 B
build/block-library/blocks/query-loop/editor.css 82 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-title/editor-rtl.css 86 B 0 B
build/block-library/blocks/query-title/editor.css 86 B 0 B
build/block-library/blocks/query/editor-rtl.css 131 B 0 B
build/block-library/blocks/query/editor.css 132 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 189 B 0 B
build/block-library/blocks/search/editor.css 189 B 0 B
build/block-library/blocks/search/style-rtl.css 359 B 0 B
build/block-library/blocks/search/style.css 362 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 251 B 0 B
build/block-library/blocks/separator/style.css 251 B 0 B
build/block-library/blocks/shortcode/editor-rtl.css 512 B 0 B
build/block-library/blocks/shortcode/editor.css 512 B 0 B
build/block-library/blocks/site-logo/editor-rtl.css 440 B 0 B
build/block-library/blocks/site-logo/editor.css 441 B 0 B
build/block-library/blocks/site-logo/style-rtl.css 154 B 0 B
build/block-library/blocks/site-logo/style.css 154 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 796 B 0 B
build/block-library/blocks/social-links/editor.css 795 B 0 B
build/block-library/blocks/social-links/style-rtl.css 1.32 kB 0 B
build/block-library/blocks/social-links/style.css 1.33 kB 0 B
build/block-library/blocks/spacer/editor-rtl.css 308 B 0 B
build/block-library/blocks/spacer/editor.css 308 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/table/editor-rtl.css 478 B 0 B
build/block-library/blocks/table/editor.css 478 B 0 B
build/block-library/blocks/table/style-rtl.css 407 B 0 B
build/block-library/blocks/table/style.css 407 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 551 B 0 B
build/block-library/blocks/template-part/editor.css 550 B 0 B
build/block-library/blocks/term-description/editor-rtl.css 90 B 0 B
build/block-library/blocks/term-description/editor.css 90 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/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 569 B 0 B
build/block-library/blocks/video/editor.css 570 B 0 B
build/block-library/blocks/video/style-rtl.css 169 B 0 B
build/block-library/blocks/video/style.css 169 B 0 B
build/block-library/common-rtl.css 1.31 kB 0 B
build/block-library/common.css 1.31 kB 0 B
build/block-library/editor-rtl.css 9.54 kB 0 B
build/block-library/editor.css 9.53 kB 0 B
build/block-library/reset-rtl.css 506 B 0 B
build/block-library/reset.css 507 B 0 B
build/block-library/style-rtl.css 9.47 kB 0 B
build/block-library/style.css 9.47 kB 0 B
build/block-library/theme-rtl.css 692 B 0 B
build/block-library/theme.css 693 B 0 B
build/block-serialization-spec-parser/index.js 3.06 kB 0 B
build/customize-widgets/index.js 5.79 kB 0 B
build/customize-widgets/style-rtl.css 666 B 0 B
build/customize-widgets/style.css 667 B 0 B
build/deprecated/index.js 738 B 0 B
build/dom-ready/index.js 576 B 0 B
build/dom/index.js 4.61 kB 0 B
build/edit-navigation/style-rtl.css 2.85 kB 0 B
build/edit-navigation/style.css 2.85 kB 0 B
build/edit-post/classic-rtl.css 454 B 0 B
build/edit-post/classic.css 454 B 0 B
build/edit-post/style-rtl.css 6.98 kB 0 B
build/edit-post/style.css 6.97 kB 0 B
build/edit-site/style-rtl.css 4.9 kB 0 B
build/edit-site/style.css 4.89 kB 0 B
build/edit-widgets/style-rtl.css 2.98 kB 0 B
build/edit-widgets/style.css 2.98 kB 0 B
build/editor/style-rtl.css 3.9 kB 0 B
build/editor/style.css 3.9 kB 0 B
build/element/index.js 3.44 kB 0 B
build/escape-html/index.js 739 B 0 B
build/format-library/style-rtl.css 637 B 0 B
build/format-library/style.css 639 B 0 B
build/hooks/index.js 1.76 kB 0 B
build/html-entities/index.js 628 B 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keycodes/index.js 1.43 kB 0 B
build/list-reusable-blocks/index.js 2.06 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/media-utils/index.js 3.08 kB 0 B
build/nux/style-rtl.css 718 B 0 B
build/nux/style.css 716 B 0 B
build/primitives/index.js 1.03 kB 0 B
build/priority-queue/index.js 791 B 0 B
build/react-i18n/index.js 924 B 0 B
build/redux-routine/index.js 2.82 kB 0 B
build/reusable-blocks/style-rtl.css 225 B 0 B
build/reusable-blocks/style.css 225 B 0 B
build/rich-text/index.js 11.7 kB 0 B
build/url/index.js 1.95 kB 0 B
build/warning/index.js 1.13 kB 0 B
build/wordcount/index.js 1.24 kB 0 B

compressed-size-action

Copy link
Contributor

@youknowriad youknowriad left a comment

Choose a reason for hiding this comment

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

There's a number of snapshots to remove/update otherwise, it looks good.

@sarayourfriend sarayourfriend force-pushed the add/upgrade-visually-hidden branch from dfdbe11 to 9c6aa5e Compare April 28, 2021 16:06
@sarayourfriend sarayourfriend merged commit fda8d09 into trunk Apr 28, 2021
@sarayourfriend sarayourfriend deleted the add/upgrade-visually-hidden branch April 28, 2021 19:38
@github-actions github-actions bot added this to the Gutenberg 10.6 milestone Apr 28, 2021
youknowriad added a commit that referenced this pull request May 17, 2021
youknowriad added a commit that referenced this pull request May 17, 2021
youknowriad added a commit that referenced this pull request May 17, 2021
sarayourfriend added a commit that referenced this pull request May 17, 2021
sarayourfriend added a commit that referenced this pull request Jun 24, 2021
sarayourfriend added a commit that referenced this pull request Jun 28, 2021
sarayourfriend added a commit that referenced this pull request Jun 30, 2021
sarayourfriend added a commit that referenced this pull request Jul 8, 2021
sarayourfriend added a commit that referenced this pull request Jul 12, 2021
sarayourfriend added a commit that referenced this pull request Jul 16, 2021
sarayourfriend added a commit that referenced this pull request Jul 17, 2021
…components (#31244)"" (#31902)

* Revert "Revert "components: Promote VisuallyHidden from ui into full components (#31244)" (#31882)"

This reverts commit 269f31a.

* Convert to styled component

* Update snapshots

* Add children prop

* Use View naming convention

* Use inline styles and remove focus styles

* Update color picker snapshots

* Render a View to allow for polymorphism and forward the ref
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] Component System WordPress component system [Package] Components /packages/components
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants