@wordpress/block-editor 12.8.1 → 12.9.1-next.5a1d1283.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.
Files changed (124) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +5 -12
  3. package/build/components/block-list/block-outline.native.js +4 -3
  4. package/build/components/block-list/block-outline.native.js.map +1 -1
  5. package/build/components/block-list/index.js +4 -3
  6. package/build/components/block-list/index.js.map +1 -1
  7. package/build/components/block-popover/inbetween.js +4 -5
  8. package/build/components/block-popover/inbetween.js.map +1 -1
  9. package/build/components/block-popover/index.js +3 -2
  10. package/build/components/block-popover/index.js.map +1 -1
  11. package/build/components/color-style-selector/index.js +1 -1
  12. package/build/components/color-style-selector/index.js.map +1 -1
  13. package/build/components/inserter/reusable-blocks-tab.native.js +7 -4
  14. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  15. package/build/components/inserter/search-results.native.js +10 -8
  16. package/build/components/inserter/search-results.native.js.map +1 -1
  17. package/build/components/link-control/index.js +2 -7
  18. package/build/components/link-control/index.js.map +1 -1
  19. package/build/components/link-control/settings.js +2 -1
  20. package/build/components/link-control/settings.js.map +1 -1
  21. package/build/components/list-view/block-select-button.js +48 -7
  22. package/build/components/list-view/block-select-button.js.map +1 -1
  23. package/build/components/list-view/drop-indicator.js +3 -3
  24. package/build/components/list-view/drop-indicator.js.map +1 -1
  25. package/build/components/list-view/index.js +14 -8
  26. package/build/components/list-view/index.js.map +1 -1
  27. package/build/components/list-view/use-list-view-images.js +5 -4
  28. package/build/components/list-view/use-list-view-images.js.map +1 -1
  29. package/build/components/preview-options/index.js +3 -1
  30. package/build/components/preview-options/index.js.map +1 -1
  31. package/build/components/provider/index.js +3 -1
  32. package/build/components/provider/index.js.map +1 -1
  33. package/build/components/use-block-commands/index.js +74 -63
  34. package/build/components/use-block-commands/index.js.map +1 -1
  35. package/build/components/warning/index.js +1 -1
  36. package/build/components/warning/index.js.map +1 -1
  37. package/build/hooks/auto-inserting-blocks.js +174 -0
  38. package/build/hooks/auto-inserting-blocks.js.map +1 -0
  39. package/build/hooks/index.js +1 -0
  40. package/build/hooks/index.js.map +1 -1
  41. package/build/hooks/style.js +64 -22
  42. package/build/hooks/style.js.map +1 -1
  43. package/build/hooks/utils.js +4 -0
  44. package/build/hooks/utils.js.map +1 -1
  45. package/build-module/components/block-list/block-outline.native.js +4 -3
  46. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  47. package/build-module/components/block-list/index.js +4 -3
  48. package/build-module/components/block-list/index.js.map +1 -1
  49. package/build-module/components/block-popover/inbetween.js +4 -5
  50. package/build-module/components/block-popover/inbetween.js.map +1 -1
  51. package/build-module/components/block-popover/index.js +3 -2
  52. package/build-module/components/block-popover/index.js.map +1 -1
  53. package/build-module/components/color-style-selector/index.js +1 -1
  54. package/build-module/components/color-style-selector/index.js.map +1 -1
  55. package/build-module/components/inserter/reusable-blocks-tab.native.js +8 -4
  56. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  57. package/build-module/components/inserter/search-results.native.js +11 -8
  58. package/build-module/components/inserter/search-results.native.js.map +1 -1
  59. package/build-module/components/link-control/index.js +2 -7
  60. package/build-module/components/link-control/index.js.map +1 -1
  61. package/build-module/components/link-control/settings.js +2 -1
  62. package/build-module/components/link-control/settings.js.map +1 -1
  63. package/build-module/components/list-view/block-select-button.js +48 -7
  64. package/build-module/components/list-view/block-select-button.js.map +1 -1
  65. package/build-module/components/list-view/drop-indicator.js +3 -3
  66. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  67. package/build-module/components/list-view/index.js +14 -8
  68. package/build-module/components/list-view/index.js.map +1 -1
  69. package/build-module/components/list-view/use-list-view-images.js +5 -4
  70. package/build-module/components/list-view/use-list-view-images.js.map +1 -1
  71. package/build-module/components/preview-options/index.js +3 -1
  72. package/build-module/components/preview-options/index.js.map +1 -1
  73. package/build-module/components/provider/index.js +3 -1
  74. package/build-module/components/provider/index.js.map +1 -1
  75. package/build-module/components/use-block-commands/index.js +74 -63
  76. package/build-module/components/use-block-commands/index.js.map +1 -1
  77. package/build-module/components/warning/index.js +2 -2
  78. package/build-module/components/warning/index.js.map +1 -1
  79. package/build-module/hooks/auto-inserting-blocks.js +167 -0
  80. package/build-module/hooks/auto-inserting-blocks.js.map +1 -0
  81. package/build-module/hooks/index.js +1 -0
  82. package/build-module/hooks/index.js.map +1 -1
  83. package/build-module/hooks/style.js +63 -21
  84. package/build-module/hooks/style.js.map +1 -1
  85. package/build-module/hooks/utils.js +4 -0
  86. package/build-module/hooks/utils.js.map +1 -1
  87. package/build-style/content-rtl.css +8 -7
  88. package/build-style/content.css +8 -7
  89. package/build-style/style-rtl.css +4 -4
  90. package/build-style/style.css +4 -4
  91. package/package.json +32 -32
  92. package/src/components/block-list/block-outline.native.js +5 -2
  93. package/src/components/block-list/content.scss +2 -3
  94. package/src/components/block-list/index.js +4 -3
  95. package/src/components/block-popover/inbetween.js +4 -3
  96. package/src/components/block-popover/index.js +3 -2
  97. package/src/components/button-block-appender/content.scss +8 -0
  98. package/src/components/color-style-selector/index.js +1 -1
  99. package/src/components/inserter/reusable-blocks-tab.native.js +7 -2
  100. package/src/components/inserter/search-results.native.js +13 -9
  101. package/src/components/link-control/index.js +2 -5
  102. package/src/components/link-control/settings.js +1 -0
  103. package/src/components/link-control/style.scss +5 -5
  104. package/src/components/link-control/test/index.js +1 -0
  105. package/src/components/list-view/block-select-button.js +67 -15
  106. package/src/components/list-view/drop-indicator.js +4 -5
  107. package/src/components/list-view/index.js +19 -13
  108. package/src/components/list-view/use-list-view-images.js +8 -4
  109. package/src/components/observe-typing/README.md +2 -2
  110. package/src/components/preview-options/index.js +2 -0
  111. package/src/components/provider/index.js +8 -1
  112. package/src/components/use-block-commands/index.js +92 -88
  113. package/src/components/warning/index.js +2 -2
  114. package/src/hooks/auto-inserting-blocks.js +232 -0
  115. package/src/hooks/index.js +1 -0
  116. package/src/hooks/style.js +85 -35
  117. package/src/hooks/utils.js +4 -0
  118. package/build/utils/pre-parse-patterns.js +0 -68
  119. package/build/utils/pre-parse-patterns.js.map +0 -1
  120. package/build-module/utils/pre-parse-patterns.js +0 -61
  121. package/build-module/utils/pre-parse-patterns.js.map +0 -1
  122. package/src/components/url-popover/test/__snapshots__/index.js.snap +0 -133
  123. package/src/components/url-popover/test/index.js +0 -75
  124. package/src/utils/pre-parse-patterns.js +0 -69
@@ -1,75 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { render, screen, waitFor } from '@testing-library/react';
5
- import userEvent from '@testing-library/user-event';
6
-
7
- /**
8
- * Internal dependencies
9
- */
10
- import URLPopover from '../';
11
-
12
- /**
13
- * Returns the first found popover element up the DOM tree.
14
- *
15
- * @param {HTMLElement} element Element to start with.
16
- * @return {HTMLElement|null} Popover element, or `null` if not found.
17
- */
18
- function getWrappingPopoverElement( element ) {
19
- return element.closest( '.components-popover' );
20
- }
21
-
22
- describe( 'URLPopover', () => {
23
- it( 'matches the snapshot in its default state', async () => {
24
- const { container } = render(
25
- <URLPopover
26
- animate={ false }
27
- renderSettings={ () => <div>Settings</div> }
28
- >
29
- <div>Editor</div>
30
- </URLPopover>
31
- );
32
-
33
- await waitFor( () =>
34
- expect(
35
- getWrappingPopoverElement( screen.getByText( 'Editor' ) )
36
- ).toBePositionedPopover()
37
- );
38
-
39
- expect( container ).toMatchSnapshot();
40
- } );
41
-
42
- it( 'matches the snapshot when the settings are toggled open', async () => {
43
- const user = userEvent.setup();
44
- const { container } = render(
45
- <URLPopover
46
- animate={ false }
47
- renderSettings={ () => <div>Settings</div> }
48
- >
49
- <div>Editor</div>
50
- </URLPopover>
51
- );
52
-
53
- await user.click(
54
- screen.getByRole( 'button', { name: 'Link settings' } )
55
- );
56
-
57
- expect( container ).toMatchSnapshot();
58
- } );
59
-
60
- it( 'matches the snapshot when there are no settings', async () => {
61
- const { container } = render(
62
- <URLPopover animate={ false }>
63
- <div>Editor</div>
64
- </URLPopover>
65
- );
66
-
67
- await waitFor( () =>
68
- expect(
69
- getWrappingPopoverElement( screen.getByText( 'Editor' ) )
70
- ).toBePositionedPopover()
71
- );
72
-
73
- expect( container ).toMatchSnapshot();
74
- } );
75
- } );
@@ -1,69 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { useSelect, select } from '@wordpress/data';
5
- import { useEffect } from '@wordpress/element';
6
-
7
- /**
8
- * Internal dependencies
9
- */
10
- import { store as blockEditorStore } from '../store';
11
-
12
- const requestIdleCallback = ( () => {
13
- if ( typeof window === 'undefined' ) {
14
- return ( callback ) => {
15
- setTimeout( () => callback( Date.now() ), 0 );
16
- };
17
- }
18
-
19
- return window.requestIdleCallback || window.requestAnimationFrame;
20
- } )();
21
-
22
- const cancelIdleCallback = ( () => {
23
- if ( typeof window === 'undefined' ) {
24
- return clearTimeout;
25
- }
26
-
27
- return window.cancelIdleCallback || window.cancelAnimationFrame;
28
- } )();
29
-
30
- export function usePreParsePatterns() {
31
- const { patterns, isPreviewMode } = useSelect( ( _select ) => {
32
- const { __experimentalBlockPatterns, __unstableIsPreviewMode } =
33
- _select( blockEditorStore ).getSettings();
34
- return {
35
- patterns: __experimentalBlockPatterns,
36
- isPreviewMode: __unstableIsPreviewMode,
37
- };
38
- }, [] );
39
-
40
- useEffect( () => {
41
- if ( isPreviewMode ) {
42
- return;
43
- }
44
- if ( ! patterns?.length ) {
45
- return;
46
- }
47
-
48
- let handle;
49
- let index = -1;
50
-
51
- const callback = () => {
52
- index++;
53
- if ( index >= patterns.length ) {
54
- return;
55
- }
56
-
57
- select( blockEditorStore ).__experimentalGetParsedPattern(
58
- patterns[ index ].name
59
- );
60
-
61
- handle = requestIdleCallback( callback );
62
- };
63
-
64
- handle = requestIdleCallback( callback );
65
- return () => cancelIdleCallback( handle );
66
- }, [ patterns, isPreviewMode ] );
67
-
68
- return null;
69
- }