@wordpress/fields 0.3.0 → 0.4.1-next.082ed6819.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +20 -0
  3. package/build/actions/utils.js +2 -2
  4. package/build/actions/utils.js.map +1 -1
  5. package/build/fields/author/author-view.js +72 -0
  6. package/build/fields/author/author-view.js.map +1 -0
  7. package/build/fields/author/index.js +35 -0
  8. package/build/fields/author/index.js.map +1 -0
  9. package/build/fields/comment-status/index.js +40 -0
  10. package/build/fields/comment-status/index.js.map +1 -0
  11. package/build/fields/date/date-view.js +69 -0
  12. package/build/fields/date/date-view.js.map +1 -0
  13. package/build/fields/date/index.js +29 -0
  14. package/build/fields/date/index.js.map +1 -0
  15. package/build/fields/featured-image/featured-image-edit.js.map +1 -1
  16. package/build/fields/featured-image/featured-image-view.js.map +1 -1
  17. package/build/fields/featured-image/index.js +0 -3
  18. package/build/fields/featured-image/index.js.map +1 -1
  19. package/build/fields/index.js +35 -0
  20. package/build/fields/index.js.map +1 -1
  21. package/build/fields/order/index.js +1 -1
  22. package/build/fields/order/index.js.map +1 -1
  23. package/build/fields/parent/index.js +0 -3
  24. package/build/fields/parent/index.js.map +1 -1
  25. package/build/fields/parent/parent-edit.js +6 -6
  26. package/build/fields/parent/parent-edit.js.map +1 -1
  27. package/build/fields/parent/parent-view.js +1 -1
  28. package/build/fields/parent/parent-view.js.map +1 -1
  29. package/build/fields/password/edit.js +65 -0
  30. package/build/fields/password/edit.js.map +1 -0
  31. package/build/fields/password/index.js +30 -0
  32. package/build/fields/password/index.js.map +1 -0
  33. package/build/fields/slug/index.js +0 -3
  34. package/build/fields/slug/index.js.map +1 -1
  35. package/build/fields/slug/slug-edit.js +23 -26
  36. package/build/fields/slug/slug-edit.js.map +1 -1
  37. package/build/fields/slug/slug-view.js +3 -2
  38. package/build/fields/slug/slug-view.js.map +1 -1
  39. package/build/fields/slug/utils.js +21 -0
  40. package/build/fields/slug/utils.js.map +1 -0
  41. package/build/fields/status/index.js +37 -0
  42. package/build/fields/status/index.js.map +1 -0
  43. package/build/fields/status/status-elements.js +46 -0
  44. package/build/fields/status/status-elements.js.map +1 -0
  45. package/build/fields/status/status-view.js +41 -0
  46. package/build/fields/status/status-view.js.map +1 -0
  47. package/build/fields/title/index.js +5 -1
  48. package/build/fields/title/index.js.map +1 -1
  49. package/build/fields/title/title-view.js +61 -0
  50. package/build/fields/title/title-view.js.map +1 -0
  51. package/build/index.js.map +1 -1
  52. package/build/types.js.map +1 -1
  53. package/build-module/actions/utils.js +2 -2
  54. package/build-module/actions/utils.js.map +1 -1
  55. package/build-module/fields/author/author-view.js +64 -0
  56. package/build-module/fields/author/author-view.js.map +1 -0
  57. package/build-module/fields/author/index.js +29 -0
  58. package/build-module/fields/author/index.js.map +1 -0
  59. package/build-module/fields/comment-status/index.js +35 -0
  60. package/build-module/fields/comment-status/index.js.map +1 -0
  61. package/build-module/fields/date/date-view.js +62 -0
  62. package/build-module/fields/date/date-view.js.map +1 -0
  63. package/build-module/fields/date/index.js +23 -0
  64. package/build-module/fields/date/index.js.map +1 -0
  65. package/build-module/fields/featured-image/featured-image-edit.js +1 -2
  66. package/build-module/fields/featured-image/featured-image-edit.js.map +1 -1
  67. package/build-module/fields/featured-image/featured-image-view.js.map +1 -1
  68. package/build-module/fields/featured-image/index.js +2 -4
  69. package/build-module/fields/featured-image/index.js.map +1 -1
  70. package/build-module/fields/index.js +5 -0
  71. package/build-module/fields/index.js.map +1 -1
  72. package/build-module/fields/order/index.js +2 -1
  73. package/build-module/fields/order/index.js.map +1 -1
  74. package/build-module/fields/parent/index.js +2 -4
  75. package/build-module/fields/parent/index.js.map +1 -1
  76. package/build-module/fields/parent/parent-edit.js +10 -8
  77. package/build-module/fields/parent/parent-edit.js.map +1 -1
  78. package/build-module/fields/parent/parent-view.js +1 -1
  79. package/build-module/fields/parent/parent-view.js.map +1 -1
  80. package/build-module/fields/password/edit.js +58 -0
  81. package/build-module/fields/password/edit.js.map +1 -0
  82. package/build-module/fields/password/index.js +23 -0
  83. package/build-module/fields/password/index.js.map +1 -0
  84. package/build-module/fields/slug/index.js +2 -4
  85. package/build-module/fields/slug/index.js.map +1 -1
  86. package/build-module/fields/slug/slug-edit.js +25 -27
  87. package/build-module/fields/slug/slug-edit.js.map +1 -1
  88. package/build-module/fields/slug/slug-view.js +3 -2
  89. package/build-module/fields/slug/slug-view.js.map +1 -1
  90. package/build-module/fields/slug/utils.js +13 -0
  91. package/build-module/fields/slug/utils.js.map +1 -0
  92. package/build-module/fields/status/index.js +31 -0
  93. package/build-module/fields/status/index.js.map +1 -0
  94. package/build-module/fields/status/status-elements.js +40 -0
  95. package/build-module/fields/status/status-elements.js.map +1 -0
  96. package/build-module/fields/status/status-view.js +34 -0
  97. package/build-module/fields/status/status-view.js.map +1 -0
  98. package/build-module/fields/title/index.js +4 -1
  99. package/build-module/fields/title/index.js.map +1 -1
  100. package/build-module/fields/title/title-view.js +55 -0
  101. package/build-module/fields/title/title-view.js.map +1 -0
  102. package/build-module/index.js.map +1 -1
  103. package/build-module/types.js.map +1 -1
  104. package/build-style/{styles-rtl.css → style-rtl.css} +77 -0
  105. package/build-style/{styles.css → style.css} +77 -0
  106. package/build-types/fields/author/author-view.d.ts +9 -0
  107. package/build-types/fields/author/author-view.d.ts.map +1 -0
  108. package/build-types/fields/author/index.d.ts +14 -0
  109. package/build-types/fields/author/index.d.ts.map +1 -0
  110. package/build-types/fields/comment-status/index.d.ts +14 -0
  111. package/build-types/fields/comment-status/index.d.ts.map +1 -0
  112. package/build-types/fields/date/date-view.d.ts +9 -0
  113. package/build-types/fields/date/date-view.d.ts.map +1 -0
  114. package/build-types/fields/date/index.d.ts +14 -0
  115. package/build-types/fields/date/index.d.ts.map +1 -0
  116. package/build-types/fields/featured-image/featured-image-edit.d.ts.map +1 -1
  117. package/build-types/fields/featured-image/featured-image-view.d.ts +1 -1
  118. package/build-types/fields/featured-image/featured-image-view.d.ts.map +1 -1
  119. package/build-types/fields/featured-image/index.d.ts.map +1 -1
  120. package/build-types/fields/index.d.ts +5 -0
  121. package/build-types/fields/index.d.ts.map +1 -1
  122. package/build-types/fields/order/index.d.ts.map +1 -1
  123. package/build-types/fields/parent/index.d.ts.map +1 -1
  124. package/build-types/fields/parent/parent-edit.d.ts +3 -0
  125. package/build-types/fields/parent/parent-edit.d.ts.map +1 -1
  126. package/build-types/fields/parent/parent-view.d.ts +1 -1
  127. package/build-types/fields/parent/parent-view.d.ts.map +1 -1
  128. package/build-types/fields/password/edit.d.ts +8 -0
  129. package/build-types/fields/password/edit.d.ts.map +1 -0
  130. package/build-types/fields/password/index.d.ts +14 -0
  131. package/build-types/fields/password/index.d.ts.map +1 -0
  132. package/build-types/fields/slug/index.d.ts.map +1 -1
  133. package/build-types/fields/slug/slug-edit.d.ts.map +1 -1
  134. package/build-types/fields/slug/slug-view.d.ts.map +1 -1
  135. package/build-types/fields/slug/utils.d.ts +6 -0
  136. package/build-types/fields/slug/utils.d.ts.map +1 -0
  137. package/build-types/fields/status/index.d.ts +14 -0
  138. package/build-types/fields/status/index.d.ts.map +1 -0
  139. package/build-types/fields/status/status-elements.d.ts +13 -0
  140. package/build-types/fields/status/status-elements.d.ts.map +1 -0
  141. package/build-types/fields/status/status-view.d.ts +9 -0
  142. package/build-types/fields/status/status-view.d.ts.map +1 -0
  143. package/build-types/fields/title/index.d.ts.map +1 -1
  144. package/build-types/fields/title/title-view.d.ts +9 -0
  145. package/build-types/fields/title/title-view.d.ts.map +1 -0
  146. package/build-types/index.d.ts +1 -0
  147. package/build-types/index.d.ts.map +1 -1
  148. package/build-types/lock-unlock.d.ts +1 -1
  149. package/build-types/lock-unlock.d.ts.map +1 -1
  150. package/build-types/types.d.ts +14 -1
  151. package/build-types/types.d.ts.map +1 -1
  152. package/package.json +23 -21
  153. package/src/actions/utils.ts +2 -2
  154. package/src/fields/author/author-view.tsx +63 -0
  155. package/src/fields/author/index.tsx +32 -0
  156. package/src/fields/comment-status/index.tsx +40 -0
  157. package/src/fields/date/date-view.tsx +92 -0
  158. package/src/fields/date/index.tsx +23 -0
  159. package/src/fields/featured-image/featured-image-edit.tsx +2 -1
  160. package/src/fields/featured-image/featured-image-view.tsx +1 -1
  161. package/src/fields/featured-image/index.ts +1 -2
  162. package/src/fields/featured-image/style.scss +2 -5
  163. package/src/fields/index.ts +5 -0
  164. package/src/fields/order/index.ts +2 -1
  165. package/src/fields/parent/index.ts +1 -2
  166. package/src/fields/parent/parent-edit.tsx +9 -9
  167. package/src/fields/parent/parent-view.tsx +2 -2
  168. package/src/fields/password/edit.tsx +68 -0
  169. package/src/fields/password/index.tsx +24 -0
  170. package/src/fields/slug/index.ts +1 -2
  171. package/src/fields/slug/slug-edit.tsx +21 -24
  172. package/src/fields/slug/slug-view.tsx +3 -2
  173. package/src/fields/slug/utils.ts +15 -0
  174. package/src/fields/status/index.tsx +32 -0
  175. package/src/fields/status/status-elements.tsx +50 -0
  176. package/src/fields/status/status-view.tsx +28 -0
  177. package/src/fields/title/index.ts +3 -0
  178. package/src/fields/title/title-view.tsx +62 -0
  179. package/src/index.ts +1 -0
  180. package/src/style.scss +2 -0
  181. package/src/types.ts +17 -1
  182. package/tsconfig.json +10 -9
  183. package/tsconfig.tsbuildinfo +1 -1
  184. package/src/styles.scss +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_data","_element","_coreData","_removeAccents","_interopRequireDefault","_compose","_htmlEntities","_i18n","_utils","_url","_jsxRuntime","buildTermsTree","flatTerms","flatTermsWithParentAndChildren","map","term","children","some","parent","undefined","termsByParent","reduce","acc","push","fillWithChildren","terms","id","length","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","Infinity","exports","PageAttributesParent","data","onChangeControl","fieldValue","setFieldValue","useState","pageId","postId","postTypeSlug","type","parentPostTitle","pageItems","isHierarchical","useSelect","select","getEntityRecord","getEntityRecords","getPostType","coreStore","postTypeInfo","postIsHierarchical","hierarchical","viewable","parentPost","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","getTitleWithFallbackName","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","treeNode","value","label","repeat","decodeEntities","rawName","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","_item$parent","opts","optsHasParent","find","unshift","option","toString","handleKeydown","inputValue","handleChange","selectedPostId","_parseInt","parseInt","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","__","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","ParentEdit","field","homeUrl","home","useCallback","newValue","className","jsxs","createInterpolateElement","sprintf","filterURLForDisplay","replace","wbr","ExternalLink","href"],"sources":["@wordpress/fields/src/fields/parent/parent-edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ComboboxControl, ExternalLink } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tcreateInterpolateElement,\n\tuseCallback,\n\tuseMemo,\n\tuseState,\n} from '@wordpress/element';\n// @ts-ignore\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\n\n/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * Internal dependencies\n */\nimport { debounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, sprintf } from '@wordpress/i18n';\nimport type { BasePost } from '../../types';\nimport { getTitleWithFallbackName } from './utils';\nimport { filterURLForDisplay } from '@wordpress/url';\n\ntype TreeBase = {\n\tid: number;\n\tname: string;\n\t[ key: string ]: any;\n};\n\ntype TreeWithParent = TreeBase & {\n\tparent: number;\n};\n\ntype TreeWithoutParent = TreeBase & {\n\tparent: null;\n};\n\ntype Tree = TreeWithParent | TreeWithoutParent;\n\nfunction buildTermsTree( flatTerms: Tree[] ) {\n\tconst flatTermsWithParentAndChildren = flatTerms.map( ( term ) => {\n\t\treturn {\n\t\t\tchildren: [],\n\t\t\t...term,\n\t\t};\n\t} );\n\n\t// All terms should have a `parent` because we're about to index them by it.\n\tif (\n\t\tflatTermsWithParentAndChildren.some(\n\t\t\t( { parent } ) => parent === null || parent === undefined\n\t\t)\n\t) {\n\t\treturn flatTermsWithParentAndChildren as TreeWithParent[];\n\t}\n\n\tconst termsByParent = (\n\t\tflatTermsWithParentAndChildren as TreeWithParent[]\n\t ).reduce(\n\t\t( acc, term ) => {\n\t\t\tconst { parent } = term;\n\t\t\tif ( ! acc[ parent ] ) {\n\t\t\t\tacc[ parent ] = [];\n\t\t\t}\n\t\t\tacc[ parent ].push( term );\n\t\t\treturn acc;\n\t\t},\n\t\t{} as Record< string, Array< TreeWithParent > >\n\t);\n\n\tconst fillWithChildren = (\n\t\tterms: Array< TreeWithParent >\n\t): Array< TreeWithParent > => {\n\t\treturn terms.map( ( term ) => {\n\t\t\tconst children = termsByParent[ term.id ];\n\t\t\treturn {\n\t\t\t\t...term,\n\t\t\t\tchildren:\n\t\t\t\t\tchildren && children.length\n\t\t\t\t\t\t? fillWithChildren( children )\n\t\t\t\t\t\t: [],\n\t\t\t};\n\t\t} );\n\t};\n\n\treturn fillWithChildren( termsByParent[ '0' ] || [] );\n}\n\nexport const getItemPriority = ( name: string, searchValue: string ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\nexport function PageAttributesParent( {\n\tdata,\n\tonChangeControl,\n}: {\n\tdata: BasePost;\n\tonChangeControl: ( newValue: number ) => void;\n} ) {\n\tconst [ fieldValue, setFieldValue ] = useState< null | string >( null );\n\n\tconst pageId = data.parent;\n\tconst postId = data.id;\n\tconst postTypeSlug = data.type;\n\n\tconst { parentPostTitle, pageItems, isHierarchical } = useSelect(\n\t\t( select ) => {\n\t\t\t// @ts-expect-error getPostType is not typed\n\t\t\tconst { getEntityRecord, getEntityRecords, getPostType } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst postTypeInfo = getPostType( postTypeSlug );\n\n\t\t\tconst postIsHierarchical =\n\t\t\t\tpostTypeInfo?.hierarchical && postTypeInfo.viewable;\n\n\t\t\tconst parentPost = pageId\n\t\t\t\t? getEntityRecord< BasePost >(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\t\tpageId\n\t\t\t\t )\n\t\t\t\t: null;\n\n\t\t\tconst query = {\n\t\t\t\tper_page: 100,\n\t\t\t\texclude: postId,\n\t\t\t\tparent_exclude: postId,\n\t\t\t\torderby: 'menu_order',\n\t\t\t\torder: 'asc',\n\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t...( fieldValue !== null && {\n\t\t\t\t\tsearch: fieldValue,\n\t\t\t\t} ),\n\t\t\t};\n\n\t\t\treturn {\n\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\tparentPostTitle: parentPost\n\t\t\t\t\t? getTitleWithFallbackName( parentPost )\n\t\t\t\t\t: '',\n\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t? getEntityRecords< BasePost >(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\t\t\tquery\n\t\t\t\t\t )\n\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ fieldValue, pageId, postId, postTypeSlug ]\n\t);\n\n\t/**\n\t * This logic has been copied from https://github.com/WordPress/gutenberg/blob/0249771b519d5646171fb9fae422006c8ab773f2/packages/editor/src/components/page-attributes/parent.js#L106.\n\t */\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = (\n\t\t\ttree: Array< Tree >,\n\t\t\tlevel = 0\n\t\t): Array< {\n\t\t\tvalue: number;\n\t\t\tlabel: string;\n\t\t\trawName: string;\n\t\t} > => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority(\n\t\t\t\t\ta.rawName,\n\t\t\t\t\tfieldValue ?? ''\n\t\t\t\t);\n\t\t\t\tconst priorityB = getItemPriority(\n\t\t\t\t\tb.rawName,\n\t\t\t\t\tfieldValue ?? ''\n\t\t\t\t);\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id as number,\n\t\t\tparent: item.parent ?? null,\n\t\t\tname: getTitleWithFallbackName( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find( ( item ) => item.value === pageId );\n\t\tif ( pageId && parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: pageId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t\trawName: '',\n\t\t\t} );\n\t\t}\n\t\treturn opts.map( ( option ) => ( {\n\t\t\t...option,\n\t\t\tvalue: option.value.toString(),\n\t\t} ) );\n\t}, [ pageItems, fieldValue, parentPostTitle, pageId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue: string ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId: string | null | undefined ) => {\n\t\tif ( selectedPostId ) {\n\t\t\treturn onChangeControl( parseInt( selectedPostId, 10 ) ?? 0 );\n\t\t}\n\n\t\tonChangeControl( 0 );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ pageId?.toString() }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce(\n\t\t\t\t( value: unknown ) => handleKeydown( value as string ),\n\t\t\t\t300\n\t\t\t) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nexport const ParentEdit = ( {\n\tdata,\n\tfield,\n\tonChange,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// @ts-expect-error getEntityRecord is not typed with unstableBase as argument.\n\t\treturn select( coreStore ).getEntityRecord< {\n\t\t\thome: string;\n\t\t} >( 'root', '__unstableBase' )?.home as string;\n\t}, [] );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue?: number ) =>\n\t\t\tonChange( {\n\t\t\t\t[ id ]: newValue,\n\t\t\t} ),\n\t\t[ id, onChange ]\n\t);\n\n\treturn (\n\t\t<fieldset className=\"fields-controls__parent\">\n\t\t\t<div>\n\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t'<wbr />$1'\n\t\t\t\t\t\t)\n\t\t\t\t\t),\n\t\t\t\t\t{\n\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\t<p>\n\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tchildren={ undefined }\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</p>\n\t\t\t\t<PageAttributesParent\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tonChangeControl={ onChangeControl }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_removeAccents","_interopRequireDefault","require","_components","_data","_element","_coreData","_compose","_htmlEntities","_i18n","_url","_utils","_jsxRuntime","buildTermsTree","flatTerms","flatTermsWithParentAndChildren","map","term","children","some","parent","undefined","termsByParent","reduce","acc","push","fillWithChildren","terms","id","length","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","Infinity","exports","PageAttributesParent","data","onChangeControl","fieldValue","setFieldValue","useState","pageId","postId","postTypeSlug","type","parentPostTitle","pageItems","isHierarchical","useSelect","select","getEntityRecord","getEntityRecords","getPostType","coreStore","postTypeInfo","postIsHierarchical","hierarchical","viewable","parentPost","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","getTitleWithFallbackName","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","treeNode","value","label","repeat","decodeEntities","rawName","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","_item$parent","opts","optsHasParent","find","unshift","option","toString","handleKeydown","inputValue","handleChange","selectedPostId","_parseInt","parseInt","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","__","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","ParentEdit","field","homeUrl","home","useCallback","newValue","className","jsxs","createInterpolateElement","sprintf","filterURLForDisplay","replace","wbr","ExternalLink","href"],"sources":["@wordpress/fields/src/fields/parent/parent-edit.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { ComboboxControl, ExternalLink } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tcreateInterpolateElement,\n\tuseCallback,\n\tuseMemo,\n\tuseState,\n} from '@wordpress/element';\n// @ts-ignore\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\nimport { debounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getTitleWithFallbackName } from './utils';\n\ntype TreeBase = {\n\tid: number;\n\tname: string;\n\t[ key: string ]: any;\n};\n\ntype TreeWithParent = TreeBase & {\n\tparent: number;\n};\n\ntype TreeWithoutParent = TreeBase & {\n\tparent: null;\n};\n\ntype Tree = TreeWithParent | TreeWithoutParent;\n\nfunction buildTermsTree( flatTerms: Tree[] ) {\n\tconst flatTermsWithParentAndChildren = flatTerms.map( ( term ) => {\n\t\treturn {\n\t\t\tchildren: [],\n\t\t\t...term,\n\t\t};\n\t} );\n\n\t// All terms should have a `parent` because we're about to index them by it.\n\tif (\n\t\tflatTermsWithParentAndChildren.some(\n\t\t\t( { parent } ) => parent === null || parent === undefined\n\t\t)\n\t) {\n\t\treturn flatTermsWithParentAndChildren as TreeWithParent[];\n\t}\n\n\tconst termsByParent = (\n\t\tflatTermsWithParentAndChildren as TreeWithParent[]\n\t ).reduce(\n\t\t( acc, term ) => {\n\t\t\tconst { parent } = term;\n\t\t\tif ( ! acc[ parent ] ) {\n\t\t\t\tacc[ parent ] = [];\n\t\t\t}\n\t\t\tacc[ parent ].push( term );\n\t\t\treturn acc;\n\t\t},\n\t\t{} as Record< string, Array< TreeWithParent > >\n\t);\n\n\tconst fillWithChildren = (\n\t\tterms: Array< TreeWithParent >\n\t): Array< TreeWithParent > => {\n\t\treturn terms.map( ( term ) => {\n\t\t\tconst children = termsByParent[ term.id ];\n\t\t\treturn {\n\t\t\t\t...term,\n\t\t\t\tchildren:\n\t\t\t\t\tchildren && children.length\n\t\t\t\t\t\t? fillWithChildren( children )\n\t\t\t\t\t\t: [],\n\t\t\t};\n\t\t} );\n\t};\n\n\treturn fillWithChildren( termsByParent[ '0' ] || [] );\n}\n\nexport const getItemPriority = ( name: string, searchValue: string ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\nexport function PageAttributesParent( {\n\tdata,\n\tonChangeControl,\n}: {\n\tdata: BasePost;\n\tonChangeControl: ( newValue: number ) => void;\n} ) {\n\tconst [ fieldValue, setFieldValue ] = useState< null | string >( null );\n\n\tconst pageId = data.parent;\n\tconst postId = data.id;\n\tconst postTypeSlug = data.type;\n\n\tconst { parentPostTitle, pageItems, isHierarchical } = useSelect(\n\t\t( select ) => {\n\t\t\t// @ts-expect-error getPostType is not typed\n\t\t\tconst { getEntityRecord, getEntityRecords, getPostType } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst postTypeInfo = getPostType( postTypeSlug );\n\n\t\t\tconst postIsHierarchical =\n\t\t\t\tpostTypeInfo?.hierarchical && postTypeInfo.viewable;\n\n\t\t\tconst parentPost = pageId\n\t\t\t\t? getEntityRecord< BasePost >(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\t\tpageId\n\t\t\t\t )\n\t\t\t\t: null;\n\n\t\t\tconst query = {\n\t\t\t\tper_page: 100,\n\t\t\t\texclude: postId,\n\t\t\t\tparent_exclude: postId,\n\t\t\t\torderby: 'menu_order',\n\t\t\t\torder: 'asc',\n\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t...( fieldValue !== null && {\n\t\t\t\t\tsearch: fieldValue,\n\t\t\t\t} ),\n\t\t\t};\n\n\t\t\treturn {\n\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\tparentPostTitle: parentPost\n\t\t\t\t\t? getTitleWithFallbackName( parentPost )\n\t\t\t\t\t: '',\n\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t? getEntityRecords< BasePost >(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\t\t\tquery\n\t\t\t\t\t )\n\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ fieldValue, pageId, postId, postTypeSlug ]\n\t);\n\n\t/**\n\t * This logic has been copied from https://github.com/WordPress/gutenberg/blob/0249771b519d5646171fb9fae422006c8ab773f2/packages/editor/src/components/page-attributes/parent.js#L106.\n\t */\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = (\n\t\t\ttree: Array< Tree >,\n\t\t\tlevel = 0\n\t\t): Array< {\n\t\t\tvalue: number;\n\t\t\tlabel: string;\n\t\t\trawName: string;\n\t\t} > => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority(\n\t\t\t\t\ta.rawName,\n\t\t\t\t\tfieldValue ?? ''\n\t\t\t\t);\n\t\t\t\tconst priorityB = getItemPriority(\n\t\t\t\t\tb.rawName,\n\t\t\t\t\tfieldValue ?? ''\n\t\t\t\t);\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id as number,\n\t\t\tparent: item.parent ?? null,\n\t\t\tname: getTitleWithFallbackName( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find( ( item ) => item.value === pageId );\n\t\tif ( pageId && parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: pageId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t\trawName: '',\n\t\t\t} );\n\t\t}\n\t\treturn opts.map( ( option ) => ( {\n\t\t\t...option,\n\t\t\tvalue: option.value.toString(),\n\t\t} ) );\n\t}, [ pageItems, fieldValue, parentPostTitle, pageId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue: string ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId: string | null | undefined ) => {\n\t\tif ( selectedPostId ) {\n\t\t\treturn onChangeControl( parseInt( selectedPostId, 10 ) ?? 0 );\n\t\t}\n\n\t\tonChangeControl( 0 );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ pageId?.toString() }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce(\n\t\t\t\t( value: unknown ) => handleKeydown( value as string ),\n\t\t\t\t300\n\t\t\t) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nexport const ParentEdit = ( {\n\tdata,\n\tfield,\n\tonChange,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// @ts-expect-error getEntityRecord is not typed with unstableBase as argument.\n\t\treturn select( coreStore ).getEntityRecord< {\n\t\t\thome: string;\n\t\t} >( 'root', '__unstableBase' )?.home as string;\n\t}, [] );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue?: number ) =>\n\t\t\tonChange( {\n\t\t\t\t[ id ]: newValue,\n\t\t\t} ),\n\t\t[ id, onChange ]\n\t);\n\n\treturn (\n\t\t<fieldset className=\"fields-controls__parent\">\n\t\t\t<div>\n\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t'<wbr />$1'\n\t\t\t\t\t\t)\n\t\t\t\t\t),\n\t\t\t\t\t{\n\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\t<p>\n\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tchildren={ undefined }\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</p>\n\t\t\t\t<PageAttributesParent\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tonChangeControl={ onChangeControl }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n};\n"],"mappings":";;;;;;;;AAGA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAOA,IAAAI,SAAA,GAAAJ,OAAA;AAEA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,IAAA,GAAAR,OAAA;AAMA,IAAAS,MAAA,GAAAT,OAAA;AAAmD,IAAAU,WAAA,GAAAV,OAAA;AA5BnD;AACA;AACA;;AAGA;AACA;AACA;;AASA;;AAQA;AACA;AACA;;AAoBA,SAASW,cAAcA,CAAEC,SAAiB,EAAG;EAC5C,MAAMC,8BAA8B,GAAGD,SAAS,CAACE,GAAG,CAAIC,IAAI,IAAM;IACjE,OAAO;MACNC,QAAQ,EAAE,EAAE;MACZ,GAAGD;IACJ,CAAC;EACF,CAAE,CAAC;;EAEH;EACA,IACCF,8BAA8B,CAACI,IAAI,CAClC,CAAE;IAAEC;EAAO,CAAC,KAAMA,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAKC,SACjD,CAAC,EACA;IACD,OAAON,8BAA8B;EACtC;EAEA,MAAMO,aAAa,GAClBP,8BAA8B,CAC5BQ,MAAM,CACR,CAAEC,GAAG,EAAEP,IAAI,KAAM;IAChB,MAAM;MAAEG;IAAO,CAAC,GAAGH,IAAI;IACvB,IAAK,CAAEO,GAAG,CAAEJ,MAAM,CAAE,EAAG;MACtBI,GAAG,CAAEJ,MAAM,CAAE,GAAG,EAAE;IACnB;IACAI,GAAG,CAAEJ,MAAM,CAAE,CAACK,IAAI,CAAER,IAAK,CAAC;IAC1B,OAAOO,GAAG;EACX,CAAC,EACD,CAAC,CACF,CAAC;EAED,MAAME,gBAAgB,GACrBC,KAA8B,IACD;IAC7B,OAAOA,KAAK,CAACX,GAAG,CAAIC,IAAI,IAAM;MAC7B,MAAMC,QAAQ,GAAGI,aAAa,CAAEL,IAAI,CAACW,EAAE,CAAE;MACzC,OAAO;QACN,GAAGX,IAAI;QACPC,QAAQ,EACPA,QAAQ,IAAIA,QAAQ,CAACW,MAAM,GACxBH,gBAAgB,CAAER,QAAS,CAAC,GAC5B;MACL,CAAC;IACF,CAAE,CAAC;EACJ,CAAC;EAED,OAAOQ,gBAAgB,CAAEJ,aAAa,CAAE,GAAG,CAAE,IAAI,EAAG,CAAC;AACtD;AAEO,MAAMQ,eAAe,GAAGA,CAAEC,IAAY,EAAEC,WAAmB,KAAM;EACvE,MAAMC,cAAc,GAAG,IAAAC,sBAAa,EAAEH,IAAI,IAAI,EAAG,CAAC,CAACI,WAAW,CAAC,CAAC;EAChE,MAAMC,gBAAgB,GAAG,IAAAF,sBAAa,EAAEF,WAAW,IAAI,EAAG,CAAC,CAACG,WAAW,CAAC,CAAC;EACzE,IAAKF,cAAc,KAAKG,gBAAgB,EAAG;IAC1C,OAAO,CAAC;EACT;EAEA,IAAKH,cAAc,CAACI,UAAU,CAAED,gBAAiB,CAAC,EAAG;IACpD,OAAOH,cAAc,CAACJ,MAAM;EAC7B;EAEA,OAAOS,QAAQ;AAChB,CAAC;AAACC,OAAA,CAAAT,eAAA,GAAAA,eAAA;AAEK,SAASU,oBAAoBA,CAAE;EACrCC,IAAI;EACJC;AAID,CAAC,EAAG;EACH,MAAM,CAAEC,UAAU,EAAEC,aAAa,CAAE,GAAG,IAAAC,iBAAQ,EAAmB,IAAK,CAAC;EAEvE,MAAMC,MAAM,GAAGL,IAAI,CAACrB,MAAM;EAC1B,MAAM2B,MAAM,GAAGN,IAAI,CAACb,EAAE;EACtB,MAAMoB,YAAY,GAAGP,IAAI,CAACQ,IAAI;EAE9B,MAAM;IAAEC,eAAe;IAAEC,SAAS;IAAEC;EAAe,CAAC,GAAG,IAAAC,eAAS,EAC7DC,MAAM,IAAM;IACb;IACA,MAAM;MAAEC,eAAe;MAAEC,gBAAgB;MAAEC;IAAY,CAAC,GACvDH,MAAM,CAAEI,eAAU,CAAC;IAEpB,MAAMC,YAAY,GAAGF,WAAW,CAAET,YAAa,CAAC;IAEhD,MAAMY,kBAAkB,GACvBD,YAAY,EAAEE,YAAY,IAAIF,YAAY,CAACG,QAAQ;IAEpD,MAAMC,UAAU,GAAGjB,MAAM,GACtBS,eAAe,CACf,UAAU,EACVP,YAAY,EACZF,MACA,CAAC,GACD,IAAI;IAEP,MAAMkB,KAAK,GAAG;MACbC,QAAQ,EAAE,GAAG;MACbC,OAAO,EAAEnB,MAAM;MACfoB,cAAc,EAAEpB,MAAM;MACtBqB,OAAO,EAAE,YAAY;MACrBC,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,iBAAiB;MAC1B,IAAK3B,UAAU,KAAK,IAAI,IAAI;QAC3B4B,MAAM,EAAE5B;MACT,CAAC;IACF,CAAC;IAED,OAAO;MACNS,cAAc,EAAEQ,kBAAkB;MAClCV,eAAe,EAAEa,UAAU,GACxB,IAAAS,+BAAwB,EAAET,UAAW,CAAC,GACtC,EAAE;MACLZ,SAAS,EAAES,kBAAkB,GAC1BJ,gBAAgB,CAChB,UAAU,EACVR,YAAY,EACZgB,KACA,CAAC,GACD;IACJ,CAAC;EACF,CAAC,EACD,CAAErB,UAAU,EAAEG,MAAM,EAAEC,MAAM,EAAEC,YAAY,CAC3C,CAAC;;EAED;AACD;AACA;EACC,MAAMyB,aAAa,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACpC,MAAMC,kBAAkB,GAAGA,CAC1BC,IAAmB,EACnBC,KAAK,GAAG,CAAC,KAKH;MACN,MAAMC,WAAW,GAAGF,IAAI,CAAC5D,GAAG,CAAI+D,QAAQ,IAAM,CAC7C;QACCC,KAAK,EAAED,QAAQ,CAACnD,EAAE;QAClBqD,KAAK,EACJ,IAAI,CAACC,MAAM,CAAEL,KAAM,CAAC,GAAG,IAAAM,4BAAc,EAAEJ,QAAQ,CAAChD,IAAK,CAAC;QACvDqD,OAAO,EAAEL,QAAQ,CAAChD;MACnB,CAAC,EACD,GAAG4C,kBAAkB,CAAEI,QAAQ,CAAC7D,QAAQ,IAAI,EAAE,EAAE2D,KAAK,GAAG,CAAE,CAAC,CAC1D,CAAC;MAEH,MAAMQ,WAAW,GAAGP,WAAW,CAACQ,IAAI,CAAE,CAAE,CAAEC,CAAC,CAAE,EAAE,CAAEC,CAAC,CAAE,KAAM;QACzD,MAAMC,SAAS,GAAG3D,eAAe,CAChCyD,CAAC,CAACH,OAAO,EACTzC,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,EACf,CAAC;QACD,MAAM+C,SAAS,GAAG5D,eAAe,CAChC0D,CAAC,CAACJ,OAAO,EACTzC,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,EACf,CAAC;QACD,OAAO8C,SAAS,IAAIC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;MACvC,CAAE,CAAC;MAEH,OAAOL,WAAW,CAACM,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,IAAK,CAAExC,SAAS,EAAG;MAClB,OAAO,EAAE;IACV;IAEA,IAAIyB,IAAI,GAAGzB,SAAS,CAACnC,GAAG,CAAI4E,IAAI;MAAA,IAAAC,YAAA;MAAA,OAAQ;QACvCjE,EAAE,EAAEgE,IAAI,CAAChE,EAAY;QACrBR,MAAM,GAAAyE,YAAA,GAAED,IAAI,CAACxE,MAAM,cAAAyE,YAAA,cAAAA,YAAA,GAAI,IAAI;QAC3B9D,IAAI,EAAE,IAAAyC,+BAAwB,EAAEoB,IAAK;MACtC,CAAC;IAAA,CAAG,CAAC;;IAEL;IACA,IAAK,CAAEjD,UAAU,EAAG;MACnBiC,IAAI,GAAG/D,cAAc,CAAE+D,IAAK,CAAC;IAC9B;IAEA,MAAMkB,IAAI,GAAGnB,kBAAkB,CAAEC,IAAK,CAAC;;IAEvC;IACA,MAAMmB,aAAa,GAAGD,IAAI,CAACE,IAAI,CAAIJ,IAAI,IAAMA,IAAI,CAACZ,KAAK,KAAKlC,MAAO,CAAC;IACpE,IAAKA,MAAM,IAAII,eAAe,IAAI,CAAE6C,aAAa,EAAG;MACnDD,IAAI,CAACG,OAAO,CAAE;QACbjB,KAAK,EAAElC,MAAM;QACbmC,KAAK,EAAE/B,eAAe;QACtBkC,OAAO,EAAE;MACV,CAAE,CAAC;IACJ;IACA,OAAOU,IAAI,CAAC9E,GAAG,CAAIkF,MAAM,KAAQ;MAChC,GAAGA,MAAM;MACTlB,KAAK,EAAEkB,MAAM,CAAClB,KAAK,CAACmB,QAAQ,CAAC;IAC9B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEhD,SAAS,EAAER,UAAU,EAAEO,eAAe,EAAEJ,MAAM,CAAG,CAAC;EAEvD,IAAK,CAAEM,cAAc,EAAG;IACvB,OAAO,IAAI;EACZ;;EAEA;AACD;AACA;AACA;AACA;EACC,MAAMgD,aAAa,GAAKC,UAAkB,IAAM;IAC/CzD,aAAa,CAAEyD,UAAW,CAAC;EAC5B,CAAC;;EAED;AACD;AACA;AACA;AACA;EACC,MAAMC,YAAY,GAAKC,cAAyC,IAAM;IACrE,IAAKA,cAAc,EAAG;MAAA,IAAAC,SAAA;MACrB,OAAO9D,eAAe,EAAA8D,SAAA,GAAEC,QAAQ,CAAEF,cAAc,EAAE,EAAG,CAAC,cAAAC,SAAA,cAAAA,SAAA,GAAI,CAAE,CAAC;IAC9D;IAEA9D,eAAe,CAAE,CAAE,CAAC;EACrB,CAAC;EAED,oBACC,IAAA9B,WAAA,CAAA8F,GAAA,EAACvG,WAAA,CAAAwG,eAAe;IACfC,uBAAuB;IACvBC,qBAAqB;IACrB5B,KAAK,EAAG,IAAA6B,QAAE,EAAE,QAAS,CAAG;IACxBC,IAAI,EAAG,IAAAD,QAAE,EAAE,uBAAwB,CAAG;IACtC9B,KAAK,EAAGlC,MAAM,EAAEqD,QAAQ,CAAC,CAAG;IAC5Ba,OAAO,EAAGvC,aAAe;IACzBwC,mBAAmB,EAAG,IAAAC,iBAAQ,EAC3BlC,KAAc,IAAMoB,aAAa,CAAEpB,KAAgB,CAAC,EACtD,GACD,CAAG;IACHmC,QAAQ,EAAGb,YAAc;IACzBc,mBAAmB;EAAA,CACnB,CAAC;AAEJ;AAEO,MAAMC,UAAU,GAAGA,CAAE;EAC3B5E,IAAI;EACJ6E,KAAK;EACLH;AACiC,CAAC,KAAM;EACxC,MAAM;IAAEvF;EAAG,CAAC,GAAG0F,KAAK;EAEpB,MAAMC,OAAO,GAAG,IAAAlE,eAAS,EAAIC,MAAM,IAAM;IACxC;IACA,OAAOA,MAAM,CAAEI,eAAU,CAAC,CAACH,eAAe,CAErC,MAAM,EAAE,gBAAiB,CAAC,EAAEiE,IAAI;EACtC,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM9E,eAAe,GAAG,IAAA+E,oBAAW,EAChCC,QAAiB,IAClBP,QAAQ,CAAE;IACT,CAAEvF,EAAE,GAAI8F;EACT,CAAE,CAAC,EACJ,CAAE9F,EAAE,EAAEuF,QAAQ,CACf,CAAC;EAED,oBACC,IAAAvG,WAAA,CAAA8F,GAAA;IAAUiB,SAAS,EAAC,yBAAyB;IAAAzG,QAAA,eAC5C,IAAAN,WAAA,CAAAgH,IAAA;MAAA1G,QAAA,GACG,IAAA2G,iCAAwB,EACzB,IAAAC,aAAO,EACN;MACA,IAAAhB,QAAE,EACD,0LACD,CAAC,EACD,IAAAiB,wBAAmB,EAAER,OAAQ,CAAC,CAACS,OAAO,CACrC,SAAS,EACT,WACD,CACD,CAAC,EACD;QACCC,GAAG,eAAE,IAAArH,WAAA,CAAA8F,GAAA,WAAM;MACZ,CACD,CAAC,eACD,IAAA9F,WAAA,CAAA8F,GAAA;QAAAxF,QAAA,EACG,IAAA2G,iCAAwB,EACzB,IAAAf,QAAE,EACD,mFACD,CAAC,EACD;UACCvB,CAAC,eACA,IAAA3E,WAAA,CAAA8F,GAAA,EAACvG,WAAA,CAAA+H,YAAY;YACZC,IAAI,EAAG,IAAArB,QAAE,EACR,yFACD,CAAG;YACH5F,QAAQ,EAAGG;UAAW,CACtB;QAEH,CACD;MAAC,CACC,CAAC,eACJ,IAAAT,WAAA,CAAA8F,GAAA,EAAClE,oBAAoB;QACpBC,IAAI,EAAGA,IAAM;QACbC,eAAe,EAAGA;MAAiB,CACnC,CAAC;IAAA,CACE;EAAC,CACG,CAAC;AAEb,CAAC;AAACH,OAAA,CAAA8E,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ParentView = void 0;
7
7
  var _data = require("@wordpress/data");
8
8
  var _coreData = require("@wordpress/core-data");
9
- var _utils = require("./utils");
10
9
  var _i18n = require("@wordpress/i18n");
10
+ var _utils = require("./utils");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  /**
13
13
  * WordPress dependencies
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_coreData","_utils","_i18n","_jsxRuntime","ParentView","item","parent","useSelect","select","getEntityRecord","coreStore","type","jsx","Fragment","children","getTitleWithFallbackName","__","exports"],"sources":["@wordpress/fields/src/fields/parent/parent-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport type { DataViewRenderFieldProps } from '@wordpress/dataviews';\nimport { getTitleWithFallbackName } from './utils';\nimport { __ } from '@wordpress/i18n';\n\nexport const ParentView = ( {\n\titem,\n}: DataViewRenderFieldProps< BasePost > ) => {\n\tconst parent = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn item?.parent\n\t\t\t\t? getEntityRecord( 'postType', item.type, item.parent )\n\t\t\t\t: null;\n\t\t},\n\t\t[ item.parent, item.type ]\n\t);\n\n\tif ( parent ) {\n\t\treturn <>{ getTitleWithFallbackName( parent ) }</>;\n\t}\n\n\treturn <>{ __( 'None' ) }</>;\n};\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAOA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAAqC,IAAAI,WAAA,GAAAJ,OAAA;AAZrC;AACA;AACA;;AAIA;AACA;AACA;;AAMO,MAAMK,UAAU,GAAGA,CAAE;EAC3BC;AACqC,CAAC,KAAM;EAC5C,MAAMC,MAAM,GAAG,IAAAC,eAAS,EACrBC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAgB,CAAC,GAAGD,MAAM,CAAEE,eAAU,CAAC;IAC/C,OAAOL,IAAI,EAAEC,MAAM,GAChBG,eAAe,CAAE,UAAU,EAAEJ,IAAI,CAACM,IAAI,EAAEN,IAAI,CAACC,MAAO,CAAC,GACrD,IAAI;EACR,CAAC,EACD,CAAED,IAAI,CAACC,MAAM,EAAED,IAAI,CAACM,IAAI,CACzB,CAAC;EAED,IAAKL,MAAM,EAAG;IACb,oBAAO,IAAAH,WAAA,CAAAS,GAAA,EAAAT,WAAA,CAAAU,QAAA;MAAAC,QAAA,EAAI,IAAAC,+BAAwB,EAAET,MAAO;IAAC,CAAI,CAAC;EACnD;EAEA,oBAAO,IAAAH,WAAA,CAAAS,GAAA,EAAAT,WAAA,CAAAU,QAAA;IAAAC,QAAA,EAAI,IAAAE,QAAE,EAAE,MAAO;EAAC,CAAI,CAAC;AAC7B,CAAC;AAACC,OAAA,CAAAb,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_coreData","_i18n","_utils","_jsxRuntime","ParentView","item","parent","useSelect","select","getEntityRecord","coreStore","type","jsx","Fragment","children","getTitleWithFallbackName","__","exports"],"sources":["@wordpress/fields/src/fields/parent/parent-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { DataViewRenderFieldProps } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getTitleWithFallbackName } from './utils';\n\nexport const ParentView = ( {\n\titem,\n}: DataViewRenderFieldProps< BasePost > ) => {\n\tconst parent = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn item?.parent\n\t\t\t\t? getEntityRecord( 'postType', item.type, item.parent )\n\t\t\t\t: null;\n\t\t},\n\t\t[ item.parent, item.type ]\n\t);\n\n\tif ( parent ) {\n\t\treturn <>{ getTitleWithFallbackName( parent ) }</>;\n\t}\n\n\treturn <>{ __( 'None' ) }</>;\n};\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,KAAA,GAAAF,OAAA;AAMA,IAAAG,MAAA,GAAAH,OAAA;AAAmD,IAAAI,WAAA,GAAAJ,OAAA;AAZnD;AACA;AACA;;AAMA;AACA;AACA;;AAIO,MAAMK,UAAU,GAAGA,CAAE;EAC3BC;AACqC,CAAC,KAAM;EAC5C,MAAMC,MAAM,GAAG,IAAAC,eAAS,EACrBC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAgB,CAAC,GAAGD,MAAM,CAAEE,eAAU,CAAC;IAC/C,OAAOL,IAAI,EAAEC,MAAM,GAChBG,eAAe,CAAE,UAAU,EAAEJ,IAAI,CAACM,IAAI,EAAEN,IAAI,CAACC,MAAO,CAAC,GACrD,IAAI;EACR,CAAC,EACD,CAAED,IAAI,CAACC,MAAM,EAAED,IAAI,CAACM,IAAI,CACzB,CAAC;EAED,IAAKL,MAAM,EAAG;IACb,oBAAO,IAAAH,WAAA,CAAAS,GAAA,EAAAT,WAAA,CAAAU,QAAA;MAAAC,QAAA,EAAI,IAAAC,+BAAwB,EAAET,MAAO;IAAC,CAAI,CAAC;EACnD;EAEA,oBAAO,IAAAH,WAAA,CAAAS,GAAA,EAAAT,WAAA,CAAAU,QAAA;IAAAC,QAAA,EAAI,IAAAE,QAAE,EAAE,MAAO;EAAC,CAAI,CAAC;AAC7B,CAAC;AAACC,OAAA,CAAAb,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _components = require("@wordpress/components");
8
+ var _element = require("@wordpress/element");
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ function PasswordEdit({
20
+ data,
21
+ onChange,
22
+ field
23
+ }) {
24
+ const [showPassword, setShowPassword] = (0, _element.useState)(!!field.getValue({
25
+ item: data
26
+ }));
27
+ const handleTogglePassword = value => {
28
+ setShowPassword(value);
29
+ if (!value) {
30
+ onChange({
31
+ password: ''
32
+ });
33
+ }
34
+ };
35
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
36
+ as: "fieldset",
37
+ spacing: 4,
38
+ className: "fields-controls__password",
39
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.CheckboxControl, {
40
+ __nextHasNoMarginBottom: true,
41
+ label: (0, _i18n.__)('Password protected'),
42
+ help: (0, _i18n.__)('Only visible to those who know the password'),
43
+ checked: showPassword,
44
+ onChange: handleTogglePassword
45
+ }), showPassword && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
46
+ className: "fields-controls__password-input",
47
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TextControl, {
48
+ label: (0, _i18n.__)('Password'),
49
+ onChange: value => onChange({
50
+ password: value
51
+ }),
52
+ value: field.getValue({
53
+ item: data
54
+ }) || '',
55
+ placeholder: (0, _i18n.__)('Use a secure password'),
56
+ type: "text",
57
+ __next40pxDefaultSize: true,
58
+ __nextHasNoMarginBottom: true,
59
+ maxLength: 255
60
+ })
61
+ })]
62
+ });
63
+ }
64
+ var _default = exports.default = PasswordEdit;
65
+ //# sourceMappingURL=edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_element","_i18n","_jsxRuntime","PasswordEdit","data","onChange","field","showPassword","setShowPassword","useState","getValue","item","handleTogglePassword","value","password","jsxs","__experimentalVStack","as","spacing","className","children","jsx","CheckboxControl","__nextHasNoMarginBottom","label","__","help","checked","TextControl","placeholder","type","__next40pxDefaultSize","maxLength","_default","exports","default"],"sources":["@wordpress/fields/src/fields/password/edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tCheckboxControl,\n\t__experimentalVStack as VStack,\n\tTextControl,\n} from '@wordpress/components';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\n\nfunction PasswordEdit( {\n\tdata,\n\tonChange,\n\tfield,\n}: DataFormControlProps< BasePost > ) {\n\tconst [ showPassword, setShowPassword ] = useState(\n\t\t!! field.getValue( { item: data } )\n\t);\n\n\tconst handleTogglePassword = ( value: boolean ) => {\n\t\tsetShowPassword( value );\n\t\tif ( ! value ) {\n\t\t\tonChange( { password: '' } );\n\t\t}\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tas=\"fieldset\"\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"fields-controls__password\"\n\t\t>\n\t\t\t<CheckboxControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Password protected' ) }\n\t\t\t\thelp={ __( 'Only visible to those who know the password' ) }\n\t\t\t\tchecked={ showPassword }\n\t\t\t\tonChange={ handleTogglePassword }\n\t\t\t/>\n\t\t\t{ showPassword && (\n\t\t\t\t<div className=\"fields-controls__password-input\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Password' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\tpassword: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ field.getValue( { item: data } ) || '' }\n\t\t\t\t\t\tplaceholder={ __( 'Use a secure password' ) }\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tmaxLength={ 255 }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\nexport default PasswordEdit;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAMA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAAqC,IAAAG,WAAA,GAAAH,OAAA;AAVrC;AACA;AACA;;AAUA;AACA;AACA;;AAGA,SAASI,YAAYA,CAAE;EACtBC,IAAI;EACJC,QAAQ;EACRC;AACiC,CAAC,EAAG;EACrC,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAC,iBAAQ,EACjD,CAAC,CAAEH,KAAK,CAACI,QAAQ,CAAE;IAAEC,IAAI,EAAEP;EAAK,CAAE,CACnC,CAAC;EAED,MAAMQ,oBAAoB,GAAKC,KAAc,IAAM;IAClDL,eAAe,CAAEK,KAAM,CAAC;IACxB,IAAK,CAAEA,KAAK,EAAG;MACdR,QAAQ,CAAE;QAAES,QAAQ,EAAE;MAAG,CAAE,CAAC;IAC7B;EACD,CAAC;EAED,oBACC,IAAAZ,WAAA,CAAAa,IAAA,EAACjB,WAAA,CAAAkB,oBAAM;IACNC,EAAE,EAAC,UAAU;IACbC,OAAO,EAAG,CAAG;IACbC,SAAS,EAAC,2BAA2B;IAAAC,QAAA,gBAErC,IAAAlB,WAAA,CAAAmB,GAAA,EAACvB,WAAA,CAAAwB,eAAe;MACfC,uBAAuB;MACvBC,KAAK,EAAG,IAAAC,QAAE,EAAE,oBAAqB,CAAG;MACpCC,IAAI,EAAG,IAAAD,QAAE,EAAE,6CAA8C,CAAG;MAC5DE,OAAO,EAAGpB,YAAc;MACxBF,QAAQ,EAAGO;IAAsB,CACjC,CAAC,EACAL,YAAY,iBACb,IAAAL,WAAA,CAAAmB,GAAA;MAAKF,SAAS,EAAC,iCAAiC;MAAAC,QAAA,eAC/C,IAAAlB,WAAA,CAAAmB,GAAA,EAACvB,WAAA,CAAA8B,WAAW;QACXJ,KAAK,EAAG,IAAAC,QAAE,EAAE,UAAW,CAAG;QAC1BpB,QAAQ,EAAKQ,KAAK,IACjBR,QAAQ,CAAE;UACTS,QAAQ,EAAED;QACX,CAAE,CACF;QACDA,KAAK,EAAGP,KAAK,CAACI,QAAQ,CAAE;UAAEC,IAAI,EAAEP;QAAK,CAAE,CAAC,IAAI,EAAI;QAChDyB,WAAW,EAAG,IAAAJ,QAAE,EAAE,uBAAwB,CAAG;QAC7CK,IAAI,EAAC,MAAM;QACXC,qBAAqB;QACrBR,uBAAuB;QACvBS,SAAS,EAAG;MAAK,CACjB;IAAC,CACE,CACL;EAAA,CACM,CAAC;AAEX;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACchC,YAAY","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _edit = _interopRequireDefault(require("./edit"));
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+
17
+ const passwordField = {
18
+ id: 'password',
19
+ type: 'text',
20
+ Edit: _edit.default,
21
+ enableSorting: false,
22
+ enableHiding: false,
23
+ isVisible: item => item.status !== 'private'
24
+ };
25
+
26
+ /**
27
+ * This field is used to display the post password.
28
+ */
29
+ var _default = exports.default = passwordField;
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_edit","_interopRequireDefault","require","passwordField","id","type","Edit","PasswordEdit","enableSorting","enableHiding","isVisible","item","status","_default","exports","default"],"sources":["@wordpress/fields/src/fields/password/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport PasswordEdit from './edit';\n\nconst passwordField: Field< BasePost > = {\n\tid: 'password',\n\ttype: 'text',\n\tEdit: PasswordEdit,\n\tenableSorting: false,\n\tenableHiding: false,\n\tisVisible: ( item ) => item.status !== 'private',\n};\n\n/**\n * This field is used to display the post password.\n */\nexport default passwordField;\n"],"mappings":";;;;;;;AASA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,MAAMC,aAAgC,GAAG;EACxCC,EAAE,EAAE,UAAU;EACdC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAEC,aAAY;EAClBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAIC,IAAI,IAAMA,IAAI,CAACC,MAAM,KAAK;AACxC,CAAC;;AAED;AACA;AACA;AAFA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGeZ,aAAa","ignoreList":[]}
@@ -20,9 +20,6 @@ const slugField = {
20
20
  id: 'slug',
21
21
  type: 'text',
22
22
  label: (0, _i18n.__)('Slug'),
23
- getValue: ({
24
- item
25
- }) => item.slug,
26
23
  Edit: _slugEdit.default,
27
24
  render: _slugView.default
28
25
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_slugEdit","_interopRequireDefault","_slugView","slugField","id","type","label","__","getValue","item","slug","Edit","SlugEdit","render","SlugView","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { __ } from '@wordpress/i18n';\nimport SlugEdit from './slug-edit';\nimport SlugView from './slug-view';\n\nconst slugField: Field< BasePost > = {\n\tid: 'slug',\n\ttype: 'text',\n\tlabel: __( 'Slug' ),\n\tgetValue: ( { item } ) => item.slug,\n\tEdit: SlugEdit,\n\trender: SlugView,\n};\n\nexport default slugField;\n"],"mappings":";;;;;;;AASA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AAXA;AACA;AACA;;AAGA;AACA;AACA;;AAMA,MAAMI,SAA4B,GAAG;EACpCC,EAAE,EAAE,MAAM;EACVC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,IAAAC,QAAE,EAAE,MAAO,CAAC;EACnBC,QAAQ,EAAEA,CAAE;IAAEC;EAAK,CAAC,KAAMA,IAAI,CAACC,IAAI;EACnCC,IAAI,EAAEC,iBAAQ;EACdC,MAAM,EAAEC;AACT,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_slugEdit","_interopRequireDefault","_slugView","slugField","id","type","label","__","Edit","SlugEdit","render","SlugView","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport SlugEdit from './slug-edit';\nimport SlugView from './slug-view';\n\nconst slugField: Field< BasePost > = {\n\tid: 'slug',\n\ttype: 'text',\n\tlabel: __( 'Slug' ),\n\tEdit: SlugEdit,\n\trender: SlugView,\n};\n\nexport default slugField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,SAA4B,GAAG;EACpCC,EAAE,EAAE,MAAM;EACVC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,IAAAC,QAAE,EAAE,MAAO,CAAC;EACnBC,IAAI,EAAEC,iBAAQ;EACdC,MAAM,EAAEC;AACT,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaX,SAAS","ignoreList":[]}
@@ -12,6 +12,7 @@ var _element = require("@wordpress/element");
12
12
  var _notices = require("@wordpress/notices");
13
13
  var _url = require("@wordpress/url");
14
14
  var _i18n = require("@wordpress/i18n");
15
+ var _utils = require("./utils");
15
16
  var _jsxRuntime = require("react/jsx-runtime");
16
17
  /**
17
18
  * WordPress dependencies
@@ -26,13 +27,12 @@ const SlugEdit = ({
26
27
  onChange,
27
28
  data
28
29
  }) => {
29
- var _field$getValue;
30
30
  const {
31
31
  id
32
32
  } = field;
33
- const slug = (_field$getValue = field.getValue({
33
+ const slug = field.getValue({
34
34
  item: data
35
- })) !== null && _field$getValue !== void 0 ? _field$getValue : '';
35
+ }) || (0, _utils.getSlug)(data);
36
36
  const permalinkTemplate = data.permalink_template || '';
37
37
  const PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/;
38
38
  const [prefix, suffix] = permalinkTemplate.split(PERMALINK_POSTNAME_REGEX);
@@ -97,29 +97,26 @@ const SlugEdit = ({
97
97
  onChangeControl(originalSlugRef.current);
98
98
  }
99
99
  },
100
- "aria-describedby": postUrlSlugDescriptionId,
101
- help: /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
102
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
103
- className: "fields-controls__slug-help",
104
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
105
- className: "fields-controls__slug-help-visual-label",
106
- children: (0, _i18n.__)('Permalink:')
107
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.ExternalLink, {
108
- className: "fields-controls__slug-help-link",
109
- href: permalink,
110
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
111
- className: "fields-controls__slug-help-prefix",
112
- children: permalinkPrefix
113
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
114
- className: "fields-controls__slug-help-slug",
115
- children: slugToDisplay
116
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
117
- className: "fields-controls__slug-help-suffix",
118
- children: permalinkSuffix
119
- })]
120
- })]
121
- })
122
- })
100
+ "aria-describedby": postUrlSlugDescriptionId
101
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
102
+ className: "fields-controls__slug-help",
103
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
104
+ className: "fields-controls__slug-help-visual-label",
105
+ children: (0, _i18n.__)('Permalink:')
106
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.ExternalLink, {
107
+ className: "fields-controls__slug-help-link",
108
+ href: permalink,
109
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
110
+ className: "fields-controls__slug-help-prefix",
111
+ children: permalinkPrefix
112
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
113
+ className: "fields-controls__slug-help-slug",
114
+ children: slugToDisplay
115
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
116
+ className: "fields-controls__slug-help-suffix",
117
+ children: permalinkSuffix
118
+ })]
119
+ })]
123
120
  })]
124
121
  }), !isEditable && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ExternalLink, {
125
122
  className: "fields-controls__slug-help",
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_icons","_compose","_data","_element","_notices","_url","_i18n","_jsxRuntime","SlugEdit","field","onChange","data","_field$getValue","id","slug","getValue","item","permalinkTemplate","permalink_template","PERMALINK_POSTNAME_REGEX","prefix","suffix","split","permalinkPrefix","permalinkSuffix","isEditable","test","originalSlugRef","useRef","slugToDisplay","current","permalink","safeDecodeURIComponent","link","useEffect","undefined","onChangeControl","useCallback","newValue","createNotice","useDispatch","noticesStore","copyButtonRef","useCopyToClipboard","__","isDismissible","type","postUrlSlugDescriptionId","useInstanceId","jsxs","className","children","__experimentalVStack","spacing","jsx","ExternalLink","href","__experimentalInputControl","__next40pxDefaultSize","__experimentalInputControlPrefixWrapper","Button","icon","copySmall","ref","label","hideLabelFromVision","value","autoComplete","spellCheck","onBlur","help","Fragment","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalInputControl as InputControl,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { copySmall } from '@wordpress/icons';\nimport { useCopyToClipboard, useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { useCallback, useEffect, useRef } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { safeDecodeURIComponent } from '@wordpress/url';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\n\nconst SlugEdit = ( {\n\tfield,\n\tonChange,\n\tdata,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\n\tconst slug = field.getValue( { item: data } ) ?? '';\n\tconst permalinkTemplate = data.permalink_template || '';\n\tconst PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/;\n\tconst [ prefix, suffix ] = permalinkTemplate.split(\n\t\tPERMALINK_POSTNAME_REGEX\n\t);\n\tconst permalinkPrefix = prefix;\n\tconst permalinkSuffix = suffix;\n\tconst isEditable = PERMALINK_POSTNAME_REGEX.test( permalinkTemplate );\n\tconst originalSlugRef = useRef( slug );\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\tconst permalink = isEditable\n\t\t? `${ permalinkPrefix }${ slugToDisplay }${ permalinkSuffix }`\n\t\t: safeDecodeURIComponent( data.link || '' );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue?: string ) =>\n\t\t\tonChange( {\n\t\t\t\t[ id ]: newValue,\n\t\t\t} ),\n\t\t[ id, onChange ]\n\t);\n\n\tconst { createNotice } = useDispatch( noticesStore );\n\n\tconst copyButtonRef = useCopyToClipboard( permalink, () => {\n\t\tcreateNotice( 'info', __( 'Copied Permalink to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\tconst postUrlSlugDescriptionId =\n\t\t'editor-post-url__slug-description-' + useInstanceId( SlugEdit );\n\n\treturn (\n\t\t<fieldset className=\"fields-controls__slug\">\n\t\t\t{ isEditable && (\n\t\t\t\t<VStack>\n\t\t\t\t\t<VStack spacing=\"0px\">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Customize the last part of the Permalink.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ExternalLink href=\"https://wordpress.org/documentation/article/page-post-settings-sidebar/#permalink\">\n\t\t\t\t\t\t\t{ __( 'Learn more' ) }\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<InputControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper>\n\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsuffix={\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ copySmall }\n\t\t\t\t\t\t\t\tref={ copyButtonRef }\n\t\t\t\t\t\t\t\tlabel={ __( 'Copy' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ slug }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tspellCheck=\"false\"\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\tclassName=\"fields-controls__slug-input\"\n\t\t\t\t\t\tonChange={ ( newValue?: string ) => {\n\t\t\t\t\t\t\tonChangeControl( newValue );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tif ( slug === '' ) {\n\t\t\t\t\t\t\t\tonChangeControl( originalSlugRef.current );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\taria-describedby={ postUrlSlugDescriptionId }\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<p className=\"fields-controls__slug-help\">\n\t\t\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-visual-label\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'Permalink:' ) }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\tclassName=\"fields-controls__slug-help-link\"\n\t\t\t\t\t\t\t\t\t\thref={ permalink }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-prefix\">\n\t\t\t\t\t\t\t\t\t\t\t{ permalinkPrefix }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-slug\">\n\t\t\t\t\t\t\t\t\t\t\t{ slugToDisplay }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-suffix\">\n\t\t\t\t\t\t\t\t\t\t\t{ permalinkSuffix }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t</p>\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</VStack>\n\t\t\t) }\n\t\t\t{ ! isEditable && (\n\t\t\t\t<ExternalLink\n\t\t\t\t\tclassName=\"fields-controls__slug-help\"\n\t\t\t\t\thref={ permalink }\n\t\t\t\t>\n\t\t\t\t\t{ permalink }\n\t\t\t\t</ExternalLink>\n\t\t\t) }\n\t\t</fieldset>\n\t);\n};\n\nexport default SlugEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_icons","_compose","_data","_element","_notices","_url","_i18n","_utils","_jsxRuntime","SlugEdit","field","onChange","data","id","slug","getValue","item","getSlug","permalinkTemplate","permalink_template","PERMALINK_POSTNAME_REGEX","prefix","suffix","split","permalinkPrefix","permalinkSuffix","isEditable","test","originalSlugRef","useRef","slugToDisplay","current","permalink","safeDecodeURIComponent","link","useEffect","undefined","onChangeControl","useCallback","newValue","createNotice","useDispatch","noticesStore","copyButtonRef","useCopyToClipboard","__","isDismissible","type","postUrlSlugDescriptionId","useInstanceId","jsxs","className","children","__experimentalVStack","spacing","jsx","ExternalLink","href","__experimentalInputControl","__next40pxDefaultSize","__experimentalInputControlPrefixWrapper","Button","icon","copySmall","ref","label","hideLabelFromVision","value","autoComplete","spellCheck","onBlur","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalInputControl as InputControl,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { copySmall } from '@wordpress/icons';\nimport { useCopyToClipboard, useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { useCallback, useEffect, useRef } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { safeDecodeURIComponent } from '@wordpress/url';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getSlug } from './utils';\n\nconst SlugEdit = ( {\n\tfield,\n\tonChange,\n\tdata,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\n\tconst slug = field.getValue( { item: data } ) || getSlug( data );\n\tconst permalinkTemplate = data.permalink_template || '';\n\tconst PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/;\n\tconst [ prefix, suffix ] = permalinkTemplate.split(\n\t\tPERMALINK_POSTNAME_REGEX\n\t);\n\tconst permalinkPrefix = prefix;\n\tconst permalinkSuffix = suffix;\n\tconst isEditable = PERMALINK_POSTNAME_REGEX.test( permalinkTemplate );\n\tconst originalSlugRef = useRef( slug );\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\tconst permalink = isEditable\n\t\t? `${ permalinkPrefix }${ slugToDisplay }${ permalinkSuffix }`\n\t\t: safeDecodeURIComponent( data.link || '' );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue?: string ) =>\n\t\t\tonChange( {\n\t\t\t\t[ id ]: newValue,\n\t\t\t} ),\n\t\t[ id, onChange ]\n\t);\n\n\tconst { createNotice } = useDispatch( noticesStore );\n\n\tconst copyButtonRef = useCopyToClipboard( permalink, () => {\n\t\tcreateNotice( 'info', __( 'Copied Permalink to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\tconst postUrlSlugDescriptionId =\n\t\t'editor-post-url__slug-description-' + useInstanceId( SlugEdit );\n\n\treturn (\n\t\t<fieldset className=\"fields-controls__slug\">\n\t\t\t{ isEditable && (\n\t\t\t\t<VStack>\n\t\t\t\t\t<VStack spacing=\"0px\">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Customize the last part of the Permalink.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ExternalLink href=\"https://wordpress.org/documentation/article/page-post-settings-sidebar/#permalink\">\n\t\t\t\t\t\t\t{ __( 'Learn more' ) }\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<InputControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper>\n\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsuffix={\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ copySmall }\n\t\t\t\t\t\t\t\tref={ copyButtonRef }\n\t\t\t\t\t\t\t\tlabel={ __( 'Copy' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ slug }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tspellCheck=\"false\"\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\tclassName=\"fields-controls__slug-input\"\n\t\t\t\t\t\tonChange={ ( newValue?: string ) => {\n\t\t\t\t\t\t\tonChangeControl( newValue );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tif ( slug === '' ) {\n\t\t\t\t\t\t\t\tonChangeControl( originalSlugRef.current );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\taria-describedby={ postUrlSlugDescriptionId }\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"fields-controls__slug-help\">\n\t\t\t\t\t\t<span className=\"fields-controls__slug-help-visual-label\">\n\t\t\t\t\t\t\t{ __( 'Permalink:' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\tclassName=\"fields-controls__slug-help-link\"\n\t\t\t\t\t\t\thref={ permalink }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-prefix\">\n\t\t\t\t\t\t\t\t{ permalinkPrefix }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-slug\">\n\t\t\t\t\t\t\t\t{ slugToDisplay }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-suffix\">\n\t\t\t\t\t\t\t\t{ permalinkSuffix }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</div>\n\t\t\t\t</VStack>\n\t\t\t) }\n\t\t\t{ ! isEditable && (\n\t\t\t\t<ExternalLink\n\t\t\t\t\tclassName=\"fields-controls__slug-help\"\n\t\t\t\t\thref={ permalink }\n\t\t\t\t>\n\t\t\t\t\t{ permalink }\n\t\t\t\t</ExternalLink>\n\t\t\t) }\n\t\t</fieldset>\n\t);\n};\n\nexport default SlugEdit;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAOA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AAEA,IAAAO,KAAA,GAAAP,OAAA;AAMA,IAAAQ,MAAA,GAAAR,OAAA;AAAkC,IAAAS,WAAA,GAAAT,OAAA;AAvBlC;AACA;AACA;;AAiBA;AACA;AACA;;AAIA,MAAMU,QAAQ,GAAGA,CAAE;EAClBC,KAAK;EACLC,QAAQ;EACRC;AACiC,CAAC,KAAM;EACxC,MAAM;IAAEC;EAAG,CAAC,GAAGH,KAAK;EAEpB,MAAMI,IAAI,GAAGJ,KAAK,CAACK,QAAQ,CAAE;IAAEC,IAAI,EAAEJ;EAAK,CAAE,CAAC,IAAI,IAAAK,cAAO,EAAEL,IAAK,CAAC;EAChE,MAAMM,iBAAiB,GAAGN,IAAI,CAACO,kBAAkB,IAAI,EAAE;EACvD,MAAMC,wBAAwB,GAAG,yBAAyB;EAC1D,MAAM,CAAEC,MAAM,EAAEC,MAAM,CAAE,GAAGJ,iBAAiB,CAACK,KAAK,CACjDH,wBACD,CAAC;EACD,MAAMI,eAAe,GAAGH,MAAM;EAC9B,MAAMI,eAAe,GAAGH,MAAM;EAC9B,MAAMI,UAAU,GAAGN,wBAAwB,CAACO,IAAI,CAAET,iBAAkB,CAAC;EACrE,MAAMU,eAAe,GAAG,IAAAC,eAAM,EAAEf,IAAK,CAAC;EACtC,MAAMgB,aAAa,GAAGhB,IAAI,IAAIc,eAAe,CAACG,OAAO;EACrD,MAAMC,SAAS,GAAGN,UAAU,GACzB,GAAIF,eAAe,GAAKM,aAAa,GAAKL,eAAe,EAAG,GAC5D,IAAAQ,2BAAsB,EAAErB,IAAI,CAACsB,IAAI,IAAI,EAAG,CAAC;EAE5C,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKrB,IAAI,IAAIc,eAAe,CAACG,OAAO,KAAKK,SAAS,EAAG;MACpDR,eAAe,CAACG,OAAO,GAAGjB,IAAI;IAC/B;EACD,CAAC,EAAE,CAAEA,IAAI,CAAG,CAAC;EAEb,MAAMuB,eAAe,GAAG,IAAAC,oBAAW,EAChCC,QAAiB,IAClB5B,QAAQ,CAAE;IACT,CAAEE,EAAE,GAAI0B;EACT,CAAE,CAAC,EACJ,CAAE1B,EAAE,EAAEF,QAAQ,CACf,CAAC;EAED,MAAM;IAAE6B;EAAa,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAa,CAAC;EAEpD,MAAMC,aAAa,GAAG,IAAAC,2BAAkB,EAAEZ,SAAS,EAAE,MAAM;IAC1DQ,YAAY,CAAE,MAAM,EAAE,IAAAK,QAAE,EAAE,gCAAiC,CAAC,EAAE;MAC7DC,aAAa,EAAE,IAAI;MACnBC,IAAI,EAAE;IACP,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,MAAMC,wBAAwB,GAC7B,oCAAoC,GAAG,IAAAC,sBAAa,EAAExC,QAAS,CAAC;EAEjE,oBACC,IAAAD,WAAA,CAAA0C,IAAA;IAAUC,SAAS,EAAC,uBAAuB;IAAAC,QAAA,GACxC1B,UAAU,iBACX,IAAAlB,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAAuD,oBAAM;MAAAD,QAAA,gBACN,IAAA5C,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAAuD,oBAAM;QAACC,OAAO,EAAC,KAAK;QAAAF,QAAA,gBACpB,IAAA5C,WAAA,CAAA+C,GAAA;UAAAH,QAAA,EACG,IAAAP,QAAE,EACH,2CACD;QAAC,CACI,CAAC,eACP,IAAArC,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA0D,YAAY;UAACC,IAAI,EAAC,mFAAmF;UAAAL,QAAA,EACnG,IAAAP,QAAE,EAAE,YAAa;QAAC,CACP,CAAC;MAAA,CACR,CAAC,eACT,IAAArC,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA4D,0BAAY;QACZC,qBAAqB;QACrBtC,MAAM,eACL,IAAAb,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA8D,uCAAyB;UAAAR,QAAA,EAAC;QAE3B,CAA2B,CAC3B;QACD9B,MAAM,eACL,IAAAd,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA+D,MAAM;UACNF,qBAAqB;UACrBG,IAAI,EAAGC,gBAAW;UAClBC,GAAG,EAAGrB,aAAe;UACrBsB,KAAK,EAAG,IAAApB,QAAE,EAAE,MAAO;QAAG,CACtB,CACD;QACDoB,KAAK,EAAG,IAAApB,QAAE,EAAE,MAAO,CAAG;QACtBqB,mBAAmB;QACnBC,KAAK,EAAGrD,IAAM;QACdsD,YAAY,EAAC,KAAK;QAClBC,UAAU,EAAC,OAAO;QAClBtB,IAAI,EAAC,MAAM;QACXI,SAAS,EAAC,6BAA6B;QACvCxC,QAAQ,EAAK4B,QAAiB,IAAM;UACnCF,eAAe,CAAEE,QAAS,CAAC;QAC5B,CAAG;QACH+B,MAAM,EAAGA,CAAA,KAAM;UACd,IAAKxD,IAAI,KAAK,EAAE,EAAG;YAClBuB,eAAe,CAAET,eAAe,CAACG,OAAQ,CAAC;UAC3C;QACD,CAAG;QACH,oBAAmBiB;MAA0B,CAC7C,CAAC,eACF,IAAAxC,WAAA,CAAA0C,IAAA;QAAKC,SAAS,EAAC,4BAA4B;QAAAC,QAAA,gBAC1C,IAAA5C,WAAA,CAAA+C,GAAA;UAAMJ,SAAS,EAAC,yCAAyC;UAAAC,QAAA,EACtD,IAAAP,QAAE,EAAE,YAAa;QAAC,CACf,CAAC,eACP,IAAArC,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAA0D,YAAY;UACZL,SAAS,EAAC,iCAAiC;UAC3CM,IAAI,EAAGzB,SAAW;UAAAoB,QAAA,gBAElB,IAAA5C,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,mCAAmC;YAAAC,QAAA,EAChD5B;UAAe,CACZ,CAAC,eACP,IAAAhB,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,iCAAiC;YAAAC,QAAA,EAC9CtB;UAAa,CACV,CAAC,eACP,IAAAtB,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,mCAAmC;YAAAC,QAAA,EAChD3B;UAAe,CACZ,CAAC;QAAA,CACM,CAAC;MAAA,CACX,CAAC;IAAA,CACC,CACR,EACC,CAAEC,UAAU,iBACb,IAAAlB,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA0D,YAAY;MACZL,SAAS,EAAC,4BAA4B;MACtCM,IAAI,EAAGzB,SAAW;MAAAoB,QAAA,EAEhBpB;IAAS,CACE,CACd;EAAA,CACQ,CAAC;AAEb,CAAC;AAAC,IAAAuC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEahE,QAAQ","ignoreList":[]}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _element = require("@wordpress/element");
8
+ var _utils = require("./utils");
8
9
  /**
9
10
  * WordPress dependencies
10
11
  */
@@ -16,7 +17,7 @@ var _element = require("@wordpress/element");
16
17
  const SlugView = ({
17
18
  item
18
19
  }) => {
19
- const slug = item.slug;
20
+ const slug = typeof item === 'object' ? (0, _utils.getSlug)(item) : '';
20
21
  const originalSlugRef = (0, _element.useRef)(slug);
21
22
  (0, _element.useEffect)(() => {
22
23
  if (slug && originalSlugRef.current === undefined) {
@@ -24,7 +25,7 @@ const SlugView = ({
24
25
  }
25
26
  }, [slug]);
26
27
  const slugToDisplay = slug || originalSlugRef.current;
27
- return `/${slugToDisplay !== null && slugToDisplay !== void 0 ? slugToDisplay : ''}`;
28
+ return `${slugToDisplay}`;
28
29
  };
29
30
  var _default = exports.default = SlugView;
30
31
  //# sourceMappingURL=slug-view.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","SlugView","item","slug","originalSlugRef","useRef","useEffect","current","undefined","slugToDisplay","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\n\nconst SlugView = ( { item }: { item: BasePost } ) => {\n\tconst slug = item.slug;\n\tconst originalSlugRef = useRef( slug );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\n\treturn `/${ slugToDisplay ?? '' }`;\n};\n\nexport default SlugView;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;AACA;AACA;;AAGA,MAAMC,QAAQ,GAAGA,CAAE;EAAEC;AAAyB,CAAC,KAAM;EACpD,MAAMC,IAAI,GAAGD,IAAI,CAACC,IAAI;EACtB,MAAMC,eAAe,GAAG,IAAAC,eAAM,EAAEF,IAAK,CAAC;EAEtC,IAAAG,kBAAS,EAAE,MAAM;IAChB,IAAKH,IAAI,IAAIC,eAAe,CAACG,OAAO,KAAKC,SAAS,EAAG;MACpDJ,eAAe,CAACG,OAAO,GAAGJ,IAAI;IAC/B;EACD,CAAC,EAAE,CAAEA,IAAI,CAAG,CAAC;EAEb,MAAMM,aAAa,GAAGN,IAAI,IAAIC,eAAe,CAACG,OAAO;EAErD,OAAO,IAAKE,aAAa,aAAbA,aAAa,cAAbA,aAAa,GAAI,EAAE,EAAG;AACnC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaX,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_utils","SlugView","item","slug","getSlug","originalSlugRef","useRef","useEffect","current","undefined","slugToDisplay","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getSlug } from './utils';\n\nconst SlugView = ( { item }: { item: BasePost } ) => {\n\tconst slug = typeof item === 'object' ? getSlug( item ) : '';\n\tconst originalSlugRef = useRef( slug );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\n\treturn `${ slugToDisplay }`;\n};\n\nexport default SlugView;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,MAAME,QAAQ,GAAGA,CAAE;EAAEC;AAAyB,CAAC,KAAM;EACpD,MAAMC,IAAI,GAAG,OAAOD,IAAI,KAAK,QAAQ,GAAG,IAAAE,cAAO,EAAEF,IAAK,CAAC,GAAG,EAAE;EAC5D,MAAMG,eAAe,GAAG,IAAAC,eAAM,EAAEH,IAAK,CAAC;EAEtC,IAAAI,kBAAS,EAAE,MAAM;IAChB,IAAKJ,IAAI,IAAIE,eAAe,CAACG,OAAO,KAAKC,SAAS,EAAG;MACpDJ,eAAe,CAACG,OAAO,GAAGL,IAAI;IAC/B;EACD,CAAC,EAAE,CAAEA,IAAI,CAAG,CAAC;EAEb,MAAMO,aAAa,GAAGP,IAAI,IAAIE,eAAe,CAACG,OAAO;EAErD,OAAO,GAAIE,aAAa,EAAG;AAC5B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaZ,QAAQ","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSlug = void 0;
7
+ var _url = require("@wordpress/url");
8
+ var _utils = require("../../actions/utils");
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+
17
+ const getSlug = item => {
18
+ return item.slug || (0, _url.cleanForSlug)((0, _utils.getItemTitle)(item)) || item.id.toString();
19
+ };
20
+ exports.getSlug = getSlug;
21
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_url","require","_utils","getSlug","item","slug","cleanForSlug","getItemTitle","id","toString","exports"],"sources":["@wordpress/fields/src/fields/slug/utils.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { cleanForSlug } from '@wordpress/url';\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\n\nexport const getSlug = ( item: BasePost ): string => {\n\treturn (\n\t\titem.slug || cleanForSlug( getItemTitle( item ) ) || item.id.toString()\n\t);\n};\n"],"mappings":";;;;;;AAGA,IAAAA,IAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAEA;AACA;AACA;;AAIO,MAAME,OAAO,GAAKC,IAAc,IAAc;EACpD,OACCA,IAAI,CAACC,IAAI,IAAI,IAAAC,iBAAY,EAAE,IAAAC,mBAAY,EAAEH,IAAK,CAAE,CAAC,IAAIA,IAAI,CAACI,EAAE,CAACC,QAAQ,CAAC,CAAC;AAEzE,CAAC;AAACC,OAAA,CAAAP,OAAA,GAAAA,OAAA","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _i18n = require("@wordpress/i18n");
9
+ var _statusView = _interopRequireDefault(require("./status-view"));
10
+ var _statusElements = _interopRequireDefault(require("./status-elements"));
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ const OPERATOR_IS_ANY = 'isAny';
20
+ const statusField = {
21
+ label: (0, _i18n.__)('Status'),
22
+ id: 'status',
23
+ type: 'text',
24
+ elements: _statusElements.default,
25
+ render: _statusView.default,
26
+ Edit: 'radio',
27
+ enableSorting: false,
28
+ filterBy: {
29
+ operators: [OPERATOR_IS_ANY]
30
+ }
31
+ };
32
+
33
+ /**
34
+ * Status field for BasePost.
35
+ */
36
+ var _default = exports.default = statusField;
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_i18n","require","_statusView","_interopRequireDefault","_statusElements","OPERATOR_IS_ANY","statusField","label","__","id","type","elements","STATUSES","render","StatusView","Edit","enableSorting","filterBy","operators","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport StatusView from './status-view';\nimport STATUSES from './status-elements';\n\nconst OPERATOR_IS_ANY = 'isAny';\n\nconst statusField: Field< BasePost > = {\n\tlabel: __( 'Status' ),\n\tid: 'status',\n\ttype: 'text',\n\telements: STATUSES,\n\trender: StatusView,\n\tEdit: 'radio',\n\tenableSorting: false,\n\tfilterBy: {\n\t\toperators: [ OPERATOR_IS_ANY ],\n\t},\n};\n\n/**\n * Status field for BasePost.\n */\nexport default statusField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,eAAA,GAAAD,sBAAA,CAAAF,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,eAAe,GAAG,OAAO;AAE/B,MAAMC,WAA8B,GAAG;EACtCC,KAAK,EAAE,IAAAC,QAAE,EAAE,QAAS,CAAC;EACrBC,EAAE,EAAE,QAAQ;EACZC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAEC,uBAAQ;EAClBC,MAAM,EAAEC,mBAAU;EAClBC,IAAI,EAAE,OAAO;EACbC,aAAa,EAAE,KAAK;EACpBC,QAAQ,EAAE;IACTC,SAAS,EAAE,CAAEb,eAAe;EAC7B;AACD,CAAC;;AAED;AACA;AACA;AAFA,IAAAc,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGef,WAAW","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _icons = require("@wordpress/icons");
8
+ var _i18n = require("@wordpress/i18n");
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ // See https://github.com/WordPress/gutenberg/issues/55886
14
+ // We do not support custom statutes at the moment.
15
+ const STATUSES = [{
16
+ value: 'draft',
17
+ label: (0, _i18n.__)('Draft'),
18
+ icon: _icons.drafts,
19
+ description: (0, _i18n.__)('Not ready to publish.')
20
+ }, {
21
+ value: 'future',
22
+ label: (0, _i18n.__)('Scheduled'),
23
+ icon: _icons.scheduled,
24
+ description: (0, _i18n.__)('Publish automatically on a chosen date.')
25
+ }, {
26
+ value: 'pending',
27
+ label: (0, _i18n.__)('Pending Review'),
28
+ icon: _icons.pending,
29
+ description: (0, _i18n.__)('Waiting for review before publishing.')
30
+ }, {
31
+ value: 'private',
32
+ label: (0, _i18n.__)('Private'),
33
+ icon: _icons.notAllowed,
34
+ description: (0, _i18n.__)('Only visible to site admins and editors.')
35
+ }, {
36
+ value: 'publish',
37
+ label: (0, _i18n.__)('Published'),
38
+ icon: _icons.published,
39
+ description: (0, _i18n.__)('Visible to everyone.')
40
+ }, {
41
+ value: 'trash',
42
+ label: (0, _i18n.__)('Trash'),
43
+ icon: _icons.trash
44
+ }];
45
+ var _default = exports.default = STATUSES;
46
+ //# sourceMappingURL=status-elements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_icons","require","_i18n","STATUSES","value","label","__","icon","drafts","description","scheduled","pending","notAllowed","published","trash","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/status-elements.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\ttrash,\n\tdrafts,\n\tpublished,\n\tscheduled,\n\tpending,\n\tnotAllowed,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{\n\t\tvalue: 'draft',\n\t\tlabel: __( 'Draft' ),\n\t\ticon: drafts,\n\t\tdescription: __( 'Not ready to publish.' ),\n\t},\n\t{\n\t\tvalue: 'future',\n\t\tlabel: __( 'Scheduled' ),\n\t\ticon: scheduled,\n\t\tdescription: __( 'Publish automatically on a chosen date.' ),\n\t},\n\t{\n\t\tvalue: 'pending',\n\t\tlabel: __( 'Pending Review' ),\n\t\ticon: pending,\n\t\tdescription: __( 'Waiting for review before publishing.' ),\n\t},\n\t{\n\t\tvalue: 'private',\n\t\tlabel: __( 'Private' ),\n\t\ticon: notAllowed,\n\t\tdescription: __( 'Only visible to site admins and editors.' ),\n\t},\n\t{\n\t\tvalue: 'publish',\n\t\tlabel: __( 'Published' ),\n\t\ticon: published,\n\t\tdescription: __( 'Visible to everyone.' ),\n\t},\n\t{ value: 'trash', label: __( 'Trash' ), icon: trash },\n];\n\nexport default STATUSES;\n"],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAQA,IAAAC,KAAA,GAAAD,OAAA;AAXA;AACA;AACA;;AAWA;AACA;AACA,MAAME,QAAQ,GAAG,CAChB;EACCC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,IAAAC,QAAE,EAAE,OAAQ,CAAC;EACpBC,IAAI,EAAEC,aAAM;EACZC,WAAW,EAAE,IAAAH,QAAE,EAAE,uBAAwB;AAC1C,CAAC,EACD;EACCF,KAAK,EAAE,QAAQ;EACfC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY,CAAC;EACxBC,IAAI,EAAEG,gBAAS;EACfD,WAAW,EAAE,IAAAH,QAAE,EAAE,yCAA0C;AAC5D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB,CAAC;EAC7BC,IAAI,EAAEI,cAAO;EACbF,WAAW,EAAE,IAAAH,QAAE,EAAE,uCAAwC;AAC1D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,SAAU,CAAC;EACtBC,IAAI,EAAEK,iBAAU;EAChBH,WAAW,EAAE,IAAAH,QAAE,EAAE,0CAA2C;AAC7D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY,CAAC;EACxBC,IAAI,EAAEM,gBAAS;EACfJ,WAAW,EAAE,IAAAH,QAAE,EAAE,sBAAuB;AACzC,CAAC,EACD;EAAEF,KAAK,EAAE,OAAO;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,OAAQ,CAAC;EAAEC,IAAI,EAAEO;AAAM,CAAC,CACrD;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,QAAQ","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _components = require("@wordpress/components");
9
+ var _statusElements = _interopRequireDefault(require("./status-elements"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ function StatusView({
20
+ item
21
+ }) {
22
+ const status = _statusElements.default.find(({
23
+ value
24
+ }) => value === item.status);
25
+ const label = status?.label || item.status;
26
+ const icon = status?.icon;
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
28
+ alignment: "left",
29
+ spacing: 0,
30
+ children: [icon && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
31
+ className: "edit-site-post-list__status-icon",
32
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
33
+ icon: icon
34
+ })
35
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
36
+ children: label
37
+ })]
38
+ });
39
+ }
40
+ var _default = exports.default = StatusView;
41
+ //# sourceMappingURL=status-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_statusElements","_interopRequireDefault","_jsxRuntime","StatusView","item","status","STATUSES","find","value","label","icon","jsxs","__experimentalHStack","alignment","spacing","children","jsx","className","Icon","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/status-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalHStack as HStack, Icon } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport STATUSES from './status-elements';\n\nfunction StatusView( { item }: { item: BasePost } ) {\n\tconst status = STATUSES.find( ( { value } ) => value === item.status );\n\tconst label = status?.label || item.status;\n\tconst icon = status?.icon;\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ icon && (\n\t\t\t\t<div className=\"edit-site-post-list__status-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ label }</span>\n\t\t</HStack>\n\t);\n}\n\nexport default StatusView;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAMA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyC,IAAAG,WAAA,GAAAH,OAAA;AATzC;AACA;AACA;;AAGA;AACA;AACA;;AAIA,SAASI,UAAUA,CAAE;EAAEC;AAAyB,CAAC,EAAG;EACnD,MAAMC,MAAM,GAAGC,uBAAQ,CAACC,IAAI,CAAE,CAAE;IAAEC;EAAM,CAAC,KAAMA,KAAK,KAAKJ,IAAI,CAACC,MAAO,CAAC;EACtE,MAAMI,KAAK,GAAGJ,MAAM,EAAEI,KAAK,IAAIL,IAAI,CAACC,MAAM;EAC1C,MAAMK,IAAI,GAAGL,MAAM,EAAEK,IAAI;EACzB,oBACC,IAAAR,WAAA,CAAAS,IAAA,EAACb,WAAA,CAAAc,oBAAM;IAACC,SAAS,EAAC,MAAM;IAACC,OAAO,EAAG,CAAG;IAAAC,QAAA,GACnCL,IAAI,iBACL,IAAAR,WAAA,CAAAc,GAAA;MAAKC,SAAS,EAAC,kCAAkC;MAAAF,QAAA,eAChD,IAAAb,WAAA,CAAAc,GAAA,EAAClB,WAAA,CAAAoB,IAAI;QAACR,IAAI,EAAGA;MAAM,CAAE;IAAC,CAClB,CACL,eACD,IAAAR,WAAA,CAAAc,GAAA;MAAAD,QAAA,EAAQN;IAAK,CAAQ,CAAC;EAAA,CACf,CAAC;AAEX;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEclB,UAAU","ignoreList":[]}