@wordpress/edit-site 5.12.9 → 5.12.10

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 (66) hide show
  1. package/build/components/add-new-page/index.js +1 -6
  2. package/build/components/add-new-page/index.js.map +1 -1
  3. package/build/components/add-new-pattern/index.js +10 -2
  4. package/build/components/add-new-pattern/index.js.map +1 -1
  5. package/build/components/editor/index.js +10 -1
  6. package/build/components/editor/index.js.map +1 -1
  7. package/build/components/layout/index.js +25 -22
  8. package/build/components/layout/index.js.map +1 -1
  9. package/build/components/page-actions/index.js +2 -2
  10. package/build/components/page-actions/index.js.map +1 -1
  11. package/build/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +8 -15
  12. package/build/components/page-actions/trash-page-menu-item.js.map +1 -0
  13. package/build/components/page-patterns/grid-item.js +1 -1
  14. package/build/components/page-patterns/grid-item.js.map +1 -1
  15. package/build/components/page-patterns/patterns-list.js +1 -1
  16. package/build/components/page-patterns/patterns-list.js.map +1 -1
  17. package/build/components/page-patterns/use-patterns.js +12 -4
  18. package/build/components/page-patterns/use-patterns.js.map +1 -1
  19. package/build/components/sidebar-edit-mode/page-panels/page-status.js +1 -1
  20. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  21. package/build/components/sidebar-navigation-screen-patterns/index.js +10 -14
  22. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  23. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +11 -1
  24. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  25. package/build-module/components/add-new-page/index.js +1 -6
  26. package/build-module/components/add-new-page/index.js.map +1 -1
  27. package/build-module/components/add-new-pattern/index.js +8 -2
  28. package/build-module/components/add-new-pattern/index.js.map +1 -1
  29. package/build-module/components/editor/index.js +10 -1
  30. package/build-module/components/editor/index.js.map +1 -1
  31. package/build-module/components/layout/index.js +25 -22
  32. package/build-module/components/layout/index.js.map +1 -1
  33. package/build-module/components/page-actions/index.js +2 -2
  34. package/build-module/components/page-actions/index.js.map +1 -1
  35. package/build-module/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +8 -16
  36. package/build-module/components/page-actions/trash-page-menu-item.js.map +1 -0
  37. package/build-module/components/page-patterns/grid-item.js +1 -1
  38. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  39. package/build-module/components/page-patterns/patterns-list.js +1 -1
  40. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  41. package/build-module/components/page-patterns/use-patterns.js +12 -4
  42. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  43. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +1 -1
  44. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  45. package/build-module/components/sidebar-navigation-screen-patterns/index.js +10 -14
  46. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  47. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +10 -1
  48. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  49. package/build-style/style-rtl.css +5 -5
  50. package/build-style/style.css +5 -5
  51. package/package.json +21 -21
  52. package/src/components/add-new-page/index.js +0 -3
  53. package/src/components/add-new-pattern/index.js +8 -2
  54. package/src/components/editor/index.js +15 -1
  55. package/src/components/layout/index.js +38 -43
  56. package/src/components/page-actions/index.js +2 -2
  57. package/src/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +9 -21
  58. package/src/components/page-patterns/grid-item.js +1 -1
  59. package/src/components/page-patterns/patterns-list.js +12 -5
  60. package/src/components/page-patterns/use-patterns.js +11 -5
  61. package/src/components/sidebar-edit-mode/page-panels/page-status.js +1 -1
  62. package/src/components/sidebar-navigation-screen-patterns/index.js +10 -13
  63. package/src/components/sidebar-navigation-screen-patterns/style.scss +5 -7
  64. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +9 -0
  65. package/build/components/page-actions/delete-page-menu-item.js.map +0 -1
  66. package/build-module/components/page-actions/delete-page-menu-item.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"names":["parse","useSelect","store","coreStore","decodeEntities","CORE_PATTERN_SOURCES","PATTERNS","SYNC_TYPES","TEMPLATE_PARTS","USER_PATTERNS","filterOutDuplicatesByName","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","categories","area","description","isCustom","source","keywords","id","name","title","rendered","type","templatePartHasCategory","item","category","selectTemplatePartsAsPatterns","select","categoryId","search","getEntityRecords","getIsResolving","query","per_page","rawTemplateParts","templateParts","map","isResolving","patterns","hasCategory","selectThemePatterns","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","includes","currentCategory","reusableBlockToPattern","reusableBlock","wp_pattern","syncStatus","wp_pattern_sync_status","full","selectUserPatterns","records","record","usePatterns","categoryType"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tPATTERNS,\n\tSYNC_TYPES,\n\tTEMPLATE_PARTS,\n\tUSER_PATTERNS,\n\tfilterOutDuplicatesByName,\n} from './utils';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === 'custom',\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst templatePartHasCategory = ( item, category ) =>\n\titem.templatePart.area === category;\n\nconst selectTemplatePartsAsPatterns = (\n\tselect,\n\t{ categoryId, search = '' } = {}\n) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\tconst query = { per_page: -1 };\n\tconst rawTemplateParts =\n\t\tgetEntityRecords( 'postType', TEMPLATE_PARTS, query ) ??\n\t\tEMPTY_PATTERN_LIST;\n\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\ttemplatePartToPattern( templatePart )\n\t);\n\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\t'wp_template_part',\n\t\tquery,\n\t] );\n\n\tconst patterns = searchItems( templateParts, search, {\n\t\tcategoryId,\n\t\thasCategory: templatePartHasCategory,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nconst selectThemePatterns = ( select, { categoryId, search = '' } = {} ) => {\n\tconst { getSettings } = unlock( select( editSiteStore ) );\n\tconst settings = getSettings();\n\tconst blockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\tsettings.__experimentalBlockPatterns;\n\n\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\tlet patterns = [\n\t\t...( blockPatterns || [] ),\n\t\t...( restBlockPatterns || [] ),\n\t]\n\t\t.filter(\n\t\t\t( pattern ) => ! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t)\n\t\t.filter( filterOutDuplicatesByName )\n\t\t.map( ( pattern ) => ( {\n\t\t\t...pattern,\n\t\t\tkeywords: pattern.keywords || [],\n\t\t\ttype: 'pattern',\n\t\t\tblocks: parse( pattern.content ),\n\t\t} ) );\n\n\tpatterns = searchItems( patterns, search, {\n\t\tcategoryId,\n\t\thasCategory: ( item, currentCategory ) =>\n\t\t\titem.categories?.includes( currentCategory ),\n\t} );\n\n\treturn { patterns, isResolving: false };\n};\n\nconst reusableBlockToPattern = ( reusableBlock ) => ( {\n\tblocks: parse( reusableBlock.content.raw ),\n\tcategories: reusableBlock.wp_pattern,\n\tid: reusableBlock.id,\n\tname: reusableBlock.slug,\n\tsyncStatus: reusableBlock.wp_pattern_sync_status || SYNC_TYPES.full,\n\ttitle: reusableBlock.title.raw,\n\ttype: reusableBlock.type,\n\treusableBlock,\n} );\n\nconst selectUserPatterns = ( select, { search = '', syncStatus } = {} ) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\n\tconst query = { per_page: -1 };\n\tconst records = getEntityRecords( 'postType', USER_PATTERNS, query );\n\n\tlet patterns = records\n\t\t? records.map( ( record ) => reusableBlockToPattern( record ) )\n\t\t: EMPTY_PATTERN_LIST;\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\tUSER_PATTERNS,\n\t\tquery,\n\t] );\n\n\tif ( syncStatus ) {\n\t\tpatterns = patterns.filter(\n\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t);\n\t}\n\n\tpatterns = searchItems( patterns, search, {\n\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t// catch-all category for user created patterns, so it has\n\t\t// to be in the category.\n\t\thasCategory: () => true,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus }\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PARTS ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns( select, {\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch,\n\t\t\t\t} );\n\t\t\t} else if ( categoryType === PATTERNS ) {\n\t\t\t\treturn selectThemePatterns( select, { categoryId, search } );\n\t\t\t} else if ( categoryType === USER_PATTERNS ) {\n\t\t\t\treturn selectUserPatterns( select, { search, syncStatus } );\n\t\t\t}\n\t\t\treturn { patterns: EMPTY_PATTERN_LIST, isResolving: false };\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"names":["parse","useSelect","store","coreStore","decodeEntities","CORE_PATTERN_SOURCES","PATTERNS","SYNC_TYPES","TEMPLATE_PARTS","USER_PATTERNS","filterOutDuplicatesByName","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","categories","area","description","isCustom","source","keywords","id","name","title","rendered","type","templatePartHasCategory","item","category","selectTemplatePartsAsPatterns","select","categoryId","search","getEntityRecords","getIsResolving","query","per_page","rawTemplateParts","templateParts","map","isResolving","patterns","hasCategory","selectThemePatterns","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","includes","currentCategory","hasOwnProperty","reusableBlockToPattern","reusableBlock","wp_pattern","syncStatus","wp_pattern_sync_status","full","selectUserPatterns","records","record","usePatterns","categoryType"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAT,QAAsB,mBAAtB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,cAAT,QAA+B,0BAA/B;AAEA;AACA;AACA;;AACA,SACCC,oBADD,EAECC,QAFD,EAGCC,UAHD,EAICC,cAJD,EAKCC,aALD,EAMCC,yBAND,QAOO,SAPP;AAQA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,WAAT,QAA4B,gBAA5B;AACA,SAASV,KAAK,IAAIW,aAAlB,QAAuC,aAAvC;AAEA,MAAMC,kBAAkB,GAAG,EAA3B;;AAEA,MAAMC,oBAAoB,GAAG,CAAEC,KAAF,EAASC,IAAT,KAC5BD,KAAK,IAAIC,IAAT,GAAgBD,KAAK,GAAG,IAAR,GAAeC,IAA/B,GAAsC,IADvC;;AAGA,MAAMC,qBAAqB,GAAKC,YAAF,KAAsB;AACnDC,EAAAA,MAAM,EAAEpB,KAAK,CAAEmB,YAAY,CAACE,OAAb,CAAqBC,GAAvB,CADsC;AAEnDC,EAAAA,UAAU,EAAE,CAAEJ,YAAY,CAACK,IAAf,CAFuC;AAGnDC,EAAAA,WAAW,EAAEN,YAAY,CAACM,WAAb,IAA4B,EAHU;AAInDC,EAAAA,QAAQ,EAAEP,YAAY,CAACQ,MAAb,KAAwB,QAJiB;AAKnDC,EAAAA,QAAQ,EAAET,YAAY,CAACS,QAAb,IAAyB,EALgB;AAMnDC,EAAAA,EAAE,EAAEd,oBAAoB,CAAEI,YAAY,CAACH,KAAf,EAAsBG,YAAY,CAACF,IAAnC,CAN2B;AAOnDa,EAAAA,IAAI,EAAEf,oBAAoB,CAAEI,YAAY,CAACH,KAAf,EAAsBG,YAAY,CAACF,IAAnC,CAPyB;AAQnDc,EAAAA,KAAK,EAAE3B,cAAc,CAAEe,YAAY,CAACY,KAAb,CAAmBC,QAArB,CAR8B;AASnDC,EAAAA,IAAI,EAAEd,YAAY,CAACc,IATgC;AAUnDd,EAAAA;AAVmD,CAAtB,CAA9B;;AAaA,MAAMe,uBAAuB,GAAG,CAAEC,IAAF,EAAQC,QAAR,KAC/BD,IAAI,CAAChB,YAAL,CAAkBK,IAAlB,KAA2BY,QAD5B;;AAGA,MAAMC,6BAA6B,GAAG,CACrCC,MADqC,EAErC;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,MAAM,GAAG;AAAvB,IAA8B,EAFO,KAGjC;AAAA;;AACJ,QAAM;AAAEC,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAuCJ,MAAM,CAAEnC,SAAF,CAAnD;AACA,QAAMwC,KAAK,GAAG;AAAEC,IAAAA,QAAQ,EAAE,CAAC;AAAb,GAAd;AACA,QAAMC,gBAAgB,wBACrBJ,gBAAgB,CAAE,UAAF,EAAcjC,cAAd,EAA8BmC,KAA9B,CADK,iEAErB7B,kBAFD;AAGA,QAAMgC,aAAa,GAAGD,gBAAgB,CAACE,GAAjB,CAAwB5B,YAAF,IAC3CD,qBAAqB,CAAEC,YAAF,CADA,CAAtB;AAIA,QAAM6B,WAAW,GAAGN,cAAc,CAAE,kBAAF,EAAsB,CACvD,UADuD,EAEvD,kBAFuD,EAGvDC,KAHuD,CAAtB,CAAlC;AAMA,QAAMM,QAAQ,GAAGrC,WAAW,CAAEkC,aAAF,EAAiBN,MAAjB,EAAyB;AACpDD,IAAAA,UADoD;AAEpDW,IAAAA,WAAW,EAAEhB;AAFuC,GAAzB,CAA5B;AAKA,SAAO;AAAEe,IAAAA,QAAF;AAAYD,IAAAA;AAAZ,GAAP;AACA,CAzBD;;AA2BA,MAAMG,mBAAmB,GAAG,CAAEb,MAAF,EAAU;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,MAAM,GAAG;AAAvB,IAA8B,EAAxC,KAAgD;AAAA;;AAC3E,QAAM;AAAEY,IAAAA;AAAF,MAAkBzC,MAAM,CAAE2B,MAAM,CAAEzB,aAAF,CAAR,CAA9B;AACA,QAAMwC,QAAQ,GAAGD,WAAW,EAA5B;AACA,QAAME,aAAa,4BAClBD,QAAQ,CAACE,qCADS,yEAElBF,QAAQ,CAACG,2BAFV;AAIA,QAAMC,iBAAiB,GAAGnB,MAAM,CAAEnC,SAAF,CAAN,CAAoBuD,gBAApB,EAA1B;AAEA,MAAIT,QAAQ,GAAG,CACd,IAAKK,aAAa,IAAI,EAAtB,CADc,EAEd,IAAKG,iBAAiB,IAAI,EAA1B,CAFc,EAIbE,MAJa,CAKXC,OAAF,IAAe,CAAEvD,oBAAoB,CAACwD,QAArB,CAA+BD,OAAO,CAACjC,MAAvC,CALJ,EAObgC,MAPa,CAOLjD,yBAPK,EAQbqC,GARa,CAQNa,OAAF,KAAiB,EACtB,GAAGA,OADmB;AAEtBhC,IAAAA,QAAQ,EAAEgC,OAAO,CAAChC,QAAR,IAAoB,EAFR;AAGtBK,IAAAA,IAAI,EAAE,SAHgB;AAItBb,IAAAA,MAAM,EAAEpB,KAAK,CAAE4D,OAAO,CAACvC,OAAV;AAJS,GAAjB,CARQ,CAAf;;AAeA,MAAKkB,UAAL,EAAkB;AACjBU,IAAAA,QAAQ,GAAGrC,WAAW,CAAEqC,QAAF,EAAYT,MAAZ,EAAoB;AACzCD,MAAAA,UADyC;AAEzCW,MAAAA,WAAW,EAAE,CAAEf,IAAF,EAAQ2B,eAAR,KACZ3B,IAAI,CAACZ,UAAL,EAAiBsC,QAAjB,CAA2BC,eAA3B;AAHwC,KAApB,CAAtB;AAKA,GAND,MAMO;AACNb,IAAAA,QAAQ,GAAGrC,WAAW,CAAEqC,QAAF,EAAYT,MAAZ,EAAoB;AACzCU,MAAAA,WAAW,EAAIf,IAAF,IAAY,CAAEA,IAAI,CAAC4B,cAAL,CAAqB,YAArB;AADc,KAApB,CAAtB;AAGA;;AAED,SAAO;AAAEd,IAAAA,QAAF;AAAYD,IAAAA,WAAW,EAAE;AAAzB,GAAP;AACA,CArCD;;AAuCA,MAAMgB,sBAAsB,GAAKC,aAAF,KAAuB;AACrD7C,EAAAA,MAAM,EAAEpB,KAAK,CAAEiE,aAAa,CAAC5C,OAAd,CAAsBC,GAAxB,CADwC;AAErDC,EAAAA,UAAU,EAAE0C,aAAa,CAACC,UAF2B;AAGrDrC,EAAAA,EAAE,EAAEoC,aAAa,CAACpC,EAHmC;AAIrDC,EAAAA,IAAI,EAAEmC,aAAa,CAAChD,IAJiC;AAKrDkD,EAAAA,UAAU,EAAEF,aAAa,CAACG,sBAAd,IAAwC7D,UAAU,CAAC8D,IALV;AAMrDtC,EAAAA,KAAK,EAAEkC,aAAa,CAAClC,KAAd,CAAoBT,GAN0B;AAOrDW,EAAAA,IAAI,EAAEgC,aAAa,CAAChC,IAPiC;AAQrDgC,EAAAA;AARqD,CAAvB,CAA/B;;AAWA,MAAMK,kBAAkB,GAAG,CAAEhC,MAAF,EAAU;AAAEE,EAAAA,MAAM,GAAG,EAAX;AAAe2B,EAAAA;AAAf,IAA8B,EAAxC,KAAgD;AAC1E,QAAM;AAAE1B,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAuCJ,MAAM,CAAEnC,SAAF,CAAnD;AAEA,QAAMwC,KAAK,GAAG;AAAEC,IAAAA,QAAQ,EAAE,CAAC;AAAb,GAAd;AACA,QAAM2B,OAAO,GAAG9B,gBAAgB,CAAE,UAAF,EAAchC,aAAd,EAA6BkC,KAA7B,CAAhC;AAEA,MAAIM,QAAQ,GAAGsB,OAAO,GACnBA,OAAO,CAACxB,GAAR,CAAeyB,MAAF,IAAcR,sBAAsB,CAAEQ,MAAF,CAAjD,CADmB,GAEnB1D,kBAFH;AAGA,QAAMkC,WAAW,GAAGN,cAAc,CAAE,kBAAF,EAAsB,CACvD,UADuD,EAEvDjC,aAFuD,EAGvDkC,KAHuD,CAAtB,CAAlC;;AAMA,MAAKwB,UAAL,EAAkB;AACjBlB,IAAAA,QAAQ,GAAGA,QAAQ,CAACU,MAAT,CACRC,OAAF,IAAeA,OAAO,CAACO,UAAR,KAAuBA,UAD5B,CAAX;AAGA;;AAEDlB,EAAAA,QAAQ,GAAGrC,WAAW,CAAEqC,QAAF,EAAYT,MAAZ,EAAoB;AACzC;AACA;AACA;AACAU,IAAAA,WAAW,EAAE,MAAM;AAJsB,GAApB,CAAtB;AAOA,SAAO;AAAED,IAAAA,QAAF;AAAYD,IAAAA;AAAZ,GAAP;AACA,CA7BD;;AA+BA,OAAO,MAAMyB,WAAW,GAAG,CAC1BC,YAD0B,EAE1BnC,UAF0B,EAG1B;AAAEC,EAAAA,MAAM,GAAG,EAAX;AAAe2B,EAAAA;AAAf,CAH0B,KAItB;AACJ,SAAOlE,SAAS,CACbqC,MAAF,IAAc;AACb,QAAKoC,YAAY,KAAKlE,cAAtB,EAAuC;AACtC,aAAO6B,6BAA6B,CAAEC,MAAF,EAAU;AAC7CC,QAAAA,UAD6C;AAE7CC,QAAAA;AAF6C,OAAV,CAApC;AAIA,KALD,MAKO,IAAKkC,YAAY,KAAKpE,QAAtB,EAAiC;AACvC,aAAO6C,mBAAmB,CAAEb,MAAF,EAAU;AAAEC,QAAAA,UAAF;AAAcC,QAAAA;AAAd,OAAV,CAA1B;AACA,KAFM,MAEA,IAAKkC,YAAY,KAAKjE,aAAtB,EAAsC;AAC5C,aAAO6D,kBAAkB,CAAEhC,MAAF,EAAU;AAAEE,QAAAA,MAAF;AAAU2B,QAAAA;AAAV,OAAV,CAAzB;AACA;;AACD,WAAO;AAAElB,MAAAA,QAAQ,EAAEnC,kBAAZ;AAAgCkC,MAAAA,WAAW,EAAE;AAA7C,KAAP;AACA,GAbc,EAcf,CAAET,UAAF,EAAcmC,YAAd,EAA4BlC,MAA5B,EAAoC2B,UAApC,CAde,CAAhB;AAgBA,CArBM;AAuBP,eAAeM,WAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tPATTERNS,\n\tSYNC_TYPES,\n\tTEMPLATE_PARTS,\n\tUSER_PATTERNS,\n\tfilterOutDuplicatesByName,\n} from './utils';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === 'custom',\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst templatePartHasCategory = ( item, category ) =>\n\titem.templatePart.area === category;\n\nconst selectTemplatePartsAsPatterns = (\n\tselect,\n\t{ categoryId, search = '' } = {}\n) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\tconst query = { per_page: -1 };\n\tconst rawTemplateParts =\n\t\tgetEntityRecords( 'postType', TEMPLATE_PARTS, query ) ??\n\t\tEMPTY_PATTERN_LIST;\n\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\ttemplatePartToPattern( templatePart )\n\t);\n\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\t'wp_template_part',\n\t\tquery,\n\t] );\n\n\tconst patterns = searchItems( templateParts, search, {\n\t\tcategoryId,\n\t\thasCategory: templatePartHasCategory,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nconst selectThemePatterns = ( select, { categoryId, search = '' } = {} ) => {\n\tconst { getSettings } = unlock( select( editSiteStore ) );\n\tconst settings = getSettings();\n\tconst blockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\tsettings.__experimentalBlockPatterns;\n\n\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\tlet patterns = [\n\t\t...( blockPatterns || [] ),\n\t\t...( restBlockPatterns || [] ),\n\t]\n\t\t.filter(\n\t\t\t( pattern ) => ! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t)\n\t\t.filter( filterOutDuplicatesByName )\n\t\t.map( ( pattern ) => ( {\n\t\t\t...pattern,\n\t\t\tkeywords: pattern.keywords || [],\n\t\t\ttype: 'pattern',\n\t\t\tblocks: parse( pattern.content ),\n\t\t} ) );\n\n\tif ( categoryId ) {\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t} );\n\t} else {\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t} );\n\t}\n\n\treturn { patterns, isResolving: false };\n};\n\nconst reusableBlockToPattern = ( reusableBlock ) => ( {\n\tblocks: parse( reusableBlock.content.raw ),\n\tcategories: reusableBlock.wp_pattern,\n\tid: reusableBlock.id,\n\tname: reusableBlock.slug,\n\tsyncStatus: reusableBlock.wp_pattern_sync_status || SYNC_TYPES.full,\n\ttitle: reusableBlock.title.raw,\n\ttype: reusableBlock.type,\n\treusableBlock,\n} );\n\nconst selectUserPatterns = ( select, { search = '', syncStatus } = {} ) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\n\tconst query = { per_page: -1 };\n\tconst records = getEntityRecords( 'postType', USER_PATTERNS, query );\n\n\tlet patterns = records\n\t\t? records.map( ( record ) => reusableBlockToPattern( record ) )\n\t\t: EMPTY_PATTERN_LIST;\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\tUSER_PATTERNS,\n\t\tquery,\n\t] );\n\n\tif ( syncStatus ) {\n\t\tpatterns = patterns.filter(\n\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t);\n\t}\n\n\tpatterns = searchItems( patterns, search, {\n\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t// catch-all category for user created patterns, so it has\n\t\t// to be in the category.\n\t\thasCategory: () => true,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus }\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PARTS ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns( select, {\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch,\n\t\t\t\t} );\n\t\t\t} else if ( categoryType === PATTERNS ) {\n\t\t\t\treturn selectThemePatterns( select, { categoryId, search } );\n\t\t\t} else if ( categoryType === USER_PATTERNS ) {\n\t\t\t\treturn selectUserPatterns( select, { search, syncStatus } );\n\t\t\t}\n\t\t\treturn { patterns: EMPTY_PATTERN_LIST, isResolving: false };\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"]}
@@ -169,7 +169,7 @@ export default function PageStatus({
169
169
  /* eslint-enable jsx-a11y/no-autofocus */
170
170
  ,
171
171
  placeholder: __('Enter a secure password'),
172
- type: "password"
172
+ type: "text"
173
173
  })))))
174
174
  }));
175
175
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/page-panels/page-status.js"],"names":["Button","BaseControl","ToggleControl","Dropdown","__experimentalText","Text","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","RadioControl","__","useDispatch","useState","useMemo","store","coreStore","noticesStore","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","StatusLabel","STATUS_OPTIONS","label","value","PageStatus","postType","postId","status","password","date","showPassword","setShowPassword","editEntityRecord","createErrorNotice","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","saveStatus","newStatus","newPassword","newDate","error","errorMessage","message","code","type","handleTogglePassword","handleStatus","Date","setDate","getDate","onToggle","onClose"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tBaseControl,\n\tToggleControl,\n\tDropdown,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n\tRadioControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n/**\n * Internal dependencies\n */\nimport StatusLabel from '../../sidebar-navigation-screen-page/status-label';\n\nconst STATUS_OPTIONS = [\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Draft' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Not ready to publish.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'draft',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Pending' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Waiting for review before publishing.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'pending',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Private' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Only visible to site admins and editors.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'private',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Scheduled' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Publish automatically on a chosen date.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'future',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Published' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Visible to everyone.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'publish',\n\t},\n];\n\nexport default function PageStatus( {\n\tpostType,\n\tpostId,\n\tstatus,\n\tpassword,\n\tdate,\n} ) {\n\tconst [ showPassword, setShowPassword ] = useState( !! password );\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': __( 'Change status' ),\n\t\t\tplacement: 'bottom-end',\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\n\tconst saveStatus = async ( {\n\t\tstatus: newStatus = status,\n\t\tpassword: newPassword = password,\n\t\tdate: newDate = date,\n\t} ) => {\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', postType, postId, {\n\t\t\t\tstatus: newStatus,\n\t\t\t\tdate: newDate,\n\t\t\t\tpassword: newPassword,\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 updating the status' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleTogglePassword = ( value ) => {\n\t\tsetShowPassword( value );\n\t\tif ( ! value ) {\n\t\t\tsaveStatus( { password: '' } );\n\t\t}\n\t};\n\n\tconst handleStatus = ( value ) => {\n\t\tlet newDate = date;\n\t\tlet newPassword = password;\n\t\tif ( value === 'publish' ) {\n\t\t\tif ( new Date( date ) > new Date() ) {\n\t\t\t\tnewDate = null;\n\t\t\t}\n\t\t} else if ( value === 'future' ) {\n\t\t\tif ( ! date || new Date( date ) < new Date() ) {\n\t\t\t\tnewDate = new Date();\n\t\t\t\tnewDate.setDate( newDate.getDate() + 7 );\n\t\t\t}\n\t\t} else if ( value === 'private' && password ) {\n\t\t\tsetShowPassword( false );\n\t\t\tnewPassword = '';\n\t\t}\n\t\tsaveStatus( {\n\t\t\tstatus: value,\n\t\t\tdate: newDate,\n\t\t\tpassword: newPassword,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-summary-field\">\n\t\t\t<Text className=\"edit-site-summary-field__label\">\n\t\t\t\t{ __( 'Status' ) }\n\t\t\t</Text>\n\t\t\t<Dropdown\n\t\t\t\tcontentClassName=\"edit-site-change-status__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-summary-field__trigger\"\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<StatusLabel\n\t\t\t\t\t\t\tstatus={ password ? 'protected' : status }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Status' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<form>\n\t\t\t\t\t\t\t<VStack spacing={ 5 }>\n\t\t\t\t\t\t\t\t<RadioControl\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-change-status__options\"\n\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Status' ) }\n\t\t\t\t\t\t\t\t\toptions={ STATUS_OPTIONS }\n\t\t\t\t\t\t\t\t\tonChange={ handleStatus }\n\t\t\t\t\t\t\t\t\tselected={ status }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ status !== 'private' && (\n\t\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\t\tid={ `edit-site-change-status__password` }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Password' ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Hide this page behind a password'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tchecked={ showPassword }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ handleTogglePassword }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ showPassword && (\n\t\t\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tsaveStatus( {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpassword: value,\n\t\t\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ password }\n\t\t\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ ! password }\n\t\t\t\t\t\t\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Enter a secure password'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"password\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</HStack>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/page-panels/page-status.js"],"names":["Button","BaseControl","ToggleControl","Dropdown","__experimentalText","Text","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","RadioControl","__","useDispatch","useState","useMemo","store","coreStore","noticesStore","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","StatusLabel","STATUS_OPTIONS","label","value","PageStatus","postType","postId","status","password","date","showPassword","setShowPassword","editEntityRecord","createErrorNotice","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","saveStatus","newStatus","newPassword","newDate","error","errorMessage","message","code","type","handleTogglePassword","handleStatus","Date","setDate","getDate","onToggle","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,MADD,EAECC,WAFD,EAGCC,aAHD,EAICC,QAJD,EAKCC,kBAAkB,IAAIC,IALvB,EAMCC,oBAAoB,IAAIC,MANzB,EAOCC,oBAAoB,IAAIC,MAPzB,EAQCC,WARD,EASCC,YATD,QAUO,uBAVP;AAWA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SAASC,QAAT,EAAmBC,OAAnB,QAAkC,oBAAlC;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASD,KAAK,IAAIE,YAAlB,QAAsC,oBAAtC;AACA,SAASC,oCAAoC,IAAIC,sBAAjD,QAA+E,yBAA/E;AACA;AACA;AACA;;AACA,OAAOC,WAAP,MAAwB,mDAAxB;AAEA,MAAMC,cAAc,GAAG,CACtB;AACCC,EAAAA,KAAK,EACJ,8BACGX,EAAE,CAAE,OAAF,CADL,EAEC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAC;AAAd,KAAwBA,EAAE,CAAE,uBAAF,CAA1B,CAFD,CAFF;AAOCY,EAAAA,KAAK,EAAE;AAPR,CADsB,EAUtB;AACCD,EAAAA,KAAK,EACJ,8BACGX,EAAE,CAAE,SAAF,CADL,EAEC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAC;AAAd,KACGA,EAAE,CAAE,uCAAF,CADL,CAFD,CAFF;AASCY,EAAAA,KAAK,EAAE;AATR,CAVsB,EAqBtB;AACCD,EAAAA,KAAK,EACJ,8BACGX,EAAE,CAAE,SAAF,CADL,EAEC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAC;AAAd,KACGA,EAAE,CAAE,0CAAF,CADL,CAFD,CAFF;AASCY,EAAAA,KAAK,EAAE;AATR,CArBsB,EAgCtB;AACCD,EAAAA,KAAK,EACJ,8BACGX,EAAE,CAAE,WAAF,CADL,EAEC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAC;AAAd,KACGA,EAAE,CAAE,yCAAF,CADL,CAFD,CAFF;AASCY,EAAAA,KAAK,EAAE;AATR,CAhCsB,EA2CtB;AACCD,EAAAA,KAAK,EACJ,8BACGX,EAAE,CAAE,WAAF,CADL,EAEC,cAAC,IAAD;AAAM,IAAA,OAAO,EAAC;AAAd,KAAwBA,EAAE,CAAE,sBAAF,CAA1B,CAFD,CAFF;AAOCY,EAAAA,KAAK,EAAE;AAPR,CA3CsB,CAAvB;AAsDA,eAAe,SAASC,UAAT,CAAqB;AACnCC,EAAAA,QADmC;AAEnCC,EAAAA,MAFmC;AAGnCC,EAAAA,MAHmC;AAInCC,EAAAA,QAJmC;AAKnCC,EAAAA;AALmC,CAArB,EAMX;AACH,QAAM,CAAEC,YAAF,EAAgBC,eAAhB,IAAoClB,QAAQ,CAAE,CAAC,CAAEe,QAAL,CAAlD;AAEA,QAAM;AAAEI,IAAAA;AAAF,MAAuBpB,WAAW,CAAEI,SAAF,CAAxC;AACA,QAAM;AAAEiB,IAAAA;AAAF,MAAwBrB,WAAW,CAAEK,YAAF,CAAzC;AAEA,QAAM,CAAEiB,aAAF,EAAiBC,gBAAjB,IAAsCtB,QAAQ,CAAE,IAAF,CAApD,CANG,CAOH;;AACA,QAAMuB,YAAY,GAAGtB,OAAO,CAC3B,OAAQ;AACP;AACA;AACAuB,IAAAA,MAAM,EAAEH,aAHD;AAIP,kBAAcvB,EAAE,CAAE,eAAF,CAJT;AAKP2B,IAAAA,SAAS,EAAE;AALJ,GAAR,CAD2B,EAQ3B,CAAEJ,aAAF,CAR2B,CAA5B;;AAWA,QAAMK,UAAU,GAAG,OAAQ;AAC1BZ,IAAAA,MAAM,EAAEa,SAAS,GAAGb,MADM;AAE1BC,IAAAA,QAAQ,EAAEa,WAAW,GAAGb,QAFE;AAG1BC,IAAAA,IAAI,EAAEa,OAAO,GAAGb;AAHU,GAAR,KAIZ;AACN,QAAI;AACH,YAAMG,gBAAgB,CAAE,UAAF,EAAcP,QAAd,EAAwBC,MAAxB,EAAgC;AACrDC,QAAAA,MAAM,EAAEa,SAD6C;AAErDX,QAAAA,IAAI,EAAEa,OAF+C;AAGrDd,QAAAA,QAAQ,EAAEa;AAH2C,OAAhC,CAAtB;AAKA,KAND,CAME,OAAQE,KAAR,EAAgB;AACjB,YAAMC,YAAY,GACjBD,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACG,IAAN,KAAe,eAAhC,GACGH,KAAK,CAACE,OADT,GAEGlC,EAAE,CAAE,6CAAF,CAHN;AAKAsB,MAAAA,iBAAiB,CAAEW,YAAF,EAAgB;AAChCG,QAAAA,IAAI,EAAE;AAD0B,OAAhB,CAAjB;AAGA;AACD,GArBD;;AAuBA,QAAMC,oBAAoB,GAAKzB,KAAF,IAAa;AACzCQ,IAAAA,eAAe,CAAER,KAAF,CAAf;;AACA,QAAK,CAAEA,KAAP,EAAe;AACdgB,MAAAA,UAAU,CAAE;AAAEX,QAAAA,QAAQ,EAAE;AAAZ,OAAF,CAAV;AACA;AACD,GALD;;AAOA,QAAMqB,YAAY,GAAK1B,KAAF,IAAa;AACjC,QAAImB,OAAO,GAAGb,IAAd;AACA,QAAIY,WAAW,GAAGb,QAAlB;;AACA,QAAKL,KAAK,KAAK,SAAf,EAA2B;AAC1B,UAAK,IAAI2B,IAAJ,CAAUrB,IAAV,IAAmB,IAAIqB,IAAJ,EAAxB,EAAqC;AACpCR,QAAAA,OAAO,GAAG,IAAV;AACA;AACD,KAJD,MAIO,IAAKnB,KAAK,KAAK,QAAf,EAA0B;AAChC,UAAK,CAAEM,IAAF,IAAU,IAAIqB,IAAJ,CAAUrB,IAAV,IAAmB,IAAIqB,IAAJ,EAAlC,EAA+C;AAC9CR,QAAAA,OAAO,GAAG,IAAIQ,IAAJ,EAAV;AACAR,QAAAA,OAAO,CAACS,OAAR,CAAiBT,OAAO,CAACU,OAAR,KAAoB,CAArC;AACA;AACD,KALM,MAKA,IAAK7B,KAAK,KAAK,SAAV,IAAuBK,QAA5B,EAAuC;AAC7CG,MAAAA,eAAe,CAAE,KAAF,CAAf;AACAU,MAAAA,WAAW,GAAG,EAAd;AACA;;AACDF,IAAAA,UAAU,CAAE;AACXZ,MAAAA,MAAM,EAAEJ,KADG;AAEXM,MAAAA,IAAI,EAAEa,OAFK;AAGXd,MAAAA,QAAQ,EAAEa;AAHC,KAAF,CAAV;AAKA,GArBD;;AAuBA,SACC,cAAC,MAAD;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACC,cAAC,IAAD;AAAM,IAAA,SAAS,EAAC;AAAhB,KACG9B,EAAE,CAAE,QAAF,CADL,CADD,EAIC,cAAC,QAAD;AACC,IAAA,gBAAgB,EAAC,kCADlB;AAEC,IAAA,YAAY,EAAGyB,YAFhB;AAGC,IAAA,YAAY,MAHb;AAIC,IAAA,GAAG,EAAGD,gBAJP;AAKC,IAAA,YAAY,EAAG,CAAE;AAAEkB,MAAAA;AAAF,KAAF,KACd,cAAC,MAAD;AACC,MAAA,SAAS,EAAC,kCADX;AAEC,MAAA,OAAO,EAAC,UAFT;AAGC,MAAA,OAAO,EAAGA;AAHX,OAKC,cAAC,WAAD;AACC,MAAA,MAAM,EAAGzB,QAAQ,GAAG,WAAH,GAAiBD;AADnC,MALD,CANF;AAgBC,IAAA,aAAa,EAAG,CAAE;AAAE2B,MAAAA;AAAF,KAAF,KACf,8BACC,cAAC,sBAAD;AACC,MAAA,KAAK,EAAG3C,EAAE,CAAE,QAAF,CADX;AAEC,MAAA,OAAO,EAAG2C;AAFX,MADD,EAKC,4BACC,cAAC,MAAD;AAAQ,MAAA,OAAO,EAAG;AAAlB,OACC,cAAC,YAAD;AACC,MAAA,SAAS,EAAC,kCADX;AAEC,MAAA,mBAAmB,MAFpB;AAGC,MAAA,KAAK,EAAG3C,EAAE,CAAE,QAAF,CAHX;AAIC,MAAA,OAAO,EAAGU,cAJX;AAKC,MAAA,QAAQ,EAAG4B,YALZ;AAMC,MAAA,QAAQ,EAAGtB;AANZ,MADD,EASGA,MAAM,KAAK,SAAX,IACD,cAAC,WAAD;AACC,MAAA,EAAE,EAAI,mCADP;AAEC,MAAA,KAAK,EAAGhB,EAAE,CAAE,UAAF;AAFX,OAIC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CACT,kCADS,CADX;AAIC,MAAA,OAAO,EAAGmB,YAJX;AAKC,MAAA,QAAQ,EAAGkB;AALZ,MAJD,EAWGlB,YAAY,IACb,cAAC,WAAD;AACC,MAAA,QAAQ,EAAKP,KAAF,IACVgB,UAAU,CAAE;AACXX,QAAAA,QAAQ,EAAEL;AADC,OAAF,CAFZ;AAMC,MAAA,KAAK,EAAGK;AACR;AAPD;AAQC,MAAA,SAAS,EAAG,CAAEA;AACd;AATD;AAUC,MAAA,WAAW,EAAGjB,EAAE,CACf,yBADe,CAVjB;AAaC,MAAA,IAAI,EAAC;AAbN,MAZF,CAVF,CADD,CALD;AAjBF,IAJD,CADD;AA2EA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tBaseControl,\n\tToggleControl,\n\tDropdown,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n\tRadioControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n/**\n * Internal dependencies\n */\nimport StatusLabel from '../../sidebar-navigation-screen-page/status-label';\n\nconst STATUS_OPTIONS = [\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Draft' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Not ready to publish.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'draft',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Pending' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Waiting for review before publishing.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'pending',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Private' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Only visible to site admins and editors.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'private',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Scheduled' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Publish automatically on a chosen date.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'future',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Published' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Visible to everyone.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'publish',\n\t},\n];\n\nexport default function PageStatus( {\n\tpostType,\n\tpostId,\n\tstatus,\n\tpassword,\n\tdate,\n} ) {\n\tconst [ showPassword, setShowPassword ] = useState( !! password );\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': __( 'Change status' ),\n\t\t\tplacement: 'bottom-end',\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\n\tconst saveStatus = async ( {\n\t\tstatus: newStatus = status,\n\t\tpassword: newPassword = password,\n\t\tdate: newDate = date,\n\t} ) => {\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', postType, postId, {\n\t\t\t\tstatus: newStatus,\n\t\t\t\tdate: newDate,\n\t\t\t\tpassword: newPassword,\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 updating the status' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleTogglePassword = ( value ) => {\n\t\tsetShowPassword( value );\n\t\tif ( ! value ) {\n\t\t\tsaveStatus( { password: '' } );\n\t\t}\n\t};\n\n\tconst handleStatus = ( value ) => {\n\t\tlet newDate = date;\n\t\tlet newPassword = password;\n\t\tif ( value === 'publish' ) {\n\t\t\tif ( new Date( date ) > new Date() ) {\n\t\t\t\tnewDate = null;\n\t\t\t}\n\t\t} else if ( value === 'future' ) {\n\t\t\tif ( ! date || new Date( date ) < new Date() ) {\n\t\t\t\tnewDate = new Date();\n\t\t\t\tnewDate.setDate( newDate.getDate() + 7 );\n\t\t\t}\n\t\t} else if ( value === 'private' && password ) {\n\t\t\tsetShowPassword( false );\n\t\t\tnewPassword = '';\n\t\t}\n\t\tsaveStatus( {\n\t\t\tstatus: value,\n\t\t\tdate: newDate,\n\t\t\tpassword: newPassword,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-summary-field\">\n\t\t\t<Text className=\"edit-site-summary-field__label\">\n\t\t\t\t{ __( 'Status' ) }\n\t\t\t</Text>\n\t\t\t<Dropdown\n\t\t\t\tcontentClassName=\"edit-site-change-status__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-summary-field__trigger\"\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<StatusLabel\n\t\t\t\t\t\t\tstatus={ password ? 'protected' : status }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Status' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<form>\n\t\t\t\t\t\t\t<VStack spacing={ 5 }>\n\t\t\t\t\t\t\t\t<RadioControl\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-change-status__options\"\n\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Status' ) }\n\t\t\t\t\t\t\t\t\toptions={ STATUS_OPTIONS }\n\t\t\t\t\t\t\t\t\tonChange={ handleStatus }\n\t\t\t\t\t\t\t\t\tselected={ status }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ status !== 'private' && (\n\t\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\t\tid={ `edit-site-change-status__password` }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Password' ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Hide this page behind a password'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tchecked={ showPassword }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ handleTogglePassword }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ showPassword && (\n\t\t\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tsaveStatus( {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpassword: value,\n\t\t\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={ password }\n\t\t\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ ! password }\n\t\t\t\t\t\t\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Enter a secure password'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</HStack>\n\t);\n}\n"]}
@@ -55,11 +55,7 @@ function ThemePatternsGroup({
55
55
  currentCategory,
56
56
  currentType
57
57
  }) {
58
- return createElement(Fragment, null, createElement("div", {
59
- className: "edit-site-sidebar-navigation-screen-patterns__group-header"
60
- }, createElement(Heading, {
61
- level: 2
62
- }, __('Theme patterns'))), createElement(ItemGroup, {
58
+ return createElement(Fragment, null, createElement(ItemGroup, {
63
59
  className: "edit-site-sidebar-navigation-screen-patterns__group"
64
60
  }, categories.map(category => createElement(CategoryItem, {
65
61
  key: category.name,
@@ -112,13 +108,13 @@ export default function SidebarNavigationScreenPatterns() {
112
108
  path: '/wp_template_part/all'
113
109
  });
114
110
  const footer = !isMobileViewport ? createElement(ItemGroup, null, createElement(SidebarNavigationItem, {
115
- withChevron: true,
116
- ...templatePartsLink
117
- }, __('Manage all template parts')), createElement(SidebarNavigationItem, {
118
111
  as: "a",
119
112
  href: "edit.php?post_type=wp_block",
120
113
  withChevron: true
121
- }, __('Manage all of my patterns'))) : undefined;
114
+ }, __('Manage all of my patterns')), createElement(SidebarNavigationItem, {
115
+ withChevron: true,
116
+ ...templatePartsLink
117
+ }, __('Manage all template parts'))) : undefined;
122
118
  return createElement(SidebarNavigationScreen, {
123
119
  isRoot: isTemplatePartsMode,
124
120
  title: __('Patterns'),
@@ -137,14 +133,14 @@ export default function SidebarNavigationScreenPatterns() {
137
133
  id: myPatterns.name,
138
134
  type: "wp_block",
139
135
  isActive: currentCategory === `${myPatterns.name}` && currentType === 'wp_block'
140
- })), hasTemplateParts && createElement(TemplatePartGroup, {
141
- areas: templatePartAreas,
142
- currentArea: currentCategory,
143
- currentType: currentType
144
- }), hasPatterns && createElement(ThemePatternsGroup, {
136
+ })), hasPatterns && createElement(ThemePatternsGroup, {
145
137
  categories: patternCategories,
146
138
  currentCategory: currentCategory,
147
139
  currentType: currentType
140
+ }), hasTemplateParts && createElement(TemplatePartGroup, {
141
+ areas: templatePartAreas,
142
+ currentArea: currentCategory,
143
+ currentType: currentType
148
144
  })))
149
145
  });
150
146
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","__experimentalHeading","Heading","useViewportMatch","useSelect","getTemplatePartIcon","__","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","store","editSiteStore","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","Object","entries","map","area","label","templateParts","length","ThemePatternsGroup","categories","currentCategory","category","name","count","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","isTemplatePartsMode","select","settings","getSettings","supportsTemplatePartsMode","templatePartsLink","path","footer","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\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) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Theme patterns' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t\t\t'Theme patterns cannot be edited.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\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</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","__experimentalHeading","Heading","useViewportMatch","useSelect","getTemplatePartIcon","__","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","store","editSiteStore","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","Object","entries","map","area","label","templateParts","length","ThemePatternsGroup","categories","currentCategory","category","name","count","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","isTemplatePartsMode","select","settings","getSettings","supportsTemplatePartsMode","templatePartsLink","path","footer","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\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) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t\t\t'Theme patterns cannot be edited.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\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</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
@@ -2,6 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { useMemo } from '@wordpress/element';
5
+ import { __ } from '@wordpress/i18n';
5
6
  /**
6
7
  * Internal dependencies
7
8
  */
@@ -10,6 +11,10 @@ import useDefaultPatternCategories from './use-default-pattern-categories';
10
11
  import useThemePatterns from './use-theme-patterns';
11
12
  export default function usePatternCategories() {
12
13
  const defaultCategories = useDefaultPatternCategories();
14
+ defaultCategories.push({
15
+ name: 'uncategorized',
16
+ label: __('Uncategorized')
17
+ });
13
18
  const themePatterns = useThemePatterns();
14
19
  const patternCategories = useMemo(() => {
15
20
  const categoryMap = {};
@@ -28,7 +33,11 @@ export default function usePatternCategories() {
28
33
  if (categoryMap[category]) {
29
34
  categoryMap[category].count += 1;
30
35
  }
31
- });
36
+ }); // If the pattern has no categories, add it to uncategorized.
37
+
38
+ if (!pattern.categories?.length) {
39
+ categoryMap.uncategorized.count += 1;
40
+ }
32
41
  }); // Filter categories so we only have those containing patterns.
33
42
 
34
43
  defaultCategories.forEach(category => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"names":["useMemo","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","name","count","pattern","categories","push","hasPatterns","length"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,oBAAxB;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,kCAAxC;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAMC,iBAAiB,GAAGH,2BAA2B,EAArD;AACA,QAAMI,aAAa,GAAGH,gBAAgB,EAAtC;AAEA,QAAMI,iBAAiB,GAAGN,OAAO,CAAE,MAAM;AACxC,UAAMO,WAAW,GAAG,EAApB;AACA,UAAMC,oBAAoB,GAAG,EAA7B,CAFwC,CAIxC;;AACAJ,IAAAA,iBAAiB,CAACK,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAlB,EAAsC;AACrCJ,QAAAA,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAX,GAA+B,EAAE,GAAGD,QAAL;AAAeE,UAAAA,KAAK,EAAE;AAAtB,SAA/B;AACA;AACD,KAJD,EALwC,CAWxC;;AACAP,IAAAA,aAAa,CAACI,OAAd,CAAyBI,OAAF,IAAe;AACrCA,MAAAA,OAAO,CAACC,UAAR,EAAoBL,OAApB,CAA+BC,QAAF,IAAgB;AAC5C,YAAKH,WAAW,CAAEG,QAAF,CAAhB,EAA+B;AAC9BH,UAAAA,WAAW,CAAEG,QAAF,CAAX,CAAwBE,KAAxB,IAAiC,CAAjC;AACA;AACD,OAJD;AAKA,KAND,EAZwC,CAoBxC;;AACAR,IAAAA,iBAAiB,CAACK,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAKH,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAX,CAA6BC,KAAlC,EAA0C;AACzCJ,QAAAA,oBAAoB,CAACO,IAArB,CAA2BR,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAtC;AACA;AACD,KAJD;AAMA,WAAOH,oBAAP;AACA,GA5BgC,EA4B9B,CAAEJ,iBAAF,EAAqBC,aAArB,CA5B8B,CAAjC;AA8BA,SAAO;AAAEC,IAAAA,iBAAF;AAAqBU,IAAAA,WAAW,EAAE,CAAC,CAAEV,iBAAiB,CAACW;AAAvD,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tconst themePatterns = useThemePatterns();\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( categoryMap[ category.name ].count ) {\n\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t}\n\t\t} );\n\n\t\treturn categoriesWithCounts;\n\t}, [ defaultCategories, themePatterns ] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","push","name","label","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","categories","length","uncategorized","hasPatterns"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,oBAAxB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,kCAAxC;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAMC,iBAAiB,GAAGH,2BAA2B,EAArD;AACAG,EAAAA,iBAAiB,CAACC,IAAlB,CAAwB;AACvBC,IAAAA,IAAI,EAAE,eADiB;AAEvBC,IAAAA,KAAK,EAAEP,EAAE,CAAE,eAAF;AAFc,GAAxB;AAIA,QAAMQ,aAAa,GAAGN,gBAAgB,EAAtC;AAEA,QAAMO,iBAAiB,GAAGV,OAAO,CAAE,MAAM;AACxC,UAAMW,WAAW,GAAG,EAApB;AACA,UAAMC,oBAAoB,GAAG,EAA7B,CAFwC,CAIxC;;AACAP,IAAAA,iBAAiB,CAACQ,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAlB,EAAsC;AACrCI,QAAAA,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAX,GAA+B,EAAE,GAAGO,QAAL;AAAeC,UAAAA,KAAK,EAAE;AAAtB,SAA/B;AACA;AACD,KAJD,EALwC,CAWxC;;AACAN,IAAAA,aAAa,CAACI,OAAd,CAAyBG,OAAF,IAAe;AACrCA,MAAAA,OAAO,CAACC,UAAR,EAAoBJ,OAApB,CAA+BC,QAAF,IAAgB;AAC5C,YAAKH,WAAW,CAAEG,QAAF,CAAhB,EAA+B;AAC9BH,UAAAA,WAAW,CAAEG,QAAF,CAAX,CAAwBC,KAAxB,IAAiC,CAAjC;AACA;AACD,OAJD,EADqC,CAMrC;;AACA,UAAK,CAAEC,OAAO,CAACC,UAAR,EAAoBC,MAA3B,EAAoC;AACnCP,QAAAA,WAAW,CAACQ,aAAZ,CAA0BJ,KAA1B,IAAmC,CAAnC;AACA;AACD,KAVD,EAZwC,CAwBxC;;AACAV,IAAAA,iBAAiB,CAACQ,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAKH,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAX,CAA6BQ,KAAlC,EAA0C;AACzCH,QAAAA,oBAAoB,CAACN,IAArB,CAA2BK,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAtC;AACA;AACD,KAJD;AAMA,WAAOK,oBAAP;AACA,GAhCgC,EAgC9B,CAAEP,iBAAF,EAAqBI,aAArB,CAhC8B,CAAjC;AAkCA,SAAO;AAAEC,IAAAA,iBAAF;AAAqBU,IAAAA,WAAW,EAAE,CAAC,CAAEV,iBAAiB,CAACQ;AAAvD,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tdefaultCategories.push( {\n\t\tname: 'uncategorized',\n\t\tlabel: __( 'Uncategorized' ),\n\t} );\n\tconst themePatterns = useThemePatterns();\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( categoryMap[ category.name ].count ) {\n\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t}\n\t\t} );\n\n\t\treturn categoriesWithCounts;\n\t}, [ defaultCategories, themePatterns ] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"]}
@@ -3285,17 +3285,17 @@ body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar {
3285
3285
  }
3286
3286
 
3287
3287
  .edit-site-sidebar-navigation-screen-patterns__group {
3288
- margin-bottom: 32px;
3288
+ margin-bottom: 24px;
3289
3289
  }
3290
- .edit-site-sidebar-navigation-screen-patterns__group:last-of-type, .edit-site-sidebar-navigation-screen-patterns__group:first-of-type {
3290
+ .edit-site-sidebar-navigation-screen-patterns__group:last-of-type {
3291
3291
  border-bottom: 0;
3292
3292
  padding-bottom: 0;
3293
3293
  margin-bottom: 0;
3294
3294
  }
3295
- .edit-site-sidebar-navigation-screen-patterns__group:first-of-type {
3296
- margin-bottom: 32px;
3297
- }
3298
3295
 
3296
+ .edit-site-sidebar-navigation-screen-patterns__group-header {
3297
+ margin-top: 16px;
3298
+ }
3299
3299
  .edit-site-sidebar-navigation-screen-patterns__group-header p {
3300
3300
  color: #949494;
3301
3301
  }
@@ -3286,17 +3286,17 @@ body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar {
3286
3286
  }
3287
3287
 
3288
3288
  .edit-site-sidebar-navigation-screen-patterns__group {
3289
- margin-bottom: 32px;
3289
+ margin-bottom: 24px;
3290
3290
  }
3291
- .edit-site-sidebar-navigation-screen-patterns__group:last-of-type, .edit-site-sidebar-navigation-screen-patterns__group:first-of-type {
3291
+ .edit-site-sidebar-navigation-screen-patterns__group:last-of-type {
3292
3292
  border-bottom: 0;
3293
3293
  padding-bottom: 0;
3294
3294
  margin-bottom: 0;
3295
3295
  }
3296
- .edit-site-sidebar-navigation-screen-patterns__group:first-of-type {
3297
- margin-bottom: 32px;
3298
- }
3299
3296
 
3297
+ .edit-site-sidebar-navigation-screen-patterns__group-header {
3298
+ margin-top: 16px;
3299
+ }
3300
3300
  .edit-site-sidebar-navigation-screen-patterns__group-header p {
3301
3301
  color: #949494;
3302
3302
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-site",
3
- "version": "5.12.9",
3
+ "version": "5.12.10",
4
4
  "description": "Edit Site Page module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -29,40 +29,40 @@
29
29
  "@babel/runtime": "^7.16.0",
30
30
  "@wordpress/a11y": "^3.35.1",
31
31
  "@wordpress/api-fetch": "^6.32.1",
32
- "@wordpress/block-editor": "^12.3.7",
33
- "@wordpress/block-library": "^8.12.9",
34
- "@wordpress/blocks": "^12.12.3",
35
- "@wordpress/commands": "^0.6.7",
36
- "@wordpress/components": "^25.1.7",
32
+ "@wordpress/block-editor": "^12.3.8",
33
+ "@wordpress/block-library": "^8.12.10",
34
+ "@wordpress/blocks": "^12.12.4",
35
+ "@wordpress/commands": "^0.6.8",
36
+ "@wordpress/components": "^25.1.8",
37
37
  "@wordpress/compose": "^6.12.1",
38
- "@wordpress/core-commands": "^0.4.7",
39
- "@wordpress/core-data": "^6.12.7",
40
- "@wordpress/data": "^9.5.3",
38
+ "@wordpress/core-commands": "^0.4.8",
39
+ "@wordpress/core-data": "^6.12.8",
40
+ "@wordpress/data": "^9.5.4",
41
41
  "@wordpress/date": "^4.35.1",
42
42
  "@wordpress/deprecated": "^3.35.1",
43
43
  "@wordpress/dom": "^3.35.1",
44
- "@wordpress/editor": "^13.12.7",
44
+ "@wordpress/editor": "^13.12.8",
45
45
  "@wordpress/element": "^5.12.1",
46
46
  "@wordpress/escape-html": "^2.35.1",
47
47
  "@wordpress/hooks": "^3.35.1",
48
48
  "@wordpress/html-entities": "^3.35.1",
49
49
  "@wordpress/i18n": "^4.35.1",
50
50
  "@wordpress/icons": "^9.26.2",
51
- "@wordpress/interface": "^5.12.7",
52
- "@wordpress/keyboard-shortcuts": "^4.12.3",
51
+ "@wordpress/interface": "^5.12.8",
52
+ "@wordpress/keyboard-shortcuts": "^4.12.4",
53
53
  "@wordpress/keycodes": "^3.35.1",
54
54
  "@wordpress/media-utils": "^4.26.1",
55
- "@wordpress/notices": "^4.3.3",
56
- "@wordpress/plugins": "^6.3.7",
57
- "@wordpress/preferences": "^3.12.7",
55
+ "@wordpress/notices": "^4.3.4",
56
+ "@wordpress/plugins": "^6.3.8",
57
+ "@wordpress/preferences": "^3.12.8",
58
58
  "@wordpress/primitives": "^3.33.1",
59
- "@wordpress/private-apis": "^0.17.1",
60
- "@wordpress/reusable-blocks": "^4.12.7",
61
- "@wordpress/router": "^0.4.1",
59
+ "@wordpress/private-apis": "^0.17.2",
60
+ "@wordpress/reusable-blocks": "^4.12.8",
61
+ "@wordpress/router": "^0.4.2",
62
62
  "@wordpress/style-engine": "^1.18.1",
63
63
  "@wordpress/url": "^3.36.1",
64
- "@wordpress/viewport": "^5.12.3",
65
- "@wordpress/widgets": "^3.12.7",
64
+ "@wordpress/viewport": "^5.12.4",
65
+ "@wordpress/widgets": "^3.12.8",
66
66
  "@wordpress/wordcount": "^3.35.1",
67
67
  "change-case": "^4.1.2",
68
68
  "classnames": "^2.3.1",
@@ -84,5 +84,5 @@
84
84
  "publishConfig": {
85
85
  "access": "public"
86
86
  },
87
- "gitHead": "5a52ea1ed29bbf8f3ead96f83b17d2c1cf84c880"
87
+ "gitHead": "cedb8caa943db47c16bdb4fa8880d506ce938fab"
88
88
  }
@@ -77,9 +77,6 @@ export default function AddNewPageModal( { onSave, onClose } ) {
77
77
  <form onSubmit={ createPage }>
78
78
  <VStack spacing={ 3 }>
79
79
  <TextControl
80
- /* eslint-disable jsx-a11y/no-autofocus */
81
- autoFocus
82
- /* eslint-enable jsx-a11y/no-autofocus */
83
80
  label={ __( 'Page title' ) }
84
81
  onChange={ setTitle }
85
82
  placeholder={ __( 'No title' ) }
@@ -5,6 +5,7 @@ import { DropdownMenu } from '@wordpress/components';
5
5
  import { useState } from '@wordpress/element';
6
6
  import { __ } from '@wordpress/i18n';
7
7
  import { plus, header, file } from '@wordpress/icons';
8
+ import { useSelect } from '@wordpress/data';
8
9
  import { privateApis as routerPrivateApis } from '@wordpress/router';
9
10
 
10
11
  /**
@@ -14,6 +15,7 @@ import CreatePatternModal from '../create-pattern-modal';
14
15
  import CreateTemplatePartModal from '../create-template-part-modal';
15
16
  import SidebarButton from '../sidebar-button';
16
17
  import { unlock } from '../../lock-unlock';
18
+ import { store as editSiteStore } from '../../store';
17
19
 
18
20
  const { useHistory } = unlock( routerPrivateApis );
19
21
 
@@ -22,6 +24,10 @@ export default function AddNewPattern() {
22
24
  const [ showPatternModal, setShowPatternModal ] = useState( false );
23
25
  const [ showTemplatePartModal, setShowTemplatePartModal ] =
24
26
  useState( false );
27
+ const isTemplatePartsMode = useSelect( ( select ) => {
28
+ const settings = select( editSiteStore ).getSettings();
29
+ return !! settings.supportsTemplatePartsMode;
30
+ }, [] );
25
31
 
26
32
  function handleCreatePattern( { pattern, categoryId } ) {
27
33
  setShowPatternModal( false );
@@ -55,7 +61,7 @@ export default function AddNewPattern() {
55
61
  <>
56
62
  <DropdownMenu
57
63
  controls={ [
58
- {
64
+ ! isTemplatePartsMode && {
59
65
  icon: header,
60
66
  onClick: () => setShowTemplatePartModal( true ),
61
67
  title: __( 'Create template part' ),
@@ -65,7 +71,7 @@ export default function AddNewPattern() {
65
71
  onClick: () => setShowPatternModal( true ),
66
72
  title: __( 'Create pattern' ),
67
73
  },
68
- ] }
74
+ ].filter( Boolean ) }
69
75
  toggleProps={ {
70
76
  as: SidebarButton,
71
77
  } }
@@ -63,6 +63,18 @@ const typeLabels = {
63
63
  wp_block: __( 'Pattern' ),
64
64
  };
65
65
 
66
+ // Prevent accidental removal of certain blocks, asking the user for
67
+ // confirmation.
68
+ const blockRemovalRules = {
69
+ 'core/query': __( 'Query Loop displays a list of posts or pages.' ),
70
+ 'core/post-content': __(
71
+ 'Post Content displays the content of a post or page.'
72
+ ),
73
+ 'core/post-template': __(
74
+ 'Post Template displays each post or page in a Query Loop.'
75
+ ),
76
+ };
77
+
66
78
  export default function Editor( { isLoading } ) {
67
79
  const {
68
80
  record: editedPost,
@@ -197,7 +209,9 @@ export default function Editor( { isLoading } ) {
197
209
  { showVisualEditor && editedPost && (
198
210
  <>
199
211
  <BlockEditor />
200
- <BlockRemovalWarningModal />
212
+ <BlockRemovalWarningModal
213
+ rules={ blockRemovalRules }
214
+ />
201
215
  </>
202
216
  ) }
203
217
  { editorMode === 'text' &&
@@ -224,14 +224,25 @@ export default function Layout() {
224
224
  <AnimatePresence initial={ false }>
225
225
  { isEditorPage && isEditing && (
226
226
  <NavigableRegion
227
+ key="header"
227
228
  className="edit-site-layout__header"
228
229
  ariaLabel={ __( 'Editor top bar' ) }
229
230
  as={ motion.div }
230
231
  variants={ {
231
- isDistractionFree: { opacity: 0 },
232
- isDistractionFreeHovering: { opacity: 1 },
233
- view: { opacity: 1 },
234
- edit: { opacity: 1 },
232
+ isDistractionFree: { opacity: 0, y: 0 },
233
+ isDistractionFreeHovering: {
234
+ opacity: 1,
235
+ y: 0,
236
+ },
237
+ view: { opacity: 1, y: '-100%' },
238
+ edit: { opacity: 1, y: 0 },
239
+ } }
240
+ exit={ {
241
+ y: '-100%',
242
+ } }
243
+ initial={ {
244
+ opacity: isDistractionFree ? 1 : 0,
245
+ y: isDistractionFree ? 0 : '-100%',
235
246
  } }
236
247
  transition={ {
237
248
  type: 'tween',
@@ -239,51 +250,35 @@ export default function Layout() {
239
250
  ease: 'easeOut',
240
251
  } }
241
252
  >
242
- { isEditing && <Header /> }
253
+ <Header />
243
254
  </NavigableRegion>
244
255
  ) }
245
256
  </AnimatePresence>
246
257
  </motion.div>
247
258
 
248
259
  <div className="edit-site-layout__content">
249
- <AnimatePresence initial={ false }>
250
- {
251
- <motion.div
252
- initial={ {
253
- opacity: 0,
254
- } }
255
- animate={
256
- showSidebar
257
- ? { opacity: 1, display: 'block' }
258
- : {
259
- opacity: 0,
260
- transitionEnd: {
261
- display: 'none',
262
- },
263
- }
264
- }
265
- exit={ {
266
- opacity: 0,
267
- } }
268
- transition={ {
269
- type: 'tween',
270
- duration:
271
- // Disable transition in mobile to emulate a full page transition.
272
- disableMotion || isMobileViewport
273
- ? 0
274
- : ANIMATION_DURATION,
275
- ease: 'easeOut',
276
- } }
277
- className="edit-site-layout__sidebar"
278
- >
279
- <NavigableRegion
280
- ariaLabel={ __( 'Navigation' ) }
281
- >
282
- <Sidebar />
283
- </NavigableRegion>
284
- </motion.div>
285
- }
286
- </AnimatePresence>
260
+ <motion.div
261
+ // The sidebar is needed for routing on mobile
262
+ // (https://github.com/WordPress/gutenberg/pull/51558/files#r1231763003),
263
+ // so we can't remove the element entirely. Using `inert` will make
264
+ // it inaccessible to screen readers and keyboard navigation.
265
+ inert={ showSidebar ? undefined : 'inert' }
266
+ animate={ { opacity: showSidebar ? 1 : 0 } }
267
+ transition={ {
268
+ type: 'tween',
269
+ duration:
270
+ // Disable transition in mobile to emulate a full page transition.
271
+ disableMotion || isMobileViewport
272
+ ? 0
273
+ : ANIMATION_DURATION,
274
+ ease: 'easeOut',
275
+ } }
276
+ className="edit-site-layout__sidebar"
277
+ >
278
+ <NavigableRegion ariaLabel={ __( 'Navigation' ) }>
279
+ <Sidebar />
280
+ </NavigableRegion>
281
+ </motion.div>
287
282
 
288
283
  <SavePanel />
289
284