@wordpress/block-library 8.20.1 → 8.21.1-next.f8d8eceb.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 +7 -0
- package/README.md +12 -0
- package/build/avatar/index.js +5 -1
- package/build/avatar/index.js.map +1 -1
- package/build/block/edit-title.native.js +11 -3
- package/build/block/edit-title.native.js.map +1 -1
- package/build/block/index.js +2 -1
- package/build/block/index.js.map +1 -1
- package/build/code/edit.native.js +8 -2
- package/build/code/edit.native.js.map +1 -1
- package/build/column/edit.js +2 -1
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js +2 -1
- package/build/column/edit.native.js.map +1 -1
- package/build/columns/edit.native.js +2 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/cover/controls.native.js +2 -1
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js +110 -1
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/index.js +11 -4
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +3 -3
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/index.js +0 -3
- package/build/cover/index.js.map +1 -1
- package/build/cover/save.js +2 -1
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +1 -1
- package/build/cover/shared.js.map +1 -1
- package/build/file/view.js +1 -1
- package/build/file/view.js.map +1 -1
- package/build/footnotes/index.js +1 -0
- package/build/footnotes/index.js.map +1 -1
- package/build/form/edit.js +138 -0
- package/build/form/edit.js.map +1 -0
- package/build/form/index.js +92 -0
- package/build/form/index.js.map +1 -0
- package/build/form/init.js +13 -0
- package/build/form/init.js.map +1 -0
- package/build/form/save.js +28 -0
- package/build/form/save.js.map +1 -0
- package/build/form/utils.js +24 -0
- package/build/form/utils.js.map +1 -0
- package/build/form/variations.js +95 -0
- package/build/form/variations.js.map +1 -0
- package/build/form/view.js +42 -0
- package/build/form/view.js.map +1 -0
- package/build/form-input/edit.js +124 -0
- package/build/form-input/edit.js.map +1 -0
- package/build/form-input/index.js +105 -0
- package/build/form-input/index.js.map +1 -0
- package/build/form-input/init.js +13 -0
- package/build/form-input/init.js.map +1 -0
- package/build/form-input/save.js +87 -0
- package/build/form-input/save.js.map +1 -0
- package/build/form-input/variations.js +93 -0
- package/build/form-input/variations.js.map +1 -0
- package/build/form-submission-notification/edit.js +59 -0
- package/build/form-submission-notification/edit.js.map +1 -0
- package/build/form-submission-notification/index.js +56 -0
- package/build/form-submission-notification/index.js.map +1 -0
- package/build/form-submission-notification/init.js +13 -0
- package/build/form-submission-notification/init.js.map +1 -0
- package/build/form-submission-notification/save.js +33 -0
- package/build/form-submission-notification/save.js.map +1 -0
- package/build/form-submission-notification/variations.js +63 -0
- package/build/form-submission-notification/variations.js.map +1 -0
- package/build/form-submit-button/edit.js +32 -0
- package/build/form-submit-button/edit.js.map +1 -0
- package/build/form-submit-button/index.js +44 -0
- package/build/form-submit-button/index.js.map +1 -0
- package/build/form-submit-button/init.js +13 -0
- package/build/form-submit-button/init.js.map +1 -0
- package/build/form-submit-button/save.js +22 -0
- package/build/form-submit-button/save.js.map +1 -0
- package/build/group/edit.js +2 -11
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +0 -1
- package/build/group/index.js.map +1 -1
- package/build/heading/index.js +3 -2
- package/build/heading/index.js.map +1 -1
- package/build/html/preview.js +2 -4
- package/build/html/preview.js.map +1 -1
- package/build/image/image.js +15 -6
- package/build/image/image.js.map +1 -1
- package/build/image/view.js +71 -39
- package/build/image/view.js.map +1 -1
- package/build/index.js +10 -0
- package/build/index.js.map +1 -1
- package/build/latest-posts/edit.js +6 -2
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list-item/hooks/use-merge.js +15 -15
- package/build/list-item/hooks/use-merge.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/missing/edit.native.js +54 -64
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/edit/index.js +0 -1
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/index.js +2 -1
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/view.js +27 -5
- package/build/navigation/view.js.map +1 -1
- package/build/page-list-item/edit.js +3 -1
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/edit.js +1 -1
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/index.js +7 -0
- package/build/paragraph/index.js.map +1 -1
- package/build/pattern/index.js +2 -1
- package/build/pattern/index.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +2 -2
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +27 -13
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +15 -12
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/utils.js +29 -8
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +4 -2
- package/build/query/view.js.map +1 -1
- package/build/search/edit.js +1 -2
- package/build/search/edit.js.map +1 -1
- package/build/social-link/edit.native.js +7 -19
- package/build/social-link/edit.native.js.map +1 -1
- package/build/spacer/controls.js +3 -3
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +2 -1
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.js +1 -1
- package/build/spacer/edit.js.map +1 -1
- package/build/spacer/edit.native.js +5 -1
- package/build/spacer/edit.native.js.map +1 -1
- package/build/tag-cloud/edit.js +2 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +2 -2
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/index.js +2 -1
- package/build/template-part/index.js.map +1 -1
- package/build/term-description/index.js +0 -1
- package/build/term-description/index.js.map +1 -1
- package/build-module/avatar/index.js +5 -1
- package/build-module/avatar/index.js.map +1 -1
- package/build-module/block/edit-title.native.js +12 -4
- package/build-module/block/edit-title.native.js.map +1 -1
- package/build-module/block/index.js +2 -1
- package/build-module/block/index.js.map +1 -1
- package/build-module/code/edit.native.js +8 -2
- package/build-module/code/edit.native.js.map +1 -1
- package/build-module/column/edit.js +3 -2
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/edit.native.js +3 -2
- package/build-module/column/edit.native.js.map +1 -1
- package/build-module/columns/edit.native.js +3 -2
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/cover/controls.native.js +3 -2
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/deprecated.js +110 -1
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/index.js +12 -5
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +4 -4
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/index.js +0 -3
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/save.js +2 -1
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js +1 -1
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/file/view.js +2 -2
- package/build-module/file/view.js.map +1 -1
- package/build-module/footnotes/index.js +1 -0
- package/build-module/footnotes/index.js.map +1 -1
- package/build-module/form/edit.js +130 -0
- package/build-module/form/edit.js.map +1 -0
- package/build-module/form/index.js +82 -0
- package/build-module/form/index.js.map +1 -0
- package/build-module/form/init.js +6 -0
- package/build-module/form/init.js.map +1 -0
- package/build-module/form/save.js +20 -0
- package/build-module/form/save.js.map +1 -0
- package/build-module/form/utils.js +15 -0
- package/build-module/form/utils.js.map +1 -0
- package/build-module/form/variations.js +86 -0
- package/build-module/form/variations.js.map +1 -0
- package/build-module/form/view.js +40 -0
- package/build-module/form/view.js.map +1 -0
- package/build-module/form-input/edit.js +115 -0
- package/build-module/form-input/edit.js.map +1 -0
- package/build-module/form-input/index.js +95 -0
- package/build-module/form-input/index.js.map +1 -0
- package/build-module/form-input/init.js +6 -0
- package/build-module/form-input/init.js.map +1 -0
- package/build-module/form-input/save.js +80 -0
- package/build-module/form-input/save.js.map +1 -0
- package/build-module/form-input/variations.js +85 -0
- package/build-module/form-input/variations.js.map +1 -0
- package/build-module/form-submission-notification/edit.js +50 -0
- package/build-module/form-submission-notification/edit.js.map +1 -0
- package/build-module/form-submission-notification/index.js +47 -0
- package/build-module/form-submission-notification/index.js.map +1 -0
- package/build-module/form-submission-notification/init.js +6 -0
- package/build-module/form-submission-notification/init.js.map +1 -0
- package/build-module/form-submission-notification/save.js +25 -0
- package/build-module/form-submission-notification/save.js.map +1 -0
- package/build-module/form-submission-notification/variations.js +55 -0
- package/build-module/form-submission-notification/variations.js.map +1 -0
- package/build-module/form-submit-button/edit.js +24 -0
- package/build-module/form-submit-button/edit.js.map +1 -0
- package/build-module/form-submit-button/index.js +34 -0
- package/build-module/form-submit-button/index.js.map +1 -0
- package/build-module/form-submit-button/init.js +6 -0
- package/build-module/form-submit-button/init.js.map +1 -0
- package/build-module/form-submit-button/save.js +14 -0
- package/build-module/form-submit-button/save.js.map +1 -0
- package/build-module/group/edit.js +3 -12
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +0 -1
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/index.js +3 -2
- package/build-module/heading/index.js.map +1 -1
- package/build-module/html/preview.js +2 -4
- package/build-module/html/preview.js.map +1 -1
- package/build-module/image/image.js +16 -7
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/view.js +71 -39
- package/build-module/image/view.js.map +1 -1
- package/build-module/index.js +10 -0
- package/build-module/index.js.map +1 -1
- package/build-module/latest-posts/edit.js +6 -2
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list-item/hooks/use-merge.js +15 -15
- package/build-module/list-item/hooks/use-merge.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/missing/edit.native.js +58 -68
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +0 -1
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/index.js +2 -1
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/view.js +27 -5
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/page-list-item/edit.js +3 -1
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +2 -2
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/index.js +7 -0
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/pattern/index.js +2 -1
- package/build-module/pattern/index.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +3 -3
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +28 -14
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +17 -14
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/utils.js +27 -5
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +4 -2
- package/build-module/query/view.js.map +1 -1
- package/build-module/search/edit.js +2 -3
- package/build-module/search/edit.js.map +1 -1
- package/build-module/social-link/edit.native.js +8 -20
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/spacer/controls.js +4 -4
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +3 -2
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.js +2 -2
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/spacer/edit.native.js +6 -2
- package/build-module/spacer/edit.native.js.map +1 -1
- package/build-module/tag-cloud/edit.js +3 -2
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +3 -3
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/index.js +2 -1
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/term-description/index.js +0 -1
- package/build-module/term-description/index.js.map +1 -1
- package/build-style/editor-rtl.css +50 -0
- package/build-style/editor.css +50 -0
- package/build-style/file/style-rtl.css +0 -5
- package/build-style/file/style.css +0 -5
- package/build-style/form-input/editor-rtl.css +106 -0
- package/build-style/form-input/editor.css +106 -0
- package/build-style/form-input/style-rtl.css +135 -0
- package/build-style/form-input/style.css +135 -0
- package/build-style/form-submission-notification/editor-rtl.css +118 -0
- package/build-style/form-submission-notification/editor.css +118 -0
- package/build-style/form-submit-button/style-rtl.css +91 -0
- package/build-style/form-submit-button/style.css +91 -0
- package/build-style/image/style-rtl.css +39 -5
- package/build-style/image/style.css +39 -5
- package/build-style/navigation/style-rtl.css +5 -0
- package/build-style/navigation/style.css +5 -0
- package/build-style/query/style-rtl.css +0 -10
- package/build-style/query/style.css +0 -10
- package/build-style/style-rtl.css +92 -10
- package/build-style/style.css +92 -10
- package/package.json +32 -32
- package/src/avatar/block.json +5 -1
- package/src/block/block.json +2 -1
- package/src/block/edit-title.native.js +16 -13
- package/src/calendar/index.php +2 -6
- package/src/code/edit.native.js +15 -1
- package/src/column/edit.js +3 -8
- package/src/column/edit.native.js +3 -8
- package/src/columns/edit.native.js +3 -8
- package/src/comment-author-avatar/index.php +1 -1
- package/src/cover/block.json +0 -3
- package/src/cover/controls.native.js +3 -8
- package/src/cover/deprecated.js +151 -1
- package/src/cover/edit/index.js +15 -5
- package/src/cover/edit/inspector-controls.js +22 -33
- package/src/cover/save.js +2 -1
- package/src/cover/shared.js +1 -1
- package/src/editor.scss +2 -0
- package/src/file/index.php +2 -1
- package/src/file/style.scss +0 -6
- package/src/file/view.js +2 -2
- package/src/footnotes/block.json +1 -0
- package/src/form/block.json +60 -0
- package/src/form/edit.js +179 -0
- package/src/form/index.js +20 -0
- package/src/form/index.php +214 -0
- package/src/form/init.js +6 -0
- package/src/form/save.js +20 -0
- package/src/form/utils.js +39 -0
- package/src/form/variations.js +139 -0
- package/src/form/view.js +41 -0
- package/src/form-input/block.json +73 -0
- package/src/form-input/edit.js +151 -0
- package/src/form-input/editor.scss +24 -0
- package/src/form-input/index.js +20 -0
- package/src/form-input/index.php +45 -0
- package/src/form-input/init.js +6 -0
- package/src/form-input/save.js +83 -0
- package/src/form-input/style.scss +61 -0
- package/src/form-input/variations.js +82 -0
- package/src/form-submission-notification/block.json +19 -0
- package/src/form-submission-notification/edit.js +63 -0
- package/src/form-submission-notification/editor.scss +45 -0
- package/src/form-submission-notification/index.js +26 -0
- package/src/form-submission-notification/index.php +48 -0
- package/src/form-submission-notification/init.js +6 -0
- package/src/form-submission-notification/save.js +28 -0
- package/src/form-submission-notification/variations.js +59 -0
- package/src/form-submit-button/block.json +14 -0
- package/src/form-submit-button/edit.js +33 -0
- package/src/form-submit-button/index.js +18 -0
- package/src/form-submit-button/init.js +6 -0
- package/src/form-submit-button/save.js +14 -0
- package/src/form-submit-button/style.scss +3 -0
- package/src/freeform/test/__snapshots__/index.native.js.snap +7 -0
- package/src/freeform/test/index.native.js +57 -0
- package/src/group/block.json +0 -1
- package/src/group/edit.js +2 -7
- package/src/heading/index.js +4 -2
- package/src/html/preview.js +9 -4
- package/src/image/image.js +27 -6
- package/src/image/index.php +128 -83
- package/src/image/style.scss +49 -5
- package/src/image/view.js +93 -51
- package/src/index.js +10 -0
- package/src/latest-posts/edit.js +11 -2
- package/src/latest-posts/index.php +17 -8
- package/src/list-item/hooks/use-merge.js +20 -23
- package/src/lock-unlock.js +1 -1
- package/src/missing/edit.native.js +56 -117
- package/src/missing/style.native.scss +0 -67
- package/src/missing/test/edit-integration.native.js +135 -49
- package/src/missing/test/edit.native.js +0 -41
- package/src/navigation/block.json +2 -1
- package/src/navigation/edit/index.js +0 -1
- package/src/navigation/index.php +28 -8
- package/src/navigation/style.scss +6 -1
- package/src/navigation/view.js +25 -6
- package/src/page-list-item/edit.js +2 -0
- package/src/paragraph/edit.js +2 -2
- package/src/paragraph/index.js +10 -0
- package/src/pattern/block.json +2 -1
- package/src/pattern/index.php +0 -3
- package/src/post-featured-image/dimension-controls.js +3 -3
- package/src/post-navigation-link/index.php +2 -1
- package/src/preformatted/test/edit.native.js +38 -0
- package/src/query/edit/enhanced-pagination-modal.js +37 -21
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +18 -22
- package/src/query/index.php +100 -10
- package/src/query/style.scss +0 -11
- package/src/query/utils.js +29 -8
- package/src/query/view.js +11 -2
- package/src/query-pagination-next/index.php +1 -1
- package/src/query-pagination-previous/index.php +1 -1
- package/src/search/edit.js +5 -3
- package/src/search/index.php +0 -4
- package/src/social-link/edit.native.js +12 -26
- package/src/social-link/editor.native.scss +0 -9
- package/src/social-link/index.php +2 -2
- package/src/spacer/controls.js +9 -12
- package/src/spacer/controls.native.js +3 -8
- package/src/spacer/edit.js +2 -2
- package/src/spacer/edit.native.js +6 -5
- package/src/style.scss +1 -0
- package/src/tag-cloud/edit.js +3 -7
- package/src/template-part/block.json +2 -1
- package/src/template-part/edit/inner-blocks.js +3 -3
- package/src/template-part/index.php +4 -7
- package/src/term-description/block.json +0 -1
- package/src/verse/test/edit.native.js +37 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _i18n = require("@wordpress/i18n");
|
|
9
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
10
|
+
var _components = require("@wordpress/components");
|
|
11
|
+
var _data = require("@wordpress/data");
|
|
12
|
+
var _utils = require("./utils.js");
|
|
13
|
+
/**
|
|
14
|
+
* WordPress dependencies
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Internal dependencies
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
const ALLOWED_BLOCKS = ['core/paragraph', 'core/heading', 'core/form-input', 'core/form-submit-button', 'core/form-submission-notification'];
|
|
22
|
+
const TEMPLATE = [_utils.formSubmissionNotificationSuccess, _utils.formSubmissionNotificationError, ['core/form-input', {
|
|
23
|
+
type: 'text',
|
|
24
|
+
label: (0, _i18n.__)('Name'),
|
|
25
|
+
required: true
|
|
26
|
+
}], ['core/form-input', {
|
|
27
|
+
type: 'email',
|
|
28
|
+
label: (0, _i18n.__)('Email'),
|
|
29
|
+
required: true
|
|
30
|
+
}], ['core/form-input', {
|
|
31
|
+
type: 'textarea',
|
|
32
|
+
label: (0, _i18n.__)('Comment'),
|
|
33
|
+
required: true
|
|
34
|
+
}], ['core/form-submit-button', {}]];
|
|
35
|
+
const Edit = ({
|
|
36
|
+
attributes,
|
|
37
|
+
setAttributes,
|
|
38
|
+
clientId
|
|
39
|
+
}) => {
|
|
40
|
+
const {
|
|
41
|
+
action,
|
|
42
|
+
method,
|
|
43
|
+
email,
|
|
44
|
+
submissionMethod
|
|
45
|
+
} = attributes;
|
|
46
|
+
const blockProps = (0, _blockEditor.useBlockProps)();
|
|
47
|
+
const {
|
|
48
|
+
hasInnerBlocks
|
|
49
|
+
} = (0, _data.useSelect)(select => {
|
|
50
|
+
const {
|
|
51
|
+
getBlock
|
|
52
|
+
} = select(_blockEditor.store);
|
|
53
|
+
const block = getBlock(clientId);
|
|
54
|
+
return {
|
|
55
|
+
hasInnerBlocks: !!(block && block.innerBlocks.length)
|
|
56
|
+
};
|
|
57
|
+
}, [clientId]);
|
|
58
|
+
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
59
|
+
allowedBlocks: ALLOWED_BLOCKS,
|
|
60
|
+
template: TEMPLATE,
|
|
61
|
+
renderAppender: hasInnerBlocks ? undefined : _blockEditor.InnerBlocks.ButtonBlockAppender
|
|
62
|
+
});
|
|
63
|
+
return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_blockEditor.InspectorControls, null, (0, _react.createElement)(_components.PanelBody, {
|
|
64
|
+
title: (0, _i18n.__)('Settings')
|
|
65
|
+
}, (0, _react.createElement)(_components.SelectControl
|
|
66
|
+
// __nextHasNoMarginBottom
|
|
67
|
+
// size={ '__unstable-large' }
|
|
68
|
+
, {
|
|
69
|
+
label: (0, _i18n.__)('Submissions method'),
|
|
70
|
+
options: [
|
|
71
|
+
// TODO: Allow plugins to add their own submission methods.
|
|
72
|
+
{
|
|
73
|
+
label: (0, _i18n.__)('Send email'),
|
|
74
|
+
value: 'email'
|
|
75
|
+
}, {
|
|
76
|
+
label: (0, _i18n.__)('- Custom -'),
|
|
77
|
+
value: 'custom'
|
|
78
|
+
}],
|
|
79
|
+
value: submissionMethod,
|
|
80
|
+
onChange: value => setAttributes({
|
|
81
|
+
submissionMethod: value
|
|
82
|
+
}),
|
|
83
|
+
help: submissionMethod === 'custom' ? (0, _i18n.__)('Select the method to use for form submissions. Additional options for the "custom" mode can be found in the "Advanced" section.') : (0, _i18n.__)('Select the method to use for form submissions.')
|
|
84
|
+
}), submissionMethod === 'email' && (0, _react.createElement)(_components.TextControl, {
|
|
85
|
+
__nextHasNoMarginBottom: true,
|
|
86
|
+
autoComplete: "off",
|
|
87
|
+
label: (0, _i18n.__)('Email for form submissions'),
|
|
88
|
+
value: email,
|
|
89
|
+
required: true,
|
|
90
|
+
onChange: value => {
|
|
91
|
+
setAttributes({
|
|
92
|
+
email: value
|
|
93
|
+
});
|
|
94
|
+
setAttributes({
|
|
95
|
+
action: `mailto:${value}`
|
|
96
|
+
});
|
|
97
|
+
setAttributes({
|
|
98
|
+
method: 'post'
|
|
99
|
+
});
|
|
100
|
+
},
|
|
101
|
+
help: (0, _i18n.__)('The email address where form submissions will be sent. Separate multiple email addresses with a comma.')
|
|
102
|
+
}))), submissionMethod !== 'email' && (0, _react.createElement)(_blockEditor.InspectorControls, {
|
|
103
|
+
group: "advanced"
|
|
104
|
+
}, (0, _react.createElement)(_components.SelectControl, {
|
|
105
|
+
__nextHasNoMarginBottom: true,
|
|
106
|
+
label: (0, _i18n.__)('Method'),
|
|
107
|
+
options: [{
|
|
108
|
+
label: 'Get',
|
|
109
|
+
value: 'get'
|
|
110
|
+
}, {
|
|
111
|
+
label: 'Post',
|
|
112
|
+
value: 'post'
|
|
113
|
+
}],
|
|
114
|
+
value: method,
|
|
115
|
+
onChange: value => setAttributes({
|
|
116
|
+
method: value
|
|
117
|
+
}),
|
|
118
|
+
help: (0, _i18n.__)('Select the method to use for form submissions.')
|
|
119
|
+
}), (0, _react.createElement)(_components.TextControl, {
|
|
120
|
+
__nextHasNoMarginBottom: true,
|
|
121
|
+
autoComplete: "off",
|
|
122
|
+
label: (0, _i18n.__)('Form action'),
|
|
123
|
+
value: action,
|
|
124
|
+
onChange: newVal => {
|
|
125
|
+
setAttributes({
|
|
126
|
+
action: newVal
|
|
127
|
+
});
|
|
128
|
+
},
|
|
129
|
+
help: (0, _i18n.__)('The URL where the form should be submitted.')
|
|
130
|
+
})), (0, _react.createElement)("form", {
|
|
131
|
+
...innerBlocksProps,
|
|
132
|
+
className: "wp-block-form",
|
|
133
|
+
encType: submissionMethod === 'email' ? 'text/plain' : null
|
|
134
|
+
}));
|
|
135
|
+
};
|
|
136
|
+
var _default = Edit;
|
|
137
|
+
exports.default = _default;
|
|
138
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_components","_data","_utils","ALLOWED_BLOCKS","TEMPLATE","formSubmissionNotificationSuccess","formSubmissionNotificationError","type","label","__","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","useBlockProps","hasInnerBlocks","useSelect","select","getBlock","blockEditorStore","block","innerBlocks","length","innerBlocksProps","useInnerBlocksProps","allowedBlocks","template","renderAppender","undefined","InnerBlocks","ButtonBlockAppender","_react","createElement","Fragment","InspectorControls","PanelBody","title","SelectControl","options","value","onChange","help","TextControl","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType","_default","exports","default"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst ALLOWED_BLOCKS = [\n\t'core/paragraph',\n\t'core/heading',\n\t'core/form-input',\n\t'core/form-submit-button',\n\t'core/form-submission-notification',\n];\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.settings = exports.name = exports.metadata = exports.init = void 0;
|
|
8
|
+
var _initBlock = _interopRequireDefault(require("../utils/init-block"));
|
|
9
|
+
var _edit = _interopRequireDefault(require("./edit"));
|
|
10
|
+
var _save = _interopRequireDefault(require("./save"));
|
|
11
|
+
var _variations = _interopRequireDefault(require("./variations"));
|
|
12
|
+
/**
|
|
13
|
+
* Internal dependencies
|
|
14
|
+
*/
|
|
15
|
+
const metadata = {
|
|
16
|
+
$schema: "https://schemas.wp.org/trunk/block.json",
|
|
17
|
+
apiVersion: 3,
|
|
18
|
+
__experimental: true,
|
|
19
|
+
name: "core/form",
|
|
20
|
+
title: "Form",
|
|
21
|
+
category: "common",
|
|
22
|
+
description: "A form.",
|
|
23
|
+
keywords: ["container", "wrapper", "row", "section"],
|
|
24
|
+
textdomain: "default",
|
|
25
|
+
icon: "feedback",
|
|
26
|
+
attributes: {
|
|
27
|
+
submissionMethod: {
|
|
28
|
+
type: "string",
|
|
29
|
+
"default": "email"
|
|
30
|
+
},
|
|
31
|
+
method: {
|
|
32
|
+
type: "string",
|
|
33
|
+
"default": "post"
|
|
34
|
+
},
|
|
35
|
+
action: {
|
|
36
|
+
type: "string"
|
|
37
|
+
},
|
|
38
|
+
email: {
|
|
39
|
+
type: "string"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
supports: {
|
|
43
|
+
anchor: true,
|
|
44
|
+
className: false,
|
|
45
|
+
color: {
|
|
46
|
+
gradients: true,
|
|
47
|
+
link: true,
|
|
48
|
+
__experimentalDefaultControls: {
|
|
49
|
+
background: true,
|
|
50
|
+
text: true,
|
|
51
|
+
link: true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
spacing: {
|
|
55
|
+
margin: true,
|
|
56
|
+
padding: true
|
|
57
|
+
},
|
|
58
|
+
typography: {
|
|
59
|
+
fontSize: true,
|
|
60
|
+
lineHeight: true,
|
|
61
|
+
__experimentalFontFamily: true,
|
|
62
|
+
__experimentalTextDecoration: true,
|
|
63
|
+
__experimentalFontStyle: true,
|
|
64
|
+
__experimentalFontWeight: true,
|
|
65
|
+
__experimentalLetterSpacing: true,
|
|
66
|
+
__experimentalTextTransform: true,
|
|
67
|
+
__experimentalDefaultControls: {
|
|
68
|
+
fontSize: true
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
__experimentalSelector: "form"
|
|
72
|
+
},
|
|
73
|
+
viewScript: "file:./view.min.js"
|
|
74
|
+
};
|
|
75
|
+
exports.metadata = metadata;
|
|
76
|
+
const {
|
|
77
|
+
name
|
|
78
|
+
} = metadata;
|
|
79
|
+
exports.name = name;
|
|
80
|
+
const settings = {
|
|
81
|
+
edit: _edit.default,
|
|
82
|
+
save: _save.default,
|
|
83
|
+
variations: _variations.default
|
|
84
|
+
};
|
|
85
|
+
exports.settings = settings;
|
|
86
|
+
const init = () => (0, _initBlock.default)({
|
|
87
|
+
name,
|
|
88
|
+
metadata,
|
|
89
|
+
settings
|
|
90
|
+
});
|
|
91
|
+
exports.init = init;
|
|
92
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","description","keywords","textdomain","icon","attributes","submissionMethod","type","method","action","email","supports","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalSelector","viewScript","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAPA;AACA;AACA;AAFA,MAAAI,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,gBAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,MAAA;MAAAF,IAAA;IAAA;IAAAG,KAAA;MAAAH,IAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAd,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAQ,sBAAA;EAAA;EAAAC,UAAA;AAAA;AAAAC,OAAA,CAAAxC,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACwC,OAAA,CAAApC,IAAA,GAAAA,IAAA;AAInB,MAAMqC,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE1C,IAAI;EAAEJ,QAAQ;EAAEyC;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _ = require("./");
|
|
8
|
+
/**
|
|
9
|
+
* Internal dependencies
|
|
10
|
+
*/
|
|
11
|
+
var _default = (0, _.init)();
|
|
12
|
+
exports.default = _default;
|
|
13
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_","require","_default","init","exports","default"],"sources":["@wordpress/block-library/src/form/init.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { init } from './';\n\nexport default init();\n"],"mappings":";;;;;;AAGA,IAAAA,CAAA,GAAAC,OAAA;AAHA;AACA;AACA;AAFA,IAAAC,QAAA,GAKe,IAAAC,MAAI,EAAC,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAH,QAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
9
|
+
/**
|
|
10
|
+
* WordPress dependencies
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
const Save = ({
|
|
14
|
+
attributes
|
|
15
|
+
}) => {
|
|
16
|
+
const blockProps = _blockEditor.useBlockProps.save();
|
|
17
|
+
const {
|
|
18
|
+
submissionMethod
|
|
19
|
+
} = attributes;
|
|
20
|
+
return (0, _react.createElement)("form", {
|
|
21
|
+
...blockProps,
|
|
22
|
+
className: "wp-block-form",
|
|
23
|
+
encType: submissionMethod === 'email' ? 'text/plain' : null
|
|
24
|
+
}, (0, _react.createElement)(_blockEditor.InnerBlocks.Content, null));
|
|
25
|
+
};
|
|
26
|
+
var _default = Save;
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
//# sourceMappingURL=save.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_blockEditor","require","Save","attributes","blockProps","useBlockProps","save","submissionMethod","_react","createElement","className","encType","InnerBlocks","Content","_default","exports","default"],"sources":["@wordpress/block-library/src/form/save.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InnerBlocks, useBlockProps } from '@wordpress/block-editor';\n\nconst Save = ( { attributes } ) => {\n\tconst blockProps = useBlockProps.save();\n\tconst { submissionMethod } = attributes;\n\n\treturn (\n\t\t<form\n\t\t\t{ ...blockProps }\n\t\t\tclassName=\"wp-block-form\"\n\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t>\n\t\t\t<InnerBlocks.Content />\n\t\t</form>\n\t);\n};\nexport default Save;\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA,MAAMC,IAAI,GAAGA,CAAE;EAAEC;AAAW,CAAC,KAAM;EAClC,MAAMC,UAAU,GAAGC,0BAAa,CAACC,IAAI,CAAC,CAAC;EACvC,MAAM;IAAEC;EAAiB,CAAC,GAAGJ,UAAU;EAEvC,OACC,IAAAK,MAAA,CAAAC,aAAA;IAAA,GACML,UAAU;IACfM,SAAS,EAAC,eAAe;IACzBC,OAAO,EAAGJ,gBAAgB,KAAK,OAAO,GAAG,YAAY,GAAG;EAAM,GAE9D,IAAAC,MAAA,CAAAC,aAAA,EAACT,YAAA,CAAAY,WAAW,CAACC,OAAO,MAAE,CACjB,CAAC;AAET,CAAC;AAAC,IAAAC,QAAA,GACaZ,IAAI;AAAAa,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.formSubmissionNotificationSuccess = exports.formSubmissionNotificationError = void 0;
|
|
7
|
+
var _i18n = require("@wordpress/i18n");
|
|
8
|
+
/**
|
|
9
|
+
* WordPress dependencies
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const formSubmissionNotificationSuccess = ['core/form-submission-notification', {
|
|
13
|
+
type: 'success'
|
|
14
|
+
}, [['core/paragraph', {
|
|
15
|
+
content: '<mark style="background-color:rgba(0, 0, 0, 0);color:#345C00" class="has-inline-color">' + (0, _i18n.__)('Your form has been submitted successfully') + '</mark>'
|
|
16
|
+
}]]];
|
|
17
|
+
exports.formSubmissionNotificationSuccess = formSubmissionNotificationSuccess;
|
|
18
|
+
const formSubmissionNotificationError = ['core/form-submission-notification', {
|
|
19
|
+
type: 'error'
|
|
20
|
+
}, [['core/paragraph', {
|
|
21
|
+
content: '<mark style="background-color:rgba(0, 0, 0, 0);color:#CF2E2E" class="has-inline-color">' + (0, _i18n.__)('There was an error submitting your form.') + '</mark>'
|
|
22
|
+
}]]];
|
|
23
|
+
exports.formSubmissionNotificationError = formSubmissionNotificationError;
|
|
24
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_i18n","require","formSubmissionNotificationSuccess","type","content","__","exports","formSubmissionNotificationError"],"sources":["@wordpress/block-library/src/form/utils.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const formSubmissionNotificationSuccess = [\n\t'core/form-submission-notification',\n\t{\n\t\ttype: 'success',\n\t},\n\t[\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\tcontent:\n\t\t\t\t\t'<mark style=\"background-color:rgba(0, 0, 0, 0);color:#345C00\" class=\"has-inline-color\">' +\n\t\t\t\t\t__( 'Your form has been submitted successfully' ) +\n\t\t\t\t\t'</mark>',\n\t\t\t},\n\t\t],\n\t],\n];\nexport const formSubmissionNotificationError = [\n\t'core/form-submission-notification',\n\t{\n\t\ttype: 'error',\n\t},\n\t[\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\tcontent:\n\t\t\t\t\t'<mark style=\"background-color:rgba(0, 0, 0, 0);color:#CF2E2E\" class=\"has-inline-color\">' +\n\t\t\t\t\t__( 'There was an error submitting your form.' ) +\n\t\t\t\t\t'</mark>',\n\t\t\t},\n\t\t],\n\t],\n];\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGO,MAAMC,iCAAiC,GAAG,CAChD,mCAAmC,EACnC;EACCC,IAAI,EAAE;AACP,CAAC,EACD,CACC,CACC,gBAAgB,EAChB;EACCC,OAAO,EACN,yFAAyF,GACzF,IAAAC,QAAE,EAAE,2CAA4C,CAAC,GACjD;AACF,CAAC,CACD,CACD,CACD;AAACC,OAAA,CAAAJ,iCAAA,GAAAA,iCAAA;AACK,MAAMK,+BAA+B,GAAG,CAC9C,mCAAmC,EACnC;EACCJ,IAAI,EAAE;AACP,CAAC,EACD,CACC,CACC,gBAAgB,EAChB;EACCC,OAAO,EACN,yFAAyF,GACzF,IAAAC,QAAE,EAAE,0CAA2C,CAAC,GAChD;AACF,CAAC,CACD,CACD,CACD;AAACC,OAAA,CAAAC,+BAAA,GAAAA,+BAAA"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _i18n = require("@wordpress/i18n");
|
|
8
|
+
var _utils = require("./utils.js");
|
|
9
|
+
/**
|
|
10
|
+
* WordPress dependencies
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Internal dependencies
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
const variations = [{
|
|
18
|
+
name: 'comment-form',
|
|
19
|
+
title: (0, _i18n.__)('Experimental Comment form'),
|
|
20
|
+
description: (0, _i18n.__)('A comment form for posts and pages.'),
|
|
21
|
+
attributes: {
|
|
22
|
+
submissionMethod: 'custom',
|
|
23
|
+
action: '{SITE_URL}/wp-comments-post.php',
|
|
24
|
+
method: 'post',
|
|
25
|
+
anchor: 'comment-form'
|
|
26
|
+
},
|
|
27
|
+
isDefault: false,
|
|
28
|
+
innerBlocks: [['core/form-input', {
|
|
29
|
+
type: 'text',
|
|
30
|
+
name: 'author',
|
|
31
|
+
label: (0, _i18n.__)('Name'),
|
|
32
|
+
required: true,
|
|
33
|
+
visibilityPermissions: 'logged-out'
|
|
34
|
+
}], ['core/form-input', {
|
|
35
|
+
type: 'email',
|
|
36
|
+
name: 'email',
|
|
37
|
+
label: (0, _i18n.__)('Email'),
|
|
38
|
+
required: true,
|
|
39
|
+
visibilityPermissions: 'logged-out'
|
|
40
|
+
}], ['core/form-input', {
|
|
41
|
+
type: 'textarea',
|
|
42
|
+
name: 'comment',
|
|
43
|
+
label: (0, _i18n.__)('Comment'),
|
|
44
|
+
required: true,
|
|
45
|
+
visibilityPermissions: 'all'
|
|
46
|
+
}], ['core/form-submit-button', {}]],
|
|
47
|
+
scope: ['inserter', 'transform'],
|
|
48
|
+
isActive: blockAttributes => !blockAttributes?.type || blockAttributes?.type === 'text'
|
|
49
|
+
}, {
|
|
50
|
+
name: 'wp-privacy-form',
|
|
51
|
+
title: (0, _i18n.__)('Experimental privacy request form'),
|
|
52
|
+
keywords: ['GDPR'],
|
|
53
|
+
description: (0, _i18n.__)('A form to request data exports and/or deletion.'),
|
|
54
|
+
attributes: {
|
|
55
|
+
submissionMethod: 'custom',
|
|
56
|
+
action: '',
|
|
57
|
+
method: 'post',
|
|
58
|
+
anchor: 'gdpr-form'
|
|
59
|
+
},
|
|
60
|
+
isDefault: false,
|
|
61
|
+
innerBlocks: [_utils.formSubmissionNotificationSuccess, _utils.formSubmissionNotificationError, ['core/paragraph', {
|
|
62
|
+
content: (0, _i18n.__)('To request an export or deletion of your personal data on this site, please fill-in the form below. You can define the type of request you wish to perform, and your email address. Once the form is submitted, you will receive a confirmation email with instructions on the next steps.')
|
|
63
|
+
}], ['core/form-input', {
|
|
64
|
+
type: 'email',
|
|
65
|
+
name: 'email',
|
|
66
|
+
label: (0, _i18n.__)('Enter your email address.'),
|
|
67
|
+
required: true,
|
|
68
|
+
visibilityPermissions: 'all'
|
|
69
|
+
}], ['core/form-input', {
|
|
70
|
+
type: 'checkbox',
|
|
71
|
+
name: 'export_personal_data',
|
|
72
|
+
label: (0, _i18n.__)('Request data export'),
|
|
73
|
+
required: false,
|
|
74
|
+
visibilityPermissions: 'all'
|
|
75
|
+
}], ['core/form-input', {
|
|
76
|
+
type: 'checkbox',
|
|
77
|
+
name: 'remove_personal_data',
|
|
78
|
+
label: (0, _i18n.__)('Request data deletion'),
|
|
79
|
+
required: false,
|
|
80
|
+
visibilityPermissions: 'all'
|
|
81
|
+
}], ['core/form-submit-button', {}], ['core/form-input', {
|
|
82
|
+
type: 'hidden',
|
|
83
|
+
name: 'wp-action',
|
|
84
|
+
value: 'wp_privacy_send_request'
|
|
85
|
+
}], ['core/form-input', {
|
|
86
|
+
type: 'hidden',
|
|
87
|
+
name: 'wp-privacy-request',
|
|
88
|
+
value: '1'
|
|
89
|
+
}]],
|
|
90
|
+
scope: ['inserter', 'transform'],
|
|
91
|
+
isActive: blockAttributes => !blockAttributes?.type || blockAttributes?.type === 'text'
|
|
92
|
+
}];
|
|
93
|
+
var _default = variations;
|
|
94
|
+
exports.default = _default;
|
|
95
|
+
//# sourceMappingURL=variations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_i18n","require","_utils","variations","name","title","__","description","attributes","submissionMethod","action","method","anchor","isDefault","innerBlocks","type","label","required","visibilityPermissions","scope","isActive","blockAttributes","keywords","formSubmissionNotificationSuccess","formSubmissionNotificationError","content","value","_default","exports","default"],"sources":["@wordpress/block-library/src/form/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst variations = [\n\t{\n\t\tname: 'comment-form',\n\t\ttitle: __( 'Experimental Comment form' ),\n\t\tdescription: __( 'A comment form for posts and pages.' ),\n\t\tattributes: {\n\t\t\tsubmissionMethod: 'custom',\n\t\t\taction: '{SITE_URL}/wp-comments-post.php',\n\t\t\tmethod: 'post',\n\t\t\tanchor: 'comment-form',\n\t\t},\n\t\tisDefault: false,\n\t\tinnerBlocks: [\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tname: 'author',\n\t\t\t\t\tlabel: __( 'Name' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'email',\n\t\t\t\t\tname: 'email',\n\t\t\t\t\tlabel: __( 'Email' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'textarea',\n\t\t\t\t\tname: 'comment',\n\t\t\t\t\tlabel: __( 'Comment' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[ 'core/form-submit-button', {} ],\n\t\t],\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes?.type || blockAttributes?.type === 'text',\n\t},\n\t{\n\t\tname: 'wp-privacy-form',\n\t\ttitle: __( 'Experimental privacy request form' ),\n\t\tkeywords: [ 'GDPR' ],\n\t\tdescription: __( 'A form to request data exports and/or deletion.' ),\n\t\tattributes: {\n\t\t\tsubmissionMethod: 'custom',\n\t\t\taction: '',\n\t\t\tmethod: 'post',\n\t\t\tanchor: 'gdpr-form',\n\t\t},\n\t\tisDefault: false,\n\t\tinnerBlocks: [\n\t\t\tformSubmissionNotificationSuccess,\n\t\t\tformSubmissionNotificationError,\n\t\t\t[\n\t\t\t\t'core/paragraph',\n\t\t\t\t{\n\t\t\t\t\tcontent: __(\n\t\t\t\t\t\t'To request an export or deletion of your personal data on this site, please fill-in the form below. You can define the type of request you wish to perform, and your email address. Once the form is submitted, you will receive a confirmation email with instructions on the next steps.'\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'email',\n\t\t\t\t\tname: 'email',\n\t\t\t\t\tlabel: __( 'Enter your email address.' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'checkbox',\n\t\t\t\t\tname: 'export_personal_data',\n\t\t\t\t\tlabel: __( 'Request data export' ),\n\t\t\t\t\trequired: false,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'checkbox',\n\t\t\t\t\tname: 'remove_personal_data',\n\t\t\t\t\tlabel: __( 'Request data deletion' ),\n\t\t\t\t\trequired: false,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[ 'core/form-submit-button', {} ],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\tname: 'wp-action',\n\t\t\t\t\tvalue: 'wp_privacy_send_request',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\tname: 'wp-privacy-request',\n\t\t\t\t\tvalue: '1',\n\t\t\t\t},\n\t\t\t],\n\t\t],\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes?.type || blockAttributes?.type === 'text',\n\t},\n];\n\nexport default variations;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// eslint-disable-next-line eslint-comments/disable-enable-pair
|
|
4
|
+
/* eslint-disable no-undef */
|
|
5
|
+
document.querySelectorAll('form.wp-block-form').forEach(function (form) {
|
|
6
|
+
// Bail If the form is not using the mailto: action.
|
|
7
|
+
if (!form.action || !form.action.startsWith('mailto:')) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const redirectNotification = status => {
|
|
11
|
+
const urlParams = new URLSearchParams(window.location.search);
|
|
12
|
+
urlParams.append('wp-form-result', status);
|
|
13
|
+
window.location.search = urlParams.toString();
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// Add an event listener for the form submission.
|
|
17
|
+
form.addEventListener('submit', async function (event) {
|
|
18
|
+
event.preventDefault();
|
|
19
|
+
// Get the form data and merge it with the form action and nonce.
|
|
20
|
+
const formData = Object.fromEntries(new FormData(form).entries());
|
|
21
|
+
formData.formAction = form.action;
|
|
22
|
+
formData._ajax_nonce = wpBlockFormSettings.nonce;
|
|
23
|
+
formData.action = wpBlockFormSettings.action;
|
|
24
|
+
try {
|
|
25
|
+
const response = await fetch(wpBlockFormSettings.ajaxUrl, {
|
|
26
|
+
method: 'POST',
|
|
27
|
+
headers: {
|
|
28
|
+
'Content-Type': 'application/x-www-form-urlencoded'
|
|
29
|
+
},
|
|
30
|
+
body: new URLSearchParams(formData).toString()
|
|
31
|
+
});
|
|
32
|
+
if (response.ok) {
|
|
33
|
+
redirectNotification('success');
|
|
34
|
+
} else {
|
|
35
|
+
redirectNotification('error');
|
|
36
|
+
}
|
|
37
|
+
} catch (error) {
|
|
38
|
+
redirectNotification('error');
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["document","querySelectorAll","forEach","form","action","startsWith","redirectNotification","status","urlParams","URLSearchParams","window","location","search","append","toString","addEventListener","event","preventDefault","formData","Object","fromEntries","FormData","entries","formAction","_ajax_nonce","wpBlockFormSettings","nonce","response","fetch","ajaxUrl","method","headers","body","ok","error"],"sources":["@wordpress/block-library/src/form/view.js"],"sourcesContent":["// eslint-disable-next-line eslint-comments/disable-enable-pair\n/* eslint-disable no-undef */\ndocument.querySelectorAll( 'form.wp-block-form' ).forEach( function ( form ) {\n\t// Bail If the form is not using the mailto: action.\n\tif ( ! form.action || ! form.action.startsWith( 'mailto:' ) ) {\n\t\treturn;\n\t}\n\n\tconst redirectNotification = ( status ) => {\n\t\tconst urlParams = new URLSearchParams( window.location.search );\n\t\turlParams.append( 'wp-form-result', status );\n\t\twindow.location.search = urlParams.toString();\n\t};\n\n\t// Add an event listener for the form submission.\n\tform.addEventListener( 'submit', async function ( event ) {\n\t\tevent.preventDefault();\n\t\t// Get the form data and merge it with the form action and nonce.\n\t\tconst formData = Object.fromEntries( new FormData( form ).entries() );\n\t\tformData.formAction = form.action;\n\t\tformData._ajax_nonce = wpBlockFormSettings.nonce;\n\t\tformData.action = wpBlockFormSettings.action;\n\n\t\ttry {\n\t\t\tconst response = await fetch( wpBlockFormSettings.ajaxUrl, {\n\t\t\t\tmethod: 'POST',\n\t\t\t\theaders: {\n\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded',\n\t\t\t\t},\n\t\t\t\tbody: new URLSearchParams( formData ).toString(),\n\t\t\t} );\n\t\t\tif ( response.ok ) {\n\t\t\t\tredirectNotification( 'success' );\n\t\t\t} else {\n\t\t\t\tredirectNotification( 'error' );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tredirectNotification( 'error' );\n\t\t}\n\t} );\n} );\n"],"mappings":";;AAAA;AACA;AACAA,QAAQ,CAACC,gBAAgB,CAAE,oBAAqB,CAAC,CAACC,OAAO,CAAE,UAAWC,IAAI,EAAG;EAC5E;EACA,IAAK,CAAEA,IAAI,CAACC,MAAM,IAAI,CAAED,IAAI,CAACC,MAAM,CAACC,UAAU,CAAE,SAAU,CAAC,EAAG;IAC7D;EACD;EAEA,MAAMC,oBAAoB,GAAKC,MAAM,IAAM;IAC1C,MAAMC,SAAS,GAAG,IAAIC,eAAe,CAAEC,MAAM,CAACC,QAAQ,CAACC,MAAO,CAAC;IAC/DJ,SAAS,CAACK,MAAM,CAAE,gBAAgB,EAAEN,MAAO,CAAC;IAC5CG,MAAM,CAACC,QAAQ,CAACC,MAAM,GAAGJ,SAAS,CAACM,QAAQ,CAAC,CAAC;EAC9C,CAAC;;EAED;EACAX,IAAI,CAACY,gBAAgB,CAAE,QAAQ,EAAE,gBAAiBC,KAAK,EAAG;IACzDA,KAAK,CAACC,cAAc,CAAC,CAAC;IACtB;IACA,MAAMC,QAAQ,GAAGC,MAAM,CAACC,WAAW,CAAE,IAAIC,QAAQ,CAAElB,IAAK,CAAC,CAACmB,OAAO,CAAC,CAAE,CAAC;IACrEJ,QAAQ,CAACK,UAAU,GAAGpB,IAAI,CAACC,MAAM;IACjCc,QAAQ,CAACM,WAAW,GAAGC,mBAAmB,CAACC,KAAK;IAChDR,QAAQ,CAACd,MAAM,GAAGqB,mBAAmB,CAACrB,MAAM;IAE5C,IAAI;MACH,MAAMuB,QAAQ,GAAG,MAAMC,KAAK,CAAEH,mBAAmB,CAACI,OAAO,EAAE;QAC1DC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACR,cAAc,EAAE;QACjB,CAAC;QACDC,IAAI,EAAE,IAAIvB,eAAe,CAAES,QAAS,CAAC,CAACJ,QAAQ,CAAC;MAChD,CAAE,CAAC;MACH,IAAKa,QAAQ,CAACM,EAAE,EAAG;QAClB3B,oBAAoB,CAAE,SAAU,CAAC;MAClC,CAAC,MAAM;QACNA,oBAAoB,CAAE,OAAQ,CAAC;MAChC;IACD,CAAC,CAAC,OAAQ4B,KAAK,EAAG;MACjB5B,oBAAoB,CAAE,OAAQ,CAAC;IAChC;EACD,CAAE,CAAC;AACJ,CAAE,CAAC"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
|
+
var _i18n = require("@wordpress/i18n");
|
|
11
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
12
|
+
var _components = require("@wordpress/components");
|
|
13
|
+
var _element = require("@wordpress/element");
|
|
14
|
+
/**
|
|
15
|
+
* External dependencies
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* WordPress dependencies
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
function InputFieldBlock({
|
|
23
|
+
attributes,
|
|
24
|
+
setAttributes,
|
|
25
|
+
className
|
|
26
|
+
}) {
|
|
27
|
+
const {
|
|
28
|
+
type,
|
|
29
|
+
name,
|
|
30
|
+
label,
|
|
31
|
+
inlineLabel,
|
|
32
|
+
required,
|
|
33
|
+
placeholder,
|
|
34
|
+
value
|
|
35
|
+
} = attributes;
|
|
36
|
+
const blockProps = (0, _blockEditor.useBlockProps)();
|
|
37
|
+
const ref = (0, _element.useRef)();
|
|
38
|
+
const TagName = type === 'textarea' ? 'textarea' : 'input';
|
|
39
|
+
const borderProps = (0, _blockEditor.__experimentalUseBorderProps)(attributes);
|
|
40
|
+
const colorProps = (0, _blockEditor.__experimentalUseColorProps)(attributes);
|
|
41
|
+
if (ref.current) {
|
|
42
|
+
ref.current.focus();
|
|
43
|
+
}
|
|
44
|
+
const controls = (0, _react.createElement)(_react.Fragment, null, 'hidden' !== type && (0, _react.createElement)(_blockEditor.InspectorControls, null, (0, _react.createElement)(_components.PanelBody, {
|
|
45
|
+
title: (0, _i18n.__)('Input settings')
|
|
46
|
+
}, 'checkbox' !== type && (0, _react.createElement)(_components.CheckboxControl, {
|
|
47
|
+
label: (0, _i18n.__)('Inline label'),
|
|
48
|
+
checked: inlineLabel,
|
|
49
|
+
onChange: newVal => {
|
|
50
|
+
setAttributes({
|
|
51
|
+
inlineLabel: newVal
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
}), (0, _react.createElement)(_components.CheckboxControl, {
|
|
55
|
+
label: (0, _i18n.__)('Required'),
|
|
56
|
+
checked: required,
|
|
57
|
+
onChange: newVal => {
|
|
58
|
+
setAttributes({
|
|
59
|
+
required: newVal
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}))), (0, _react.createElement)(_blockEditor.InspectorControls, {
|
|
63
|
+
__experimentalGroup: "advanced"
|
|
64
|
+
}, (0, _react.createElement)(_components.TextControl, {
|
|
65
|
+
autoComplete: "off",
|
|
66
|
+
label: (0, _i18n.__)('Name'),
|
|
67
|
+
value: name,
|
|
68
|
+
onChange: newVal => {
|
|
69
|
+
setAttributes({
|
|
70
|
+
name: newVal
|
|
71
|
+
});
|
|
72
|
+
},
|
|
73
|
+
help: (0, _i18n.__)('Affects the "name" atribute of the input element, and is used as a name for the form submission results.')
|
|
74
|
+
})));
|
|
75
|
+
if ('hidden' === type) {
|
|
76
|
+
return (0, _react.createElement)(_react.Fragment, null, controls, (0, _react.createElement)("input", {
|
|
77
|
+
type: "hidden",
|
|
78
|
+
className: (0, _classnames.default)(className, 'wp-block-form-input__input', colorProps.className, borderProps.className),
|
|
79
|
+
"aria-label": (0, _i18n.__)('Value'),
|
|
80
|
+
value: value,
|
|
81
|
+
onChange: event => setAttributes({
|
|
82
|
+
value: event.target.value
|
|
83
|
+
})
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
return (0, _react.createElement)("div", {
|
|
87
|
+
...blockProps
|
|
88
|
+
}, controls, (0, _react.createElement)("span", {
|
|
89
|
+
className: (0, _classnames.default)('wp-block-form-input__label', {
|
|
90
|
+
'is-label-inline': inlineLabel || 'checkbox' === type
|
|
91
|
+
})
|
|
92
|
+
}, (0, _react.createElement)(_blockEditor.RichText, {
|
|
93
|
+
tagName: "span",
|
|
94
|
+
className: "wp-block-form-input__label-content",
|
|
95
|
+
value: label,
|
|
96
|
+
onChange: newLabel => setAttributes({
|
|
97
|
+
label: newLabel
|
|
98
|
+
}),
|
|
99
|
+
"aria-label": label ? (0, _i18n.__)('Label') : (0, _i18n.__)('Empty label'),
|
|
100
|
+
"data-empty": label ? false : true,
|
|
101
|
+
placeholder: (0, _i18n.__)('Type the label for this input')
|
|
102
|
+
}), (0, _react.createElement)(TagName, {
|
|
103
|
+
type: 'textarea' === type ? undefined : type,
|
|
104
|
+
className: (0, _classnames.default)(className, 'wp-block-form-input__input', colorProps.className, borderProps.className),
|
|
105
|
+
"aria-label": (0, _i18n.__)('Optional placeholder text')
|
|
106
|
+
// We hide the placeholder field's placeholder when there is a value. This
|
|
107
|
+
// stops screen readers from reading the placeholder field's placeholder
|
|
108
|
+
// which is confusing.
|
|
109
|
+
,
|
|
110
|
+
placeholder: placeholder ? undefined : (0, _i18n.__)('Optional placeholder…'),
|
|
111
|
+
value: placeholder,
|
|
112
|
+
onChange: event => setAttributes({
|
|
113
|
+
placeholder: event.target.value
|
|
114
|
+
}),
|
|
115
|
+
"aria-required": required,
|
|
116
|
+
style: {
|
|
117
|
+
...borderProps.style,
|
|
118
|
+
...colorProps.style
|
|
119
|
+
}
|
|
120
|
+
})));
|
|
121
|
+
}
|
|
122
|
+
var _default = InputFieldBlock;
|
|
123
|
+
exports.default = _default;
|
|
124
|
+
//# sourceMappingURL=edit.js.map
|