@wordpress/fields 0.24.0 → 0.24.1-next.ff1cebbba.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/README.md +1 -1
  2. package/build/actions/delete-post.js +168 -117
  3. package/build/actions/delete-post.js.map +7 -1
  4. package/build/actions/duplicate-pattern.js +42 -43
  5. package/build/actions/duplicate-pattern.js.map +7 -1
  6. package/build/actions/duplicate-post.js +104 -93
  7. package/build/actions/duplicate-post.js.map +7 -1
  8. package/build/actions/duplicate-template-part.js +71 -63
  9. package/build/actions/duplicate-template-part.js.map +7 -1
  10. package/build/actions/export-pattern.js +60 -45
  11. package/build/actions/export-pattern.js.map +7 -1
  12. package/build/actions/index.js +71 -94
  13. package/build/actions/index.js.map +7 -1
  14. package/build/actions/permanently-delete-post.js +161 -132
  15. package/build/actions/permanently-delete-post.js.map +7 -1
  16. package/build/actions/rename-post.js +77 -83
  17. package/build/actions/rename-post.js.map +7 -1
  18. package/build/actions/reorder-page.js +76 -73
  19. package/build/actions/reorder-page.js.map +7 -1
  20. package/build/actions/reset-post.js +214 -165
  21. package/build/actions/reset-post.js.map +7 -1
  22. package/build/actions/restore-post.js +91 -75
  23. package/build/actions/restore-post.js.map +7 -1
  24. package/build/actions/trash-post.js +167 -127
  25. package/build/actions/trash-post.js.map +7 -1
  26. package/build/actions/utils.js +48 -41
  27. package/build/actions/utils.js.map +7 -1
  28. package/build/actions/view-post-revisions.js +39 -35
  29. package/build/actions/view-post-revisions.js.map +7 -1
  30. package/build/actions/view-post.js +31 -28
  31. package/build/actions/view-post.js.map +7 -1
  32. package/build/components/create-template-part-modal/index.js +213 -169
  33. package/build/components/create-template-part-modal/index.js.map +7 -1
  34. package/build/components/create-template-part-modal/utils.js +48 -48
  35. package/build/components/create-template-part-modal/utils.js.map +7 -1
  36. package/build/fields/author/author-view.js +63 -69
  37. package/build/fields/author/author-view.js.map +7 -1
  38. package/build/fields/author/index.js +43 -29
  39. package/build/fields/author/index.js.map +7 -1
  40. package/build/fields/comment-status/index.js +42 -32
  41. package/build/fields/comment-status/index.js.map +7 -1
  42. package/build/fields/date/date-view.js +84 -58
  43. package/build/fields/date/date-view.js.map +7 -1
  44. package/build/fields/date/index.js +39 -25
  45. package/build/fields/date/index.js.map +7 -1
  46. package/build/fields/discussion/index.js +36 -32
  47. package/build/fields/discussion/index.js.map +7 -1
  48. package/build/fields/featured-image/featured-image-edit.js +115 -97
  49. package/build/fields/featured-image/featured-image-edit.js.map +7 -1
  50. package/build/fields/featured-image/featured-image-view.js +41 -34
  51. package/build/fields/featured-image/featured-image-view.js.map +7 -1
  52. package/build/fields/featured-image/index.js +31 -26
  53. package/build/fields/featured-image/index.js.map +7 -1
  54. package/build/fields/index.js +83 -118
  55. package/build/fields/index.js.map +7 -1
  56. package/build/fields/order/index.js +28 -23
  57. package/build/fields/order/index.js.map +7 -1
  58. package/build/fields/page-title/index.js +42 -30
  59. package/build/fields/page-title/index.js.map +7 -1
  60. package/build/fields/page-title/view.js +38 -41
  61. package/build/fields/page-title/view.js.map +7 -1
  62. package/build/fields/parent/index.js +31 -26
  63. package/build/fields/parent/index.js.map +7 -1
  64. package/build/fields/parent/parent-edit.js +200 -168
  65. package/build/fields/parent/parent-edit.js.map +7 -1
  66. package/build/fields/parent/parent-view.js +40 -31
  67. package/build/fields/parent/parent-view.js.map +7 -1
  68. package/build/fields/parent/utils.js +29 -16
  69. package/build/fields/parent/utils.js.map +7 -1
  70. package/build/fields/password/edit.js +67 -53
  71. package/build/fields/password/edit.js.map +7 -1
  72. package/build/fields/password/index.js +40 -26
  73. package/build/fields/password/index.js.map +7 -1
  74. package/build/fields/pattern-title/index.js +42 -30
  75. package/build/fields/pattern-title/index.js.map +7 -1
  76. package/build/fields/pattern-title/view.js +43 -41
  77. package/build/fields/pattern-title/view.js.map +7 -1
  78. package/build/fields/ping-status/index.js +66 -47
  79. package/build/fields/ping-status/index.js.map +7 -1
  80. package/build/fields/slug/index.js +41 -27
  81. package/build/fields/slug/index.js.map +7 -1
  82. package/build/fields/slug/slug-edit.js +116 -107
  83. package/build/fields/slug/slug-edit.js.map +7 -1
  84. package/build/fields/slug/slug-view.js +30 -23
  85. package/build/fields/slug/slug-view.js.map +7 -1
  86. package/build/fields/slug/utils.js +32 -20
  87. package/build/fields/slug/utils.js.map +7 -1
  88. package/build/fields/status/index.js +43 -29
  89. package/build/fields/status/index.js.map +7 -1
  90. package/build/fields/status/status-elements.js +58 -44
  91. package/build/fields/status/status-elements.js.map +7 -1
  92. package/build/fields/status/status-view.js +42 -36
  93. package/build/fields/status/status-view.js.map +7 -1
  94. package/build/fields/template/index.js +29 -24
  95. package/build/fields/template/index.js.map +7 -1
  96. package/build/fields/template/template-edit.js +167 -142
  97. package/build/fields/template/template-edit.js.map +7 -1
  98. package/build/fields/template-title/index.js +42 -30
  99. package/build/fields/template-title/index.js.map +7 -1
  100. package/build/fields/title/index.js +42 -32
  101. package/build/fields/title/index.js.map +7 -1
  102. package/build/fields/title/view.js +57 -39
  103. package/build/fields/title/view.js.map +7 -1
  104. package/build/index.js +39 -36
  105. package/build/index.js.map +7 -1
  106. package/build/lock-unlock.js +31 -14
  107. package/build/lock-unlock.js.map +7 -1
  108. package/build/mutation/index.js +91 -76
  109. package/build/mutation/index.js.map +7 -1
  110. package/build/types.js +16 -5
  111. package/build/types.js.map +7 -1
  112. package/build-module/actions/delete-post.js +155 -107
  113. package/build-module/actions/delete-post.js.map +7 -1
  114. package/build-module/actions/duplicate-pattern.js +24 -36
  115. package/build-module/actions/duplicate-pattern.js.map +7 -1
  116. package/build-module/actions/duplicate-post.js +87 -84
  117. package/build-module/actions/duplicate-post.js.map +7 -1
  118. package/build-module/actions/duplicate-template-part.js +51 -58
  119. package/build-module/actions/duplicate-template-part.js.map +7 -1
  120. package/build-module/actions/export-pattern.js +40 -39
  121. package/build-module/actions/export-pattern.js.map +7 -1
  122. package/build-module/actions/index.js +29 -14
  123. package/build-module/actions/index.js.map +7 -1
  124. package/build-module/actions/permanently-delete-post.js +146 -125
  125. package/build-module/actions/permanently-delete-post.js.map +7 -1
  126. package/build-module/actions/rename-post.js +63 -77
  127. package/build-module/actions/rename-post.js.map +7 -1
  128. package/build-module/actions/reorder-page.js +58 -65
  129. package/build-module/actions/reorder-page.js.map +7 -1
  130. package/build-module/actions/reset-post.js +185 -152
  131. package/build-module/actions/reset-post.js.map +7 -1
  132. package/build-module/actions/restore-post.js +72 -68
  133. package/build-module/actions/restore-post.js.map +7 -1
  134. package/build-module/actions/trash-post.js +152 -119
  135. package/build-module/actions/trash-post.js.map +7 -1
  136. package/build-module/actions/utils.js +23 -34
  137. package/build-module/actions/utils.js.map +7 -1
  138. package/build-module/actions/view-post-revisions.js +21 -31
  139. package/build-module/actions/view-post-revisions.js.map +7 -1
  140. package/build-module/actions/view-post.js +12 -23
  141. package/build-module/actions/view-post.js.map +7 -1
  142. package/build-module/components/create-template-part-modal/index.js +201 -154
  143. package/build-module/components/create-template-part-modal/index.js.map +7 -1
  144. package/build-module/components/create-template-part-modal/utils.js +26 -43
  145. package/build-module/components/create-template-part-modal/utils.js.map +7 -1
  146. package/build-module/fields/author/author-view.js +34 -62
  147. package/build-module/fields/author/author-view.js.map +7 -1
  148. package/build-module/fields/author/index.js +14 -24
  149. package/build-module/fields/author/index.js.map +7 -1
  150. package/build-module/fields/comment-status/index.js +24 -29
  151. package/build-module/fields/comment-status/index.js.map +7 -1
  152. package/build-module/fields/date/date-view.js +66 -53
  153. package/build-module/fields/date/date-view.js.map +7 -1
  154. package/build-module/fields/date/index.js +10 -20
  155. package/build-module/fields/date/index.js.map +7 -1
  156. package/build-module/fields/discussion/index.js +18 -29
  157. package/build-module/fields/discussion/index.js.map +7 -1
  158. package/build-module/fields/featured-image/featured-image-edit.js +93 -90
  159. package/build-module/fields/featured-image/featured-image-edit.js.map +7 -1
  160. package/build-module/fields/featured-image/featured-image-view.js +20 -29
  161. package/build-module/fields/featured-image/featured-image-view.js.map +7 -1
  162. package/build-module/fields/featured-image/index.js +11 -21
  163. package/build-module/fields/featured-image/index.js.map +7 -1
  164. package/build-module/fields/index.js +35 -17
  165. package/build-module/fields/index.js.map +7 -1
  166. package/build-module/fields/order/index.js +10 -20
  167. package/build-module/fields/order/index.js.map +7 -1
  168. package/build-module/fields/page-title/index.js +13 -25
  169. package/build-module/fields/page-title/index.js.map +7 -1
  170. package/build-module/fields/page-title/view.js +20 -37
  171. package/build-module/fields/page-title/view.js.map +7 -1
  172. package/build-module/fields/parent/index.js +11 -21
  173. package/build-module/fields/parent/index.js.map +7 -1
  174. package/build-module/fields/parent/parent-edit.js +172 -160
  175. package/build-module/fields/parent/parent-edit.js.map +7 -1
  176. package/build-module/fields/parent/parent-view.js +19 -27
  177. package/build-module/fields/parent/parent-view.js.map +7 -1
  178. package/build-module/fields/parent/utils.js +8 -13
  179. package/build-module/fields/parent/utils.js.map +7 -1
  180. package/build-module/fields/password/edit.js +53 -48
  181. package/build-module/fields/password/edit.js.map +7 -1
  182. package/build-module/fields/password/index.js +11 -21
  183. package/build-module/fields/password/index.js.map +7 -1
  184. package/build-module/fields/pattern-title/index.js +13 -25
  185. package/build-module/fields/pattern-title/index.js.map +7 -1
  186. package/build-module/fields/pattern-title/view.js +21 -34
  187. package/build-module/fields/pattern-title/view.js.map +7 -1
  188. package/build-module/fields/ping-status/index.js +48 -43
  189. package/build-module/fields/ping-status/index.js.map +7 -1
  190. package/build-module/fields/slug/index.js +11 -21
  191. package/build-module/fields/slug/index.js.map +7 -1
  192. package/build-module/fields/slug/slug-edit.js +101 -100
  193. package/build-module/fields/slug/slug-edit.js.map +7 -1
  194. package/build-module/fields/slug/slug-view.js +9 -16
  195. package/build-module/fields/slug/slug-view.js.map +7 -1
  196. package/build-module/fields/slug/utils.js +9 -13
  197. package/build-module/fields/slug/utils.js.map +7 -1
  198. package/build-module/fields/status/index.js +13 -23
  199. package/build-module/fields/status/index.js.map +7 -1
  200. package/build-module/fields/status/status-elements.js +47 -40
  201. package/build-module/fields/status/status-elements.js.map +7 -1
  202. package/build-module/fields/status/status-view.js +14 -31
  203. package/build-module/fields/status/status-view.js.map +7 -1
  204. package/build-module/fields/template/index.js +10 -18
  205. package/build-module/fields/template/index.js.map +7 -1
  206. package/build-module/fields/template/template-edit.js +147 -130
  207. package/build-module/fields/template/template-edit.js.map +7 -1
  208. package/build-module/fields/template-title/index.js +13 -25
  209. package/build-module/fields/template-title/index.js.map +7 -1
  210. package/build-module/fields/title/index.js +13 -27
  211. package/build-module/fields/title/index.js.map +7 -1
  212. package/build-module/fields/title/view.js +25 -32
  213. package/build-module/fields/title/view.js.map +7 -1
  214. package/build-module/index.js +7 -4
  215. package/build-module/index.js.map +7 -1
  216. package/build-module/lock-unlock.js +8 -7
  217. package/build-module/lock-unlock.js.map +7 -1
  218. package/build-module/mutation/index.js +70 -72
  219. package/build-module/mutation/index.js.map +7 -1
  220. package/build-module/types.js +1 -2
  221. package/build-module/types.js.map +7 -1
  222. package/build-style/style-rtl.css +4 -139
  223. package/build-style/style.css +4 -139
  224. package/build-types/fields/author/author-view.d.ts.map +1 -1
  225. package/build-types/fields/discussion/index.d.ts.map +1 -1
  226. package/build-types/fields/featured-image/featured-image-edit.d.ts +2 -2
  227. package/build-types/fields/featured-image/featured-image-edit.d.ts.map +1 -1
  228. package/build-types/fields/featured-image/featured-image-view.d.ts +5 -2
  229. package/build-types/fields/featured-image/featured-image-view.d.ts.map +1 -1
  230. package/build-types/fields/featured-image/index.d.ts +3 -3
  231. package/build-types/fields/featured-image/index.d.ts.map +1 -1
  232. package/build-types/types.d.ts +18 -0
  233. package/build-types/types.d.ts.map +1 -1
  234. package/package.json +34 -27
  235. package/src/components/create-template-part-modal/style.scss +4 -0
  236. package/src/fields/author/author-view.tsx +3 -17
  237. package/src/fields/discussion/index.tsx +1 -0
  238. package/src/fields/featured-image/featured-image-edit.tsx +2 -2
  239. package/src/fields/featured-image/featured-image-view.tsx +3 -15
  240. package/src/fields/featured-image/index.ts +3 -3
  241. package/src/fields/featured-image/style.scss +3 -0
  242. package/src/fields/template/style.scss +4 -0
  243. package/src/fields/title/style.scss +1 -1
  244. package/src/style.scss +9 -8
  245. package/src/types.ts +18 -0
  246. package/tsconfig.tsbuildinfo +1 -1
  247. package/build/index.native.js +0 -2
  248. package/build/index.native.js.map +0 -1
  249. package/build-module/index.native.js +0 -2
  250. package/build-module/index.native.js.map +0 -1
@@ -1,161 +1,186 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var template_edit_exports = {};
20
+ __export(template_edit_exports, {
21
+ TemplateEdit: () => TemplateEdit
5
22
  });
6
- exports.TemplateEdit = void 0;
7
- var _element = require("@wordpress/element");
8
- var _blocks = require("@wordpress/blocks");
9
- var _coreData = require("@wordpress/core-data");
10
- var _blockEditor = require("@wordpress/block-editor");
11
- var _components = require("@wordpress/components");
12
- var _compose = require("@wordpress/compose");
13
- var _data = require("@wordpress/data");
14
- var _htmlEntities = require("@wordpress/html-entities");
15
- var _i18n = require("@wordpress/i18n");
16
- var _utils = require("../../actions/utils");
17
- var _lockUnlock = require("../../lock-unlock");
18
- var _jsxRuntime = require("react/jsx-runtime");
19
- /**
20
- * WordPress dependencies
21
- */
22
-
23
- // @ts-ignore
24
-
25
- /**
26
- * Internal dependencies
27
- */
28
- // @ts-expect-error block-editor is not typed correctly.
29
-
23
+ module.exports = __toCommonJS(template_edit_exports);
24
+ var import_jsx_runtime = require("react/jsx-runtime");
25
+ var import_element = require("@wordpress/element");
26
+ var import_blocks = require("@wordpress/blocks");
27
+ var import_core_data = require("@wordpress/core-data");
28
+ var import_block_editor = require("@wordpress/block-editor");
29
+ var import_components = require("@wordpress/components");
30
+ var import_compose = require("@wordpress/compose");
31
+ var import_data = require("@wordpress/data");
32
+ var import_html_entities = require("@wordpress/html-entities");
33
+ var import_i18n = require("@wordpress/i18n");
34
+ var import_utils = require("../../actions/utils");
35
+ var import_lock_unlock = require("../../lock-unlock");
30
36
  const EMPTY_ARRAY = [];
31
37
  const TemplateEdit = ({
32
38
  data,
33
39
  field,
34
40
  onChange
35
41
  }) => {
36
- const {
37
- id
38
- } = field;
42
+ const { id } = field;
39
43
  const postType = data.type;
40
- const postId = typeof data.id === 'number' ? data.id : parseInt(data.id, 10);
44
+ const postId = typeof data.id === "number" ? data.id : parseInt(data.id, 10);
41
45
  const slug = data.slug;
42
- const {
43
- canSwitchTemplate,
44
- templates
45
- } = (0, _data.useSelect)(select => {
46
- var _select$getEntityReco;
47
- const allTemplates = (_select$getEntityReco = select(_coreData.store).getEntityRecords('postType', 'wp_template', {
48
- per_page: -1,
49
- post_type: postType
50
- })) !== null && _select$getEntityReco !== void 0 ? _select$getEntityReco : EMPTY_ARRAY;
51
- const {
52
- getHomePage,
53
- getPostsPageId
54
- } = (0, _lockUnlock.unlock)(select(_coreData.store));
55
- const isPostsPage = getPostsPageId() === +postId;
56
- const isFrontPage = postType === 'page' && getHomePage()?.postId === +postId;
57
- const allowSwitchingTemplate = !isPostsPage && !isFrontPage;
58
- return {
59
- templates: allTemplates,
60
- canSwitchTemplate: allowSwitchingTemplate
61
- };
62
- }, [postId, postType]);
63
- const templatesAsPatterns = (0, _element.useMemo)(() => {
46
+ const { canSwitchTemplate, templates } = (0, import_data.useSelect)(
47
+ (select) => {
48
+ const allTemplates = select(import_core_data.store).getEntityRecords(
49
+ "postType",
50
+ "wp_template",
51
+ {
52
+ per_page: -1,
53
+ post_type: postType
54
+ }
55
+ ) ?? EMPTY_ARRAY;
56
+ const { getHomePage, getPostsPageId } = (0, import_lock_unlock.unlock)(
57
+ select(import_core_data.store)
58
+ );
59
+ const isPostsPage = getPostsPageId() === +postId;
60
+ const isFrontPage = postType === "page" && getHomePage()?.postId === +postId;
61
+ const allowSwitchingTemplate = !isPostsPage && !isFrontPage;
62
+ return {
63
+ templates: allTemplates,
64
+ canSwitchTemplate: allowSwitchingTemplate
65
+ };
66
+ },
67
+ [postId, postType]
68
+ );
69
+ const templatesAsPatterns = (0, import_element.useMemo)(() => {
64
70
  if (!canSwitchTemplate) {
65
71
  return [];
66
72
  }
67
- return templates.filter(template => template.is_custom && template.slug !== data.template &&
68
- // Skip empty templates.
69
- !!template.content.raw).map(template => ({
73
+ return templates.filter(
74
+ (template) => template.is_custom && template.slug !== data.template && // Skip empty templates.
75
+ !!template.content.raw
76
+ ).map((template) => ({
70
77
  name: template.slug,
71
- blocks: (0, _blocks.parse)(template.content.raw),
72
- title: (0, _htmlEntities.decodeEntities)(template.title.rendered),
78
+ blocks: (0, import_blocks.parse)(template.content.raw),
79
+ title: (0, import_html_entities.decodeEntities)(template.title.rendered),
73
80
  id: template.id
74
81
  }));
75
82
  }, [canSwitchTemplate, data.template, templates]);
76
- const shownTemplates = (0, _compose.useAsyncList)(templatesAsPatterns);
77
- const value = field.getValue({
78
- item: data
79
- });
80
- const foundTemplate = templates.find(template => template.slug === value);
81
- const currentTemplate = (0, _data.useSelect)(select => {
82
- if (foundTemplate) {
83
- return foundTemplate;
84
- }
85
- let slugToCheck;
86
- // In `draft` status we might not have a slug available, so we use the `single`
87
- // post type templates slug(ex page, single-post, single-product etc..).
88
- // Pages do not need the `single` prefix in the slug to be prioritized
89
- // through template hierarchy.
90
- if (slug) {
91
- slugToCheck = postType === 'page' ? `${postType}-${slug}` : `single-${postType}-${slug}`;
92
- } else {
93
- slugToCheck = postType === 'page' ? 'page' : `single-${postType}`;
94
- }
95
- if (postType) {
96
- const templateId = select(_coreData.store).getDefaultTemplateId({
97
- slug: slugToCheck
98
- });
99
- return select(_coreData.store).getEntityRecord('postType', 'wp_template', templateId);
100
- }
101
- }, [foundTemplate, postType, slug]);
102
- const [showModal, setShowModal] = (0, _element.useState)(false);
103
- const onChangeControl = (0, _element.useCallback)(newValue => onChange({
104
- [id]: newValue
105
- }), [id, onChange]);
106
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)("fieldset", {
107
- className: "fields-controls__template",
108
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Dropdown, {
109
- popoverProps: {
110
- placement: 'bottom-start'
111
- },
112
- renderToggle: ({
113
- onToggle
114
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
115
- __next40pxDefaultSize: true,
116
- variant: "tertiary",
117
- size: "compact",
118
- onClick: onToggle,
119
- children: currentTemplate ? (0, _utils.getItemTitle)(currentTemplate) : ''
120
- }),
121
- renderContent: ({
122
- onToggle
123
- }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.MenuGroup, {
124
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
125
- onClick: () => {
126
- setShowModal(true);
127
- onToggle();
128
- },
129
- children: (0, _i18n.__)('Change template')
130
- }),
131
- // The default template in a post is indicated by an empty string
132
- value !== '' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
133
- onClick: () => {
134
- onChangeControl('');
135
- onToggle();
136
- },
137
- children: (0, _i18n.__)('Use default template')
138
- })]
139
- })
140
- }), showModal && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Modal, {
141
- title: (0, _i18n.__)('Choose a template'),
142
- onRequestClose: () => setShowModal(false),
143
- overlayClassName: "fields-controls__template-modal",
144
- isFullScreen: true,
145
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
146
- className: "fields-controls__template-content",
147
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.__experimentalBlockPatternsList, {
148
- label: (0, _i18n.__)('Templates'),
149
- blockPatterns: templatesAsPatterns,
150
- shownPatterns: shownTemplates,
151
- onClickPattern: template => {
152
- onChangeControl(template.name);
153
- setShowModal(false);
83
+ const shownTemplates = (0, import_compose.useAsyncList)(templatesAsPatterns);
84
+ const value = field.getValue({ item: data });
85
+ const foundTemplate = templates.find(
86
+ (template) => template.slug === value
87
+ );
88
+ const currentTemplate = (0, import_data.useSelect)(
89
+ (select) => {
90
+ if (foundTemplate) {
91
+ return foundTemplate;
92
+ }
93
+ let slugToCheck;
94
+ if (slug) {
95
+ slugToCheck = postType === "page" ? `${postType}-${slug}` : `single-${postType}-${slug}`;
96
+ } else {
97
+ slugToCheck = postType === "page" ? "page" : `single-${postType}`;
98
+ }
99
+ if (postType) {
100
+ const templateId = select(import_core_data.store).getDefaultTemplateId({
101
+ slug: slugToCheck
102
+ });
103
+ return select(import_core_data.store).getEntityRecord(
104
+ "postType",
105
+ "wp_template",
106
+ templateId
107
+ );
108
+ }
109
+ },
110
+ [foundTemplate, postType, slug]
111
+ );
112
+ const [showModal, setShowModal] = (0, import_element.useState)(false);
113
+ const onChangeControl = (0, import_element.useCallback)(
114
+ (newValue) => onChange({
115
+ [id]: newValue
116
+ }),
117
+ [id, onChange]
118
+ );
119
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("fieldset", { className: "fields-controls__template", children: [
120
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
121
+ import_components.Dropdown,
122
+ {
123
+ popoverProps: { placement: "bottom-start" },
124
+ renderToggle: ({ onToggle }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
125
+ import_components.Button,
126
+ {
127
+ __next40pxDefaultSize: true,
128
+ variant: "tertiary",
129
+ size: "compact",
130
+ onClick: onToggle,
131
+ children: currentTemplate ? (0, import_utils.getItemTitle)(currentTemplate) : ""
132
+ }
133
+ ),
134
+ renderContent: ({ onToggle }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_components.MenuGroup, { children: [
135
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
136
+ import_components.MenuItem,
137
+ {
138
+ onClick: () => {
139
+ setShowModal(true);
140
+ onToggle();
141
+ },
142
+ children: (0, import_i18n.__)("Change template")
143
+ }
144
+ ),
145
+ // The default template in a post is indicated by an empty string
146
+ value !== "" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
147
+ import_components.MenuItem,
148
+ {
149
+ onClick: () => {
150
+ onChangeControl("");
151
+ onToggle();
152
+ },
153
+ children: (0, import_i18n.__)("Use default template")
154
+ }
155
+ )
156
+ ] })
157
+ }
158
+ ),
159
+ showModal && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
160
+ import_components.Modal,
161
+ {
162
+ title: (0, import_i18n.__)("Choose a template"),
163
+ onRequestClose: () => setShowModal(false),
164
+ overlayClassName: "fields-controls__template-modal",
165
+ isFullScreen: true,
166
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fields-controls__template-content", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
167
+ import_block_editor.__experimentalBlockPatternsList,
168
+ {
169
+ label: (0, import_i18n.__)("Templates"),
170
+ blockPatterns: templatesAsPatterns,
171
+ shownPatterns: shownTemplates,
172
+ onClickPattern: (template) => {
173
+ onChangeControl(template.name);
174
+ setShowModal(false);
175
+ }
154
176
  }
155
- })
156
- })
157
- })]
158
- });
177
+ ) })
178
+ }
179
+ )
180
+ ] });
159
181
  };
160
- exports.TemplateEdit = TemplateEdit;
161
- //# sourceMappingURL=template-edit.js.map
182
+ // Annotate the CommonJS export names for ESM import in node:
183
+ 0 && (module.exports = {
184
+ TemplateEdit
185
+ });
186
+ //# sourceMappingURL=template-edit.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_element","require","_blocks","_coreData","_blockEditor","_components","_compose","_data","_htmlEntities","_i18n","_utils","_lockUnlock","_jsxRuntime","EMPTY_ARRAY","TemplateEdit","data","field","onChange","id","postType","type","postId","parseInt","slug","canSwitchTemplate","templates","useSelect","select","_select$getEntityReco","allTemplates","coreStore","getEntityRecords","per_page","post_type","getHomePage","getPostsPageId","unlock","isPostsPage","isFrontPage","allowSwitchingTemplate","templatesAsPatterns","useMemo","filter","template","is_custom","content","raw","map","name","blocks","parse","title","decodeEntities","rendered","shownTemplates","useAsyncList","value","getValue","item","foundTemplate","find","currentTemplate","slugToCheck","templateId","getDefaultTemplateId","getEntityRecord","showModal","setShowModal","useState","onChangeControl","useCallback","newValue","jsxs","className","children","jsx","Dropdown","popoverProps","placement","renderToggle","onToggle","Button","__next40pxDefaultSize","variant","size","onClick","getItemTitle","renderContent","MenuGroup","MenuItem","__","Modal","onRequestClose","overlayClassName","isFullScreen","__experimentalBlockPatternsList","label","blockPatterns","shownPatterns","onClickPattern","exports"],"sources":["@wordpress/fields/src/fields/template/template-edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, useMemo, useState } from '@wordpress/element';\n// @ts-ignore\nimport { parse } from '@wordpress/blocks';\nimport type { WpTemplate } from '@wordpress/core-data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\n\n/**\n * Internal dependencies\n */\n// @ts-expect-error block-editor is not typed correctly.\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport {\n\tButton,\n\tDropdown,\n\tMenuGroup,\n\tMenuItem,\n\tModal,\n} from '@wordpress/components';\nimport { useAsyncList } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { getItemTitle } from '../../actions/utils';\nimport type { BasePost } from '../../types';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_ARRAY: [] = [];\n\nexport const TemplateEdit = ( {\n\tdata,\n\tfield,\n\tonChange,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\tconst postType = data.type;\n\tconst postId =\n\t\ttypeof data.id === 'number' ? data.id : parseInt( data.id, 10 );\n\tconst slug = data.slug;\n\n\tconst { canSwitchTemplate, templates } = useSelect(\n\t\t( select ) => {\n\t\t\tconst allTemplates =\n\t\t\t\tselect( coreStore ).getEntityRecords< WpTemplate >(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template',\n\t\t\t\t\t{\n\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t\tpost_type: postType,\n\t\t\t\t\t}\n\t\t\t\t) ?? EMPTY_ARRAY;\n\n\t\t\tconst { getHomePage, getPostsPageId } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\n\t\t\tconst isPostsPage = getPostsPageId() === +postId;\n\t\t\tconst isFrontPage =\n\t\t\t\tpostType === 'page' && getHomePage()?.postId === +postId;\n\n\t\t\tconst allowSwitchingTemplate = ! isPostsPage && ! isFrontPage;\n\n\t\t\treturn {\n\t\t\t\ttemplates: allTemplates,\n\t\t\t\tcanSwitchTemplate: allowSwitchingTemplate,\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\n\tconst templatesAsPatterns = useMemo( () => {\n\t\tif ( ! canSwitchTemplate ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn templates\n\t\t\t.filter(\n\t\t\t\t( template ) =>\n\t\t\t\t\ttemplate.is_custom &&\n\t\t\t\t\ttemplate.slug !== data.template &&\n\t\t\t\t\t// Skip empty templates.\n\t\t\t\t\t!! template.content.raw\n\t\t\t)\n\t\t\t.map( ( template ) => ( {\n\t\t\t\tname: template.slug,\n\t\t\t\tblocks: parse( template.content.raw ),\n\t\t\t\ttitle: decodeEntities( template.title.rendered ),\n\t\t\t\tid: template.id,\n\t\t\t} ) );\n\t}, [ canSwitchTemplate, data.template, templates ] );\n\n\tconst shownTemplates = useAsyncList( templatesAsPatterns );\n\n\tconst value = field.getValue( { item: data } );\n\tconst foundTemplate = templates.find(\n\t\t( template ) => template.slug === value\n\t);\n\n\tconst currentTemplate = useSelect(\n\t\t( select ) => {\n\t\t\tif ( foundTemplate ) {\n\t\t\t\treturn foundTemplate;\n\t\t\t}\n\n\t\t\tlet slugToCheck;\n\t\t\t// In `draft` status we might not have a slug available, so we use the `single`\n\t\t\t// post type templates slug(ex page, single-post, single-product etc..).\n\t\t\t// Pages do not need the `single` prefix in the slug to be prioritized\n\t\t\t// through template hierarchy.\n\t\t\tif ( slug ) {\n\t\t\t\tslugToCheck =\n\t\t\t\t\tpostType === 'page'\n\t\t\t\t\t\t? `${ postType }-${ slug }`\n\t\t\t\t\t\t: `single-${ postType }-${ slug }`;\n\t\t\t} else {\n\t\t\t\tslugToCheck =\n\t\t\t\t\tpostType === 'page' ? 'page' : `single-${ postType }`;\n\t\t\t}\n\n\t\t\tif ( postType ) {\n\t\t\t\tconst templateId = select( coreStore ).getDefaultTemplateId( {\n\t\t\t\t\tslug: slugToCheck,\n\t\t\t\t} );\n\n\t\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template',\n\t\t\t\t\ttemplateId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ foundTemplate, postType, slug ]\n\t);\n\n\tconst [ showModal, setShowModal ] = useState( false );\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\treturn (\n\t\t<fieldset className=\"fields-controls__template\">\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ { placement: 'bottom-start' } }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ currentTemplate\n\t\t\t\t\t\t\t? getItemTitle( currentTemplate )\n\t\t\t\t\t\t\t: '' }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onToggle } ) => (\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetShowModal( true );\n\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Change template' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// The default template in a post is indicated by an empty string\n\t\t\t\t\t\t\tvalue !== '' && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tonChangeControl( '' );\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Use default template' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ showModal && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Choose a template' ) }\n\t\t\t\t\tonRequestClose={ () => setShowModal( false ) }\n\t\t\t\t\toverlayClassName=\"fields-controls__template-modal\"\n\t\t\t\t\tisFullScreen\n\t\t\t\t>\n\t\t\t\t\t<div className=\"fields-controls__template-content\">\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tlabel={ __( 'Templates' ) }\n\t\t\t\t\t\t\tblockPatterns={ templatesAsPatterns }\n\t\t\t\t\t\t\tshownPatterns={ shownTemplates }\n\t\t\t\t\t\t\tonClickPattern={ (\n\t\t\t\t\t\t\t\ttemplate: ( typeof templatesAsPatterns )[ 0 ]\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tonChangeControl( template.name );\n\t\t\t\t\t\t\t\tsetShowModal( false );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</fieldset>\n\t);\n};\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAOA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAOA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AAEA,IAAAU,WAAA,GAAAV,OAAA;AAA2C,IAAAW,WAAA,GAAAX,OAAA;AA5B3C;AACA;AACA;;AAEA;;AAMA;AACA;AACA;AACA;;AAiBA,MAAMY,WAAe,GAAG,EAAE;AAEnB,MAAMC,YAAY,GAAGA,CAAE;EAC7BC,IAAI;EACJC,KAAK;EACLC;AACiC,CAAC,KAAM;EACxC,MAAM;IAAEC;EAAG,CAAC,GAAGF,KAAK;EACpB,MAAMG,QAAQ,GAAGJ,IAAI,CAACK,IAAI;EAC1B,MAAMC,MAAM,GACX,OAAON,IAAI,CAACG,EAAE,KAAK,QAAQ,GAAGH,IAAI,CAACG,EAAE,GAAGI,QAAQ,CAAEP,IAAI,CAACG,EAAE,EAAE,EAAG,CAAC;EAChE,MAAMK,IAAI,GAAGR,IAAI,CAACQ,IAAI;EAEtB,MAAM;IAAEC,iBAAiB;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAS,EAC/CC,MAAM,IAAM;IAAA,IAAAC,qBAAA;IACb,MAAMC,YAAY,IAAAD,qBAAA,GACjBD,MAAM,CAAEG,eAAU,CAAC,CAACC,gBAAgB,CACnC,UAAU,EACV,aAAa,EACb;MACCC,QAAQ,EAAE,CAAC,CAAC;MACZC,SAAS,EAAEd;IACZ,CACD,CAAC,cAAAS,qBAAA,cAAAA,qBAAA,GAAIf,WAAW;IAEjB,MAAM;MAAEqB,WAAW;MAAEC;IAAe,CAAC,GAAG,IAAAC,kBAAM,EAC7CT,MAAM,CAAEG,eAAU,CACnB,CAAC;IAED,MAAMO,WAAW,GAAGF,cAAc,CAAC,CAAC,KAAK,CAACd,MAAM;IAChD,MAAMiB,WAAW,GAChBnB,QAAQ,KAAK,MAAM,IAAIe,WAAW,CAAC,CAAC,EAAEb,MAAM,KAAK,CAACA,MAAM;IAEzD,MAAMkB,sBAAsB,GAAG,CAAEF,WAAW,IAAI,CAAEC,WAAW;IAE7D,OAAO;MACNb,SAAS,EAAEI,YAAY;MACvBL,iBAAiB,EAAEe;IACpB,CAAC;EACF,CAAC,EACD,CAAElB,MAAM,EAAEF,QAAQ,CACnB,CAAC;EAED,MAAMqB,mBAAmB,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC1C,IAAK,CAAEjB,iBAAiB,EAAG;MAC1B,OAAO,EAAE;IACV;IACA,OAAOC,SAAS,CACdiB,MAAM,CACJC,QAAQ,IACTA,QAAQ,CAACC,SAAS,IAClBD,QAAQ,CAACpB,IAAI,KAAKR,IAAI,CAAC4B,QAAQ;IAC/B;IACA,CAAC,CAAEA,QAAQ,CAACE,OAAO,CAACC,GACtB,CAAC,CACAC,GAAG,CAAIJ,QAAQ,KAAQ;MACvBK,IAAI,EAAEL,QAAQ,CAACpB,IAAI;MACnB0B,MAAM,EAAE,IAAAC,aAAK,EAAEP,QAAQ,CAACE,OAAO,CAACC,GAAI,CAAC;MACrCK,KAAK,EAAE,IAAAC,4BAAc,EAAET,QAAQ,CAACQ,KAAK,CAACE,QAAS,CAAC;MAChDnC,EAAE,EAAEyB,QAAQ,CAACzB;IACd,CAAC,CAAG,CAAC;EACP,CAAC,EAAE,CAAEM,iBAAiB,EAAET,IAAI,CAAC4B,QAAQ,EAAElB,SAAS,CAAG,CAAC;EAEpD,MAAM6B,cAAc,GAAG,IAAAC,qBAAY,EAAEf,mBAAoB,CAAC;EAE1D,MAAMgB,KAAK,GAAGxC,KAAK,CAACyC,QAAQ,CAAE;IAAEC,IAAI,EAAE3C;EAAK,CAAE,CAAC;EAC9C,MAAM4C,aAAa,GAAGlC,SAAS,CAACmC,IAAI,CACjCjB,QAAQ,IAAMA,QAAQ,CAACpB,IAAI,KAAKiC,KACnC,CAAC;EAED,MAAMK,eAAe,GAAG,IAAAnC,eAAS,EAC9BC,MAAM,IAAM;IACb,IAAKgC,aAAa,EAAG;MACpB,OAAOA,aAAa;IACrB;IAEA,IAAIG,WAAW;IACf;IACA;IACA;IACA;IACA,IAAKvC,IAAI,EAAG;MACXuC,WAAW,GACV3C,QAAQ,KAAK,MAAM,GAChB,GAAIA,QAAQ,IAAMI,IAAI,EAAG,GACzB,UAAWJ,QAAQ,IAAMI,IAAI,EAAG;IACrC,CAAC,MAAM;MACNuC,WAAW,GACV3C,QAAQ,KAAK,MAAM,GAAG,MAAM,GAAG,UAAWA,QAAQ,EAAG;IACvD;IAEA,IAAKA,QAAQ,EAAG;MACf,MAAM4C,UAAU,GAAGpC,MAAM,CAAEG,eAAU,CAAC,CAACkC,oBAAoB,CAAE;QAC5DzC,IAAI,EAAEuC;MACP,CAAE,CAAC;MAEH,OAAOnC,MAAM,CAAEG,eAAU,CAAC,CAACmC,eAAe,CACzC,UAAU,EACV,aAAa,EACbF,UACD,CAAC;IACF;EACD,CAAC,EACD,CAAEJ,aAAa,EAAExC,QAAQ,EAAEI,IAAI,CAChC,CAAC;EAED,MAAM,CAAE2C,SAAS,EAAEC,YAAY,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAErD,MAAMC,eAAe,GAAG,IAAAC,oBAAW,EAChCC,QAAgB,IACjBtD,QAAQ,CAAE;IACT,CAAEC,EAAE,GAAIqD;EACT,CAAE,CAAC,EACJ,CAAErD,EAAE,EAAED,QAAQ,CACf,CAAC;EAED,oBACC,IAAAL,WAAA,CAAA4D,IAAA;IAAUC,SAAS,EAAC,2BAA2B;IAAAC,QAAA,gBAC9C,IAAA9D,WAAA,CAAA+D,GAAA,EAACtE,WAAA,CAAAuE,QAAQ;MACRC,YAAY,EAAG;QAAEC,SAAS,EAAE;MAAe,CAAG;MAC9CC,YAAY,EAAGA,CAAE;QAAEC;MAAS,CAAC,kBAC5B,IAAApE,WAAA,CAAA+D,GAAA,EAACtE,WAAA,CAAA4E,MAAM;QACNC,qBAAqB;QACrBC,OAAO,EAAC,UAAU;QAClBC,IAAI,EAAC,SAAS;QACdC,OAAO,EAAGL,QAAU;QAAAN,QAAA,EAElBb,eAAe,GACd,IAAAyB,mBAAY,EAAEzB,eAAgB,CAAC,GAC/B;MAAE,CACE,CACN;MACH0B,aAAa,EAAGA,CAAE;QAAEP;MAAS,CAAC,kBAC7B,IAAApE,WAAA,CAAA4D,IAAA,EAACnE,WAAA,CAAAmF,SAAS;QAAAd,QAAA,gBACT,IAAA9D,WAAA,CAAA+D,GAAA,EAACtE,WAAA,CAAAoF,QAAQ;UACRJ,OAAO,EAAGA,CAAA,KAAM;YACflB,YAAY,CAAE,IAAK,CAAC;YACpBa,QAAQ,CAAC,CAAC;UACX,CAAG;UAAAN,QAAA,EAED,IAAAgB,QAAE,EAAE,iBAAkB;QAAC,CAChB,CAAC;QAEV;QACAlC,KAAK,KAAK,EAAE,iBACX,IAAA5C,WAAA,CAAA+D,GAAA,EAACtE,WAAA,CAAAoF,QAAQ;UACRJ,OAAO,EAAGA,CAAA,KAAM;YACfhB,eAAe,CAAE,EAAG,CAAC;YACrBW,QAAQ,CAAC,CAAC;UACX,CAAG;UAAAN,QAAA,EAED,IAAAgB,QAAE,EAAE,sBAAuB;QAAC,CACrB,CACV;MAAA,CAEQ;IACT,CACH,CAAC,EACAxB,SAAS,iBACV,IAAAtD,WAAA,CAAA+D,GAAA,EAACtE,WAAA,CAAAsF,KAAK;MACLxC,KAAK,EAAG,IAAAuC,QAAE,EAAE,mBAAoB,CAAG;MACnCE,cAAc,EAAGA,CAAA,KAAMzB,YAAY,CAAE,KAAM,CAAG;MAC9C0B,gBAAgB,EAAC,iCAAiC;MAClDC,YAAY;MAAApB,QAAA,eAEZ,IAAA9D,WAAA,CAAA+D,GAAA;QAAKF,SAAS,EAAC,mCAAmC;QAAAC,QAAA,eACjD,IAAA9D,WAAA,CAAA+D,GAAA,EAACvE,YAAA,CAAA2F,+BAAiB;UACjBC,KAAK,EAAG,IAAAN,QAAE,EAAE,WAAY,CAAG;UAC3BO,aAAa,EAAGzD,mBAAqB;UACrC0D,aAAa,EAAG5C,cAAgB;UAChC6C,cAAc,EACbxD,QAA6C,IACzC;YACJ0B,eAAe,CAAE1B,QAAQ,CAACK,IAAK,CAAC;YAChCmB,YAAY,CAAE,KAAM,CAAC;UACtB;QAAG,CACH;MAAC,CACE;IAAC,CACA,CACP;EAAA,CACQ,CAAC;AAEb,CAAC;AAACiC,OAAA,CAAAtF,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fields/template/template-edit.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCallback, useMemo, useState } from '@wordpress/element';\n// @ts-ignore\nimport { parse } from '@wordpress/blocks';\nimport type { WpTemplate } from '@wordpress/core-data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\n\n/**\n * Internal dependencies\n */\n// @ts-expect-error block-editor is not typed correctly.\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport {\n\tButton,\n\tDropdown,\n\tMenuGroup,\n\tMenuItem,\n\tModal,\n} from '@wordpress/components';\nimport { useAsyncList } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { getItemTitle } from '../../actions/utils';\nimport type { BasePost } from '../../types';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_ARRAY: [] = [];\n\nexport const TemplateEdit = ( {\n\tdata,\n\tfield,\n\tonChange,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\tconst postType = data.type;\n\tconst postId =\n\t\ttypeof data.id === 'number' ? data.id : parseInt( data.id, 10 );\n\tconst slug = data.slug;\n\n\tconst { canSwitchTemplate, templates } = useSelect(\n\t\t( select ) => {\n\t\t\tconst allTemplates =\n\t\t\t\tselect( coreStore ).getEntityRecords< WpTemplate >(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template',\n\t\t\t\t\t{\n\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t\tpost_type: postType,\n\t\t\t\t\t}\n\t\t\t\t) ?? EMPTY_ARRAY;\n\n\t\t\tconst { getHomePage, getPostsPageId } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\n\t\t\tconst isPostsPage = getPostsPageId() === +postId;\n\t\t\tconst isFrontPage =\n\t\t\t\tpostType === 'page' && getHomePage()?.postId === +postId;\n\n\t\t\tconst allowSwitchingTemplate = ! isPostsPage && ! isFrontPage;\n\n\t\t\treturn {\n\t\t\t\ttemplates: allTemplates,\n\t\t\t\tcanSwitchTemplate: allowSwitchingTemplate,\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\n\tconst templatesAsPatterns = useMemo( () => {\n\t\tif ( ! canSwitchTemplate ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn templates\n\t\t\t.filter(\n\t\t\t\t( template ) =>\n\t\t\t\t\ttemplate.is_custom &&\n\t\t\t\t\ttemplate.slug !== data.template &&\n\t\t\t\t\t// Skip empty templates.\n\t\t\t\t\t!! template.content.raw\n\t\t\t)\n\t\t\t.map( ( template ) => ( {\n\t\t\t\tname: template.slug,\n\t\t\t\tblocks: parse( template.content.raw ),\n\t\t\t\ttitle: decodeEntities( template.title.rendered ),\n\t\t\t\tid: template.id,\n\t\t\t} ) );\n\t}, [ canSwitchTemplate, data.template, templates ] );\n\n\tconst shownTemplates = useAsyncList( templatesAsPatterns );\n\n\tconst value = field.getValue( { item: data } );\n\tconst foundTemplate = templates.find(\n\t\t( template ) => template.slug === value\n\t);\n\n\tconst currentTemplate = useSelect(\n\t\t( select ) => {\n\t\t\tif ( foundTemplate ) {\n\t\t\t\treturn foundTemplate;\n\t\t\t}\n\n\t\t\tlet slugToCheck;\n\t\t\t// In `draft` status we might not have a slug available, so we use the `single`\n\t\t\t// post type templates slug(ex page, single-post, single-product etc..).\n\t\t\t// Pages do not need the `single` prefix in the slug to be prioritized\n\t\t\t// through template hierarchy.\n\t\t\tif ( slug ) {\n\t\t\t\tslugToCheck =\n\t\t\t\t\tpostType === 'page'\n\t\t\t\t\t\t? `${ postType }-${ slug }`\n\t\t\t\t\t\t: `single-${ postType }-${ slug }`;\n\t\t\t} else {\n\t\t\t\tslugToCheck =\n\t\t\t\t\tpostType === 'page' ? 'page' : `single-${ postType }`;\n\t\t\t}\n\n\t\t\tif ( postType ) {\n\t\t\t\tconst templateId = select( coreStore ).getDefaultTemplateId( {\n\t\t\t\t\tslug: slugToCheck,\n\t\t\t\t} );\n\n\t\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template',\n\t\t\t\t\ttemplateId\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ foundTemplate, postType, slug ]\n\t);\n\n\tconst [ showModal, setShowModal ] = useState( false );\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\treturn (\n\t\t<fieldset className=\"fields-controls__template\">\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ { placement: 'bottom-start' } }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ currentTemplate\n\t\t\t\t\t\t\t? getItemTitle( currentTemplate )\n\t\t\t\t\t\t\t: '' }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onToggle } ) => (\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetShowModal( true );\n\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Change template' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// The default template in a post is indicated by an empty string\n\t\t\t\t\t\t\tvalue !== '' && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tonChangeControl( '' );\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Use default template' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ showModal && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Choose a template' ) }\n\t\t\t\t\tonRequestClose={ () => setShowModal( false ) }\n\t\t\t\t\toverlayClassName=\"fields-controls__template-modal\"\n\t\t\t\t\tisFullScreen\n\t\t\t\t>\n\t\t\t\t\t<div className=\"fields-controls__template-content\">\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tlabel={ __( 'Templates' ) }\n\t\t\t\t\t\t\tblockPatterns={ templatesAsPatterns }\n\t\t\t\t\t\t\tshownPatterns={ shownTemplates }\n\t\t\t\t\t\t\tonClickPattern={ (\n\t\t\t\t\t\t\t\ttemplate: ( typeof templatesAsPatterns )[ 0 ]\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tonChangeControl( template.name );\n\t\t\t\t\t\t\t\tsetShowModal( false );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</fieldset>\n\t);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["coreStore", "BlockPatternsList"]
7
+ }
@@ -1,37 +1,49 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var template_title_exports = {};
30
+ __export(template_title_exports, {
31
+ default: () => template_title_default
6
32
  });
7
- exports.default = void 0;
8
- var _i18n = require("@wordpress/i18n");
9
- var _utils = require("../../actions/utils");
10
- var _view = _interopRequireDefault(require("../title/view"));
11
- /**
12
- * WordPress dependencies
13
- */
14
-
15
- /**
16
- * Internal dependencies
17
- */
18
-
33
+ module.exports = __toCommonJS(template_title_exports);
34
+ var import_i18n = require("@wordpress/i18n");
35
+ var import_utils = require("../../actions/utils");
36
+ var import_view = __toESM(require("../title/view"));
19
37
  const templateTitleField = {
20
- type: 'text',
21
- label: (0, _i18n.__)('Template'),
22
- placeholder: (0, _i18n.__)('No title'),
23
- id: 'title',
24
- getValue: ({
25
- item
26
- }) => (0, _utils.getItemTitle)(item),
27
- render: _view.default,
38
+ type: "text",
39
+ label: (0, import_i18n.__)("Template"),
40
+ placeholder: (0, import_i18n.__)("No title"),
41
+ id: "title",
42
+ getValue: ({ item }) => (0, import_utils.getItemTitle)(item),
43
+ render: import_view.default,
28
44
  enableHiding: false,
29
45
  enableGlobalSearch: true,
30
46
  filterBy: false
31
47
  };
32
-
33
- /**
34
- * Title for the template entity.
35
- */
36
- var _default = exports.default = templateTitleField;
37
- //# sourceMappingURL=index.js.map
48
+ var template_title_default = templateTitleField;
49
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_i18n","require","_utils","_view","_interopRequireDefault","templateTitleField","type","label","__","placeholder","id","getValue","item","getItemTitle","render","TitleView","enableHiding","enableGlobalSearch","filterBy","_default","exports","default"],"sources":["@wordpress/fields/src/fields/template-title/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 { Template } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\nimport TitleView from '../title/view';\n\nconst templateTitleField: Field< Template > = {\n\ttype: 'text',\n\tlabel: __( 'Template' ),\n\tplaceholder: __( 'No title' ),\n\tid: 'title',\n\tgetValue: ( { item } ) => getItemTitle( item ),\n\trender: TitleView,\n\tenableHiding: false,\n\tenableGlobalSearch: true,\n\tfilterBy: false,\n};\n\n/**\n * Title for the template entity.\n */\nexport default templateTitleField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,kBAAqC,GAAG;EAC7CC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,IAAAC,QAAE,EAAE,UAAW,CAAC;EACvBC,WAAW,EAAE,IAAAD,QAAE,EAAE,UAAW,CAAC;EAC7BE,EAAE,EAAE,OAAO;EACXC,QAAQ,EAAEA,CAAE;IAAEC;EAAK,CAAC,KAAM,IAAAC,mBAAY,EAAED,IAAK,CAAC;EAC9CE,MAAM,EAAEC,aAAS;EACjBC,YAAY,EAAE,KAAK;EACnBC,kBAAkB,EAAE,IAAI;EACxBC,QAAQ,EAAE;AACX,CAAC;;AAED;AACA;AACA;AAFA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGehB,kBAAkB","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fields/template-title/index.ts"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { Template } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\nimport TitleView from '../title/view';\n\nconst templateTitleField: Field< Template > = {\n\ttype: 'text',\n\tlabel: __( 'Template' ),\n\tplaceholder: __( 'No title' ),\n\tid: 'title',\n\tgetValue: ( { item } ) => getItemTitle( item ),\n\trender: TitleView,\n\tenableHiding: false,\n\tenableGlobalSearch: true,\n\tfilterBy: false,\n};\n\n/**\n * Title for the template entity.\n */\nexport default templateTitleField;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,kBAAmB;AAMnB,mBAA6B;AAC7B,kBAAsB;AAEtB,MAAM,qBAAwC;AAAA,EAC7C,MAAM;AAAA,EACN,WAAO,gBAAI,UAAW;AAAA,EACtB,iBAAa,gBAAI,UAAW;AAAA,EAC5B,IAAI;AAAA,EACJ,UAAU,CAAE,EAAE,KAAK,UAAO,2BAAc,IAAK;AAAA,EAC7C,QAAQ,YAAAA;AAAA,EACR,cAAc;AAAA,EACd,oBAAoB;AAAA,EACpB,UAAU;AACX;AAKA,IAAO,yBAAQ;",
6
+ "names": ["TitleView"]
7
+ }
@@ -1,39 +1,49 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var title_exports = {};
30
+ __export(title_exports, {
31
+ default: () => title_default
6
32
  });
7
- exports.default = void 0;
8
- var _i18n = require("@wordpress/i18n");
9
- var _utils = require("../../actions/utils");
10
- var _view = _interopRequireDefault(require("./view"));
11
- /**
12
- * WordPress dependencies
13
- */
14
-
15
- /**
16
- * Internal dependencies
17
- */
18
-
33
+ module.exports = __toCommonJS(title_exports);
34
+ var import_i18n = require("@wordpress/i18n");
35
+ var import_utils = require("../../actions/utils");
36
+ var import_view = __toESM(require("./view"));
19
37
  const titleField = {
20
- type: 'text',
21
- id: 'title',
22
- label: (0, _i18n.__)('Title'),
23
- placeholder: (0, _i18n.__)('No title'),
24
- getValue: ({
25
- item
26
- }) => (0, _utils.getItemTitle)(item),
27
- render: _view.default,
38
+ type: "text",
39
+ id: "title",
40
+ label: (0, import_i18n.__)("Title"),
41
+ placeholder: (0, import_i18n.__)("No title"),
42
+ getValue: ({ item }) => (0, import_utils.getItemTitle)(item),
43
+ render: import_view.default,
28
44
  enableHiding: true,
29
45
  enableGlobalSearch: true,
30
46
  filterBy: false
31
47
  };
32
-
33
- /**
34
- * Title for the any entity with a `title` property.
35
- * For patterns, pages or templates you should use the respective field
36
- * because there are some differences in the rendering, labels, etc.
37
- */
38
- var _default = exports.default = titleField;
39
- //# sourceMappingURL=index.js.map
48
+ var title_default = titleField;
49
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_i18n","require","_utils","_view","_interopRequireDefault","titleField","type","id","label","__","placeholder","getValue","item","getItemTitle","render","TitleView","enableHiding","enableGlobalSearch","filterBy","_default","exports","default"],"sources":["@wordpress/fields/src/fields/title/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 { CommonPost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\nimport TitleView from './view';\n\nconst titleField: Field< CommonPost > = {\n\ttype: 'text',\n\tid: 'title',\n\tlabel: __( 'Title' ),\n\tplaceholder: __( 'No title' ),\n\tgetValue: ( { item } ) => getItemTitle( item ),\n\trender: TitleView,\n\tenableHiding: true,\n\tenableGlobalSearch: true,\n\tfilterBy: false,\n};\n\n/**\n * Title for the any entity with a `title` property.\n * For patterns, pages or templates you should use the respective field\n * because there are some differences in the rendering, labels, etc.\n */\nexport default titleField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,UAA+B,GAAG;EACvCC,IAAI,EAAE,MAAM;EACZC,EAAE,EAAE,OAAO;EACXC,KAAK,EAAE,IAAAC,QAAE,EAAE,OAAQ,CAAC;EACpBC,WAAW,EAAE,IAAAD,QAAE,EAAE,UAAW,CAAC;EAC7BE,QAAQ,EAAEA,CAAE;IAAEC;EAAK,CAAC,KAAM,IAAAC,mBAAY,EAAED,IAAK,CAAC;EAC9CE,MAAM,EAAEC,aAAS;EACjBC,YAAY,EAAE,IAAI;EAClBC,kBAAkB,EAAE,IAAI;EACxBC,QAAQ,EAAE;AACX,CAAC;;AAED;AACA;AACA;AACA;AACA;AAJA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAKehB,UAAU","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fields/title/index.ts"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { CommonPost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\nimport TitleView from './view';\n\nconst titleField: Field< CommonPost > = {\n\ttype: 'text',\n\tid: 'title',\n\tlabel: __( 'Title' ),\n\tplaceholder: __( 'No title' ),\n\tgetValue: ( { item } ) => getItemTitle( item ),\n\trender: TitleView,\n\tenableHiding: true,\n\tenableGlobalSearch: true,\n\tfilterBy: false,\n};\n\n/**\n * Title for the any entity with a `title` property.\n * For patterns, pages or templates you should use the respective field\n * because there are some differences in the rendering, labels, etc.\n */\nexport default titleField;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,kBAAmB;AAMnB,mBAA6B;AAC7B,kBAAsB;AAEtB,MAAM,aAAkC;AAAA,EACvC,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,WAAO,gBAAI,OAAQ;AAAA,EACnB,iBAAa,gBAAI,UAAW;AAAA,EAC5B,UAAU,CAAE,EAAE,KAAK,UAAO,2BAAc,IAAK;AAAA,EAC7C,QAAQ,YAAAA;AAAA,EACR,cAAc;AAAA,EACd,oBAAoB;AAAA,EACpB,UAAU;AACX;AAOA,IAAO,gBAAQ;",
6
+ "names": ["TitleView"]
7
+ }