@wordpress/customize-widgets 5.32.0 → 5.32.1-next.ff1cebbba.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 (164) hide show
  1. package/build/components/block-appender/index.js +33 -27
  2. package/build/components/block-appender/index.js.map +7 -1
  3. package/build/components/block-inspector-button/index.js +51 -36
  4. package/build/components/block-inspector-button/index.js.map +7 -1
  5. package/build/components/customize-widgets/index.js +83 -61
  6. package/build/components/customize-widgets/index.js.map +7 -1
  7. package/build/components/customize-widgets/use-clear-selected-block.js +56 -63
  8. package/build/components/customize-widgets/use-clear-selected-block.js.map +7 -1
  9. package/build/components/error-boundary/index.js +46 -45
  10. package/build/components/error-boundary/index.js.map +7 -1
  11. package/build/components/focus-control/index.js +69 -57
  12. package/build/components/focus-control/index.js.map +7 -1
  13. package/build/components/focus-control/use-blocks-focus-control.js +38 -31
  14. package/build/components/focus-control/use-blocks-focus-control.js.map +7 -1
  15. package/build/components/header/index.js +110 -71
  16. package/build/components/header/index.js.map +7 -1
  17. package/build/components/inserter/index.js +77 -53
  18. package/build/components/inserter/index.js.map +7 -1
  19. package/build/components/inserter/use-inserter.js +46 -29
  20. package/build/components/inserter/use-inserter.js.map +7 -1
  21. package/build/components/keyboard-shortcut-help-modal/config.js +74 -71
  22. package/build/components/keyboard-shortcut-help-modal/config.js.map +7 -1
  23. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +61 -44
  24. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +7 -1
  25. package/build/components/keyboard-shortcut-help-modal/index.js +155 -110
  26. package/build/components/keyboard-shortcut-help-modal/index.js.map +7 -1
  27. package/build/components/keyboard-shortcut-help-modal/shortcut.js +76 -56
  28. package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +7 -1
  29. package/build/components/keyboard-shortcuts/index.js +60 -51
  30. package/build/components/keyboard-shortcuts/index.js.map +7 -1
  31. package/build/components/more-menu/index.js +151 -90
  32. package/build/components/more-menu/index.js.map +7 -1
  33. package/build/components/sidebar-block-editor/index.js +133 -105
  34. package/build/components/sidebar-block-editor/index.js.map +7 -1
  35. package/build/components/sidebar-block-editor/sidebar-adapter.js +73 -67
  36. package/build/components/sidebar-block-editor/sidebar-adapter.js.map +7 -1
  37. package/build/components/sidebar-block-editor/sidebar-editor-provider.js +51 -33
  38. package/build/components/sidebar-block-editor/sidebar-editor-provider.js.map +7 -1
  39. package/build/components/sidebar-block-editor/use-sidebar-block-editor.js +100 -79
  40. package/build/components/sidebar-block-editor/use-sidebar-block-editor.js.map +7 -1
  41. package/build/components/sidebar-controls/index.js +45 -31
  42. package/build/components/sidebar-controls/index.js.map +7 -1
  43. package/build/components/welcome-guide/index.js +86 -58
  44. package/build/components/welcome-guide/index.js.map +7 -1
  45. package/build/controls/inserter-outer-section.js +49 -58
  46. package/build/controls/inserter-outer-section.js.map +7 -1
  47. package/build/controls/inspector-section.js +30 -36
  48. package/build/controls/inspector-section.js.map +7 -1
  49. package/build/controls/sidebar-control.js +51 -30
  50. package/build/controls/sidebar-control.js.map +7 -1
  51. package/build/controls/sidebar-section.js +71 -39
  52. package/build/controls/sidebar-section.js.map +7 -1
  53. package/build/filters/index.js +4 -6
  54. package/build/filters/index.js.map +7 -1
  55. package/build/filters/move-to-sidebar.js +77 -79
  56. package/build/filters/move-to-sidebar.js.map +7 -1
  57. package/build/filters/replace-media-upload.js +9 -11
  58. package/build/filters/replace-media-upload.js.map +7 -1
  59. package/build/filters/wide-widget-display.js +20 -25
  60. package/build/filters/wide-widget-display.js.map +7 -1
  61. package/build/index.js +81 -70
  62. package/build/index.js.map +7 -1
  63. package/build/lock-unlock.js +31 -15
  64. package/build/lock-unlock.js.map +7 -1
  65. package/build/store/actions.js +27 -44
  66. package/build/store/actions.js.map +7 -1
  67. package/build/store/constants.js +27 -10
  68. package/build/store/constants.js.map +7 -1
  69. package/build/store/index.js +44 -40
  70. package/build/store/index.js.map +7 -1
  71. package/build/store/reducer.js +25 -19
  72. package/build/store/reducer.js.map +7 -1
  73. package/build/store/selectors.js +31 -44
  74. package/build/store/selectors.js.map +7 -1
  75. package/build/utils.js +45 -73
  76. package/build/utils.js.map +7 -1
  77. package/build-module/components/block-appender/index.js +17 -20
  78. package/build-module/components/block-appender/index.js.map +7 -1
  79. package/build-module/components/block-inspector-button/index.js +33 -30
  80. package/build-module/components/block-inspector-button/index.js.map +7 -1
  81. package/build-module/components/customize-widgets/index.js +52 -51
  82. package/build-module/components/customize-widgets/index.js.map +7 -1
  83. package/build-module/components/customize-widgets/use-clear-selected-block.js +38 -58
  84. package/build-module/components/customize-widgets/use-clear-selected-block.js.map +7 -1
  85. package/build-module/components/error-boundary/index.js +27 -37
  86. package/build-module/components/error-boundary/index.js.map +7 -1
  87. package/build-module/components/focus-control/index.js +50 -45
  88. package/build-module/components/focus-control/index.js.map +7 -1
  89. package/build-module/components/focus-control/use-blocks-focus-control.js +17 -22
  90. package/build-module/components/focus-control/use-blocks-focus-control.js.map +7 -1
  91. package/build-module/components/header/index.js +81 -63
  92. package/build-module/components/header/index.js.map +7 -1
  93. package/build-module/components/inserter/index.js +59 -47
  94. package/build-module/components/inserter/index.js.map +7 -1
  95. package/build-module/components/inserter/use-inserter.js +28 -23
  96. package/build-module/components/inserter/use-inserter.js.map +7 -1
  97. package/build-module/components/keyboard-shortcut-help-modal/config.js +62 -75
  98. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +7 -1
  99. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +33 -37
  100. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +7 -1
  101. package/build-module/components/keyboard-shortcut-help-modal/index.js +130 -103
  102. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +7 -1
  103. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +58 -50
  104. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +7 -1
  105. package/build-module/components/keyboard-shortcuts/index.js +44 -44
  106. package/build-module/components/keyboard-shortcuts/index.js.map +7 -1
  107. package/build-module/components/more-menu/index.js +129 -84
  108. package/build-module/components/more-menu/index.js.map +7 -1
  109. package/build-module/components/sidebar-block-editor/index.js +109 -96
  110. package/build-module/components/sidebar-block-editor/index.js.map +7 -1
  111. package/build-module/components/sidebar-block-editor/sidebar-adapter.js +54 -59
  112. package/build-module/components/sidebar-block-editor/sidebar-adapter.js.map +7 -1
  113. package/build-module/components/sidebar-block-editor/sidebar-editor-provider.js +22 -25
  114. package/build-module/components/sidebar-block-editor/sidebar-editor-provider.js.map +7 -1
  115. package/build-module/components/sidebar-block-editor/use-sidebar-block-editor.js +70 -70
  116. package/build-module/components/sidebar-block-editor/use-sidebar-block-editor.js.map +7 -1
  117. package/build-module/components/sidebar-controls/index.js +24 -25
  118. package/build-module/components/sidebar-controls/index.js.map +7 -1
  119. package/build-module/components/welcome-guide/index.js +68 -52
  120. package/build-module/components/welcome-guide/index.js.map +7 -1
  121. package/build-module/controls/inserter-outer-section.js +31 -52
  122. package/build-module/controls/inserter-outer-section.js.map +7 -1
  123. package/build-module/controls/inspector-section.js +13 -32
  124. package/build-module/controls/inspector-section.js.map +7 -1
  125. package/build-module/controls/sidebar-control.js +22 -22
  126. package/build-module/controls/sidebar-control.js.map +7 -1
  127. package/build-module/controls/sidebar-section.js +43 -32
  128. package/build-module/controls/sidebar-section.js.map +7 -1
  129. package/build-module/filters/index.js +4 -7
  130. package/build-module/filters/index.js.map +7 -1
  131. package/build-module/filters/move-to-sidebar.js +83 -76
  132. package/build-module/filters/move-to-sidebar.js.map +7 -1
  133. package/build-module/filters/replace-media-upload.js +8 -7
  134. package/build-module/filters/replace-media-upload.js.map +7 -1
  135. package/build-module/filters/wide-widget-display.js +20 -22
  136. package/build-module/filters/wide-widget-display.js.map +7 -1
  137. package/build-module/index.js +53 -51
  138. package/build-module/index.js.map +7 -1
  139. package/build-module/lock-unlock.js +8 -7
  140. package/build-module/lock-unlock.js.map +7 -1
  141. package/build-module/store/actions.js +6 -40
  142. package/build-module/store/actions.js.map +7 -1
  143. package/build-module/store/constants.js +5 -5
  144. package/build-module/store/constants.js.map +7 -1
  145. package/build-module/store/index.js +10 -30
  146. package/build-module/store/index.js.map +7 -1
  147. package/build-module/store/reducer.js +7 -14
  148. package/build-module/store/reducer.js.map +7 -1
  149. package/build-module/store/selectors.js +10 -40
  150. package/build-module/store/selectors.js.map +7 -1
  151. package/build-module/utils.js +21 -66
  152. package/build-module/utils.js.map +7 -1
  153. package/build-style/style-rtl.css +14 -149
  154. package/build-style/style.css +14 -149
  155. package/package.json +30 -23
  156. package/src/components/block-inspector-button/style.scss +3 -0
  157. package/src/components/header/style.scss +5 -0
  158. package/src/components/inserter/style.scss +3 -0
  159. package/src/components/keyboard-shortcut-help-modal/style.scss +2 -0
  160. package/src/components/more-menu/style.scss +2 -0
  161. package/src/components/sidebar-block-editor/style.scss +2 -0
  162. package/src/components/welcome-guide/style.scss +2 -0
  163. package/src/controls/style.scss +2 -0
  164. package/src/style.scss +10 -8
@@ -1 +1,7 @@
1
- {"version":3,"names":["_compose","require","_coreData","_data","_element","_blockEditor","_mediaUtils","_preferences","_blockLibrary","_blockInspectorButton","_interopRequireDefault","_header","_useInserter","_sidebarEditorProvider","_welcomeGuide","_keyboardShortcuts","_blockAppender","_lockUnlock","_jsxRuntime","ExperimentalBlockCanvas","BlockCanvas","unlock","blockEditorPrivateApis","BlockKeyboardShortcuts","blockLibraryPrivateApis","SidebarBlockEditor","blockEditorSettings","sidebar","inserter","inspector","isInserterOpened","setIsInserterOpened","useInserter","isMediumViewport","useViewportMatch","hasUploadPermissions","isFixedToolbarActive","keepCaretInsideBlock","isWelcomeGuideActive","useSelect","select","_select$canUser","get","preferencesStore","coreStore","canUser","kind","name","settings","useMemo","mediaUploadBlockEditor","onError","argumentsObject","uploadMedia","wpAllowedMimeTypes","allowedMimeTypes","message","__experimentalSetIsInserterOpened","mediaUpload","hasFixedToolbar","editorTool","__unstableHasCustomAppender","jsx","default","jsxs","Fragment","children","Register","undo","redo","save","BlockToolbar","hideDragHandle","shouldIframe","styles","defaultEditorStyles","height","BlockList","renderAppender","BlockAppender","createPortal","onSubmit","event","preventDefault","BlockInspector","contentContainer","__unstableBlockSettingsMenuFirstItem","onClose","closeMenu"],"sources":["@wordpress/customize-widgets/src/components/sidebar-block-editor/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo, createPortal } from '@wordpress/element';\nimport {\n\tBlockList,\n\tBlockToolbar,\n\tBlockInspector,\n\tprivateApis as blockEditorPrivateApis,\n\t__unstableBlockSettingsMenuFirstItem,\n} from '@wordpress/block-editor';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from '../block-inspector-button';\nimport Header from '../header';\nimport useInserter from '../inserter/use-inserter';\nimport SidebarEditorProvider from './sidebar-editor-provider';\nimport WelcomeGuide from '../welcome-guide';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport BlockAppender from '../block-appender';\nimport { unlock } from '../../lock-unlock';\n\nconst { ExperimentalBlockCanvas: BlockCanvas } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\n\nexport default function SidebarBlockEditor( {\n\tblockEditorSettings,\n\tsidebar,\n\tinserter,\n\tinspector,\n} ) {\n\tconst [ isInserterOpened, setIsInserterOpened ] = useInserter( inserter );\n\tconst isMediumViewport = useViewportMatch( 'small' );\n\tconst {\n\t\thasUploadPermissions,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\tisWelcomeGuideActive,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\treturn {\n\t\t\thasUploadPermissions:\n\t\t\t\tselect( coreStore ).canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'attachment',\n\t\t\t\t} ) ?? true,\n\t\t\tisFixedToolbarActive: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t\tkeepCaretInsideBlock: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'keepCaretInsideBlock'\n\t\t\t),\n\t\t\tisWelcomeGuideActive: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'welcomeGuide'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( hasUploadPermissions ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\thasFixedToolbar: isFixedToolbarActive || ! isMediumViewport,\n\t\t\tkeepCaretInsideBlock,\n\t\t\teditorTool: 'edit',\n\t\t\t__unstableHasCustomAppender: true,\n\t\t};\n\t}, [\n\t\thasUploadPermissions,\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tisMediumViewport,\n\t\tkeepCaretInsideBlock,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tif ( isWelcomeGuideActive ) {\n\t\treturn <WelcomeGuide sidebar={ sidebar } />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<BlockKeyboardShortcuts />\n\n\t\t\t<SidebarEditorProvider sidebar={ sidebar } settings={ settings }>\n\t\t\t\t<KeyboardShortcuts\n\t\t\t\t\tundo={ sidebar.undo }\n\t\t\t\t\tredo={ sidebar.redo }\n\t\t\t\t\tsave={ sidebar.save }\n\t\t\t\t/>\n\n\t\t\t\t<Header\n\t\t\t\t\tsidebar={ sidebar }\n\t\t\t\t\tinserter={ inserter }\n\t\t\t\t\tisInserterOpened={ isInserterOpened }\n\t\t\t\t\tsetIsInserterOpened={ setIsInserterOpened }\n\t\t\t\t\tisFixedToolbarActive={\n\t\t\t\t\t\tisFixedToolbarActive || ! isMediumViewport\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ ( isFixedToolbarActive || ! isMediumViewport ) && (\n\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t) }\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ false }\n\t\t\t\t\tstyles={ settings.defaultEditorStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t>\n\t\t\t\t\t<BlockList renderAppender={ BlockAppender } />\n\t\t\t\t</BlockCanvas>\n\n\t\t\t\t{ createPortal(\n\t\t\t\t\t// This is a temporary hack to prevent button component inside <BlockInspector>\n\t\t\t\t\t// from submitting form when type=\"button\" is not specified.\n\t\t\t\t\t<form onSubmit={ ( event ) => event.preventDefault() }>\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t</form>,\n\t\t\t\t\tinspector.contentContainer[ 0 ]\n\t\t\t\t) }\n\t\t\t</SidebarEditorProvider>\n\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton\n\t\t\t\t\t\tinspector={ inspector }\n\t\t\t\t\t\tcloseMenu={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/sidebar-block-editor/index.js"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo, createPortal } from '@wordpress/element';\nimport {\n\tBlockList,\n\tBlockToolbar,\n\tBlockInspector,\n\tprivateApis as blockEditorPrivateApis,\n\t__unstableBlockSettingsMenuFirstItem,\n} from '@wordpress/block-editor';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from '../block-inspector-button';\nimport Header from '../header';\nimport useInserter from '../inserter/use-inserter';\nimport SidebarEditorProvider from './sidebar-editor-provider';\nimport WelcomeGuide from '../welcome-guide';\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport BlockAppender from '../block-appender';\nimport { unlock } from '../../lock-unlock';\n\nconst { ExperimentalBlockCanvas: BlockCanvas } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\n\nexport default function SidebarBlockEditor( {\n\tblockEditorSettings,\n\tsidebar,\n\tinserter,\n\tinspector,\n} ) {\n\tconst [ isInserterOpened, setIsInserterOpened ] = useInserter( inserter );\n\tconst isMediumViewport = useViewportMatch( 'small' );\n\tconst {\n\t\thasUploadPermissions,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\tisWelcomeGuideActive,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\treturn {\n\t\t\thasUploadPermissions:\n\t\t\t\tselect( coreStore ).canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'attachment',\n\t\t\t\t} ) ?? true,\n\t\t\tisFixedToolbarActive: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t\tkeepCaretInsideBlock: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'keepCaretInsideBlock'\n\t\t\t),\n\t\t\tisWelcomeGuideActive: !! get(\n\t\t\t\t'core/customize-widgets',\n\t\t\t\t'welcomeGuide'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( hasUploadPermissions ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\thasFixedToolbar: isFixedToolbarActive || ! isMediumViewport,\n\t\t\tkeepCaretInsideBlock,\n\t\t\teditorTool: 'edit',\n\t\t\t__unstableHasCustomAppender: true,\n\t\t};\n\t}, [\n\t\thasUploadPermissions,\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tisMediumViewport,\n\t\tkeepCaretInsideBlock,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tif ( isWelcomeGuideActive ) {\n\t\treturn <WelcomeGuide sidebar={ sidebar } />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<BlockKeyboardShortcuts />\n\n\t\t\t<SidebarEditorProvider sidebar={ sidebar } settings={ settings }>\n\t\t\t\t<KeyboardShortcuts\n\t\t\t\t\tundo={ sidebar.undo }\n\t\t\t\t\tredo={ sidebar.redo }\n\t\t\t\t\tsave={ sidebar.save }\n\t\t\t\t/>\n\n\t\t\t\t<Header\n\t\t\t\t\tsidebar={ sidebar }\n\t\t\t\t\tinserter={ inserter }\n\t\t\t\t\tisInserterOpened={ isInserterOpened }\n\t\t\t\t\tsetIsInserterOpened={ setIsInserterOpened }\n\t\t\t\t\tisFixedToolbarActive={\n\t\t\t\t\t\tisFixedToolbarActive || ! isMediumViewport\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ ( isFixedToolbarActive || ! isMediumViewport ) && (\n\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t) }\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ false }\n\t\t\t\t\tstyles={ settings.defaultEditorStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t>\n\t\t\t\t\t<BlockList renderAppender={ BlockAppender } />\n\t\t\t\t</BlockCanvas>\n\n\t\t\t\t{ createPortal(\n\t\t\t\t\t// This is a temporary hack to prevent button component inside <BlockInspector>\n\t\t\t\t\t// from submitting form when type=\"button\" is not specified.\n\t\t\t\t\t<form onSubmit={ ( event ) => event.preventDefault() }>\n\t\t\t\t\t\t<BlockInspector />\n\t\t\t\t\t</form>,\n\t\t\t\t\tinspector.contentContainer[ 0 ]\n\t\t\t\t) }\n\t\t\t</SidebarEditorProvider>\n\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton\n\t\t\t\t\t\tinspector={ inspector }\n\t\t\t\t\t\tcloseMenu={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</>\n\t);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["blockEditorPrivateApis", "blockLibraryPrivateApis", "useInserter", "preferencesStore", "coreStore", "WelcomeGuide", "KeyboardShortcuts", "SidebarEditorProvider", "Header", "BlockAppender", "BlockInspectorButton"]
7
+ }
@@ -1,17 +1,27 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var sidebar_adapter_exports = {};
19
+ __export(sidebar_adapter_exports, {
20
+ default: () => SidebarAdapter
5
21
  });
6
- exports.default = void 0;
7
- var _utils = require("../../utils");
8
- /**
9
- * Internal dependencies
10
- */
11
-
12
- const {
13
- wp
14
- } = window;
22
+ module.exports = __toCommonJS(sidebar_adapter_exports);
23
+ var import_utils = require("../../utils");
24
+ const { wp } = window;
15
25
  function parseWidgetId(widgetId) {
16
26
  const matches = widgetId.match(/^(.+)-(\d+)$/);
17
27
  if (matches) {
@@ -20,32 +30,15 @@ function parseWidgetId(widgetId) {
20
30
  number: parseInt(matches[2], 10)
21
31
  };
22
32
  }
23
-
24
- // Likely an old single widget.
25
- return {
26
- idBase: widgetId
27
- };
33
+ return { idBase: widgetId };
28
34
  }
29
35
  function widgetIdToSettingId(widgetId) {
30
- const {
31
- idBase,
32
- number
33
- } = parseWidgetId(widgetId);
36
+ const { idBase, number } = parseWidgetId(widgetId);
34
37
  if (number) {
35
38
  return `widget_${idBase}[${number}]`;
36
39
  }
37
40
  return `widget_${idBase}`;
38
41
  }
39
-
40
- /**
41
- * This is a custom debounce function to call different callbacks depending on
42
- * whether it's the _leading_ call or not.
43
- *
44
- * @param {Function} leading The callback that gets called first.
45
- * @param {Function} callback The callback that gets called after the first time.
46
- * @param {number} timeout The debounced time in milliseconds.
47
- * @return {Function} The debounced function.
48
- */
49
42
  function debounce(leading, callback, timeout) {
50
43
  let isLeading = false;
51
44
  let timerID;
@@ -69,15 +62,22 @@ class SidebarAdapter {
69
62
  this.setting = setting;
70
63
  this.api = api;
71
64
  this.locked = false;
72
- this.widgetsCache = new WeakMap();
73
- this.subscribers = new Set();
74
- this.history = [this._getWidgetIds().map(widgetId => this.getWidget(widgetId))];
65
+ this.widgetsCache = /* @__PURE__ */ new WeakMap();
66
+ this.subscribers = /* @__PURE__ */ new Set();
67
+ this.history = [
68
+ this._getWidgetIds().map(
69
+ (widgetId) => this.getWidget(widgetId)
70
+ )
71
+ ];
75
72
  this.historyIndex = 0;
76
- this.historySubscribers = new Set();
77
- // Debounce the input for 1 second.
78
- this._debounceSetHistory = debounce(this._pushHistory, this._replaceHistory, 1000);
73
+ this.historySubscribers = /* @__PURE__ */ new Set();
74
+ this._debounceSetHistory = debounce(
75
+ this._pushHistory,
76
+ this._replaceHistory,
77
+ 1e3
78
+ );
79
79
  this.setting.bind(this._handleSettingChange.bind(this));
80
- this.api.bind('change', this._handleAllSettingsChange.bind(this));
80
+ this.api.bind("change", this._handleAllSettingsChange.bind(this));
81
81
  this.undo = this.undo.bind(this);
82
82
  this.redo = this.redo.bind(this);
83
83
  this.save = this.save.bind(this);
@@ -100,12 +100,19 @@ class SidebarAdapter {
100
100
  return this.setting.get();
101
101
  }
102
102
  _pushHistory() {
103
- this.history = [...this.history.slice(0, this.historyIndex + 1), this._getWidgetIds().map(widgetId => this.getWidget(widgetId))];
103
+ this.history = [
104
+ ...this.history.slice(0, this.historyIndex + 1),
105
+ this._getWidgetIds().map(
106
+ (widgetId) => this.getWidget(widgetId)
107
+ )
108
+ ];
104
109
  this.historyIndex += 1;
105
- this.historySubscribers.forEach(listener => listener());
110
+ this.historySubscribers.forEach((listener) => listener());
106
111
  }
107
112
  _replaceHistory() {
108
- this.history[this.historyIndex] = this._getWidgetIds().map(widgetId => this.getWidget(widgetId));
113
+ this.history[this.historyIndex] = this._getWidgetIds().map(
114
+ (widgetId) => this.getWidget(widgetId)
115
+ );
109
116
  }
110
117
  _handleSettingChange() {
111
118
  if (this.locked) {
@@ -119,10 +126,10 @@ class SidebarAdapter {
119
126
  if (this.locked) {
120
127
  return;
121
128
  }
122
- if (!setting.id.startsWith('widget_')) {
129
+ if (!setting.id.startsWith("widget_")) {
123
130
  return;
124
131
  }
125
- const widgetId = (0, _utils.settingIdToWidgetId)(setting.id);
132
+ const widgetId = (0, import_utils.settingIdToWidgetId)(setting.id);
126
133
  if (!this.setting.get().includes(widgetId)) {
127
134
  return;
128
135
  }
@@ -135,18 +142,26 @@ class SidebarAdapter {
135
142
  id_base: widget.idBase
136
143
  });
137
144
  let number = widget.number;
138
- if (widgetModel.get('is_multi') && !number) {
139
- widgetModel.set('multi_number', widgetModel.get('multi_number') + 1);
140
- number = widgetModel.get('multi_number');
145
+ if (widgetModel.get("is_multi") && !number) {
146
+ widgetModel.set(
147
+ "multi_number",
148
+ widgetModel.get("multi_number") + 1
149
+ );
150
+ number = widgetModel.get("multi_number");
141
151
  }
142
152
  const settingId = number ? `widget_${widget.idBase}[${number}]` : `widget_${widget.idBase}`;
143
153
  const settingArgs = {
144
- transport: wp.customize.Widgets.data.selectiveRefreshableWidgets[widgetModel.get('id_base')] ? 'postMessage' : 'refresh',
154
+ transport: wp.customize.Widgets.data.selectiveRefreshableWidgets[widgetModel.get("id_base")] ? "postMessage" : "refresh",
145
155
  previewer: this.setting.previewer
146
156
  };
147
- const setting = this.api.create(settingId, settingId, '', settingArgs);
157
+ const setting = this.api.create(
158
+ settingId,
159
+ settingId,
160
+ "",
161
+ settingArgs
162
+ );
148
163
  setting.set(widget.instance);
149
- const widgetId = (0, _utils.settingIdToWidgetId)(settingId);
164
+ const widgetId = (0, import_utils.settingIdToWidgetId)(settingId);
150
165
  return widgetId;
151
166
  }
152
167
  _removeWidget(widget) {
@@ -160,20 +175,14 @@ class SidebarAdapter {
160
175
  }
161
176
  _updateWidget(widget) {
162
177
  const prevWidget = this.getWidget(widget.id);
163
-
164
- // Bail out update if nothing changed.
165
178
  if (prevWidget === widget) {
166
179
  return widget.id;
167
180
  }
168
-
169
- // Update existing setting if only the widget's instance changed.
170
181
  if (prevWidget.idBase && widget.idBase && prevWidget.idBase === widget.idBase) {
171
182
  const settingId = widgetIdToSettingId(widget.id);
172
183
  this.api(settingId).set(widget.instance);
173
184
  return widget.id;
174
185
  }
175
-
176
- // Otherwise delete and re-create.
177
186
  this._removeWidget(widget);
178
187
  return this._createWidget(widget);
179
188
  }
@@ -181,10 +190,7 @@ class SidebarAdapter {
181
190
  if (!widgetId) {
182
191
  return null;
183
192
  }
184
- const {
185
- idBase,
186
- number
187
- } = parseWidgetId(widgetId);
193
+ const { idBase, number } = parseWidgetId(widgetId);
188
194
  const settingId = widgetIdToSettingId(widgetId);
189
195
  const setting = this.api(settingId);
190
196
  if (!setting) {
@@ -206,7 +212,7 @@ class SidebarAdapter {
206
212
  _updateWidgets(nextWidgets) {
207
213
  this.locked = true;
208
214
  const addedWidgetIds = [];
209
- const nextWidgetIds = nextWidgets.map(nextWidget => {
215
+ const nextWidgetIds = nextWidgets.map((nextWidget) => {
210
216
  if (nextWidget.id && this.getWidget(nextWidget.id)) {
211
217
  addedWidgetIds.push(null);
212
218
  return this._updateWidget(nextWidget);
@@ -215,8 +221,10 @@ class SidebarAdapter {
215
221
  addedWidgetIds.push(widgetId);
216
222
  return widgetId;
217
223
  });
218
- const deletedWidgets = this.getWidgets().filter(widget => !nextWidgetIds.includes(widget.id));
219
- deletedWidgets.forEach(widget => this._removeWidget(widget));
224
+ const deletedWidgets = this.getWidgets().filter(
225
+ (widget) => !nextWidgetIds.includes(widget.id)
226
+ );
227
+ deletedWidgets.forEach((widget) => this._removeWidget(widget));
220
228
  this.setting.set(nextWidgetIds);
221
229
  this.locked = false;
222
230
  return addedWidgetIds;
@@ -226,7 +234,6 @@ class SidebarAdapter {
226
234
  this._debounceSetHistory();
227
235
  return addedWidgetIds;
228
236
  }
229
-
230
237
  /**
231
238
  * Undo/Redo related features
232
239
  */
@@ -242,7 +249,7 @@ class SidebarAdapter {
242
249
  const widgets = this.history[this.historyIndex];
243
250
  this._updateWidgets(widgets);
244
251
  this._emit(currentWidgets, this.getWidgets());
245
- this.historySubscribers.forEach(listener => listener());
252
+ this.historySubscribers.forEach((listener) => listener());
246
253
  this._debounceSetHistory.cancel();
247
254
  }
248
255
  undo() {
@@ -267,5 +274,4 @@ class SidebarAdapter {
267
274
  this.api.previewer.save();
268
275
  }
269
276
  }
270
- exports.default = SidebarAdapter;
271
- //# sourceMappingURL=sidebar-adapter.js.map
277
+ //# sourceMappingURL=sidebar-adapter.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_utils","require","wp","window","parseWidgetId","widgetId","matches","match","idBase","number","parseInt","widgetIdToSettingId","debounce","leading","callback","timeout","isLeading","timerID","debounced","args","result","apply","clearTimeout","setTimeout","cancel","SidebarAdapter","constructor","setting","api","locked","widgetsCache","WeakMap","subscribers","Set","history","_getWidgetIds","map","getWidget","historyIndex","historySubscribers","_debounceSetHistory","_pushHistory","_replaceHistory","bind","_handleSettingChange","_handleAllSettingsChange","undo","redo","save","subscribe","add","delete","getWidgets","_emit","get","slice","forEach","listener","prevWidgets","id","startsWith","settingIdToWidgetId","includes","_createWidget","widget","widgetModel","customize","Widgets","availableWidgets","findWhere","id_base","set","settingId","settingArgs","transport","data","selectiveRefreshableWidgets","previewer","create","instance","_removeWidget","remove","_updateWidget","prevWidget","has","_updateWidgets","nextWidgets","addedWidgetIds","nextWidgetIds","nextWidget","push","deletedWidgets","filter","setWidgets","hasUndo","hasRedo","length","_seek","currentWidgets","widgets","subscribeHistory","exports","default"],"sources":["@wordpress/customize-widgets/src/components/sidebar-block-editor/sidebar-adapter.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { settingIdToWidgetId } from '../../utils';\n\nconst { wp } = window;\n\nfunction parseWidgetId( widgetId ) {\n\tconst matches = widgetId.match( /^(.+)-(\\d+)$/ );\n\tif ( matches ) {\n\t\treturn {\n\t\t\tidBase: matches[ 1 ],\n\t\t\tnumber: parseInt( matches[ 2 ], 10 ),\n\t\t};\n\t}\n\n\t// Likely an old single widget.\n\treturn { idBase: widgetId };\n}\n\nfunction widgetIdToSettingId( widgetId ) {\n\tconst { idBase, number } = parseWidgetId( widgetId );\n\tif ( number ) {\n\t\treturn `widget_${ idBase }[${ number }]`;\n\t}\n\n\treturn `widget_${ idBase }`;\n}\n\n/**\n * This is a custom debounce function to call different callbacks depending on\n * whether it's the _leading_ call or not.\n *\n * @param {Function} leading The callback that gets called first.\n * @param {Function} callback The callback that gets called after the first time.\n * @param {number} timeout The debounced time in milliseconds.\n * @return {Function} The debounced function.\n */\nfunction debounce( leading, callback, timeout ) {\n\tlet isLeading = false;\n\tlet timerID;\n\n\tfunction debounced( ...args ) {\n\t\tconst result = ( isLeading ? callback : leading ).apply( this, args );\n\n\t\tisLeading = true;\n\n\t\tclearTimeout( timerID );\n\n\t\ttimerID = setTimeout( () => {\n\t\t\tisLeading = false;\n\t\t}, timeout );\n\n\t\treturn result;\n\t}\n\n\tdebounced.cancel = () => {\n\t\tisLeading = false;\n\t\tclearTimeout( timerID );\n\t};\n\n\treturn debounced;\n}\n\nexport default class SidebarAdapter {\n\tconstructor( setting, api ) {\n\t\tthis.setting = setting;\n\t\tthis.api = api;\n\n\t\tthis.locked = false;\n\t\tthis.widgetsCache = new WeakMap();\n\t\tthis.subscribers = new Set();\n\n\t\tthis.history = [\n\t\t\tthis._getWidgetIds().map( ( widgetId ) =>\n\t\t\t\tthis.getWidget( widgetId )\n\t\t\t),\n\t\t];\n\t\tthis.historyIndex = 0;\n\t\tthis.historySubscribers = new Set();\n\t\t// Debounce the input for 1 second.\n\t\tthis._debounceSetHistory = debounce(\n\t\t\tthis._pushHistory,\n\t\t\tthis._replaceHistory,\n\t\t\t1000\n\t\t);\n\n\t\tthis.setting.bind( this._handleSettingChange.bind( this ) );\n\t\tthis.api.bind( 'change', this._handleAllSettingsChange.bind( this ) );\n\n\t\tthis.undo = this.undo.bind( this );\n\t\tthis.redo = this.redo.bind( this );\n\t\tthis.save = this.save.bind( this );\n\t}\n\n\tsubscribe( callback ) {\n\t\tthis.subscribers.add( callback );\n\n\t\treturn () => {\n\t\t\tthis.subscribers.delete( callback );\n\t\t};\n\t}\n\n\tgetWidgets() {\n\t\treturn this.history[ this.historyIndex ];\n\t}\n\n\t_emit( ...args ) {\n\t\tfor ( const callback of this.subscribers ) {\n\t\t\tcallback( ...args );\n\t\t}\n\t}\n\n\t_getWidgetIds() {\n\t\treturn this.setting.get();\n\t}\n\n\t_pushHistory() {\n\t\tthis.history = [\n\t\t\t...this.history.slice( 0, this.historyIndex + 1 ),\n\t\t\tthis._getWidgetIds().map( ( widgetId ) =>\n\t\t\t\tthis.getWidget( widgetId )\n\t\t\t),\n\t\t];\n\t\tthis.historyIndex += 1;\n\n\t\tthis.historySubscribers.forEach( ( listener ) => listener() );\n\t}\n\n\t_replaceHistory() {\n\t\tthis.history[ this.historyIndex ] = this._getWidgetIds().map(\n\t\t\t( widgetId ) => this.getWidget( widgetId )\n\t\t);\n\t}\n\n\t_handleSettingChange() {\n\t\tif ( this.locked ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevWidgets = this.getWidgets();\n\n\t\tthis._pushHistory();\n\n\t\tthis._emit( prevWidgets, this.getWidgets() );\n\t}\n\n\t_handleAllSettingsChange( setting ) {\n\t\tif ( this.locked ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! setting.id.startsWith( 'widget_' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst widgetId = settingIdToWidgetId( setting.id );\n\t\tif ( ! this.setting.get().includes( widgetId ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevWidgets = this.getWidgets();\n\n\t\tthis._pushHistory();\n\n\t\tthis._emit( prevWidgets, this.getWidgets() );\n\t}\n\n\t_createWidget( widget ) {\n\t\tconst widgetModel = wp.customize.Widgets.availableWidgets.findWhere( {\n\t\t\tid_base: widget.idBase,\n\t\t} );\n\n\t\tlet number = widget.number;\n\t\tif ( widgetModel.get( 'is_multi' ) && ! number ) {\n\t\t\twidgetModel.set(\n\t\t\t\t'multi_number',\n\t\t\t\twidgetModel.get( 'multi_number' ) + 1\n\t\t\t);\n\t\t\tnumber = widgetModel.get( 'multi_number' );\n\t\t}\n\n\t\tconst settingId = number\n\t\t\t? `widget_${ widget.idBase }[${ number }]`\n\t\t\t: `widget_${ widget.idBase }`;\n\n\t\tconst settingArgs = {\n\t\t\ttransport: wp.customize.Widgets.data.selectiveRefreshableWidgets[\n\t\t\t\twidgetModel.get( 'id_base' )\n\t\t\t]\n\t\t\t\t? 'postMessage'\n\t\t\t\t: 'refresh',\n\t\t\tpreviewer: this.setting.previewer,\n\t\t};\n\t\tconst setting = this.api.create(\n\t\t\tsettingId,\n\t\t\tsettingId,\n\t\t\t'',\n\t\t\tsettingArgs\n\t\t);\n\t\tsetting.set( widget.instance );\n\n\t\tconst widgetId = settingIdToWidgetId( settingId );\n\n\t\treturn widgetId;\n\t}\n\n\t_removeWidget( widget ) {\n\t\tconst settingId = widgetIdToSettingId( widget.id );\n\t\tconst setting = this.api( settingId );\n\n\t\tif ( setting ) {\n\t\t\tconst instance = setting.get();\n\t\t\tthis.widgetsCache.delete( instance );\n\t\t}\n\n\t\tthis.api.remove( settingId );\n\t}\n\n\t_updateWidget( widget ) {\n\t\tconst prevWidget = this.getWidget( widget.id );\n\n\t\t// Bail out update if nothing changed.\n\t\tif ( prevWidget === widget ) {\n\t\t\treturn widget.id;\n\t\t}\n\n\t\t// Update existing setting if only the widget's instance changed.\n\t\tif (\n\t\t\tprevWidget.idBase &&\n\t\t\twidget.idBase &&\n\t\t\tprevWidget.idBase === widget.idBase\n\t\t) {\n\t\t\tconst settingId = widgetIdToSettingId( widget.id );\n\t\t\tthis.api( settingId ).set( widget.instance );\n\t\t\treturn widget.id;\n\t\t}\n\n\t\t// Otherwise delete and re-create.\n\t\tthis._removeWidget( widget );\n\t\treturn this._createWidget( widget );\n\t}\n\n\tgetWidget( widgetId ) {\n\t\tif ( ! widgetId ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { idBase, number } = parseWidgetId( widgetId );\n\t\tconst settingId = widgetIdToSettingId( widgetId );\n\t\tconst setting = this.api( settingId );\n\n\t\tif ( ! setting ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst instance = setting.get();\n\n\t\tif ( this.widgetsCache.has( instance ) ) {\n\t\t\treturn this.widgetsCache.get( instance );\n\t\t}\n\n\t\tconst widget = {\n\t\t\tid: widgetId,\n\t\t\tidBase,\n\t\t\tnumber,\n\t\t\tinstance,\n\t\t};\n\n\t\tthis.widgetsCache.set( instance, widget );\n\n\t\treturn widget;\n\t}\n\n\t_updateWidgets( nextWidgets ) {\n\t\tthis.locked = true;\n\n\t\tconst addedWidgetIds = [];\n\n\t\tconst nextWidgetIds = nextWidgets.map( ( nextWidget ) => {\n\t\t\tif ( nextWidget.id && this.getWidget( nextWidget.id ) ) {\n\t\t\t\taddedWidgetIds.push( null );\n\n\t\t\t\treturn this._updateWidget( nextWidget );\n\t\t\t}\n\n\t\t\tconst widgetId = this._createWidget( nextWidget );\n\n\t\t\taddedWidgetIds.push( widgetId );\n\n\t\t\treturn widgetId;\n\t\t} );\n\n\t\tconst deletedWidgets = this.getWidgets().filter(\n\t\t\t( widget ) => ! nextWidgetIds.includes( widget.id )\n\t\t);\n\t\tdeletedWidgets.forEach( ( widget ) => this._removeWidget( widget ) );\n\n\t\tthis.setting.set( nextWidgetIds );\n\n\t\tthis.locked = false;\n\n\t\treturn addedWidgetIds;\n\t}\n\n\tsetWidgets( nextWidgets ) {\n\t\tconst addedWidgetIds = this._updateWidgets( nextWidgets );\n\n\t\tthis._debounceSetHistory();\n\n\t\treturn addedWidgetIds;\n\t}\n\n\t/**\n\t * Undo/Redo related features\n\t */\n\thasUndo() {\n\t\treturn this.historyIndex > 0;\n\t}\n\n\thasRedo() {\n\t\treturn this.historyIndex < this.history.length - 1;\n\t}\n\n\t_seek( historyIndex ) {\n\t\tconst currentWidgets = this.getWidgets();\n\n\t\tthis.historyIndex = historyIndex;\n\n\t\tconst widgets = this.history[ this.historyIndex ];\n\n\t\tthis._updateWidgets( widgets );\n\n\t\tthis._emit( currentWidgets, this.getWidgets() );\n\n\t\tthis.historySubscribers.forEach( ( listener ) => listener() );\n\t\tthis._debounceSetHistory.cancel();\n\t}\n\n\tundo() {\n\t\tif ( ! this.hasUndo() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._seek( this.historyIndex - 1 );\n\t}\n\n\tredo() {\n\t\tif ( ! this.hasRedo() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._seek( this.historyIndex + 1 );\n\t}\n\n\tsubscribeHistory( listener ) {\n\t\tthis.historySubscribers.add( listener );\n\n\t\treturn () => {\n\t\t\tthis.historySubscribers.delete( listener );\n\t\t};\n\t}\n\n\tsave() {\n\t\tthis.api.previewer.save();\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/sidebar-block-editor/sidebar-adapter.js"],
4
+ "sourcesContent": ["/**\n * Internal dependencies\n */\nimport { settingIdToWidgetId } from '../../utils';\n\nconst { wp } = window;\n\nfunction parseWidgetId( widgetId ) {\n\tconst matches = widgetId.match( /^(.+)-(\\d+)$/ );\n\tif ( matches ) {\n\t\treturn {\n\t\t\tidBase: matches[ 1 ],\n\t\t\tnumber: parseInt( matches[ 2 ], 10 ),\n\t\t};\n\t}\n\n\t// Likely an old single widget.\n\treturn { idBase: widgetId };\n}\n\nfunction widgetIdToSettingId( widgetId ) {\n\tconst { idBase, number } = parseWidgetId( widgetId );\n\tif ( number ) {\n\t\treturn `widget_${ idBase }[${ number }]`;\n\t}\n\n\treturn `widget_${ idBase }`;\n}\n\n/**\n * This is a custom debounce function to call different callbacks depending on\n * whether it's the _leading_ call or not.\n *\n * @param {Function} leading The callback that gets called first.\n * @param {Function} callback The callback that gets called after the first time.\n * @param {number} timeout The debounced time in milliseconds.\n * @return {Function} The debounced function.\n */\nfunction debounce( leading, callback, timeout ) {\n\tlet isLeading = false;\n\tlet timerID;\n\n\tfunction debounced( ...args ) {\n\t\tconst result = ( isLeading ? callback : leading ).apply( this, args );\n\n\t\tisLeading = true;\n\n\t\tclearTimeout( timerID );\n\n\t\ttimerID = setTimeout( () => {\n\t\t\tisLeading = false;\n\t\t}, timeout );\n\n\t\treturn result;\n\t}\n\n\tdebounced.cancel = () => {\n\t\tisLeading = false;\n\t\tclearTimeout( timerID );\n\t};\n\n\treturn debounced;\n}\n\nexport default class SidebarAdapter {\n\tconstructor( setting, api ) {\n\t\tthis.setting = setting;\n\t\tthis.api = api;\n\n\t\tthis.locked = false;\n\t\tthis.widgetsCache = new WeakMap();\n\t\tthis.subscribers = new Set();\n\n\t\tthis.history = [\n\t\t\tthis._getWidgetIds().map( ( widgetId ) =>\n\t\t\t\tthis.getWidget( widgetId )\n\t\t\t),\n\t\t];\n\t\tthis.historyIndex = 0;\n\t\tthis.historySubscribers = new Set();\n\t\t// Debounce the input for 1 second.\n\t\tthis._debounceSetHistory = debounce(\n\t\t\tthis._pushHistory,\n\t\t\tthis._replaceHistory,\n\t\t\t1000\n\t\t);\n\n\t\tthis.setting.bind( this._handleSettingChange.bind( this ) );\n\t\tthis.api.bind( 'change', this._handleAllSettingsChange.bind( this ) );\n\n\t\tthis.undo = this.undo.bind( this );\n\t\tthis.redo = this.redo.bind( this );\n\t\tthis.save = this.save.bind( this );\n\t}\n\n\tsubscribe( callback ) {\n\t\tthis.subscribers.add( callback );\n\n\t\treturn () => {\n\t\t\tthis.subscribers.delete( callback );\n\t\t};\n\t}\n\n\tgetWidgets() {\n\t\treturn this.history[ this.historyIndex ];\n\t}\n\n\t_emit( ...args ) {\n\t\tfor ( const callback of this.subscribers ) {\n\t\t\tcallback( ...args );\n\t\t}\n\t}\n\n\t_getWidgetIds() {\n\t\treturn this.setting.get();\n\t}\n\n\t_pushHistory() {\n\t\tthis.history = [\n\t\t\t...this.history.slice( 0, this.historyIndex + 1 ),\n\t\t\tthis._getWidgetIds().map( ( widgetId ) =>\n\t\t\t\tthis.getWidget( widgetId )\n\t\t\t),\n\t\t];\n\t\tthis.historyIndex += 1;\n\n\t\tthis.historySubscribers.forEach( ( listener ) => listener() );\n\t}\n\n\t_replaceHistory() {\n\t\tthis.history[ this.historyIndex ] = this._getWidgetIds().map(\n\t\t\t( widgetId ) => this.getWidget( widgetId )\n\t\t);\n\t}\n\n\t_handleSettingChange() {\n\t\tif ( this.locked ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevWidgets = this.getWidgets();\n\n\t\tthis._pushHistory();\n\n\t\tthis._emit( prevWidgets, this.getWidgets() );\n\t}\n\n\t_handleAllSettingsChange( setting ) {\n\t\tif ( this.locked ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! setting.id.startsWith( 'widget_' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst widgetId = settingIdToWidgetId( setting.id );\n\t\tif ( ! this.setting.get().includes( widgetId ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst prevWidgets = this.getWidgets();\n\n\t\tthis._pushHistory();\n\n\t\tthis._emit( prevWidgets, this.getWidgets() );\n\t}\n\n\t_createWidget( widget ) {\n\t\tconst widgetModel = wp.customize.Widgets.availableWidgets.findWhere( {\n\t\t\tid_base: widget.idBase,\n\t\t} );\n\n\t\tlet number = widget.number;\n\t\tif ( widgetModel.get( 'is_multi' ) && ! number ) {\n\t\t\twidgetModel.set(\n\t\t\t\t'multi_number',\n\t\t\t\twidgetModel.get( 'multi_number' ) + 1\n\t\t\t);\n\t\t\tnumber = widgetModel.get( 'multi_number' );\n\t\t}\n\n\t\tconst settingId = number\n\t\t\t? `widget_${ widget.idBase }[${ number }]`\n\t\t\t: `widget_${ widget.idBase }`;\n\n\t\tconst settingArgs = {\n\t\t\ttransport: wp.customize.Widgets.data.selectiveRefreshableWidgets[\n\t\t\t\twidgetModel.get( 'id_base' )\n\t\t\t]\n\t\t\t\t? 'postMessage'\n\t\t\t\t: 'refresh',\n\t\t\tpreviewer: this.setting.previewer,\n\t\t};\n\t\tconst setting = this.api.create(\n\t\t\tsettingId,\n\t\t\tsettingId,\n\t\t\t'',\n\t\t\tsettingArgs\n\t\t);\n\t\tsetting.set( widget.instance );\n\n\t\tconst widgetId = settingIdToWidgetId( settingId );\n\n\t\treturn widgetId;\n\t}\n\n\t_removeWidget( widget ) {\n\t\tconst settingId = widgetIdToSettingId( widget.id );\n\t\tconst setting = this.api( settingId );\n\n\t\tif ( setting ) {\n\t\t\tconst instance = setting.get();\n\t\t\tthis.widgetsCache.delete( instance );\n\t\t}\n\n\t\tthis.api.remove( settingId );\n\t}\n\n\t_updateWidget( widget ) {\n\t\tconst prevWidget = this.getWidget( widget.id );\n\n\t\t// Bail out update if nothing changed.\n\t\tif ( prevWidget === widget ) {\n\t\t\treturn widget.id;\n\t\t}\n\n\t\t// Update existing setting if only the widget's instance changed.\n\t\tif (\n\t\t\tprevWidget.idBase &&\n\t\t\twidget.idBase &&\n\t\t\tprevWidget.idBase === widget.idBase\n\t\t) {\n\t\t\tconst settingId = widgetIdToSettingId( widget.id );\n\t\t\tthis.api( settingId ).set( widget.instance );\n\t\t\treturn widget.id;\n\t\t}\n\n\t\t// Otherwise delete and re-create.\n\t\tthis._removeWidget( widget );\n\t\treturn this._createWidget( widget );\n\t}\n\n\tgetWidget( widgetId ) {\n\t\tif ( ! widgetId ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { idBase, number } = parseWidgetId( widgetId );\n\t\tconst settingId = widgetIdToSettingId( widgetId );\n\t\tconst setting = this.api( settingId );\n\n\t\tif ( ! setting ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst instance = setting.get();\n\n\t\tif ( this.widgetsCache.has( instance ) ) {\n\t\t\treturn this.widgetsCache.get( instance );\n\t\t}\n\n\t\tconst widget = {\n\t\t\tid: widgetId,\n\t\t\tidBase,\n\t\t\tnumber,\n\t\t\tinstance,\n\t\t};\n\n\t\tthis.widgetsCache.set( instance, widget );\n\n\t\treturn widget;\n\t}\n\n\t_updateWidgets( nextWidgets ) {\n\t\tthis.locked = true;\n\n\t\tconst addedWidgetIds = [];\n\n\t\tconst nextWidgetIds = nextWidgets.map( ( nextWidget ) => {\n\t\t\tif ( nextWidget.id && this.getWidget( nextWidget.id ) ) {\n\t\t\t\taddedWidgetIds.push( null );\n\n\t\t\t\treturn this._updateWidget( nextWidget );\n\t\t\t}\n\n\t\t\tconst widgetId = this._createWidget( nextWidget );\n\n\t\t\taddedWidgetIds.push( widgetId );\n\n\t\t\treturn widgetId;\n\t\t} );\n\n\t\tconst deletedWidgets = this.getWidgets().filter(\n\t\t\t( widget ) => ! nextWidgetIds.includes( widget.id )\n\t\t);\n\t\tdeletedWidgets.forEach( ( widget ) => this._removeWidget( widget ) );\n\n\t\tthis.setting.set( nextWidgetIds );\n\n\t\tthis.locked = false;\n\n\t\treturn addedWidgetIds;\n\t}\n\n\tsetWidgets( nextWidgets ) {\n\t\tconst addedWidgetIds = this._updateWidgets( nextWidgets );\n\n\t\tthis._debounceSetHistory();\n\n\t\treturn addedWidgetIds;\n\t}\n\n\t/**\n\t * Undo/Redo related features\n\t */\n\thasUndo() {\n\t\treturn this.historyIndex > 0;\n\t}\n\n\thasRedo() {\n\t\treturn this.historyIndex < this.history.length - 1;\n\t}\n\n\t_seek( historyIndex ) {\n\t\tconst currentWidgets = this.getWidgets();\n\n\t\tthis.historyIndex = historyIndex;\n\n\t\tconst widgets = this.history[ this.historyIndex ];\n\n\t\tthis._updateWidgets( widgets );\n\n\t\tthis._emit( currentWidgets, this.getWidgets() );\n\n\t\tthis.historySubscribers.forEach( ( listener ) => listener() );\n\t\tthis._debounceSetHistory.cancel();\n\t}\n\n\tundo() {\n\t\tif ( ! this.hasUndo() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._seek( this.historyIndex - 1 );\n\t}\n\n\tredo() {\n\t\tif ( ! this.hasRedo() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._seek( this.historyIndex + 1 );\n\t}\n\n\tsubscribeHistory( listener ) {\n\t\tthis.historySubscribers.add( listener );\n\n\t\treturn () => {\n\t\t\tthis.historySubscribers.delete( listener );\n\t\t};\n\t}\n\n\tsave() {\n\t\tthis.api.previewer.save();\n\t}\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,40 +1,58 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+ var sidebar_editor_provider_exports = {};
29
+ __export(sidebar_editor_provider_exports, {
30
+ default: () => SidebarEditorProvider
6
31
  });
7
- exports.default = SidebarEditorProvider;
8
- var _blockEditor = require("@wordpress/block-editor");
9
- var _useSidebarBlockEditor = _interopRequireDefault(require("./use-sidebar-block-editor"));
10
- var _useBlocksFocusControl = _interopRequireDefault(require("../focus-control/use-blocks-focus-control"));
11
- var _lockUnlock = require("../../lock-unlock");
12
- var _jsxRuntime = require("react/jsx-runtime");
13
- /**
14
- * WordPress dependencies
15
- */
16
-
17
- /**
18
- * Internal dependencies
19
- */
20
-
21
- const {
22
- ExperimentalBlockEditorProvider
23
- } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
32
+ module.exports = __toCommonJS(sidebar_editor_provider_exports);
33
+ var import_jsx_runtime = require("react/jsx-runtime");
34
+ var import_block_editor = require("@wordpress/block-editor");
35
+ var import_use_sidebar_block_editor = __toESM(require("./use-sidebar-block-editor"));
36
+ var import_use_blocks_focus_control = __toESM(require("../focus-control/use-blocks-focus-control"));
37
+ var import_lock_unlock = require("../../lock-unlock");
38
+ const { ExperimentalBlockEditorProvider } = (0, import_lock_unlock.unlock)(import_block_editor.privateApis);
24
39
  function SidebarEditorProvider({
25
40
  sidebar,
26
41
  settings,
27
42
  children
28
43
  }) {
29
- const [blocks, onInput, onChange] = (0, _useSidebarBlockEditor.default)(sidebar);
30
- (0, _useBlocksFocusControl.default)(blocks);
31
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(ExperimentalBlockEditorProvider, {
32
- value: blocks,
33
- onInput: onInput,
34
- onChange: onChange,
35
- settings: settings,
36
- useSubRegistry: false,
37
- children: children
38
- });
44
+ const [blocks, onInput, onChange] = (0, import_use_sidebar_block_editor.default)(sidebar);
45
+ (0, import_use_blocks_focus_control.default)(blocks);
46
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
47
+ ExperimentalBlockEditorProvider,
48
+ {
49
+ value: blocks,
50
+ onInput,
51
+ onChange,
52
+ settings,
53
+ useSubRegistry: false,
54
+ children
55
+ }
56
+ );
39
57
  }
40
- //# sourceMappingURL=sidebar-editor-provider.js.map
58
+ //# sourceMappingURL=sidebar-editor-provider.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_blockEditor","require","_useSidebarBlockEditor","_interopRequireDefault","_useBlocksFocusControl","_lockUnlock","_jsxRuntime","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","SidebarEditorProvider","sidebar","settings","children","blocks","onInput","onChange","useSidebarBlockEditor","useBlocksFocusControl","jsx","value","useSubRegistry"],"sources":["@wordpress/customize-widgets/src/components/sidebar-block-editor/sidebar-editor-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useSidebarBlockEditor from './use-sidebar-block-editor';\nimport useBlocksFocusControl from '../focus-control/use-blocks-focus-control';\n\nimport { unlock } from '../../lock-unlock';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\n\nexport default function SidebarEditorProvider( {\n\tsidebar,\n\tsettings,\n\tchildren,\n} ) {\n\tconst [ blocks, onInput, onChange ] = useSidebarBlockEditor( sidebar );\n\n\tuseBlocksFocusControl( blocks );\n\n\treturn (\n\t\t<ExperimentalBlockEditorProvider\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ onInput }\n\t\t\tonChange={ onChange }\n\t\t\tsettings={ settings }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,WAAA,GAAAJ,OAAA;AAA2C,IAAAK,WAAA,GAAAL,OAAA;AAX3C;AACA;AACA;;AAGA;AACA;AACA;;AAMA,MAAM;EAAEM;AAAgC,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAE7D,SAASC,qBAAqBA,CAAE;EAC9CC,OAAO;EACPC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,MAAM,EAAEC,OAAO,EAAEC,QAAQ,CAAE,GAAG,IAAAC,8BAAqB,EAAEN,OAAQ,CAAC;EAEtE,IAAAO,8BAAqB,EAAEJ,MAAO,CAAC;EAE/B,oBACC,IAAAR,WAAA,CAAAa,GAAA,EAACZ,+BAA+B;IAC/Ba,KAAK,EAAGN,MAAQ;IAChBC,OAAO,EAAGA,OAAS;IACnBC,QAAQ,EAAGA,QAAU;IACrBJ,QAAQ,EAAGA,QAAU;IACrBS,cAAc,EAAG,KAAO;IAAAR,QAAA,EAEtBA;EAAQ,CACsB,CAAC;AAEpC","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/sidebar-block-editor/sidebar-editor-provider.js"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useSidebarBlockEditor from './use-sidebar-block-editor';\nimport useBlocksFocusControl from '../focus-control/use-blocks-focus-control';\n\nimport { unlock } from '../../lock-unlock';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\n\nexport default function SidebarEditorProvider( {\n\tsidebar,\n\tsettings,\n\tchildren,\n} ) {\n\tconst [ blocks, onInput, onChange ] = useSidebarBlockEditor( sidebar );\n\n\tuseBlocksFocusControl( blocks );\n\n\treturn (\n\t\t<ExperimentalBlockEditorProvider\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ onInput }\n\t\t\tonChange={ onChange }\n\t\t\tsettings={ settings }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBE;AAtBF,0BAAsD;AAKtD,sCAAkC;AAClC,sCAAkC;AAElC,yBAAuB;AAEvB,MAAM,EAAE,gCAAgC,QAAI,2BAAQ,oBAAAA,WAAuB;AAE5D,SAAR,sBAAwC;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AACD,GAAI;AACH,QAAM,CAAE,QAAQ,SAAS,QAAS,QAAI,gCAAAC,SAAuB,OAAQ;AAErE,sCAAAC,SAAuB,MAAO;AAE9B,SACC;AAAA,IAAC;AAAA;AAAA,MACA,OAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA,gBAAiB;AAAA,MAEf;AAAA;AAAA,EACH;AAEF;",
6
+ "names": ["blockEditorPrivateApis", "useSidebarBlockEditor", "useBlocksFocusControl"]
7
+ }