@wordpress/editor 14.33.3 → 14.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/collab-sidebar/comment-author-info.js +26 -14
- package/build/components/collab-sidebar/comment-author-info.js.map +2 -2
- package/build/components/document-bar/index.js +16 -3
- package/build/components/document-bar/index.js.map +2 -2
- package/build/components/editor/index.js +23 -4
- package/build/components/editor/index.js.map +3 -3
- package/build/components/editor-interface/index.js +15 -10
- package/build/components/editor-interface/index.js.map +3 -3
- package/build/components/entities-saved-states/entity-type-list.js +19 -15
- package/build/components/entities-saved-states/entity-type-list.js.map +3 -3
- package/build/components/global-styles/block-link.js +70 -0
- package/build/components/global-styles/block-link.js.map +7 -0
- package/build/components/global-styles/header.js +54 -0
- package/build/components/global-styles/header.js.map +7 -0
- package/build/components/global-styles/hooks.js +176 -0
- package/build/components/global-styles/hooks.js.map +7 -0
- package/build/components/global-styles/index.js +138 -0
- package/build/components/global-styles/index.js.map +7 -0
- package/build/components/global-styles/menu.js +95 -0
- package/build/components/global-styles/menu.js.map +7 -0
- package/build/components/global-styles-provider/index.js +3 -49
- package/build/components/global-styles-provider/index.js.map +3 -3
- package/build/components/global-styles-renderer/index.js +55 -0
- package/build/components/global-styles-renderer/index.js.map +7 -0
- package/build/components/global-styles-sidebar/default-sidebar.js +66 -0
- package/build/components/global-styles-sidebar/default-sidebar.js.map +7 -0
- package/build/components/global-styles-sidebar/index.js +182 -0
- package/build/components/global-styles-sidebar/index.js.map +7 -0
- package/build/components/global-styles-sidebar/welcome-guide-image.js +37 -0
- package/build/components/global-styles-sidebar/welcome-guide-image.js.map +7 -0
- package/build/components/global-styles-sidebar/welcome-guide.js +143 -0
- package/build/components/global-styles-sidebar/welcome-guide.js.map +7 -0
- package/build/components/header/index.js +12 -9
- package/build/components/header/index.js.map +2 -2
- package/build/components/post-featured-image/index.js +32 -1
- package/build/components/post-featured-image/index.js.map +3 -3
- package/build/components/provider/index.js +0 -2
- package/build/components/provider/index.js.map +3 -3
- package/build/components/style-book/categories.js +86 -0
- package/build/components/style-book/categories.js.map +7 -0
- package/build/components/style-book/color-examples.js +64 -0
- package/build/components/style-book/color-examples.js.map +7 -0
- package/build/components/style-book/constants.js +319 -0
- package/build/components/style-book/constants.js.map +7 -0
- package/build/components/style-book/duotone-examples.js +68 -0
- package/build/components/style-book/duotone-examples.js.map +7 -0
- package/build/components/style-book/examples.js +237 -0
- package/build/components/style-book/examples.js.map +7 -0
- package/build/components/style-book/index.js +627 -0
- package/build/components/style-book/index.js.map +7 -0
- package/build/components/style-book/types.js +17 -0
- package/build/components/style-book/types.js.map +7 -0
- package/build/components/styles-canvas/index.js +138 -0
- package/build/components/styles-canvas/index.js.map +7 -0
- package/build/components/styles-canvas/revisions.js +121 -0
- package/build/components/styles-canvas/revisions.js.map +7 -0
- package/build/components/styles-canvas/style-book.js +68 -0
- package/build/components/styles-canvas/style-book.js.map +7 -0
- package/build/components/visual-editor/index.js +4 -3
- package/build/components/visual-editor/index.js.map +2 -2
- package/build/dataviews/fields/content-preview/content-preview-view.js.map +2 -2
- package/build/hooks/index.js +1 -0
- package/build/hooks/index.js.map +2 -2
- package/build/hooks/media-upload.js +15 -4
- package/build/hooks/media-upload.js.map +3 -3
- package/build/hooks/push-changes-to-global-styles/index.js +322 -0
- package/build/hooks/push-changes-to-global-styles/index.js.map +7 -0
- package/build/hooks/use-global-styles-output.js +74 -0
- package/build/hooks/use-global-styles-output.js.map +7 -0
- package/build/private-apis.js +10 -5
- package/build/private-apis.js.map +3 -3
- package/build/store/private-actions.js +23 -0
- package/build/store/private-actions.js.map +2 -2
- package/build/store/private-selectors.js +10 -0
- package/build/store/private-selectors.js.map +2 -2
- package/build/store/reducer.js +24 -0
- package/build/store/reducer.js.map +2 -2
- package/build/{components/editor-interface/content-slot-fill.js → utils/set-nested-value.js} +24 -10
- package/build/utils/set-nested-value.js.map +7 -0
- package/build-module/components/collab-sidebar/comment-author-info.js +26 -14
- package/build-module/components/collab-sidebar/comment-author-info.js.map +2 -2
- package/build-module/components/document-bar/index.js +16 -3
- package/build-module/components/document-bar/index.js.map +2 -2
- package/build-module/components/editor/index.js +23 -4
- package/build-module/components/editor/index.js.map +2 -2
- package/build-module/components/editor-interface/index.js +15 -10
- package/build-module/components/editor-interface/index.js.map +2 -2
- package/build-module/components/entities-saved-states/entity-type-list.js +18 -14
- package/build-module/components/entities-saved-states/entity-type-list.js.map +2 -2
- package/build-module/components/global-styles/block-link.js +46 -0
- package/build-module/components/global-styles/block-link.js.map +7 -0
- package/build-module/components/global-styles/header.js +41 -0
- package/build-module/components/global-styles/header.js.map +7 -0
- package/build-module/components/global-styles/hooks.js +154 -0
- package/build-module/components/global-styles/hooks.js.map +7 -0
- package/build-module/components/global-styles/index.js +112 -0
- package/build-module/components/global-styles/index.js.map +7 -0
- package/build-module/components/global-styles/menu.js +71 -0
- package/build-module/components/global-styles/menu.js.map +7 -0
- package/build-module/components/global-styles-provider/index.js +3 -37
- package/build-module/components/global-styles-provider/index.js.map +2 -2
- package/build-module/components/global-styles-renderer/index.js +31 -0
- package/build-module/components/global-styles-renderer/index.js.map +7 -0
- package/build-module/components/global-styles-sidebar/default-sidebar.js +49 -0
- package/build-module/components/global-styles-sidebar/default-sidebar.js.map +7 -0
- package/build-module/components/global-styles-sidebar/index.js +152 -0
- package/build-module/components/global-styles-sidebar/index.js.map +7 -0
- package/build-module/components/global-styles-sidebar/welcome-guide-image.js +17 -0
- package/build-module/components/global-styles-sidebar/welcome-guide-image.js.map +7 -0
- package/build-module/components/global-styles-sidebar/welcome-guide.js +113 -0
- package/build-module/components/global-styles-sidebar/welcome-guide.js.map +7 -0
- package/build-module/components/header/index.js +12 -9
- package/build-module/components/header/index.js.map +2 -2
- package/build-module/components/post-featured-image/index.js +35 -3
- package/build-module/components/post-featured-image/index.js.map +2 -2
- package/build-module/components/provider/index.js +0 -2
- package/build-module/components/provider/index.js.map +2 -2
- package/build-module/components/style-book/categories.js +64 -0
- package/build-module/components/style-book/categories.js.map +7 -0
- package/build-module/components/style-book/color-examples.js +37 -0
- package/build-module/components/style-book/color-examples.js.map +7 -0
- package/build-module/components/style-book/constants.js +290 -0
- package/build-module/components/style-book/constants.js.map +7 -0
- package/build-module/components/style-book/duotone-examples.js +48 -0
- package/build-module/components/style-book/duotone-examples.js.map +7 -0
- package/build-module/components/style-book/examples.js +208 -0
- package/build-module/components/style-book/examples.js.map +7 -0
- package/build-module/components/style-book/index.js +618 -0
- package/build-module/components/style-book/index.js.map +7 -0
- package/build-module/components/style-book/types.js +1 -0
- package/build-module/components/style-book/types.js.map +7 -0
- package/build-module/components/styles-canvas/index.js +104 -0
- package/build-module/components/styles-canvas/index.js.map +7 -0
- package/build-module/components/styles-canvas/revisions.js +107 -0
- package/build-module/components/styles-canvas/revisions.js.map +7 -0
- package/build-module/components/styles-canvas/style-book.js +38 -0
- package/build-module/components/styles-canvas/style-book.js.map +7 -0
- package/build-module/components/visual-editor/index.js +4 -3
- package/build-module/components/visual-editor/index.js.map +2 -2
- package/build-module/dataviews/fields/content-preview/content-preview-view.js.map +2 -2
- package/build-module/hooks/index.js +1 -0
- package/build-module/hooks/index.js.map +2 -2
- package/build-module/hooks/media-upload.js +19 -5
- package/build-module/hooks/media-upload.js.map +2 -2
- package/build-module/hooks/push-changes-to-global-styles/index.js +309 -0
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +7 -0
- package/build-module/hooks/use-global-styles-output.js +49 -0
- package/build-module/hooks/use-global-styles-output.js.map +7 -0
- package/build-module/private-apis.js +10 -8
- package/build-module/private-apis.js.map +2 -2
- package/build-module/store/private-actions.js +20 -0
- package/build-module/store/private-actions.js.map +2 -2
- package/build-module/store/private-selectors.js +8 -0
- package/build-module/store/private-selectors.js.map +2 -2
- package/build-module/store/reducer.js +22 -0
- package/build-module/store/reducer.js.map +2 -2
- package/build-module/utils/set-nested-value.js +23 -0
- package/build-module/utils/set-nested-value.js.map +7 -0
- package/build-style/style-rtl.css +3017 -11
- package/build-style/style.css +3018 -11
- package/build-types/components/collab-sidebar/comment-author-info.d.ts +5 -16
- package/build-types/components/collab-sidebar/comment-author-info.d.ts.map +1 -1
- package/build-types/components/document-bar/index.d.ts +2 -2
- package/build-types/components/document-bar/index.d.ts.map +1 -1
- package/build-types/components/editor/index.d.ts.map +1 -1
- package/build-types/components/editor-interface/index.d.ts +1 -3
- package/build-types/components/editor-interface/index.d.ts.map +1 -1
- package/build-types/components/entities-saved-states/entity-type-list.d.ts.map +1 -1
- package/build-types/components/global-styles/block-link.d.ts +12 -0
- package/build-types/components/global-styles/block-link.d.ts.map +1 -0
- package/build-types/components/global-styles/header.d.ts +7 -0
- package/build-types/components/global-styles/header.d.ts.map +1 -0
- package/build-types/components/global-styles/hooks.d.ts +24 -0
- package/build-types/components/global-styles/hooks.d.ts.map +1 -0
- package/build-types/components/global-styles/index.d.ts +6 -0
- package/build-types/components/global-styles/index.d.ts.map +1 -0
- package/build-types/components/global-styles/menu.d.ts +13 -0
- package/build-types/components/global-styles/menu.d.ts.map +1 -0
- package/build-types/components/global-styles-provider/index.d.ts +1 -5
- package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
- package/build-types/components/global-styles-renderer/index.d.ts +4 -0
- package/build-types/components/global-styles-renderer/index.d.ts.map +1 -0
- package/build-types/components/global-styles-sidebar/default-sidebar.d.ts +13 -0
- package/build-types/components/global-styles-sidebar/default-sidebar.d.ts.map +1 -0
- package/build-types/components/global-styles-sidebar/index.d.ts +2 -0
- package/build-types/components/global-styles-sidebar/index.d.ts.map +1 -0
- package/build-types/components/global-styles-sidebar/welcome-guide-image.d.ts +5 -0
- package/build-types/components/global-styles-sidebar/welcome-guide-image.d.ts.map +1 -0
- package/build-types/components/global-styles-sidebar/welcome-guide.d.ts +2 -0
- package/build-types/components/global-styles-sidebar/welcome-guide.d.ts.map +1 -0
- package/build-types/components/header/index.d.ts +1 -3
- package/build-types/components/header/index.d.ts.map +1 -1
- package/build-types/components/provider/index.d.ts.map +1 -1
- package/build-types/components/style-book/categories.d.ts +18 -0
- package/build-types/components/style-book/categories.d.ts.map +1 -0
- package/build-types/components/style-book/color-examples.d.ts +7 -0
- package/build-types/components/style-book/color-examples.d.ts.map +1 -0
- package/build-types/components/style-book/constants.d.ts +11 -0
- package/build-types/components/style-book/constants.d.ts.map +1 -0
- package/build-types/components/style-book/duotone-examples.d.ts +9 -0
- package/build-types/components/style-book/duotone-examples.d.ts.map +1 -0
- package/build-types/components/style-book/examples.d.ts +12 -0
- package/build-types/components/style-book/examples.d.ts.map +1 -0
- package/build-types/components/style-book/index.d.ts +31 -0
- package/build-types/components/style-book/index.d.ts.map +1 -0
- package/build-types/components/style-book/types.d.ts +72 -0
- package/build-types/components/style-book/types.d.ts.map +1 -0
- package/build-types/components/styles-canvas/index.d.ts +16 -0
- package/build-types/components/styles-canvas/index.d.ts.map +1 -0
- package/build-types/components/styles-canvas/revisions.d.ts +5 -0
- package/build-types/components/styles-canvas/revisions.d.ts.map +1 -0
- package/build-types/components/styles-canvas/style-book.d.ts +6 -0
- package/build-types/components/styles-canvas/style-book.d.ts.map +1 -0
- package/build-types/components/visual-editor/index.d.ts +1 -2
- package/build-types/components/visual-editor/index.d.ts.map +1 -1
- package/build-types/dataviews/fields/content-preview/content-preview-view.d.ts.map +1 -1
- package/build-types/hooks/push-changes-to-global-styles/index.d.ts +2 -0
- package/build-types/hooks/push-changes-to-global-styles/index.d.ts.map +1 -0
- package/build-types/hooks/use-global-styles-output.d.ts +18 -0
- package/build-types/hooks/use-global-styles-output.d.ts.map +1 -0
- package/build-types/private-apis.d.ts.map +1 -1
- package/build-types/store/private-actions.d.ts +20 -0
- package/build-types/store/private-actions.d.ts.map +1 -1
- package/build-types/store/private-selectors.d.ts +14 -0
- package/build-types/store/private-selectors.d.ts.map +1 -1
- package/build-types/store/reducer.d.ts +20 -0
- package/build-types/store/reducer.d.ts.map +1 -1
- package/build-types/utils/set-nested-value.d.ts +20 -0
- package/build-types/utils/set-nested-value.d.ts.map +1 -0
- package/package.json +40 -40
- package/src/components/collab-sidebar/comment-author-info.js +32 -25
- package/src/components/collab-sidebar/style.scss +1 -1
- package/src/components/document-bar/index.js +18 -3
- package/src/components/editor/index.js +25 -1
- package/src/components/editor-help/style.scss +1 -1
- package/src/components/editor-interface/index.js +40 -39
- package/src/components/entities-saved-states/entity-type-list.js +19 -17
- package/src/components/global-styles/block-link.js +65 -0
- package/src/components/global-styles/header.js +48 -0
- package/src/components/global-styles/hooks.js +216 -0
- package/src/components/global-styles/index.js +125 -0
- package/src/components/global-styles/menu.js +101 -0
- package/src/components/global-styles/style.scss +11 -0
- package/src/components/global-styles-provider/index.js +3 -45
- package/src/components/global-styles-renderer/index.js +39 -0
- package/src/components/global-styles-sidebar/default-sidebar.js +46 -0
- package/src/components/global-styles-sidebar/index.js +177 -0
- package/src/components/global-styles-sidebar/style.scss +119 -0
- package/src/components/global-styles-sidebar/welcome-guide-image.js +11 -0
- package/src/components/global-styles-sidebar/welcome-guide.js +136 -0
- package/src/components/header/index.js +11 -6
- package/src/components/post-featured-image/index.js +44 -1
- package/src/components/post-last-revision/style.scss +1 -1
- package/src/components/post-panel-row/style.scss +1 -0
- package/src/components/post-publish-panel/style.scss +1 -1
- package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +2 -2
- package/src/components/provider/index.js +0 -2
- package/src/components/style-book/categories.ts +97 -0
- package/src/components/style-book/color-examples.tsx +56 -0
- package/src/components/style-book/constants.ts +308 -0
- package/src/components/style-book/duotone-examples.tsx +56 -0
- package/src/components/style-book/examples.tsx +273 -0
- package/src/components/style-book/index.js +794 -0
- package/src/components/style-book/style.scss +44 -0
- package/src/components/style-book/test/categories.js +166 -0
- package/src/components/style-book/types.ts +80 -0
- package/src/components/styles-canvas/index.js +126 -0
- package/src/components/styles-canvas/revisions.js +144 -0
- package/src/components/styles-canvas/style-book.js +57 -0
- package/src/components/styles-canvas/style.scss +40 -0
- package/src/components/visual-editor/index.js +2 -1
- package/src/dataviews/fields/content-preview/content-preview-view.tsx +2 -0
- package/src/hooks/index.js +1 -0
- package/src/hooks/media-upload.js +25 -5
- package/src/hooks/push-changes-to-global-styles/index.js +391 -0
- package/src/hooks/push-changes-to-global-styles/style.scss +4 -0
- package/src/hooks/use-global-styles-output.js +76 -0
- package/src/private-apis.js +10 -8
- package/src/store/private-actions.js +37 -0
- package/src/store/private-selectors.js +20 -0
- package/src/store/reducer.js +36 -0
- package/src/style.scss +7 -1
- package/src/utils/set-nested-value.js +39 -0
- package/tsconfig.json +3 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/block-settings-menu/content-only-settings-menu.js +0 -186
- package/build/components/block-settings-menu/content-only-settings-menu.js.map +0 -7
- package/build/components/editor-interface/content-slot-fill.js.map +0 -7
- package/build-module/components/block-settings-menu/content-only-settings-menu.js +0 -161
- package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +0 -7
- package/build-module/components/editor-interface/content-slot-fill.js +0 -9
- package/build-module/components/editor-interface/content-slot-fill.js.map +0 -7
- package/build-types/components/block-settings-menu/content-only-settings-menu.d.ts +0 -2
- package/build-types/components/block-settings-menu/content-only-settings-menu.d.ts.map +0 -1
- package/build-types/components/editor-interface/content-slot-fill.d.ts +0 -14
- package/build-types/components/editor-interface/content-slot-fill.d.ts.map +0 -1
- package/src/components/block-settings-menu/content-only-settings-menu.js +0 -185
- package/src/components/block-settings-menu/content-only-settings-menu.native.js +0 -4
- package/src/components/block-settings-menu/style.scss +0 -6
- package/src/components/editor-interface/content-slot-fill.js +0 -10
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __, sprintf } from '@wordpress/i18n';
|
|
5
|
+
import {
|
|
6
|
+
getBlockType,
|
|
7
|
+
getBlockTypes,
|
|
8
|
+
getBlockFromExample,
|
|
9
|
+
createBlock,
|
|
10
|
+
// @wordpress/blocks imports are not typed.
|
|
11
|
+
// @ts-expect-error
|
|
12
|
+
} from '@wordpress/blocks';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Internal dependencies
|
|
16
|
+
*/
|
|
17
|
+
import type {
|
|
18
|
+
BlockExample,
|
|
19
|
+
ColorOrigin,
|
|
20
|
+
MultiOriginPalettes,
|
|
21
|
+
BlockType,
|
|
22
|
+
} from './types';
|
|
23
|
+
import ColorExamples from './color-examples';
|
|
24
|
+
import DuotoneExamples from './duotone-examples';
|
|
25
|
+
import { STYLE_BOOK_COLOR_GROUPS } from './constants';
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Returns examples color examples for each origin
|
|
29
|
+
* e.g. Core (Default), Theme, and User.
|
|
30
|
+
*
|
|
31
|
+
* @param {MultiOriginPalettes} colors Global Styles color palettes per origin.
|
|
32
|
+
* @return {BlockExample[]} An array of color block examples.
|
|
33
|
+
*/
|
|
34
|
+
function getColorExamples( colors: MultiOriginPalettes ): BlockExample[] {
|
|
35
|
+
if ( ! colors ) {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const examples: BlockExample[] = [];
|
|
40
|
+
|
|
41
|
+
STYLE_BOOK_COLOR_GROUPS.forEach( ( group ) => {
|
|
42
|
+
const palette = colors[ group.type as keyof MultiOriginPalettes ];
|
|
43
|
+
const paletteFiltered = Array.isArray( palette )
|
|
44
|
+
? palette.find(
|
|
45
|
+
( origin: ColorOrigin ) => origin.slug === group.origin
|
|
46
|
+
)
|
|
47
|
+
: undefined;
|
|
48
|
+
|
|
49
|
+
if ( paletteFiltered?.[ group.type ] ) {
|
|
50
|
+
const example: BlockExample = {
|
|
51
|
+
name: group.slug,
|
|
52
|
+
title: group.title,
|
|
53
|
+
category: 'colors',
|
|
54
|
+
};
|
|
55
|
+
if ( group.type === 'duotones' ) {
|
|
56
|
+
example.content = (
|
|
57
|
+
<DuotoneExamples
|
|
58
|
+
duotones={ paletteFiltered[ group.type ] }
|
|
59
|
+
/>
|
|
60
|
+
);
|
|
61
|
+
examples.push( example );
|
|
62
|
+
} else {
|
|
63
|
+
example.content = (
|
|
64
|
+
<ColorExamples
|
|
65
|
+
colors={ paletteFiltered[ group.type ] }
|
|
66
|
+
type={ group.type }
|
|
67
|
+
/>
|
|
68
|
+
);
|
|
69
|
+
examples.push( example );
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
} );
|
|
73
|
+
|
|
74
|
+
return examples;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Returns examples for the overview page.
|
|
79
|
+
*
|
|
80
|
+
* @param {MultiOriginPalettes} colors Global Styles color palettes per origin.
|
|
81
|
+
* @return {BlockExample[]} An array of block examples.
|
|
82
|
+
*/
|
|
83
|
+
function getOverviewBlockExamples(
|
|
84
|
+
colors: MultiOriginPalettes
|
|
85
|
+
): BlockExample[] {
|
|
86
|
+
const examples: BlockExample[] = [];
|
|
87
|
+
|
|
88
|
+
// Get theme palette from colors if they exist.
|
|
89
|
+
const themePalette = Array.isArray( colors?.colors )
|
|
90
|
+
? colors.colors.find(
|
|
91
|
+
( origin: ColorOrigin ) => origin.slug === 'theme'
|
|
92
|
+
)
|
|
93
|
+
: undefined;
|
|
94
|
+
|
|
95
|
+
if ( themePalette ) {
|
|
96
|
+
const themeColorexample: BlockExample = {
|
|
97
|
+
name: 'theme-colors',
|
|
98
|
+
title: __( 'Colors' ),
|
|
99
|
+
category: 'overview',
|
|
100
|
+
content: (
|
|
101
|
+
<ColorExamples
|
|
102
|
+
colors={ themePalette.colors }
|
|
103
|
+
type="colors"
|
|
104
|
+
templateColumns="repeat(auto-fill, minmax( 200px, 1fr ))"
|
|
105
|
+
itemHeight="32px"
|
|
106
|
+
/>
|
|
107
|
+
),
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
examples.push( themeColorexample );
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// Get examples for typography blocks.
|
|
114
|
+
const typographyBlockExamples: BlockType[] = [];
|
|
115
|
+
|
|
116
|
+
if ( getBlockType( 'core/heading' ) ) {
|
|
117
|
+
const headingBlock = createBlock( 'core/heading', {
|
|
118
|
+
// translators: Typography example. Your local alphabet, numbers and some common special characters.
|
|
119
|
+
content: __(
|
|
120
|
+
`AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789X{(…)},.-<>?!*&:/A@HELFO™©`
|
|
121
|
+
),
|
|
122
|
+
level: 1,
|
|
123
|
+
} );
|
|
124
|
+
typographyBlockExamples.push( headingBlock );
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if ( getBlockType( 'core/paragraph' ) ) {
|
|
128
|
+
const firstParagraphBlock = createBlock( 'core/paragraph', {
|
|
129
|
+
content: __(
|
|
130
|
+
`A paragraph in a website refers to a distinct block of text that is used to present and organize information. It is a fundamental unit of content in web design and is typically composed of a group of related sentences or thoughts focused on a particular topic or idea. Paragraphs play a crucial role in improving the readability and user experience of a website. They break down the text into smaller, manageable chunks, allowing readers to scan the content more easily.`
|
|
131
|
+
),
|
|
132
|
+
} );
|
|
133
|
+
const secondParagraphBlock = createBlock( 'core/paragraph', {
|
|
134
|
+
content: __(
|
|
135
|
+
`Additionally, paragraphs help structure the flow of information and provide logical breaks between different concepts or pieces of information. In terms of formatting, paragraphs in websites are commonly denoted by a vertical gap or indentation between each block of text. This visual separation helps visually distinguish one paragraph from another, creating a clear and organized layout that guides the reader through the content smoothly.`
|
|
136
|
+
),
|
|
137
|
+
} );
|
|
138
|
+
|
|
139
|
+
if ( getBlockType( 'core/group' ) ) {
|
|
140
|
+
const groupBlock = createBlock(
|
|
141
|
+
'core/group',
|
|
142
|
+
{
|
|
143
|
+
layout: {
|
|
144
|
+
type: 'grid',
|
|
145
|
+
columnCount: 2,
|
|
146
|
+
minimumColumnWidth: '12rem',
|
|
147
|
+
},
|
|
148
|
+
style: {
|
|
149
|
+
spacing: {
|
|
150
|
+
blockGap: '1.5rem',
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
},
|
|
154
|
+
[ firstParagraphBlock, secondParagraphBlock ]
|
|
155
|
+
);
|
|
156
|
+
typographyBlockExamples.push( groupBlock );
|
|
157
|
+
} else {
|
|
158
|
+
typographyBlockExamples.push( firstParagraphBlock );
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
if ( !! typographyBlockExamples.length ) {
|
|
163
|
+
examples.push( {
|
|
164
|
+
name: 'typography',
|
|
165
|
+
title: __( 'Typography' ),
|
|
166
|
+
category: 'overview',
|
|
167
|
+
blocks: typographyBlockExamples,
|
|
168
|
+
} );
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
const otherBlockExamples = [
|
|
172
|
+
'core/image',
|
|
173
|
+
'core/separator',
|
|
174
|
+
'core/buttons',
|
|
175
|
+
'core/pullquote',
|
|
176
|
+
'core/search',
|
|
177
|
+
];
|
|
178
|
+
|
|
179
|
+
// Get examples for other blocks and put them in order of above array.
|
|
180
|
+
otherBlockExamples.forEach( ( blockName ) => {
|
|
181
|
+
const blockType = getBlockType( blockName );
|
|
182
|
+
if ( blockType && blockType.example ) {
|
|
183
|
+
const blockExample: BlockExample = {
|
|
184
|
+
name: blockName,
|
|
185
|
+
title: blockType.title,
|
|
186
|
+
category: 'overview',
|
|
187
|
+
/*
|
|
188
|
+
* CSS generated from style attributes will take precedence over global styles CSS,
|
|
189
|
+
* so remove the style attribute from the example to ensure the example
|
|
190
|
+
* demonstrates changes to global styles.
|
|
191
|
+
*/
|
|
192
|
+
blocks: getBlockFromExample( blockName, {
|
|
193
|
+
...blockType.example,
|
|
194
|
+
attributes: {
|
|
195
|
+
...blockType.example.attributes,
|
|
196
|
+
style: undefined,
|
|
197
|
+
},
|
|
198
|
+
} ),
|
|
199
|
+
};
|
|
200
|
+
examples.push( blockExample );
|
|
201
|
+
}
|
|
202
|
+
} );
|
|
203
|
+
|
|
204
|
+
return examples;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Returns a list of examples for registered block types.
|
|
209
|
+
*
|
|
210
|
+
* @param {MultiOriginPalettes} colors Global styles colors grouped by origin e.g. Core, Theme, and User.
|
|
211
|
+
* @return {BlockExample[]} An array of block examples.
|
|
212
|
+
*/
|
|
213
|
+
export function getExamples( colors: MultiOriginPalettes ): BlockExample[] {
|
|
214
|
+
const nonHeadingBlockExamples = getBlockTypes()
|
|
215
|
+
.filter( ( blockType: BlockType ) => {
|
|
216
|
+
const { name, example, supports } = blockType;
|
|
217
|
+
return (
|
|
218
|
+
name !== 'core/heading' &&
|
|
219
|
+
!! example &&
|
|
220
|
+
supports?.inserter !== false
|
|
221
|
+
);
|
|
222
|
+
} )
|
|
223
|
+
.map( ( blockType: BlockType ) => ( {
|
|
224
|
+
name: blockType.name,
|
|
225
|
+
title: blockType.title,
|
|
226
|
+
category: blockType.category,
|
|
227
|
+
/*
|
|
228
|
+
* CSS generated from style attributes will take precedence over global styles CSS,
|
|
229
|
+
* so remove the style attribute from the example to ensure the example
|
|
230
|
+
* demonstrates changes to global styles.
|
|
231
|
+
*/
|
|
232
|
+
blocks: getBlockFromExample( blockType.name, {
|
|
233
|
+
...blockType.example,
|
|
234
|
+
attributes: {
|
|
235
|
+
...blockType.example.attributes,
|
|
236
|
+
style: undefined,
|
|
237
|
+
},
|
|
238
|
+
} ),
|
|
239
|
+
} ) );
|
|
240
|
+
const isHeadingBlockRegistered = !! getBlockType( 'core/heading' );
|
|
241
|
+
|
|
242
|
+
if ( ! isHeadingBlockRegistered ) {
|
|
243
|
+
return nonHeadingBlockExamples;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
// Use our own example for the Heading block so that we can show multiple
|
|
247
|
+
// heading levels.
|
|
248
|
+
const headingsExample = {
|
|
249
|
+
name: 'core/heading',
|
|
250
|
+
title: __( 'Headings' ),
|
|
251
|
+
category: 'text',
|
|
252
|
+
blocks: [ 1, 2, 3, 4, 5, 6 ].map( ( level ) => {
|
|
253
|
+
return createBlock( 'core/heading', {
|
|
254
|
+
content: sprintf(
|
|
255
|
+
// translators: %d: heading level e.g: "1", "2", "3"
|
|
256
|
+
__( 'Heading %d' ),
|
|
257
|
+
level
|
|
258
|
+
),
|
|
259
|
+
level,
|
|
260
|
+
} );
|
|
261
|
+
} ),
|
|
262
|
+
};
|
|
263
|
+
const colorExamples = getColorExamples( colors );
|
|
264
|
+
|
|
265
|
+
const overviewBlockExamples = getOverviewBlockExamples( colors );
|
|
266
|
+
|
|
267
|
+
return [
|
|
268
|
+
headingsExample,
|
|
269
|
+
...colorExamples,
|
|
270
|
+
...nonHeadingBlockExamples,
|
|
271
|
+
...overviewBlockExamples,
|
|
272
|
+
];
|
|
273
|
+
}
|