@wordpress/fields 0.5.1-next.cd6172eb0.0 → 0.6.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 (265) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +32 -36
  3. package/build/actions/delete-post.js +5 -0
  4. package/build/actions/delete-post.js.map +1 -1
  5. package/build/actions/duplicate-pattern.js +4 -0
  6. package/build/actions/duplicate-pattern.js.map +1 -1
  7. package/build/actions/duplicate-post.js +8 -3
  8. package/build/actions/duplicate-post.js.map +1 -1
  9. package/build/actions/duplicate-template-part.js +3 -0
  10. package/build/actions/duplicate-template-part.js.map +1 -1
  11. package/build/actions/export-pattern.js +5 -0
  12. package/build/actions/export-pattern.js.map +1 -1
  13. package/build/actions/index.js +0 -21
  14. package/build/actions/index.js.map +1 -1
  15. package/build/actions/permanently-delete-post.js +5 -0
  16. package/build/actions/permanently-delete-post.js.map +1 -1
  17. package/build/actions/rename-post.js +4 -0
  18. package/build/actions/rename-post.js.map +1 -1
  19. package/build/actions/reorder-page.js +4 -0
  20. package/build/actions/reorder-page.js.map +1 -1
  21. package/build/actions/reset-post.js +4 -0
  22. package/build/actions/reset-post.js.map +1 -1
  23. package/build/actions/restore-post.js +5 -0
  24. package/build/actions/restore-post.js.map +1 -1
  25. package/build/actions/trash-post.js +5 -0
  26. package/build/actions/trash-post.js.map +1 -1
  27. package/build/actions/view-post-revisions.js +4 -0
  28. package/build/actions/view-post-revisions.js.map +1 -1
  29. package/build/actions/view-post.js +4 -0
  30. package/build/actions/view-post.js.map +1 -1
  31. package/build/components/create-template-part-modal/index.js +32 -41
  32. package/build/components/create-template-part-modal/index.js.map +1 -1
  33. package/build/components/create-template-part-modal/utils.js +1 -0
  34. package/build/components/create-template-part-modal/utils.js.map +1 -1
  35. package/build/fields/featured-image/index.js +4 -0
  36. package/build/fields/featured-image/index.js.map +1 -1
  37. package/build/fields/index.js +21 -0
  38. package/build/fields/index.js.map +1 -1
  39. package/build/fields/order/index.js +4 -0
  40. package/build/fields/order/index.js.map +1 -1
  41. package/build/fields/page-title/index.js +36 -0
  42. package/build/fields/page-title/index.js.map +1 -0
  43. package/build/fields/page-title/view.js +45 -0
  44. package/build/fields/page-title/view.js.map +1 -0
  45. package/build/fields/parent/index.js +1 -1
  46. package/build/fields/parent/index.js.map +1 -1
  47. package/build/fields/parent/parent-edit.js +1 -0
  48. package/build/fields/parent/parent-edit.js.map +1 -1
  49. package/build/fields/password/index.js +1 -1
  50. package/build/fields/password/index.js.map +1 -1
  51. package/build/fields/pattern-title/index.js +36 -0
  52. package/build/fields/pattern-title/index.js.map +1 -0
  53. package/build/fields/pattern-title/view.js +45 -0
  54. package/build/fields/pattern-title/view.js.map +1 -0
  55. package/build/fields/slug/index.js +4 -0
  56. package/build/fields/slug/index.js.map +1 -1
  57. package/build/fields/status/status-view.js +1 -0
  58. package/build/fields/status/status-view.js.map +1 -1
  59. package/build/fields/template/index.js +4 -3
  60. package/build/fields/template/index.js.map +1 -1
  61. package/build/fields/template/template-edit.js +1 -0
  62. package/build/fields/template/template-edit.js.map +1 -1
  63. package/build/fields/template-title/index.js +36 -0
  64. package/build/fields/template-title/index.js.map +1 -0
  65. package/build/fields/title/index.js +10 -3
  66. package/build/fields/title/index.js.map +1 -1
  67. package/build/fields/title/view.js +48 -0
  68. package/build/fields/title/view.js.map +1 -0
  69. package/build/index.native.js +0 -26
  70. package/build/index.native.js.map +1 -1
  71. package/build/mutation/index.js +1 -0
  72. package/build/mutation/index.js.map +1 -1
  73. package/build-module/actions/delete-post.js +5 -0
  74. package/build-module/actions/delete-post.js.map +1 -1
  75. package/build-module/actions/duplicate-pattern.js +4 -0
  76. package/build-module/actions/duplicate-pattern.js.map +1 -1
  77. package/build-module/actions/duplicate-post.js +8 -3
  78. package/build-module/actions/duplicate-post.js.map +1 -1
  79. package/build-module/actions/duplicate-template-part.js +3 -0
  80. package/build-module/actions/duplicate-template-part.js.map +1 -1
  81. package/build-module/actions/export-pattern.js +5 -0
  82. package/build-module/actions/export-pattern.js.map +1 -1
  83. package/build-module/actions/index.js +0 -3
  84. package/build-module/actions/index.js.map +1 -1
  85. package/build-module/actions/permanently-delete-post.js +5 -0
  86. package/build-module/actions/permanently-delete-post.js.map +1 -1
  87. package/build-module/actions/rename-post.js +4 -0
  88. package/build-module/actions/rename-post.js.map +1 -1
  89. package/build-module/actions/reorder-page.js +4 -0
  90. package/build-module/actions/reorder-page.js.map +1 -1
  91. package/build-module/actions/reset-post.js +4 -0
  92. package/build-module/actions/reset-post.js.map +1 -1
  93. package/build-module/actions/restore-post.js +5 -0
  94. package/build-module/actions/restore-post.js.map +1 -1
  95. package/build-module/actions/trash-post.js +5 -0
  96. package/build-module/actions/trash-post.js.map +1 -1
  97. package/build-module/actions/view-post-revisions.js +4 -0
  98. package/build-module/actions/view-post-revisions.js.map +1 -1
  99. package/build-module/actions/view-post.js +4 -0
  100. package/build-module/actions/view-post.js.map +1 -1
  101. package/build-module/components/create-template-part-modal/index.js +32 -41
  102. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  103. package/build-module/components/create-template-part-modal/utils.js +1 -0
  104. package/build-module/components/create-template-part-modal/utils.js.map +1 -1
  105. package/build-module/fields/featured-image/index.js +4 -0
  106. package/build-module/fields/featured-image/index.js.map +1 -1
  107. package/build-module/fields/index.js +3 -0
  108. package/build-module/fields/index.js.map +1 -1
  109. package/build-module/fields/order/index.js +4 -0
  110. package/build-module/fields/order/index.js.map +1 -1
  111. package/build-module/fields/page-title/index.js +30 -0
  112. package/build-module/fields/page-title/index.js.map +1 -0
  113. package/build-module/fields/page-title/view.js +39 -0
  114. package/build-module/fields/page-title/view.js.map +1 -0
  115. package/build-module/fields/parent/index.js +1 -1
  116. package/build-module/fields/parent/index.js.map +1 -1
  117. package/build-module/fields/parent/parent-edit.js +1 -0
  118. package/build-module/fields/parent/parent-edit.js.map +1 -1
  119. package/build-module/fields/password/index.js +1 -1
  120. package/build-module/fields/password/index.js.map +1 -1
  121. package/build-module/fields/pattern-title/index.js +30 -0
  122. package/build-module/fields/pattern-title/index.js.map +1 -0
  123. package/build-module/fields/pattern-title/view.js +36 -0
  124. package/build-module/fields/pattern-title/view.js.map +1 -0
  125. package/build-module/fields/slug/index.js +4 -0
  126. package/build-module/fields/slug/index.js.map +1 -1
  127. package/build-module/fields/status/status-view.js +1 -0
  128. package/build-module/fields/status/status-view.js.map +1 -1
  129. package/build-module/fields/template/index.js +4 -3
  130. package/build-module/fields/template/index.js.map +1 -1
  131. package/build-module/fields/template/template-edit.js +1 -0
  132. package/build-module/fields/template/template-edit.js.map +1 -1
  133. package/build-module/fields/template-title/index.js +30 -0
  134. package/build-module/fields/template-title/index.js.map +1 -0
  135. package/build-module/fields/title/index.js +9 -2
  136. package/build-module/fields/title/index.js.map +1 -1
  137. package/build-module/fields/title/view.js +39 -0
  138. package/build-module/fields/title/view.js.map +1 -0
  139. package/build-module/index.native.js +1 -2
  140. package/build-module/index.native.js.map +1 -1
  141. package/build-module/mutation/index.js +1 -0
  142. package/build-module/mutation/index.js.map +1 -1
  143. package/build-style/style-rtl.css +24 -0
  144. package/build-style/style.css +24 -0
  145. package/build-types/actions/delete-post.d.ts +3 -0
  146. package/build-types/actions/delete-post.d.ts.map +1 -1
  147. package/build-types/actions/duplicate-pattern.d.ts +3 -0
  148. package/build-types/actions/duplicate-pattern.d.ts.map +1 -1
  149. package/build-types/actions/duplicate-post.d.ts +3 -0
  150. package/build-types/actions/duplicate-post.d.ts.map +1 -1
  151. package/build-types/actions/duplicate-template-part.d.ts +3 -0
  152. package/build-types/actions/duplicate-template-part.d.ts.map +1 -1
  153. package/build-types/actions/export-pattern.d.ts +3 -0
  154. package/build-types/actions/export-pattern.d.ts.map +1 -1
  155. package/build-types/actions/index.d.ts +0 -3
  156. package/build-types/actions/index.d.ts.map +1 -1
  157. package/build-types/actions/permanently-delete-post.d.ts +3 -0
  158. package/build-types/actions/permanently-delete-post.d.ts.map +1 -1
  159. package/build-types/actions/rename-post.d.ts +3 -0
  160. package/build-types/actions/rename-post.d.ts.map +1 -1
  161. package/build-types/actions/reorder-page.d.ts +3 -0
  162. package/build-types/actions/reorder-page.d.ts.map +1 -1
  163. package/build-types/actions/reset-post.d.ts +3 -0
  164. package/build-types/actions/reset-post.d.ts.map +1 -1
  165. package/build-types/actions/restore-post.d.ts +3 -0
  166. package/build-types/actions/restore-post.d.ts.map +1 -1
  167. package/build-types/actions/trash-post.d.ts +3 -0
  168. package/build-types/actions/trash-post.d.ts.map +1 -1
  169. package/build-types/actions/view-post-revisions.d.ts +3 -0
  170. package/build-types/actions/view-post-revisions.d.ts.map +1 -1
  171. package/build-types/actions/view-post.d.ts +3 -0
  172. package/build-types/actions/view-post.d.ts.map +1 -1
  173. package/build-types/components/create-template-part-modal/index.d.ts.map +1 -1
  174. package/build-types/fields/featured-image/index.d.ts +3 -0
  175. package/build-types/fields/featured-image/index.d.ts.map +1 -1
  176. package/build-types/fields/index.d.ts +3 -0
  177. package/build-types/fields/index.d.ts.map +1 -1
  178. package/build-types/fields/order/index.d.ts +3 -0
  179. package/build-types/fields/order/index.d.ts.map +1 -1
  180. package/build-types/fields/page-title/index.d.ts +14 -0
  181. package/build-types/fields/page-title/index.d.ts.map +1 -0
  182. package/build-types/fields/page-title/view.d.ts +8 -0
  183. package/build-types/fields/page-title/view.d.ts.map +1 -0
  184. package/build-types/fields/parent/index.d.ts +1 -1
  185. package/build-types/fields/password/index.d.ts +1 -1
  186. package/build-types/fields/pattern-title/index.d.ts +14 -0
  187. package/build-types/fields/pattern-title/index.d.ts.map +1 -0
  188. package/build-types/fields/pattern-title/view.d.ts +9 -0
  189. package/build-types/fields/pattern-title/view.d.ts.map +1 -0
  190. package/build-types/fields/slug/index.d.ts +3 -0
  191. package/build-types/fields/slug/index.d.ts.map +1 -1
  192. package/build-types/fields/template/index.d.ts +3 -0
  193. package/build-types/fields/template/index.d.ts.map +1 -1
  194. package/build-types/fields/template-title/index.d.ts +14 -0
  195. package/build-types/fields/template-title/index.d.ts.map +1 -0
  196. package/build-types/fields/title/index.d.ts +7 -2
  197. package/build-types/fields/title/index.d.ts.map +1 -1
  198. package/build-types/fields/title/view.d.ts +14 -0
  199. package/build-types/fields/title/view.d.ts.map +1 -0
  200. package/build-types/index.native.d.ts +0 -2
  201. package/build-types/index.native.d.ts.map +1 -1
  202. package/package.json +24 -24
  203. package/src/actions/delete-post.tsx +3 -0
  204. package/src/actions/duplicate-pattern.tsx +3 -0
  205. package/src/actions/duplicate-post.tsx +6 -3
  206. package/src/actions/duplicate-template-part.tsx +3 -1
  207. package/src/actions/export-pattern.tsx +3 -0
  208. package/src/actions/index.ts +0 -3
  209. package/src/actions/permanently-delete-post.tsx +3 -0
  210. package/src/actions/rename-post.tsx +3 -0
  211. package/src/actions/reorder-page.tsx +3 -0
  212. package/src/actions/reset-post.tsx +3 -0
  213. package/src/actions/restore-post.tsx +3 -0
  214. package/src/actions/trash-post.tsx +3 -0
  215. package/src/actions/view-post-revisions.tsx +3 -0
  216. package/src/actions/view-post.tsx +3 -0
  217. package/src/components/create-template-part-modal/index.tsx +25 -26
  218. package/src/fields/featured-image/index.ts +3 -0
  219. package/src/fields/index.ts +3 -0
  220. package/src/fields/order/index.ts +3 -0
  221. package/src/fields/page-title/index.ts +28 -0
  222. package/src/fields/page-title/style.scss +10 -0
  223. package/src/fields/page-title/view.tsx +38 -0
  224. package/src/fields/parent/index.ts +1 -1
  225. package/src/fields/password/index.tsx +1 -1
  226. package/src/fields/pattern-title/index.ts +28 -0
  227. package/src/fields/pattern-title/style.scss +3 -0
  228. package/src/fields/pattern-title/view.tsx +32 -0
  229. package/src/fields/slug/index.ts +3 -0
  230. package/src/fields/template/index.ts +3 -1
  231. package/src/fields/template-title/index.ts +28 -0
  232. package/src/fields/title/index.ts +9 -3
  233. package/src/fields/title/style.scss +8 -0
  234. package/src/fields/title/view.tsx +43 -0
  235. package/src/index.native.ts +0 -2
  236. package/src/style.scss +3 -0
  237. package/tsconfig.tsbuildinfo +1 -1
  238. package/build/actions/duplicate-post.native.js +0 -9
  239. package/build/actions/duplicate-post.native.js.map +0 -1
  240. package/build/actions/export-pattern.native.js +0 -9
  241. package/build/actions/export-pattern.native.js.map +0 -1
  242. package/build/actions/reorder-page.native.js +0 -9
  243. package/build/actions/reorder-page.native.js.map +0 -1
  244. package/build/fields/title/title-view.js +0 -61
  245. package/build/fields/title/title-view.js.map +0 -1
  246. package/build-module/actions/duplicate-post.native.js +0 -3
  247. package/build-module/actions/duplicate-post.native.js.map +0 -1
  248. package/build-module/actions/export-pattern.native.js +0 -3
  249. package/build-module/actions/export-pattern.native.js.map +0 -1
  250. package/build-module/actions/reorder-page.native.js +0 -3
  251. package/build-module/actions/reorder-page.native.js.map +0 -1
  252. package/build-module/fields/title/title-view.js +0 -55
  253. package/build-module/fields/title/title-view.js.map +0 -1
  254. package/build-types/actions/duplicate-post.native.d.ts +0 -3
  255. package/build-types/actions/duplicate-post.native.d.ts.map +0 -1
  256. package/build-types/actions/export-pattern.native.d.ts +0 -3
  257. package/build-types/actions/export-pattern.native.d.ts.map +0 -1
  258. package/build-types/actions/reorder-page.native.d.ts +0 -3
  259. package/build-types/actions/reorder-page.native.d.ts.map +0 -1
  260. package/build-types/fields/title/title-view.d.ts +0 -9
  261. package/build-types/fields/title/title-view.d.ts.map +0 -1
  262. package/src/actions/duplicate-post.native.tsx +0 -3
  263. package/src/actions/export-pattern.native.tsx +0 -3
  264. package/src/actions/reorder-page.native.tsx +0 -3
  265. package/src/fields/title/title-view.tsx +0 -61
@@ -5,7 +5,12 @@ import type { Field } from '@wordpress/dataviews';
5
5
  /**
6
6
  * Internal dependencies
7
7
  */
8
- import type { BasePost } from '../../types';
9
- declare const titleField: Field<BasePost>;
8
+ import type { CommonPost } from '../../types';
9
+ declare const titleField: Field<CommonPost>;
10
+ /**
11
+ * Title for the any entity with a `title` property.
12
+ * For patterns, pages or templates you should use the respective field
13
+ * because there are some differences in the rendering, labels, etc.
14
+ */
10
15
  export default titleField;
11
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/title/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD;;GAEG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,QAAA,MAAM,UAAU,EAAE,KAAK,CAAE,QAAQ,CAQhC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/title/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,QAAA,MAAM,UAAU,EAAE,KAAK,CAAE,UAAU,CASlC,CAAC;AAEF;;;;GAIG;AACH,eAAe,UAAU,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { ReactNode } from 'react';
2
+ /**
3
+ * Internal dependencies
4
+ */
5
+ import type { CommonPost } from '../../types';
6
+ export declare function BaseTitleView({ item, className, children, }: {
7
+ item: CommonPost;
8
+ className?: string;
9
+ children?: ReactNode;
10
+ }): import("react").JSX.Element;
11
+ export default function TitleView({ item }: {
12
+ item: CommonPost;
13
+ }): import("react").JSX.Element;
14
+ //# sourceMappingURL=view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/fields/title/view.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,wBAAgB,aAAa,CAAE,EAC9B,IAAI,EACJ,SAAS,EACT,QAAQ,GACR,EAAE;IACF,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB,+BAYA;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAE,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,+BAEhE"}
@@ -1,3 +1 @@
1
- export * from './actions/duplicate-post.native';
2
- export * from './actions/reorder-page.native';
3
1
  //# sourceMappingURL=index.native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../src/index.native.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../src/index.native.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/fields",
3
- "version": "0.5.1-next.cd6172eb0.0",
3
+ "version": "0.6.0",
4
4
  "description": "DataViews is a component that provides an API to render datasets using different types of layouts (table, grid, list, etc.).",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -33,29 +33,29 @@
33
33
  ],
34
34
  "dependencies": {
35
35
  "@babel/runtime": "7.25.7",
36
- "@wordpress/api-fetch": "^7.13.1-next.cd6172eb0.0",
37
- "@wordpress/blob": "^4.13.1-next.cd6172eb0.0",
38
- "@wordpress/block-editor": "^14.8.1-next.cd6172eb0.0",
39
- "@wordpress/blocks": "^14.2.1-next.cd6172eb0.0",
36
+ "@wordpress/api-fetch": "*",
37
+ "@wordpress/blob": "*",
38
+ "@wordpress/block-editor": "*",
39
+ "@wordpress/blocks": "*",
40
40
  "@wordpress/components": "*",
41
- "@wordpress/compose": "^7.13.1-next.cd6172eb0.0",
42
- "@wordpress/core-data": "^7.13.1-next.cd6172eb0.0",
43
- "@wordpress/data": "^10.13.1-next.cd6172eb0.0",
44
- "@wordpress/dataviews": "^4.9.1-next.cd6172eb0.0",
45
- "@wordpress/date": "^5.13.1-next.cd6172eb0.0",
46
- "@wordpress/element": "^6.13.1-next.cd6172eb0.0",
47
- "@wordpress/hooks": "^4.13.1-next.cd6172eb0.0",
48
- "@wordpress/html-entities": "^4.13.1-next.cd6172eb0.0",
49
- "@wordpress/i18n": "^5.13.1-next.cd6172eb0.0",
50
- "@wordpress/icons": "^10.13.1-next.cd6172eb0.0",
51
- "@wordpress/media-utils": "^5.13.1-next.cd6172eb0.0",
52
- "@wordpress/notices": "^5.13.1-next.cd6172eb0.0",
53
- "@wordpress/patterns": "^2.13.1-next.cd6172eb0.0",
54
- "@wordpress/primitives": "^4.13.1-next.cd6172eb0.0",
55
- "@wordpress/private-apis": "^1.13.1-next.cd6172eb0.0",
56
- "@wordpress/router": "^1.13.1-next.cd6172eb0.0",
57
- "@wordpress/url": "^4.13.1-next.cd6172eb0.0",
58
- "@wordpress/warning": "^3.13.1-next.cd6172eb0.0",
41
+ "@wordpress/compose": "*",
42
+ "@wordpress/core-data": "*",
43
+ "@wordpress/data": "*",
44
+ "@wordpress/dataviews": "*",
45
+ "@wordpress/date": "*",
46
+ "@wordpress/element": "*",
47
+ "@wordpress/hooks": "*",
48
+ "@wordpress/html-entities": "*",
49
+ "@wordpress/i18n": "*",
50
+ "@wordpress/icons": "*",
51
+ "@wordpress/media-utils": "*",
52
+ "@wordpress/notices": "*",
53
+ "@wordpress/patterns": "*",
54
+ "@wordpress/primitives": "*",
55
+ "@wordpress/private-apis": "*",
56
+ "@wordpress/router": "*",
57
+ "@wordpress/url": "*",
58
+ "@wordpress/warning": "*",
59
59
  "change-case": "4.1.2",
60
60
  "client-zip": "^2.4.5",
61
61
  "clsx": "2.1.1",
@@ -67,5 +67,5 @@
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "gitHead": "4cc93dc1781d8a7bc2bbde265913917920e2bd45"
70
+ "gitHead": "b432c18934c9db866b6dba7d37517a4e97d642e3"
71
71
  }
@@ -203,4 +203,7 @@ const deletePostAction: Action< Template | TemplatePart | Pattern > = {
203
203
  },
204
204
  };
205
205
 
206
+ /**
207
+ * Delete action for Templates, Patterns and Template Parts.
208
+ */
206
209
  export default deletePostAction;
@@ -37,4 +37,7 @@ const duplicatePattern: Action< Pattern > = {
37
37
  },
38
38
  };
39
39
 
40
+ /**
41
+ * Duplicate action for Pattern.
42
+ */
40
43
  export default duplicatePattern;
@@ -37,8 +37,8 @@ const duplicatePost: Action< BasePost > = {
37
37
  const [ item, setItem ] = useState< BasePost >( {
38
38
  ...items[ 0 ],
39
39
  title: sprintf(
40
- /* translators: %s: Existing template title */
41
- _x( '%s (Copy)', 'template' ),
40
+ /* translators: %s: Existing post title */
41
+ _x( '%s (Copy)', 'post' ),
42
42
  getItemTitle( items[ 0 ] )
43
43
  ),
44
44
  } );
@@ -104,7 +104,7 @@ const duplicatePost: Action< BasePost > = {
104
104
 
105
105
  createSuccessNotice(
106
106
  sprintf(
107
- // translators: %s: Title of the created post or template, e.g: "Hello world".
107
+ // translators: %s: Title of the created post, e.g: "Hello world".
108
108
  __( '"%s" successfully created.' ),
109
109
  decodeEntities( newItem.title?.rendered || item.title )
110
110
  ),
@@ -171,4 +171,7 @@ const duplicatePost: Action< BasePost > = {
171
171
  },
172
172
  };
173
173
 
174
+ /**
175
+ * Duplicate action for BasePost.
176
+ */
174
177
  export default duplicatePost;
@@ -68,5 +68,7 @@ const duplicateTemplatePart: Action< TemplatePart > = {
68
68
  );
69
69
  },
70
70
  };
71
-
71
+ /**
72
+ * Duplicate action for TemplatePart.
73
+ */
72
74
  export default duplicateTemplatePart;
@@ -73,4 +73,7 @@ const exportPattern: Action< Pattern > = {
73
73
  },
74
74
  };
75
75
 
76
+ /**
77
+ * Export action as JSON for Pattern.
78
+ */
76
79
  export default exportPattern;
@@ -1,13 +1,10 @@
1
1
  export { default as viewPost } from './view-post';
2
2
  export { default as reorderPage } from './reorder-page';
3
- export { default as reorderPageNative } from './reorder-page.native';
4
3
  export { default as duplicatePost } from './duplicate-post';
5
- export { default as duplicatePostNative } from './duplicate-post.native';
6
4
  export { default as renamePost } from './rename-post';
7
5
  export { default as resetPost } from './reset-post';
8
6
  export { default as duplicatePattern } from './duplicate-pattern';
9
7
  export { default as exportPattern } from './export-pattern';
10
- export { default as exportPatternNative } from './export-pattern.native';
11
8
  export { default as viewPostRevisions } from './view-post-revisions';
12
9
  export { default as permanentlyDeletePost } from './permanently-delete-post';
13
10
  export { default as restorePost } from './restore-post';
@@ -115,4 +115,7 @@ const permanentlyDeletePost: Action< PostWithPermissions > = {
115
115
  },
116
116
  };
117
117
 
118
+ /**
119
+ * Delete action for PostWithPermissions.
120
+ */
118
121
  export default permanentlyDeletePost;
@@ -139,4 +139,7 @@ const renamePost: Action< PostWithPermissions > = {
139
139
  },
140
140
  };
141
141
 
142
+ /**
143
+ * Rename action for PostWithPermissions.
144
+ */
142
145
  export default renamePost;
@@ -122,4 +122,7 @@ const reorderPage: Action< BasePost > = {
122
122
  RenderModal: ReorderModal,
123
123
  };
124
124
 
125
+ /**
126
+ * Reorder action for BasePost.
127
+ */
125
128
  export default reorderPage;
@@ -292,4 +292,7 @@ const resetPostAction: Action< Template | TemplatePart > = {
292
292
  },
293
293
  };
294
294
 
295
+ /**
296
+ * Reset action for Template and TemplatePart.
297
+ */
295
298
  export default resetPostAction;
@@ -131,4 +131,7 @@ const restorePost: Action< PostWithPermissions > = {
131
131
  },
132
132
  };
133
133
 
134
+ /**
135
+ * Restore action for PostWithPermissions.
136
+ */
134
137
  export default restorePost;
@@ -195,4 +195,7 @@ const trashPost: Action< PostWithPermissions > = {
195
195
  },
196
196
  };
197
197
 
198
+ /**
199
+ * Trash action for PostWithPermissions.
200
+ */
198
201
  export default trashPost;
@@ -44,4 +44,7 @@ const viewPostRevisions: Action< Post > = {
44
44
  },
45
45
  };
46
46
 
47
+ /**
48
+ * View post revisions action for Post.
49
+ */
47
50
  export default viewPostRevisions;
@@ -27,4 +27,7 @@ const viewPost: Action< BasePost > = {
27
27
  },
28
28
  };
29
29
 
30
+ /**
31
+ * View post action for BasePost.
32
+ */
30
33
  export default viewPost;
@@ -28,7 +28,7 @@ import {
28
28
  symbolFilled as symbolFilledIcon,
29
29
  } from '@wordpress/icons';
30
30
  import { store as noticesStore } from '@wordpress/notices';
31
- // @ts-ignore
31
+ // @ts-expect-error serialize is not typed
32
32
  import { serialize } from '@wordpress/blocks';
33
33
 
34
34
  /**
@@ -50,6 +50,13 @@ type CreateTemplatePartModalContentsProps = {
50
50
  defaultTitle?: string;
51
51
  };
52
52
 
53
+ type TemplatePartArea = {
54
+ area: string;
55
+ label: string;
56
+ icon: string;
57
+ description: string;
58
+ };
59
+
53
60
  /**
54
61
  * A React component that renders a modal for creating a template part. The modal displays a title and the contents for creating the template part.
55
62
  * This component should not live in this package, it should be moved to a dedicated package responsible for managing template.
@@ -64,7 +71,7 @@ export default function CreateTemplatePartModal( {
64
71
  } & CreateTemplatePartModalContentsProps ) {
65
72
  const defaultModalTitle = useSelect(
66
73
  ( select ) =>
67
- // @ts-ignore
74
+ // @ts-expect-error getPostType is not typed with 'wp_template_part' as argument.
68
75
  select( coreStore ).getPostType( 'wp_template_part' )?.labels
69
76
  ?.add_new_item,
70
77
  []
@@ -77,7 +84,6 @@ export default function CreateTemplatePartModal( {
77
84
  focusOnMount="firstContentElement"
78
85
  size="medium"
79
86
  >
80
- { /* @ts-ignore */ }
81
87
  <CreateTemplatePartModalContents { ...restProps } />
82
88
  </Modal>
83
89
  );
@@ -125,22 +131,14 @@ export function CreateTemplatePartModalContents( {
125
131
  const [ isSubmitting, setIsSubmitting ] = useState( false );
126
132
  const instanceId = useInstanceId( CreateTemplatePartModal );
127
133
 
128
- const defaultTemplatePartAreas = useSelect( ( select ) => {
129
- const areas =
134
+ const defaultTemplatePartAreas = useSelect(
135
+ ( select ) =>
130
136
  // @ts-expect-error getEntityRecord is not typed with unstableBase as argument.
131
137
  select( coreStore ).getEntityRecord< {
132
- default_template_part_areas: Array< {
133
- area: string;
134
- label: string;
135
- icon: string;
136
- description: string;
137
- } >;
138
- } >( 'root', '__unstableBase' )?.default_template_part_areas || [];
139
-
140
- return areas.map( ( item ) => {
141
- return { ...item, icon: getTemplatePartIcon( item.icon ) };
142
- } );
143
- }, [] );
138
+ default_template_part_areas: Array< TemplatePartArea >;
139
+ } >( 'root', '__unstableBase' )?.default_template_part_areas,
140
+ []
141
+ );
144
142
 
145
143
  async function createTemplatePart() {
146
144
  if ( ! title || isSubmitting ) {
@@ -220,12 +218,13 @@ export function CreateTemplatePartModalContents( {
220
218
  }
221
219
  checked={ area }
222
220
  >
223
- { defaultTemplatePartAreas.map(
224
- ( { icon, label, area: value, description } ) => (
221
+ { ( defaultTemplatePartAreas ?? [] ).map( ( item ) => {
222
+ const icon = getTemplatePartIcon( item.icon );
223
+ return (
225
224
  <Radio
226
225
  __next40pxDefaultSize
227
- key={ label }
228
- value={ value }
226
+ key={ item.label }
227
+ value={ item.area }
229
228
  className="fields-create-template-part-modal__area-radio"
230
229
  >
231
230
  <Flex align="start" justify="start">
@@ -233,19 +232,19 @@ export function CreateTemplatePartModalContents( {
233
232
  <Icon icon={ icon } />
234
233
  </FlexItem>
235
234
  <FlexBlock className="fields-create-template-part-modal__option-label">
236
- { label }
237
- <div>{ description }</div>
235
+ { item.label }
236
+ <div>{ item.description }</div>
238
237
  </FlexBlock>
239
238
 
240
239
  <FlexItem className="fields-create-template-part-modal__checkbox">
241
- { area === value && (
240
+ { area === item.area && (
242
241
  <Icon icon={ check } />
243
242
  ) }
244
243
  </FlexItem>
245
244
  </Flex>
246
245
  </Radio>
247
- )
248
- ) }
246
+ );
247
+ } ) }
249
248
  </RadioGroup>
250
249
  </BaseControl>
251
250
  <HStack justify="right">
@@ -20,4 +20,7 @@ const featuredImageField: Field< BasePost > = {
20
20
  enableSorting: false,
21
21
  };
22
22
 
23
+ /**
24
+ * Featured Image field for BasePost.
25
+ */
23
26
  export default featuredImageField;
@@ -1,5 +1,8 @@
1
1
  export { default as slugField } from './slug';
2
2
  export { default as titleField } from './title';
3
+ export { default as pageTitleField } from './page-title';
4
+ export { default as templateTitleField } from './template-title';
5
+ export { default as patternTitleField } from './pattern-title';
3
6
  export { default as orderField } from './order';
4
7
  export { default as featuredImageField } from './featured-image';
5
8
  export { default as templateField } from './template';
@@ -16,4 +16,7 @@ const orderField: Field< BasePost > = {
16
16
  description: __( 'Determines the order of pages.' ),
17
17
  };
18
18
 
19
+ /**
20
+ * Order field for BasePost.
21
+ */
19
22
  export default orderField;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import type { Field } from '@wordpress/dataviews';
5
+ import { __ } from '@wordpress/i18n';
6
+
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import type { BasePost } from '../../types';
11
+ import { getItemTitle } from '../../actions/utils';
12
+ import PageTitleView from './view';
13
+
14
+ const pageTitleField: Field< BasePost > = {
15
+ type: 'text',
16
+ id: 'title',
17
+ label: __( 'Title' ),
18
+ placeholder: __( 'No title' ),
19
+ getValue: ( { item } ) => getItemTitle( item ),
20
+ render: PageTitleView,
21
+ enableHiding: false,
22
+ enableGlobalSearch: true,
23
+ };
24
+
25
+ /**
26
+ * Title for the page entity.
27
+ */
28
+ export default pageTitleField;
@@ -0,0 +1,10 @@
1
+ .fields-field__page-title__badge {
2
+ background: $gray-100;
3
+ color: $gray-800;
4
+ padding: 0 $grid-unit-05;
5
+ border-radius: $radius-small;
6
+ font-size: 12px;
7
+ font-weight: 400;
8
+ flex-shrink: 0;
9
+ line-height: $grid-unit-05 * 5;
10
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { useSelect } from '@wordpress/data';
6
+ import { store as coreStore } from '@wordpress/core-data';
7
+ import type { Settings } from '@wordpress/core-data';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import type { CommonPost } from '../../types';
13
+ import { BaseTitleView } from '../title/view';
14
+
15
+ export default function PageTitleView( { item }: { item: CommonPost } ) {
16
+ const { frontPageId, postsPageId } = useSelect( ( select ) => {
17
+ const { getEntityRecord } = select( coreStore );
18
+ const siteSettings = getEntityRecord(
19
+ 'root',
20
+ 'site'
21
+ ) as Partial< Settings >;
22
+ return {
23
+ frontPageId: siteSettings?.page_on_front,
24
+ postsPageId: siteSettings?.page_for_posts,
25
+ };
26
+ }, [] );
27
+ return (
28
+ <BaseTitleView item={ item } className="fields-field__page-title">
29
+ { [ frontPageId, postsPageId ].includes( item.id as number ) && (
30
+ <span className="fields-field__page-title__badge">
31
+ { item.id === frontPageId
32
+ ? __( 'Homepage' )
33
+ : __( 'Posts Page' ) }
34
+ </span>
35
+ ) }
36
+ </BaseTitleView>
37
+ );
38
+ }
@@ -21,6 +21,6 @@ const parentField: Field< BasePost > = {
21
21
  };
22
22
 
23
23
  /**
24
- * This field is used to display the post parent.
24
+ * Parent field for BasePost.
25
25
  */
26
26
  export default parentField;
@@ -19,6 +19,6 @@ const passwordField: Field< BasePost > = {
19
19
  };
20
20
 
21
21
  /**
22
- * This field is used to display the post password.
22
+ * Password field for BasePost.
23
23
  */
24
24
  export default passwordField;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import type { Field } from '@wordpress/dataviews';
5
+ import { __ } from '@wordpress/i18n';
6
+
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import type { Pattern } from '../../types';
11
+ import { getItemTitle } from '../../actions/utils';
12
+ import PatternTitleView from './view';
13
+
14
+ const patternTitleField: Field< Pattern > = {
15
+ type: 'text',
16
+ id: 'title',
17
+ label: __( 'Title' ),
18
+ placeholder: __( 'No title' ),
19
+ getValue: ( { item } ) => getItemTitle( item ),
20
+ render: PatternTitleView,
21
+ enableHiding: false,
22
+ enableGlobalSearch: true,
23
+ };
24
+
25
+ /**
26
+ * Title for the pattern entity.
27
+ */
28
+ export default patternTitleField;
@@ -0,0 +1,3 @@
1
+ .fields-field__pattern-title span:first-child {
2
+ flex: 1;
3
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { Icon, lockSmall } from '@wordpress/icons';
6
+ import { Tooltip } from '@wordpress/components';
7
+ // @ts-ignore
8
+ import { privateApis as patternPrivateApis } from '@wordpress/patterns';
9
+
10
+ /**
11
+ * Internal dependencies
12
+ */
13
+ import type { CommonPost } from '../../types';
14
+ import { BaseTitleView } from '../title/view';
15
+ import { unlock } from '../../lock-unlock';
16
+
17
+ export const { PATTERN_TYPES } = unlock( patternPrivateApis );
18
+
19
+ export default function PatternTitleView( { item }: { item: CommonPost } ) {
20
+ return (
21
+ <BaseTitleView item={ item } className="fields-field__pattern-title">
22
+ { item.type === PATTERN_TYPES.theme && (
23
+ <Tooltip
24
+ placement="top"
25
+ text={ __( 'This pattern cannot be edited.' ) }
26
+ >
27
+ <Icon icon={ lockSmall } size={ 24 } />
28
+ </Tooltip>
29
+ ) }
30
+ </BaseTitleView>
31
+ );
32
+ }
@@ -19,4 +19,7 @@ const slugField: Field< BasePost > = {
19
19
  render: SlugView,
20
20
  };
21
21
 
22
+ /**
23
+ * Slug field for BasePost.
24
+ */
22
25
  export default slugField;
@@ -14,9 +14,11 @@ const templateField: Field< BasePost > = {
14
14
  id: 'template',
15
15
  type: 'text',
16
16
  label: __( 'Template' ),
17
- getValue: ( { item } ) => item.template,
18
17
  Edit: TemplateEdit,
19
18
  enableSorting: false,
20
19
  };
21
20
 
21
+ /**
22
+ * Template field for BasePost.
23
+ */
22
24
  export default templateField;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import type { Field } from '@wordpress/dataviews';
5
+ import { __ } from '@wordpress/i18n';
6
+
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import type { Template } from '../../types';
11
+ import { getItemTitle } from '../../actions/utils';
12
+ import TitleView from '../title/view';
13
+
14
+ const templateTitleField: Field< Template > = {
15
+ type: 'text',
16
+ label: __( 'Template' ),
17
+ placeholder: __( 'No title' ),
18
+ id: 'title',
19
+ getValue: ( { item } ) => getItemTitle( item ),
20
+ render: TitleView,
21
+ enableHiding: false,
22
+ enableGlobalSearch: true,
23
+ };
24
+
25
+ /**
26
+ * Title for the template entity.
27
+ */
28
+ export default templateTitleField;
@@ -7,11 +7,11 @@ import { __ } from '@wordpress/i18n';
7
7
  /**
8
8
  * Internal dependencies
9
9
  */
10
- import type { BasePost } from '../../types';
10
+ import type { CommonPost } from '../../types';
11
11
  import { getItemTitle } from '../../actions/utils';
12
- import TitleView from './title-view';
12
+ import TitleView from './view';
13
13
 
14
- const titleField: Field< BasePost > = {
14
+ const titleField: Field< CommonPost > = {
15
15
  type: 'text',
16
16
  id: 'title',
17
17
  label: __( 'Title' ),
@@ -19,6 +19,12 @@ const titleField: Field< BasePost > = {
19
19
  getValue: ( { item } ) => getItemTitle( item ),
20
20
  render: TitleView,
21
21
  enableHiding: false,
22
+ enableGlobalSearch: true,
22
23
  };
23
24
 
25
+ /**
26
+ * Title for the any entity with a `title` property.
27
+ * For patterns, pages or templates you should use the respective field
28
+ * because there are some differences in the rendering, labels, etc.
29
+ */
24
30
  export default titleField;