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

[Latest posts] Fixes the categories selector crash when category does not exist #20960

Merged
merged 5 commits into from
Mar 20, 2020

Conversation

draganescu
Copy link
Contributor

Description

Closes #20915

How has this been tested?

Tested locally by:

  • make sure you have posts in categories
  • add a page or post
  • insert a LatestPosts block
  • try to filter by a category that does not exist
  • nothing should happen

Types of changes

Non breaking changes to the LatestPosts edit component.

cc @Ringish

@github-actions
Copy link

github-actions bot commented Mar 17, 2020

Size Change: -291 B (0%)

Total Size: 856 kB

Filename Size Change
build/block-editor/index.js 100 kB +234 B (0%)
build/block-editor/style-rtl.css 10.9 kB +60 B (0%)
build/block-editor/style.css 10.9 kB +63 B (0%)
build/block-library/editor-rtl.css 7.24 kB +3 B (0%)
build/block-library/editor.css 7.24 kB +4 B (0%)
build/block-library/index.js 110 kB -914 B (0%)
build/block-library/style-rtl.css 7.41 kB -6 B (0%)
build/block-library/style.css 7.42 kB -6 B (0%)
build/block-serialization-default-parser/index.js 1.65 kB +1 B
build/blocks/index.js 57.5 kB -53 B (0%)
build/components/index.js 191 kB -3 B (0%)
build/components/style-rtl.css 15.8 kB +9 B (0%)
build/components/style.css 15.7 kB +9 B (0%)
build/compose/index.js 6.21 kB +2 B (0%)
build/core-data/index.js 10.6 kB +19 B (0%)
build/data/index.js 8.2 kB +1 B
build/deprecated/index.js 771 B -1 B
build/edit-post/index.js 91.2 kB -57 B (0%)
build/edit-post/style-rtl.css 8.47 kB -51 B (0%)
build/edit-post/style.css 8.46 kB -51 B (0%)
build/edit-site/index.js 5.56 kB +492 B (8%) 🔍
build/edit-site/style-rtl.css 2.62 kB +95 B (3%)
build/edit-site/style.css 2.62 kB +95 B (3%)
build/edit-widgets/index.js 4.43 kB +3 B (0%)
build/editor/index.js 43.8 kB -153 B (0%)
build/editor/style-rtl.css 3.97 kB +1 B
build/editor/style.css 3.96 kB +1 B
build/element/index.js 4.44 kB -13 B (0%)
build/format-library/index.js 6.95 kB -137 B (1%)
build/i18n/index.js 3.49 kB +1 B
build/is-shallow-equal/index.js 711 B +1 B
build/keyboard-shortcuts/index.js 2.3 kB -1 B
build/keycodes/index.js 1.69 kB +1 B
build/list-reusable-blocks/index.js 2.99 kB -1 B
build/media-utils/index.js 4.84 kB +3 B (0%)
build/primitives/index.js 1.5 kB +2 B (0%)
build/redux-routine/index.js 2.83 kB -3 B (0%)
build/rich-text/index.js 14.4 kB +59 B (0%)
build/url/index.js 4.01 kB -1 B
build/viewport/index.js 1.61 kB +1 B
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 998 B 0 B
build/annotations/index.js 3.43 kB 0 B
build/api-fetch/index.js 3.39 kB 0 B
build/autop/index.js 2.58 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 6.02 kB 0 B
build/block-directory/style-rtl.css 760 B 0 B
build/block-directory/style.css 760 B 0 B
build/block-library/theme-rtl.css 669 B 0 B
build/block-library/theme.css 671 B 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/data-controls/index.js 1.04 kB 0 B
build/date/index.js 5.37 kB 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 3.06 kB 0 B
build/edit-widgets/style-rtl.css 2.58 kB 0 B
build/edit-widgets/style.css 2.58 kB 0 B
build/editor/editor-styles-rtl.css 381 B 0 B
build/editor/editor-styles.css 382 B 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/style-rtl.css 502 B 0 B
build/format-library/style.css 502 B 0 B
build/hooks/index.js 1.93 kB 0 B
build/html-entities/index.js 621 B 0 B
build/list-reusable-blocks/style-rtl.css 226 B 0 B
build/list-reusable-blocks/style.css 226 B 0 B
build/notices/index.js 1.58 kB 0 B
build/nux/index.js 3.01 kB 0 B
build/nux/style-rtl.css 616 B 0 B
build/nux/style.css 613 B 0 B
build/plugins/index.js 2.54 kB 0 B
build/priority-queue/index.js 780 B 0 B
build/server-side-render/index.js 2.55 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.27 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.18 kB 0 B

compressed-size-action

@aduth
Copy link
Member

aduth commented Mar 17, 2020

I notice #20961 also aims to solve this. @draganescu @Ringish Preference on which to keep?

@aduth aduth added [Block] Latest Posts Affects the Latest Posts Block [Type] Bug An existing feature does not function as intended labels Mar 17, 2020
@draganescu
Copy link
Contributor Author

@aduth thanks! :) we know, in a weird sync we both published the PRs at the same time. Well decide which is better.

Copy link
Contributor

@talldan talldan left a comment

Choose a reason for hiding this comment

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

Worked for me, though I did find the code a little hard to follow. I wondered if an early return like this might be more preferable at the start of the selectCategories function. Then the mapping function wouldn't have to worry about returning null:

			const hasNoSuggestion = tokens.some(
				( token ) => typeof token === 'string' && ! suggestions[ token ]
			);

			if ( hasNoSuggestion ) {
				return;
			}

packages/block-library/src/latest-posts/edit.js Outdated Show resolved Hide resolved
@draganescu draganescu merged commit 441e909 into master Mar 20, 2020
@draganescu draganescu deleted the fix/categories-select-crashes-latest-posts branch March 20, 2020 11:56
@github-actions github-actions bot added this to the Gutenberg 7.8 milestone Mar 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Block] Latest Posts Affects the Latest Posts Block [Type] Bug An existing feature does not function as intended
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[ Latest posts ] Category filter crashes block
3 participants