@wordpress/block-library 8.18.1-next.5a1d1283.0 → 8.19.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/README.md +1 -1
- package/build/block/edit.js +53 -2
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +7 -4
- package/build/button/edit.js.map +1 -1
- package/build/button/index.js +11 -2
- package/build/button/index.js.map +1 -1
- package/build/button/save.js +10 -4
- package/build/button/save.js.map +1 -1
- package/build/buttons/edit.js +12 -3
- package/build/buttons/edit.js.map +1 -1
- package/build/code/edit.js +8 -2
- package/build/code/edit.js.map +1 -1
- package/build/code/index.js +7 -1
- package/build/code/index.js.map +1 -1
- package/build/column/index.js +1 -0
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +2 -0
- package/build/columns/index.js.map +1 -1
- package/build/file/edit.native.js +1 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/index.js +2 -1
- package/build/file/index.js.map +1 -1
- package/build/file/utils/index.js +1 -15
- package/build/file/utils/index.js.map +1 -1
- package/build/file/view.js +14 -1
- package/build/file/view.js.map +1 -1
- package/build/footnotes/edit.js +12 -2
- package/build/footnotes/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/group/edit.js +0 -1
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +4 -0
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +0 -1
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +2 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +3 -6
- package/build/heading/transforms.js.map +1 -1
- package/build/image/deprecated.js +191 -7
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +27 -12
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +75 -40
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +7 -4
- package/build/image/index.js.map +1 -1
- package/build/image/{view-interactivity.js → view.js} +1 -1
- package/build/image/view.js.map +1 -0
- package/build/list/deprecated.js +93 -1
- package/build/list/deprecated.js.map +1 -1
- package/build/list/edit.js +10 -10
- package/build/list/edit.js.map +1 -1
- package/build/list/ordered-list-settings.js +10 -10
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list/save.js +4 -2
- package/build/list/save.js.map +1 -1
- package/build/list/utils.js +21 -2
- package/build/list/utils.js.map +1 -1
- package/build/navigation/constants.js +1 -1
- package/build/navigation/constants.js.map +1 -1
- package/build/navigation/index.js +4 -2
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/view.js +168 -82
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +3 -9
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/transforms.js +24 -0
- package/build/navigation-link/transforms.js.map +1 -1
- package/build/page-list/edit.js +2 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +10 -2
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +5 -3
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-content/edit.js +8 -7
- package/build/post-content/edit.js.map +1 -1
- package/build/post-content/index.js +3 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-featured-image/overlay.js +2 -1
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/preformatted/edit.js +4 -1
- package/build/preformatted/edit.js.map +1 -1
- package/build/preformatted/index.js +1 -1
- package/build/preformatted/index.js.map +1 -1
- package/build/pullquote/deprecated.js +6 -7
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +56 -0
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +42 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -0
- package/build/query/edit/inspector-controls/index.js +8 -25
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +8 -2
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/utils.js +19 -0
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +4 -5
- package/build/query/view.js.map +1 -1
- package/build/search/index.js +1 -0
- package/build/search/index.js.map +1 -1
- package/build/search/view.js +81 -150
- package/build/search/view.js.map +1 -1
- package/build/social-link/edit.native.js +3 -1
- package/build/social-link/edit.native.js.map +1 -1
- package/build/table/edit.js +7 -7
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +2 -130
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/hooks.js +145 -0
- package/build/table-of-contents/hooks.js.map +1 -0
- package/build/table-of-contents/index.js +2 -1
- package/build/table-of-contents/index.js.map +1 -1
- package/build/verse/edit.js +4 -1
- package/build/verse/edit.js.map +1 -1
- package/build/verse/index.js +1 -1
- package/build/verse/index.js.map +1 -1
- package/build-module/block/edit.js +54 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +7 -4
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/index.js +11 -2
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/save.js +10 -4
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/edit.js +12 -3
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/code/edit.js +8 -2
- package/build-module/code/edit.js.map +1 -1
- package/build-module/code/index.js +7 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/column/index.js +1 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +2 -0
- package/build-module/columns/index.js.map +1 -1
- package/build-module/file/edit.native.js +1 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/index.js +2 -1
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/utils/index.js +0 -13
- package/build-module/file/utils/index.js.map +1 -1
- package/build-module/file/view.js +14 -2
- package/build-module/file/view.js.map +1 -1
- package/build-module/footnotes/edit.js +12 -2
- package/build-module/footnotes/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/group/edit.js +0 -1
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +4 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/edit.js +0 -1
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +2 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +3 -6
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/image/deprecated.js +191 -7
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +27 -12
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +77 -42
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +7 -4
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/{view-interactivity.js → view.js} +1 -1
- package/build-module/image/view.js.map +1 -0
- package/build-module/list/deprecated.js +95 -3
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/edit.js +10 -10
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +10 -10
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list/save.js +4 -2
- package/build-module/list/save.js.map +1 -1
- package/build-module/list/utils.js +20 -2
- package/build-module/list/utils.js.map +1 -1
- package/build-module/navigation/constants.js +1 -1
- package/build-module/navigation/constants.js.map +1 -1
- package/build-module/navigation/index.js +4 -2
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/view.js +168 -83
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +3 -9
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/transforms.js +24 -0
- package/build-module/navigation-link/transforms.js.map +1 -1
- package/build-module/page-list/edit.js +2 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +10 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +5 -3
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-content/edit.js +8 -7
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-content/index.js +3 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +2 -1
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/preformatted/edit.js +4 -1
- package/build-module/preformatted/edit.js.map +1 -1
- package/build-module/preformatted/index.js +1 -1
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/pullquote/deprecated.js +6 -7
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +50 -0
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +35 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/index.js +9 -26
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +8 -2
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/utils.js +17 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +4 -5
- package/build-module/query/view.js.map +1 -1
- package/build-module/search/index.js +1 -0
- package/build-module/search/index.js.map +1 -1
- package/build-module/search/view.js +81 -151
- package/build-module/search/view.js.map +1 -1
- package/build-module/social-link/edit.native.js +3 -1
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/table/edit.js +7 -7
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +3 -131
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/hooks.js +137 -0
- package/build-module/table-of-contents/hooks.js.map +1 -0
- package/build-module/table-of-contents/index.js +2 -1
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/verse/edit.js +4 -1
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/index.js +1 -1
- package/build-module/verse/index.js.map +1 -1
- package/build-style/cover/style-rtl.css +9 -0
- package/build-style/cover/style.css +9 -0
- package/build-style/editor-rtl.css +15 -9
- package/build-style/editor.css +15 -9
- package/build-style/file/style-rtl.css +5 -0
- package/build-style/file/style.css +5 -0
- package/build-style/heading/style-rtl.css +13 -0
- package/build-style/heading/style.css +13 -0
- package/build-style/navigation-link/editor-rtl.css +0 -9
- package/build-style/navigation-link/editor.css +0 -9
- package/build-style/paragraph/editor-rtl.css +5 -0
- package/build-style/paragraph/editor.css +5 -0
- package/build-style/paragraph/style-rtl.css +5 -0
- package/build-style/paragraph/style.css +5 -0
- package/build-style/post-navigation-link/style-rtl.css +3 -0
- package/build-style/post-navigation-link/style.css +3 -0
- package/build-style/query/editor-rtl.css +10 -0
- package/build-style/query/editor.css +10 -0
- package/build-style/query/style-rtl.css +1 -1
- package/build-style/query/style.css +1 -1
- package/build-style/reset-rtl.css +27 -27
- package/build-style/reset.css +27 -27
- package/build-style/style-rtl.css +35 -0
- package/build-style/style.css +35 -0
- package/package.json +32 -33
- package/src/audio/test/__snapshots__/edit.native.js.snap +78 -106
- package/src/avatar/index.php +2 -2
- package/src/block/edit.js +58 -2
- package/src/block/test/edit.native.js +2 -3
- package/src/button/block.json +11 -2
- package/src/button/edit.js +27 -11
- package/src/button/save.js +10 -4
- package/src/buttons/edit.js +13 -3
- package/src/buttons/test/edit.native.js +28 -24
- package/src/calendar/index.php +2 -2
- package/src/code/block.json +2 -1
- package/src/code/edit.js +13 -1
- package/src/code/index.js +5 -0
- package/src/column/block.json +1 -0
- package/src/columns/block.json +2 -0
- package/src/comment-template/index.php +1 -1
- package/src/comments-pagination-next/index.php +1 -1
- package/src/comments-pagination-previous/index.php +1 -1
- package/src/cover/style.scss +12 -1
- package/src/cover/test/edit.js +7 -7
- package/src/cover/test/edit.native.js +18 -27
- package/src/embed/test/index.native.js +30 -45
- package/src/file/block.json +2 -1
- package/src/file/edit.native.js +1 -1
- package/src/file/index.php +19 -21
- package/src/file/style.scss +6 -1
- package/src/file/test/__snapshots__/edit.native.js.snap +162 -218
- package/src/file/utils/index.js +0 -15
- package/src/file/view.js +14 -5
- package/src/footnotes/edit.js +13 -1
- package/src/gallery/edit.js +1 -1
- package/src/gallery/index.php +1 -1
- package/src/group/block.json +4 -0
- package/src/group/edit.js +0 -1
- package/src/heading/block.json +2 -0
- package/src/heading/edit.js +0 -1
- package/src/heading/style.scss +4 -0
- package/src/heading/transforms.js +1 -6
- package/src/image/block.json +7 -4
- package/src/image/deprecated.js +210 -7
- package/src/image/edit.js +43 -29
- package/src/image/image.js +86 -43
- package/src/image/index.php +251 -28
- package/src/latest-posts/index.php +1 -1
- package/src/list/deprecated.js +84 -3
- package/src/list/edit.js +6 -3
- package/src/list/ordered-list-settings.js +20 -5
- package/src/list/save.js +10 -1
- package/src/list/test/edit.native.js +2 -4
- package/src/list/utils.js +22 -1
- package/src/navigation/block.json +4 -2
- package/src/navigation/constants.js +1 -0
- package/src/navigation/index.php +85 -123
- package/src/navigation/view.js +192 -96
- package/src/navigation-link/edit.js +21 -36
- package/src/navigation-link/editor.scss +0 -8
- package/src/navigation-link/transforms.js +22 -0
- package/src/page-list/edit.js +2 -1
- package/src/paragraph/editor.scss +5 -0
- package/src/paragraph/style.scss +5 -0
- package/src/pattern/index.php +2 -2
- package/src/post-comments-form/edit.js +10 -0
- package/src/post-comments-form/form.js +7 -1
- package/src/post-content/block.json +3 -0
- package/src/post-content/edit.js +14 -6
- package/src/post-excerpt/index.php +2 -2
- package/src/post-featured-image/index.php +2 -2
- package/src/post-featured-image/overlay.js +1 -0
- package/src/post-navigation-link/index.php +0 -5
- package/src/post-navigation-link/style.scss +4 -0
- package/src/post-template/index.php +1 -1
- package/src/post-terms/index.php +5 -2
- package/src/preformatted/edit.js +5 -0
- package/src/preformatted/index.js +1 -1
- package/src/pullquote/deprecated.js +8 -13
- package/src/query/edit/enhanced-pagination-modal.js +65 -0
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +49 -0
- package/src/query/edit/inspector-controls/index.js +9 -45
- package/src/query/edit/query-content.js +8 -0
- package/src/query/editor.scss +10 -0
- package/src/query/index.php +29 -16
- package/src/query/style.scss +2 -2
- package/src/query/utils.js +22 -0
- package/src/query/view.js +5 -5
- package/src/query-pagination-next/index.php +1 -1
- package/src/query-pagination-previous/index.php +1 -1
- package/src/reset.scss +1 -1
- package/src/search/block.json +1 -0
- package/src/search/index.php +45 -4
- package/src/search/test/__snapshots__/edit.native.js.snap +265 -363
- package/src/search/view.js +70 -169
- package/src/social-link/edit.native.js +1 -1
- package/src/social-link/editor.native.scss +4 -0
- package/src/table/edit.js +21 -19
- package/src/table-of-contents/block.json +2 -1
- package/src/table-of-contents/edit.js +5 -162
- package/src/table-of-contents/hooks.js +156 -0
- package/src/verse/edit.js +5 -0
- package/src/verse/index.js +1 -1
- package/src/verse/test/edit.native.js +2 -3
- package/build/file/view-interactivity.js +0 -22
- package/build/file/view-interactivity.js.map +0 -1
- package/build/image/view-interactivity.js.map +0 -1
- package/build/navigation/view-interactivity.js +0 -172
- package/build/navigation/view-interactivity.js.map +0 -1
- package/build/navigation/view-modal.js +0 -115
- package/build/navigation/view-modal.js.map +0 -1
- package/build-module/file/view-interactivity.js +0 -18
- package/build-module/file/view-interactivity.js.map +0 -1
- package/build-module/image/view-interactivity.js.map +0 -1
- package/build-module/navigation/view-interactivity.js +0 -169
- package/build-module/navigation/view-interactivity.js.map +0 -1
- package/build-module/navigation/view-modal.js +0 -112
- package/build-module/navigation/view-modal.js.map +0 -1
- package/src/file/view-interactivity.js +0 -18
- package/src/navigation/view-interactivity.js +0 -196
- package/src/navigation/view-modal.js +0 -127
- /package/src/image/{view-interactivity.js → view.js} +0 -0
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -83,7 +83,7 @@ To find out more about contributing to this package or Gutenberg as a whole, ple
|
|
|
83
83
|
}
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
-
2. Register the block in the `gutenberg_reregister_core_block_types()` function of the [`lib/blocks.php`](https://github.com/WordPress/gutenberg/blob/trunk/lib/blocks.php) file. Add it to the `block_folders` array if it's a [static block](https://developer.wordpress.org/block-editor/
|
|
86
|
+
2. Register the block in the `gutenberg_reregister_core_block_types()` function of the [`lib/blocks.php`](https://github.com/WordPress/gutenberg/blob/trunk/lib/blocks.php) file. Add it to the `block_folders` array if it's a [static block](https://developer.wordpress.org/block-editor/getting-started/glossary/#static-block) or to the `block_names` array if it's a [dynamic block](https://developer.wordpress.org/block-editor/getting-started/glossary/#dynamic-block).
|
|
87
87
|
|
|
88
88
|
3. Add `init.js` file to the directory of the new block:
|
|
89
89
|
|
package/build/block/edit.js
CHANGED
|
@@ -1,23 +1,64 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
7
|
exports.default = ReusableBlockEdit;
|
|
7
8
|
var _element = require("@wordpress/element");
|
|
9
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
8
10
|
var _coreData = require("@wordpress/core-data");
|
|
9
11
|
var _components = require("@wordpress/components");
|
|
10
12
|
var _i18n = require("@wordpress/i18n");
|
|
11
13
|
var _blockEditor = require("@wordpress/block-editor");
|
|
14
|
+
var _lockUnlock = require("../lock-unlock");
|
|
15
|
+
/**
|
|
16
|
+
* External dependencies
|
|
17
|
+
*/
|
|
18
|
+
|
|
12
19
|
/**
|
|
13
20
|
* WordPress dependencies
|
|
14
21
|
*/
|
|
15
22
|
|
|
23
|
+
/**
|
|
24
|
+
* Internal dependencies
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
const fullAlignments = ['full', 'wide', 'left', 'right'];
|
|
28
|
+
const useInferredLayout = (blocks, parentLayout) => {
|
|
29
|
+
const initialInferredAlignmentRef = (0, _element.useRef)();
|
|
30
|
+
return (0, _element.useMemo)(() => {
|
|
31
|
+
// Exit early if the pattern's blocks haven't loaded yet.
|
|
32
|
+
if (!blocks?.length) {
|
|
33
|
+
return {};
|
|
34
|
+
}
|
|
35
|
+
let alignment = initialInferredAlignmentRef.current;
|
|
36
|
+
|
|
37
|
+
// Only track the initial alignment so that temporarily removed
|
|
38
|
+
// alignments can be reapplied.
|
|
39
|
+
if (alignment === undefined) {
|
|
40
|
+
const isConstrained = parentLayout?.type === 'constrained';
|
|
41
|
+
const hasFullAlignment = blocks.some(block => fullAlignments.includes(block.attributes.align));
|
|
42
|
+
alignment = isConstrained && hasFullAlignment ? 'full' : null;
|
|
43
|
+
initialInferredAlignmentRef.current = alignment;
|
|
44
|
+
}
|
|
45
|
+
const layout = alignment ? parentLayout : undefined;
|
|
46
|
+
return {
|
|
47
|
+
alignment,
|
|
48
|
+
layout
|
|
49
|
+
};
|
|
50
|
+
}, [blocks, parentLayout]);
|
|
51
|
+
};
|
|
16
52
|
function ReusableBlockEdit({
|
|
53
|
+
name,
|
|
17
54
|
attributes: {
|
|
18
55
|
ref
|
|
19
|
-
}
|
|
56
|
+
},
|
|
57
|
+
__unstableParentLayout: parentLayout
|
|
20
58
|
}) {
|
|
59
|
+
const {
|
|
60
|
+
useLayoutClasses
|
|
61
|
+
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
21
62
|
const hasAlreadyRendered = (0, _blockEditor.__experimentalUseHasRecursion)(ref);
|
|
22
63
|
const {
|
|
23
64
|
record,
|
|
@@ -28,11 +69,21 @@ function ReusableBlockEdit({
|
|
|
28
69
|
id: ref
|
|
29
70
|
});
|
|
30
71
|
const [title, setTitle] = (0, _coreData.useEntityProp)('postType', 'wp_block', 'title', ref);
|
|
72
|
+
const {
|
|
73
|
+
alignment,
|
|
74
|
+
layout
|
|
75
|
+
} = useInferredLayout(blocks, parentLayout);
|
|
76
|
+
const layoutClasses = useLayoutClasses({
|
|
77
|
+
layout
|
|
78
|
+
}, name);
|
|
31
79
|
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
32
|
-
className: 'block-library-block__reusable-block-container'
|
|
80
|
+
className: (0, _classnames.default)('block-library-block__reusable-block-container', layout && layoutClasses, {
|
|
81
|
+
[`align${alignment}`]: alignment
|
|
82
|
+
})
|
|
33
83
|
});
|
|
34
84
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
35
85
|
value: blocks,
|
|
86
|
+
layout,
|
|
36
87
|
onInput,
|
|
37
88
|
onChange,
|
|
38
89
|
renderAppender: blocks?.length ? undefined : _blockEditor.InnerBlocks.ButtonBlockAppender
|
package/build/block/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_coreData","_components","_i18n","_blockEditor","_lockUnlock","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","useRef","useMemo","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","ReusableBlockEdit","name","ref","__unstableParentLayout","useLayoutClasses","unlock","blockEditorPrivateApis","hasAlreadyRendered","useHasRecursion","record","hasResolved","useEntityRecord","isMissing","onInput","onChange","useEntityBlockEditor","id","title","setTitle","useEntityProp","layoutClasses","blockProps","useBlockProps","className","classnames","innerBlocksProps","useInnerBlocksProps","value","renderAppender","InnerBlocks","ButtonBlockAppender","createElement","Warning","__","Placeholder","Spinner","__experimentalRecursionProvider","uniqueId","InspectorControls","PanelBody","TextControl","__nextHasNoMarginBottom","label"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref },\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tlayout,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":";;;;;;;AA8BA,IAAAA,QAAA,GAAAC,OAAA;AA3BA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,SAAA,GAAAH,OAAA;AAKA,IAAAI,WAAA,GAAAJ,OAAA;AAMA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAeA,IAAAO,WAAA,GAAAP,OAAA;AAnCA;AACA;AACA;;AAGA;AACA;AACA;;AAyBA;AACA;AACA;;AAGA,MAAMQ,cAAc,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAE;AAE1D,MAAMC,iBAAiB,GAAGA,CAAEC,MAAM,EAAEC,YAAY,KAAM;EACrD,MAAMC,2BAA2B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAE5C,OAAO,IAAAC,gBAAO,EAAE,MAAM;IACrB;IACA,IAAK,CAAEJ,MAAM,EAAEK,MAAM,EAAG;MACvB,OAAO,CAAC,CAAC;IACV;IAEA,IAAIC,SAAS,GAAGJ,2BAA2B,CAACK,OAAO;;IAEnD;IACA;IACA,IAAKD,SAAS,KAAKE,SAAS,EAAG;MAC9B,MAAMC,aAAa,GAAGR,YAAY,EAAES,IAAI,KAAK,aAAa;MAC1D,MAAMC,gBAAgB,GAAGX,MAAM,CAACY,IAAI,CAAIC,KAAK,IAC5Cf,cAAc,CAACgB,QAAQ,CAAED,KAAK,CAACE,UAAU,CAACC,KAAM,CACjD,CAAC;MAEDV,SAAS,GAAGG,aAAa,IAAIE,gBAAgB,GAAG,MAAM,GAAG,IAAI;MAC7DT,2BAA2B,CAACK,OAAO,GAAGD,SAAS;IAChD;IAEA,MAAMW,MAAM,GAAGX,SAAS,GAAGL,YAAY,GAAGO,SAAS;IAEnD,OAAO;MAAEF,SAAS;MAAEW;IAAO,CAAC;EAC7B,CAAC,EAAE,CAAEjB,MAAM,EAAEC,YAAY,CAAG,CAAC;AAC9B,CAAC;AAEc,SAASiB,iBAAiBA,CAAE;EAC1CC,IAAI;EACJJ,UAAU,EAAE;IAAEK;EAAI,CAAC;EACnBC,sBAAsB,EAAEpB;AACzB,CAAC,EAAG;EACH,MAAM;IAAEqB;EAAiB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;EAC7D,MAAMC,kBAAkB,GAAG,IAAAC,0CAAe,EAAEN,GAAI,CAAC;EACjD,MAAM;IAAEO,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,yBAAe,EAC9C,UAAU,EACV,UAAU,EACVT,GACD,CAAC;EACD,MAAMU,SAAS,GAAGF,WAAW,IAAI,CAAED,MAAM;EAEzC,MAAM,CAAE3B,MAAM,EAAE+B,OAAO,EAAEC,QAAQ,CAAE,GAAG,IAAAC,8BAAoB,EACzD,UAAU,EACV,UAAU,EACV;IAAEC,EAAE,EAAEd;EAAI,CACX,CAAC;EAED,MAAM,CAAEe,KAAK,EAAEC,QAAQ,CAAE,GAAG,IAAAC,uBAAa,EACxC,UAAU,EACV,UAAU,EACV,OAAO,EACPjB,GACD,CAAC;EAED,MAAM;IAAEd,SAAS;IAAEW;EAAO,CAAC,GAAGlB,iBAAiB,CAAEC,MAAM,EAAEC,YAAa,CAAC;EACvE,MAAMqC,aAAa,GAAGhB,gBAAgB,CAAE;IAAEL;EAAO,CAAC,EAAEE,IAAK,CAAC;EAE1D,MAAMoB,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCC,SAAS,EAAE,IAAAC,mBAAU,EACpB,+CAA+C,EAC/CzB,MAAM,IAAIqB,aAAa,EACvB;MAAE,CAAG,QAAQhC,SAAW,EAAC,GAAIA;IAAU,CACxC;EACD,CAAE,CAAC;EAEH,MAAMqC,gBAAgB,GAAG,IAAAC,gCAAmB,EAAEL,UAAU,EAAE;IACzDM,KAAK,EAAE7C,MAAM;IACbiB,MAAM;IACNc,OAAO;IACPC,QAAQ;IACRc,cAAc,EAAE9C,MAAM,EAAEK,MAAM,GAC3BG,SAAS,GACTuC,wBAAW,CAACC;EAChB,CAAE,CAAC;EAEH,IAAKvB,kBAAkB,EAAG;IACzB,OACC,IAAApC,QAAA,CAAA4D,aAAA;MAAA,GAAUV;IAAU,GACnB,IAAAlD,QAAA,CAAA4D,aAAA,EAACrD,YAAA,CAAAsD,OAAO,QACL,IAAAC,QAAE,EAAE,yCAA0C,CACxC,CACL,CAAC;EAER;EAEA,IAAKrB,SAAS,EAAG;IAChB,OACC,IAAAzC,QAAA,CAAA4D,aAAA;MAAA,GAAUV;IAAU,GACnB,IAAAlD,QAAA,CAAA4D,aAAA,EAACrD,YAAA,CAAAsD,OAAO,QACL,IAAAC,QAAE,EAAE,2CAA4C,CAC1C,CACL,CAAC;EAER;EAEA,IAAK,CAAEvB,WAAW,EAAG;IACpB,OACC,IAAAvC,QAAA,CAAA4D,aAAA;MAAA,GAAUV;IAAU,GACnB,IAAAlD,QAAA,CAAA4D,aAAA,EAACvD,WAAA,CAAA0D,WAAW,QACX,IAAA/D,QAAA,CAAA4D,aAAA,EAACvD,WAAA,CAAA2D,OAAO,MAAE,CACE,CACT,CAAC;EAER;EAEA,OACC,IAAAhE,QAAA,CAAA4D,aAAA,EAACrD,YAAA,CAAA0D,+BAAiB;IAACC,QAAQ,EAAGnC;EAAK,GAClC,IAAA/B,QAAA,CAAA4D,aAAA,EAACrD,YAAA,CAAA4D,iBAAiB,QACjB,IAAAnE,QAAA,CAAA4D,aAAA,EAACvD,WAAA,CAAA+D,SAAS,QACT,IAAApE,QAAA,CAAA4D,aAAA,EAACvD,WAAA,CAAAgE,WAAW;IACXC,uBAAuB;IACvBC,KAAK,EAAG,IAAAT,QAAE,EAAE,MAAO,CAAG;IACtBN,KAAK,EAAGV,KAAO;IACfH,QAAQ,EAAGI;EAAU,CACrB,CACS,CACO,CAAC,EACpB,IAAA/C,QAAA,CAAA4D,aAAA;IAAA,GAAUN;EAAgB,CAAI,CACZ,CAAC;AAEtB"}
|
package/build/button/edit.js
CHANGED
|
@@ -60,6 +60,7 @@ function ButtonEdit(props) {
|
|
|
60
60
|
mergeBlocks
|
|
61
61
|
} = props;
|
|
62
62
|
const {
|
|
63
|
+
tagName,
|
|
63
64
|
textAlign,
|
|
64
65
|
linkTarget,
|
|
65
66
|
placeholder,
|
|
@@ -69,6 +70,7 @@ function ButtonEdit(props) {
|
|
|
69
70
|
url,
|
|
70
71
|
width
|
|
71
72
|
} = attributes;
|
|
73
|
+
const TagName = tagName || 'a';
|
|
72
74
|
function onToggleOpenInNewTab(value) {
|
|
73
75
|
const newLinkTarget = value ? '_blank' : undefined;
|
|
74
76
|
let updatedRel = rel;
|
|
@@ -112,6 +114,7 @@ function ButtonEdit(props) {
|
|
|
112
114
|
const [isEditingURL, setIsEditingURL] = (0, _element.useState)(false);
|
|
113
115
|
const isURLSet = !!url;
|
|
114
116
|
const opensInNewTab = linkTarget === '_blank';
|
|
117
|
+
const isLinkTag = 'a' === TagName;
|
|
115
118
|
function startEditing(event) {
|
|
116
119
|
event.preventDefault();
|
|
117
120
|
setIsEditingURL(true);
|
|
@@ -176,20 +179,20 @@ function ButtonEdit(props) {
|
|
|
176
179
|
textAlign: nextAlign
|
|
177
180
|
});
|
|
178
181
|
}
|
|
179
|
-
}), !isURLSet && (0, _element.createElement)(_components.ToolbarButton, {
|
|
182
|
+
}), !isURLSet && isLinkTag && (0, _element.createElement)(_components.ToolbarButton, {
|
|
180
183
|
name: "link",
|
|
181
184
|
icon: _icons.link,
|
|
182
185
|
title: (0, _i18n.__)('Link'),
|
|
183
186
|
shortcut: _keycodes.displayShortcut.primary('k'),
|
|
184
187
|
onClick: startEditing
|
|
185
|
-
}), isURLSet && (0, _element.createElement)(_components.ToolbarButton, {
|
|
188
|
+
}), isURLSet && isLinkTag && (0, _element.createElement)(_components.ToolbarButton, {
|
|
186
189
|
name: "link",
|
|
187
190
|
icon: _icons.linkOff,
|
|
188
191
|
title: (0, _i18n.__)('Unlink'),
|
|
189
192
|
shortcut: _keycodes.displayShortcut.primaryShift('k'),
|
|
190
193
|
onClick: unlink,
|
|
191
194
|
isActive: true
|
|
192
|
-
})), isSelected && (isEditingURL || isURLSet) && (0, _element.createElement)(_components.Popover, {
|
|
195
|
+
})), isLinkTag && isSelected && (isEditingURL || isURLSet) && (0, _element.createElement)(_components.Popover, {
|
|
193
196
|
placement: "bottom",
|
|
194
197
|
onClose: () => {
|
|
195
198
|
setIsEditingURL(false);
|
|
@@ -222,7 +225,7 @@ function ButtonEdit(props) {
|
|
|
222
225
|
setAttributes: setAttributes
|
|
223
226
|
})), (0, _element.createElement)(_blockEditor.InspectorControls, {
|
|
224
227
|
group: "advanced"
|
|
225
|
-
}, (0, _element.createElement)(_components.TextControl, {
|
|
228
|
+
}, isLinkTag && (0, _element.createElement)(_components.TextControl, {
|
|
226
229
|
__nextHasNoMarginBottom: true,
|
|
227
230
|
label: (0, _i18n.__)('Link rel'),
|
|
228
231
|
value: rel || '',
|
package/build/button/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_i18n","_components","_blockEditor","_keycodes","_icons","_blocks","_compose","_url","NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","PanelBody","title","__","ButtonGroup","map","widthValue","Button","key","size","variant","onClick","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","textAlign","linkTarget","placeholder","rel","style","text","url","onToggleOpenInNewTab","value","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","useState","borderProps","useBorderProps","colorProps","useColorProps","spacingProps","useSpacingProps","ref","useRef","blockProps","useBlockProps","useMergeRefs","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","preventDefault","useEffect","linkValue","useMemo","Fragment","classnames","fontSize","RichText","onChange","withoutInteractiveFormatting","border","radius","__experimentalGetElementClassName","onSplit","createBlock","onMerge","identifier","BlockControls","group","AlignmentControl","nextAlign","ToolbarButton","name","icon","link","shortcut","displayShortcut","linkOff","isActive","Popover","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","__experimentalLinkControl","newURL","newOpensInNewTab","prependHTTP","onRemove","forceIsEditingLink","InspectorControls","TextControl","__nextHasNoMarginBottom","label","newRel","_default","exports","default"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { prependHTTP } from '@wordpress/url';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst { textAlign, linkTarget, placeholder, rel, style, text, url, width } =\n\t\tattributes;\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab } ),\n\t\t[ url, opensInNewTab ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: prependHTTP( newURL ) } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( newRel ) => setAttributes( { rel: newRel } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":";;;;;;;AASA,IAAAA,QAAA,GAAAC,OAAA;AANA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AAEA,IAAAI,WAAA,GAAAJ,OAAA;AAQA,IAAAK,YAAA,GAAAL,OAAA;AAYA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,IAAA,GAAAV,OAAA;AAlCA;AACA;AACA;;AAGA;AACA;AACA;;AA6BA,MAAMW,WAAW,GAAG,qBAAqB;AAEzC,SAASC,UAAUA,CAAE;EAAEC,aAAa;EAAEC;AAAc,CAAC,EAAG;EACvD,SAASC,YAAYA,CAAEC,QAAQ,EAAG;IACjC;IACA,MAAMC,KAAK,GAAGJ,aAAa,KAAKG,QAAQ,GAAGE,SAAS,GAAGF,QAAQ;;IAE/D;IACAF,aAAa,CAAE;MAAEG;IAAM,CAAE,CAAC;EAC3B;EAEA,OACC,IAAAlB,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAgB,SAAS;IAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,gBAAiB;EAAG,GAC1C,IAAAvB,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAmB,WAAW;IAAC,cAAa,IAAAD,QAAE,EAAE,cAAe;EAAG,GAC7C,CAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAE,CAACE,GAAG,CAAIC,UAAU,IAAM;IAC5C,OACC,IAAA1B,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAsB,MAAM;MACNC,GAAG,EAAGF,UAAY;MAClBG,IAAI,EAAC,OAAO;MACZC,OAAO,EACNJ,UAAU,KAAKZ,aAAa,GACzB,SAAS,GACTK,SACH;MACDY,OAAO,EAAGA,CAAA,KAAMf,YAAY,CAAEU,UAAW;IAAG,GAE1CA,UAAU,EAAE,GACP,CAAC;EAEX,CAAE,CACU,CACH,CAAC;AAEd;AAEA,SAASM,UAAUA,CAAEC,KAAK,EAAG;EAC5B,MAAM;IACLC,UAAU;IACVnB,aAAa;IACboB,SAAS;IACTC,UAAU;IACVC,SAAS;IACTC;EACD,CAAC,GAAGL,KAAK;EACT,MAAM;IAAEM,SAAS;IAAEC,UAAU;IAAEC,WAAW;IAAEC,GAAG;IAAEC,KAAK;IAAEC,IAAI;IAAEC,GAAG;IAAE3B;EAAM,CAAC,GACzEgB,UAAU;EAEX,SAASY,oBAAoBA,CAAEC,KAAK,EAAG;IACtC,MAAMC,aAAa,GAAGD,KAAK,GAAG,QAAQ,GAAG5B,SAAS;IAElD,IAAI8B,UAAU,GAAGP,GAAG;IACpB,IAAKM,aAAa,IAAI,CAAEN,GAAG,EAAG;MAC7BO,UAAU,GAAGrC,WAAW;IACzB,CAAC,MAAM,IAAK,CAAEoC,aAAa,IAAIN,GAAG,KAAK9B,WAAW,EAAG;MACpDqC,UAAU,GAAG9B,SAAS;IACvB;IAEAJ,aAAa,CAAE;MACdyB,UAAU,EAAEQ,aAAa;MACzBN,GAAG,EAAEO;IACN,CAAE,CAAC;EACJ;EAEA,SAASC,aAAaA,CAAEC,OAAO,EAAG;IACjC;IACApC,aAAa,CAAE;MAAE6B,IAAI,EAAEO,OAAO,CAACC,OAAO,CAAE,cAAc,EAAE,EAAG;IAAE,CAAE,CAAC;EACjE;EAEA,SAASC,SAASA,CAAEC,KAAK,EAAG;IAC3B,IAAKC,yBAAe,CAACC,OAAO,CAAEF,KAAK,EAAE,GAAI,CAAC,EAAG;MAC5CG,YAAY,CAAEH,KAAM,CAAC;IACtB,CAAC,MAAM,IAAKC,yBAAe,CAACG,YAAY,CAAEJ,KAAK,EAAE,GAAI,CAAC,EAAG;MACxDK,MAAM,CAAC,CAAC;MACRC,WAAW,CAACC,OAAO,EAAEC,KAAK,CAAC,CAAC;IAC7B;EACD;;EAEA;EACA;EACA,MAAM,CAAEC,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAE5D,MAAMC,WAAW,GAAG,IAAAC,yCAAc,EAAEjC,UAAW,CAAC;EAChD,MAAMkC,UAAU,GAAG,IAAAC,wCAAa,EAAEnC,UAAW,CAAC;EAC9C,MAAMoC,YAAY,GAAG,IAAAC,qDAAe,EAAErC,UAAW,CAAC;EAClD,MAAMsC,GAAG,GAAG,IAAAC,eAAM,EAAC,CAAC;EACpB,MAAMb,WAAW,GAAG,IAAAa,eAAM,EAAC,CAAC;EAC5B,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCH,GAAG,EAAE,IAAAI,qBAAY,EAAE,CAAEZ,gBAAgB,EAAEQ,GAAG,CAAG,CAAC;IAC9CnB;EACD,CAAE,CAAC;EAEH,MAAM,CAAEwB,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAb,iBAAQ,EAAE,KAAM,CAAC;EAC3D,MAAMc,QAAQ,GAAG,CAAC,CAAElC,GAAG;EACvB,MAAMmC,aAAa,GAAGxC,UAAU,KAAK,QAAQ;EAE7C,SAASiB,YAAYA,CAAEH,KAAK,EAAG;IAC9BA,KAAK,CAAC2B,cAAc,CAAC,CAAC;IACtBH,eAAe,CAAE,IAAK,CAAC;EACxB;EAEA,SAASnB,MAAMA,CAAA,EAAG;IACjB5C,aAAa,CAAE;MACd8B,GAAG,EAAE1B,SAAS;MACdqB,UAAU,EAAErB,SAAS;MACrBuB,GAAG,EAAEvB;IACN,CAAE,CAAC;IACH2D,eAAe,CAAE,KAAM,CAAC;EACzB;EAEA,IAAAI,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAE9C,UAAU,EAAG;MACnB0C,eAAe,CAAE,KAAM,CAAC;IACzB;EACD,CAAC,EAAE,CAAE1C,UAAU,CAAG,CAAC;;EAEnB;EACA;EACA,MAAM+C,SAAS,GAAG,IAAAC,gBAAO,EACxB,OAAQ;IAAEvC,GAAG;IAAEmC;EAAc,CAAC,CAAE,EAChC,CAAEnC,GAAG,EAAEmC,aAAa,CACrB,CAAC;EAED,OACC,IAAAhF,QAAA,CAAAoB,aAAA,EAAApB,QAAA,CAAAqF,QAAA,QACC,IAAArF,QAAA,CAAAoB,aAAA;IAAA,GACMsD,UAAU;IACfvC,SAAS,EAAG,IAAAmD,mBAAU,EAAEZ,UAAU,CAACvC,SAAS,EAAE;MAC7C,CAAG,2CAA2CjB,KAAO,EAAC,GACrDA,KAAK;MACN,CAAG,sBAAqB,GAAIwD,UAAU,CAAC/B,KAAK,CAAC4C;IAC9C,CAAE;EAAG,GAEL,IAAAvF,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAAkF,QAAQ;IACRhB,GAAG,EAAGZ,WAAa;IACnB,cAAa,IAAArC,QAAE,EAAE,aAAc,CAAG;IAClCkB,WAAW,EAAGA,WAAW,IAAI,IAAAlB,QAAE,EAAE,WAAY,CAAG;IAChDwB,KAAK,EAAGH,IAAM;IACd6C,QAAQ,EAAK1C,KAAK,IAAMG,aAAa,CAAEH,KAAM,CAAG;IAChD2C,4BAA4B;IAC5BvD,SAAS,EAAG,IAAAmD,mBAAU,EACrBnD,SAAS,EACT,uBAAuB,EACvBiC,UAAU,CAACjC,SAAS,EACpB+B,WAAW,CAAC/B,SAAS,EACrB;MACC,CAAG,kBAAkBI,SAAW,EAAC,GAAIA,SAAS;MAC9C;MACA;MACA,kBAAkB,EAAEI,KAAK,EAAEgD,MAAM,EAAEC,MAAM,KAAK;IAC/C,CAAC,EACD,IAAAC,8CAAiC,EAAE,QAAS,CAC7C,CAAG;IACHlD,KAAK,EAAG;MACP,GAAGuB,WAAW,CAACvB,KAAK;MACpB,GAAGyB,UAAU,CAACzB,KAAK;MACnB,GAAG2B,YAAY,CAAC3B;IACjB,CAAG;IACHmD,OAAO,EAAK/C,KAAK,IAChB,IAAAgD,mBAAW,EAAE,aAAa,EAAE;MAC3B,GAAG7D,UAAU;MACbU,IAAI,EAAEG;IACP,CAAE,CACF;IACDV,SAAS,EAAGA,SAAW;IACvB2D,OAAO,EAAG1D,WAAa;IACvB2D,UAAU,EAAC;EAAM,CACjB,CACG,CAAC,EACN,IAAAjG,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAA4F,aAAa;IAACC,KAAK,EAAC;EAAO,GAC3B,IAAAnG,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAA8F,gBAAgB;IAChBrD,KAAK,EAAGR,SAAW;IACnBkD,QAAQ,EAAKY,SAAS,IAAM;MAC3BtF,aAAa,CAAE;QAAEwB,SAAS,EAAE8D;MAAU,CAAE,CAAC;IAC1C;EAAG,CACH,CAAC,EACA,CAAEtB,QAAQ,IACX,IAAA/E,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAiG,aAAa;IACbC,IAAI,EAAC,MAAM;IACXC,IAAI,EAAGC,WAAM;IACbnF,KAAK,EAAG,IAAAC,QAAE,EAAE,MAAO,CAAG;IACtBmF,QAAQ,EAAGC,yBAAe,CAACnD,OAAO,CAAE,GAAI,CAAG;IAC3CzB,OAAO,EAAG0B;EAAc,CACxB,CACD,EACCsB,QAAQ,IACT,IAAA/E,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAiG,aAAa;IACbC,IAAI,EAAC,MAAM;IACXC,IAAI,EAAGI,cAAS;IAChBtF,KAAK,EAAG,IAAAC,QAAE,EAAE,QAAS,CAAG;IACxBmF,QAAQ,EAAGC,yBAAe,CAACjD,YAAY,CAAE,GAAI,CAAG;IAChD3B,OAAO,EAAG4B,MAAQ;IAClBkD,QAAQ,EAAG;EAAM,CACjB,CAEY,CAAC,EACdzE,UAAU,KAAMyC,YAAY,IAAIE,QAAQ,CAAE,IAC3C,IAAA/E,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAyG,OAAO;IACPC,SAAS,EAAC,QAAQ;IAClBC,OAAO,EAAGA,CAAA,KAAM;MACflC,eAAe,CAAE,KAAM,CAAC;MACxBlB,WAAW,CAACC,OAAO,EAAEC,KAAK,CAAC,CAAC;IAC7B,CAAG;IACHmD,MAAM,EAAGlD,aAAe;IACxBmD,YAAY,EAAGrC,YAAY,GAAG,cAAc,GAAG,KAAO;IACtDsC,kBAAkB,EAAG,8BAAgC;IACrDC,KAAK;EAAA,GAEL,IAAApH,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAA+G,yBAAW;IACXtE,KAAK,EAAGoC,SAAW;IACnBM,QAAQ,EAAGA,CAAE;MACZ5C,GAAG,EAAEyE,MAAM,GAAG,EAAE;MAChBtC,aAAa,EAAEuC;IAChB,CAAC,KAAM;MACNxG,aAAa,CAAE;QAAE8B,GAAG,EAAE,IAAA2E,gBAAW,EAAEF,MAAO;MAAE,CAAE,CAAC;MAE/C,IAAKtC,aAAa,KAAKuC,gBAAgB,EAAG;QACzCzE,oBAAoB,CAAEyE,gBAAiB,CAAC;MACzC;IACD,CAAG;IACHE,QAAQ,EAAGA,CAAA,KAAM;MAChB9D,MAAM,CAAC,CAAC;MACRC,WAAW,CAACC,OAAO,EAAEC,KAAK,CAAC,CAAC;IAC7B,CAAG;IACH4D,kBAAkB,EAAG7C;EAAc,CACnC,CACO,CACT,EACD,IAAA7E,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAAqH,iBAAiB,QACjB,IAAA3H,QAAA,CAAAoB,aAAA,EAACP,UAAU;IACVC,aAAa,EAAGI,KAAO;IACvBH,aAAa,EAAGA;EAAe,CAC/B,CACiB,CAAC,EACpB,IAAAf,QAAA,CAAAoB,aAAA,EAACd,YAAA,CAAAqH,iBAAiB;IAACxB,KAAK,EAAC;EAAU,GAClC,IAAAnG,QAAA,CAAAoB,aAAA,EAACf,WAAA,CAAAuH,WAAW;IACXC,uBAAuB;IACvBC,KAAK,EAAG,IAAAvG,QAAE,EAAE,UAAW,CAAG;IAC1BwB,KAAK,EAAGL,GAAG,IAAI,EAAI;IACnB+C,QAAQ,EAAKsC,MAAM,IAAMhH,aAAa,CAAE;MAAE2B,GAAG,EAAEqF;IAAO,CAAE;EAAG,CAC3D,CACiB,CAClB,CAAC;AAEL;AAAC,IAAAC,QAAA,GAEchG,UAAU;AAAAiG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
1
|
+
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_i18n","_components","_blockEditor","_keycodes","_icons","_blocks","_compose","_url","NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","PanelBody","title","__","ButtonGroup","map","widthValue","Button","key","size","variant","onClick","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","onToggleOpenInNewTab","value","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","popoverAnchor","setPopoverAnchor","useState","borderProps","useBorderProps","colorProps","useColorProps","spacingProps","useSpacingProps","ref","useRef","blockProps","useBlockProps","useMergeRefs","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","isLinkTag","preventDefault","useEffect","linkValue","useMemo","Fragment","classnames","fontSize","RichText","onChange","withoutInteractiveFormatting","border","radius","__experimentalGetElementClassName","onSplit","createBlock","onMerge","identifier","BlockControls","group","AlignmentControl","nextAlign","ToolbarButton","name","icon","link","shortcut","displayShortcut","linkOff","isActive","Popover","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","__experimentalLinkControl","newURL","newOpensInNewTab","prependHTTP","onRemove","forceIsEditingLink","InspectorControls","TextControl","__nextHasNoMarginBottom","label","newRel","_default","exports","default"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { prependHTTP } from '@wordpress/url';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab } ),\n\t\t[ url, opensInNewTab ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: prependHTTP( newURL ) } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
|
package/build/button/index.js
CHANGED
|
@@ -28,6 +28,15 @@ const metadata = {
|
|
|
28
28
|
keywords: ["link"],
|
|
29
29
|
textdomain: "default",
|
|
30
30
|
attributes: {
|
|
31
|
+
tagName: {
|
|
32
|
+
type: "string",
|
|
33
|
+
"enum": ["a", "button"],
|
|
34
|
+
"default": "a"
|
|
35
|
+
},
|
|
36
|
+
type: {
|
|
37
|
+
type: "string",
|
|
38
|
+
"default": "button"
|
|
39
|
+
},
|
|
31
40
|
textAlign: {
|
|
32
41
|
type: "string"
|
|
33
42
|
},
|
|
@@ -41,14 +50,14 @@ const metadata = {
|
|
|
41
50
|
title: {
|
|
42
51
|
type: "string",
|
|
43
52
|
source: "attribute",
|
|
44
|
-
selector: "a",
|
|
53
|
+
selector: "a,button",
|
|
45
54
|
attribute: "title",
|
|
46
55
|
__experimentalRole: "content"
|
|
47
56
|
},
|
|
48
57
|
text: {
|
|
49
58
|
type: "string",
|
|
50
59
|
source: "html",
|
|
51
|
-
selector: "a",
|
|
60
|
+
selector: "a,button",
|
|
52
61
|
__experimentalRole: "content"
|
|
53
62
|
},
|
|
54
63
|
linkTarget: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","metadata","$schema","apiVersion","name","title","category","parent","description","keywords","textdomain","attributes","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","metadata","$schema","apiVersion","name","title","category","parent","description","keywords","textdomain","attributes","tagName","type","textAlign","url","source","selector","attribute","__experimentalRole","text","linkTarget","rel","placeholder","backgroundColor","textColor","gradient","width","supports","anchor","align","alignWide","color","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","background","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","reusable","shadow","spacing","padding","__experimentalBorder","radius","style","__experimentalSelector","styles","label","isDefault","editorStyle","exports","settings","icon","example","className","__","edit","save","deprecated","merge","a","init","initBlock"],"sources":["@wordpress/block-library/src/button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { button as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tclassName: 'is-style-fill',\n\t\t\ttext: __( 'Call to Action' ),\n\t\t},\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tmerge: ( a, { text = '' } ) => ( {\n\t\t...a,\n\t\ttext: ( a.text || '' ) + text,\n\t} ),\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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"}
|
package/build/button/save.js
CHANGED
|
@@ -21,6 +21,8 @@ function save({
|
|
|
21
21
|
className
|
|
22
22
|
}) {
|
|
23
23
|
const {
|
|
24
|
+
tagName,
|
|
25
|
+
type,
|
|
24
26
|
textAlign,
|
|
25
27
|
fontSize,
|
|
26
28
|
linkTarget,
|
|
@@ -34,6 +36,9 @@ function save({
|
|
|
34
36
|
if (!text) {
|
|
35
37
|
return null;
|
|
36
38
|
}
|
|
39
|
+
const TagName = tagName || 'a';
|
|
40
|
+
const isButtonTag = 'button' === TagName;
|
|
41
|
+
const buttonType = type || 'button';
|
|
37
42
|
const borderProps = (0, _blockEditor.__experimentalGetBorderClassesAndStyles)(attributes);
|
|
38
43
|
const colorProps = (0, _blockEditor.__experimentalGetColorClassesAndStyles)(attributes);
|
|
39
44
|
const spacingProps = (0, _blockEditor.__experimentalGetSpacingClassesAndStyles)(attributes);
|
|
@@ -62,14 +67,15 @@ function save({
|
|
|
62
67
|
className: wrapperClasses
|
|
63
68
|
})
|
|
64
69
|
}, (0, _element.createElement)(_blockEditor.RichText.Content, {
|
|
65
|
-
tagName:
|
|
70
|
+
tagName: TagName,
|
|
71
|
+
type: isButtonTag ? buttonType : null,
|
|
66
72
|
className: buttonClasses,
|
|
67
|
-
href: url,
|
|
73
|
+
href: isButtonTag ? null : url,
|
|
68
74
|
title: title,
|
|
69
75
|
style: buttonStyle,
|
|
70
76
|
value: text,
|
|
71
|
-
target: linkTarget,
|
|
72
|
-
rel: rel
|
|
77
|
+
target: isButtonTag ? null : linkTarget,
|
|
78
|
+
rel: isButtonTag ? null : rel
|
|
73
79
|
}));
|
|
74
80
|
}
|
|
75
81
|
//# sourceMappingURL=save.js.map
|
package/build/button/save.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","save","attributes","className","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","borderProps","getBorderClassesAndStyles","colorProps","getColorClassesAndStyles","spacingProps","getSpacingClassesAndStyles","buttonClasses","classnames","border","radius","__experimentalGetElementClassName","buttonStyle","wrapperClasses","typography","_element","createElement","useBlockProps","RichText","Content","
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","save","attributes","className","tagName","type","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","TagName","isButtonTag","buttonType","borderProps","getBorderClassesAndStyles","colorProps","getColorClassesAndStyles","spacingProps","getSpacingClassesAndStyles","buttonClasses","classnames","border","radius","__experimentalGetElementClassName","buttonStyle","wrapperClasses","typography","_element","createElement","useBlockProps","RichText","Content","href","value","target"],"sources":["@wordpress/block-library/src/button/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes, className } ) {\n\tconst {\n\t\ttagName,\n\t\ttype,\n\t\ttextAlign,\n\t\tfontSize,\n\t\tlinkTarget,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\ttitle,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tif ( ! text ) {\n\t\treturn null;\n\t}\n\n\tconst TagName = tagName || 'a';\n\tconst isButtonTag = 'button' === TagName;\n\tconst buttonType = type || 'button';\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\tconst buttonClasses = classnames(\n\t\t'wp-block-button__link',\n\t\tcolorProps.className,\n\t\tborderProps.className,\n\t\t{\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t// block support.\n\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t},\n\t\t__experimentalGetElementClassName( 'button' )\n\t);\n\tconst buttonStyle = {\n\t\t...borderProps.style,\n\t\t...colorProps.style,\n\t\t...spacingProps.style,\n\t};\n\n\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t// if it had already been assigned, for the sake of backward-compatibility.\n\t// A title will no longer be assigned for new or updated button block links.\n\n\tconst wrapperClasses = classnames( className, {\n\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t} );\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName={ TagName }\n\t\t\t\ttype={ isButtonTag ? buttonType : null }\n\t\t\t\tclassName={ buttonClasses }\n\t\t\t\thref={ isButtonTag ? null : url }\n\t\t\t\ttitle={ title }\n\t\t\t\tstyle={ buttonStyle }\n\t\t\t\tvalue={ text }\n\t\t\t\ttarget={ isButtonTag ? null : linkTarget }\n\t\t\t\trel={ isButtonTag ? null : rel }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAUe,SAASE,IAAIA,CAAE;EAAEC,UAAU;EAAEC;AAAU,CAAC,EAAG;EACzD,MAAM;IACLC,OAAO;IACPC,IAAI;IACJC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACVC,GAAG;IACHC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,GAAG;IACHC;EACD,CAAC,GAAGZ,UAAU;EAEd,IAAK,CAAES,IAAI,EAAG;IACb,OAAO,IAAI;EACZ;EAEA,MAAMI,OAAO,GAAGX,OAAO,IAAI,GAAG;EAC9B,MAAMY,WAAW,GAAG,QAAQ,KAAKD,OAAO;EACxC,MAAME,UAAU,GAAGZ,IAAI,IAAI,QAAQ;EACnC,MAAMa,WAAW,GAAG,IAAAC,oDAAyB,EAAEjB,UAAW,CAAC;EAC3D,MAAMkB,UAAU,GAAG,IAAAC,mDAAwB,EAAEnB,UAAW,CAAC;EACzD,MAAMoB,YAAY,GAAG,IAAAC,qDAA0B,EAAErB,UAAW,CAAC;EAC7D,MAAMsB,aAAa,GAAG,IAAAC,mBAAU,EAC/B,uBAAuB,EACvBL,UAAU,CAACjB,SAAS,EACpBe,WAAW,CAACf,SAAS,EACrB;IACC,CAAG,kBAAkBG,SAAW,EAAC,GAAIA,SAAS;IAC9C;IACA;IACA,kBAAkB,EAAEI,KAAK,EAAEgB,MAAM,EAAEC,MAAM,KAAK;EAC/C,CAAC,EACD,IAAAC,8CAAiC,EAAE,QAAS,CAC7C,CAAC;EACD,MAAMC,WAAW,GAAG;IACnB,GAAGX,WAAW,CAACR,KAAK;IACpB,GAAGU,UAAU,CAACV,KAAK;IACnB,GAAGY,YAAY,CAACZ;EACjB,CAAC;;EAED;EACA;EACA;;EAEA,MAAMoB,cAAc,GAAG,IAAAL,mBAAU,EAAEtB,SAAS,EAAE;IAC7C,CAAG,2CAA2CW,KAAO,EAAC,GAAIA,KAAK;IAC/D,CAAG,sBAAqB,GAAIP,QAAQ,IAAIG,KAAK,EAAEqB,UAAU,EAAExB;EAC5D,CAAE,CAAC;EAEH,OACC,IAAAyB,QAAA,CAAAC,aAAA;IAAA,GAAUC,0BAAa,CAACjC,IAAI,CAAE;MAAEE,SAAS,EAAE2B;IAAe,CAAE;EAAC,GAC5D,IAAAE,QAAA,CAAAC,aAAA,EAACjC,YAAA,CAAAmC,QAAQ,CAACC,OAAO;IAChBhC,OAAO,EAAGW,OAAS;IACnBV,IAAI,EAAGW,WAAW,GAAGC,UAAU,GAAG,IAAM;IACxCd,SAAS,EAAGqB,aAAe;IAC3Ba,IAAI,EAAGrB,WAAW,GAAG,IAAI,GAAGH,GAAK;IACjCD,KAAK,EAAGA,KAAO;IACfF,KAAK,EAAGmB,WAAa;IACrBS,KAAK,EAAG3B,IAAM;IACd4B,MAAM,EAAGvB,WAAW,GAAG,IAAI,GAAGR,UAAY;IAC1CC,GAAG,EAAGO,WAAW,GAAG,IAAI,GAAGP;EAAK,CAChC,CACG,CAAC;AAER"}
|
package/build/buttons/edit.js
CHANGED
|
@@ -9,6 +9,7 @@ var _element = require("@wordpress/element");
|
|
|
9
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
10
|
var _blockEditor = require("@wordpress/block-editor");
|
|
11
11
|
var _data = require("@wordpress/data");
|
|
12
|
+
var _blocks = require("@wordpress/blocks");
|
|
12
13
|
var _button = require("../button");
|
|
13
14
|
/**
|
|
14
15
|
* External dependencies
|
|
@@ -42,14 +43,22 @@ function ButtonsEdit({
|
|
|
42
43
|
'has-custom-font-size': fontSize || style?.typography?.fontSize
|
|
43
44
|
})
|
|
44
45
|
});
|
|
45
|
-
const
|
|
46
|
+
const {
|
|
47
|
+
preferredStyle,
|
|
48
|
+
hasButtonVariations
|
|
49
|
+
} = (0, _data.useSelect)(select => {
|
|
46
50
|
const preferredStyleVariations = select(_blockEditor.store).getSettings().__experimentalPreferredStyleVariations;
|
|
47
|
-
|
|
51
|
+
const buttonVariations = select(_blocks.store).getBlockVariations(_button.name, 'inserter');
|
|
52
|
+
return {
|
|
53
|
+
preferredStyle: preferredStyleVariations?.value?.[_button.name],
|
|
54
|
+
hasButtonVariations: buttonVariations.length > 0
|
|
55
|
+
};
|
|
48
56
|
}, []);
|
|
49
57
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
50
58
|
allowedBlocks: ALLOWED_BLOCKS,
|
|
51
59
|
defaultBlock: DEFAULT_BLOCK,
|
|
52
|
-
|
|
60
|
+
// This check should be handled by the `Inserter` internally to be consistent across all blocks that use it.
|
|
61
|
+
directInsert: !hasButtonVariations,
|
|
53
62
|
template: [[_button.name, {
|
|
54
63
|
className: preferredStyle && `is-style-${preferredStyle}`
|
|
55
64
|
}]],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_button","ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","className","_layout$orientation","fontSize","layout","style","blockProps","useBlockProps","classnames","typography","preferredStyle","useSelect","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","useInnerBlocksProps","allowedBlocks","defaultBlock","directInsert","template","templateInsertUpdatesSelection","orientation","_element","createElement","_default","exports","default"],"sources":["@wordpress/block-library/src/buttons/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nconst DEFAULT_BLOCK = {\n\tname: buttonBlockName,\n\tattributesToCopy: [\n\t\t'backgroundColor',\n\t\t'border',\n\t\t'className',\n\t\t'fontFamily',\n\t\t'fontSize',\n\t\t'gradient',\n\t\t'style',\n\t\t'textColor',\n\t\t'width',\n\t],\n};\n\nfunction ButtonsEdit( { attributes, className } ) {\n\tconst { fontSize, layout, style } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, {\n\t\t\t'has-custom-font-size': fontSize || style?.typography?.fontSize,\n\t\t} ),\n\t} );\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_blocks","_button","ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","className","_layout$orientation","fontSize","layout","style","blockProps","useBlockProps","classnames","typography","preferredStyle","hasButtonVariations","useSelect","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","buttonVariations","blocksStore","getBlockVariations","value","length","innerBlocksProps","useInnerBlocksProps","allowedBlocks","defaultBlock","directInsert","template","templateInsertUpdatesSelection","orientation","_element","createElement","_default","exports","default"],"sources":["@wordpress/block-library/src/buttons/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nconst DEFAULT_BLOCK = {\n\tname: buttonBlockName,\n\tattributesToCopy: [\n\t\t'backgroundColor',\n\t\t'border',\n\t\t'className',\n\t\t'fontFamily',\n\t\t'fontSize',\n\t\t'gradient',\n\t\t'style',\n\t\t'textColor',\n\t\t'width',\n\t],\n};\n\nfunction ButtonsEdit( { attributes, className } ) {\n\tconst { fontSize, layout, style } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, {\n\t\t\t'has-custom-font-size': fontSize || style?.typography?.fontSize,\n\t\t} ),\n\t} );\n\tconst { preferredStyle, hasButtonVariations } = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\tconst buttonVariations = select( blocksStore ).getBlockVariations(\n\t\t\tbuttonBlockName,\n\t\t\t'inserter'\n\t\t);\n\t\treturn {\n\t\t\tpreferredStyle:\n\t\t\t\tpreferredStyleVariations?.value?.[ buttonBlockName ],\n\t\t\thasButtonVariations: buttonVariations.length > 0,\n\t\t};\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\t// This check should be handled by the `Inserter` internally to be consistent across all blocks that use it.\n\t\tdirectInsert: ! hasButtonVariations,\n\t\ttemplate: [\n\t\t\t[\n\t\t\t\tbuttonBlockName,\n\t\t\t\t{ className: preferredStyle && `is-style-${ preferredStyle }` },\n\t\t\t],\n\t\t],\n\t\ttemplateInsertUpdatesSelection: true,\n\t\torientation: layout?.orientation ?? 'horizontal',\n\t} );\n\n\treturn <div { ...innerBlocksProps } />;\n}\n\nexport default ButtonsEdit;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAKA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAKA,IAAAI,OAAA,GAAAJ,OAAA;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;;AAGA,MAAMK,cAAc,GAAG,CAAEC,YAAe,CAAE;AAE1C,MAAMC,aAAa,GAAG;EACrBC,IAAI,EAAEF,YAAe;EACrBG,gBAAgB,EAAE,CACjB,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EACX,OAAO;AAET,CAAC;AAED,SAASC,WAAWA,CAAE;EAAEC,UAAU;EAAEC;AAAU,CAAC,EAAG;EAAA,IAAAC,mBAAA;EACjD,MAAM;IAAEC,QAAQ;IAAEC,MAAM;IAAEC;EAAM,CAAC,GAAGL,UAAU;EAC9C,MAAMM,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCN,SAAS,EAAE,IAAAO,mBAAU,EAAEP,SAAS,EAAE;MACjC,sBAAsB,EAAEE,QAAQ,IAAIE,KAAK,EAAEI,UAAU,EAAEN;IACxD,CAAE;EACH,CAAE,CAAC;EACH,MAAM;IAAEO,cAAc;IAAEC;EAAoB,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACxE,MAAMC,wBAAwB,GAC7BD,MAAM,CAAEE,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC,CACtCC,sCAAsC;IACzC,MAAMC,gBAAgB,GAAGL,MAAM,CAAEM,aAAY,CAAC,CAACC,kBAAkB,CAChEzB,YAAe,EACf,UACD,CAAC;IACD,OAAO;MACNe,cAAc,EACbI,wBAAwB,EAAEO,KAAK,GAAI1B,YAAe,CAAE;MACrDgB,mBAAmB,EAAEO,gBAAgB,CAACI,MAAM,GAAG;IAChD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,gBAAgB,GAAG,IAAAC,gCAAmB,EAAElB,UAAU,EAAE;IACzDmB,aAAa,EAAE/B,cAAc;IAC7BgC,YAAY,EAAE9B,aAAa;IAC3B;IACA+B,YAAY,EAAE,CAAEhB,mBAAmB;IACnCiB,QAAQ,EAAE,CACT,CACCjC,YAAe,EACf;MAAEM,SAAS,EAAES,cAAc,IAAK,YAAYA,cAAgB;IAAE,CAAC,CAC/D,CACD;IACDmB,8BAA8B,EAAE,IAAI;IACpCC,WAAW,GAAA5B,mBAAA,GAAEE,MAAM,EAAE0B,WAAW,cAAA5B,mBAAA,cAAAA,mBAAA,GAAI;EACrC,CAAE,CAAC;EAEH,OAAO,IAAA6B,QAAA,CAAAC,aAAA;IAAA,GAAUT;EAAgB,CAAI,CAAC;AACvC;AAAC,IAAAU,QAAA,GAEclC,WAAW;AAAAmC,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
package/build/code/edit.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.default = CodeEdit;
|
|
|
7
7
|
var _element = require("@wordpress/element");
|
|
8
8
|
var _i18n = require("@wordpress/i18n");
|
|
9
9
|
var _blockEditor = require("@wordpress/block-editor");
|
|
10
|
+
var _blocks = require("@wordpress/blocks");
|
|
10
11
|
/**
|
|
11
12
|
* WordPress dependencies
|
|
12
13
|
*/
|
|
@@ -14,22 +15,27 @@ var _blockEditor = require("@wordpress/block-editor");
|
|
|
14
15
|
function CodeEdit({
|
|
15
16
|
attributes,
|
|
16
17
|
setAttributes,
|
|
17
|
-
onRemove
|
|
18
|
+
onRemove,
|
|
19
|
+
insertBlocksAfter,
|
|
20
|
+
mergeBlocks
|
|
18
21
|
}) {
|
|
19
22
|
const blockProps = (0, _blockEditor.useBlockProps)();
|
|
20
23
|
return (0, _element.createElement)("pre", {
|
|
21
24
|
...blockProps
|
|
22
25
|
}, (0, _element.createElement)(_blockEditor.RichText, {
|
|
23
26
|
tagName: "code",
|
|
27
|
+
identifier: "content",
|
|
24
28
|
value: attributes.content,
|
|
25
29
|
onChange: content => setAttributes({
|
|
26
30
|
content
|
|
27
31
|
}),
|
|
28
32
|
onRemove: onRemove,
|
|
33
|
+
onMerge: mergeBlocks,
|
|
29
34
|
placeholder: (0, _i18n.__)('Write code…'),
|
|
30
35
|
"aria-label": (0, _i18n.__)('Code'),
|
|
31
36
|
preserveWhiteSpace: true,
|
|
32
|
-
__unstablePastePlainText: true
|
|
37
|
+
__unstablePastePlainText: true,
|
|
38
|
+
__unstableOnSplitAtDoubleLineEnd: () => insertBlocksAfter((0, _blocks.createBlock)((0, _blocks.getDefaultBlockName)()))
|
|
33
39
|
}));
|
|
34
40
|
}
|
|
35
41
|
//# sourceMappingURL=edit.js.map
|
package/build/code/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_blockEditor","CodeEdit","attributes","setAttributes","onRemove","blockProps","useBlockProps","_element","createElement","RichText","tagName","value","content","onChange","placeholder","__","preserveWhiteSpace","__unstablePastePlainText"],"sources":["@wordpress/block-library/src/code/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nexport default function CodeEdit( {
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_blocks","CodeEdit","attributes","setAttributes","onRemove","insertBlocksAfter","mergeBlocks","blockProps","useBlockProps","_element","createElement","RichText","tagName","identifier","value","content","onChange","onMerge","placeholder","__","preserveWhiteSpace","__unstablePastePlainText","__unstableOnSplitAtDoubleLineEnd","createBlock","getDefaultBlockName"],"sources":["@wordpress/block-library/src/code/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\n\nexport default function CodeEdit( {\n\tattributes,\n\tsetAttributes,\n\tonRemove,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n} ) {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<pre { ...blockProps }>\n\t\t\t<RichText\n\t\t\t\ttagName=\"code\"\n\t\t\t\tidentifier=\"content\"\n\t\t\t\tvalue={ attributes.content }\n\t\t\t\tonChange={ ( content ) => setAttributes( { content } ) }\n\t\t\t\tonRemove={ onRemove }\n\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\tplaceholder={ __( 'Write code…' ) }\n\t\t\t\taria-label={ __( 'Code' ) }\n\t\t\t\tpreserveWhiteSpace\n\t\t\t\t__unstablePastePlainText\n\t\t\t\t__unstableOnSplitAtDoubleLineEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t/>\n\t\t</pre>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKe,SAASG,QAAQA,CAAE;EACjCC,UAAU;EACVC,aAAa;EACbC,QAAQ;EACRC,iBAAiB;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAC,CAAC;EAClC,OACC,IAAAC,QAAA,CAAAC,aAAA;IAAA,GAAUH;EAAU,GACnB,IAAAE,QAAA,CAAAC,aAAA,EAACX,YAAA,CAAAY,QAAQ;IACRC,OAAO,EAAC,MAAM;IACdC,UAAU,EAAC,SAAS;IACpBC,KAAK,EAAGZ,UAAU,CAACa,OAAS;IAC5BC,QAAQ,EAAKD,OAAO,IAAMZ,aAAa,CAAE;MAAEY;IAAQ,CAAE,CAAG;IACxDX,QAAQ,EAAGA,QAAU;IACrBa,OAAO,EAAGX,WAAa;IACvBY,WAAW,EAAG,IAAAC,QAAE,EAAE,aAAc,CAAG;IACnC,cAAa,IAAAA,QAAE,EAAE,MAAO,CAAG;IAC3BC,kBAAkB;IAClBC,wBAAwB;IACxBC,gCAAgC,EAAGA,CAAA,KAClCjB,iBAAiB,CAAE,IAAAkB,mBAAW,EAAE,IAAAC,2BAAmB,EAAC,CAAE,CAAE;EACxD,CACD,CACG,CAAC;AAER"}
|
package/build/code/index.js
CHANGED
|
@@ -29,7 +29,8 @@ const metadata = {
|
|
|
29
29
|
content: {
|
|
30
30
|
type: "string",
|
|
31
31
|
source: "html",
|
|
32
|
-
selector: "code"
|
|
32
|
+
selector: "code",
|
|
33
|
+
__unstablePreserveWhiteSpace: true
|
|
33
34
|
}
|
|
34
35
|
},
|
|
35
36
|
supports: {
|
|
@@ -94,6 +95,11 @@ const settings = {
|
|
|
94
95
|
}
|
|
95
96
|
},
|
|
96
97
|
|
|
98
|
+
merge(attributes, attributesToMerge) {
|
|
99
|
+
return {
|
|
100
|
+
content: attributes.content + '\n\n' + attributesToMerge.content
|
|
101
|
+
};
|
|
102
|
+
},
|
|
97
103
|
transforms: _transforms.default,
|
|
98
104
|
edit: _edit.default,
|
|
99
105
|
save: _save.default
|
package/build/code/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_edit","_save","_transforms","metadata","$schema","apiVersion","name","title","category","description","textdomain","attributes","content","type","source","selector","supports","align","anchor","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalDefaultControls","spacing","margin","padding","__experimentalBorder","radius","color","width","style","text","background","gradients","exports","settings","icon","example","__","transforms","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/code/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { code as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\t/* eslint-disable @wordpress/i18n-no-collapsible-whitespace */\n\t\t\t// translators: Preserve \\n markers for line breaks\n\t\t\tcontent: __(\n\t\t\t\t'// A “block” is the abstract term used\\n// to describe units of markup that\\n// when composed together, form the\\n// content or layout of a page.\\nregisterBlockType( name, settings );'\n\t\t\t),\n\t\t\t/* eslint-enable @wordpress/i18n-no-collapsible-whitespace */\n\t\t},\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,KAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,WAAA,GAAAH,sBAAA,CAAAH,OAAA;AAbA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAO,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,OAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;IAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,MAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAC,6BAAA;QAAAR,QAAA;MAAA;IAAA;IAAAS,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAH,6BAAA;QAAAE,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAR,6BAAA;QAAAO,KAAA;QAAAD,KAAA;MAAA;IAAA;IAAAA,KAAA;MAAAG,IAAA;MAAAC,UAAA;MAAAC,SAAA;MAAAX,6BAAA;QAAAU,UAAA;QAAAD,IAAA;MAAA;IAAA;EAAA;EAAAD,KAAA;AAAA;AAAAI,OAAA,
|
|
1
|
+
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_edit","_save","_transforms","metadata","$schema","apiVersion","name","title","category","description","textdomain","attributes","content","type","source","selector","__unstablePreserveWhiteSpace","supports","align","anchor","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalDefaultControls","spacing","margin","padding","__experimentalBorder","radius","color","width","style","text","background","gradients","exports","settings","icon","example","__","merge","attributesToMerge","transforms","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/code/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { code as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\t/* eslint-disable @wordpress/i18n-no-collapsible-whitespace */\n\t\t\t// translators: Preserve \\n markers for line breaks\n\t\t\tcontent: __(\n\t\t\t\t'// A “block” is the abstract term used\\n// to describe units of markup that\\n// when composed together, form the\\n// content or layout of a page.\\nregisterBlockType( name, settings );'\n\t\t\t),\n\t\t\t/* eslint-enable @wordpress/i18n-no-collapsible-whitespace */\n\t\t},\n\t},\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent: attributes.content + '\\n\\n' + attributesToMerge.content,\n\t\t};\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,KAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,WAAA,GAAAH,sBAAA,CAAAH,OAAA;AAbA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAO,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,OAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,4BAAA;IAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,MAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAC,6BAAA;QAAAR,QAAA;MAAA;IAAA;IAAAS,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAH,6BAAA;QAAAE,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAR,6BAAA;QAAAO,KAAA;QAAAD,KAAA;MAAA;IAAA;IAAAA,KAAA;MAAAG,IAAA;MAAAC,UAAA;MAAAC,SAAA;MAAAX,6BAAA;QAAAU,UAAA;QAAAD,IAAA;MAAA;IAAA;EAAA;EAAAD,KAAA;AAAA;AAAAI,OAAA,CAAAtC,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEG;AAAK,CAAC,GAAGH,QAAQ;AAACsC,OAAA,CAAAnC,IAAA,GAAAA,IAAA;AAInB,MAAMoC,QAAQ,GAAG;EACvBC,IAAI,EAAJA,WAAI;EACJC,OAAO,EAAE;IACRjC,UAAU,EAAE;MACX;MACA;MACAC,OAAO,EAAE,IAAAiC,QAAE,EACV,yLACD;MACA;IACD;EACD,CAAC;;EACDC,KAAKA,CAAEnC,UAAU,EAAEoC,iBAAiB,EAAG;IACtC,OAAO;MACNnC,OAAO,EAAED,UAAU,CAACC,OAAO,GAAG,MAAM,GAAGmC,iBAAiB,CAACnC;IAC1D,CAAC;EACF,CAAC;EACDoC,UAAU,EAAVA,mBAAU;EACVC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA;AACD,CAAC;AAACT,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMS,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE9C,IAAI;EAAEH,QAAQ;EAAEuC;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAU,IAAA,GAAAA,IAAA"}
|
package/build/column/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","metadata","$schema","apiVersion","name","title","category","parent","description","textdomain","attributes","verticalAlignment","type","width","allowedBlocks","templateLock","supports","__experimentalOnEnter","anchor","reusable","html","color","gradients","heading","link","__experimentalDefaultControls","background","text","spacing","blockGap","padding","__experimentalBorder","style","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","layout","exports","settings","icon","edit","save","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/column/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { column as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,KAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,iBAAA;MAAAC,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;IAAA;IAAAE,aAAA;MAAAF,IAAA;IAAA;IAAAG,YAAA;MAAAH,IAAA;MAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,qBAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAK,OAAA;QAAAD,QAAA;MAAA;IAAA;IAAAE,oBAAA;
|
|
1
|
+
{"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","metadata","$schema","apiVersion","name","title","category","parent","description","textdomain","attributes","verticalAlignment","type","width","allowedBlocks","templateLock","supports","__experimentalOnEnter","anchor","reusable","html","color","gradients","heading","button","link","__experimentalDefaultControls","background","text","spacing","blockGap","padding","__experimentalBorder","style","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","layout","exports","settings","icon","edit","save","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/column/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { column as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,KAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,iBAAA;MAAAC,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;IAAA;IAAAE,aAAA;MAAAF,IAAA;IAAA;IAAAG,YAAA;MAAAH,IAAA;MAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,qBAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,OAAA;MAAAC,MAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAK,OAAA;QAAAD,QAAA;MAAA;IAAA;IAAAE,oBAAA;MAAAX,KAAA;MAAAY,KAAA;MAAApB,KAAA;MAAAa,6BAAA;QAAAL,KAAA;QAAAY,KAAA;QAAApB,KAAA;MAAA;IAAA;IAAAqB,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAhB,6BAAA;QAAAS,QAAA;MAAA;IAAA;IAAAQ,MAAA;EAAA;AAAA;AAAAC,OAAA,CAAA3C,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEG;AAAK,CAAC,GAAGH,QAAQ;AAAC2C,OAAA,CAAAxC,IAAA,GAAAA,IAAA;AAInB,MAAMyC,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACL,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMK,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE/C,IAAI;EAAEH,QAAQ;EAAE4C;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAM,IAAA,GAAAA,IAAA"}
|