@wordpress/edit-site 6.8.12 → 6.8.13

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/build/components/add-new-post/index.js +1 -1
  2. package/build/components/add-new-post/index.js.map +1 -1
  3. package/build/components/add-new-template/index.js +1 -1
  4. package/build/components/add-new-template/index.js.map +1 -1
  5. package/build/components/add-new-template/utils.js +8 -8
  6. package/build/components/add-new-template/utils.js.map +1 -1
  7. package/build/components/editor/index.js +1 -1
  8. package/build/components/editor/index.js.map +1 -1
  9. package/build/components/editor/use-editor-title.js +2 -2
  10. package/build/components/editor/use-editor-title.js.map +1 -1
  11. package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  12. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  13. package/build/components/global-styles/variations/variation.js +2 -2
  14. package/build/components/global-styles/variations/variation.js.map +1 -1
  15. package/build/components/page-patterns/delete-category-menu-item.js +3 -3
  16. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  17. package/build/components/pagination/index.js +1 -1
  18. package/build/components/pagination/index.js.map +1 -1
  19. package/build/components/post-fields/index.js +2 -2
  20. package/build/components/post-fields/index.js.map +1 -1
  21. package/build/components/save-panel/index.js +1 -1
  22. package/build/components/save-panel/index.js.map +1 -1
  23. package/build/components/sidebar-navigation-screen/index.js +2 -1
  24. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  25. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  26. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  27. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +3 -3
  28. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  29. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +3 -3
  30. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  31. package/build-module/components/add-new-post/index.js +1 -1
  32. package/build-module/components/add-new-post/index.js.map +1 -1
  33. package/build-module/components/add-new-template/index.js +1 -1
  34. package/build-module/components/add-new-template/index.js.map +1 -1
  35. package/build-module/components/add-new-template/utils.js +9 -9
  36. package/build-module/components/add-new-template/utils.js.map +1 -1
  37. package/build-module/components/editor/index.js +1 -1
  38. package/build-module/components/editor/index.js.map +1 -1
  39. package/build-module/components/editor/use-editor-title.js +3 -3
  40. package/build-module/components/editor/use-editor-title.js.map +1 -1
  41. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  42. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  43. package/build-module/components/global-styles/variations/variation.js +3 -3
  44. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  45. package/build-module/components/page-patterns/delete-category-menu-item.js +4 -4
  46. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  47. package/build-module/components/pagination/index.js +1 -1
  48. package/build-module/components/pagination/index.js.map +1 -1
  49. package/build-module/components/post-fields/index.js +2 -2
  50. package/build-module/components/post-fields/index.js.map +1 -1
  51. package/build-module/components/save-panel/index.js +1 -1
  52. package/build-module/components/save-panel/index.js.map +1 -1
  53. package/build-module/components/sidebar-navigation-screen/index.js +2 -1
  54. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  55. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  56. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  57. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  58. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  59. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +4 -4
  60. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  61. package/package.json +15 -15
  62. package/src/components/add-new-post/index.js +1 -1
  63. package/src/components/add-new-template/index.js +1 -1
  64. package/src/components/add-new-template/utils.js +12 -9
  65. package/src/components/editor/index.js +1 -1
  66. package/src/components/editor/use-editor-title.js +3 -3
  67. package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  68. package/src/components/global-styles/variations/variation.js +3 -3
  69. package/src/components/page-patterns/delete-category-menu-item.js +4 -4
  70. package/src/components/pagination/index.js +1 -1
  71. package/src/components/post-fields/index.js +2 -2
  72. package/src/components/save-panel/index.js +1 -1
  73. package/src/components/sidebar-navigation-screen/index.js +2 -1
  74. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  75. package/src/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  76. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +4 -4
@@ -1 +1 @@
1
- {"version":3,"names":["_coreData","require","_i18n","_data","_notices","_router","_","_constants","_lockUnlock","useHistory","unlock","routerPrivateApis","useDeleteNavigationMenu","deleteEntityRecord","useDispatch","coreStore","createSuccessNotice","createErrorNotice","noticesStore","history","handleDelete","navigationMenu","postId","id","postType","force","throwOnError","__","type","push","error","sprintf","message","useSaveNavigationMenu","getEditedEntityRecord","useSelect","select","getEditedEntityRecordSelector","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","handleSave","edits","originalRecord","NAVIGATION_POST_TYPE","recordPropertiesToSave","Object","keys","useDuplicateNavigationMenu","saveEntityRecord","handleDuplicate","menuTitle","title","rendered","slug","savedRecord","content","raw","status","useNavigationMenuHandlers"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { postType } from '.';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction useDeleteNavigationMenu() {\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst history = useHistory();\n\n\tconst handleDelete = async ( navigationMenu ) => {\n\t\tconst postId = navigationMenu?.id;\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\t{\n\t\t\t\t\tforce: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice(\n\t\t\t\t__( 'Navigation Menu successfully deleted.' ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t\thistory.push( { postType: 'wp_navigation' } );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to delete Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDelete;\n}\n\nfunction useSaveNavigationMenu() {\n\tconst { getEditedEntityRecord } = useSelect( ( select ) => {\n\t\tconst { getEditedEntityRecord: getEditedEntityRecordSelector } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tgetEditedEntityRecord: getEditedEntityRecordSelector,\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleSave = async ( navigationMenu, edits ) => {\n\t\tif ( ! edits ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst postId = navigationMenu?.id;\n\t\t// Prepare for revert in case of error.\n\t\tconst originalRecord = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tpostId\n\t\t);\n\n\t\t// Apply the edits.\n\t\teditEntityRecord( 'postType', postType, postId, edits );\n\n\t\tconst recordPropertiesToSave = Object.keys( edits );\n\n\t\t// Attempt to persist.\n\t\ttry {\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\trecordPropertiesToSave,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Renamed Navigation Menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\t// Revert to original in case of error.\n\t\t\teditEntityRecord( 'postType', postType, postId, originalRecord );\n\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be renamed. */\n\t\t\t\t\t__( `Unable to rename Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleSave;\n}\n\nfunction useDuplicateNavigationMenu() {\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDuplicate = async ( navigationMenu ) => {\n\t\tconst menuTitle =\n\t\t\tnavigationMenu?.title?.rendered || navigationMenu?.slug;\n\n\t\ttry {\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t/* translators: %s: Navigation menu title */\n\t\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\t\tmenuTitle\n\t\t\t\t\t),\n\t\t\t\t\tcontent: navigationMenu?.content?.raw,\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( savedRecord ) {\n\t\t\t\tcreateSuccessNotice( __( 'Duplicated Navigation Menu' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t\thistory.push( { postType, postId: savedRecord.id } );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to duplicate Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDuplicate;\n}\n\nexport default function useNavigationMenuHandlers() {\n\treturn {\n\t\thandleDelete: useDeleteNavigationMenu(),\n\t\thandleSave: useSaveNavigationMenu(),\n\t\thandleDuplicate: useDuplicateNavigationMenu(),\n\t};\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_coreData","require","_i18n","_data","_notices","_router","_","_constants","_lockUnlock","useHistory","unlock","routerPrivateApis","useDeleteNavigationMenu","deleteEntityRecord","useDispatch","coreStore","createSuccessNotice","createErrorNotice","noticesStore","history","handleDelete","navigationMenu","postId","id","postType","force","throwOnError","__","type","push","error","sprintf","message","useSaveNavigationMenu","getEditedEntityRecord","useSelect","select","getEditedEntityRecordSelector","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","handleSave","edits","originalRecord","NAVIGATION_POST_TYPE","recordPropertiesToSave","Object","keys","useDuplicateNavigationMenu","saveEntityRecord","handleDuplicate","menuTitle","title","rendered","slug","savedRecord","_x","content","raw","status","useNavigationMenuHandlers"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { postType } from '.';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction useDeleteNavigationMenu() {\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst history = useHistory();\n\n\tconst handleDelete = async ( navigationMenu ) => {\n\t\tconst postId = navigationMenu?.id;\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\t{\n\t\t\t\t\tforce: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice(\n\t\t\t\t__( 'Navigation Menu successfully deleted.' ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t\thistory.push( { postType: 'wp_navigation' } );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to delete Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDelete;\n}\n\nfunction useSaveNavigationMenu() {\n\tconst { getEditedEntityRecord } = useSelect( ( select ) => {\n\t\tconst { getEditedEntityRecord: getEditedEntityRecordSelector } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tgetEditedEntityRecord: getEditedEntityRecordSelector,\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleSave = async ( navigationMenu, edits ) => {\n\t\tif ( ! edits ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst postId = navigationMenu?.id;\n\t\t// Prepare for revert in case of error.\n\t\tconst originalRecord = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tpostId\n\t\t);\n\n\t\t// Apply the edits.\n\t\teditEntityRecord( 'postType', postType, postId, edits );\n\n\t\tconst recordPropertiesToSave = Object.keys( edits );\n\n\t\t// Attempt to persist.\n\t\ttry {\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\trecordPropertiesToSave,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t\tcreateSuccessNotice( __( 'Renamed Navigation Menu' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\t// Revert to original in case of error.\n\t\t\teditEntityRecord( 'postType', postType, postId, originalRecord );\n\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be renamed. */\n\t\t\t\t\t__( `Unable to rename Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleSave;\n}\n\nfunction useDuplicateNavigationMenu() {\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst handleDuplicate = async ( navigationMenu ) => {\n\t\tconst menuTitle =\n\t\t\tnavigationMenu?.title?.rendered || navigationMenu?.slug;\n\n\t\ttry {\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t/* translators: %s: Navigation menu title */\n\t\t\t\t\t\t_x( '%s (Copy)', 'navigation menu' ),\n\t\t\t\t\t\tmenuTitle\n\t\t\t\t\t),\n\t\t\t\t\tcontent: navigationMenu?.content?.raw,\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( savedRecord ) {\n\t\t\t\tcreateSuccessNotice( __( 'Duplicated Navigation Menu' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t\thistory.push( { postType, postId: savedRecord.id } );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: error message describing why the navigation menu could not be deleted. */\n\t\t\t\t\t__( `Unable to duplicate Navigation Menu (%s).` ),\n\t\t\t\t\terror?.message\n\t\t\t\t),\n\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t};\n\n\treturn handleDuplicate;\n}\n\nexport default function useNavigationMenuHandlers() {\n\treturn {\n\t\thandleDelete: useDeleteNavigationMenu(),\n\t\thandleSave: useSaveNavigationMenu(),\n\t\thandleDuplicate: useDuplicateNavigationMenu(),\n\t};\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,14 +13,14 @@ var _htmlEntities = require("@wordpress/html-entities");
13
13
  // Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.
14
14
  function buildNavigationLabel(title, id, status) {
15
15
  if (!title?.rendered) {
16
- /* translators: %s is the index of the menu in the list of menus. */
16
+ /* translators: %s: the index of the menu in the list of menus. */
17
17
  return (0, _i18n.sprintf)((0, _i18n.__)('(no title %s)'), id);
18
18
  }
19
19
  if (status === 'publish') {
20
20
  return (0, _htmlEntities.decodeEntities)(title?.rendered);
21
21
  }
22
22
  return (0, _i18n.sprintf)(
23
- // translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).
24
- (0, _i18n.__)('%1$s (%2$s)'), (0, _htmlEntities.decodeEntities)(title?.rendered), status);
23
+ // translators: 1: title of the menu. 2: status of the menu (draft, pending, etc.).
24
+ (0, _i18n._x)('%1$s (%2$s)', 'menu label'), (0, _htmlEntities.decodeEntities)(title?.rendered), status);
25
25
  }
26
26
  //# sourceMappingURL=build-navigation-label.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_htmlEntities","buildNavigationLabel","title","id","status","rendered","sprintf","__","decodeEntities"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\nexport default function buildNavigationLabel( title, id, status ) {\n\tif ( ! title?.rendered ) {\n\t\t/* translators: %s is the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title?.rendered );\n\t}\n\n\treturn sprintf(\n\t\t// translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).\n\t\t__( '%1$s (%2$s)' ),\n\t\tdecodeEntities( title?.rendered ),\n\t\tstatus\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA;AACe,SAASE,oBAAoBA,CAAEC,KAAK,EAAEC,EAAE,EAAEC,MAAM,EAAG;EACjE,IAAK,CAAEF,KAAK,EAAEG,QAAQ,EAAG;IACxB;IACA,OAAO,IAAAC,aAAO,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC,EAAEJ,EAAG,CAAC;EAC5C;EAEA,IAAKC,MAAM,KAAK,SAAS,EAAG;IAC3B,OAAO,IAAAI,4BAAc,EAAEN,KAAK,EAAEG,QAAS,CAAC;EACzC;EAEA,OAAO,IAAAC,aAAO;EACb;EACA,IAAAC,QAAE,EAAE,aAAc,CAAC,EACnB,IAAAC,4BAAc,EAAEN,KAAK,EAAEG,QAAS,CAAC,EACjCD,MACD,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_htmlEntities","buildNavigationLabel","title","id","status","rendered","sprintf","__","decodeEntities","_x"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\nexport default function buildNavigationLabel( title, id, status ) {\n\tif ( ! title?.rendered ) {\n\t\t/* translators: %s: the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title?.rendered );\n\t}\n\n\treturn sprintf(\n\t\t// translators: 1: title of the menu. 2: status of the menu (draft, pending, etc.).\n\t\t_x( '%1$s (%2$s)', 'menu label' ),\n\t\tdecodeEntities( title?.rendered ),\n\t\tstatus\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA;AACe,SAASE,oBAAoBA,CAAEC,KAAK,EAAEC,EAAE,EAAEC,MAAM,EAAG;EACjE,IAAK,CAAEF,KAAK,EAAEG,QAAQ,EAAG;IACxB;IACA,OAAO,IAAAC,aAAO,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC,EAAEJ,EAAG,CAAC;EAC5C;EAEA,IAAKC,MAAM,KAAK,SAAS,EAAG;IAC3B,OAAO,IAAAI,4BAAc,EAAEN,KAAK,EAAEG,QAAS,CAAC;EACzC;EAEA,OAAO,IAAAC,aAAO;EACb;EACA,IAAAG,QAAE,EAAE,aAAa,EAAE,YAAa,CAAC,EACjC,IAAAD,4BAAc,EAAEN,KAAK,EAAEG,QAAS,CAAC,EACjCD,MACD,CAAC;AACF","ignoreList":[]}
@@ -32,15 +32,15 @@ var _jsxRuntime = require("react/jsx-runtime");
32
32
  // Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.
33
33
  function buildMenuLabel(title, id, status) {
34
34
  if (!title) {
35
- /* translators: %s is the index of the menu in the list of menus. */
35
+ /* translators: %s: the index of the menu in the list of menus. */
36
36
  return (0, _i18n.sprintf)((0, _i18n.__)('(no title %s)'), id);
37
37
  }
38
38
  if (status === 'publish') {
39
39
  return (0, _htmlEntities.decodeEntities)(title);
40
40
  }
41
41
  return (0, _i18n.sprintf)(
42
- // translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).
43
- (0, _i18n.__)('%1$s (%2$s)'), (0, _htmlEntities.decodeEntities)(title), status);
42
+ // translators: 1: title of the menu. 2: status of the menu (draft, pending, etc.).
43
+ (0, _i18n._x)('%1$s (%2$s)', 'menu label'), (0, _htmlEntities.decodeEntities)(title), status);
44
44
  }
45
45
 
46
46
  // Save a boolean to prevent us creating a fallback more than once per session.
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_coreData","_data","_htmlEntities","_components","_icons","_sidebarNavigationScreen","_interopRequireDefault","_sidebarNavigationItem","_constants","_link","_singleNavigationMenu","_useNavigationMenuHandlers","_lockUnlock","_constants2","_jsxRuntime","buildMenuLabel","title","id","status","sprintf","__","decodeEntities","hasCreatedFallback","SidebarNavigationScreenNavigationMenus","backPath","records","navigationMenus","isResolving","isResolvingNavigationMenus","hasResolved","hasResolvedNavigationMenus","useEntityRecords","NAVIGATION_POST_TYPE","PRELOADED_NAVIGATION_MENUS_QUERY","isLoading","getNavigationFallbackId","unlock","useSelect","coreStore","firstNavigationMenu","handleSave","handleDelete","handleDuplicate","useNavigationMenuHandlers","hasNavigationMenus","length","jsx","SidebarNavigationScreenWrapper","children","Spinner","className","description","default","navigationMenu","edits","__experimentalItemGroup","map","index","NavMenuItem","postId","withChevron","icon","navigation","rendered","actions","content","props","linkInfo","useLink","postType"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tSpinner,\n} from '@wordpress/components';\nimport { navigation } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { PRELOADED_NAVIGATION_MENUS_QUERY } from './constants';\nimport { useLink } from '../routes/link';\nimport SingleNavigationMenu from '../sidebar-navigation-screen-navigation-menu/single-navigation-menu';\nimport useNavigationMenuHandlers from '../sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers';\nimport { unlock } from '../../lock-unlock';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\nfunction buildMenuLabel( title, id, status ) {\n\tif ( ! title ) {\n\t\t/* translators: %s is the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title );\n\t}\n\n\treturn sprintf(\n\t\t// translators: %1s: title of the menu; %2s: status of the menu (draft, pending, etc.).\n\t\t__( '%1$s (%2$s)' ),\n\t\tdecodeEntities( title ),\n\t\tstatus\n\t);\n}\n\n// Save a boolean to prevent us creating a fallback more than once per session.\nlet hasCreatedFallback = false;\n\nexport default function SidebarNavigationScreenNavigationMenus( { backPath } ) {\n\tconst {\n\t\trecords: navigationMenus,\n\t\tisResolving: isResolvingNavigationMenus,\n\t\thasResolved: hasResolvedNavigationMenus,\n\t} = useEntityRecords(\n\t\t'postType',\n\t\tNAVIGATION_POST_TYPE,\n\t\tPRELOADED_NAVIGATION_MENUS_QUERY\n\t);\n\n\tconst isLoading =\n\t\tisResolvingNavigationMenus && ! hasResolvedNavigationMenus;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst firstNavigationMenu = navigationMenus?.[ 0 ];\n\n\t// Save a boolean to prevent us creating a fallback more than once per session.\n\tif ( firstNavigationMenu ) {\n\t\thasCreatedFallback = true;\n\t}\n\n\t// If there is no navigation menu found\n\t// then trigger fallback algorithm to create one.\n\tif (\n\t\t! firstNavigationMenu &&\n\t\t! isResolvingNavigationMenus &&\n\t\thasResolvedNavigationMenus &&\n\t\t! hasCreatedFallback\n\t) {\n\t\tgetNavigationFallbackId();\n\t}\n\n\tconst { handleSave, handleDelete, handleDuplicate } =\n\t\tuseNavigationMenuHandlers();\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\tif ( isLoading ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper backPath={ backPath }>\n\t\t\t\t<Spinner className=\"edit-site-sidebar-navigation-screen-navigation-menus__loading\" />\n\t\t\t</SidebarNavigationScreenWrapper>\n\t\t);\n\t}\n\n\tif ( ! isLoading && ! hasNavigationMenus ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper\n\t\t\t\tdescription={ __( 'No Navigation Menus found.' ) }\n\t\t\t\tbackPath={ backPath }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// if single menu then render it\n\tif ( navigationMenus?.length === 1 ) {\n\t\treturn (\n\t\t\t<SingleNavigationMenu\n\t\t\t\tnavigationMenu={ firstNavigationMenu }\n\t\t\t\tbackPath={ backPath }\n\t\t\t\thandleDelete={ () => handleDelete( firstNavigationMenu ) }\n\t\t\t\thandleDuplicate={ () => handleDuplicate( firstNavigationMenu ) }\n\t\t\t\thandleSave={ ( edits ) =>\n\t\t\t\t\thandleSave( firstNavigationMenu, edits )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreenWrapper backPath={ backPath }>\n\t\t\t<ItemGroup>\n\t\t\t\t{ navigationMenus?.map( ( { id, title, status }, index ) => (\n\t\t\t\t\t<NavMenuItem\n\t\t\t\t\t\tpostId={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ navigation }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ buildMenuLabel( title?.rendered, index + 1, status ) }\n\t\t\t\t\t</NavMenuItem>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</SidebarNavigationScreenWrapper>\n\t);\n}\n\nexport function SidebarNavigationScreenWrapper( {\n\tchildren,\n\tactions,\n\ttitle,\n\tdescription,\n\tbackPath,\n} ) {\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title || __( 'Navigation' ) }\n\t\t\tactions={ actions }\n\t\t\tdescription={ description || __( 'Manage your Navigation Menus.' ) }\n\t\t\tbackPath={ backPath }\n\t\t\tcontent={ children }\n\t\t/>\n\t);\n}\n\nconst NavMenuItem = ( { postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostId,\n\t\tpostType: 'wp_navigation',\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_coreData","_data","_htmlEntities","_components","_icons","_sidebarNavigationScreen","_interopRequireDefault","_sidebarNavigationItem","_constants","_link","_singleNavigationMenu","_useNavigationMenuHandlers","_lockUnlock","_constants2","_jsxRuntime","buildMenuLabel","title","id","status","sprintf","__","decodeEntities","_x","hasCreatedFallback","SidebarNavigationScreenNavigationMenus","backPath","records","navigationMenus","isResolving","isResolvingNavigationMenus","hasResolved","hasResolvedNavigationMenus","useEntityRecords","NAVIGATION_POST_TYPE","PRELOADED_NAVIGATION_MENUS_QUERY","isLoading","getNavigationFallbackId","unlock","useSelect","coreStore","firstNavigationMenu","handleSave","handleDelete","handleDuplicate","useNavigationMenuHandlers","hasNavigationMenus","length","jsx","SidebarNavigationScreenWrapper","children","Spinner","className","description","default","navigationMenu","edits","__experimentalItemGroup","map","index","NavMenuItem","postId","withChevron","icon","navigation","rendered","actions","content","props","linkInfo","useLink","postType"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tSpinner,\n} from '@wordpress/components';\nimport { navigation } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { PRELOADED_NAVIGATION_MENUS_QUERY } from './constants';\nimport { useLink } from '../routes/link';\nimport SingleNavigationMenu from '../sidebar-navigation-screen-navigation-menu/single-navigation-menu';\nimport useNavigationMenuHandlers from '../sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers';\nimport { unlock } from '../../lock-unlock';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\n\n// Copied from packages/block-library/src/navigation/edit/navigation-menu-selector.js.\nfunction buildMenuLabel( title, id, status ) {\n\tif ( ! title ) {\n\t\t/* translators: %s: the index of the menu in the list of menus. */\n\t\treturn sprintf( __( '(no title %s)' ), id );\n\t}\n\n\tif ( status === 'publish' ) {\n\t\treturn decodeEntities( title );\n\t}\n\n\treturn sprintf(\n\t\t// translators: 1: title of the menu. 2: status of the menu (draft, pending, etc.).\n\t\t_x( '%1$s (%2$s)', 'menu label' ),\n\t\tdecodeEntities( title ),\n\t\tstatus\n\t);\n}\n\n// Save a boolean to prevent us creating a fallback more than once per session.\nlet hasCreatedFallback = false;\n\nexport default function SidebarNavigationScreenNavigationMenus( { backPath } ) {\n\tconst {\n\t\trecords: navigationMenus,\n\t\tisResolving: isResolvingNavigationMenus,\n\t\thasResolved: hasResolvedNavigationMenus,\n\t} = useEntityRecords(\n\t\t'postType',\n\t\tNAVIGATION_POST_TYPE,\n\t\tPRELOADED_NAVIGATION_MENUS_QUERY\n\t);\n\n\tconst isLoading =\n\t\tisResolvingNavigationMenus && ! hasResolvedNavigationMenus;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst firstNavigationMenu = navigationMenus?.[ 0 ];\n\n\t// Save a boolean to prevent us creating a fallback more than once per session.\n\tif ( firstNavigationMenu ) {\n\t\thasCreatedFallback = true;\n\t}\n\n\t// If there is no navigation menu found\n\t// then trigger fallback algorithm to create one.\n\tif (\n\t\t! firstNavigationMenu &&\n\t\t! isResolvingNavigationMenus &&\n\t\thasResolvedNavigationMenus &&\n\t\t! hasCreatedFallback\n\t) {\n\t\tgetNavigationFallbackId();\n\t}\n\n\tconst { handleSave, handleDelete, handleDuplicate } =\n\t\tuseNavigationMenuHandlers();\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\n\tif ( isLoading ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper backPath={ backPath }>\n\t\t\t\t<Spinner className=\"edit-site-sidebar-navigation-screen-navigation-menus__loading\" />\n\t\t\t</SidebarNavigationScreenWrapper>\n\t\t);\n\t}\n\n\tif ( ! isLoading && ! hasNavigationMenus ) {\n\t\treturn (\n\t\t\t<SidebarNavigationScreenWrapper\n\t\t\t\tdescription={ __( 'No Navigation Menus found.' ) }\n\t\t\t\tbackPath={ backPath }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// if single menu then render it\n\tif ( navigationMenus?.length === 1 ) {\n\t\treturn (\n\t\t\t<SingleNavigationMenu\n\t\t\t\tnavigationMenu={ firstNavigationMenu }\n\t\t\t\tbackPath={ backPath }\n\t\t\t\thandleDelete={ () => handleDelete( firstNavigationMenu ) }\n\t\t\t\thandleDuplicate={ () => handleDuplicate( firstNavigationMenu ) }\n\t\t\t\thandleSave={ ( edits ) =>\n\t\t\t\t\thandleSave( firstNavigationMenu, edits )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<SidebarNavigationScreenWrapper backPath={ backPath }>\n\t\t\t<ItemGroup>\n\t\t\t\t{ navigationMenus?.map( ( { id, title, status }, index ) => (\n\t\t\t\t\t<NavMenuItem\n\t\t\t\t\t\tpostId={ id }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\twithChevron\n\t\t\t\t\t\ticon={ navigation }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ buildMenuLabel( title?.rendered, index + 1, status ) }\n\t\t\t\t\t</NavMenuItem>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</SidebarNavigationScreenWrapper>\n\t);\n}\n\nexport function SidebarNavigationScreenWrapper( {\n\tchildren,\n\tactions,\n\ttitle,\n\tdescription,\n\tbackPath,\n} ) {\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title || __( 'Navigation' ) }\n\t\t\tactions={ actions }\n\t\t\tdescription={ description || __( 'Manage your Navigation Menus.' ) }\n\t\t\tbackPath={ backPath }\n\t\t\tcontent={ children }\n\t\t/>\n\t);\n}\n\nconst NavMenuItem = ( { postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostId,\n\t\tpostType: 'wp_navigation',\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAIA,IAAAK,MAAA,GAAAL,OAAA;AAKA,IAAAM,wBAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,sBAAA,GAAAD,sBAAA,CAAAP,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAV,OAAA;AACA,IAAAW,qBAAA,GAAAJ,sBAAA,CAAAP,OAAA;AACA,IAAAY,0BAAA,GAAAL,sBAAA,CAAAP,OAAA;AACA,IAAAa,WAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AAA6D,IAAAe,WAAA,GAAAf,OAAA;AAxB7D;AACA;AACA;;AAYA;AACA;AACA;;AAUA;AACA,SAASgB,cAAcA,CAAEC,KAAK,EAAEC,EAAE,EAAEC,MAAM,EAAG;EAC5C,IAAK,CAAEF,KAAK,EAAG;IACd;IACA,OAAO,IAAAG,aAAO,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC,EAAEH,EAAG,CAAC;EAC5C;EAEA,IAAKC,MAAM,KAAK,SAAS,EAAG;IAC3B,OAAO,IAAAG,4BAAc,EAAEL,KAAM,CAAC;EAC/B;EAEA,OAAO,IAAAG,aAAO;EACb;EACA,IAAAG,QAAE,EAAE,aAAa,EAAE,YAAa,CAAC,EACjC,IAAAD,4BAAc,EAAEL,KAAM,CAAC,EACvBE,MACD,CAAC;AACF;;AAEA;AACA,IAAIK,kBAAkB,GAAG,KAAK;AAEf,SAASC,sCAAsCA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC9E,MAAM;IACLC,OAAO,EAAEC,eAAe;IACxBC,WAAW,EAAEC,0BAA0B;IACvCC,WAAW,EAAEC;EACd,CAAC,GAAG,IAAAC,0BAAgB,EACnB,UAAU,EACVC,gCAAoB,EACpBC,2CACD,CAAC;EAED,MAAMC,SAAS,GACdN,0BAA0B,IAAI,CAAEE,0BAA0B;EAE3D,MAAM;IAAEK;EAAwB,CAAC,GAAG,IAAAC,kBAAM,EAAE,IAAAC,eAAS,EAAEC,eAAU,CAAE,CAAC;EAEpE,MAAMC,mBAAmB,GAAGb,eAAe,GAAI,CAAC,CAAE;;EAElD;EACA,IAAKa,mBAAmB,EAAG;IAC1BjB,kBAAkB,GAAG,IAAI;EAC1B;;EAEA;EACA;EACA,IACC,CAAEiB,mBAAmB,IACrB,CAAEX,0BAA0B,IAC5BE,0BAA0B,IAC1B,CAAER,kBAAkB,EACnB;IACDa,uBAAuB,CAAC,CAAC;EAC1B;EAEA,MAAM;IAAEK,UAAU;IAAEC,YAAY;IAAEC;EAAgB,CAAC,GAClD,IAAAC,kCAAyB,EAAC,CAAC;EAE5B,MAAMC,kBAAkB,GAAG,CAAC,CAAElB,eAAe,EAAEmB,MAAM;EAErD,IAAKX,SAAS,EAAG;IAChB,oBACC,IAAArB,WAAA,CAAAiC,GAAA,EAACC,8BAA8B;MAACvB,QAAQ,EAAGA,QAAU;MAAAwB,QAAA,eACpD,IAAAnC,WAAA,CAAAiC,GAAA,EAAC5C,WAAA,CAAA+C,OAAO;QAACC,SAAS,EAAC;MAA+D,CAAE;IAAC,CACtD,CAAC;EAEnC;EAEA,IAAK,CAAEhB,SAAS,IAAI,CAAEU,kBAAkB,EAAG;IAC1C,oBACC,IAAA/B,WAAA,CAAAiC,GAAA,EAACC,8BAA8B;MAC9BI,WAAW,EAAG,IAAAhC,QAAE,EAAE,4BAA6B,CAAG;MAClDK,QAAQ,EAAGA;IAAU,CACrB,CAAC;EAEJ;;EAEA;EACA,IAAKE,eAAe,EAAEmB,MAAM,KAAK,CAAC,EAAG;IACpC,oBACC,IAAAhC,WAAA,CAAAiC,GAAA,EAACrC,qBAAA,CAAA2C,OAAoB;MACpBC,cAAc,EAAGd,mBAAqB;MACtCf,QAAQ,EAAGA,QAAU;MACrBiB,YAAY,EAAGA,CAAA,KAAMA,YAAY,CAAEF,mBAAoB,CAAG;MAC1DG,eAAe,EAAGA,CAAA,KAAMA,eAAe,CAAEH,mBAAoB,CAAG;MAChEC,UAAU,EAAKc,KAAK,IACnBd,UAAU,CAAED,mBAAmB,EAAEe,KAAM;IACvC,CACD,CAAC;EAEJ;EAEA,oBACC,IAAAzC,WAAA,CAAAiC,GAAA,EAACC,8BAA8B;IAACvB,QAAQ,EAAGA,QAAU;IAAAwB,QAAA,eACpD,IAAAnC,WAAA,CAAAiC,GAAA,EAAC5C,WAAA,CAAAqD,uBAAS;MAAAP,QAAA,EACPtB,eAAe,EAAE8B,GAAG,CAAE,CAAE;QAAExC,EAAE;QAAED,KAAK;QAAEE;MAAO,CAAC,EAAEwC,KAAK,kBACrD,IAAA5C,WAAA,CAAAiC,GAAA,EAACY,WAAW;QACXC,MAAM,EAAG3C,EAAI;QAEb4C,WAAW;QACXC,IAAI,EAAGC,iBAAY;QAAAd,QAAA,EAEjBlC,cAAc,CAAEC,KAAK,EAAEgD,QAAQ,EAAEN,KAAK,GAAG,CAAC,EAAExC,MAAO;MAAC,GAJhDD,EAKM,CACZ;IAAC,CACO;EAAC,CACmB,CAAC;AAEnC;AAEO,SAAS+B,8BAA8BA,CAAE;EAC/CC,QAAQ;EACRgB,OAAO;EACPjD,KAAK;EACLoC,WAAW;EACX3B;AACD,CAAC,EAAG;EACH,oBACC,IAAAX,WAAA,CAAAiC,GAAA,EAAC1C,wBAAA,CAAAgD,OAAuB;IACvBrC,KAAK,EAAGA,KAAK,IAAI,IAAAI,QAAE,EAAE,YAAa,CAAG;IACrC6C,OAAO,EAAGA,OAAS;IACnBb,WAAW,EAAGA,WAAW,IAAI,IAAAhC,QAAE,EAAE,+BAAgC,CAAG;IACpEK,QAAQ,EAAGA,QAAU;IACrByC,OAAO,EAAGjB;EAAU,CACpB,CAAC;AAEJ;AAEA,MAAMU,WAAW,GAAGA,CAAE;EAAEC,MAAM;EAAE,GAAGO;AAAM,CAAC,KAAM;EAC/C,MAAMC,QAAQ,GAAG,IAAAC,aAAO,EAAE;IACzBT,MAAM;IACNU,QAAQ,EAAE;EACX,CAAE,CAAC;EACH,oBAAO,IAAAxD,WAAA,CAAAiC,GAAA,EAACxC,sBAAA,CAAA8C,OAAqB;IAAA,GAAMe,QAAQ;IAAA,GAAQD;EAAK,CAAI,CAAC;AAC9D,CAAC","ignoreList":[]}
@@ -47,7 +47,7 @@ export default function AddNewPostModal({
47
47
  });
48
48
  onSave(newPage);
49
49
  createSuccessNotice(sprintf(
50
- // translators: %s: Title of the created post e.g: "Hello world".
50
+ // translators: %s: Title of the created post or template, e.g: "Hello world".
51
51
  __('"%s" successfully created.'), decodeEntities(newPage.title?.rendered || title)), {
52
52
  type: 'snackbar'
53
53
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Button","Modal","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","__","sprintf","useDispatch","useRegistry","useSelect","useState","store","coreStore","noticesStore","decodeEntities","serialize","synchronizeBlocksWithTemplate","jsx","_jsx","jsxs","_jsxs","AddNewPostModal","postType","onSave","onClose","labels","select","getPostType","isCreatingPost","setIsCreatingPost","title","setTitle","saveEntityRecord","createErrorNotice","createSuccessNotice","resolveSelect","createPost","event","preventDefault","postTypeObject","newPage","status","slug","content","template","length","undefined","throwOnError","rendered","type","error","errorMessage","message","code","singular_name","onRequestClose","focusOnMount","size","children","onSubmit","spacing","__next40pxDefaultSize","__nextHasNoMarginBottom","label","onChange","placeholder","value","justify","variant","onClick","isBusy"],"sources":["@wordpress/edit-site/src/components/add-new-post/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useDispatch, useRegistry, useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { serialize, synchronizeBlocksWithTemplate } from '@wordpress/blocks';\n\nexport default function AddNewPostModal( { postType, onSave, onClose } ) {\n\tconst labels = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( postType )?.labels,\n\t\t[ postType ]\n\t);\n\tconst [ isCreatingPost, setIsCreatingPost ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { resolveSelect } = useRegistry();\n\n\tasync function createPost( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isCreatingPost ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsCreatingPost( true );\n\t\ttry {\n\t\t\tconst postTypeObject =\n\t\t\t\tawait resolveSelect( coreStore ).getPostType( postType );\n\t\t\tconst newPage = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\tstatus: 'draft',\n\t\t\t\t\ttitle,\n\t\t\t\t\tslug: title || __( 'No title' ),\n\t\t\t\t\tcontent:\n\t\t\t\t\t\t!! postTypeObject.template &&\n\t\t\t\t\t\tpostTypeObject.template.length\n\t\t\t\t\t\t\t? serialize(\n\t\t\t\t\t\t\t\t\tsynchronizeBlocksWithTemplate(\n\t\t\t\t\t\t\t\t\t\t[],\n\t\t\t\t\t\t\t\t\t\tpostTypeObject.template\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tonSave( newPage );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created post e.g: \"Hello world\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newPage.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the item.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsCreatingPost( false );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={\n\t\t\t\t// translators: %s: post type singular_name label e.g: \"Page\".\n\t\t\t\tsprintf( __( 'Draft new: %s' ), labels?.singular_name )\n\t\t\t}\n\t\t\tonRequestClose={ onClose }\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\tsize=\"small\"\n\t\t>\n\t\t\t<form onSubmit={ createPost }>\n\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\tplaceholder={ __( 'No title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack spacing={ 2 } justify=\"end\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tisBusy={ isCreatingPost }\n\t\t\t\t\t\t\taria-disabled={ isCreatingPost }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create draft' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Button","Modal","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","__","sprintf","useDispatch","useRegistry","useSelect","useState","store","coreStore","noticesStore","decodeEntities","serialize","synchronizeBlocksWithTemplate","jsx","_jsx","jsxs","_jsxs","AddNewPostModal","postType","onSave","onClose","labels","select","getPostType","isCreatingPost","setIsCreatingPost","title","setTitle","saveEntityRecord","createErrorNotice","createSuccessNotice","resolveSelect","createPost","event","preventDefault","postTypeObject","newPage","status","slug","content","template","length","undefined","throwOnError","rendered","type","error","errorMessage","message","code","singular_name","onRequestClose","focusOnMount","size","children","onSubmit","spacing","__next40pxDefaultSize","__nextHasNoMarginBottom","label","onChange","placeholder","value","justify","variant","onClick","isBusy"],"sources":["@wordpress/edit-site/src/components/add-new-post/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useDispatch, useRegistry, useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { serialize, synchronizeBlocksWithTemplate } from '@wordpress/blocks';\n\nexport default function AddNewPostModal( { postType, onSave, onClose } ) {\n\tconst labels = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( postType )?.labels,\n\t\t[ postType ]\n\t);\n\tconst [ isCreatingPost, setIsCreatingPost ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { resolveSelect } = useRegistry();\n\n\tasync function createPost( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isCreatingPost ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsCreatingPost( true );\n\t\ttry {\n\t\t\tconst postTypeObject =\n\t\t\t\tawait resolveSelect( coreStore ).getPostType( postType );\n\t\t\tconst newPage = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\tstatus: 'draft',\n\t\t\t\t\ttitle,\n\t\t\t\t\tslug: title || __( 'No title' ),\n\t\t\t\t\tcontent:\n\t\t\t\t\t\t!! postTypeObject.template &&\n\t\t\t\t\t\tpostTypeObject.template.length\n\t\t\t\t\t\t\t? serialize(\n\t\t\t\t\t\t\t\t\tsynchronizeBlocksWithTemplate(\n\t\t\t\t\t\t\t\t\t\t[],\n\t\t\t\t\t\t\t\t\t\tpostTypeObject.template\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tonSave( newPage );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newPage.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the item.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsCreatingPost( false );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={\n\t\t\t\t// translators: %s: post type singular_name label e.g: \"Page\".\n\t\t\t\tsprintf( __( 'Draft new: %s' ), labels?.singular_name )\n\t\t\t}\n\t\t\tonRequestClose={ onClose }\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\tsize=\"small\"\n\t\t>\n\t\t\t<form onSubmit={ createPost }>\n\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\tplaceholder={ __( 'No title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack spacing={ 2 } justify=\"end\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tisBusy={ isCreatingPost }\n\t\t\t\t\t\t\taria-disabled={ isCreatingPost }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create draft' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -157,7 +157,7 @@ function NewTemplateModal({
157
157
  canvas: 'edit'
158
158
  });
159
159
  createSuccessNotice(sprintf(
160
- // translators: %s: Title of the created template e.g: "Category".
160
+ // translators: %s: Title of the created post or template, e.g: "Hello world".
161
161
  __('"%s" successfully created.'), decodeEntities(newTemplate.title?.rendered || title)), {
162
162
  type: 'snackbar'
163
163
  });
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","Button","Modal","__experimentalGrid","Grid","__experimentalText","Text","__experimentalVStack","VStack","Flex","Icon","decodeEntities","useState","memo","useSelect","useDispatch","store","coreStore","useViewportMatch","archive","blockMeta","calendar","category","commentAuthorAvatar","edit","home","layout","list","media","notFound","page","pin","verse","search","tag","__","sprintf","noticesStore","privateApis","routerPrivateApis","TEMPLATE_POST_TYPE","AddCustomTemplateModalContent","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModalContent","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useHistory","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","TemplateListItem","title","direction","className","description","icon","onClick","children","__next40pxDefaultSize","label","showTooltip","as","spacing","align","justify","style","width","alignment","weight","lineHeight","modalContentMap","templatesList","customTemplate","customGenericTemplate","NewTemplateModal","onClose","modalContent","setModalContent","entityForSuggestions","setEntityForSuggestions","isSubmitting","setIsSubmitting","missingTemplates","useMissingTemplates","history","saveEntityRecord","createErrorNotice","createSuccessNotice","isMobile","homeUrl","select","getEntityRecord","TEMPLATE_SHORT_DESCRIPTIONS","Date","getFullYear","createTemplate","template","isWPSuggestion","slug","newTemplate","toString","status","is_wp_suggestion","throwOnError","push","postId","id","postType","canvas","rendered","type","error","errorMessage","message","code","onModalClose","modalTitle","labels","singular_name","onRequestClose","overlayClassName","undefined","columns","gap","map","onSelect","NewTemplate","showModal","setShowModal","getPostType","variant","add_new_item","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"sources":["@wordpress/edit-site/src/components/add-new-template/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalGrid as Grid,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tIcon,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, memo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tarchive,\n\tblockMeta,\n\tcalendar,\n\tcategory,\n\tcommentAuthorAvatar,\n\tedit,\n\thome,\n\tlayout,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tpin,\n\tverse,\n\tsearch,\n\ttag,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModalContent from './add-custom-template-modal-content';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModalContent from './add-custom-generic-template-modal-content';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'home',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\thome: verse,\n\tsingle: pin,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: commentAuthorAvatar,\n\ttaxonomy: blockMeta,\n\tdate: calendar,\n\ttag,\n\tattachment: media,\n};\n\nfunction TemplateListItem( {\n\ttitle,\n\tdirection,\n\tclassName,\n\tdescription,\n\ticon,\n\tonClick,\n\tchildren,\n} ) {\n\treturn (\n\t\t<Button\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName={ className }\n\t\t\tonClick={ onClick }\n\t\t\tlabel={ description }\n\t\t\tshowTooltip={ !! description }\n\t\t>\n\t\t\t<Flex\n\t\t\t\tas=\"span\"\n\t\t\t\tspacing={ 2 }\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tstyle={ { width: '100%' } }\n\t\t\t\tdirection={ direction }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-add-new-template__template-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t\t<VStack\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-name\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 0 }\n\t\t\t\t>\n\t\t\t\t\t<Text\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t>\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ children }\n\t\t\t\t</VStack>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nconst modalContentMap = {\n\ttemplatesList: 1,\n\tcustomTemplate: 2,\n\tcustomGenericTemplate: 3,\n};\n\nfunction NewTemplateModal( { onClose } ) {\n\tconst [ modalContent, setModalContent ] = useState(\n\t\tmodalContentMap.templatesList\n\t);\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst missingTemplates = useMissingTemplates( setEntityForSuggestions, () =>\n\t\tsetModalContent( modalContentMap.customTemplate )\n\t);\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// Site index.\n\t\treturn select( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t?.home;\n\t}, [] );\n\n\tconst TEMPLATE_SHORT_DESCRIPTIONS = {\n\t\t'front-page': homeUrl,\n\t\tdate: sprintf(\n\t\t\t// translators: %s: The homepage url.\n\t\t\t__( 'E.g. %s' ),\n\t\t\thomeUrl + '/' + new Date().getFullYear()\n\t\t),\n\t};\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsSubmitting( true );\n\t\ttry {\n\t\t\tconst { title, description, slug } = template;\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: TEMPLATE_POST_TYPE,\n\t\t\t\tcanvas: 'edit',\n\t\t\t} );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created template e.g: \"Category\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newTemplate.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\tconst onModalClose = () => {\n\t\tonClose();\n\t\tsetModalContent( modalContentMap.templatesList );\n\t};\n\n\tlet modalTitle = __( 'Add template' );\n\tif ( modalContent === modalContentMap.customTemplate ) {\n\t\tmodalTitle = sprintf(\n\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t__( 'Add template: %s' ),\n\t\t\tentityForSuggestions.labels.singular_name\n\t\t);\n\t} else if ( modalContent === modalContentMap.customGenericTemplate ) {\n\t\tmodalTitle = __( 'Create custom template' );\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle }\n\t\t\tclassName={ clsx( 'edit-site-add-new-template__modal', {\n\t\t\t\t'edit-site-add-new-template__modal_template_list':\n\t\t\t\t\tmodalContent === modalContentMap.templatesList,\n\t\t\t\t'edit-site-custom-template-modal':\n\t\t\t\t\tmodalContent === modalContentMap.customTemplate,\n\t\t\t} ) }\n\t\t\tonRequestClose={ onModalClose }\n\t\t\toverlayClassName={\n\t\t\t\tmodalContent === modalContentMap.customGenericTemplate\n\t\t\t\t\t? 'edit-site-custom-generic-template__modal'\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t>\n\t\t\t{ modalContent === modalContentMap.templatesList && (\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns={ isMobile ? 2 : 3 }\n\t\t\t\t\tgap={ 4 }\n\t\t\t\t\talign=\"flex-start\"\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-list__contents\"\n\t\t\t\t>\n\t\t\t\t\t<Flex className=\"edit-site-add-new-template__template-list__prompt\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select what the new template should apply to:'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\tconst { title, slug, onClick } = template;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\t\t\tclassName=\"edit-site-add-new-template__template-button\"\n\t\t\t\t\t\t\t\tdescription={\n\t\t\t\t\t\t\t\t\tTEMPLATE_SHORT_DESCRIPTIONS[ slug ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ticon={ TEMPLATE_ICONS[ slug ] || layout }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\ttitle={ __( 'Custom template' ) }\n\t\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\t\tclassName=\"edit-site-add-new-template__custom-template-button\"\n\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tsetModalContent(\n\t\t\t\t\t\t\t\tmodalContentMap.customGenericTemplate\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'A custom template can be manually applied to any post or page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</TemplateListItem>\n\t\t\t\t</Grid>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customTemplate && (\n\t\t\t\t<AddCustomTemplateModalContent\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customGenericTemplate && (\n\t\t\t\t<AddCustomGenericTemplateModalContent\n\t\t\t\t\tonClose={ onModalClose }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Modal>\n\t);\n}\n\nfunction NewTemplate() {\n\tconst [ showModal, setShowModal ] = useState( false );\n\n\tconst { postType } = useSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\n\t\treturn {\n\t\t\tpostType: getPostType( TEMPLATE_POST_TYPE ),\n\t\t};\n\t}, [] );\n\n\tif ( ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tonClick={ () => setShowModal( true ) }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ showModal && (\n\t\t\t\t<NewTemplateModal onClose={ () => setShowModal( false ) } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates( setEntityForSuggestions, onClick ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tonClick?.();\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n\nexport default memo( NewTemplate );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","Button","Modal","__experimentalGrid","Grid","__experimentalText","Text","__experimentalVStack","VStack","Flex","Icon","decodeEntities","useState","memo","useSelect","useDispatch","store","coreStore","useViewportMatch","archive","blockMeta","calendar","category","commentAuthorAvatar","edit","home","layout","list","media","notFound","page","pin","verse","search","tag","__","sprintf","noticesStore","privateApis","routerPrivateApis","TEMPLATE_POST_TYPE","AddCustomTemplateModalContent","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModalContent","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useHistory","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","TemplateListItem","title","direction","className","description","icon","onClick","children","__next40pxDefaultSize","label","showTooltip","as","spacing","align","justify","style","width","alignment","weight","lineHeight","modalContentMap","templatesList","customTemplate","customGenericTemplate","NewTemplateModal","onClose","modalContent","setModalContent","entityForSuggestions","setEntityForSuggestions","isSubmitting","setIsSubmitting","missingTemplates","useMissingTemplates","history","saveEntityRecord","createErrorNotice","createSuccessNotice","isMobile","homeUrl","select","getEntityRecord","TEMPLATE_SHORT_DESCRIPTIONS","Date","getFullYear","createTemplate","template","isWPSuggestion","slug","newTemplate","toString","status","is_wp_suggestion","throwOnError","push","postId","id","postType","canvas","rendered","type","error","errorMessage","message","code","onModalClose","modalTitle","labels","singular_name","onRequestClose","overlayClassName","undefined","columns","gap","map","onSelect","NewTemplate","showModal","setShowModal","getPostType","variant","add_new_item","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"sources":["@wordpress/edit-site/src/components/add-new-template/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalGrid as Grid,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tIcon,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, memo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tarchive,\n\tblockMeta,\n\tcalendar,\n\tcategory,\n\tcommentAuthorAvatar,\n\tedit,\n\thome,\n\tlayout,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tpin,\n\tverse,\n\tsearch,\n\ttag,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModalContent from './add-custom-template-modal-content';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModalContent from './add-custom-generic-template-modal-content';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'home',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\thome: verse,\n\tsingle: pin,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: commentAuthorAvatar,\n\ttaxonomy: blockMeta,\n\tdate: calendar,\n\ttag,\n\tattachment: media,\n};\n\nfunction TemplateListItem( {\n\ttitle,\n\tdirection,\n\tclassName,\n\tdescription,\n\ticon,\n\tonClick,\n\tchildren,\n} ) {\n\treturn (\n\t\t<Button\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName={ className }\n\t\t\tonClick={ onClick }\n\t\t\tlabel={ description }\n\t\t\tshowTooltip={ !! description }\n\t\t>\n\t\t\t<Flex\n\t\t\t\tas=\"span\"\n\t\t\t\tspacing={ 2 }\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tstyle={ { width: '100%' } }\n\t\t\t\tdirection={ direction }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-add-new-template__template-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t\t<VStack\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-name\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 0 }\n\t\t\t\t>\n\t\t\t\t\t<Text\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t>\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ children }\n\t\t\t\t</VStack>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nconst modalContentMap = {\n\ttemplatesList: 1,\n\tcustomTemplate: 2,\n\tcustomGenericTemplate: 3,\n};\n\nfunction NewTemplateModal( { onClose } ) {\n\tconst [ modalContent, setModalContent ] = useState(\n\t\tmodalContentMap.templatesList\n\t);\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst missingTemplates = useMissingTemplates( setEntityForSuggestions, () =>\n\t\tsetModalContent( modalContentMap.customTemplate )\n\t);\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// Site index.\n\t\treturn select( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t?.home;\n\t}, [] );\n\n\tconst TEMPLATE_SHORT_DESCRIPTIONS = {\n\t\t'front-page': homeUrl,\n\t\tdate: sprintf(\n\t\t\t// translators: %s: The homepage url.\n\t\t\t__( 'E.g. %s' ),\n\t\t\thomeUrl + '/' + new Date().getFullYear()\n\t\t),\n\t};\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsSubmitting( true );\n\t\ttry {\n\t\t\tconst { title, description, slug } = template;\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: TEMPLATE_POST_TYPE,\n\t\t\t\tcanvas: 'edit',\n\t\t\t} );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newTemplate.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\tconst onModalClose = () => {\n\t\tonClose();\n\t\tsetModalContent( modalContentMap.templatesList );\n\t};\n\n\tlet modalTitle = __( 'Add template' );\n\tif ( modalContent === modalContentMap.customTemplate ) {\n\t\tmodalTitle = sprintf(\n\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t__( 'Add template: %s' ),\n\t\t\tentityForSuggestions.labels.singular_name\n\t\t);\n\t} else if ( modalContent === modalContentMap.customGenericTemplate ) {\n\t\tmodalTitle = __( 'Create custom template' );\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle }\n\t\t\tclassName={ clsx( 'edit-site-add-new-template__modal', {\n\t\t\t\t'edit-site-add-new-template__modal_template_list':\n\t\t\t\t\tmodalContent === modalContentMap.templatesList,\n\t\t\t\t'edit-site-custom-template-modal':\n\t\t\t\t\tmodalContent === modalContentMap.customTemplate,\n\t\t\t} ) }\n\t\t\tonRequestClose={ onModalClose }\n\t\t\toverlayClassName={\n\t\t\t\tmodalContent === modalContentMap.customGenericTemplate\n\t\t\t\t\t? 'edit-site-custom-generic-template__modal'\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t>\n\t\t\t{ modalContent === modalContentMap.templatesList && (\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns={ isMobile ? 2 : 3 }\n\t\t\t\t\tgap={ 4 }\n\t\t\t\t\talign=\"flex-start\"\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-list__contents\"\n\t\t\t\t>\n\t\t\t\t\t<Flex className=\"edit-site-add-new-template__template-list__prompt\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select what the new template should apply to:'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\tconst { title, slug, onClick } = template;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\t\t\tclassName=\"edit-site-add-new-template__template-button\"\n\t\t\t\t\t\t\t\tdescription={\n\t\t\t\t\t\t\t\t\tTEMPLATE_SHORT_DESCRIPTIONS[ slug ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ticon={ TEMPLATE_ICONS[ slug ] || layout }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\ttitle={ __( 'Custom template' ) }\n\t\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\t\tclassName=\"edit-site-add-new-template__custom-template-button\"\n\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tsetModalContent(\n\t\t\t\t\t\t\t\tmodalContentMap.customGenericTemplate\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'A custom template can be manually applied to any post or page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</TemplateListItem>\n\t\t\t\t</Grid>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customTemplate && (\n\t\t\t\t<AddCustomTemplateModalContent\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customGenericTemplate && (\n\t\t\t\t<AddCustomGenericTemplateModalContent\n\t\t\t\t\tonClose={ onModalClose }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Modal>\n\t);\n}\n\nfunction NewTemplate() {\n\tconst [ showModal, setShowModal ] = useState( false );\n\n\tconst { postType } = useSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\n\t\treturn {\n\t\t\tpostType: getPostType( TEMPLATE_POST_TYPE ),\n\t\t};\n\t}, [] );\n\n\tif ( ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tonClick={ () => setShowModal( true ) }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ showModal && (\n\t\t\t\t<NewTemplateModal onClose={ () => setShowModal( false ) } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates( setEntityForSuggestions, onClick ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tonClick?.();\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n\nexport default memo( NewTemplate );\n"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@ import { store as coreStore } from '@wordpress/core-data';
6
6
  import { store as editorStore } from '@wordpress/editor';
7
7
  import { decodeEntities } from '@wordpress/html-entities';
8
8
  import { useMemo, useCallback } from '@wordpress/element';
9
- import { __, sprintf } from '@wordpress/i18n';
9
+ import { __, _x, sprintf } from '@wordpress/i18n';
10
10
  import { blockMeta, post, archive } from '@wordpress/icons';
11
11
 
12
12
  /**
@@ -182,10 +182,10 @@ export const usePostTypeMenuItems = onClickMenuItem => {
182
182
  __('Single item: %s'), labels.singular_name);
183
183
  if (_needsUniqueIdentifier) {
184
184
  menuItemTitle = labels.template_name ? sprintf(
185
- // translators: %1s: Name of the template e.g: "Single Item: Post"; %2s: Slug of the post type e.g: "book".
186
- __('%1$s (%2$s)'), labels.template_name, slug) : sprintf(
187
- // translators: %1s: Name of the post type e.g: "Post"; %2s: Slug of the post type e.g: "book".
188
- __('Single item: %1$s (%2$s)'), labels.singular_name, slug);
185
+ // translators: 1: Name of the template e.g: "Single Item: Post". 2: Slug of the post type e.g: "book".
186
+ _x('%1$s (%2$s)', 'post type menu label'), labels.template_name, slug) : sprintf(
187
+ // translators: 1: Name of the post type e.g: "Post". 2: Slug of the post type e.g: "book".
188
+ _x('Single item: %1$s (%2$s)', 'post type menu label'), labels.singular_name, slug);
189
189
  }
190
190
  const menuItem = defaultTemplateType ? {
191
191
  ...defaultTemplateType,
@@ -315,10 +315,10 @@ export const useTaxonomiesMenuItems = onClickMenuItem => {
315
315
  let menuItemTitle = labels.template_name || labels.singular_name;
316
316
  if (_needsUniqueIdentifier) {
317
317
  menuItemTitle = labels.template_name ? sprintf(
318
- // translators: %1s: Name of the template e.g: "Products by Category"; %2s: Slug of the taxonomy e.g: "product_cat".
319
- __('%1$s (%2$s)'), labels.template_name, slug) : sprintf(
320
- // translators: %1s: Name of the taxonomy e.g: "Category"; %2s: Slug of the taxonomy e.g: "product_cat".
321
- __('%1$s (%2$s)'), labels.singular_name, slug);
318
+ // translators: 1: Name of the template e.g: "Products by Category". 2s: Slug of the taxonomy e.g: "product_cat".
319
+ _x('%1$s (%2$s)', 'taxonomy template menu label'), labels.template_name, slug) : sprintf(
320
+ // translators: 1: Name of the taxonomy e.g: "Category". 2: Slug of the taxonomy e.g: "product_cat".
321
+ _x('%1$s (%2$s)', 'taxonomy menu label'), labels.singular_name, slug);
322
322
  }
323
323
  const menuItem = defaultTemplateType ? {
324
324
  ...defaultTemplateType,