@wordpress/block-editor 14.13.0 → 14.14.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 (76) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/background-image-control/index.js +2 -5
  3. package/build/components/background-image-control/index.js.map +1 -1
  4. package/build/components/block-settings-menu/block-settings-dropdown.js +26 -6
  5. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  6. package/build/components/iframe/index.js +9 -7
  7. package/build/components/iframe/index.js.map +1 -1
  8. package/build/components/inserter/block-patterns-explorer/index.js +6 -3
  9. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  10. package/build/components/inserter/block-patterns-explorer/pattern-list.js +6 -2
  11. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  12. package/build/components/inserter/block-patterns-tab/index.js +1 -1
  13. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  14. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +4 -4
  15. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  16. package/build/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  17. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  18. package/build/components/inserter/category-tabs/index.js +1 -1
  19. package/build/components/inserter/category-tabs/index.js.map +1 -1
  20. package/build/components/keyboard-shortcuts/index.js +27 -0
  21. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  22. package/build/components/media-placeholder/index.js +2 -1
  23. package/build/components/media-placeholder/index.js.map +1 -1
  24. package/build/components/tool-selector/index.js +1 -1
  25. package/build/components/tool-selector/index.js.map +1 -1
  26. package/build/hooks/layout.js +1 -1
  27. package/build/hooks/layout.js.map +1 -1
  28. package/build/hooks/use-zoom-out.js +1 -12
  29. package/build/hooks/use-zoom-out.js.map +1 -1
  30. package/build-module/components/background-image-control/index.js +2 -5
  31. package/build-module/components/background-image-control/index.js.map +1 -1
  32. package/build-module/components/block-settings-menu/block-settings-dropdown.js +26 -6
  33. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  34. package/build-module/components/iframe/index.js +9 -7
  35. package/build-module/components/iframe/index.js.map +1 -1
  36. package/build-module/components/inserter/block-patterns-explorer/index.js +6 -3
  37. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  38. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +6 -2
  39. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  40. package/build-module/components/inserter/block-patterns-tab/index.js +1 -1
  41. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  42. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +4 -4
  43. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  44. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  45. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  46. package/build-module/components/inserter/category-tabs/index.js +1 -1
  47. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  48. package/build-module/components/keyboard-shortcuts/index.js +27 -0
  49. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  50. package/build-module/components/media-placeholder/index.js +2 -1
  51. package/build-module/components/media-placeholder/index.js.map +1 -1
  52. package/build-module/components/tool-selector/index.js +1 -1
  53. package/build-module/components/tool-selector/index.js.map +1 -1
  54. package/build-module/hooks/layout.js +1 -1
  55. package/build-module/hooks/layout.js.map +1 -1
  56. package/build-module/hooks/use-zoom-out.js +2 -12
  57. package/build-module/hooks/use-zoom-out.js.map +1 -1
  58. package/build-style/style-rtl.css +6 -0
  59. package/build-style/style.css +6 -0
  60. package/package.json +34 -34
  61. package/src/components/background-image-control/index.js +1 -6
  62. package/src/components/block-settings-menu/block-settings-dropdown.js +26 -7
  63. package/src/components/color-palette/test/__snapshots__/control.js.snap +1 -1
  64. package/src/components/iframe/index.js +16 -13
  65. package/src/components/inserter/block-patterns-explorer/index.js +6 -4
  66. package/src/components/inserter/block-patterns-explorer/pattern-list.js +5 -1
  67. package/src/components/inserter/block-patterns-tab/index.js +1 -3
  68. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +4 -4
  69. package/src/components/inserter/block-patterns-tab/patterns-filter.js +2 -2
  70. package/src/components/inserter/category-tabs/index.js +1 -3
  71. package/src/components/inserter/style.scss +5 -0
  72. package/src/components/keyboard-shortcuts/index.js +30 -0
  73. package/src/components/media-placeholder/index.js +1 -0
  74. package/src/components/tool-selector/index.js +1 -1
  75. package/src/hooks/layout.js +1 -1
  76. package/src/hooks/use-zoom-out.js +2 -10
@@ -38,7 +38,8 @@ function PatternList({
38
38
  searchValue,
39
39
  selectedCategory,
40
40
  patternCategories,
41
- rootClientId
41
+ rootClientId,
42
+ onModalClose
42
43
  }) {
43
44
  const container = useRef();
44
45
  const debouncedSpeak = useDebounce(speak, 500);
@@ -98,7 +99,10 @@ function PatternList({
98
99
  children: hasItems && /*#__PURE__*/_jsxs(_Fragment, {
99
100
  children: [/*#__PURE__*/_jsx(BlockPatternsList, {
100
101
  blockPatterns: pagingProps.categoryPatterns,
101
- onClickPattern: onClickPattern,
102
+ onClickPattern: (pattern, blocks) => {
103
+ onClickPattern(pattern, blocks);
104
+ onModalClose();
105
+ },
102
106
  isDraggable: false
103
107
  }), /*#__PURE__*/_jsx(BlockPatternsPaging, {
104
108
  ...pagingProps
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useEffect","useRef","useState","_n","sprintf","useDebounce","__experimentalHeading","Heading","speak","BlockPatternsList","useInsertionPoint","usePatternsState","InserterListbox","searchItems","BlockPatternsPaging","usePatternsPaging","INSERTER_PATTERN_TYPES","allPatternsCategory","myPatternsCategory","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternsListHeader","filterValue","filteredBlockPatternsLength","level","lineHeight","className","children","PatternList","searchValue","selectedCategory","patternCategories","rootClientId","container","debouncedSpeak","destinationRootClientId","onInsertBlocks","shouldFocusBlock","patterns","onClickPattern","registeredPatternCategories","map","patternCategory","name","filteredBlockPatterns","filteredPatterns","filter","pattern","type","user","_pattern$categories$s","hasKnownCategory","categories","some","category","includes","length","count","resultsFoundMessage","pagingProps","previousSearchValue","setPreviousSearchValue","changePage","hasItems","ref","blockPatterns","categoryPatterns","isDraggable"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-explorer/pattern-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect, useRef, useState } from '@wordpress/element';\nimport { _n, sprintf } from '@wordpress/i18n';\nimport { useDebounce } from '@wordpress/compose';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport BlockPatternsList from '../../block-patterns-list';\nimport useInsertionPoint from '../hooks/use-insertion-point';\nimport usePatternsState from '../hooks/use-patterns-state';\nimport InserterListbox from '../../inserter-listbox';\nimport { searchItems } from '../search-items';\nimport BlockPatternsPaging from '../../block-patterns-paging';\nimport usePatternsPaging from '../hooks/use-patterns-paging';\nimport {\n\tINSERTER_PATTERN_TYPES,\n\tallPatternsCategory,\n\tmyPatternsCategory,\n} from '../block-patterns-tab/utils';\n\nfunction PatternsListHeader( { filterValue, filteredBlockPatternsLength } ) {\n\tif ( ! filterValue ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Heading\n\t\t\tlevel={ 2 }\n\t\t\tlineHeight=\"48px\"\n\t\t\tclassName=\"block-editor-block-patterns-explorer__search-results-count\"\n\t\t>\n\t\t\t{ sprintf(\n\t\t\t\t/* translators: %d: number of patterns. */\n\t\t\t\t_n(\n\t\t\t\t\t'%d pattern found',\n\t\t\t\t\t'%d patterns found',\n\t\t\t\t\tfilteredBlockPatternsLength\n\t\t\t\t),\n\t\t\t\tfilteredBlockPatternsLength\n\t\t\t) }\n\t\t</Heading>\n\t);\n}\n\nfunction PatternList( {\n\tsearchValue,\n\tselectedCategory,\n\tpatternCategories,\n\trootClientId,\n} ) {\n\tconst container = useRef();\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\trootClientId,\n\t\tshouldFocusBlock: true,\n\t} );\n\tconst [ patterns, , onClickPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId,\n\t\tselectedCategory\n\t);\n\n\tconst registeredPatternCategories = useMemo(\n\t\t() =>\n\t\t\tpatternCategories.map(\n\t\t\t\t( patternCategory ) => patternCategory.name\n\t\t\t),\n\t\t[ patternCategories ]\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tconst filteredPatterns = patterns.filter( ( pattern ) => {\n\t\t\tif ( selectedCategory === allPatternsCategory.name ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tselectedCategory === myPatternsCategory.name &&\n\t\t\t\tpattern.type === INSERTER_PATTERN_TYPES.user\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif ( selectedCategory === 'uncategorized' ) {\n\t\t\t\tconst hasKnownCategory =\n\t\t\t\t\tpattern.categories?.some( ( category ) =>\n\t\t\t\t\t\tregisteredPatternCategories.includes( category )\n\t\t\t\t\t) ?? false;\n\n\t\t\t\treturn ! pattern.categories?.length || ! hasKnownCategory;\n\t\t\t}\n\n\t\t\treturn pattern.categories?.includes( selectedCategory );\n\t\t} );\n\n\t\tif ( ! searchValue ) {\n\t\t\treturn filteredPatterns;\n\t\t}\n\n\t\treturn searchItems( filteredPatterns, searchValue );\n\t}, [\n\t\tsearchValue,\n\t\tpatterns,\n\t\tselectedCategory,\n\t\tregisteredPatternCategories,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! searchValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [ searchValue, debouncedSpeak, filteredBlockPatterns.length ] );\n\n\tconst pagingProps = usePatternsPaging(\n\t\tfilteredBlockPatterns,\n\t\tselectedCategory,\n\t\tcontainer\n\t);\n\n\t// Reset page when search value changes.\n\tconst [ previousSearchValue, setPreviousSearchValue ] =\n\t\tuseState( searchValue );\n\tif ( searchValue !== previousSearchValue ) {\n\t\tsetPreviousSearchValue( searchValue );\n\t\tpagingProps.changePage( 1 );\n\t}\n\n\tconst hasItems = !! filteredBlockPatterns?.length;\n\treturn (\n\t\t<div\n\t\t\tclassName=\"block-editor-block-patterns-explorer__list\"\n\t\t\tref={ container }\n\t\t>\n\t\t\t<PatternsListHeader\n\t\t\t\tfilterValue={ searchValue }\n\t\t\t\tfilteredBlockPatternsLength={ filteredBlockPatterns.length }\n\t\t\t/>\n\n\t\t\t<InserterListbox>\n\t\t\t\t{ hasItems && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tblockPatterns={ pagingProps.categoryPatterns }\n\t\t\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\t\t\tisDraggable={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockPatternsPaging { ...pagingProps } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InserterListbox>\n\t\t</div>\n\t);\n}\n\nexport default PatternList;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useEffect","useRef","useState","_n","sprintf","useDebounce","__experimentalHeading","Heading","speak","BlockPatternsList","useInsertionPoint","usePatternsState","InserterListbox","searchItems","BlockPatternsPaging","usePatternsPaging","INSERTER_PATTERN_TYPES","allPatternsCategory","myPatternsCategory","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternsListHeader","filterValue","filteredBlockPatternsLength","level","lineHeight","className","children","PatternList","searchValue","selectedCategory","patternCategories","rootClientId","onModalClose","container","debouncedSpeak","destinationRootClientId","onInsertBlocks","shouldFocusBlock","patterns","onClickPattern","registeredPatternCategories","map","patternCategory","name","filteredBlockPatterns","filteredPatterns","filter","pattern","type","user","_pattern$categories$s","hasKnownCategory","categories","some","category","includes","length","count","resultsFoundMessage","pagingProps","previousSearchValue","setPreviousSearchValue","changePage","hasItems","ref","blockPatterns","categoryPatterns","blocks","isDraggable"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-explorer/pattern-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect, useRef, useState } from '@wordpress/element';\nimport { _n, sprintf } from '@wordpress/i18n';\nimport { useDebounce } from '@wordpress/compose';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport BlockPatternsList from '../../block-patterns-list';\nimport useInsertionPoint from '../hooks/use-insertion-point';\nimport usePatternsState from '../hooks/use-patterns-state';\nimport InserterListbox from '../../inserter-listbox';\nimport { searchItems } from '../search-items';\nimport BlockPatternsPaging from '../../block-patterns-paging';\nimport usePatternsPaging from '../hooks/use-patterns-paging';\nimport {\n\tINSERTER_PATTERN_TYPES,\n\tallPatternsCategory,\n\tmyPatternsCategory,\n} from '../block-patterns-tab/utils';\n\nfunction PatternsListHeader( { filterValue, filteredBlockPatternsLength } ) {\n\tif ( ! filterValue ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Heading\n\t\t\tlevel={ 2 }\n\t\t\tlineHeight=\"48px\"\n\t\t\tclassName=\"block-editor-block-patterns-explorer__search-results-count\"\n\t\t>\n\t\t\t{ sprintf(\n\t\t\t\t/* translators: %d: number of patterns. */\n\t\t\t\t_n(\n\t\t\t\t\t'%d pattern found',\n\t\t\t\t\t'%d patterns found',\n\t\t\t\t\tfilteredBlockPatternsLength\n\t\t\t\t),\n\t\t\t\tfilteredBlockPatternsLength\n\t\t\t) }\n\t\t</Heading>\n\t);\n}\n\nfunction PatternList( {\n\tsearchValue,\n\tselectedCategory,\n\tpatternCategories,\n\trootClientId,\n\tonModalClose,\n} ) {\n\tconst container = useRef();\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\trootClientId,\n\t\tshouldFocusBlock: true,\n\t} );\n\tconst [ patterns, , onClickPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId,\n\t\tselectedCategory\n\t);\n\n\tconst registeredPatternCategories = useMemo(\n\t\t() =>\n\t\t\tpatternCategories.map(\n\t\t\t\t( patternCategory ) => patternCategory.name\n\t\t\t),\n\t\t[ patternCategories ]\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tconst filteredPatterns = patterns.filter( ( pattern ) => {\n\t\t\tif ( selectedCategory === allPatternsCategory.name ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tselectedCategory === myPatternsCategory.name &&\n\t\t\t\tpattern.type === INSERTER_PATTERN_TYPES.user\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif ( selectedCategory === 'uncategorized' ) {\n\t\t\t\tconst hasKnownCategory =\n\t\t\t\t\tpattern.categories?.some( ( category ) =>\n\t\t\t\t\t\tregisteredPatternCategories.includes( category )\n\t\t\t\t\t) ?? false;\n\n\t\t\t\treturn ! pattern.categories?.length || ! hasKnownCategory;\n\t\t\t}\n\n\t\t\treturn pattern.categories?.includes( selectedCategory );\n\t\t} );\n\n\t\tif ( ! searchValue ) {\n\t\t\treturn filteredPatterns;\n\t\t}\n\n\t\treturn searchItems( filteredPatterns, searchValue );\n\t}, [\n\t\tsearchValue,\n\t\tpatterns,\n\t\tselectedCategory,\n\t\tregisteredPatternCategories,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! searchValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [ searchValue, debouncedSpeak, filteredBlockPatterns.length ] );\n\n\tconst pagingProps = usePatternsPaging(\n\t\tfilteredBlockPatterns,\n\t\tselectedCategory,\n\t\tcontainer\n\t);\n\n\t// Reset page when search value changes.\n\tconst [ previousSearchValue, setPreviousSearchValue ] =\n\t\tuseState( searchValue );\n\tif ( searchValue !== previousSearchValue ) {\n\t\tsetPreviousSearchValue( searchValue );\n\t\tpagingProps.changePage( 1 );\n\t}\n\n\tconst hasItems = !! filteredBlockPatterns?.length;\n\treturn (\n\t\t<div\n\t\t\tclassName=\"block-editor-block-patterns-explorer__list\"\n\t\t\tref={ container }\n\t\t>\n\t\t\t<PatternsListHeader\n\t\t\t\tfilterValue={ searchValue }\n\t\t\t\tfilteredBlockPatternsLength={ filteredBlockPatterns.length }\n\t\t\t/>\n\n\t\t\t<InserterListbox>\n\t\t\t\t{ hasItems && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tblockPatterns={ pagingProps.categoryPatterns }\n\t\t\t\t\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\t\t\t\t\tonClickPattern( pattern, blocks );\n\t\t\t\t\t\t\t\tonModalClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tisDraggable={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockPatternsPaging { ...pagingProps } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InserterListbox>\n\t\t</div>\n\t);\n}\n\nexport default PatternList;\n"],"mappings":"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","ignoreList":[]}
@@ -55,7 +55,7 @@ function BlockPatternsTab({
55
55
  }, category.name)
56
56
  })
57
57
  }), showPatternsExplorer && /*#__PURE__*/_jsx(PatternsExplorerModal, {
58
- initialCategory: selectedCategory?.name || categories[0]?.name,
58
+ initialCategory: selectedCategory || categories[0],
59
59
  patternCategories: categories,
60
60
  onModalClose: () => setShowPatternsExplorer(false),
61
61
  rootClientId: rootClientId
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useViewportMatch","Button","__","PatternsExplorerModal","MobileTabNavigation","PatternCategoryPreviews","usePatternCategories","CategoryTabs","InserterNoResults","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","BlockPatternsTab","onSelectCategory","selectedCategory","onInsert","rootClientId","children","showPatternsExplorer","setShowPatternsExplorer","categories","isMobile","length","className","__next40pxDefaultSize","onClick","variant","category","name","initialCategory","patternCategories","onModalClose"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport PatternsExplorerModal from '../block-patterns-explorer';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport { PatternCategoryPreviews } from './pattern-category-previews';\nimport { usePatternCategories } from './use-pattern-categories';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nfunction BlockPatternsTab( {\n\tonSelectCategory,\n\tselectedCategory,\n\tonInsert,\n\trootClientId,\n\tchildren,\n} ) {\n\tconst [ showPatternsExplorer, setShowPatternsExplorer ] = useState( false );\n\n\tconst categories = usePatternCategories( rootClientId );\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className=\"block-editor-inserter__block-patterns-tabs-container\">\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-explore-button\"\n\t\t\t\t\t\tonClick={ () => setShowPatternsExplorer( true ) }\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Explore all patterns' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<div className=\"block-editor-inserter__category-panel\">\n\t\t\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t\t{ showPatternsExplorer && (\n\t\t\t\t<PatternsExplorerModal\n\t\t\t\t\tinitialCategory={\n\t\t\t\t\t\tselectedCategory?.name || categories[ 0 ]?.name\n\t\t\t\t\t}\n\t\t\t\t\tpatternCategories={ categories }\n\t\t\t\t\tonModalClose={ () => setShowPatternsExplorer( false ) }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default BlockPatternsTab;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,SAASC,uBAAuB,QAAQ,6BAA6B;AACrE,SAASC,oBAAoB,QAAQ,0BAA0B;AAC/D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,iBAAiB,MAAM,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAE9C,SAASC,gBAAgBA,CAAE;EAC1BC,gBAAgB;EAChBC,gBAAgB;EAChBC,QAAQ;EACRC,YAAY;EACZC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,oBAAoB,EAAEC,uBAAuB,CAAE,GAAGvB,QAAQ,CAAE,KAAM,CAAC;EAE3E,MAAMwB,UAAU,GAAGjB,oBAAoB,CAAEa,YAAa,CAAC;EAEvD,MAAMK,QAAQ,GAAGxB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAElD,IAAK,CAAEuB,UAAU,CAACE,MAAM,EAAG;IAC1B,oBAAOf,IAAA,CAACF,iBAAiB,IAAE,CAAC;EAC7B;EAEA,oBACCI,KAAA,CAAAE,SAAA;IAAAM,QAAA,GACG,CAAEI,QAAQ,iBACXZ,KAAA;MAAKc,SAAS,EAAC,sDAAsD;MAAAN,QAAA,gBACpEV,IAAA,CAACH,YAAY;QACZgB,UAAU,EAAGA,UAAY;QACzBN,gBAAgB,EAAGA,gBAAkB;QACrCD,gBAAgB,EAAGA,gBAAkB;QAAAI,QAAA,EAEnCA;MAAQ,CACG,CAAC,eACfV,IAAA,CAACT,MAAM;QACN0B,qBAAqB;QACrBD,SAAS,EAAC,gDAAgD;QAC1DE,OAAO,EAAGA,CAAA,KAAMN,uBAAuB,CAAE,IAAK,CAAG;QACjDO,OAAO,EAAC,WAAW;QAAAT,QAAA,EAEjBlB,EAAE,CAAE,sBAAuB;MAAC,CACvB,CAAC;IAAA,CACL,CACL,EACCsB,QAAQ,iBACTd,IAAA,CAACN,mBAAmB;MAACmB,UAAU,EAAGA,UAAY;MAAAH,QAAA,EACzCU,QAAQ,iBACXpB,IAAA;QAAKgB,SAAS,EAAC,uCAAuC;QAAAN,QAAA,eACrDV,IAAA,CAACL,uBAAuB;UAEvBa,QAAQ,EAAGA,QAAU;UACrBC,YAAY,EAAGA,YAAc;UAC7BW,QAAQ,EAAGA;QAAU,GAHfA,QAAQ,CAACC,IAIf;MAAC,CACE;IACL,CACmB,CACrB,EACCV,oBAAoB,iBACrBX,IAAA,CAACP,qBAAqB;MACrB6B,eAAe,EACdf,gBAAgB,EAAEc,IAAI,IAAIR,UAAU,CAAE,CAAC,CAAE,EAAEQ,IAC3C;MACDE,iBAAiB,EAAGV,UAAY;MAChCW,YAAY,EAAGA,CAAA,KAAMZ,uBAAuB,CAAE,KAAM,CAAG;MACvDH,YAAY,EAAGA;IAAc,CAC7B,CACD;EAAA,CACA,CAAC;AAEL;AAEA,eAAeJ,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["useState","useViewportMatch","Button","__","PatternsExplorerModal","MobileTabNavigation","PatternCategoryPreviews","usePatternCategories","CategoryTabs","InserterNoResults","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","BlockPatternsTab","onSelectCategory","selectedCategory","onInsert","rootClientId","children","showPatternsExplorer","setShowPatternsExplorer","categories","isMobile","length","className","__next40pxDefaultSize","onClick","variant","category","name","initialCategory","patternCategories","onModalClose"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport PatternsExplorerModal from '../block-patterns-explorer';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport { PatternCategoryPreviews } from './pattern-category-previews';\nimport { usePatternCategories } from './use-pattern-categories';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nfunction BlockPatternsTab( {\n\tonSelectCategory,\n\tselectedCategory,\n\tonInsert,\n\trootClientId,\n\tchildren,\n} ) {\n\tconst [ showPatternsExplorer, setShowPatternsExplorer ] = useState( false );\n\n\tconst categories = usePatternCategories( rootClientId );\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className=\"block-editor-inserter__block-patterns-tabs-container\">\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-explore-button\"\n\t\t\t\t\t\tonClick={ () => setShowPatternsExplorer( true ) }\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Explore all patterns' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<div className=\"block-editor-inserter__category-panel\">\n\t\t\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t\t{ showPatternsExplorer && (\n\t\t\t\t<PatternsExplorerModal\n\t\t\t\t\tinitialCategory={ selectedCategory || categories[ 0 ] }\n\t\t\t\t\tpatternCategories={ categories }\n\t\t\t\t\tonModalClose={ () => setShowPatternsExplorer( false ) }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default BlockPatternsTab;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,SAASC,uBAAuB,QAAQ,6BAA6B;AACrE,SAASC,oBAAoB,QAAQ,0BAA0B;AAC/D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,iBAAiB,MAAM,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAE9C,SAASC,gBAAgBA,CAAE;EAC1BC,gBAAgB;EAChBC,gBAAgB;EAChBC,QAAQ;EACRC,YAAY;EACZC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,oBAAoB,EAAEC,uBAAuB,CAAE,GAAGvB,QAAQ,CAAE,KAAM,CAAC;EAE3E,MAAMwB,UAAU,GAAGjB,oBAAoB,CAAEa,YAAa,CAAC;EAEvD,MAAMK,QAAQ,GAAGxB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAElD,IAAK,CAAEuB,UAAU,CAACE,MAAM,EAAG;IAC1B,oBAAOf,IAAA,CAACF,iBAAiB,IAAE,CAAC;EAC7B;EAEA,oBACCI,KAAA,CAAAE,SAAA;IAAAM,QAAA,GACG,CAAEI,QAAQ,iBACXZ,KAAA;MAAKc,SAAS,EAAC,sDAAsD;MAAAN,QAAA,gBACpEV,IAAA,CAACH,YAAY;QACZgB,UAAU,EAAGA,UAAY;QACzBN,gBAAgB,EAAGA,gBAAkB;QACrCD,gBAAgB,EAAGA,gBAAkB;QAAAI,QAAA,EAEnCA;MAAQ,CACG,CAAC,eACfV,IAAA,CAACT,MAAM;QACN0B,qBAAqB;QACrBD,SAAS,EAAC,gDAAgD;QAC1DE,OAAO,EAAGA,CAAA,KAAMN,uBAAuB,CAAE,IAAK,CAAG;QACjDO,OAAO,EAAC,WAAW;QAAAT,QAAA,EAEjBlB,EAAE,CAAE,sBAAuB;MAAC,CACvB,CAAC;IAAA,CACL,CACL,EACCsB,QAAQ,iBACTd,IAAA,CAACN,mBAAmB;MAACmB,UAAU,EAAGA,UAAY;MAAAH,QAAA,EACzCU,QAAQ,iBACXpB,IAAA;QAAKgB,SAAS,EAAC,uCAAuC;QAAAN,QAAA,eACrDV,IAAA,CAACL,uBAAuB;UAEvBa,QAAQ,EAAGA,QAAU;UACrBC,YAAY,EAAGA,YAAc;UAC7BW,QAAQ,EAAGA;QAAU,GAHfA,QAAQ,CAACC,IAIf;MAAC,CACE;IACL,CACmB,CACrB,EACCV,oBAAoB,iBACrBX,IAAA,CAACP,qBAAqB;MACrB6B,eAAe,EAAGf,gBAAgB,IAAIM,UAAU,CAAE,CAAC,CAAI;MACvDU,iBAAiB,EAAGV,UAAY;MAChCW,YAAY,EAAGA,CAAA,KAAMZ,uBAAuB,CAAE,KAAM,CAAG;MACvDH,YAAY,EAAGA;IAAc,CAC7B,CACD;EAAA,CACA,CAAC;AAEL;AAEA,eAAeJ,gBAAgB","ignoreList":[]}
@@ -32,13 +32,13 @@ export function PatternCategoryPreviews({
32
32
  if (isPatternFiltered(pattern, patternSourceFilter, patternSyncFilter)) {
33
33
  return false;
34
34
  }
35
- if (category.name === allPatternsCategory?.name) {
35
+ if (category.name === allPatternsCategory.name) {
36
36
  return true;
37
37
  }
38
- if (category.name === myPatternsCategory?.name && pattern.type === INSERTER_PATTERN_TYPES.user) {
38
+ if (category.name === myPatternsCategory.name && pattern.type === INSERTER_PATTERN_TYPES.user) {
39
39
  return true;
40
40
  }
41
- if (category.name === starterPatternsCategory?.name && pattern.blockTypes?.includes('core/post-content')) {
41
+ if (category.name === starterPatternsCategory.name && pattern.blockTypes?.includes('core/post-content')) {
42
42
  return true;
43
43
  }
44
44
  if (category.name === 'uncategorized') {
@@ -78,7 +78,7 @@ export function PatternCategoryPreviews({
78
78
  size: 13,
79
79
  level: 4,
80
80
  as: "div",
81
- children: category?.label
81
+ children: category.label
82
82
  })
83
83
  }), /*#__PURE__*/_jsx(PatternsFilter, {
84
84
  patternSyncFilter: patternSyncFilter,
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useState","useCallback","useRef","useEffect","__","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalHeading","Heading","__experimentalText","Text","FlexBlock","usePatternsState","BlockPatternsList","usePatternsPaging","PatternsFilter","usePatternCategories","isPatternFiltered","allPatternsCategory","myPatternsCategory","starterPatternsCategory","INSERTER_PATTERN_TYPES","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","noop","PatternCategoryPreviews","rootClientId","onInsert","onHover","category","showTitlesAsTooltip","allPatterns","onClickPattern","name","patternSyncFilter","setPatternSyncFilter","patternSourceFilter","setPatternSourceFilter","availableCategories","scrollContainerRef","currentCategoryPatterns","filter","pattern","type","user","blockTypes","includes","categories","some","catName","c","pagingProps","changePage","onSetPatternSyncFilter","value","onSetPatternSourceFilter","children","spacing","className","size","level","as","label","length","variant","ref","blockPatterns","categoryPatterns","orientation","isDraggable","patternFilter"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/pattern-category-previews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseMemo,\n\tuseState,\n\tuseCallback,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\tFlexBlock,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport usePatternsState from '../hooks/use-patterns-state';\nimport BlockPatternsList from '../../block-patterns-list';\nimport usePatternsPaging from '../hooks/use-patterns-paging';\nimport { PatternsFilter } from './patterns-filter';\nimport { usePatternCategories } from './use-pattern-categories';\nimport {\n\tisPatternFiltered,\n\tallPatternsCategory,\n\tmyPatternsCategory,\n\tstarterPatternsCategory,\n\tINSERTER_PATTERN_TYPES,\n} from './utils';\n\nconst noop = () => {};\n\nexport function PatternCategoryPreviews( {\n\trootClientId,\n\tonInsert,\n\tonHover = noop,\n\tcategory,\n\tshowTitlesAsTooltip,\n} ) {\n\tconst [ allPatterns, , onClickPattern ] = usePatternsState(\n\t\tonInsert,\n\t\trootClientId,\n\t\tcategory?.name\n\t);\n\tconst [ patternSyncFilter, setPatternSyncFilter ] = useState( 'all' );\n\tconst [ patternSourceFilter, setPatternSourceFilter ] = useState( 'all' );\n\n\tconst availableCategories = usePatternCategories(\n\t\trootClientId,\n\t\tpatternSourceFilter\n\t);\n\tconst scrollContainerRef = useRef();\n\tconst currentCategoryPatterns = useMemo(\n\t\t() =>\n\t\t\tallPatterns.filter( ( pattern ) => {\n\t\t\t\tif (\n\t\t\t\t\tisPatternFiltered(\n\t\t\t\t\t\tpattern,\n\t\t\t\t\t\tpatternSourceFilter,\n\t\t\t\t\t\tpatternSyncFilter\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif ( category.name === allPatternsCategory?.name ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tcategory.name === myPatternsCategory?.name &&\n\t\t\t\t\tpattern.type === INSERTER_PATTERN_TYPES.user\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tcategory.name === starterPatternsCategory?.name &&\n\t\t\t\t\tpattern.blockTypes?.includes( 'core/post-content' )\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif ( category.name === 'uncategorized' ) {\n\t\t\t\t\t// The uncategorized category should show all the patterns without any category...\n\t\t\t\t\tif ( ! pattern.categories ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\n\t\t\t\t\t// ...or with no available category.\n\t\t\t\t\treturn ! pattern.categories.some( ( catName ) =>\n\t\t\t\t\t\tavailableCategories.some( ( c ) => c.name === catName )\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn pattern.categories?.includes( category.name );\n\t\t\t} ),\n\t\t[\n\t\t\tallPatterns,\n\t\t\tavailableCategories,\n\t\t\tcategory.name,\n\t\t\tpatternSourceFilter,\n\t\t\tpatternSyncFilter,\n\t\t]\n\t);\n\n\tconst pagingProps = usePatternsPaging(\n\t\tcurrentCategoryPatterns,\n\t\tcategory,\n\t\tscrollContainerRef\n\t);\n\tconst { changePage } = pagingProps;\n\n\t// Hide block pattern preview on unmount.\n\tuseEffect( () => () => onHover( null ), [] );\n\n\tconst onSetPatternSyncFilter = useCallback(\n\t\t( value ) => {\n\t\t\tsetPatternSyncFilter( value );\n\t\t\tchangePage( 1 );\n\t\t},\n\t\t[ setPatternSyncFilter, changePage ]\n\t);\n\tconst onSetPatternSourceFilter = useCallback(\n\t\t( value ) => {\n\t\t\tsetPatternSourceFilter( value );\n\t\t\tchangePage( 1 );\n\t\t},\n\t\t[ setPatternSourceFilter, changePage ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<VStack\n\t\t\t\tspacing={ 2 }\n\t\t\t\tclassName=\"block-editor-inserter__patterns-category-panel-header\"\n\t\t\t>\n\t\t\t\t<HStack>\n\t\t\t\t\t<FlexBlock>\n\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-category-panel-title\"\n\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\tlevel={ 4 }\n\t\t\t\t\t\t\tas=\"div\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ category?.label }\n\t\t\t\t\t\t</Heading>\n\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t<PatternsFilter\n\t\t\t\t\t\tpatternSyncFilter={ patternSyncFilter }\n\t\t\t\t\t\tpatternSourceFilter={ patternSourceFilter }\n\t\t\t\t\t\tsetPatternSyncFilter={ onSetPatternSyncFilter }\n\t\t\t\t\t\tsetPatternSourceFilter={ onSetPatternSourceFilter }\n\t\t\t\t\t\tscrollContainerRef={ scrollContainerRef }\n\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t\t{ ! currentCategoryPatterns.length && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-category-no-results\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'No results found' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t\t{ currentCategoryPatterns.length > 0 && (\n\t\t\t\t<>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"12\"\n\t\t\t\t\t\tas=\"p\"\n\t\t\t\t\t\tclassName=\"block-editor-inserter__help-text\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Drag and drop patterns into the canvas.' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tref={ scrollContainerRef }\n\t\t\t\t\t\tblockPatterns={ pagingProps.categoryPatterns }\n\t\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tlabel={ category.label }\n\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\tcategory={ category.name }\n\t\t\t\t\t\tisDraggable\n\t\t\t\t\t\tshowTitlesAsTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t\tpatternFilter={ patternSourceFilter }\n\t\t\t\t\t\tpagingProps={ pagingProps }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useState","useCallback","useRef","useEffect","__","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalHeading","Heading","__experimentalText","Text","FlexBlock","usePatternsState","BlockPatternsList","usePatternsPaging","PatternsFilter","usePatternCategories","isPatternFiltered","allPatternsCategory","myPatternsCategory","starterPatternsCategory","INSERTER_PATTERN_TYPES","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","noop","PatternCategoryPreviews","rootClientId","onInsert","onHover","category","showTitlesAsTooltip","allPatterns","onClickPattern","name","patternSyncFilter","setPatternSyncFilter","patternSourceFilter","setPatternSourceFilter","availableCategories","scrollContainerRef","currentCategoryPatterns","filter","pattern","type","user","blockTypes","includes","categories","some","catName","c","pagingProps","changePage","onSetPatternSyncFilter","value","onSetPatternSourceFilter","children","spacing","className","size","level","as","label","length","variant","ref","blockPatterns","categoryPatterns","orientation","isDraggable","patternFilter"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/pattern-category-previews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseMemo,\n\tuseState,\n\tuseCallback,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\tFlexBlock,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport usePatternsState from '../hooks/use-patterns-state';\nimport BlockPatternsList from '../../block-patterns-list';\nimport usePatternsPaging from '../hooks/use-patterns-paging';\nimport { PatternsFilter } from './patterns-filter';\nimport { usePatternCategories } from './use-pattern-categories';\nimport {\n\tisPatternFiltered,\n\tallPatternsCategory,\n\tmyPatternsCategory,\n\tstarterPatternsCategory,\n\tINSERTER_PATTERN_TYPES,\n} from './utils';\n\nconst noop = () => {};\n\nexport function PatternCategoryPreviews( {\n\trootClientId,\n\tonInsert,\n\tonHover = noop,\n\tcategory,\n\tshowTitlesAsTooltip,\n} ) {\n\tconst [ allPatterns, , onClickPattern ] = usePatternsState(\n\t\tonInsert,\n\t\trootClientId,\n\t\tcategory?.name\n\t);\n\tconst [ patternSyncFilter, setPatternSyncFilter ] = useState( 'all' );\n\tconst [ patternSourceFilter, setPatternSourceFilter ] = useState( 'all' );\n\n\tconst availableCategories = usePatternCategories(\n\t\trootClientId,\n\t\tpatternSourceFilter\n\t);\n\tconst scrollContainerRef = useRef();\n\tconst currentCategoryPatterns = useMemo(\n\t\t() =>\n\t\t\tallPatterns.filter( ( pattern ) => {\n\t\t\t\tif (\n\t\t\t\t\tisPatternFiltered(\n\t\t\t\t\t\tpattern,\n\t\t\t\t\t\tpatternSourceFilter,\n\t\t\t\t\t\tpatternSyncFilter\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif ( category.name === allPatternsCategory.name ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tcategory.name === myPatternsCategory.name &&\n\t\t\t\t\tpattern.type === INSERTER_PATTERN_TYPES.user\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tcategory.name === starterPatternsCategory.name &&\n\t\t\t\t\tpattern.blockTypes?.includes( 'core/post-content' )\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tif ( category.name === 'uncategorized' ) {\n\t\t\t\t\t// The uncategorized category should show all the patterns without any category...\n\t\t\t\t\tif ( ! pattern.categories ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\n\t\t\t\t\t// ...or with no available category.\n\t\t\t\t\treturn ! pattern.categories.some( ( catName ) =>\n\t\t\t\t\t\tavailableCategories.some( ( c ) => c.name === catName )\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn pattern.categories?.includes( category.name );\n\t\t\t} ),\n\t\t[\n\t\t\tallPatterns,\n\t\t\tavailableCategories,\n\t\t\tcategory.name,\n\t\t\tpatternSourceFilter,\n\t\t\tpatternSyncFilter,\n\t\t]\n\t);\n\n\tconst pagingProps = usePatternsPaging(\n\t\tcurrentCategoryPatterns,\n\t\tcategory,\n\t\tscrollContainerRef\n\t);\n\tconst { changePage } = pagingProps;\n\n\t// Hide block pattern preview on unmount.\n\tuseEffect( () => () => onHover( null ), [] );\n\n\tconst onSetPatternSyncFilter = useCallback(\n\t\t( value ) => {\n\t\t\tsetPatternSyncFilter( value );\n\t\t\tchangePage( 1 );\n\t\t},\n\t\t[ setPatternSyncFilter, changePage ]\n\t);\n\tconst onSetPatternSourceFilter = useCallback(\n\t\t( value ) => {\n\t\t\tsetPatternSourceFilter( value );\n\t\t\tchangePage( 1 );\n\t\t},\n\t\t[ setPatternSourceFilter, changePage ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<VStack\n\t\t\t\tspacing={ 2 }\n\t\t\t\tclassName=\"block-editor-inserter__patterns-category-panel-header\"\n\t\t\t>\n\t\t\t\t<HStack>\n\t\t\t\t\t<FlexBlock>\n\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-category-panel-title\"\n\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\tlevel={ 4 }\n\t\t\t\t\t\t\tas=\"div\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t</Heading>\n\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t<PatternsFilter\n\t\t\t\t\t\tpatternSyncFilter={ patternSyncFilter }\n\t\t\t\t\t\tpatternSourceFilter={ patternSourceFilter }\n\t\t\t\t\t\tsetPatternSyncFilter={ onSetPatternSyncFilter }\n\t\t\t\t\t\tsetPatternSourceFilter={ onSetPatternSourceFilter }\n\t\t\t\t\t\tscrollContainerRef={ scrollContainerRef }\n\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t\t{ ! currentCategoryPatterns.length && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\tclassName=\"block-editor-inserter__patterns-category-no-results\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'No results found' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t\t{ currentCategoryPatterns.length > 0 && (\n\t\t\t\t<>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"12\"\n\t\t\t\t\t\tas=\"p\"\n\t\t\t\t\t\tclassName=\"block-editor-inserter__help-text\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Drag and drop patterns into the canvas.' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tref={ scrollContainerRef }\n\t\t\t\t\t\tblockPatterns={ pagingProps.categoryPatterns }\n\t\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tlabel={ category.label }\n\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\tcategory={ category.name }\n\t\t\t\t\t\tisDraggable\n\t\t\t\t\t\tshowTitlesAsTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t\tpatternFilter={ patternSourceFilter }\n\t\t\t\t\t\tpagingProps={ pagingProps }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,OAAO,EACPC,QAAQ,EACRC,WAAW,EACXC,MAAM,EACNC,SAAS,QACH,oBAAoB;AAC3B,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,SACCC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,qBAAqB,IAAIC,OAAO,EAChCC,kBAAkB,IAAIC,IAAI,EAC1BC,SAAS,QACH,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,gBAAgB,MAAM,6BAA6B;AAC1D,OAAOC,iBAAiB,MAAM,2BAA2B;AACzD,OAAOC,iBAAiB,MAAM,8BAA8B;AAC5D,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,oBAAoB,QAAQ,0BAA0B;AAC/D,SACCC,iBAAiB,EACjBC,mBAAmB,EACnBC,kBAAkB,EAClBC,uBAAuB,EACvBC,sBAAsB,QAChB,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEjB,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,OAAO,SAASC,uBAAuBA,CAAE;EACxCC,YAAY;EACZC,QAAQ;EACRC,OAAO,GAAGJ,IAAI;EACdK,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,WAAW,GAAIC,cAAc,CAAE,GAAGxB,gBAAgB,CACzDmB,QAAQ,EACRD,YAAY,EACZG,QAAQ,EAAEI,IACX,CAAC;EACD,MAAM,CAAEC,iBAAiB,EAAEC,oBAAoB,CAAE,GAAGzC,QAAQ,CAAE,KAAM,CAAC;EACrE,MAAM,CAAE0C,mBAAmB,EAAEC,sBAAsB,CAAE,GAAG3C,QAAQ,CAAE,KAAM,CAAC;EAEzE,MAAM4C,mBAAmB,GAAG1B,oBAAoB,CAC/Cc,YAAY,EACZU,mBACD,CAAC;EACD,MAAMG,kBAAkB,GAAG3C,MAAM,CAAC,CAAC;EACnC,MAAM4C,uBAAuB,GAAG/C,OAAO,CACtC,MACCsC,WAAW,CAACU,MAAM,CAAIC,OAAO,IAAM;IAClC,IACC7B,iBAAiB,CAChB6B,OAAO,EACPN,mBAAmB,EACnBF,iBACD,CAAC,EACA;MACD,OAAO,KAAK;IACb;IAEA,IAAKL,QAAQ,CAACI,IAAI,KAAKnB,mBAAmB,CAACmB,IAAI,EAAG;MACjD,OAAO,IAAI;IACZ;IAEA,IACCJ,QAAQ,CAACI,IAAI,KAAKlB,kBAAkB,CAACkB,IAAI,IACzCS,OAAO,CAACC,IAAI,KAAK1B,sBAAsB,CAAC2B,IAAI,EAC3C;MACD,OAAO,IAAI;IACZ;IAEA,IACCf,QAAQ,CAACI,IAAI,KAAKjB,uBAAuB,CAACiB,IAAI,IAC9CS,OAAO,CAACG,UAAU,EAAEC,QAAQ,CAAE,mBAAoB,CAAC,EAClD;MACD,OAAO,IAAI;IACZ;IAEA,IAAKjB,QAAQ,CAACI,IAAI,KAAK,eAAe,EAAG;MACxC;MACA,IAAK,CAAES,OAAO,CAACK,UAAU,EAAG;QAC3B,OAAO,IAAI;MACZ;;MAEA;MACA,OAAO,CAAEL,OAAO,CAACK,UAAU,CAACC,IAAI,CAAIC,OAAO,IAC1CX,mBAAmB,CAACU,IAAI,CAAIE,CAAC,IAAMA,CAAC,CAACjB,IAAI,KAAKgB,OAAQ,CACvD,CAAC;IACF;IAEA,OAAOP,OAAO,CAACK,UAAU,EAAED,QAAQ,CAAEjB,QAAQ,CAACI,IAAK,CAAC;EACrD,CAAE,CAAC,EACJ,CACCF,WAAW,EACXO,mBAAmB,EACnBT,QAAQ,CAACI,IAAI,EACbG,mBAAmB,EACnBF,iBAAiB,CAEnB,CAAC;EAED,MAAMiB,WAAW,GAAGzC,iBAAiB,CACpC8B,uBAAuB,EACvBX,QAAQ,EACRU,kBACD,CAAC;EACD,MAAM;IAAEa;EAAW,CAAC,GAAGD,WAAW;;EAElC;EACAtD,SAAS,CAAE,MAAM,MAAM+B,OAAO,CAAE,IAAK,CAAC,EAAE,EAAG,CAAC;EAE5C,MAAMyB,sBAAsB,GAAG1D,WAAW,CACvC2D,KAAK,IAAM;IACZnB,oBAAoB,CAAEmB,KAAM,CAAC;IAC7BF,UAAU,CAAE,CAAE,CAAC;EAChB,CAAC,EACD,CAAEjB,oBAAoB,EAAEiB,UAAU,CACnC,CAAC;EACD,MAAMG,wBAAwB,GAAG5D,WAAW,CACzC2D,KAAK,IAAM;IACZjB,sBAAsB,CAAEiB,KAAM,CAAC;IAC/BF,UAAU,CAAE,CAAE,CAAC;EAChB,CAAC,EACD,CAAEf,sBAAsB,EAAEe,UAAU,CACrC,CAAC;EAED,oBACC/B,KAAA,CAAAE,SAAA;IAAAiC,QAAA,gBACCnC,KAAA,CAACnB,MAAM;MACNuD,OAAO,EAAG,CAAG;MACbC,SAAS,EAAC,uDAAuD;MAAAF,QAAA,gBAEjEnC,KAAA,CAACrB,MAAM;QAAAwD,QAAA,gBACNrC,IAAA,CAACZ,SAAS;UAAAiD,QAAA,eACTrC,IAAA,CAACf,OAAO;YACPsD,SAAS,EAAC,sDAAsD;YAChEC,IAAI,EAAG,EAAI;YACXC,KAAK,EAAG,CAAG;YACXC,EAAE,EAAC,KAAK;YAAAL,QAAA,EAEN3B,QAAQ,CAACiC;UAAK,CACR;QAAC,CACA,CAAC,eACZ3C,IAAA,CAACR,cAAc;UACduB,iBAAiB,EAAGA,iBAAmB;UACvCE,mBAAmB,EAAGA,mBAAqB;UAC3CD,oBAAoB,EAAGkB,sBAAwB;UAC/ChB,sBAAsB,EAAGkB,wBAA0B;UACnDhB,kBAAkB,EAAGA,kBAAoB;UACzCV,QAAQ,EAAGA;QAAU,CACrB,CAAC;MAAA,CACK,CAAC,EACP,CAAEW,uBAAuB,CAACuB,MAAM,iBACjC5C,IAAA,CAACb,IAAI;QACJ0D,OAAO,EAAC,OAAO;QACfN,SAAS,EAAC,qDAAqD;QAAAF,QAAA,EAE7D1D,EAAE,CAAE,kBAAmB;MAAC,CACrB,CACN;IAAA,CACM,CAAC,EACP0C,uBAAuB,CAACuB,MAAM,GAAG,CAAC,iBACnC1C,KAAA,CAAAE,SAAA;MAAAiC,QAAA,gBACCrC,IAAA,CAACb,IAAI;QACJqD,IAAI,EAAC,IAAI;QACTE,EAAE,EAAC,GAAG;QACNH,SAAS,EAAC,kCAAkC;QAAAF,QAAA,EAE1C1D,EAAE,CAAE,yCAA0C;MAAC,CAC5C,CAAC,eACPqB,IAAA,CAACV,iBAAiB;QACjBwD,GAAG,EAAG1B,kBAAoB;QAC1B2B,aAAa,EAAGf,WAAW,CAACgB,gBAAkB;QAC9CnC,cAAc,EAAGA,cAAgB;QACjCJ,OAAO,EAAGA,OAAS;QACnBkC,KAAK,EAAGjC,QAAQ,CAACiC,KAAO;QACxBM,WAAW,EAAC,UAAU;QACtBvC,QAAQ,EAAGA,QAAQ,CAACI,IAAM;QAC1BoC,WAAW;QACXvC,mBAAmB,EAAGA,mBAAqB;QAC3CwC,aAAa,EAAGlC,mBAAqB;QACrCe,WAAW,EAAGA;MAAa,CAC3B,CAAC;IAAA,CACD,CACF;EAAA,CACA,CAAC;AAEL","ignoreList":[]}
@@ -13,7 +13,7 @@ import { myPatternsCategory, INSERTER_SYNC_TYPES, INSERTER_PATTERN_TYPES } from
13
13
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
14
14
  const getShouldDisableSyncFilter = sourceFilter => sourceFilter !== 'all' && sourceFilter !== 'user';
15
15
  const getShouldHideSourcesFilter = category => {
16
- return category?.name === myPatternsCategory.name;
16
+ return category.name === myPatternsCategory.name;
17
17
  };
18
18
  const PATTERN_SOURCE_MENU_OPTIONS = [{
19
19
  value: 'all',
@@ -40,7 +40,7 @@ export function PatternsFilter({
40
40
  // we do this by deriving from props rather than calling setPatternSourceFilter otherwise
41
41
  // the user may be confused when switching to another category if the haven't explicitly set
42
42
  // this filter themselves.
43
- const currentPatternSourceFilter = category?.name === myPatternsCategory.name ? INSERTER_PATTERN_TYPES.user : patternSourceFilter;
43
+ const currentPatternSourceFilter = category.name === myPatternsCategory.name ? INSERTER_PATTERN_TYPES.user : patternSourceFilter;
44
44
 
45
45
  // We need to disable the sync filter option if the source filter is not 'all' or 'user'
46
46
  // otherwise applying them will just result in no patterns being shown.
@@ -1 +1 @@
1
- {"version":3,"names":["SVG","Path","DropdownMenu","MenuGroup","MenuItemsChoice","ExternalLink","__","_x","Icon","useMemo","createInterpolateElement","myPatternsCategory","INSERTER_SYNC_TYPES","INSERTER_PATTERN_TYPES","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","getShouldDisableSyncFilter","sourceFilter","getShouldHideSourcesFilter","category","name","PATTERN_SOURCE_MENU_OPTIONS","value","label","directory","theme","user","PatternsFilter","setPatternSyncFilter","setPatternSourceFilter","patternSyncFilter","patternSourceFilter","scrollContainerRef","currentPatternSourceFilter","shouldDisableSyncFilter","shouldHideSourcesFilter","patternSyncMenuOptions","full","disabled","unsynced","handleSetSourceFilterChange","newSourceFilter","children","popoverProps","placement","toggleProps","size","icon","width","height","viewBox","fill","xmlns","d","choices","onSelect","current","scrollTo","className","Link","href"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/patterns-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tSVG,\n\tPath,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItemsChoice,\n\tExternalLink,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { Icon } from '@wordpress/icons';\nimport { useMemo, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tmyPatternsCategory,\n\tINSERTER_SYNC_TYPES,\n\tINSERTER_PATTERN_TYPES,\n} from './utils';\n\nconst getShouldDisableSyncFilter = ( sourceFilter ) =>\n\tsourceFilter !== 'all' && sourceFilter !== 'user';\nconst getShouldHideSourcesFilter = ( category ) => {\n\treturn category?.name === myPatternsCategory.name;\n};\n\nconst PATTERN_SOURCE_MENU_OPTIONS = [\n\t{\n\t\tvalue: 'all',\n\t\tlabel: _x( 'All', 'patterns' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.directory,\n\t\tlabel: __( 'Pattern Directory' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.theme,\n\t\tlabel: __( 'Theme & Plugins' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.user,\n\t\tlabel: __( 'User' ),\n\t},\n];\n\nexport function PatternsFilter( {\n\tsetPatternSyncFilter,\n\tsetPatternSourceFilter,\n\tpatternSyncFilter,\n\tpatternSourceFilter,\n\tscrollContainerRef,\n\tcategory,\n} ) {\n\t// If the category is `myPatterns` then we need to set the source filter to `user`, but\n\t// we do this by deriving from props rather than calling setPatternSourceFilter otherwise\n\t// the user may be confused when switching to another category if the haven't explicitly set\n\t// this filter themselves.\n\tconst currentPatternSourceFilter =\n\t\tcategory?.name === myPatternsCategory.name\n\t\t\t? INSERTER_PATTERN_TYPES.user\n\t\t\t: patternSourceFilter;\n\n\t// We need to disable the sync filter option if the source filter is not 'all' or 'user'\n\t// otherwise applying them will just result in no patterns being shown.\n\tconst shouldDisableSyncFilter = getShouldDisableSyncFilter(\n\t\tcurrentPatternSourceFilter\n\t);\n\n\t// We also hide the directory and theme source filter if the category is `myPatterns`\n\t// otherwise there will only be one option available.\n\tconst shouldHideSourcesFilter = getShouldHideSourcesFilter( category );\n\n\tconst patternSyncMenuOptions = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tvalue: 'all',\n\t\t\t\tlabel: _x( 'All', 'patterns' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: INSERTER_SYNC_TYPES.full,\n\t\t\t\tlabel: _x( 'Synced', 'patterns' ),\n\t\t\t\tdisabled: shouldDisableSyncFilter,\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: INSERTER_SYNC_TYPES.unsynced,\n\t\t\t\tlabel: _x( 'Not synced', 'patterns' ),\n\t\t\t\tdisabled: shouldDisableSyncFilter,\n\t\t\t},\n\t\t],\n\t\t[ shouldDisableSyncFilter ]\n\t);\n\n\tfunction handleSetSourceFilterChange( newSourceFilter ) {\n\t\tsetPatternSourceFilter( newSourceFilter );\n\t\tif ( getShouldDisableSyncFilter( newSourceFilter ) ) {\n\t\t\tsetPatternSyncFilter( 'all' );\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tplacement: 'right-end',\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Filter patterns' ) }\n\t\t\t\ttoggleProps={ { size: 'compact' } }\n\t\t\t\ticon={\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<SVG\n\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\theight=\"24\"\n\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Path\n\t\t\t\t\t\t\t\t\td=\"M10 17.5H14V16H10V17.5ZM6 6V7.5H18V6H6ZM8 12.5H16V11H8V12.5Z\"\n\t\t\t\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SVG>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! shouldHideSourcesFilter && (\n\t\t\t\t\t\t\t<MenuGroup label={ __( 'Source' ) }>\n\t\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\t\tchoices={ PATTERN_SOURCE_MENU_OPTIONS }\n\t\t\t\t\t\t\t\t\tonSelect={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\thandleSetSourceFilterChange( value );\n\t\t\t\t\t\t\t\t\t\tscrollContainerRef.current?.scrollTo(\n\t\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvalue={ currentPatternSourceFilter }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<MenuGroup label={ __( 'Type' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tchoices={ patternSyncMenuOptions }\n\t\t\t\t\t\t\t\tonSelect={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetPatternSyncFilter( value );\n\t\t\t\t\t\t\t\t\tscrollContainerRef.current?.scrollTo(\n\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t0\n\t\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\tvalue={ patternSyncFilter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<div className=\"block-editor-inserter__patterns-filter-help\">\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Patterns are available from the <Link>WordPress.org Pattern Directory</Link>, bundled in the active theme, or created by users on this site. Only patterns created on this site can be synced.'\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\tLink: (\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/patterns/'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\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) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,GAAG,EACHC,IAAI,EACJC,YAAY,EACZC,SAAS,EACTC,eAAe,EACfC,YAAY,QACN,uBAAuB;AAC9B,SAASC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,OAAO,EAAEC,wBAAwB,QAAQ,oBAAoB;;AAEtE;AACA;AACA;AACA,SACCC,kBAAkB,EAClBC,mBAAmB,EACnBC,sBAAsB,QAChB,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjB,MAAMC,0BAA0B,GAAKC,YAAY,IAChDA,YAAY,KAAK,KAAK,IAAIA,YAAY,KAAK,MAAM;AAClD,MAAMC,0BAA0B,GAAKC,QAAQ,IAAM;EAClD,OAAOA,QAAQ,EAAEC,IAAI,KAAKb,kBAAkB,CAACa,IAAI;AAClD,CAAC;AAED,MAAMC,2BAA2B,GAAG,CACnC;EACCC,KAAK,EAAE,KAAK;EACZC,KAAK,EAAEpB,EAAE,CAAE,KAAK,EAAE,UAAW;AAC9B,CAAC,EACD;EACCmB,KAAK,EAAEb,sBAAsB,CAACe,SAAS;EACvCD,KAAK,EAAErB,EAAE,CAAE,mBAAoB;AAChC,CAAC,EACD;EACCoB,KAAK,EAAEb,sBAAsB,CAACgB,KAAK;EACnCF,KAAK,EAAErB,EAAE,CAAE,iBAAkB;AAC9B,CAAC,EACD;EACCoB,KAAK,EAAEb,sBAAsB,CAACiB,IAAI;EAClCH,KAAK,EAAErB,EAAE,CAAE,MAAO;AACnB,CAAC,CACD;AAED,OAAO,SAASyB,cAAcA,CAAE;EAC/BC,oBAAoB;EACpBC,sBAAsB;EACtBC,iBAAiB;EACjBC,mBAAmB;EACnBC,kBAAkB;EAClBb;AACD,CAAC,EAAG;EACH;EACA;EACA;EACA;EACA,MAAMc,0BAA0B,GAC/Bd,QAAQ,EAAEC,IAAI,KAAKb,kBAAkB,CAACa,IAAI,GACvCX,sBAAsB,CAACiB,IAAI,GAC3BK,mBAAmB;;EAEvB;EACA;EACA,MAAMG,uBAAuB,GAAGlB,0BAA0B,CACzDiB,0BACD,CAAC;;EAED;EACA;EACA,MAAME,uBAAuB,GAAGjB,0BAA0B,CAAEC,QAAS,CAAC;EAEtE,MAAMiB,sBAAsB,GAAG/B,OAAO,CACrC,MAAM,CACL;IACCiB,KAAK,EAAE,KAAK;IACZC,KAAK,EAAEpB,EAAE,CAAE,KAAK,EAAE,UAAW;EAC9B,CAAC,EACD;IACCmB,KAAK,EAAEd,mBAAmB,CAAC6B,IAAI;IAC/Bd,KAAK,EAAEpB,EAAE,CAAE,QAAQ,EAAE,UAAW,CAAC;IACjCmC,QAAQ,EAAEJ;EACX,CAAC,EACD;IACCZ,KAAK,EAAEd,mBAAmB,CAAC+B,QAAQ;IACnChB,KAAK,EAAEpB,EAAE,CAAE,YAAY,EAAE,UAAW,CAAC;IACrCmC,QAAQ,EAAEJ;EACX,CAAC,CACD,EACD,CAAEA,uBAAuB,CAC1B,CAAC;EAED,SAASM,2BAA2BA,CAAEC,eAAe,EAAG;IACvDZ,sBAAsB,CAAEY,eAAgB,CAAC;IACzC,IAAKzB,0BAA0B,CAAEyB,eAAgB,CAAC,EAAG;MACpDb,oBAAoB,CAAE,KAAM,CAAC;IAC9B;EACD;EAEA,oBACCjB,IAAA,CAAAE,SAAA;IAAA6B,QAAA,eACC/B,IAAA,CAACb,YAAY;MACZ6C,YAAY,EAAG;QACdC,SAAS,EAAE;MACZ,CAAG;MACHrB,KAAK,EAAGrB,EAAE,CAAE,iBAAkB,CAAG;MACjC2C,WAAW,EAAG;QAAEC,IAAI,EAAE;MAAU,CAAG;MACnCC,IAAI,eACHpC,IAAA,CAACP,IAAI;QACJ2C,IAAI,eACHpC,IAAA,CAACf,GAAG;UACHoD,KAAK,EAAC,IAAI;UACVC,MAAM,EAAC,IAAI;UACXC,OAAO,EAAC,WAAW;UACnBC,IAAI,EAAC,MAAM;UACXC,KAAK,EAAC,4BAA4B;UAAAV,QAAA,eAElC/B,IAAA,CAACd,IAAI;YACJwD,CAAC,EAAC,8DAA8D;YAChEF,IAAI,EAAC;UAAc,CACnB;QAAC,CACE;MACL,CACD,CACD;MAAAT,QAAA,EAECA,CAAA,kBACD3B,KAAA,CAAAF,SAAA;QAAA6B,QAAA,GACG,CAAEP,uBAAuB,iBAC1BxB,IAAA,CAACZ,SAAS;UAACwB,KAAK,EAAGrB,EAAE,CAAE,QAAS,CAAG;UAAAwC,QAAA,eAClC/B,IAAA,CAACX,eAAe;YACfsD,OAAO,EAAGjC,2BAA6B;YACvCkC,QAAQ,EAAKjC,KAAK,IAAM;cACvBkB,2BAA2B,CAAElB,KAAM,CAAC;cACpCU,kBAAkB,CAACwB,OAAO,EAAEC,QAAQ,CACnC,CAAC,EACD,CACD,CAAC;YACF,CAAG;YACHnC,KAAK,EAAGW;UAA4B,CACpC;QAAC,CACQ,CACX,eACDtB,IAAA,CAACZ,SAAS;UAACwB,KAAK,EAAGrB,EAAE,CAAE,MAAO,CAAG;UAAAwC,QAAA,eAChC/B,IAAA,CAACX,eAAe;YACfsD,OAAO,EAAGlB,sBAAwB;YAClCmB,QAAQ,EAAKjC,KAAK,IAAM;cACvBM,oBAAoB,CAAEN,KAAM,CAAC;cAC7BU,kBAAkB,CAACwB,OAAO,EAAEC,QAAQ,CACnC,CAAC,EACD,CACD,CAAC;YACF,CAAG;YACHnC,KAAK,EAAGQ;UAAmB,CAC3B;QAAC,CACQ,CAAC,eACZnB,IAAA;UAAK+C,SAAS,EAAC,6CAA6C;UAAAhB,QAAA,EACzDpC,wBAAwB,CACzBJ,EAAE,CACD,gMACD,CAAC,EACD;YACCyD,IAAI,eACHhD,IAAA,CAACV,YAAY;cACZ2D,IAAI,EAAG1D,EAAE,CACR,iCACD;YAAG,CACH;UAEH,CACD;QAAC,CACG,CAAC;MAAA,CACL;IACF,CACY;EAAC,CACd,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["SVG","Path","DropdownMenu","MenuGroup","MenuItemsChoice","ExternalLink","__","_x","Icon","useMemo","createInterpolateElement","myPatternsCategory","INSERTER_SYNC_TYPES","INSERTER_PATTERN_TYPES","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","getShouldDisableSyncFilter","sourceFilter","getShouldHideSourcesFilter","category","name","PATTERN_SOURCE_MENU_OPTIONS","value","label","directory","theme","user","PatternsFilter","setPatternSyncFilter","setPatternSourceFilter","patternSyncFilter","patternSourceFilter","scrollContainerRef","currentPatternSourceFilter","shouldDisableSyncFilter","shouldHideSourcesFilter","patternSyncMenuOptions","full","disabled","unsynced","handleSetSourceFilterChange","newSourceFilter","children","popoverProps","placement","toggleProps","size","icon","width","height","viewBox","fill","xmlns","d","choices","onSelect","current","scrollTo","className","Link","href"],"sources":["@wordpress/block-editor/src/components/inserter/block-patterns-tab/patterns-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tSVG,\n\tPath,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItemsChoice,\n\tExternalLink,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { Icon } from '@wordpress/icons';\nimport { useMemo, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tmyPatternsCategory,\n\tINSERTER_SYNC_TYPES,\n\tINSERTER_PATTERN_TYPES,\n} from './utils';\n\nconst getShouldDisableSyncFilter = ( sourceFilter ) =>\n\tsourceFilter !== 'all' && sourceFilter !== 'user';\nconst getShouldHideSourcesFilter = ( category ) => {\n\treturn category.name === myPatternsCategory.name;\n};\n\nconst PATTERN_SOURCE_MENU_OPTIONS = [\n\t{\n\t\tvalue: 'all',\n\t\tlabel: _x( 'All', 'patterns' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.directory,\n\t\tlabel: __( 'Pattern Directory' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.theme,\n\t\tlabel: __( 'Theme & Plugins' ),\n\t},\n\t{\n\t\tvalue: INSERTER_PATTERN_TYPES.user,\n\t\tlabel: __( 'User' ),\n\t},\n];\n\nexport function PatternsFilter( {\n\tsetPatternSyncFilter,\n\tsetPatternSourceFilter,\n\tpatternSyncFilter,\n\tpatternSourceFilter,\n\tscrollContainerRef,\n\tcategory,\n} ) {\n\t// If the category is `myPatterns` then we need to set the source filter to `user`, but\n\t// we do this by deriving from props rather than calling setPatternSourceFilter otherwise\n\t// the user may be confused when switching to another category if the haven't explicitly set\n\t// this filter themselves.\n\tconst currentPatternSourceFilter =\n\t\tcategory.name === myPatternsCategory.name\n\t\t\t? INSERTER_PATTERN_TYPES.user\n\t\t\t: patternSourceFilter;\n\n\t// We need to disable the sync filter option if the source filter is not 'all' or 'user'\n\t// otherwise applying them will just result in no patterns being shown.\n\tconst shouldDisableSyncFilter = getShouldDisableSyncFilter(\n\t\tcurrentPatternSourceFilter\n\t);\n\n\t// We also hide the directory and theme source filter if the category is `myPatterns`\n\t// otherwise there will only be one option available.\n\tconst shouldHideSourcesFilter = getShouldHideSourcesFilter( category );\n\n\tconst patternSyncMenuOptions = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tvalue: 'all',\n\t\t\t\tlabel: _x( 'All', 'patterns' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: INSERTER_SYNC_TYPES.full,\n\t\t\t\tlabel: _x( 'Synced', 'patterns' ),\n\t\t\t\tdisabled: shouldDisableSyncFilter,\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: INSERTER_SYNC_TYPES.unsynced,\n\t\t\t\tlabel: _x( 'Not synced', 'patterns' ),\n\t\t\t\tdisabled: shouldDisableSyncFilter,\n\t\t\t},\n\t\t],\n\t\t[ shouldDisableSyncFilter ]\n\t);\n\n\tfunction handleSetSourceFilterChange( newSourceFilter ) {\n\t\tsetPatternSourceFilter( newSourceFilter );\n\t\tif ( getShouldDisableSyncFilter( newSourceFilter ) ) {\n\t\t\tsetPatternSyncFilter( 'all' );\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tplacement: 'right-end',\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Filter patterns' ) }\n\t\t\t\ttoggleProps={ { size: 'compact' } }\n\t\t\t\ticon={\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<SVG\n\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\theight=\"24\"\n\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Path\n\t\t\t\t\t\t\t\t\td=\"M10 17.5H14V16H10V17.5ZM6 6V7.5H18V6H6ZM8 12.5H16V11H8V12.5Z\"\n\t\t\t\t\t\t\t\t\tfill=\"currentColor\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SVG>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! shouldHideSourcesFilter && (\n\t\t\t\t\t\t\t<MenuGroup label={ __( 'Source' ) }>\n\t\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\t\tchoices={ PATTERN_SOURCE_MENU_OPTIONS }\n\t\t\t\t\t\t\t\t\tonSelect={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\thandleSetSourceFilterChange( value );\n\t\t\t\t\t\t\t\t\t\tscrollContainerRef.current?.scrollTo(\n\t\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvalue={ currentPatternSourceFilter }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<MenuGroup label={ __( 'Type' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tchoices={ patternSyncMenuOptions }\n\t\t\t\t\t\t\t\tonSelect={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetPatternSyncFilter( value );\n\t\t\t\t\t\t\t\t\tscrollContainerRef.current?.scrollTo(\n\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t0\n\t\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\tvalue={ patternSyncFilter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<div className=\"block-editor-inserter__patterns-filter-help\">\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Patterns are available from the <Link>WordPress.org Pattern Directory</Link>, bundled in the active theme, or created by users on this site. Only patterns created on this site can be synced.'\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\tLink: (\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/patterns/'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\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) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -52,7 +52,7 @@ function CategoryTabs({
52
52
  className: "block-editor-inserter__category-tablist",
53
53
  children: categories.map(category => /*#__PURE__*/_jsx(Tabs.Tab, {
54
54
  tabId: category.name,
55
- "aria-current": category.name === selectedCategory?.name ? 'true' : undefined,
55
+ "aria-current": category === selectedCategory ? 'true' : undefined,
56
56
  children: category.label
57
57
  }, category.name))
58
58
  }), categories.map(category => /*#__PURE__*/_jsx(Tabs.TabPanel, {
@@ -1 +1 @@
1
- {"version":3,"names":["usePrevious","useReducedMotion","privateApis","componentsPrivateApis","__unstableMotion","motion","useState","unlock","jsx","_jsx","jsxs","_jsxs","Tabs","CategoryTabs","categories","selectedCategory","onSelectCategory","children","ANIMATION_DURATION","disableMotion","defaultTransition","type","duration","ease","previousSelectedCategory","selectedTabId","name","activeTabId","setActiveId","firstTabId","selectOnMove","orientation","onSelect","categoryId","find","category","onActiveTabIdChange","TabList","className","map","Tab","tabId","undefined","label","TabPanel","focusable","div","initial","animate","variants","open","transform","transitionEnd","zIndex","closed","transition"],"sources":["@wordpress/block-editor/src/components/inserter/category-tabs/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { usePrevious, useReducedMotion } from '@wordpress/compose';\nimport {\n\tprivateApis as componentsPrivateApis,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction CategoryTabs( {\n\tcategories,\n\tselectedCategory,\n\tonSelectCategory,\n\tchildren,\n} ) {\n\t// Copied from InterfaceSkeleton.\n\tconst ANIMATION_DURATION = 0.25;\n\tconst disableMotion = useReducedMotion();\n\tconst defaultTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\n\tconst previousSelectedCategory = usePrevious( selectedCategory );\n\n\tconst selectedTabId = selectedCategory ? selectedCategory.name : null;\n\tconst [ activeTabId, setActiveId ] = useState();\n\tconst firstTabId = categories?.[ 0 ]?.name;\n\n\t// If there is no active tab, make the first tab the active tab, so that\n\t// when focus is moved to the tablist, the first tab will be focused\n\t// despite not being selected\n\tif ( selectedTabId === null && ! activeTabId && firstTabId ) {\n\t\tsetActiveId( firstTabId );\n\t}\n\n\treturn (\n\t\t<Tabs\n\t\t\tselectOnMove={ false }\n\t\t\tselectedTabId={ selectedTabId }\n\t\t\torientation=\"vertical\"\n\t\t\tonSelect={ ( categoryId ) => {\n\t\t\t\t// Pass the full category object\n\t\t\t\tonSelectCategory(\n\t\t\t\t\tcategories.find(\n\t\t\t\t\t\t( category ) => category.name === categoryId\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} }\n\t\t\tactiveTabId={ activeTabId }\n\t\t\tonActiveTabIdChange={ setActiveId }\n\t\t>\n\t\t\t<Tabs.TabList className=\"block-editor-inserter__category-tablist\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\tcategory.name === selectedCategory?.name\n\t\t\t\t\t\t\t\t? 'true'\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t) ) }\n\t\t\t</Tabs.TabList>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"block-editor-inserter__category-panel\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\t! previousSelectedCategory ? 'closed' : 'open'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\topen: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( 0 )',\n\t\t\t\t\t\t\t\ttransitionEnd: {\n\t\t\t\t\t\t\t\t\tzIndex: '1',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tclosed: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( -100% )',\n\t\t\t\t\t\t\t\tzIndex: '-1',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</motion.div>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t) ) }\n\t\t</Tabs>\n\t);\n}\n\nexport default CategoryTabs;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["usePrevious","useReducedMotion","privateApis","componentsPrivateApis","__unstableMotion","motion","useState","unlock","jsx","_jsx","jsxs","_jsxs","Tabs","CategoryTabs","categories","selectedCategory","onSelectCategory","children","ANIMATION_DURATION","disableMotion","defaultTransition","type","duration","ease","previousSelectedCategory","selectedTabId","name","activeTabId","setActiveId","firstTabId","selectOnMove","orientation","onSelect","categoryId","find","category","onActiveTabIdChange","TabList","className","map","Tab","tabId","undefined","label","TabPanel","focusable","div","initial","animate","variants","open","transform","transitionEnd","zIndex","closed","transition"],"sources":["@wordpress/block-editor/src/components/inserter/category-tabs/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { usePrevious, useReducedMotion } from '@wordpress/compose';\nimport {\n\tprivateApis as componentsPrivateApis,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction CategoryTabs( {\n\tcategories,\n\tselectedCategory,\n\tonSelectCategory,\n\tchildren,\n} ) {\n\t// Copied from InterfaceSkeleton.\n\tconst ANIMATION_DURATION = 0.25;\n\tconst disableMotion = useReducedMotion();\n\tconst defaultTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\n\tconst previousSelectedCategory = usePrevious( selectedCategory );\n\n\tconst selectedTabId = selectedCategory ? selectedCategory.name : null;\n\tconst [ activeTabId, setActiveId ] = useState();\n\tconst firstTabId = categories?.[ 0 ]?.name;\n\n\t// If there is no active tab, make the first tab the active tab, so that\n\t// when focus is moved to the tablist, the first tab will be focused\n\t// despite not being selected\n\tif ( selectedTabId === null && ! activeTabId && firstTabId ) {\n\t\tsetActiveId( firstTabId );\n\t}\n\n\treturn (\n\t\t<Tabs\n\t\t\tselectOnMove={ false }\n\t\t\tselectedTabId={ selectedTabId }\n\t\t\torientation=\"vertical\"\n\t\t\tonSelect={ ( categoryId ) => {\n\t\t\t\t// Pass the full category object\n\t\t\t\tonSelectCategory(\n\t\t\t\t\tcategories.find(\n\t\t\t\t\t\t( category ) => category.name === categoryId\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} }\n\t\t\tactiveTabId={ activeTabId }\n\t\t\tonActiveTabIdChange={ setActiveId }\n\t\t>\n\t\t\t<Tabs.TabList className=\"block-editor-inserter__category-tablist\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\tcategory === selectedCategory ? 'true' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t) ) }\n\t\t\t</Tabs.TabList>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"block-editor-inserter__category-panel\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\t! previousSelectedCategory ? 'closed' : 'open'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\topen: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( 0 )',\n\t\t\t\t\t\t\t\ttransitionEnd: {\n\t\t\t\t\t\t\t\t\tzIndex: '1',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tclosed: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( -100% )',\n\t\t\t\t\t\t\t\tzIndex: '-1',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</motion.div>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t) ) }\n\t\t</Tabs>\n\t);\n}\n\nexport default CategoryTabs;\n"],"mappings":"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","ignoreList":[]}
@@ -14,6 +14,33 @@ function KeyboardShortcutsRegister() {
14
14
  registerShortcut
15
15
  } = useDispatch(keyboardShortcutsStore);
16
16
  useEffect(() => {
17
+ registerShortcut({
18
+ name: 'core/block-editor/copy',
19
+ category: 'block',
20
+ description: __('Copy the selected block(s).'),
21
+ keyCombination: {
22
+ modifier: 'primary',
23
+ character: 'c'
24
+ }
25
+ });
26
+ registerShortcut({
27
+ name: 'core/block-editor/cut',
28
+ category: 'block',
29
+ description: __('Cut the selected block(s).'),
30
+ keyCombination: {
31
+ modifier: 'primary',
32
+ character: 'x'
33
+ }
34
+ });
35
+ registerShortcut({
36
+ name: 'core/block-editor/paste',
37
+ category: 'block',
38
+ description: __('Paste the selected block(s).'),
39
+ keyCombination: {
40
+ modifier: 'primary',
41
+ character: 'v'
42
+ }
43
+ });
17
44
  registerShortcut({
18
45
  name: 'core/block-editor/duplicate',
19
46
  category: 'block',
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useDispatch","store","keyboardShortcutsStore","__","KeyboardShortcuts","KeyboardShortcutsRegister","registerShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"sources":["@wordpress/block-editor/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { __ } from '@wordpress/i18n';\n\nfunction KeyboardShortcuts() {\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts.\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/duplicate',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Duplicate the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'd',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/remove',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Remove the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'backspace',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/insert-before',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Insert a new block before the selected block(s).'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryAlt',\n\t\t\t\tcharacter: 't',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/insert-after',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Insert a new block after the selected block(s).'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryAlt',\n\t\t\t\tcharacter: 'y',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/delete-multi-selection',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Delete selection.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tcharacter: 'del',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tcharacter: 'backspace',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/select-all',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __(\n\t\t\t\t'Select all text when typing. Press again to select all blocks.'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'a',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/unselect',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __( 'Clear selection.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tcharacter: 'escape',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/multi-text-selection',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __( 'Select text across multiple blocks.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'shift',\n\t\t\t\tcharacter: 'arrow',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/focus-toolbar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the nearest toolbar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'alt',\n\t\t\t\tcharacter: 'F10',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/move-up',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Move the selected block(s) up.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 't',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/move-down',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Move the selected block(s) down.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'y',\n\t\t\t},\n\t\t} );\n\n\t\t// List view shortcuts.\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/collapse-list-view',\n\t\t\tcategory: 'list-view',\n\t\t\tdescription: __( 'Collapse all other items.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'alt',\n\t\t\t\tcharacter: 'l',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/group',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Create a group block from the selected multiple blocks.'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'g',\n\t\t\t},\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\n\nexport default KeyboardShortcuts;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useDispatch","store","keyboardShortcutsStore","__","KeyboardShortcuts","KeyboardShortcutsRegister","registerShortcut","name","category","description","keyCombination","modifier","character","aliases","Register"],"sources":["@wordpress/block-editor/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { __ } from '@wordpress/i18n';\n\nfunction KeyboardShortcuts() {\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts.\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/copy',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Copy the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'c',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/cut',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Cut the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'x',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/paste',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Paste the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'v',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/duplicate',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Duplicate the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'd',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/remove',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Remove the selected block(s).' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'backspace',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/insert-before',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Insert a new block before the selected block(s).'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryAlt',\n\t\t\t\tcharacter: 't',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/insert-after',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Insert a new block after the selected block(s).'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryAlt',\n\t\t\t\tcharacter: 'y',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/delete-multi-selection',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Delete selection.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tcharacter: 'del',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tcharacter: 'backspace',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/select-all',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __(\n\t\t\t\t'Select all text when typing. Press again to select all blocks.'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'a',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/unselect',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __( 'Clear selection.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tcharacter: 'escape',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/multi-text-selection',\n\t\t\tcategory: 'selection',\n\t\t\tdescription: __( 'Select text across multiple blocks.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'shift',\n\t\t\t\tcharacter: 'arrow',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/focus-toolbar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the nearest toolbar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'alt',\n\t\t\t\tcharacter: 'F10',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/move-up',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Move the selected block(s) up.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 't',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/move-down',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __( 'Move the selected block(s) down.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'y',\n\t\t\t},\n\t\t} );\n\n\t\t// List view shortcuts.\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/collapse-list-view',\n\t\t\tcategory: 'list-view',\n\t\t\tdescription: __( 'Collapse all other items.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'alt',\n\t\t\t\tcharacter: 'l',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/block-editor/group',\n\t\t\tcategory: 'block',\n\t\t\tdescription: __(\n\t\t\t\t'Create a group block from the selected multiple blocks.'\n\t\t\t),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'g',\n\t\t\t},\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\n\nexport default KeyboardShortcuts;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,sBAAsB,QAAQ,+BAA+B;AAC/E,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,SAASC,iBAAiBA,CAAA,EAAG;EAC5B,OAAO,IAAI;AACZ;AAEA,SAASC,yBAAyBA,CAAA,EAAG;EACpC;EACA,MAAM;IAAEC;EAAiB,CAAC,GAAGN,WAAW,CAAEE,sBAAuB,CAAC;EAClEH,SAAS,CAAE,MAAM;IAChBO,gBAAgB,CAAE;MACjBC,IAAI,EAAE,wBAAwB;MAC9BC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,6BAA8B,CAAC;MAChDO,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,uBAAuB;MAC7BC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,4BAA6B,CAAC;MAC/CO,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,yBAAyB;MAC/BC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,8BAA+B,CAAC;MACjDO,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,6BAA6B;MACnCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,kCAAmC,CAAC;MACrDO,cAAc,EAAE;QACfC,QAAQ,EAAE,cAAc;QACxBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,0BAA0B;MAChCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,+BAAgC,CAAC;MAClDO,cAAc,EAAE;QACfC,QAAQ,EAAE,cAAc;QACxBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,iCAAiC;MACvCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CACd,kDACD,CAAC;MACDO,cAAc,EAAE;QACfC,QAAQ,EAAE,YAAY;QACtBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,gCAAgC;MACtCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CACd,iDACD,CAAC;MACDO,cAAc,EAAE;QACfC,QAAQ,EAAE,YAAY;QACtBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,0CAA0C;MAChDC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,mBAAoB,CAAC;MACtCO,cAAc,EAAE;QACfE,SAAS,EAAE;MACZ,CAAC;MACDC,OAAO,EAAE,CACR;QACCD,SAAS,EAAE;MACZ,CAAC;IAEH,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,8BAA8B;MACpCC,QAAQ,EAAE,WAAW;MACrBC,WAAW,EAAEN,EAAE,CACd,gEACD,CAAC;MACDO,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,4BAA4B;MAClCC,QAAQ,EAAE,WAAW;MACrBC,WAAW,EAAEN,EAAE,CAAE,kBAAmB,CAAC;MACrCO,cAAc,EAAE;QACfE,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,wCAAwC;MAC9CC,QAAQ,EAAE,WAAW;MACrBC,WAAW,EAAEN,EAAE,CAAE,qCAAsC,CAAC;MACxDO,cAAc,EAAE;QACfC,QAAQ,EAAE,OAAO;QACjBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,iCAAiC;MACvCC,QAAQ,EAAE,QAAQ;MAClBC,WAAW,EAAEN,EAAE,CAAE,kCAAmC,CAAC;MACrDO,cAAc,EAAE;QACfC,QAAQ,EAAE,KAAK;QACfC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,2BAA2B;MACjCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,gCAAiC,CAAC;MACnDO,cAAc,EAAE;QACfC,QAAQ,EAAE,WAAW;QACrBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,6BAA6B;MACnCC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CAAE,kCAAmC,CAAC;MACrDO,cAAc,EAAE;QACfC,QAAQ,EAAE,WAAW;QACrBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;;IAEH;IACAN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,sCAAsC;MAC5CC,QAAQ,EAAE,WAAW;MACrBC,WAAW,EAAEN,EAAE,CAAE,2BAA4B,CAAC;MAC9CO,cAAc,EAAE;QACfC,QAAQ,EAAE,KAAK;QACfC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;IAEHN,gBAAgB,CAAE;MACjBC,IAAI,EAAE,yBAAyB;MAC/BC,QAAQ,EAAE,OAAO;MACjBC,WAAW,EAAEN,EAAE,CACd,yDACD,CAAC;MACDO,cAAc,EAAE;QACfC,QAAQ,EAAE,SAAS;QACnBC,SAAS,EAAE;MACZ;IACD,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEN,gBAAgB,CAAG,CAAC;EAEzB,OAAO,IAAI;AACZ;AAEAF,iBAAiB,CAACU,QAAQ,GAAGT,yBAAyB;AAEtD,eAAeD,iBAAiB","ignoreList":[]}
@@ -205,7 +205,8 @@ export function MediaPlaceholder({
205
205
  allowedTypes,
206
206
  filesList: files,
207
207
  onFileChange: setMedia,
208
- onError
208
+ onError,
209
+ multiple
209
210
  });
210
211
  };
211
212
  async function handleBlocksDrop(event) {
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","Button","FormFileUpload","Placeholder","DropZone","__experimentalInputControl","InputControl","__experimentalInputControlSuffixWrapper","InputControlSuffixWrapper","withFilters","__","_x","useState","useEffect","useSelect","keyboardReturn","deprecated","MediaUpload","MediaUploadCheck","URLPopover","store","blockEditorStore","parseDropEvent","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","noop","InsertFromURLPopover","src","onChange","onSubmit","onClose","popoverAnchor","anchor","children","className","__next40pxDefaultSize","label","type","hideLabelFromVision","placeholder","value","suffix","variant","size","icon","URLSelectionUI","onChangeSrc","onSelectURL","setPopoverAnchor","isURLInputVisible","setIsURLInputVisible","openURLInput","closeURLInput","focus","onSubmitSrc","event","preventDefault","onClick","isPressed","ref","MediaPlaceholder","allowedTypes","labels","mediaPreview","notices","isAppender","accept","addToGallery","multiple","handleUpload","disableDropZone","disableMediaButtons","onError","onSelect","onCancel","onToggleFeaturedImage","onDoubleClick","onFilesPreUpload","onHTMLDrop","deprecatedOnHTMLDrop","mediaLibraryButton","style","since","version","mediaUpload","select","getSettings","setSrc","_value$src","onlyAllowsImages","length","every","allowedType","startsWith","onFilesUpload","files","setMedia","lastMediaPassed","newMedia","filteredMedia","filter","item","id","some","Number","urlSlug","url","includes","concat","map","media","cutOffIndex","lastIndexOf","slice","filesList","onFileChange","handleBlocksDrop","blocks","uploadedMediaList","Promise","all","block","blockType","name","split","attributes","resolve","reject","window","fetch","then","response","blob","additionalData","title","alt_text","alt","caption","catch","err","onUpload","target","defaultRenderPlaceholder","content","instructions","undefined","typesAllowed","firstAllowedType","isOneType","isAudio","isImage","isVideo","placeholderClassName","preview","renderPlaceholder","renderDropZone","onFilesDrop","onDrop","isEligible","dataTransfer","prefix","types","push","renderCancelLink","renderUrlSelectionUI","renderFeaturedImageToggle","renderMediaUploadChecked","defaultButton","open","libraryButton","uploadMediaLibraryButton","gallery","mode","Array","isArray","render","openFileDialog","fallback"],"sources":["@wordpress/block-editor/src/components/media-placeholder/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tFormFileUpload,\n\tPlaceholder,\n\tDropZone,\n\t__experimentalInputControl as InputControl,\n\t__experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,\n\twithFilters,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { keyboardReturn } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport MediaUpload from '../media-upload';\nimport MediaUploadCheck from '../media-upload/check';\nimport URLPopover from '../url-popover';\nimport { store as blockEditorStore } from '../../store';\nimport { parseDropEvent } from '../use-on-block-drop';\n\nconst noop = () => {};\n\nconst InsertFromURLPopover = ( {\n\tsrc,\n\tonChange,\n\tonSubmit,\n\tonClose,\n\tpopoverAnchor,\n} ) => (\n\t<URLPopover anchor={ popoverAnchor } onClose={ onClose }>\n\t\t<form\n\t\t\tclassName=\"block-editor-media-placeholder__url-input-form\"\n\t\t\tonSubmit={ onSubmit }\n\t\t>\n\t\t\t<InputControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\ttype=\"url\"\n\t\t\t\thideLabelFromVision\n\t\t\t\tplaceholder={ __( 'Paste or type URL' ) }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tvalue={ src }\n\t\t\t\tsuffix={\n\t\t\t\t\t<InputControlSuffixWrapper variant=\"control\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\tlabel={ __( 'Apply' ) }\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InputControlSuffixWrapper>\n\t\t\t\t}\n\t\t\t/>\n\t\t</form>\n\t</URLPopover>\n);\n\nconst URLSelectionUI = ( { src, onChangeSrc, onSelectURL } ) => {\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\tconst [ isURLInputVisible, setIsURLInputVisible ] = useState( false );\n\n\tconst openURLInput = () => {\n\t\tsetIsURLInputVisible( true );\n\t};\n\tconst closeURLInput = () => {\n\t\tsetIsURLInputVisible( false );\n\t\tpopoverAnchor?.focus();\n\t};\n\n\tconst onSubmitSrc = ( event ) => {\n\t\tevent.preventDefault();\n\t\tif ( src && onSelectURL ) {\n\t\t\tonSelectURL( src );\n\t\t\tcloseURLInput();\n\t\t}\n\t};\n\n\treturn (\n\t\t<div className=\"block-editor-media-placeholder__url-input-container\">\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tclassName=\"block-editor-media-placeholder__button\"\n\t\t\t\tonClick={ openURLInput }\n\t\t\t\tisPressed={ isURLInputVisible }\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t>\n\t\t\t\t{ __( 'Insert from URL' ) }\n\t\t\t</Button>\n\t\t\t{ isURLInputVisible && (\n\t\t\t\t<InsertFromURLPopover\n\t\t\t\t\tsrc={ src }\n\t\t\t\t\tonChange={ onChangeSrc }\n\t\t\t\t\tonSubmit={ onSubmitSrc }\n\t\t\t\t\tonClose={ closeURLInput }\n\t\t\t\t\tpopoverAnchor={ popoverAnchor }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n};\n\nexport function MediaPlaceholder( {\n\tvalue = {},\n\tallowedTypes,\n\tclassName,\n\ticon,\n\tlabels = {},\n\tmediaPreview,\n\tnotices,\n\tisAppender,\n\taccept,\n\taddToGallery,\n\tmultiple = false,\n\thandleUpload = true,\n\tdisableDropZone,\n\tdisableMediaButtons,\n\tonError,\n\tonSelect,\n\tonCancel,\n\tonSelectURL,\n\tonToggleFeaturedImage,\n\tonDoubleClick,\n\tonFilesPreUpload = noop,\n\tonHTMLDrop: deprecatedOnHTMLDrop,\n\tchildren,\n\tmediaLibraryButton,\n\tplaceholder,\n\tstyle,\n} ) {\n\tif ( deprecatedOnHTMLDrop ) {\n\t\tdeprecated( 'wp.blockEditor.MediaPlaceholder onHTMLDrop prop', {\n\t\t\tsince: '6.2',\n\t\t\tversion: '6.4',\n\t\t} );\n\t}\n\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().mediaUpload;\n\t}, [] );\n\tconst [ src, setSrc ] = useState( '' );\n\n\tuseEffect( () => {\n\t\tsetSrc( value?.src ?? '' );\n\t}, [ value?.src ] );\n\n\tconst onlyAllowsImages = () => {\n\t\tif ( ! allowedTypes || allowedTypes.length === 0 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn allowedTypes.every(\n\t\t\t( allowedType ) =>\n\t\t\t\tallowedType === 'image' || allowedType.startsWith( 'image/' )\n\t\t);\n\t};\n\n\tconst onFilesUpload = ( files ) => {\n\t\tif (\n\t\t\t! handleUpload ||\n\t\t\t( typeof handleUpload === 'function' && ! handleUpload( files ) )\n\t\t) {\n\t\t\treturn onSelect( files );\n\t\t}\n\t\tonFilesPreUpload( files );\n\t\tlet setMedia;\n\t\tif ( multiple ) {\n\t\t\tif ( addToGallery ) {\n\t\t\t\t// Since the setMedia function runs multiple times per upload group\n\t\t\t\t// and is passed newMedia containing every item in its group each time, we must\n\t\t\t\t// filter out whatever this upload group had previously returned to the\n\t\t\t\t// gallery before adding and returning the image array with replacement newMedia\n\t\t\t\t// values.\n\n\t\t\t\t// Define an array to store urls from newMedia between subsequent function calls.\n\t\t\t\tlet lastMediaPassed = [];\n\t\t\t\tsetMedia = ( newMedia ) => {\n\t\t\t\t\t// Remove any images this upload group is responsible for (lastMediaPassed).\n\t\t\t\t\t// Their replacements are contained in newMedia.\n\t\t\t\t\tconst filteredMedia = ( value ?? [] ).filter( ( item ) => {\n\t\t\t\t\t\t// If Item has id, only remove it if lastMediaPassed has an item with that id.\n\t\t\t\t\t\tif ( item.id ) {\n\t\t\t\t\t\t\treturn ! lastMediaPassed.some(\n\t\t\t\t\t\t\t\t// Be sure to convert to number for comparison.\n\t\t\t\t\t\t\t\t( { id } ) => Number( id ) === Number( item.id )\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// Compare transient images via .includes since gallery may append extra info onto the url.\n\t\t\t\t\t\treturn ! lastMediaPassed.some( ( { urlSlug } ) =>\n\t\t\t\t\t\t\titem.url.includes( urlSlug )\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\t\t\t\t\t// Return the filtered media array along with newMedia.\n\t\t\t\t\tonSelect( filteredMedia.concat( newMedia ) );\n\t\t\t\t\t// Reset lastMediaPassed and set it with ids and urls from newMedia.\n\t\t\t\t\tlastMediaPassed = newMedia.map( ( media ) => {\n\t\t\t\t\t\t// Add everything up to '.fileType' to compare via .includes.\n\t\t\t\t\t\tconst cutOffIndex = media.url.lastIndexOf( '.' );\n\t\t\t\t\t\tconst urlSlug = media.url.slice( 0, cutOffIndex );\n\t\t\t\t\t\treturn { id: media.id, urlSlug };\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tsetMedia = onSelect;\n\t\t\t}\n\t\t} else {\n\t\t\tsetMedia = ( [ media ] ) => onSelect( media );\n\t\t}\n\t\tmediaUpload( {\n\t\t\tallowedTypes,\n\t\t\tfilesList: files,\n\t\t\tonFileChange: setMedia,\n\t\t\tonError,\n\t\t} );\n\t};\n\n\tasync function handleBlocksDrop( event ) {\n\t\tconst { blocks } = parseDropEvent( event );\n\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst uploadedMediaList = await Promise.all(\n\t\t\tblocks.map( ( block ) => {\n\t\t\t\tconst blockType = block.name.split( '/' )[ 1 ];\n\t\t\t\tif ( block.attributes.id ) {\n\t\t\t\t\tblock.attributes.type = blockType;\n\t\t\t\t\treturn block.attributes;\n\t\t\t\t}\n\t\t\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\t\t\twindow\n\t\t\t\t\t\t.fetch( block.attributes.url )\n\t\t\t\t\t\t.then( ( response ) => response.blob() )\n\t\t\t\t\t\t.then( ( blob ) =>\n\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\tfilesList: [ blob ],\n\t\t\t\t\t\t\t\tadditionalData: {\n\t\t\t\t\t\t\t\t\ttitle: block.attributes.title,\n\t\t\t\t\t\t\t\t\talt_text: block.attributes.alt,\n\t\t\t\t\t\t\t\t\tcaption: block.attributes.caption,\n\t\t\t\t\t\t\t\t\ttype: blockType,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\t\t\t\t\t\tif ( media.id ) {\n\t\t\t\t\t\t\t\t\t\tresolve( media );\n\t\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\tallowedTypes,\n\t\t\t\t\t\t\t\tonError: reject,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.catch( () => resolve( block.attributes.url ) );\n\t\t\t\t} );\n\t\t\t} )\n\t\t).catch( ( err ) => onError( err ) );\n\n\t\tif ( multiple ) {\n\t\t\tonSelect( uploadedMediaList );\n\t\t} else {\n\t\t\tonSelect( uploadedMediaList[ 0 ] );\n\t\t}\n\t}\n\n\tconst onUpload = ( event ) => {\n\t\tonFilesUpload( event.target.files );\n\t};\n\n\tconst defaultRenderPlaceholder = ( content ) => {\n\t\tlet { instructions, title } = labels;\n\n\t\tif ( ! mediaUpload && ! onSelectURL ) {\n\t\t\tinstructions = __(\n\t\t\t\t'To edit this block, you need permission to upload media.'\n\t\t\t);\n\t\t}\n\n\t\tif ( instructions === undefined || title === undefined ) {\n\t\t\tconst typesAllowed = allowedTypes ?? [];\n\n\t\t\tconst [ firstAllowedType ] = typesAllowed;\n\t\t\tconst isOneType = 1 === typesAllowed.length;\n\t\t\tconst isAudio = isOneType && 'audio' === firstAllowedType;\n\t\t\tconst isImage = isOneType && 'image' === firstAllowedType;\n\t\t\tconst isVideo = isOneType && 'video' === firstAllowedType;\n\n\t\t\tif ( instructions === undefined && mediaUpload ) {\n\t\t\t\tinstructions = __(\n\t\t\t\t\t'Drag and drop an image or video, upload, or choose from your library.'\n\t\t\t\t);\n\n\t\t\t\tif ( isAudio ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop an audio file, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( isImage ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( isVideo ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( title === undefined ) {\n\t\t\t\ttitle = __( 'Media' );\n\n\t\t\t\tif ( isAudio ) {\n\t\t\t\t\ttitle = __( 'Audio' );\n\t\t\t\t} else if ( isImage ) {\n\t\t\t\t\ttitle = __( 'Image' );\n\t\t\t\t} else if ( isVideo ) {\n\t\t\t\t\ttitle = __( 'Video' );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'is-appender': isAppender,\n\t\t\t}\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ title }\n\t\t\t\tinstructions={ instructions }\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tnotices={ notices }\n\t\t\t\tonDoubleClick={ onDoubleClick }\n\t\t\t\tpreview={ mediaPreview }\n\t\t\t\tstyle={ style }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t\t{ children }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\tconst renderPlaceholder = placeholder ?? defaultRenderPlaceholder;\n\n\tconst renderDropZone = () => {\n\t\tif ( disableDropZone ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<DropZone\n\t\t\t\tonFilesDrop={ onFilesUpload }\n\t\t\t\tonDrop={ handleBlocksDrop }\n\t\t\t\tisEligible={ ( dataTransfer ) => {\n\t\t\t\t\tconst prefix = 'wp-block:core/';\n\t\t\t\t\tconst types = [];\n\t\t\t\t\tfor ( const type of dataTransfer.types ) {\n\t\t\t\t\t\tif ( type.startsWith( prefix ) ) {\n\t\t\t\t\t\t\ttypes.push( type.slice( prefix.length ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\ttypes.every( ( type ) =>\n\t\t\t\t\t\t\tallowedTypes.includes( type )\n\t\t\t\t\t\t) && ( multiple ? true : types.length === 1 )\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderCancelLink = () => {\n\t\treturn (\n\t\t\tonCancel && (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tclassName=\"block-editor-media-placeholder__cancel-button\"\n\t\t\t\t\ttitle={ __( 'Cancel' ) }\n\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\tonClick={ onCancel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</Button>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderUrlSelectionUI = () => {\n\t\treturn (\n\t\t\tonSelectURL && (\n\t\t\t\t<URLSelectionUI\n\t\t\t\t\tsrc={ src }\n\t\t\t\t\tonChangeSrc={ setSrc }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t/>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderFeaturedImageToggle = () => {\n\t\treturn (\n\t\t\tonToggleFeaturedImage && (\n\t\t\t\t<div className=\"block-editor-media-placeholder__url-input-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"block-editor-media-placeholder__button\"\n\t\t\t\t\t\tonClick={ onToggleFeaturedImage }\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Use featured image' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderMediaUploadChecked = () => {\n\t\tconst defaultButton = ( { open } ) => {\n\t\t\treturn (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\topen();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Media Library' ) }\n\t\t\t\t</Button>\n\t\t\t);\n\t\t};\n\t\tconst libraryButton = mediaLibraryButton ?? defaultButton;\n\t\tconst uploadMediaLibraryButton = (\n\t\t\t<MediaUpload\n\t\t\t\taddToGallery={ addToGallery }\n\t\t\t\tgallery={ multiple && onlyAllowsImages() }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t\tallowedTypes={ allowedTypes }\n\t\t\t\tmode=\"browse\"\n\t\t\t\tvalue={\n\t\t\t\t\tArray.isArray( value )\n\t\t\t\t\t\t? value.map( ( { id } ) => id )\n\t\t\t\t\t\t: value.id\n\t\t\t\t}\n\t\t\t\trender={ libraryButton }\n\t\t\t/>\n\t\t);\n\n\t\tif ( mediaUpload && isAppender ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{ renderDropZone() }\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\tonChange={ onUpload }\n\t\t\t\t\t\taccept={ accept }\n\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\tconst content = (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__button',\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__upload-button'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t{ uploadMediaLibraryButton }\n\t\t\t\t\t\t\t\t\t{ renderUrlSelectionUI() }\n\t\t\t\t\t\t\t\t\t{ renderFeaturedImageToggle() }\n\t\t\t\t\t\t\t\t\t{ renderCancelLink() }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn renderPlaceholder( content );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\n\t\tif ( mediaUpload ) {\n\t\t\tconst content = (\n\t\t\t\t<>\n\t\t\t\t\t{ renderDropZone() }\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__button',\n\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__upload-button'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonChange={ onUpload }\n\t\t\t\t\t\taccept={ accept }\n\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t/>\n\t\t\t\t\t{ uploadMediaLibraryButton }\n\t\t\t\t\t{ renderUrlSelectionUI() }\n\t\t\t\t\t{ renderFeaturedImageToggle() }\n\t\t\t\t\t{ renderCancelLink() }\n\t\t\t\t</>\n\t\t\t);\n\t\t\treturn renderPlaceholder( content );\n\t\t}\n\n\t\treturn renderPlaceholder( uploadMediaLibraryButton );\n\t};\n\n\tif ( disableMediaButtons ) {\n\t\treturn <MediaUploadCheck>{ renderDropZone() }</MediaUploadCheck>;\n\t}\n\n\treturn (\n\t\t<MediaUploadCheck\n\t\t\tfallback={ renderPlaceholder( renderUrlSelectionUI() ) }\n\t\t>\n\t\t\t{ renderMediaUploadChecked() }\n\t\t</MediaUploadCheck>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-placeholder/README.md\n */\nexport default withFilters( 'editor.MediaPlaceholder' )( MediaPlaceholder );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","Button","FormFileUpload","Placeholder","DropZone","__experimentalInputControl","InputControl","__experimentalInputControlSuffixWrapper","InputControlSuffixWrapper","withFilters","__","_x","useState","useEffect","useSelect","keyboardReturn","deprecated","MediaUpload","MediaUploadCheck","URLPopover","store","blockEditorStore","parseDropEvent","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","noop","InsertFromURLPopover","src","onChange","onSubmit","onClose","popoverAnchor","anchor","children","className","__next40pxDefaultSize","label","type","hideLabelFromVision","placeholder","value","suffix","variant","size","icon","URLSelectionUI","onChangeSrc","onSelectURL","setPopoverAnchor","isURLInputVisible","setIsURLInputVisible","openURLInput","closeURLInput","focus","onSubmitSrc","event","preventDefault","onClick","isPressed","ref","MediaPlaceholder","allowedTypes","labels","mediaPreview","notices","isAppender","accept","addToGallery","multiple","handleUpload","disableDropZone","disableMediaButtons","onError","onSelect","onCancel","onToggleFeaturedImage","onDoubleClick","onFilesPreUpload","onHTMLDrop","deprecatedOnHTMLDrop","mediaLibraryButton","style","since","version","mediaUpload","select","getSettings","setSrc","_value$src","onlyAllowsImages","length","every","allowedType","startsWith","onFilesUpload","files","setMedia","lastMediaPassed","newMedia","filteredMedia","filter","item","id","some","Number","urlSlug","url","includes","concat","map","media","cutOffIndex","lastIndexOf","slice","filesList","onFileChange","handleBlocksDrop","blocks","uploadedMediaList","Promise","all","block","blockType","name","split","attributes","resolve","reject","window","fetch","then","response","blob","additionalData","title","alt_text","alt","caption","catch","err","onUpload","target","defaultRenderPlaceholder","content","instructions","undefined","typesAllowed","firstAllowedType","isOneType","isAudio","isImage","isVideo","placeholderClassName","preview","renderPlaceholder","renderDropZone","onFilesDrop","onDrop","isEligible","dataTransfer","prefix","types","push","renderCancelLink","renderUrlSelectionUI","renderFeaturedImageToggle","renderMediaUploadChecked","defaultButton","open","libraryButton","uploadMediaLibraryButton","gallery","mode","Array","isArray","render","openFileDialog","fallback"],"sources":["@wordpress/block-editor/src/components/media-placeholder/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tFormFileUpload,\n\tPlaceholder,\n\tDropZone,\n\t__experimentalInputControl as InputControl,\n\t__experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,\n\twithFilters,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { keyboardReturn } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport MediaUpload from '../media-upload';\nimport MediaUploadCheck from '../media-upload/check';\nimport URLPopover from '../url-popover';\nimport { store as blockEditorStore } from '../../store';\nimport { parseDropEvent } from '../use-on-block-drop';\n\nconst noop = () => {};\n\nconst InsertFromURLPopover = ( {\n\tsrc,\n\tonChange,\n\tonSubmit,\n\tonClose,\n\tpopoverAnchor,\n} ) => (\n\t<URLPopover anchor={ popoverAnchor } onClose={ onClose }>\n\t\t<form\n\t\t\tclassName=\"block-editor-media-placeholder__url-input-form\"\n\t\t\tonSubmit={ onSubmit }\n\t\t>\n\t\t\t<InputControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\ttype=\"url\"\n\t\t\t\thideLabelFromVision\n\t\t\t\tplaceholder={ __( 'Paste or type URL' ) }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tvalue={ src }\n\t\t\t\tsuffix={\n\t\t\t\t\t<InputControlSuffixWrapper variant=\"control\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\tlabel={ __( 'Apply' ) }\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InputControlSuffixWrapper>\n\t\t\t\t}\n\t\t\t/>\n\t\t</form>\n\t</URLPopover>\n);\n\nconst URLSelectionUI = ( { src, onChangeSrc, onSelectURL } ) => {\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\tconst [ isURLInputVisible, setIsURLInputVisible ] = useState( false );\n\n\tconst openURLInput = () => {\n\t\tsetIsURLInputVisible( true );\n\t};\n\tconst closeURLInput = () => {\n\t\tsetIsURLInputVisible( false );\n\t\tpopoverAnchor?.focus();\n\t};\n\n\tconst onSubmitSrc = ( event ) => {\n\t\tevent.preventDefault();\n\t\tif ( src && onSelectURL ) {\n\t\t\tonSelectURL( src );\n\t\t\tcloseURLInput();\n\t\t}\n\t};\n\n\treturn (\n\t\t<div className=\"block-editor-media-placeholder__url-input-container\">\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tclassName=\"block-editor-media-placeholder__button\"\n\t\t\t\tonClick={ openURLInput }\n\t\t\t\tisPressed={ isURLInputVisible }\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t>\n\t\t\t\t{ __( 'Insert from URL' ) }\n\t\t\t</Button>\n\t\t\t{ isURLInputVisible && (\n\t\t\t\t<InsertFromURLPopover\n\t\t\t\t\tsrc={ src }\n\t\t\t\t\tonChange={ onChangeSrc }\n\t\t\t\t\tonSubmit={ onSubmitSrc }\n\t\t\t\t\tonClose={ closeURLInput }\n\t\t\t\t\tpopoverAnchor={ popoverAnchor }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n};\n\nexport function MediaPlaceholder( {\n\tvalue = {},\n\tallowedTypes,\n\tclassName,\n\ticon,\n\tlabels = {},\n\tmediaPreview,\n\tnotices,\n\tisAppender,\n\taccept,\n\taddToGallery,\n\tmultiple = false,\n\thandleUpload = true,\n\tdisableDropZone,\n\tdisableMediaButtons,\n\tonError,\n\tonSelect,\n\tonCancel,\n\tonSelectURL,\n\tonToggleFeaturedImage,\n\tonDoubleClick,\n\tonFilesPreUpload = noop,\n\tonHTMLDrop: deprecatedOnHTMLDrop,\n\tchildren,\n\tmediaLibraryButton,\n\tplaceholder,\n\tstyle,\n} ) {\n\tif ( deprecatedOnHTMLDrop ) {\n\t\tdeprecated( 'wp.blockEditor.MediaPlaceholder onHTMLDrop prop', {\n\t\t\tsince: '6.2',\n\t\t\tversion: '6.4',\n\t\t} );\n\t}\n\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().mediaUpload;\n\t}, [] );\n\tconst [ src, setSrc ] = useState( '' );\n\n\tuseEffect( () => {\n\t\tsetSrc( value?.src ?? '' );\n\t}, [ value?.src ] );\n\n\tconst onlyAllowsImages = () => {\n\t\tif ( ! allowedTypes || allowedTypes.length === 0 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn allowedTypes.every(\n\t\t\t( allowedType ) =>\n\t\t\t\tallowedType === 'image' || allowedType.startsWith( 'image/' )\n\t\t);\n\t};\n\n\tconst onFilesUpload = ( files ) => {\n\t\tif (\n\t\t\t! handleUpload ||\n\t\t\t( typeof handleUpload === 'function' && ! handleUpload( files ) )\n\t\t) {\n\t\t\treturn onSelect( files );\n\t\t}\n\t\tonFilesPreUpload( files );\n\t\tlet setMedia;\n\t\tif ( multiple ) {\n\t\t\tif ( addToGallery ) {\n\t\t\t\t// Since the setMedia function runs multiple times per upload group\n\t\t\t\t// and is passed newMedia containing every item in its group each time, we must\n\t\t\t\t// filter out whatever this upload group had previously returned to the\n\t\t\t\t// gallery before adding and returning the image array with replacement newMedia\n\t\t\t\t// values.\n\n\t\t\t\t// Define an array to store urls from newMedia between subsequent function calls.\n\t\t\t\tlet lastMediaPassed = [];\n\t\t\t\tsetMedia = ( newMedia ) => {\n\t\t\t\t\t// Remove any images this upload group is responsible for (lastMediaPassed).\n\t\t\t\t\t// Their replacements are contained in newMedia.\n\t\t\t\t\tconst filteredMedia = ( value ?? [] ).filter( ( item ) => {\n\t\t\t\t\t\t// If Item has id, only remove it if lastMediaPassed has an item with that id.\n\t\t\t\t\t\tif ( item.id ) {\n\t\t\t\t\t\t\treturn ! lastMediaPassed.some(\n\t\t\t\t\t\t\t\t// Be sure to convert to number for comparison.\n\t\t\t\t\t\t\t\t( { id } ) => Number( id ) === Number( item.id )\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// Compare transient images via .includes since gallery may append extra info onto the url.\n\t\t\t\t\t\treturn ! lastMediaPassed.some( ( { urlSlug } ) =>\n\t\t\t\t\t\t\titem.url.includes( urlSlug )\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\t\t\t\t\t// Return the filtered media array along with newMedia.\n\t\t\t\t\tonSelect( filteredMedia.concat( newMedia ) );\n\t\t\t\t\t// Reset lastMediaPassed and set it with ids and urls from newMedia.\n\t\t\t\t\tlastMediaPassed = newMedia.map( ( media ) => {\n\t\t\t\t\t\t// Add everything up to '.fileType' to compare via .includes.\n\t\t\t\t\t\tconst cutOffIndex = media.url.lastIndexOf( '.' );\n\t\t\t\t\t\tconst urlSlug = media.url.slice( 0, cutOffIndex );\n\t\t\t\t\t\treturn { id: media.id, urlSlug };\n\t\t\t\t\t} );\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tsetMedia = onSelect;\n\t\t\t}\n\t\t} else {\n\t\t\tsetMedia = ( [ media ] ) => onSelect( media );\n\t\t}\n\t\tmediaUpload( {\n\t\t\tallowedTypes,\n\t\t\tfilesList: files,\n\t\t\tonFileChange: setMedia,\n\t\t\tonError,\n\t\t\tmultiple,\n\t\t} );\n\t};\n\n\tasync function handleBlocksDrop( event ) {\n\t\tconst { blocks } = parseDropEvent( event );\n\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst uploadedMediaList = await Promise.all(\n\t\t\tblocks.map( ( block ) => {\n\t\t\t\tconst blockType = block.name.split( '/' )[ 1 ];\n\t\t\t\tif ( block.attributes.id ) {\n\t\t\t\t\tblock.attributes.type = blockType;\n\t\t\t\t\treturn block.attributes;\n\t\t\t\t}\n\t\t\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\t\t\twindow\n\t\t\t\t\t\t.fetch( block.attributes.url )\n\t\t\t\t\t\t.then( ( response ) => response.blob() )\n\t\t\t\t\t\t.then( ( blob ) =>\n\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\tfilesList: [ blob ],\n\t\t\t\t\t\t\t\tadditionalData: {\n\t\t\t\t\t\t\t\t\ttitle: block.attributes.title,\n\t\t\t\t\t\t\t\t\talt_text: block.attributes.alt,\n\t\t\t\t\t\t\t\t\tcaption: block.attributes.caption,\n\t\t\t\t\t\t\t\t\ttype: blockType,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\t\t\t\t\t\tif ( media.id ) {\n\t\t\t\t\t\t\t\t\t\tresolve( media );\n\t\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\tallowedTypes,\n\t\t\t\t\t\t\t\tonError: reject,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.catch( () => resolve( block.attributes.url ) );\n\t\t\t\t} );\n\t\t\t} )\n\t\t).catch( ( err ) => onError( err ) );\n\n\t\tif ( multiple ) {\n\t\t\tonSelect( uploadedMediaList );\n\t\t} else {\n\t\t\tonSelect( uploadedMediaList[ 0 ] );\n\t\t}\n\t}\n\n\tconst onUpload = ( event ) => {\n\t\tonFilesUpload( event.target.files );\n\t};\n\n\tconst defaultRenderPlaceholder = ( content ) => {\n\t\tlet { instructions, title } = labels;\n\n\t\tif ( ! mediaUpload && ! onSelectURL ) {\n\t\t\tinstructions = __(\n\t\t\t\t'To edit this block, you need permission to upload media.'\n\t\t\t);\n\t\t}\n\n\t\tif ( instructions === undefined || title === undefined ) {\n\t\t\tconst typesAllowed = allowedTypes ?? [];\n\n\t\t\tconst [ firstAllowedType ] = typesAllowed;\n\t\t\tconst isOneType = 1 === typesAllowed.length;\n\t\t\tconst isAudio = isOneType && 'audio' === firstAllowedType;\n\t\t\tconst isImage = isOneType && 'image' === firstAllowedType;\n\t\t\tconst isVideo = isOneType && 'video' === firstAllowedType;\n\n\t\t\tif ( instructions === undefined && mediaUpload ) {\n\t\t\t\tinstructions = __(\n\t\t\t\t\t'Drag and drop an image or video, upload, or choose from your library.'\n\t\t\t\t);\n\n\t\t\t\tif ( isAudio ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop an audio file, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( isImage ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( isVideo ) {\n\t\t\t\t\tinstructions = __(\n\t\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( title === undefined ) {\n\t\t\t\ttitle = __( 'Media' );\n\n\t\t\t\tif ( isAudio ) {\n\t\t\t\t\ttitle = __( 'Audio' );\n\t\t\t\t} else if ( isImage ) {\n\t\t\t\t\ttitle = __( 'Image' );\n\t\t\t\t} else if ( isVideo ) {\n\t\t\t\t\ttitle = __( 'Video' );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'is-appender': isAppender,\n\t\t\t}\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ title }\n\t\t\t\tinstructions={ instructions }\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tnotices={ notices }\n\t\t\t\tonDoubleClick={ onDoubleClick }\n\t\t\t\tpreview={ mediaPreview }\n\t\t\t\tstyle={ style }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t\t{ children }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\tconst renderPlaceholder = placeholder ?? defaultRenderPlaceholder;\n\n\tconst renderDropZone = () => {\n\t\tif ( disableDropZone ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<DropZone\n\t\t\t\tonFilesDrop={ onFilesUpload }\n\t\t\t\tonDrop={ handleBlocksDrop }\n\t\t\t\tisEligible={ ( dataTransfer ) => {\n\t\t\t\t\tconst prefix = 'wp-block:core/';\n\t\t\t\t\tconst types = [];\n\t\t\t\t\tfor ( const type of dataTransfer.types ) {\n\t\t\t\t\t\tif ( type.startsWith( prefix ) ) {\n\t\t\t\t\t\t\ttypes.push( type.slice( prefix.length ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\ttypes.every( ( type ) =>\n\t\t\t\t\t\t\tallowedTypes.includes( type )\n\t\t\t\t\t\t) && ( multiple ? true : types.length === 1 )\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderCancelLink = () => {\n\t\treturn (\n\t\t\tonCancel && (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tclassName=\"block-editor-media-placeholder__cancel-button\"\n\t\t\t\t\ttitle={ __( 'Cancel' ) }\n\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\tonClick={ onCancel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</Button>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderUrlSelectionUI = () => {\n\t\treturn (\n\t\t\tonSelectURL && (\n\t\t\t\t<URLSelectionUI\n\t\t\t\t\tsrc={ src }\n\t\t\t\t\tonChangeSrc={ setSrc }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t/>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderFeaturedImageToggle = () => {\n\t\treturn (\n\t\t\tonToggleFeaturedImage && (\n\t\t\t\t<div className=\"block-editor-media-placeholder__url-input-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"block-editor-media-placeholder__button\"\n\t\t\t\t\t\tonClick={ onToggleFeaturedImage }\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Use featured image' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t)\n\t\t);\n\t};\n\n\tconst renderMediaUploadChecked = () => {\n\t\tconst defaultButton = ( { open } ) => {\n\t\t\treturn (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\topen();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Media Library' ) }\n\t\t\t\t</Button>\n\t\t\t);\n\t\t};\n\t\tconst libraryButton = mediaLibraryButton ?? defaultButton;\n\t\tconst uploadMediaLibraryButton = (\n\t\t\t<MediaUpload\n\t\t\t\taddToGallery={ addToGallery }\n\t\t\t\tgallery={ multiple && onlyAllowsImages() }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t\tallowedTypes={ allowedTypes }\n\t\t\t\tmode=\"browse\"\n\t\t\t\tvalue={\n\t\t\t\t\tArray.isArray( value )\n\t\t\t\t\t\t? value.map( ( { id } ) => id )\n\t\t\t\t\t\t: value.id\n\t\t\t\t}\n\t\t\t\trender={ libraryButton }\n\t\t\t/>\n\t\t);\n\n\t\tif ( mediaUpload && isAppender ) {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{ renderDropZone() }\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\tonChange={ onUpload }\n\t\t\t\t\t\taccept={ accept }\n\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\tconst content = (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__button',\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__upload-button'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t{ uploadMediaLibraryButton }\n\t\t\t\t\t\t\t\t\t{ renderUrlSelectionUI() }\n\t\t\t\t\t\t\t\t\t{ renderFeaturedImageToggle() }\n\t\t\t\t\t\t\t\t\t{ renderCancelLink() }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn renderPlaceholder( content );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\n\t\tif ( mediaUpload ) {\n\t\t\tconst content = (\n\t\t\t\t<>\n\t\t\t\t\t{ renderDropZone() }\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__button',\n\t\t\t\t\t\t\t\t\t'block-editor-media-placeholder__upload-button'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonChange={ onUpload }\n\t\t\t\t\t\taccept={ accept }\n\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t/>\n\t\t\t\t\t{ uploadMediaLibraryButton }\n\t\t\t\t\t{ renderUrlSelectionUI() }\n\t\t\t\t\t{ renderFeaturedImageToggle() }\n\t\t\t\t\t{ renderCancelLink() }\n\t\t\t\t</>\n\t\t\t);\n\t\t\treturn renderPlaceholder( content );\n\t\t}\n\n\t\treturn renderPlaceholder( uploadMediaLibraryButton );\n\t};\n\n\tif ( disableMediaButtons ) {\n\t\treturn <MediaUploadCheck>{ renderDropZone() }</MediaUploadCheck>;\n\t}\n\n\treturn (\n\t\t<MediaUploadCheck\n\t\t\tfallback={ renderPlaceholder( renderUrlSelectionUI() ) }\n\t\t>\n\t\t\t{ renderMediaUploadChecked() }\n\t\t</MediaUploadCheck>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-placeholder/README.md\n */\nexport default withFilters( 'editor.MediaPlaceholder' )( MediaPlaceholder );\n"],"mappings":"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","ignoreList":[]}
@@ -74,7 +74,7 @@ function ToolSelector(props, ref) {
74
74
  })
75
75
  }), /*#__PURE__*/_jsx("div", {
76
76
  className: "block-editor-tool-selector__help",
77
- children: __('Tools provide different sets of interactions for blocks. Toggle between simplified content tools (Write) and advanced visual editing tools (Design).')
77
+ children: __('Tools provide different sets of interactions for blocks. Choose between simplified content tools (Write) and advanced visual editing tools (Design).')
78
78
  })]
79
79
  })
80
80
  });