From a212a513a6cb07c2249a71f38c8e340a2222111b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Maneiro?= <583546+oandregal@users.noreply.github.com> Date: Tue, 17 Mar 2026 12:24:06 +0100 Subject: [PATCH 1/6] Bootstrap entity config: view config endpoint --- .phpactor.json | 4 + .../build/pages/site-editor-v2/loader.js | 1 + .../pages/site-editor-v2/page-wp-admin.php | 279 + .../build/pages/site-editor-v2/page.php | 317 + src/wp-includes/build/routes/home/route.js | 46 + .../build/routes/home/route.min.asset.php | 1 + .../build/routes/home/route.min.js | 1 + .../build/routes/navigation-edit/content.js | 526 + .../navigation-edit/content.min.asset.php | 1 + .../routes/navigation-edit/content.min.js | 1 + .../build/routes/navigation-edit/route.js | 121 + .../navigation-edit/route.min.asset.php | 1 + .../build/routes/navigation-edit/route.min.js | 1 + .../build/routes/navigation-list/content.js | 17186 ++++++++++++++ .../navigation-list/content.min.asset.php | 1 + .../routes/navigation-list/content.min.js | 14 + .../build/routes/navigation-list/route.js | 105 + .../navigation-list/route.min.asset.php | 1 + .../build/routes/navigation-list/route.min.js | 1 + .../build/routes/navigation/route.js | 10 + .../routes/navigation/route.min.asset.php | 1 + .../build/routes/navigation/route.min.js | 1 + .../build/routes/pattern-list/content.js | 17745 ++++++++++++++ .../routes/pattern-list/content.min.asset.php | 1 + .../build/routes/pattern-list/content.min.js | 14 + .../build/routes/pattern-list/route.js | 41 + .../routes/pattern-list/route.min.asset.php | 1 + .../build/routes/pattern-list/route.min.js | 1 + src/wp-includes/build/routes/pattern/route.js | 16 + .../build/routes/pattern/route.min.asset.php | 1 + .../build/routes/pattern/route.min.js | 1 + .../build/routes/post-edit/route.js | 111 + .../routes/post-edit/route.min.asset.php | 1 + .../build/routes/post-edit/route.min.js | 1 + .../build/routes/post-list/content.js | 17291 ++++++++++++++ .../routes/post-list/content.min.asset.php | 1 + .../build/routes/post-list/content.min.js | 14 + .../build/routes/post-list/route.js | 328 + .../routes/post-list/route.min.asset.php | 1 + .../build/routes/post-list/route.min.js | 1 + .../build/routes/post-new/route.js | 70 + .../build/routes/post-new/route.min.asset.php | 1 + .../build/routes/post-new/route.min.js | 1 + src/wp-includes/build/routes/post/route.js | 17 + .../build/routes/post/route.min.asset.php | 1 + .../build/routes/post/route.min.js | 1 + .../build/routes/styles/content.js | 332 + .../build/routes/styles/content.min.asset.php | 1 + .../build/routes/styles/content.min.js | 1 + src/wp-includes/build/routes/styles/route.js | 49 + .../build/routes/styles/route.min.asset.php | 1 + .../build/routes/styles/route.min.js | 1 + .../build/routes/template-list/content.js | 19314 ++++++++++++++++ .../template-list/content.min.asset.php | 1 + .../build/routes/template-list/content.min.js | 14 + .../build/routes/template-list/route.js | 275 + .../routes/template-list/route.min.asset.php | 1 + .../build/routes/template-list/route.min.js | 1 + .../routes/template-part-list/content.js | 17602 ++++++++++++++ .../template-part-list/content.min.asset.php | 1 + .../routes/template-part-list/content.min.js | 14 + .../build/routes/template-part-list/route.js | 267 + .../template-part-list/route.min.asset.php | 1 + .../routes/template-part-list/route.min.js | 1 + .../build/routes/template-part/route.js | 16 + .../routes/template-part/route.min.asset.php | 1 + .../build/routes/template-part/route.min.js | 1 + .../build/routes/template/route.js | 17 + .../build/routes/template/route.min.asset.php | 1 + .../build/routes/template/route.min.js | 1 + .../icons/library/accordion-heading.svg | 4 + .../icons/library/accordion-item.svg | 6 + src/wp-includes/icons/library/accordion.svg | 6 + src/wp-includes/icons/library/add-card.svg | 3 + src/wp-includes/icons/library/add-submenu.svg | 3 + .../icons/library/add-template.svg | 3 + .../icons/library/align-center.svg | 3 + .../icons/library/align-justify.svg | 3 + src/wp-includes/icons/library/align-left.svg | 3 + src/wp-includes/icons/library/align-none.svg | 3 + src/wp-includes/icons/library/align-right.svg | 3 + src/wp-includes/icons/library/archive.svg | 3 + .../icons/library/arrow-down-left.svg | 3 + .../icons/library/arrow-down-right.svg | 3 + src/wp-includes/icons/library/arrow-down.svg | 3 + src/wp-includes/icons/library/arrow-left.svg | 3 + src/wp-includes/icons/library/arrow-right.svg | 3 + .../icons/library/arrow-up-left.svg | 3 + .../icons/library/arrow-up-right.svg | 3 + src/wp-includes/icons/library/arrow-up.svg | 3 + .../icons/library/aspect-ratio.svg | 3 + src/wp-includes/icons/library/at-symbol.svg | 3 + src/wp-includes/icons/library/audio.svg | 3 + src/wp-includes/icons/library/background.svg | 3 + src/wp-includes/icons/library/backup.svg | 3 + src/wp-includes/icons/library/bell-unread.svg | 4 + src/wp-includes/icons/library/bell.svg | 3 + .../icons/library/block-default.svg | 3 + src/wp-includes/icons/library/block-meta.svg | 3 + src/wp-includes/icons/library/block-table.svg | 3 + src/wp-includes/icons/library/border.svg | 3 + src/wp-includes/icons/library/box.svg | 3 + src/wp-includes/icons/library/breadcrumbs.svg | 3 + src/wp-includes/icons/library/brush.svg | 3 + src/wp-includes/icons/library/bug.svg | 3 + src/wp-includes/icons/library/button.svg | 3 + src/wp-includes/icons/library/buttons.svg | 3 + src/wp-includes/icons/library/calendar.svg | 3 + .../icons/library/cancel-circle-filled.svg | 3 + src/wp-includes/icons/library/caption.svg | 3 + .../icons/library/capture-photo.svg | 3 + .../icons/library/capture-video.svg | 3 + src/wp-includes/icons/library/cart.svg | 3 + src/wp-includes/icons/library/category.svg | 3 + .../icons/library/caution-filled.svg | 3 + src/wp-includes/icons/library/caution.svg | 3 + src/wp-includes/icons/library/chart-bar.svg | 3 + src/wp-includes/icons/library/check.svg | 3 + .../icons/library/chevron-down-small.svg | 3 + .../icons/library/chevron-down.svg | 3 + .../icons/library/chevron-left-small.svg | 3 + .../icons/library/chevron-left.svg | 3 + .../icons/library/chevron-right-small.svg | 3 + .../icons/library/chevron-right.svg | 3 + .../icons/library/chevron-up-down.svg | 3 + .../icons/library/chevron-up-small.svg | 3 + src/wp-includes/icons/library/chevron-up.svg | 3 + src/wp-includes/icons/library/classic.svg | 3 + src/wp-includes/icons/library/close-small.svg | 3 + src/wp-includes/icons/library/close.svg | 3 + .../icons/library/cloud-download.svg | 3 + .../icons/library/cloud-upload.svg | 3 + src/wp-includes/icons/library/cloud.svg | 3 + src/wp-includes/icons/library/code.svg | 3 + src/wp-includes/icons/library/cog.svg | 3 + src/wp-includes/icons/library/color.svg | 3 + src/wp-includes/icons/library/column.svg | 3 + src/wp-includes/icons/library/columns.svg | 3 + .../icons/library/comment-author-avatar.svg | 3 + .../icons/library/comment-author-name.svg | 5 + .../icons/library/comment-content.svg | 3 + .../icons/library/comment-edit-link.svg | 3 + .../icons/library/comment-reply-link.svg | 3 + src/wp-includes/icons/library/comment.svg | 3 + src/wp-includes/icons/library/connection.svg | 3 + src/wp-includes/icons/library/contents.svg | 3 + src/wp-includes/icons/library/copy-small.svg | 3 + src/wp-includes/icons/library/copy.svg | 3 + src/wp-includes/icons/library/corner-all.svg | 3 + .../icons/library/corner-bottom-left.svg | 6 + .../icons/library/corner-bottom-right.svg | 6 + .../icons/library/corner-top-left.svg | 6 + .../icons/library/corner-top-right.svg | 6 + src/wp-includes/icons/library/cover.svg | 3 + src/wp-includes/icons/library/create.svg | 3 + src/wp-includes/icons/library/crop.svg | 3 + .../icons/library/currency-dollar.svg | 3 + .../icons/library/currency-euro.svg | 3 + .../icons/library/currency-pound.svg | 3 + src/wp-includes/icons/library/custom-link.svg | 3 + .../icons/library/custom-post-type.svg | 3 + src/wp-includes/icons/library/dashboard.svg | 3 + src/wp-includes/icons/library/desktop.svg | 3 + src/wp-includes/icons/library/details.svg | 4 + src/wp-includes/icons/library/download.svg | 3 + src/wp-includes/icons/library/drafts.svg | 3 + src/wp-includes/icons/library/drag-handle.svg | 3 + src/wp-includes/icons/library/drawer-left.svg | 3 + .../icons/library/drawer-right.svg | 3 + src/wp-includes/icons/library/envelope.svg | 3 + src/wp-includes/icons/library/error.svg | 3 + src/wp-includes/icons/library/external.svg | 3 + src/wp-includes/icons/library/file.svg | 3 + src/wp-includes/icons/library/filter.svg | 3 + .../icons/library/flip-horizontal.svg | 3 + .../icons/library/flip-vertical.svg | 3 + src/wp-includes/icons/library/footer.svg | 3 + src/wp-includes/icons/library/format-bold.svg | 3 + .../icons/library/format-capitalize.svg | 3 + .../icons/library/format-indent-rtl.svg | 3 + .../icons/library/format-indent.svg | 3 + .../icons/library/format-italic.svg | 3 + .../icons/library/format-list-bullets-rtl.svg | 3 + .../icons/library/format-list-bullets.svg | 3 + .../library/format-list-numbered-rtl.svg | 3 + .../icons/library/format-list-numbered.svg | 3 + .../icons/library/format-lowercase.svg | 3 + src/wp-includes/icons/library/format-ltr.svg | 3 + .../icons/library/format-outdent-rtl.svg | 3 + .../icons/library/format-outdent.svg | 3 + src/wp-includes/icons/library/format-rtl.svg | 3 + .../icons/library/format-strikethrough.svg | 3 + .../icons/library/format-underline.svg | 3 + .../icons/library/format-uppercase.svg | 3 + src/wp-includes/icons/library/full-height.svg | 3 + src/wp-includes/icons/library/fullscreen.svg | 3 + src/wp-includes/icons/library/funnel.svg | 3 + src/wp-includes/icons/library/gallery.svg | 3 + src/wp-includes/icons/library/gift.svg | 3 + src/wp-includes/icons/library/globe.svg | 3 + src/wp-includes/icons/library/grid.svg | 3 + src/wp-includes/icons/library/group.svg | 3 + src/wp-includes/icons/library/handle.svg | 3 + src/wp-includes/icons/library/header.svg | 3 + .../icons/library/heading-level-1.svg | 3 + .../icons/library/heading-level-2.svg | 3 + .../icons/library/heading-level-3.svg | 3 + .../icons/library/heading-level-4.svg | 3 + .../icons/library/heading-level-5.svg | 3 + .../icons/library/heading-level-6.svg | 3 + src/wp-includes/icons/library/heading.svg | 3 + src/wp-includes/icons/library/help-filled.svg | 3 + src/wp-includes/icons/library/help.svg | 3 + src/wp-includes/icons/library/home-button.svg | 3 + src/wp-includes/icons/library/home.svg | 3 + src/wp-includes/icons/library/html.svg | 3 + src/wp-includes/icons/library/image.svg | 3 + src/wp-includes/icons/library/inbox.svg | 3 + src/wp-includes/icons/library/info.svg | 3 + .../icons/library/insert-after.svg | 3 + .../icons/library/insert-before.svg | 3 + src/wp-includes/icons/library/institution.svg | 3 + .../icons/library/justify-bottom.svg | 3 + .../icons/library/justify-center-vertical.svg | 3 + .../icons/library/justify-center.svg | 3 + .../icons/library/justify-left.svg | 3 + .../icons/library/justify-right.svg | 3 + .../justify-space-between-vertical.svg | 3 + .../icons/library/justify-space-between.svg | 3 + .../library/justify-stretch-vertical.svg | 3 + .../icons/library/justify-stretch.svg | 3 + src/wp-includes/icons/library/justify-top.svg | 3 + src/wp-includes/icons/library/key.svg | 3 + .../icons/library/keyboard-close.svg | 3 + .../icons/library/keyboard-return.svg | 3 + src/wp-includes/icons/library/keyboard.svg | 4 + src/wp-includes/icons/library/language.svg | 3 + src/wp-includes/icons/library/layout.svg | 3 + src/wp-includes/icons/library/level-up.svg | 3 + src/wp-includes/icons/library/lifesaver.svg | 3 + src/wp-includes/icons/library/line-dashed.svg | 3 + src/wp-includes/icons/library/line-dotted.svg | 3 + src/wp-includes/icons/library/line-solid.svg | 3 + src/wp-includes/icons/library/link-off.svg | 3 + src/wp-includes/icons/library/link.svg | 3 + src/wp-includes/icons/library/list-item.svg | 3 + src/wp-includes/icons/library/list-view.svg | 3 + src/wp-includes/icons/library/list.svg | 3 + .../icons/library/lock-outline.svg | 3 + src/wp-includes/icons/library/lock-small.svg | 3 + src/wp-includes/icons/library/lock.svg | 3 + src/wp-includes/icons/library/login.svg | 3 + src/wp-includes/icons/library/loop.svg | 3 + src/wp-includes/icons/library/map-marker.svg | 3 + src/wp-includes/icons/library/math.svg | 3 + .../icons/library/media-and-text.svg | 3 + src/wp-includes/icons/library/media.svg | 4 + src/wp-includes/icons/library/megaphone.svg | 3 + src/wp-includes/icons/library/menu.svg | 3 + src/wp-includes/icons/library/mobile.svg | 3 + .../icons/library/more-horizontal.svg | 3 + .../icons/library/more-vertical.svg | 3 + src/wp-includes/icons/library/more.svg | 3 + src/wp-includes/icons/library/move-to.svg | 3 + .../icons/library/navigation-overlay.svg | 3 + src/wp-includes/icons/library/navigation.svg | 3 + src/wp-includes/icons/library/next.svg | 3 + src/wp-includes/icons/library/not-allowed.svg | 3 + src/wp-includes/icons/library/not-found.svg | 3 + src/wp-includes/icons/library/offline.svg | 3 + .../icons/library/overlay-text.svg | 3 + src/wp-includes/icons/library/page-break.svg | 3 + src/wp-includes/icons/library/page.svg | 4 + src/wp-includes/icons/library/pages.svg | 5 + src/wp-includes/icons/library/paragraph.svg | 3 + src/wp-includes/icons/library/payment.svg | 3 + src/wp-includes/icons/library/pencil.svg | 3 + src/wp-includes/icons/library/pending.svg | 3 + src/wp-includes/icons/library/people.svg | 3 + src/wp-includes/icons/library/percent.svg | 3 + src/wp-includes/icons/library/pin-small.svg | 3 + src/wp-includes/icons/library/pin.svg | 3 + src/wp-includes/icons/library/plugins.svg | 3 + .../icons/library/plus-circle-filled.svg | 3 + src/wp-includes/icons/library/plus-circle.svg | 3 + src/wp-includes/icons/library/plus.svg | 3 + .../icons/library/position-center.svg | 3 + .../icons/library/position-left.svg | 3 + .../icons/library/position-right.svg | 3 + src/wp-includes/icons/library/post-author.svg | 3 + .../icons/library/post-categories.svg | 3 + .../icons/library/post-comments-count.svg | 3 + .../icons/library/post-comments-form.svg | 3 + .../icons/library/post-comments.svg | 3 + .../icons/library/post-content.svg | 3 + src/wp-includes/icons/library/post-date.svg | 4 + .../icons/library/post-excerpt.svg | 3 + .../icons/library/post-featured-image.svg | 3 + src/wp-includes/icons/library/post-list.svg | 3 + src/wp-includes/icons/library/post-terms.svg | 3 + src/wp-includes/icons/library/post.svg | 3 + .../icons/library/preformatted.svg | 3 + src/wp-includes/icons/library/previous.svg | 3 + src/wp-includes/icons/library/published.svg | 3 + src/wp-includes/icons/library/pull-left.svg | 3 + src/wp-includes/icons/library/pull-right.svg | 3 + src/wp-includes/icons/library/pullquote.svg | 3 + .../icons/library/query-pagination-next.svg | 3 + .../library/query-pagination-numbers.svg | 3 + .../library/query-pagination-previous.svg | 3 + .../icons/library/query-pagination.svg | 3 + src/wp-includes/icons/library/quote.svg | 3 + src/wp-includes/icons/library/receipt.svg | 3 + src/wp-includes/icons/library/redo.svg | 3 + src/wp-includes/icons/library/remove-bug.svg | 3 + .../icons/library/remove-submenu.svg | 3 + src/wp-includes/icons/library/replace.svg | 3 + src/wp-includes/icons/library/reset.svg | 3 + .../icons/library/resize-corner-ne.svg | 3 + .../icons/library/reusable-block.svg | 3 + src/wp-includes/icons/library/rotate-left.svg | 3 + .../icons/library/rotate-right.svg | 3 + src/wp-includes/icons/library/row.svg | 3 + src/wp-includes/icons/library/rss.svg | 3 + src/wp-includes/icons/library/scheduled.svg | 3 + src/wp-includes/icons/library/search.svg | 3 + src/wp-includes/icons/library/seen.svg | 3 + src/wp-includes/icons/library/send.svg | 3 + src/wp-includes/icons/library/separator.svg | 3 + src/wp-includes/icons/library/settings.svg | 4 + src/wp-includes/icons/library/shadow.svg | 3 + src/wp-includes/icons/library/share.svg | 3 + src/wp-includes/icons/library/shield.svg | 3 + src/wp-includes/icons/library/shipping.svg | 3 + src/wp-includes/icons/library/shortcode.svg | 3 + src/wp-includes/icons/library/shuffle.svg | 3 + src/wp-includes/icons/library/sidebar.svg | 3 + src/wp-includes/icons/library/sides-all.svg | 3 + src/wp-includes/icons/library/sides-axial.svg | 3 + .../icons/library/sides-bottom.svg | 4 + .../icons/library/sides-horizontal.svg | 5 + src/wp-includes/icons/library/sides-left.svg | 4 + src/wp-includes/icons/library/sides-right.svg | 4 + src/wp-includes/icons/library/sides-top.svg | 4 + .../icons/library/sides-vertical.svg | 5 + src/wp-includes/icons/library/site-logo.svg | 3 + src/wp-includes/icons/library/square.svg | 3 + src/wp-includes/icons/library/stack.svg | 3 + src/wp-includes/icons/library/star-empty.svg | 3 + src/wp-includes/icons/library/star-filled.svg | 3 + src/wp-includes/icons/library/star-half.svg | 3 + src/wp-includes/icons/library/store.svg | 3 + .../icons/library/stretch-full-width.svg | 3 + .../icons/library/stretch-wide.svg | 3 + src/wp-includes/icons/library/styles.svg | 3 + src/wp-includes/icons/library/subscript.svg | 3 + src/wp-includes/icons/library/superscript.svg | 3 + src/wp-includes/icons/library/swatch.svg | 3 + .../icons/library/symbol-filled.svg | 3 + src/wp-includes/icons/library/symbol.svg | 3 + src/wp-includes/icons/library/tab.svg | 1 + .../icons/library/table-column-after.svg | 3 + .../icons/library/table-column-before.svg | 3 + .../icons/library/table-column-delete.svg | 3 + .../icons/library/table-of-contents.svg | 4 + .../icons/library/table-row-after.svg | 3 + .../icons/library/table-row-before.svg | 3 + .../icons/library/table-row-delete.svg | 3 + src/wp-includes/icons/library/table.svg | 3 + src/wp-includes/icons/library/tablet.svg | 3 + .../icons/library/tabs-menu-item.svg | 1 + src/wp-includes/icons/library/tabs-menu.svg | 1 + src/wp-includes/icons/library/tabs.svg | 1 + src/wp-includes/icons/library/tag.svg | 3 + src/wp-includes/icons/library/term-count.svg | 4 + .../icons/library/term-description.svg | 3 + src/wp-includes/icons/library/term-name.svg | 4 + src/wp-includes/icons/library/text-color.svg | 3 + .../icons/library/text-horizontal.svg | 3 + .../icons/library/text-vertical.svg | 3 + src/wp-includes/icons/library/thumbs-down.svg | 3 + src/wp-includes/icons/library/thumbs-up.svg | 3 + .../icons/library/time-to-read.svg | 3 + src/wp-includes/icons/library/tip.svg | 3 + src/wp-includes/icons/library/title.svg | 3 + src/wp-includes/icons/library/tool.svg | 3 + src/wp-includes/icons/library/trash.svg | 3 + .../icons/library/trending-down.svg | 3 + src/wp-includes/icons/library/trending-up.svg | 3 + src/wp-includes/icons/library/typography.svg | 3 + src/wp-includes/icons/library/undo.svg | 3 + src/wp-includes/icons/library/ungroup.svg | 3 + src/wp-includes/icons/library/unlock.svg | 3 + src/wp-includes/icons/library/unseen.svg | 3 + src/wp-includes/icons/library/update.svg | 3 + src/wp-includes/icons/library/upload.svg | 3 + src/wp-includes/icons/library/verse.svg | 3 + src/wp-includes/icons/library/video.svg | 3 + src/wp-includes/icons/library/widget.svg | 3 + src/wp-includes/icons/library/word-count.svg | 3 + src/wp-includes/icons/library/wordpress.svg | 3 + src/wp-includes/icons/manifest.php | 360 + src/wp-includes/rest-api.php | 11 + .../class-wp-rest-view-config-controller.php | 395 + src/wp-settings.php | 1 + 405 files changed, 93988 insertions(+) create mode 100644 .phpactor.json create mode 100644 src/wp-includes/build/pages/site-editor-v2/loader.js create mode 100644 src/wp-includes/build/pages/site-editor-v2/page-wp-admin.php create mode 100644 src/wp-includes/build/pages/site-editor-v2/page.php create mode 100644 src/wp-includes/build/routes/home/route.js create mode 100644 src/wp-includes/build/routes/home/route.min.asset.php create mode 100644 src/wp-includes/build/routes/home/route.min.js create mode 100644 src/wp-includes/build/routes/navigation-edit/content.js create mode 100644 src/wp-includes/build/routes/navigation-edit/content.min.asset.php create mode 100644 src/wp-includes/build/routes/navigation-edit/content.min.js create mode 100644 src/wp-includes/build/routes/navigation-edit/route.js create mode 100644 src/wp-includes/build/routes/navigation-edit/route.min.asset.php create mode 100644 src/wp-includes/build/routes/navigation-edit/route.min.js create mode 100644 src/wp-includes/build/routes/navigation-list/content.js create mode 100644 src/wp-includes/build/routes/navigation-list/content.min.asset.php create mode 100644 src/wp-includes/build/routes/navigation-list/content.min.js create mode 100644 src/wp-includes/build/routes/navigation-list/route.js create mode 100644 src/wp-includes/build/routes/navigation-list/route.min.asset.php create mode 100644 src/wp-includes/build/routes/navigation-list/route.min.js create mode 100644 src/wp-includes/build/routes/navigation/route.js create mode 100644 src/wp-includes/build/routes/navigation/route.min.asset.php create mode 100644 src/wp-includes/build/routes/navigation/route.min.js create mode 100644 src/wp-includes/build/routes/pattern-list/content.js create mode 100644 src/wp-includes/build/routes/pattern-list/content.min.asset.php create mode 100644 src/wp-includes/build/routes/pattern-list/content.min.js create mode 100644 src/wp-includes/build/routes/pattern-list/route.js create mode 100644 src/wp-includes/build/routes/pattern-list/route.min.asset.php create mode 100644 src/wp-includes/build/routes/pattern-list/route.min.js create mode 100644 src/wp-includes/build/routes/pattern/route.js create mode 100644 src/wp-includes/build/routes/pattern/route.min.asset.php create mode 100644 src/wp-includes/build/routes/pattern/route.min.js create mode 100644 src/wp-includes/build/routes/post-edit/route.js create mode 100644 src/wp-includes/build/routes/post-edit/route.min.asset.php create mode 100644 src/wp-includes/build/routes/post-edit/route.min.js create mode 100644 src/wp-includes/build/routes/post-list/content.js create mode 100644 src/wp-includes/build/routes/post-list/content.min.asset.php create mode 100644 src/wp-includes/build/routes/post-list/content.min.js create mode 100644 src/wp-includes/build/routes/post-list/route.js create mode 100644 src/wp-includes/build/routes/post-list/route.min.asset.php create mode 100644 src/wp-includes/build/routes/post-list/route.min.js create mode 100644 src/wp-includes/build/routes/post-new/route.js create mode 100644 src/wp-includes/build/routes/post-new/route.min.asset.php create mode 100644 src/wp-includes/build/routes/post-new/route.min.js create mode 100644 src/wp-includes/build/routes/post/route.js create mode 100644 src/wp-includes/build/routes/post/route.min.asset.php create mode 100644 src/wp-includes/build/routes/post/route.min.js create mode 100644 src/wp-includes/build/routes/styles/content.js create mode 100644 src/wp-includes/build/routes/styles/content.min.asset.php create mode 100644 src/wp-includes/build/routes/styles/content.min.js create mode 100644 src/wp-includes/build/routes/styles/route.js create mode 100644 src/wp-includes/build/routes/styles/route.min.asset.php create mode 100644 src/wp-includes/build/routes/styles/route.min.js create mode 100644 src/wp-includes/build/routes/template-list/content.js create mode 100644 src/wp-includes/build/routes/template-list/content.min.asset.php create mode 100644 src/wp-includes/build/routes/template-list/content.min.js create mode 100644 src/wp-includes/build/routes/template-list/route.js create mode 100644 src/wp-includes/build/routes/template-list/route.min.asset.php create mode 100644 src/wp-includes/build/routes/template-list/route.min.js create mode 100644 src/wp-includes/build/routes/template-part-list/content.js create mode 100644 src/wp-includes/build/routes/template-part-list/content.min.asset.php create mode 100644 src/wp-includes/build/routes/template-part-list/content.min.js create mode 100644 src/wp-includes/build/routes/template-part-list/route.js create mode 100644 src/wp-includes/build/routes/template-part-list/route.min.asset.php create mode 100644 src/wp-includes/build/routes/template-part-list/route.min.js create mode 100644 src/wp-includes/build/routes/template-part/route.js create mode 100644 src/wp-includes/build/routes/template-part/route.min.asset.php create mode 100644 src/wp-includes/build/routes/template-part/route.min.js create mode 100644 src/wp-includes/build/routes/template/route.js create mode 100644 src/wp-includes/build/routes/template/route.min.asset.php create mode 100644 src/wp-includes/build/routes/template/route.min.js create mode 100644 src/wp-includes/icons/library/accordion-heading.svg create mode 100644 src/wp-includes/icons/library/accordion-item.svg create mode 100644 src/wp-includes/icons/library/accordion.svg create mode 100644 src/wp-includes/icons/library/add-card.svg create mode 100644 src/wp-includes/icons/library/add-submenu.svg create mode 100644 src/wp-includes/icons/library/add-template.svg create mode 100644 src/wp-includes/icons/library/align-center.svg create mode 100644 src/wp-includes/icons/library/align-justify.svg create mode 100644 src/wp-includes/icons/library/align-left.svg create mode 100644 src/wp-includes/icons/library/align-none.svg create mode 100644 src/wp-includes/icons/library/align-right.svg create mode 100644 src/wp-includes/icons/library/archive.svg create mode 100644 src/wp-includes/icons/library/arrow-down-left.svg create mode 100644 src/wp-includes/icons/library/arrow-down-right.svg create mode 100644 src/wp-includes/icons/library/arrow-down.svg create mode 100644 src/wp-includes/icons/library/arrow-left.svg create mode 100644 src/wp-includes/icons/library/arrow-right.svg create mode 100644 src/wp-includes/icons/library/arrow-up-left.svg create mode 100644 src/wp-includes/icons/library/arrow-up-right.svg create mode 100644 src/wp-includes/icons/library/arrow-up.svg create mode 100644 src/wp-includes/icons/library/aspect-ratio.svg create mode 100644 src/wp-includes/icons/library/at-symbol.svg create mode 100644 src/wp-includes/icons/library/audio.svg create mode 100644 src/wp-includes/icons/library/background.svg create mode 100644 src/wp-includes/icons/library/backup.svg create mode 100644 src/wp-includes/icons/library/bell-unread.svg create mode 100644 src/wp-includes/icons/library/bell.svg create mode 100644 src/wp-includes/icons/library/block-default.svg create mode 100644 src/wp-includes/icons/library/block-meta.svg create mode 100644 src/wp-includes/icons/library/block-table.svg create mode 100644 src/wp-includes/icons/library/border.svg create mode 100644 src/wp-includes/icons/library/box.svg create mode 100644 src/wp-includes/icons/library/breadcrumbs.svg create mode 100644 src/wp-includes/icons/library/brush.svg create mode 100644 src/wp-includes/icons/library/bug.svg create mode 100644 src/wp-includes/icons/library/button.svg create mode 100644 src/wp-includes/icons/library/buttons.svg create mode 100644 src/wp-includes/icons/library/calendar.svg create mode 100644 src/wp-includes/icons/library/cancel-circle-filled.svg create mode 100644 src/wp-includes/icons/library/caption.svg create mode 100644 src/wp-includes/icons/library/capture-photo.svg create mode 100644 src/wp-includes/icons/library/capture-video.svg create mode 100644 src/wp-includes/icons/library/cart.svg create mode 100644 src/wp-includes/icons/library/category.svg create mode 100644 src/wp-includes/icons/library/caution-filled.svg create mode 100644 src/wp-includes/icons/library/caution.svg create mode 100644 src/wp-includes/icons/library/chart-bar.svg create mode 100644 src/wp-includes/icons/library/check.svg create mode 100644 src/wp-includes/icons/library/chevron-down-small.svg create mode 100644 src/wp-includes/icons/library/chevron-down.svg create mode 100644 src/wp-includes/icons/library/chevron-left-small.svg create mode 100644 src/wp-includes/icons/library/chevron-left.svg create mode 100644 src/wp-includes/icons/library/chevron-right-small.svg create mode 100644 src/wp-includes/icons/library/chevron-right.svg create mode 100644 src/wp-includes/icons/library/chevron-up-down.svg create mode 100644 src/wp-includes/icons/library/chevron-up-small.svg create mode 100644 src/wp-includes/icons/library/chevron-up.svg create mode 100644 src/wp-includes/icons/library/classic.svg create mode 100644 src/wp-includes/icons/library/close-small.svg create mode 100644 src/wp-includes/icons/library/close.svg create mode 100644 src/wp-includes/icons/library/cloud-download.svg create mode 100644 src/wp-includes/icons/library/cloud-upload.svg create mode 100644 src/wp-includes/icons/library/cloud.svg create mode 100644 src/wp-includes/icons/library/code.svg create mode 100644 src/wp-includes/icons/library/cog.svg create mode 100644 src/wp-includes/icons/library/color.svg create mode 100644 src/wp-includes/icons/library/column.svg create mode 100644 src/wp-includes/icons/library/columns.svg create mode 100644 src/wp-includes/icons/library/comment-author-avatar.svg create mode 100644 src/wp-includes/icons/library/comment-author-name.svg create mode 100644 src/wp-includes/icons/library/comment-content.svg create mode 100644 src/wp-includes/icons/library/comment-edit-link.svg create mode 100644 src/wp-includes/icons/library/comment-reply-link.svg create mode 100644 src/wp-includes/icons/library/comment.svg create mode 100644 src/wp-includes/icons/library/connection.svg create mode 100644 src/wp-includes/icons/library/contents.svg create mode 100644 src/wp-includes/icons/library/copy-small.svg create mode 100644 src/wp-includes/icons/library/copy.svg create mode 100644 src/wp-includes/icons/library/corner-all.svg create mode 100644 src/wp-includes/icons/library/corner-bottom-left.svg create mode 100644 src/wp-includes/icons/library/corner-bottom-right.svg create mode 100644 src/wp-includes/icons/library/corner-top-left.svg create mode 100644 src/wp-includes/icons/library/corner-top-right.svg create mode 100644 src/wp-includes/icons/library/cover.svg create mode 100644 src/wp-includes/icons/library/create.svg create mode 100644 src/wp-includes/icons/library/crop.svg create mode 100644 src/wp-includes/icons/library/currency-dollar.svg create mode 100644 src/wp-includes/icons/library/currency-euro.svg create mode 100644 src/wp-includes/icons/library/currency-pound.svg create mode 100644 src/wp-includes/icons/library/custom-link.svg create mode 100644 src/wp-includes/icons/library/custom-post-type.svg create mode 100644 src/wp-includes/icons/library/dashboard.svg create mode 100644 src/wp-includes/icons/library/desktop.svg create mode 100644 src/wp-includes/icons/library/details.svg create mode 100644 src/wp-includes/icons/library/download.svg create mode 100644 src/wp-includes/icons/library/drafts.svg create mode 100644 src/wp-includes/icons/library/drag-handle.svg create mode 100644 src/wp-includes/icons/library/drawer-left.svg create mode 100644 src/wp-includes/icons/library/drawer-right.svg create mode 100644 src/wp-includes/icons/library/envelope.svg create mode 100644 src/wp-includes/icons/library/error.svg create mode 100644 src/wp-includes/icons/library/external.svg create mode 100644 src/wp-includes/icons/library/file.svg create mode 100644 src/wp-includes/icons/library/filter.svg create mode 100644 src/wp-includes/icons/library/flip-horizontal.svg create mode 100644 src/wp-includes/icons/library/flip-vertical.svg create mode 100644 src/wp-includes/icons/library/footer.svg create mode 100644 src/wp-includes/icons/library/format-bold.svg create mode 100644 src/wp-includes/icons/library/format-capitalize.svg create mode 100644 src/wp-includes/icons/library/format-indent-rtl.svg create mode 100644 src/wp-includes/icons/library/format-indent.svg create mode 100644 src/wp-includes/icons/library/format-italic.svg create mode 100644 src/wp-includes/icons/library/format-list-bullets-rtl.svg create mode 100644 src/wp-includes/icons/library/format-list-bullets.svg create mode 100644 src/wp-includes/icons/library/format-list-numbered-rtl.svg create mode 100644 src/wp-includes/icons/library/format-list-numbered.svg create mode 100644 src/wp-includes/icons/library/format-lowercase.svg create mode 100644 src/wp-includes/icons/library/format-ltr.svg create mode 100644 src/wp-includes/icons/library/format-outdent-rtl.svg create mode 100644 src/wp-includes/icons/library/format-outdent.svg create mode 100644 src/wp-includes/icons/library/format-rtl.svg create mode 100644 src/wp-includes/icons/library/format-strikethrough.svg create mode 100644 src/wp-includes/icons/library/format-underline.svg create mode 100644 src/wp-includes/icons/library/format-uppercase.svg create mode 100644 src/wp-includes/icons/library/full-height.svg create mode 100644 src/wp-includes/icons/library/fullscreen.svg create mode 100644 src/wp-includes/icons/library/funnel.svg create mode 100644 src/wp-includes/icons/library/gallery.svg create mode 100644 src/wp-includes/icons/library/gift.svg create mode 100644 src/wp-includes/icons/library/globe.svg create mode 100644 src/wp-includes/icons/library/grid.svg create mode 100644 src/wp-includes/icons/library/group.svg create mode 100644 src/wp-includes/icons/library/handle.svg create mode 100644 src/wp-includes/icons/library/header.svg create mode 100644 src/wp-includes/icons/library/heading-level-1.svg create mode 100644 src/wp-includes/icons/library/heading-level-2.svg create mode 100644 src/wp-includes/icons/library/heading-level-3.svg create mode 100644 src/wp-includes/icons/library/heading-level-4.svg create mode 100644 src/wp-includes/icons/library/heading-level-5.svg create mode 100644 src/wp-includes/icons/library/heading-level-6.svg create mode 100644 src/wp-includes/icons/library/heading.svg create mode 100644 src/wp-includes/icons/library/help-filled.svg create mode 100644 src/wp-includes/icons/library/help.svg create mode 100644 src/wp-includes/icons/library/home-button.svg create mode 100644 src/wp-includes/icons/library/home.svg create mode 100644 src/wp-includes/icons/library/html.svg create mode 100644 src/wp-includes/icons/library/image.svg create mode 100644 src/wp-includes/icons/library/inbox.svg create mode 100644 src/wp-includes/icons/library/info.svg create mode 100644 src/wp-includes/icons/library/insert-after.svg create mode 100644 src/wp-includes/icons/library/insert-before.svg create mode 100644 src/wp-includes/icons/library/institution.svg create mode 100644 src/wp-includes/icons/library/justify-bottom.svg create mode 100644 src/wp-includes/icons/library/justify-center-vertical.svg create mode 100644 src/wp-includes/icons/library/justify-center.svg create mode 100644 src/wp-includes/icons/library/justify-left.svg create mode 100644 src/wp-includes/icons/library/justify-right.svg create mode 100644 src/wp-includes/icons/library/justify-space-between-vertical.svg create mode 100644 src/wp-includes/icons/library/justify-space-between.svg create mode 100644 src/wp-includes/icons/library/justify-stretch-vertical.svg create mode 100644 src/wp-includes/icons/library/justify-stretch.svg create mode 100644 src/wp-includes/icons/library/justify-top.svg create mode 100644 src/wp-includes/icons/library/key.svg create mode 100644 src/wp-includes/icons/library/keyboard-close.svg create mode 100644 src/wp-includes/icons/library/keyboard-return.svg create mode 100644 src/wp-includes/icons/library/keyboard.svg create mode 100644 src/wp-includes/icons/library/language.svg create mode 100644 src/wp-includes/icons/library/layout.svg create mode 100644 src/wp-includes/icons/library/level-up.svg create mode 100644 src/wp-includes/icons/library/lifesaver.svg create mode 100644 src/wp-includes/icons/library/line-dashed.svg create mode 100644 src/wp-includes/icons/library/line-dotted.svg create mode 100644 src/wp-includes/icons/library/line-solid.svg create mode 100644 src/wp-includes/icons/library/link-off.svg create mode 100644 src/wp-includes/icons/library/link.svg create mode 100644 src/wp-includes/icons/library/list-item.svg create mode 100644 src/wp-includes/icons/library/list-view.svg create mode 100644 src/wp-includes/icons/library/list.svg create mode 100644 src/wp-includes/icons/library/lock-outline.svg create mode 100644 src/wp-includes/icons/library/lock-small.svg create mode 100644 src/wp-includes/icons/library/lock.svg create mode 100644 src/wp-includes/icons/library/login.svg create mode 100644 src/wp-includes/icons/library/loop.svg create mode 100644 src/wp-includes/icons/library/map-marker.svg create mode 100644 src/wp-includes/icons/library/math.svg create mode 100644 src/wp-includes/icons/library/media-and-text.svg create mode 100644 src/wp-includes/icons/library/media.svg create mode 100644 src/wp-includes/icons/library/megaphone.svg create mode 100644 src/wp-includes/icons/library/menu.svg create mode 100644 src/wp-includes/icons/library/mobile.svg create mode 100644 src/wp-includes/icons/library/more-horizontal.svg create mode 100644 src/wp-includes/icons/library/more-vertical.svg create mode 100644 src/wp-includes/icons/library/more.svg create mode 100644 src/wp-includes/icons/library/move-to.svg create mode 100644 src/wp-includes/icons/library/navigation-overlay.svg create mode 100644 src/wp-includes/icons/library/navigation.svg create mode 100644 src/wp-includes/icons/library/next.svg create mode 100644 src/wp-includes/icons/library/not-allowed.svg create mode 100644 src/wp-includes/icons/library/not-found.svg create mode 100644 src/wp-includes/icons/library/offline.svg create mode 100644 src/wp-includes/icons/library/overlay-text.svg create mode 100644 src/wp-includes/icons/library/page-break.svg create mode 100644 src/wp-includes/icons/library/page.svg create mode 100644 src/wp-includes/icons/library/pages.svg create mode 100644 src/wp-includes/icons/library/paragraph.svg create mode 100644 src/wp-includes/icons/library/payment.svg create mode 100644 src/wp-includes/icons/library/pencil.svg create mode 100644 src/wp-includes/icons/library/pending.svg create mode 100644 src/wp-includes/icons/library/people.svg create mode 100644 src/wp-includes/icons/library/percent.svg create mode 100644 src/wp-includes/icons/library/pin-small.svg create mode 100644 src/wp-includes/icons/library/pin.svg create mode 100644 src/wp-includes/icons/library/plugins.svg create mode 100644 src/wp-includes/icons/library/plus-circle-filled.svg create mode 100644 src/wp-includes/icons/library/plus-circle.svg create mode 100644 src/wp-includes/icons/library/plus.svg create mode 100644 src/wp-includes/icons/library/position-center.svg create mode 100644 src/wp-includes/icons/library/position-left.svg create mode 100644 src/wp-includes/icons/library/position-right.svg create mode 100644 src/wp-includes/icons/library/post-author.svg create mode 100644 src/wp-includes/icons/library/post-categories.svg create mode 100644 src/wp-includes/icons/library/post-comments-count.svg create mode 100644 src/wp-includes/icons/library/post-comments-form.svg create mode 100644 src/wp-includes/icons/library/post-comments.svg create mode 100644 src/wp-includes/icons/library/post-content.svg create mode 100644 src/wp-includes/icons/library/post-date.svg create mode 100644 src/wp-includes/icons/library/post-excerpt.svg create mode 100644 src/wp-includes/icons/library/post-featured-image.svg create mode 100644 src/wp-includes/icons/library/post-list.svg create mode 100644 src/wp-includes/icons/library/post-terms.svg create mode 100644 src/wp-includes/icons/library/post.svg create mode 100644 src/wp-includes/icons/library/preformatted.svg create mode 100644 src/wp-includes/icons/library/previous.svg create mode 100644 src/wp-includes/icons/library/published.svg create mode 100644 src/wp-includes/icons/library/pull-left.svg create mode 100644 src/wp-includes/icons/library/pull-right.svg create mode 100644 src/wp-includes/icons/library/pullquote.svg create mode 100644 src/wp-includes/icons/library/query-pagination-next.svg create mode 100644 src/wp-includes/icons/library/query-pagination-numbers.svg create mode 100644 src/wp-includes/icons/library/query-pagination-previous.svg create mode 100644 src/wp-includes/icons/library/query-pagination.svg create mode 100644 src/wp-includes/icons/library/quote.svg create mode 100644 src/wp-includes/icons/library/receipt.svg create mode 100644 src/wp-includes/icons/library/redo.svg create mode 100644 src/wp-includes/icons/library/remove-bug.svg create mode 100644 src/wp-includes/icons/library/remove-submenu.svg create mode 100644 src/wp-includes/icons/library/replace.svg create mode 100644 src/wp-includes/icons/library/reset.svg create mode 100644 src/wp-includes/icons/library/resize-corner-ne.svg create mode 100644 src/wp-includes/icons/library/reusable-block.svg create mode 100644 src/wp-includes/icons/library/rotate-left.svg create mode 100644 src/wp-includes/icons/library/rotate-right.svg create mode 100644 src/wp-includes/icons/library/row.svg create mode 100644 src/wp-includes/icons/library/rss.svg create mode 100644 src/wp-includes/icons/library/scheduled.svg create mode 100644 src/wp-includes/icons/library/search.svg create mode 100644 src/wp-includes/icons/library/seen.svg create mode 100644 src/wp-includes/icons/library/send.svg create mode 100644 src/wp-includes/icons/library/separator.svg create mode 100644 src/wp-includes/icons/library/settings.svg create mode 100644 src/wp-includes/icons/library/shadow.svg create mode 100644 src/wp-includes/icons/library/share.svg create mode 100644 src/wp-includes/icons/library/shield.svg create mode 100644 src/wp-includes/icons/library/shipping.svg create mode 100644 src/wp-includes/icons/library/shortcode.svg create mode 100644 src/wp-includes/icons/library/shuffle.svg create mode 100644 src/wp-includes/icons/library/sidebar.svg create mode 100644 src/wp-includes/icons/library/sides-all.svg create mode 100644 src/wp-includes/icons/library/sides-axial.svg create mode 100644 src/wp-includes/icons/library/sides-bottom.svg create mode 100644 src/wp-includes/icons/library/sides-horizontal.svg create mode 100644 src/wp-includes/icons/library/sides-left.svg create mode 100644 src/wp-includes/icons/library/sides-right.svg create mode 100644 src/wp-includes/icons/library/sides-top.svg create mode 100644 src/wp-includes/icons/library/sides-vertical.svg create mode 100644 src/wp-includes/icons/library/site-logo.svg create mode 100644 src/wp-includes/icons/library/square.svg create mode 100644 src/wp-includes/icons/library/stack.svg create mode 100644 src/wp-includes/icons/library/star-empty.svg create mode 100644 src/wp-includes/icons/library/star-filled.svg create mode 100644 src/wp-includes/icons/library/star-half.svg create mode 100644 src/wp-includes/icons/library/store.svg create mode 100644 src/wp-includes/icons/library/stretch-full-width.svg create mode 100644 src/wp-includes/icons/library/stretch-wide.svg create mode 100644 src/wp-includes/icons/library/styles.svg create mode 100644 src/wp-includes/icons/library/subscript.svg create mode 100644 src/wp-includes/icons/library/superscript.svg create mode 100644 src/wp-includes/icons/library/swatch.svg create mode 100644 src/wp-includes/icons/library/symbol-filled.svg create mode 100644 src/wp-includes/icons/library/symbol.svg create mode 100644 src/wp-includes/icons/library/tab.svg create mode 100644 src/wp-includes/icons/library/table-column-after.svg create mode 100644 src/wp-includes/icons/library/table-column-before.svg create mode 100644 src/wp-includes/icons/library/table-column-delete.svg create mode 100644 src/wp-includes/icons/library/table-of-contents.svg create mode 100644 src/wp-includes/icons/library/table-row-after.svg create mode 100644 src/wp-includes/icons/library/table-row-before.svg create mode 100644 src/wp-includes/icons/library/table-row-delete.svg create mode 100644 src/wp-includes/icons/library/table.svg create mode 100644 src/wp-includes/icons/library/tablet.svg create mode 100644 src/wp-includes/icons/library/tabs-menu-item.svg create mode 100644 src/wp-includes/icons/library/tabs-menu.svg create mode 100644 src/wp-includes/icons/library/tabs.svg create mode 100644 src/wp-includes/icons/library/tag.svg create mode 100644 src/wp-includes/icons/library/term-count.svg create mode 100644 src/wp-includes/icons/library/term-description.svg create mode 100644 src/wp-includes/icons/library/term-name.svg create mode 100644 src/wp-includes/icons/library/text-color.svg create mode 100644 src/wp-includes/icons/library/text-horizontal.svg create mode 100644 src/wp-includes/icons/library/text-vertical.svg create mode 100644 src/wp-includes/icons/library/thumbs-down.svg create mode 100644 src/wp-includes/icons/library/thumbs-up.svg create mode 100644 src/wp-includes/icons/library/time-to-read.svg create mode 100644 src/wp-includes/icons/library/tip.svg create mode 100644 src/wp-includes/icons/library/title.svg create mode 100644 src/wp-includes/icons/library/tool.svg create mode 100644 src/wp-includes/icons/library/trash.svg create mode 100644 src/wp-includes/icons/library/trending-down.svg create mode 100644 src/wp-includes/icons/library/trending-up.svg create mode 100644 src/wp-includes/icons/library/typography.svg create mode 100644 src/wp-includes/icons/library/undo.svg create mode 100644 src/wp-includes/icons/library/ungroup.svg create mode 100644 src/wp-includes/icons/library/unlock.svg create mode 100644 src/wp-includes/icons/library/unseen.svg create mode 100644 src/wp-includes/icons/library/update.svg create mode 100644 src/wp-includes/icons/library/upload.svg create mode 100644 src/wp-includes/icons/library/verse.svg create mode 100644 src/wp-includes/icons/library/video.svg create mode 100644 src/wp-includes/icons/library/widget.svg create mode 100644 src/wp-includes/icons/library/word-count.svg create mode 100644 src/wp-includes/icons/library/wordpress.svg create mode 100644 src/wp-includes/icons/manifest.php create mode 100644 src/wp-includes/rest-api/endpoints/class-wp-rest-view-config-controller.php diff --git a/.phpactor.json b/.phpactor.json new file mode 100644 index 0000000000000..5cea18e2d4913 --- /dev/null +++ b/.phpactor.json @@ -0,0 +1,4 @@ +{ + "$schema": "/phpactor.schema.json", + "php_code_sniffer.enabled": false +} \ No newline at end of file diff --git a/src/wp-includes/build/pages/site-editor-v2/loader.js b/src/wp-includes/build/pages/site-editor-v2/loader.js new file mode 100644 index 0000000000000..9f7e5db19d51d --- /dev/null +++ b/src/wp-includes/build/pages/site-editor-v2/loader.js @@ -0,0 +1 @@ +// Empty module loader for page dependencies diff --git a/src/wp-includes/build/pages/site-editor-v2/page-wp-admin.php b/src/wp-includes/build/pages/site-editor-v2/page-wp-admin.php new file mode 100644 index 0000000000000..f8be5479cb4d7 --- /dev/null +++ b/src/wp-includes/build/pages/site-editor-v2/page-wp-admin.php @@ -0,0 +1,279 @@ + $path ); + if ( ! empty( $content_module ) ) { + $route['content_module'] = $content_module; + } + if ( ! empty( $route_module ) ) { + $route['route_module'] = $route_module; + } + + $wp_site_editor_v2_wp_admin_routes[] = $route; +} + +/** + * Register a menu item for the site-editor-v2-wp-admin page. + * Note: Menu items are registered but not displayed in single-page mode. + * + * @param string $id Menu item ID. + * @param string $label Display label. + * @param string $to Route path to navigate to. + * @param string $parent_id Optional. Parent menu item ID. + */ +function wp_register_site_editor_v2_wp_admin_menu_item( $id, $label, $to, $parent_id = '' ) { + global $wp_site_editor_v2_wp_admin_menu_items; + + $menu_item = array( + 'id' => $id, + 'label' => $label, + 'to' => $to, + ); + + if ( ! empty( $parent_id ) ) { + $menu_item['parent'] = $parent_id; + } + + $wp_site_editor_v2_wp_admin_menu_items[] = $menu_item; +} + +/** + * Get all registered routes for the site-editor-v2-wp-admin page. + * + * @return array Array of route objects. + */ +function wp_get_site_editor_v2_wp_admin_routes() { + global $wp_site_editor_v2_wp_admin_routes; + return $wp_site_editor_v2_wp_admin_routes ?? array(); +} + +/** + * Get all registered menu items for the site-editor-v2-wp-admin page. + * + * @return array Array of menu item objects. + */ +function wp_get_site_editor_v2_wp_admin_menu_items() { + global $wp_site_editor_v2_wp_admin_menu_items; + return $wp_site_editor_v2_wp_admin_menu_items ?? array(); +} + +/** + * Preload REST API data for the site-editor-v2-wp-admin page. + * Automatically called during page rendering. + */ +function wp_site_editor_v2_wp_admin_preload_data() { + // Define paths to preload - same for all pages + // Please also change packages/core-data/src/entities.js when changing this. + $preload_paths = array( + '/?_fields=description,gmt_offset,home,image_sizes,image_size_threshold,image_output_formats,jpeg_interlaced,png_interlaced,gif_interlaced,name,site_icon,site_icon_url,site_logo,timezone_string,url,page_for_posts,page_on_front,show_on_front', + array( '/wp/v2/settings', 'OPTIONS' ), + ); + + // Use rest_preload_api_request to gather the preloaded data + $preload_data = array_reduce( + $preload_paths, + 'rest_preload_api_request', + array() + ); + + // Register the preloading middleware with wp-api-fetch + wp_add_inline_script( + 'wp-api-fetch', + sprintf( + 'wp.apiFetch.use( wp.apiFetch.createPreloadingMiddleware( %s ) );', + wp_json_encode( $preload_data ) + ), + 'after' + ); +} + +/** + * Enqueue scripts and styles for the site-editor-v2-wp-admin page. + * Hooked to admin_enqueue_scripts. + * + * @param string $hook_suffix The current admin page. + */ +function wp_site_editor_v2_wp_admin_enqueue_scripts( $hook_suffix ) { + // Check all possible ways this page can be accessed: + // 1. Menu page via admin.php?page=site-editor-v2-wp-admin (plugin) + // 2. Direct file via site-editor-v2.php (Core) - screen ID will be 'site-editor-v2' + $current_screen = get_current_screen(); + $is_our_page = ( + ( isset( $_GET['page'] ) && 'site-editor-v2-wp-admin' === $_GET['page'] ) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended + ( $current_screen && 'site-editor-v2' === $current_screen->id ) + ); + + if ( ! $is_our_page ) { + return; + } + + // Load build constants + $build_constants = require __DIR__ . '/../../constants.php'; + + // Fire init action for extensions to register routes and menu items + do_action( 'site-editor-v2-wp-admin_init' ); + + // Preload REST API data + wp_site_editor_v2_wp_admin_preload_data(); + + // Get all registered routes + $routes = wp_get_site_editor_v2_wp_admin_routes(); + + // Get boot module asset file for dependencies + $asset_file = ABSPATH . WPINC . '/js/dist/script-modules/boot/index.min.asset.php'; + if ( file_exists( $asset_file ) ) { + $asset = require $asset_file; + + // This script serves two purposes: + // 1. It ensures all the globals that are made available to the modules are loaded. + // 2. It initializes the boot module as an inline script. + wp_register_script( 'site-editor-v2-wp-admin-prerequisites', '', $asset['dependencies'], $asset['version'], true ); + + // Add inline script to initialize the app using initSinglePage (no menuItems) + wp_add_inline_script( + 'site-editor-v2-wp-admin-prerequisites', + sprintf( + 'import("@wordpress/boot").then(mod => mod.initSinglePage({mountId: "%s", routes: %s}));', + 'site-editor-v2-wp-admin-app', + wp_json_encode( $routes, JSON_HEX_TAG | JSON_UNESCAPED_SLASHES ) + ) + ); + + // Register prerequisites style by filtering script dependencies to find registered styles + $style_dependencies = array_filter( + $asset['dependencies'], + function ( $handle ) { + return wp_style_is( $handle, 'registered' ); + } + ); + wp_register_style( 'site-editor-v2-wp-admin-prerequisites', false, $style_dependencies, $asset['version'] ); + + // Build dependencies for site-editor-v2-wp-admin module + $boot_dependencies = array( + array( + 'import' => 'static', + 'id' => '@wordpress/boot', + ), + ); + + // Add all registered routes as dependencies + foreach ( $routes as $route ) { + if ( isset( $route['route_module'] ) ) { + $boot_dependencies[] = array( + 'import' => 'static', + 'id' => $route['route_module'], + ); + } + if ( isset( $route['content_module'] ) ) { + $boot_dependencies[] = array( + 'import' => 'dynamic', + 'id' => $route['content_module'], + ); + } + } + + // Dummy script module to ensure dependencies are loaded + wp_register_script_module( + 'site-editor-v2-wp-admin', + $build_constants['build_url'] . 'pages/site-editor-v2/loader.js', + $boot_dependencies + ); + + // Enqueue the boot scripts and styles + wp_enqueue_script( 'site-editor-v2-wp-admin-prerequisites' ); + wp_enqueue_script_module( 'site-editor-v2-wp-admin' ); + wp_enqueue_style( 'site-editor-v2-wp-admin-prerequisites' ); + } +} + +/** + * Render the site-editor-v2-wp-admin page. + * Call this function from add_menu_page or add_submenu_page. + * This renders within the normal WordPress admin interface. + */ +function wp_site_editor_v2_wp_admin_render_page() { + ?> + +
+ $path ); + if ( ! empty( $content_module ) ) { + $route['content_module'] = $content_module; + } + if ( ! empty( $route_module ) ) { + $route['route_module'] = $route_module; + } + + $wp_site_editor_v2_routes[] = $route; +} + +/** + * Register a menu item for the site-editor-v2 page. + * + * @param string $id Menu item ID. + * @param string $label Display label. + * @param string $to Route path to navigate to. + * @param string $parent_id Optional. Parent menu item ID. + * @param string $parent_type Optional. Parent type: 'drilldown' or 'dropdown'. + */ +function wp_register_site_editor_v2_menu_item( $id, $label, $to, $parent_id = '', $parent_type = '' ) { + global $wp_site_editor_v2_menu_items; + + $menu_item = array( + 'id' => $id, + 'label' => $label, + 'to' => $to, + ); + + if ( ! empty( $parent_id ) ) { + $menu_item['parent'] = $parent_id; + } + + if ( ! empty( $parent_type ) && in_array( $parent_type, array( 'drilldown', 'dropdown' ), true ) ) { + $menu_item['parent_type'] = $parent_type; + } + + $wp_site_editor_v2_menu_items[] = $menu_item; +} + +/** + * Get all registered routes for the site-editor-v2 page. + * + * @return array Array of route objects. + */ +function wp_get_site_editor_v2_routes() { + global $wp_site_editor_v2_routes; + return $wp_site_editor_v2_routes ?? array(); +} + +/** + * Get all registered menu items for the site-editor-v2 page. + * + * @return array Array of menu item objects. + */ +function wp_get_site_editor_v2_menu_items() { + global $wp_site_editor_v2_menu_items; + return $wp_site_editor_v2_menu_items ?? array(); +} + +/** + * Preload REST API data for the site-editor-v2 page. + * Automatically called during page rendering. + */ +function wp_site_editor_v2_preload_data() { + // Define paths to preload - same for all pages + // Please also change packages/core-data/src/entities.js when changing this. + $preload_paths = array( + '/?_fields=description,gmt_offset,home,image_sizes,image_size_threshold,image_output_formats,jpeg_interlaced,png_interlaced,gif_interlaced,name,site_icon,site_icon_url,site_logo,timezone_string,url,page_for_posts,page_on_front,show_on_front', + array( '/wp/v2/settings', 'OPTIONS' ), + ); + + // Use rest_preload_api_request to gather the preloaded data + $preload_data = array_reduce( + $preload_paths, + 'rest_preload_api_request', + array() + ); + + // Register the preloading middleware with wp-api-fetch + wp_add_inline_script( + 'wp-api-fetch', + sprintf( + 'wp.apiFetch.use( wp.apiFetch.createPreloadingMiddleware( %s ) );', + wp_json_encode( $preload_data ) + ), + 'after' + ); +} + +/** + * Render the site-editor-v2 page. + * Call this function from add_menu_page or add_submenu_page. + */ +function wp_site_editor_v2_render_page() { + // Load build constants + $build_constants = require __DIR__ . '/../../constants.php'; + + // Set current screen + set_current_screen(); + + // Remove unwanted deprecated handler + remove_action( 'admin_head', 'wp_admin_bar_header' ); + + // Remove unwanted scripts and styles that were enqueued during `admin_init` + foreach ( wp_scripts()->queue as $script ) { + wp_dequeue_script( $script ); + } + foreach ( wp_styles()->queue as $style ) { + wp_dequeue_style( $style ); + } + + // Fire init action for extensions to register routes and menu items + do_action( 'site-editor-v2_init' ); + + // Enqueue command palette assets for boot-based pages + if ( function_exists( 'wp_enqueue_command_palette_assets' ) ) { + wp_enqueue_command_palette_assets(); + } + + // Preload REST API data + wp_site_editor_v2_preload_data(); + + // Get all registered routes and menu items + $menu_items = wp_get_site_editor_v2_menu_items(); + $routes = wp_get_site_editor_v2_routes(); + + // Get boot module asset file for dependencies + $asset_file = ABSPATH . WPINC . '/js/dist/script-modules/boot/index.min.asset.php'; + if ( file_exists( $asset_file ) ) { + $asset = require $asset_file; + + // This script serves two purposes: + // 1. It ensures all the globals that are made available to the modules are loaded. + // 2. It initializes the boot module as an inline script. + wp_register_script( 'site-editor-v2-prerequisites', '', $asset['dependencies'], $asset['version'], true ); + + // Add inline script to initialize the app + $init_modules = ["@wordpress/edit-site-init"]; + wp_add_inline_script( + 'site-editor-v2-prerequisites', + sprintf( + 'import("@wordpress/boot").then(mod => mod.init({mountId: "%s", menuItems: %s, routes: %s, initModules: %s, dashboardLink: "%s"}));', + 'site-editor-v2-app', + wp_json_encode( $menu_items, JSON_HEX_TAG | JSON_UNESCAPED_SLASHES ), + wp_json_encode( $routes, JSON_HEX_TAG | JSON_UNESCAPED_SLASHES ), + wp_json_encode( $init_modules, JSON_HEX_TAG | JSON_UNESCAPED_SLASHES ), + esc_url( admin_url( '/' ) ) + ) + ); + + // Register prerequisites style by filtering script dependencies to find registered styles + $style_dependencies = array_filter( + $asset['dependencies'], + function ( $handle ) { + return wp_style_is( $handle, 'registered' ); + } + ); + wp_register_style( 'site-editor-v2-prerequisites', false, $style_dependencies, $asset['version'] ); + + // Build dependencies for site-editor-v2 module + $boot_dependencies = array( + array( + 'import' => 'static', + 'id' => '@wordpress/boot', + ), + ); + + // Add init modules as static dependencies + $boot_dependencies[] = array( 'import' => 'static', 'id' => '@wordpress/edit-site-init' ); + + // Add all registered routes as dependencies + foreach ( $routes as $route ) { + if ( isset( $route['route_module'] ) ) { + $boot_dependencies[] = array( + 'import' => 'static', + 'id' => $route['route_module'], + ); + } + if ( isset( $route['content_module'] ) ) { + $boot_dependencies[] = array( + 'import' => 'dynamic', + 'id' => $route['content_module'], + ); + } + } + + // Dummy script module to ensure dependencies are loaded + wp_register_script_module( + 'site-editor-v2', + $build_constants['build_url'] . 'pages/site-editor-v2/loader.js', + $boot_dependencies + ); + + // Enqueue the boot scripts and styles + wp_enqueue_script( 'site-editor-v2-prerequisites' ); + wp_enqueue_script_module( 'site-editor-v2' ); + wp_enqueue_style( 'site-editor-v2-prerequisites' ); + } + + // Output the HTML + ?> + + > + + + +