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

Move the templates prePersist logic to core-data #27464

Merged
merged 3 commits into from
Dec 7, 2020

Conversation

youknowriad
Copy link
Contributor

Follow-up to #26355

When saving templates whether it's from the site editor, the post editor or any editor, there's some logic that needs to run (fix titles and set the "publish" status).

Before this PR, this logic was applied in an ad-hoc way. This PR refactors it and implements a prePersist handler for entities and also consolidate this with some pre persist behavior we had for regular post types.

@github-actions
Copy link

github-actions bot commented Dec 3, 2020

Size Change: -67 B (0%)

Total Size: 1.19 MB

Filename Size Change
build/block-editor/index.js 128 kB -29 B (0%)
build/block-library/index.js 149 kB +42 B (0%)
build/components/index.js 172 kB +75 B (0%)
build/compose/index.js 9.95 kB +1 B
build/core-data/index.js 15.3 kB +121 B (0%)
build/edit-navigation/index.js 11.1 kB -6 B (0%)
build/edit-post/index.js 306 kB -162 B (0%)
build/edit-site/index.js 24 kB -102 B (0%)
build/edit-widgets/index.js 26.3 kB -1 B
build/element/index.js 4.62 kB -5 B (0%)
build/list-reusable-blocks/index.js 3.1 kB -2 B (0%)
build/media-utils/index.js 5.31 kB -1 B
build/plugins/index.js 2.56 kB -3 B (0%)
build/reusable-blocks/index.js 2.92 kB +6 B (0%)
build/server-side-render/index.js 2.77 kB -1 B
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/annotations/index.js 3.8 kB 0 B
build/api-fetch/index.js 3.42 kB 0 B
build/autop/index.js 2.84 kB 0 B
build/blob/index.js 665 B 0 B
build/block-directory/index.js 8.72 kB 0 B
build/block-directory/style-rtl.css 943 B 0 B
build/block-directory/style.css 942 B 0 B
build/block-editor/style-rtl.css 11.2 kB 0 B
build/block-editor/style.css 11.2 kB 0 B
build/block-library/editor-rtl.css 8.88 kB 0 B
build/block-library/editor.css 8.88 kB 0 B
build/block-library/style-rtl.css 8.34 kB 0 B
build/block-library/style.css 8.34 kB 0 B
build/block-library/theme-rtl.css 789 B 0 B
build/block-library/theme.css 790 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/blocks/index.js 48.1 kB 0 B
build/components/style-rtl.css 15.3 kB 0 B
build/components/style.css 15.3 kB 0 B
build/data-controls/index.js 827 B 0 B
build/data/index.js 8.98 kB 0 B
build/date/index.js 11.2 kB 0 B
build/deprecated/index.js 768 B 0 B
build/dom-ready/index.js 571 B 0 B
build/dom/index.js 4.95 kB 0 B
build/edit-navigation/style-rtl.css 881 B 0 B
build/edit-navigation/style.css 885 B 0 B
build/edit-post/style-rtl.css 6.49 kB 0 B
build/edit-post/style.css 6.47 kB 0 B
build/edit-site/style-rtl.css 4.06 kB 0 B
build/edit-site/style.css 4.06 kB 0 B
build/edit-widgets/style-rtl.css 3.13 kB 0 B
build/edit-widgets/style.css 3.13 kB 0 B
build/editor/editor-styles-rtl.css 476 B 0 B
build/editor/editor-styles.css 478 B 0 B
build/editor/index.js 43.6 kB 0 B
build/editor/style-rtl.css 3.85 kB 0 B
build/editor/style.css 3.84 kB 0 B
build/escape-html/index.js 735 B 0 B
build/format-library/index.js 6.86 kB 0 B
build/format-library/style-rtl.css 547 B 0 B
build/format-library/style.css 548 B 0 B
build/hooks/index.js 2.27 kB 0 B
build/html-entities/index.js 623 B 0 B
build/i18n/index.js 3.57 kB 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 476 B 0 B
build/list-reusable-blocks/style.css 476 B 0 B
build/notices/index.js 1.82 kB 0 B
build/nux/index.js 3.42 kB 0 B
build/nux/style-rtl.css 671 B 0 B
build/nux/style.css 668 B 0 B
build/primitives/index.js 1.43 kB 0 B
build/priority-queue/index.js 791 B 0 B
build/redux-routine/index.js 2.84 kB 0 B
build/rich-text/index.js 13.4 kB 0 B
build/shortcode/index.js 1.69 kB 0 B
build/token-list/index.js 1.27 kB 0 B
build/url/index.js 2.84 kB 0 B
build/viewport/index.js 1.86 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.22 kB 0 B

compressed-size-action

@youknowriad youknowriad force-pushed the update/refactor-templates-saving branch from e269871 to db31e90 Compare December 3, 2020 13:36
@youknowriad youknowriad marked this pull request as ready for review December 3, 2020 13:39
@youknowriad youknowriad requested a review from nerrad as a code owner December 3, 2020 13:39
Copy link
Contributor

@Addison-Stavlo Addison-Stavlo left a comment

Choose a reason for hiding this comment

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

This refactoring looks great, thanks for cleaning this up!

For the most part everything seems to work as expected. However, it seems when a template part moves from auto-draft to publish the title is cleared:

Screen Shot 2020-12-03 at 11 54 53 AM

Where previously when they were in auto-draft status they had titles "Footer" and "Header".

@youknowriad
Copy link
Contributor Author

@Addison-Stavlo Good catch, it should be fixed with a different logic than what we had on master (it actually sets a title if none is provided so you end up with capitalized slug) but it's just as good I think.

@youknowriad youknowriad merged commit 85173ee into master Dec 7, 2020
@youknowriad youknowriad deleted the update/refactor-templates-saving branch December 7, 2020 10:27
@github-actions github-actions bot added this to the Gutenberg 9.6 milestone Dec 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Type] Experimental Experimental feature or API.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants