@wordpress/fields 0.2.0 → 0.4.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 (202) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +28 -0
  3. package/build/actions/delete-post.js +4 -4
  4. package/build/actions/delete-post.js.map +1 -1
  5. package/build/actions/duplicate-post.js +2 -2
  6. package/build/actions/duplicate-post.js.map +1 -1
  7. package/build/actions/utils.js +2 -2
  8. package/build/actions/utils.js.map +1 -1
  9. package/build/actions/view-post-revisions.js +1 -1
  10. package/build/actions/view-post-revisions.js.map +1 -1
  11. package/build/fields/comment-status/index.js +40 -0
  12. package/build/fields/comment-status/index.js.map +1 -0
  13. package/build/fields/date/date-view.js +69 -0
  14. package/build/fields/date/date-view.js.map +1 -0
  15. package/build/fields/date/index.js +29 -0
  16. package/build/fields/date/index.js.map +1 -0
  17. package/build/fields/featured-image/featured-image-edit.js +113 -0
  18. package/build/fields/featured-image/featured-image-edit.js.map +1 -0
  19. package/build/fields/featured-image/featured-image-view.js +41 -0
  20. package/build/fields/featured-image/featured-image-view.js.map +1 -0
  21. package/build/fields/featured-image/index.js +27 -0
  22. package/build/fields/featured-image/index.js.map +1 -0
  23. package/build/fields/index.js +49 -0
  24. package/build/fields/index.js.map +1 -1
  25. package/build/fields/order/index.js +1 -1
  26. package/build/fields/order/index.js.map +1 -1
  27. package/build/fields/parent/index.js +31 -0
  28. package/build/fields/parent/index.js.map +1 -0
  29. package/build/fields/parent/parent-edit.js +243 -0
  30. package/build/fields/parent/parent-edit.js.map +1 -0
  31. package/build/fields/parent/parent-view.js +39 -0
  32. package/build/fields/parent/parent-view.js.map +1 -0
  33. package/build/fields/parent/utils.js +20 -0
  34. package/build/fields/parent/utils.js.map +1 -0
  35. package/build/fields/password/edit.js +65 -0
  36. package/build/fields/password/edit.js.map +1 -0
  37. package/build/fields/password/index.js +30 -0
  38. package/build/fields/password/index.js.map +1 -0
  39. package/build/fields/slug/index.js +27 -0
  40. package/build/fields/slug/index.js.map +1 -0
  41. package/build/fields/slug/slug-edit.js +129 -0
  42. package/build/fields/slug/slug-edit.js.map +1 -0
  43. package/build/fields/slug/slug-view.js +31 -0
  44. package/build/fields/slug/slug-view.js.map +1 -0
  45. package/build/fields/slug/utils.js +21 -0
  46. package/build/fields/slug/utils.js.map +1 -0
  47. package/build/fields/status/index.js +37 -0
  48. package/build/fields/status/index.js.map +1 -0
  49. package/build/fields/status/status-elements.js +46 -0
  50. package/build/fields/status/status-elements.js.map +1 -0
  51. package/build/fields/status/status-view.js +41 -0
  52. package/build/fields/status/status-view.js.map +1 -0
  53. package/build/fields/title/index.js +5 -1
  54. package/build/fields/title/index.js.map +1 -1
  55. package/build/fields/title/title-view.js +61 -0
  56. package/build/fields/title/title-view.js.map +1 -0
  57. package/build/mutation/index.js +2 -2
  58. package/build/mutation/index.js.map +1 -1
  59. package/build/types.js.map +1 -1
  60. package/build-module/actions/delete-post.js +5 -5
  61. package/build-module/actions/delete-post.js.map +1 -1
  62. package/build-module/actions/duplicate-post.js +2 -2
  63. package/build-module/actions/duplicate-post.js.map +1 -1
  64. package/build-module/actions/utils.js +2 -2
  65. package/build-module/actions/utils.js.map +1 -1
  66. package/build-module/actions/view-post-revisions.js +1 -1
  67. package/build-module/actions/view-post-revisions.js.map +1 -1
  68. package/build-module/fields/comment-status/index.js +35 -0
  69. package/build-module/fields/comment-status/index.js.map +1 -0
  70. package/build-module/fields/date/date-view.js +62 -0
  71. package/build-module/fields/date/date-view.js.map +1 -0
  72. package/build-module/fields/date/index.js +23 -0
  73. package/build-module/fields/date/index.js.map +1 -0
  74. package/build-module/fields/featured-image/featured-image-edit.js +104 -0
  75. package/build-module/fields/featured-image/featured-image-edit.js.map +1 -0
  76. package/build-module/fields/featured-image/featured-image-view.js +33 -0
  77. package/build-module/fields/featured-image/featured-image-view.js.map +1 -0
  78. package/build-module/fields/featured-image/index.js +22 -0
  79. package/build-module/fields/featured-image/index.js.map +1 -0
  80. package/build-module/fields/index.js +7 -0
  81. package/build-module/fields/index.js.map +1 -1
  82. package/build-module/fields/order/index.js +2 -1
  83. package/build-module/fields/order/index.js.map +1 -1
  84. package/build-module/fields/parent/index.js +26 -0
  85. package/build-module/fields/parent/index.js.map +1 -0
  86. package/build-module/fields/parent/parent-edit.js +232 -0
  87. package/build-module/fields/parent/parent-edit.js.map +1 -0
  88. package/build-module/fields/parent/parent-view.js +32 -0
  89. package/build-module/fields/parent/parent-view.js.map +1 -0
  90. package/build-module/fields/parent/utils.js +14 -0
  91. package/build-module/fields/parent/utils.js.map +1 -0
  92. package/build-module/fields/password/edit.js +58 -0
  93. package/build-module/fields/password/edit.js.map +1 -0
  94. package/build-module/fields/password/index.js +23 -0
  95. package/build-module/fields/password/index.js.map +1 -0
  96. package/build-module/fields/slug/index.js +21 -0
  97. package/build-module/fields/slug/index.js.map +1 -0
  98. package/build-module/fields/slug/slug-edit.js +123 -0
  99. package/build-module/fields/slug/slug-edit.js.map +1 -0
  100. package/build-module/fields/slug/slug-view.js +25 -0
  101. package/build-module/fields/slug/slug-view.js.map +1 -0
  102. package/build-module/fields/slug/utils.js +13 -0
  103. package/build-module/fields/slug/utils.js.map +1 -0
  104. package/build-module/fields/status/index.js +31 -0
  105. package/build-module/fields/status/index.js.map +1 -0
  106. package/build-module/fields/status/status-elements.js +40 -0
  107. package/build-module/fields/status/status-elements.js.map +1 -0
  108. package/build-module/fields/status/status-view.js +34 -0
  109. package/build-module/fields/status/status-view.js.map +1 -0
  110. package/build-module/fields/title/index.js +4 -1
  111. package/build-module/fields/title/index.js.map +1 -1
  112. package/build-module/fields/title/title-view.js +55 -0
  113. package/build-module/fields/title/title-view.js.map +1 -0
  114. package/build-module/mutation/index.js +2 -2
  115. package/build-module/mutation/index.js.map +1 -1
  116. package/build-module/types.js.map +1 -1
  117. package/build-style/style-rtl.css +213 -0
  118. package/build-style/style.css +213 -0
  119. package/build-types/actions/delete-post.d.ts.map +1 -1
  120. package/build-types/fields/comment-status/index.d.ts +14 -0
  121. package/build-types/fields/comment-status/index.d.ts.map +1 -0
  122. package/build-types/fields/date/date-view.d.ts +9 -0
  123. package/build-types/fields/date/date-view.d.ts.map +1 -0
  124. package/build-types/fields/date/index.d.ts +14 -0
  125. package/build-types/fields/date/index.d.ts.map +1 -0
  126. package/build-types/fields/featured-image/featured-image-edit.d.ts +7 -0
  127. package/build-types/fields/featured-image/featured-image-edit.d.ts.map +1 -0
  128. package/build-types/fields/featured-image/featured-image-view.d.ts +7 -0
  129. package/build-types/fields/featured-image/featured-image-view.d.ts.map +1 -0
  130. package/build-types/fields/featured-image/index.d.ts +11 -0
  131. package/build-types/fields/featured-image/index.d.ts.map +1 -0
  132. package/build-types/fields/index.d.ts +7 -0
  133. package/build-types/fields/index.d.ts.map +1 -1
  134. package/build-types/fields/order/index.d.ts.map +1 -1
  135. package/build-types/fields/parent/index.d.ts +14 -0
  136. package/build-types/fields/parent/index.d.ts.map +1 -0
  137. package/build-types/fields/parent/parent-edit.d.ts +12 -0
  138. package/build-types/fields/parent/parent-edit.d.ts.map +1 -0
  139. package/build-types/fields/parent/parent-view.d.ts +7 -0
  140. package/build-types/fields/parent/parent-view.d.ts.map +1 -0
  141. package/build-types/fields/parent/utils.d.ts +6 -0
  142. package/build-types/fields/parent/utils.d.ts.map +1 -0
  143. package/build-types/fields/password/edit.d.ts +8 -0
  144. package/build-types/fields/password/edit.d.ts.map +1 -0
  145. package/build-types/fields/password/index.d.ts +14 -0
  146. package/build-types/fields/password/index.d.ts.map +1 -0
  147. package/build-types/fields/slug/index.d.ts +11 -0
  148. package/build-types/fields/slug/index.d.ts.map +1 -0
  149. package/build-types/fields/slug/slug-edit.d.ts +8 -0
  150. package/build-types/fields/slug/slug-edit.d.ts.map +1 -0
  151. package/build-types/fields/slug/slug-view.d.ts +9 -0
  152. package/build-types/fields/slug/slug-view.d.ts.map +1 -0
  153. package/build-types/fields/slug/utils.d.ts +6 -0
  154. package/build-types/fields/slug/utils.d.ts.map +1 -0
  155. package/build-types/fields/status/index.d.ts +14 -0
  156. package/build-types/fields/status/index.d.ts.map +1 -0
  157. package/build-types/fields/status/status-elements.d.ts +13 -0
  158. package/build-types/fields/status/status-elements.d.ts.map +1 -0
  159. package/build-types/fields/status/status-view.d.ts +9 -0
  160. package/build-types/fields/status/status-view.d.ts.map +1 -0
  161. package/build-types/fields/title/index.d.ts.map +1 -1
  162. package/build-types/fields/title/title-view.d.ts +9 -0
  163. package/build-types/fields/title/title-view.d.ts.map +1 -0
  164. package/build-types/lock-unlock.d.ts +1 -1
  165. package/build-types/lock-unlock.d.ts.map +1 -1
  166. package/build-types/types.d.ts +5 -1
  167. package/build-types/types.d.ts.map +1 -1
  168. package/package.json +27 -22
  169. package/src/actions/delete-post.tsx +8 -5
  170. package/src/actions/duplicate-post.tsx +2 -2
  171. package/src/actions/utils.ts +2 -2
  172. package/src/actions/view-post-revisions.tsx +1 -1
  173. package/src/fields/comment-status/index.tsx +40 -0
  174. package/src/fields/date/date-view.tsx +92 -0
  175. package/src/fields/date/index.tsx +23 -0
  176. package/src/fields/featured-image/featured-image-edit.tsx +123 -0
  177. package/src/fields/featured-image/featured-image-view.tsx +38 -0
  178. package/src/fields/featured-image/index.ts +23 -0
  179. package/src/fields/featured-image/style.scss +95 -0
  180. package/src/fields/index.ts +7 -0
  181. package/src/fields/order/index.ts +2 -1
  182. package/src/fields/parent/index.ts +26 -0
  183. package/src/fields/parent/parent-edit.tsx +348 -0
  184. package/src/fields/parent/parent-view.tsx +33 -0
  185. package/src/fields/parent/utils.ts +18 -0
  186. package/src/fields/password/edit.tsx +68 -0
  187. package/src/fields/password/index.tsx +24 -0
  188. package/src/fields/slug/index.ts +22 -0
  189. package/src/fields/slug/slug-edit.tsx +153 -0
  190. package/src/fields/slug/slug-view.tsx +27 -0
  191. package/src/fields/slug/style.scss +22 -0
  192. package/src/fields/slug/utils.ts +15 -0
  193. package/src/fields/status/index.tsx +32 -0
  194. package/src/fields/status/status-elements.tsx +50 -0
  195. package/src/fields/status/status-view.tsx +28 -0
  196. package/src/fields/title/index.ts +3 -0
  197. package/src/fields/title/title-view.tsx +62 -0
  198. package/src/mutation/index.ts +3 -3
  199. package/src/style.scss +2 -0
  200. package/src/types.ts +5 -1
  201. package/tsconfig.json +10 -7
  202. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _edit = _interopRequireDefault(require("./edit"));
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+
17
+ const passwordField = {
18
+ id: 'password',
19
+ type: 'text',
20
+ Edit: _edit.default,
21
+ enableSorting: false,
22
+ enableHiding: false,
23
+ isVisible: item => item.status !== 'private'
24
+ };
25
+
26
+ /**
27
+ * This field is used to display the post password.
28
+ */
29
+ var _default = exports.default = passwordField;
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_edit","_interopRequireDefault","require","passwordField","id","type","Edit","PasswordEdit","enableSorting","enableHiding","isVisible","item","status","_default","exports","default"],"sources":["@wordpress/fields/src/fields/password/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport PasswordEdit from './edit';\n\nconst passwordField: Field< BasePost > = {\n\tid: 'password',\n\ttype: 'text',\n\tEdit: PasswordEdit,\n\tenableSorting: false,\n\tenableHiding: false,\n\tisVisible: ( item ) => item.status !== 'private',\n};\n\n/**\n * This field is used to display the post password.\n */\nexport default passwordField;\n"],"mappings":";;;;;;;AASA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,MAAMC,aAAgC,GAAG;EACxCC,EAAE,EAAE,UAAU;EACdC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAEC,aAAY;EAClBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAIC,IAAI,IAAMA,IAAI,CAACC,MAAM,KAAK;AACxC,CAAC;;AAED;AACA;AACA;AAFA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGeZ,aAAa","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _i18n = require("@wordpress/i18n");
9
+ var _slugEdit = _interopRequireDefault(require("./slug-edit"));
10
+ var _slugView = _interopRequireDefault(require("./slug-view"));
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ const slugField = {
20
+ id: 'slug',
21
+ type: 'text',
22
+ label: (0, _i18n.__)('Slug'),
23
+ Edit: _slugEdit.default,
24
+ render: _slugView.default
25
+ };
26
+ var _default = exports.default = slugField;
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_i18n","require","_slugEdit","_interopRequireDefault","_slugView","slugField","id","type","label","__","Edit","SlugEdit","render","SlugView","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport SlugEdit from './slug-edit';\nimport SlugView from './slug-view';\n\nconst slugField: Field< BasePost > = {\n\tid: 'slug',\n\ttype: 'text',\n\tlabel: __( 'Slug' ),\n\tEdit: SlugEdit,\n\trender: SlugView,\n};\n\nexport default slugField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,SAA4B,GAAG;EACpCC,EAAE,EAAE,MAAM;EACVC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,IAAAC,QAAE,EAAE,MAAO,CAAC;EACnBC,IAAI,EAAEC,iBAAQ;EACdC,MAAM,EAAEC;AACT,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaX,SAAS","ignoreList":[]}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _components = require("@wordpress/components");
8
+ var _icons = require("@wordpress/icons");
9
+ var _compose = require("@wordpress/compose");
10
+ var _data = require("@wordpress/data");
11
+ var _element = require("@wordpress/element");
12
+ var _notices = require("@wordpress/notices");
13
+ var _url = require("@wordpress/url");
14
+ var _i18n = require("@wordpress/i18n");
15
+ var _utils = require("./utils");
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ /**
18
+ * WordPress dependencies
19
+ */
20
+
21
+ /**
22
+ * Internal dependencies
23
+ */
24
+
25
+ const SlugEdit = ({
26
+ field,
27
+ onChange,
28
+ data
29
+ }) => {
30
+ const {
31
+ id
32
+ } = field;
33
+ const slug = field.getValue({
34
+ item: data
35
+ }) || (0, _utils.getSlug)(data);
36
+ const permalinkTemplate = data.permalink_template || '';
37
+ const PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/;
38
+ const [prefix, suffix] = permalinkTemplate.split(PERMALINK_POSTNAME_REGEX);
39
+ const permalinkPrefix = prefix;
40
+ const permalinkSuffix = suffix;
41
+ const isEditable = PERMALINK_POSTNAME_REGEX.test(permalinkTemplate);
42
+ const originalSlugRef = (0, _element.useRef)(slug);
43
+ const slugToDisplay = slug || originalSlugRef.current;
44
+ const permalink = isEditable ? `${permalinkPrefix}${slugToDisplay}${permalinkSuffix}` : (0, _url.safeDecodeURIComponent)(data.link || '');
45
+ (0, _element.useEffect)(() => {
46
+ if (slug && originalSlugRef.current === undefined) {
47
+ originalSlugRef.current = slug;
48
+ }
49
+ }, [slug]);
50
+ const onChangeControl = (0, _element.useCallback)(newValue => onChange({
51
+ [id]: newValue
52
+ }), [id, onChange]);
53
+ const {
54
+ createNotice
55
+ } = (0, _data.useDispatch)(_notices.store);
56
+ const copyButtonRef = (0, _compose.useCopyToClipboard)(permalink, () => {
57
+ createNotice('info', (0, _i18n.__)('Copied Permalink to clipboard.'), {
58
+ isDismissible: true,
59
+ type: 'snackbar'
60
+ });
61
+ });
62
+ const postUrlSlugDescriptionId = 'editor-post-url__slug-description-' + (0, _compose.useInstanceId)(SlugEdit);
63
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("fieldset", {
64
+ className: "fields-controls__slug",
65
+ children: [isEditable && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
66
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
67
+ spacing: "0px",
68
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
69
+ children: (0, _i18n.__)('Customize the last part of the Permalink.')
70
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ExternalLink, {
71
+ href: "https://wordpress.org/documentation/article/page-post-settings-sidebar/#permalink",
72
+ children: (0, _i18n.__)('Learn more')
73
+ })]
74
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalInputControl, {
75
+ __next40pxDefaultSize: true,
76
+ prefix: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalInputControlPrefixWrapper, {
77
+ children: "/"
78
+ }),
79
+ suffix: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
80
+ __next40pxDefaultSize: true,
81
+ icon: _icons.copySmall,
82
+ ref: copyButtonRef,
83
+ label: (0, _i18n.__)('Copy')
84
+ }),
85
+ label: (0, _i18n.__)('Link'),
86
+ hideLabelFromVision: true,
87
+ value: slug,
88
+ autoComplete: "off",
89
+ spellCheck: "false",
90
+ type: "text",
91
+ className: "fields-controls__slug-input",
92
+ onChange: newValue => {
93
+ onChangeControl(newValue);
94
+ },
95
+ onBlur: () => {
96
+ if (slug === '') {
97
+ onChangeControl(originalSlugRef.current);
98
+ }
99
+ },
100
+ "aria-describedby": postUrlSlugDescriptionId
101
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
102
+ className: "fields-controls__slug-help",
103
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
104
+ className: "fields-controls__slug-help-visual-label",
105
+ children: (0, _i18n.__)('Permalink:')
106
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.ExternalLink, {
107
+ className: "fields-controls__slug-help-link",
108
+ href: permalink,
109
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
110
+ className: "fields-controls__slug-help-prefix",
111
+ children: permalinkPrefix
112
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
113
+ className: "fields-controls__slug-help-slug",
114
+ children: slugToDisplay
115
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
116
+ className: "fields-controls__slug-help-suffix",
117
+ children: permalinkSuffix
118
+ })]
119
+ })]
120
+ })]
121
+ }), !isEditable && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ExternalLink, {
122
+ className: "fields-controls__slug-help",
123
+ href: permalink,
124
+ children: permalink
125
+ })]
126
+ });
127
+ };
128
+ var _default = exports.default = SlugEdit;
129
+ //# sourceMappingURL=slug-edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_icons","_compose","_data","_element","_notices","_url","_i18n","_utils","_jsxRuntime","SlugEdit","field","onChange","data","id","slug","getValue","item","getSlug","permalinkTemplate","permalink_template","PERMALINK_POSTNAME_REGEX","prefix","suffix","split","permalinkPrefix","permalinkSuffix","isEditable","test","originalSlugRef","useRef","slugToDisplay","current","permalink","safeDecodeURIComponent","link","useEffect","undefined","onChangeControl","useCallback","newValue","createNotice","useDispatch","noticesStore","copyButtonRef","useCopyToClipboard","__","isDismissible","type","postUrlSlugDescriptionId","useInstanceId","jsxs","className","children","__experimentalVStack","spacing","jsx","ExternalLink","href","__experimentalInputControl","__next40pxDefaultSize","__experimentalInputControlPrefixWrapper","Button","icon","copySmall","ref","label","hideLabelFromVision","value","autoComplete","spellCheck","onBlur","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-edit.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalInputControl as InputControl,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { copySmall } from '@wordpress/icons';\nimport { useCopyToClipboard, useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { useCallback, useEffect, useRef } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { safeDecodeURIComponent } from '@wordpress/url';\nimport type { DataFormControlProps } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getSlug } from './utils';\n\nconst SlugEdit = ( {\n\tfield,\n\tonChange,\n\tdata,\n}: DataFormControlProps< BasePost > ) => {\n\tconst { id } = field;\n\n\tconst slug = field.getValue( { item: data } ) || getSlug( data );\n\tconst permalinkTemplate = data.permalink_template || '';\n\tconst PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/;\n\tconst [ prefix, suffix ] = permalinkTemplate.split(\n\t\tPERMALINK_POSTNAME_REGEX\n\t);\n\tconst permalinkPrefix = prefix;\n\tconst permalinkSuffix = suffix;\n\tconst isEditable = PERMALINK_POSTNAME_REGEX.test( permalinkTemplate );\n\tconst originalSlugRef = useRef( slug );\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\tconst permalink = isEditable\n\t\t? `${ permalinkPrefix }${ slugToDisplay }${ permalinkSuffix }`\n\t\t: safeDecodeURIComponent( data.link || '' );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue?: string ) =>\n\t\t\tonChange( {\n\t\t\t\t[ id ]: newValue,\n\t\t\t} ),\n\t\t[ id, onChange ]\n\t);\n\n\tconst { createNotice } = useDispatch( noticesStore );\n\n\tconst copyButtonRef = useCopyToClipboard( permalink, () => {\n\t\tcreateNotice( 'info', __( 'Copied Permalink to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\tconst postUrlSlugDescriptionId =\n\t\t'editor-post-url__slug-description-' + useInstanceId( SlugEdit );\n\n\treturn (\n\t\t<fieldset className=\"fields-controls__slug\">\n\t\t\t{ isEditable && (\n\t\t\t\t<VStack>\n\t\t\t\t\t<VStack spacing=\"0px\">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Customize the last part of the Permalink.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ExternalLink href=\"https://wordpress.org/documentation/article/page-post-settings-sidebar/#permalink\">\n\t\t\t\t\t\t\t{ __( 'Learn more' ) }\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<InputControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tprefix={\n\t\t\t\t\t\t\t<InputControlPrefixWrapper>\n\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsuffix={\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ copySmall }\n\t\t\t\t\t\t\t\tref={ copyButtonRef }\n\t\t\t\t\t\t\t\tlabel={ __( 'Copy' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ slug }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tspellCheck=\"false\"\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\tclassName=\"fields-controls__slug-input\"\n\t\t\t\t\t\tonChange={ ( newValue?: string ) => {\n\t\t\t\t\t\t\tonChangeControl( newValue );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tif ( slug === '' ) {\n\t\t\t\t\t\t\t\tonChangeControl( originalSlugRef.current );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\taria-describedby={ postUrlSlugDescriptionId }\n\t\t\t\t\t/>\n\t\t\t\t\t<div className=\"fields-controls__slug-help\">\n\t\t\t\t\t\t<span className=\"fields-controls__slug-help-visual-label\">\n\t\t\t\t\t\t\t{ __( 'Permalink:' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\tclassName=\"fields-controls__slug-help-link\"\n\t\t\t\t\t\t\thref={ permalink }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-prefix\">\n\t\t\t\t\t\t\t\t{ permalinkPrefix }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-slug\">\n\t\t\t\t\t\t\t\t{ slugToDisplay }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span className=\"fields-controls__slug-help-suffix\">\n\t\t\t\t\t\t\t\t{ permalinkSuffix }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</div>\n\t\t\t\t</VStack>\n\t\t\t) }\n\t\t\t{ ! isEditable && (\n\t\t\t\t<ExternalLink\n\t\t\t\t\tclassName=\"fields-controls__slug-help\"\n\t\t\t\t\thref={ permalink }\n\t\t\t\t>\n\t\t\t\t\t{ permalink }\n\t\t\t\t</ExternalLink>\n\t\t\t) }\n\t\t</fieldset>\n\t);\n};\n\nexport default SlugEdit;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAOA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AAEA,IAAAO,KAAA,GAAAP,OAAA;AAMA,IAAAQ,MAAA,GAAAR,OAAA;AAAkC,IAAAS,WAAA,GAAAT,OAAA;AAvBlC;AACA;AACA;;AAiBA;AACA;AACA;;AAIA,MAAMU,QAAQ,GAAGA,CAAE;EAClBC,KAAK;EACLC,QAAQ;EACRC;AACiC,CAAC,KAAM;EACxC,MAAM;IAAEC;EAAG,CAAC,GAAGH,KAAK;EAEpB,MAAMI,IAAI,GAAGJ,KAAK,CAACK,QAAQ,CAAE;IAAEC,IAAI,EAAEJ;EAAK,CAAE,CAAC,IAAI,IAAAK,cAAO,EAAEL,IAAK,CAAC;EAChE,MAAMM,iBAAiB,GAAGN,IAAI,CAACO,kBAAkB,IAAI,EAAE;EACvD,MAAMC,wBAAwB,GAAG,yBAAyB;EAC1D,MAAM,CAAEC,MAAM,EAAEC,MAAM,CAAE,GAAGJ,iBAAiB,CAACK,KAAK,CACjDH,wBACD,CAAC;EACD,MAAMI,eAAe,GAAGH,MAAM;EAC9B,MAAMI,eAAe,GAAGH,MAAM;EAC9B,MAAMI,UAAU,GAAGN,wBAAwB,CAACO,IAAI,CAAET,iBAAkB,CAAC;EACrE,MAAMU,eAAe,GAAG,IAAAC,eAAM,EAAEf,IAAK,CAAC;EACtC,MAAMgB,aAAa,GAAGhB,IAAI,IAAIc,eAAe,CAACG,OAAO;EACrD,MAAMC,SAAS,GAAGN,UAAU,GACzB,GAAIF,eAAe,GAAKM,aAAa,GAAKL,eAAe,EAAG,GAC5D,IAAAQ,2BAAsB,EAAErB,IAAI,CAACsB,IAAI,IAAI,EAAG,CAAC;EAE5C,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKrB,IAAI,IAAIc,eAAe,CAACG,OAAO,KAAKK,SAAS,EAAG;MACpDR,eAAe,CAACG,OAAO,GAAGjB,IAAI;IAC/B;EACD,CAAC,EAAE,CAAEA,IAAI,CAAG,CAAC;EAEb,MAAMuB,eAAe,GAAG,IAAAC,oBAAW,EAChCC,QAAiB,IAClB5B,QAAQ,CAAE;IACT,CAAEE,EAAE,GAAI0B;EACT,CAAE,CAAC,EACJ,CAAE1B,EAAE,EAAEF,QAAQ,CACf,CAAC;EAED,MAAM;IAAE6B;EAAa,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAa,CAAC;EAEpD,MAAMC,aAAa,GAAG,IAAAC,2BAAkB,EAAEZ,SAAS,EAAE,MAAM;IAC1DQ,YAAY,CAAE,MAAM,EAAE,IAAAK,QAAE,EAAE,gCAAiC,CAAC,EAAE;MAC7DC,aAAa,EAAE,IAAI;MACnBC,IAAI,EAAE;IACP,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,MAAMC,wBAAwB,GAC7B,oCAAoC,GAAG,IAAAC,sBAAa,EAAExC,QAAS,CAAC;EAEjE,oBACC,IAAAD,WAAA,CAAA0C,IAAA;IAAUC,SAAS,EAAC,uBAAuB;IAAAC,QAAA,GACxC1B,UAAU,iBACX,IAAAlB,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAAuD,oBAAM;MAAAD,QAAA,gBACN,IAAA5C,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAAuD,oBAAM;QAACC,OAAO,EAAC,KAAK;QAAAF,QAAA,gBACpB,IAAA5C,WAAA,CAAA+C,GAAA;UAAAH,QAAA,EACG,IAAAP,QAAE,EACH,2CACD;QAAC,CACI,CAAC,eACP,IAAArC,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA0D,YAAY;UAACC,IAAI,EAAC,mFAAmF;UAAAL,QAAA,EACnG,IAAAP,QAAE,EAAE,YAAa;QAAC,CACP,CAAC;MAAA,CACR,CAAC,eACT,IAAArC,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA4D,0BAAY;QACZC,qBAAqB;QACrBtC,MAAM,eACL,IAAAb,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA8D,uCAAyB;UAAAR,QAAA,EAAC;QAE3B,CAA2B,CAC3B;QACD9B,MAAM,eACL,IAAAd,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA+D,MAAM;UACNF,qBAAqB;UACrBG,IAAI,EAAGC,gBAAW;UAClBC,GAAG,EAAGrB,aAAe;UACrBsB,KAAK,EAAG,IAAApB,QAAE,EAAE,MAAO;QAAG,CACtB,CACD;QACDoB,KAAK,EAAG,IAAApB,QAAE,EAAE,MAAO,CAAG;QACtBqB,mBAAmB;QACnBC,KAAK,EAAGrD,IAAM;QACdsD,YAAY,EAAC,KAAK;QAClBC,UAAU,EAAC,OAAO;QAClBtB,IAAI,EAAC,MAAM;QACXI,SAAS,EAAC,6BAA6B;QACvCxC,QAAQ,EAAK4B,QAAiB,IAAM;UACnCF,eAAe,CAAEE,QAAS,CAAC;QAC5B,CAAG;QACH+B,MAAM,EAAGA,CAAA,KAAM;UACd,IAAKxD,IAAI,KAAK,EAAE,EAAG;YAClBuB,eAAe,CAAET,eAAe,CAACG,OAAQ,CAAC;UAC3C;QACD,CAAG;QACH,oBAAmBiB;MAA0B,CAC7C,CAAC,eACF,IAAAxC,WAAA,CAAA0C,IAAA;QAAKC,SAAS,EAAC,4BAA4B;QAAAC,QAAA,gBAC1C,IAAA5C,WAAA,CAAA+C,GAAA;UAAMJ,SAAS,EAAC,yCAAyC;UAAAC,QAAA,EACtD,IAAAP,QAAE,EAAE,YAAa;QAAC,CACf,CAAC,eACP,IAAArC,WAAA,CAAA0C,IAAA,EAACpD,WAAA,CAAA0D,YAAY;UACZL,SAAS,EAAC,iCAAiC;UAC3CM,IAAI,EAAGzB,SAAW;UAAAoB,QAAA,gBAElB,IAAA5C,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,mCAAmC;YAAAC,QAAA,EAChD5B;UAAe,CACZ,CAAC,eACP,IAAAhB,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,iCAAiC;YAAAC,QAAA,EAC9CtB;UAAa,CACV,CAAC,eACP,IAAAtB,WAAA,CAAA+C,GAAA;YAAMJ,SAAS,EAAC,mCAAmC;YAAAC,QAAA,EAChD3B;UAAe,CACZ,CAAC;QAAA,CACM,CAAC;MAAA,CACX,CAAC;IAAA,CACC,CACR,EACC,CAAEC,UAAU,iBACb,IAAAlB,WAAA,CAAA+C,GAAA,EAACzD,WAAA,CAAA0D,YAAY;MACZL,SAAS,EAAC,4BAA4B;MACtCM,IAAI,EAAGzB,SAAW;MAAAoB,QAAA,EAEhBpB;IAAS,CACE,CACd;EAAA,CACQ,CAAC;AAEb,CAAC;AAAC,IAAAuC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEahE,QAAQ","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _element = require("@wordpress/element");
8
+ var _utils = require("./utils");
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+
17
+ const SlugView = ({
18
+ item
19
+ }) => {
20
+ const slug = typeof item === 'object' ? (0, _utils.getSlug)(item) : '';
21
+ const originalSlugRef = (0, _element.useRef)(slug);
22
+ (0, _element.useEffect)(() => {
23
+ if (slug && originalSlugRef.current === undefined) {
24
+ originalSlugRef.current = slug;
25
+ }
26
+ }, [slug]);
27
+ const slugToDisplay = slug || originalSlugRef.current;
28
+ return `${slugToDisplay}`;
29
+ };
30
+ var _default = exports.default = SlugView;
31
+ //# sourceMappingURL=slug-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_element","require","_utils","SlugView","item","slug","getSlug","originalSlugRef","useRef","useEffect","current","undefined","slugToDisplay","_default","exports","default"],"sources":["@wordpress/fields/src/fields/slug/slug-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getSlug } from './utils';\n\nconst SlugView = ( { item }: { item: BasePost } ) => {\n\tconst slug = typeof item === 'object' ? getSlug( item ) : '';\n\tconst originalSlugRef = useRef( slug );\n\n\tuseEffect( () => {\n\t\tif ( slug && originalSlugRef.current === undefined ) {\n\t\t\toriginalSlugRef.current = slug;\n\t\t}\n\t}, [ slug ] );\n\n\tconst slugToDisplay = slug || originalSlugRef.current;\n\n\treturn `${ slugToDisplay }`;\n};\n\nexport default SlugView;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,MAAME,QAAQ,GAAGA,CAAE;EAAEC;AAAyB,CAAC,KAAM;EACpD,MAAMC,IAAI,GAAG,OAAOD,IAAI,KAAK,QAAQ,GAAG,IAAAE,cAAO,EAAEF,IAAK,CAAC,GAAG,EAAE;EAC5D,MAAMG,eAAe,GAAG,IAAAC,eAAM,EAAEH,IAAK,CAAC;EAEtC,IAAAI,kBAAS,EAAE,MAAM;IAChB,IAAKJ,IAAI,IAAIE,eAAe,CAACG,OAAO,KAAKC,SAAS,EAAG;MACpDJ,eAAe,CAACG,OAAO,GAAGL,IAAI;IAC/B;EACD,CAAC,EAAE,CAAEA,IAAI,CAAG,CAAC;EAEb,MAAMO,aAAa,GAAGP,IAAI,IAAIE,eAAe,CAACG,OAAO;EAErD,OAAO,GAAIE,aAAa,EAAG;AAC5B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaZ,QAAQ","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSlug = void 0;
7
+ var _url = require("@wordpress/url");
8
+ var _utils = require("../../actions/utils");
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+
17
+ const getSlug = item => {
18
+ return item.slug || (0, _url.cleanForSlug)((0, _utils.getItemTitle)(item)) || item.id.toString();
19
+ };
20
+ exports.getSlug = getSlug;
21
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_url","require","_utils","getSlug","item","slug","cleanForSlug","getItemTitle","id","toString","exports"],"sources":["@wordpress/fields/src/fields/slug/utils.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { cleanForSlug } from '@wordpress/url';\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\n\nexport const getSlug = ( item: BasePost ): string => {\n\treturn (\n\t\titem.slug || cleanForSlug( getItemTitle( item ) ) || item.id.toString()\n\t);\n};\n"],"mappings":";;;;;;AAGA,IAAAA,IAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAEA;AACA;AACA;;AAIO,MAAME,OAAO,GAAKC,IAAc,IAAc;EACpD,OACCA,IAAI,CAACC,IAAI,IAAI,IAAAC,iBAAY,EAAE,IAAAC,mBAAY,EAAEH,IAAK,CAAE,CAAC,IAAIA,IAAI,CAACI,EAAE,CAACC,QAAQ,CAAC,CAAC;AAEzE,CAAC;AAACC,OAAA,CAAAP,OAAA,GAAAA,OAAA","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _i18n = require("@wordpress/i18n");
9
+ var _statusView = _interopRequireDefault(require("./status-view"));
10
+ var _statusElements = _interopRequireDefault(require("./status-elements"));
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ const OPERATOR_IS_ANY = 'isAny';
20
+ const statusField = {
21
+ label: (0, _i18n.__)('Status'),
22
+ id: 'status',
23
+ type: 'text',
24
+ elements: _statusElements.default,
25
+ render: _statusView.default,
26
+ Edit: 'radio',
27
+ enableSorting: false,
28
+ filterBy: {
29
+ operators: [OPERATOR_IS_ANY]
30
+ }
31
+ };
32
+
33
+ /**
34
+ * Status field for BasePost.
35
+ */
36
+ var _default = exports.default = statusField;
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_i18n","require","_statusView","_interopRequireDefault","_statusElements","OPERATOR_IS_ANY","statusField","label","__","id","type","elements","STATUSES","render","StatusView","Edit","enableSorting","filterBy","operators","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport type { Field } from '@wordpress/dataviews';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport StatusView from './status-view';\nimport STATUSES from './status-elements';\n\nconst OPERATOR_IS_ANY = 'isAny';\n\nconst statusField: Field< BasePost > = {\n\tlabel: __( 'Status' ),\n\tid: 'status',\n\ttype: 'text',\n\telements: STATUSES,\n\trender: StatusView,\n\tEdit: 'radio',\n\tenableSorting: false,\n\tfilterBy: {\n\t\toperators: [ OPERATOR_IS_ANY ],\n\t},\n};\n\n/**\n * Status field for BasePost.\n */\nexport default statusField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,eAAA,GAAAD,sBAAA,CAAAF,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,eAAe,GAAG,OAAO;AAE/B,MAAMC,WAA8B,GAAG;EACtCC,KAAK,EAAE,IAAAC,QAAE,EAAE,QAAS,CAAC;EACrBC,EAAE,EAAE,QAAQ;EACZC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAEC,uBAAQ;EAClBC,MAAM,EAAEC,mBAAU;EAClBC,IAAI,EAAE,OAAO;EACbC,aAAa,EAAE,KAAK;EACpBC,QAAQ,EAAE;IACTC,SAAS,EAAE,CAAEb,eAAe;EAC7B;AACD,CAAC;;AAED;AACA;AACA;AAFA,IAAAc,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGef,WAAW","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _icons = require("@wordpress/icons");
8
+ var _i18n = require("@wordpress/i18n");
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+
13
+ // See https://github.com/WordPress/gutenberg/issues/55886
14
+ // We do not support custom statutes at the moment.
15
+ const STATUSES = [{
16
+ value: 'draft',
17
+ label: (0, _i18n.__)('Draft'),
18
+ icon: _icons.drafts,
19
+ description: (0, _i18n.__)('Not ready to publish.')
20
+ }, {
21
+ value: 'future',
22
+ label: (0, _i18n.__)('Scheduled'),
23
+ icon: _icons.scheduled,
24
+ description: (0, _i18n.__)('Publish automatically on a chosen date.')
25
+ }, {
26
+ value: 'pending',
27
+ label: (0, _i18n.__)('Pending Review'),
28
+ icon: _icons.pending,
29
+ description: (0, _i18n.__)('Waiting for review before publishing.')
30
+ }, {
31
+ value: 'private',
32
+ label: (0, _i18n.__)('Private'),
33
+ icon: _icons.notAllowed,
34
+ description: (0, _i18n.__)('Only visible to site admins and editors.')
35
+ }, {
36
+ value: 'publish',
37
+ label: (0, _i18n.__)('Published'),
38
+ icon: _icons.published,
39
+ description: (0, _i18n.__)('Visible to everyone.')
40
+ }, {
41
+ value: 'trash',
42
+ label: (0, _i18n.__)('Trash'),
43
+ icon: _icons.trash
44
+ }];
45
+ var _default = exports.default = STATUSES;
46
+ //# sourceMappingURL=status-elements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_icons","require","_i18n","STATUSES","value","label","__","icon","drafts","description","scheduled","pending","notAllowed","published","trash","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/status-elements.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\ttrash,\n\tdrafts,\n\tpublished,\n\tscheduled,\n\tpending,\n\tnotAllowed,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{\n\t\tvalue: 'draft',\n\t\tlabel: __( 'Draft' ),\n\t\ticon: drafts,\n\t\tdescription: __( 'Not ready to publish.' ),\n\t},\n\t{\n\t\tvalue: 'future',\n\t\tlabel: __( 'Scheduled' ),\n\t\ticon: scheduled,\n\t\tdescription: __( 'Publish automatically on a chosen date.' ),\n\t},\n\t{\n\t\tvalue: 'pending',\n\t\tlabel: __( 'Pending Review' ),\n\t\ticon: pending,\n\t\tdescription: __( 'Waiting for review before publishing.' ),\n\t},\n\t{\n\t\tvalue: 'private',\n\t\tlabel: __( 'Private' ),\n\t\ticon: notAllowed,\n\t\tdescription: __( 'Only visible to site admins and editors.' ),\n\t},\n\t{\n\t\tvalue: 'publish',\n\t\tlabel: __( 'Published' ),\n\t\ticon: published,\n\t\tdescription: __( 'Visible to everyone.' ),\n\t},\n\t{ value: 'trash', label: __( 'Trash' ), icon: trash },\n];\n\nexport default STATUSES;\n"],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAQA,IAAAC,KAAA,GAAAD,OAAA;AAXA;AACA;AACA;;AAWA;AACA;AACA,MAAME,QAAQ,GAAG,CAChB;EACCC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,IAAAC,QAAE,EAAE,OAAQ,CAAC;EACpBC,IAAI,EAAEC,aAAM;EACZC,WAAW,EAAE,IAAAH,QAAE,EAAE,uBAAwB;AAC1C,CAAC,EACD;EACCF,KAAK,EAAE,QAAQ;EACfC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY,CAAC;EACxBC,IAAI,EAAEG,gBAAS;EACfD,WAAW,EAAE,IAAAH,QAAE,EAAE,yCAA0C;AAC5D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB,CAAC;EAC7BC,IAAI,EAAEI,cAAO;EACbF,WAAW,EAAE,IAAAH,QAAE,EAAE,uCAAwC;AAC1D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,SAAU,CAAC;EACtBC,IAAI,EAAEK,iBAAU;EAChBH,WAAW,EAAE,IAAAH,QAAE,EAAE,0CAA2C;AAC7D,CAAC,EACD;EACCF,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY,CAAC;EACxBC,IAAI,EAAEM,gBAAS;EACfJ,WAAW,EAAE,IAAAH,QAAE,EAAE,sBAAuB;AACzC,CAAC,EACD;EAAEF,KAAK,EAAE,OAAO;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,OAAQ,CAAC;EAAEC,IAAI,EAAEO;AAAM,CAAC,CACrD;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,QAAQ","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _components = require("@wordpress/components");
9
+ var _statusElements = _interopRequireDefault(require("./status-elements"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ function StatusView({
20
+ item
21
+ }) {
22
+ const status = _statusElements.default.find(({
23
+ value
24
+ }) => value === item.status);
25
+ const label = status?.label || item.status;
26
+ const icon = status?.icon;
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
28
+ alignment: "left",
29
+ spacing: 0,
30
+ children: [icon && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
31
+ className: "edit-site-post-list__status-icon",
32
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
33
+ icon: icon
34
+ })
35
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
36
+ children: label
37
+ })]
38
+ });
39
+ }
40
+ var _default = exports.default = StatusView;
41
+ //# sourceMappingURL=status-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_statusElements","_interopRequireDefault","_jsxRuntime","StatusView","item","status","STATUSES","find","value","label","icon","jsxs","__experimentalHStack","alignment","spacing","children","jsx","className","Icon","_default","exports","default"],"sources":["@wordpress/fields/src/fields/status/status-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalHStack as HStack, Icon } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport STATUSES from './status-elements';\n\nfunction StatusView( { item }: { item: BasePost } ) {\n\tconst status = STATUSES.find( ( { value } ) => value === item.status );\n\tconst label = status?.label || item.status;\n\tconst icon = status?.icon;\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ icon && (\n\t\t\t\t<div className=\"edit-site-post-list__status-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ label }</span>\n\t\t</HStack>\n\t);\n}\n\nexport default StatusView;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAMA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyC,IAAAG,WAAA,GAAAH,OAAA;AATzC;AACA;AACA;;AAGA;AACA;AACA;;AAIA,SAASI,UAAUA,CAAE;EAAEC;AAAyB,CAAC,EAAG;EACnD,MAAMC,MAAM,GAAGC,uBAAQ,CAACC,IAAI,CAAE,CAAE;IAAEC;EAAM,CAAC,KAAMA,KAAK,KAAKJ,IAAI,CAACC,MAAO,CAAC;EACtE,MAAMI,KAAK,GAAGJ,MAAM,EAAEI,KAAK,IAAIL,IAAI,CAACC,MAAM;EAC1C,MAAMK,IAAI,GAAGL,MAAM,EAAEK,IAAI;EACzB,oBACC,IAAAR,WAAA,CAAAS,IAAA,EAACb,WAAA,CAAAc,oBAAM;IAACC,SAAS,EAAC,MAAM;IAACC,OAAO,EAAG,CAAG;IAAAC,QAAA,GACnCL,IAAI,iBACL,IAAAR,WAAA,CAAAc,GAAA;MAAKC,SAAS,EAAC,kCAAkC;MAAAF,QAAA,eAChD,IAAAb,WAAA,CAAAc,GAAA,EAAClB,WAAA,CAAAoB,IAAI;QAACR,IAAI,EAAGA;MAAM,CAAE;IAAC,CAClB,CACL,eACD,IAAAR,WAAA,CAAAc,GAAA;MAAAD,QAAA,EAAQN;IAAK,CAAQ,CAAC;EAAA,CACf,CAAC;AAEX;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEclB,UAAU","ignoreList":[]}
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = void 0;
7
8
  var _i18n = require("@wordpress/i18n");
8
9
  var _utils = require("../../actions/utils");
10
+ var _titleView = _interopRequireDefault(require("./title-view"));
9
11
  /**
10
12
  * WordPress dependencies
11
13
  */
@@ -21,7 +23,9 @@ const titleField = {
21
23
  placeholder: (0, _i18n.__)('No title'),
22
24
  getValue: ({
23
25
  item
24
- }) => (0, _utils.getItemTitle)(item)
26
+ }) => (0, _utils.getItemTitle)(item),
27
+ render: _titleView.default,
28
+ enableHiding: false
25
29
  };
26
30
  var _default = exports.default = titleField;
27
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_utils","titleField","type","id","label","__","placeholder","getValue","item","getItemTitle","_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 { BasePost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\n\nconst titleField: Field< BasePost > = {\n\ttype: 'text',\n\tid: 'title',\n\tlabel: __( 'Title' ),\n\tplaceholder: __( 'No title' ),\n\tgetValue: ( { item } ) => getItemTitle( item ),\n};\n\nexport default titleField;\n"],"mappings":";;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA,MAAME,UAA6B,GAAG;EACrCC,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;AAC9C,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaX,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_utils","_titleView","_interopRequireDefault","titleField","type","id","label","__","placeholder","getValue","item","getItemTitle","render","TitleView","enableHiding","_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 { BasePost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\nimport TitleView from './title-view';\n\nconst titleField: Field< BasePost > = {\n\ttype: 'text',\n\tid: 'title',\n\tlabel: __( 'Title' ),\n\tplaceholder: __( 'No title' ),\n\tgetValue: ( { item } ) => getItemTitle( item ),\n\trender: TitleView,\n\tenableHiding: false,\n};\n\nexport default titleField;\n"],"mappings":";;;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AAXA;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAMI,UAA6B,GAAG;EACrCC,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,kBAAS;EACjBC,YAAY,EAAE;AACf,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,UAAU","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _components = require("@wordpress/components");
8
+ var _htmlEntities = require("@wordpress/html-entities");
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _data = require("@wordpress/data");
11
+ var _coreData = require("@wordpress/core-data");
12
+ var _utils = require("../../actions/utils");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ /**
15
+ * WordPress dependencies
16
+ */
17
+
18
+ /**
19
+ * Internal dependencies
20
+ */
21
+
22
+ const TitleView = ({
23
+ item
24
+ }) => {
25
+ const {
26
+ frontPageId,
27
+ postsPageId
28
+ } = (0, _data.useSelect)(select => {
29
+ const {
30
+ getEntityRecord
31
+ } = select(_coreData.store);
32
+ const siteSettings = getEntityRecord('root', 'site', '');
33
+ return {
34
+ frontPageId: siteSettings?.page_on_front,
35
+ postsPageId: siteSettings?.page_for_posts
36
+ };
37
+ }, []);
38
+ const renderedTitle = (0, _utils.getItemTitle)(item);
39
+ let suffix;
40
+ if (item.id === frontPageId) {
41
+ suffix = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
42
+ className: "edit-site-post-list__title-badge",
43
+ children: (0, _i18n.__)('Homepage')
44
+ });
45
+ } else if (item.id === postsPageId) {
46
+ suffix = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
47
+ className: "edit-site-post-list__title-badge",
48
+ children: (0, _i18n.__)('Posts Page')
49
+ });
50
+ }
51
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
52
+ className: "edit-site-post-list__title",
53
+ alignment: "center",
54
+ justify: "flex-start",
55
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
56
+ children: (0, _htmlEntities.decodeEntities)(renderedTitle) || (0, _i18n.__)('(no title)')
57
+ }), suffix]
58
+ });
59
+ };
60
+ var _default = exports.default = TitleView;
61
+ //# sourceMappingURL=title-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_htmlEntities","_i18n","_data","_coreData","_utils","_jsxRuntime","TitleView","item","frontPageId","postsPageId","useSelect","select","getEntityRecord","coreStore","siteSettings","page_on_front","page_for_posts","renderedTitle","getItemTitle","suffix","id","jsx","className","children","__","jsxs","__experimentalHStack","alignment","justify","decodeEntities","_default","exports","default"],"sources":["@wordpress/fields/src/fields/title/title-view.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalHStack as HStack } from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { Settings } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport type { BasePost } from '../../types';\nimport { getItemTitle } from '../../actions/utils';\n\nconst TitleView = ( { item }: { item: BasePost } ) => {\n\tconst { frontPageId, postsPageId } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings: Settings | undefined = getEntityRecord(\n\t\t\t'root',\n\t\t\t'site',\n\t\t\t''\n\t\t);\n\t\treturn {\n\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t};\n\t}, [] );\n\n\tconst renderedTitle = getItemTitle( item );\n\n\tlet suffix;\n\tif ( item.id === frontPageId ) {\n\t\tsuffix = (\n\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t{ __( 'Homepage' ) }\n\t\t\t</span>\n\t\t);\n\t} else if ( item.id === postsPageId ) {\n\t\tsuffix = (\n\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t</span>\n\t\t);\n\t}\n\n\treturn (\n\t\t<HStack\n\t\t\tclassName=\"edit-site-post-list__title\"\n\t\t\talignment=\"center\"\n\t\t\tjustify=\"flex-start\"\n\t\t>\n\t\t\t<span>\n\t\t\t\t{ decodeEntities( renderedTitle ) || __( '(no title)' ) }\n\t\t\t</span>\n\t\t\t{ suffix }\n\t\t</HStack>\n\t);\n};\n\nexport default TitleView;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAOA,IAAAK,MAAA,GAAAL,OAAA;AAAmD,IAAAM,WAAA,GAAAN,OAAA;AAdnD;AACA;AACA;;AAQA;AACA;AACA;;AAIA,MAAMO,SAAS,GAAGA,CAAE;EAAEC;AAAyB,CAAC,KAAM;EACrD,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC7D,MAAM;MAAEC;IAAgB,CAAC,GAAGD,MAAM,CAAEE,eAAU,CAAC;IAC/C,MAAMC,YAAkC,GAAGF,eAAe,CACzD,MAAM,EACN,MAAM,EACN,EACD,CAAC;IACD,OAAO;MACNJ,WAAW,EAAEM,YAAY,EAAEC,aAAa;MACxCN,WAAW,EAAEK,YAAY,EAAEE;IAC5B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,aAAa,GAAG,IAAAC,mBAAY,EAAEX,IAAK,CAAC;EAE1C,IAAIY,MAAM;EACV,IAAKZ,IAAI,CAACa,EAAE,KAAKZ,WAAW,EAAG;IAC9BW,MAAM,gBACL,IAAAd,WAAA,CAAAgB,GAAA;MAAMC,SAAS,EAAC,kCAAkC;MAAAC,QAAA,EAC/C,IAAAC,QAAE,EAAE,UAAW;IAAC,CACb,CACN;EACF,CAAC,MAAM,IAAKjB,IAAI,CAACa,EAAE,KAAKX,WAAW,EAAG;IACrCU,MAAM,gBACL,IAAAd,WAAA,CAAAgB,GAAA;MAAMC,SAAS,EAAC,kCAAkC;MAAAC,QAAA,EAC/C,IAAAC,QAAE,EAAE,YAAa;IAAC,CACf,CACN;EACF;EAEA,oBACC,IAAAnB,WAAA,CAAAoB,IAAA,EAAC3B,WAAA,CAAA4B,oBAAM;IACNJ,SAAS,EAAC,4BAA4B;IACtCK,SAAS,EAAC,QAAQ;IAClBC,OAAO,EAAC,YAAY;IAAAL,QAAA,gBAEpB,IAAAlB,WAAA,CAAAgB,GAAA;MAAAE,QAAA,EACG,IAAAM,4BAAc,EAAEZ,aAAc,CAAC,IAAI,IAAAO,QAAE,EAAE,YAAa;IAAC,CAClD,CAAC,EACLL,MAAM;EAAA,CACD,CAAC;AAEX,CAAC;AAAC,IAAAW,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa1B,SAAS","ignoreList":[]}
@@ -16,7 +16,7 @@ var _data = require("@wordpress/data");
16
16
  * Internal dependencies
17
17
  */
18
18
 
19
- const getErrorMessagesFromPromises = allSettledResults => {
19
+ function getErrorMessagesFromPromises(allSettledResults) {
20
20
  const errorMessages = new Set();
21
21
  // If there was at lease one failure.
22
22
  if (allSettledResults.length === 1) {
@@ -36,7 +36,7 @@ const getErrorMessagesFromPromises = allSettledResults => {
36
36
  }
37
37
  }
38
38
  return errorMessages;
39
- };
39
+ }
40
40
  const deletePostWithNotices = async (posts, notice, callbacks) => {
41
41
  const {
42
42
  createSuccessNotice,
@@ -1 +1 @@
1
- {"version":3,"names":["_notices","require","_coreData","_data","getErrorMessagesFromPromises","allSettledResults","errorMessages","Set","length","typedError","reason","message","add","failedPromises","filter","status","failedPromise","deletePostWithNotices","posts","notice","callbacks","createSuccessNotice","createErrorNotice","dispatch","noticesStore","deleteEntityRecord","coreStore","Promise","allSettled","map","post","type","id","force","throwOnError","every","_notice$success$type","successMessage","success","messages","getMessage","getBatchMessage","onActionPerformed","_notice$error$type","errorMessage","error","onActionError","exports","editPostWithNotices","postsWithUpdates","editEntityRecord","saveEditedEntityRecord","originalPost","changes","_notice$success$type2","_notice$error$type2"],"sources":["@wordpress/fields/src/mutation/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { dispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport type { CoreDataError, Post } from '../types';\n\nconst getErrorMessagesFromPromises = < T >(\n\tallSettledResults: PromiseSettledResult< T >[]\n) => {\n\tconst errorMessages = new Set< string >();\n\t// If there was at lease one failure.\n\tif ( allSettledResults.length === 1 ) {\n\t\tconst typedError = allSettledResults[ 0 ] as {\n\t\t\treason?: CoreDataError;\n\t\t};\n\t\tif ( typedError.reason?.message ) {\n\t\t\terrorMessages.add( typedError.reason.message );\n\t\t}\n\t} else {\n\t\tconst failedPromises = allSettledResults.filter(\n\t\t\t( { status } ) => status === 'rejected'\n\t\t);\n\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\tconst typedError = failedPromise as {\n\t\t\t\treason?: CoreDataError;\n\t\t\t};\n\t\t\tif ( typedError.reason?.message ) {\n\t\t\t\terrorMessages.add( typedError.reason.message );\n\t\t\t}\n\t\t}\n\t}\n\treturn errorMessages;\n};\n\nexport type NoticeSettings< T extends Post > = {\n\tsuccess: {\n\t\tid?: string;\n\t\ttype?: string;\n\t\tmessages: {\n\t\t\tgetMessage: ( posts: T ) => string;\n\t\t\tgetBatchMessage: ( posts: T[] ) => string;\n\t\t};\n\t};\n\terror: {\n\t\tid?: string;\n\t\ttype?: string;\n\t\tmessages: {\n\t\t\tgetMessage: ( errors: Set< string > ) => string;\n\t\t\tgetBatchMessage: ( errors: Set< string > ) => string;\n\t\t};\n\t};\n};\n\nexport const deletePostWithNotices = async < T extends Post >(\n\tposts: T[],\n\tnotice: NoticeSettings< T >,\n\tcallbacks: {\n\t\tonActionPerformed?: ( posts: T[] ) => void;\n\t\tonActionError?: () => void;\n\t}\n) => {\n\tconst { createSuccessNotice, createErrorNotice } = dispatch( noticesStore );\n\tconst { deleteEntityRecord } = dispatch( coreStore );\n\tconst allSettledResults = await Promise.allSettled(\n\t\tposts.map( ( post ) => {\n\t\t\treturn deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.type,\n\t\t\t\tpost.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t} )\n\t);\n\t// If all the promises were fulfilled with success.\n\tif ( allSettledResults.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\tlet successMessage;\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\tsuccessMessage = notice.success.messages.getMessage( posts[ 0 ] );\n\t\t} else {\n\t\t\tsuccessMessage = notice.success.messages.getBatchMessage( posts );\n\t\t}\n\t\tcreateSuccessNotice( successMessage, {\n\t\t\ttype: notice.success.type ?? 'snackbar',\n\t\t\tid: notice.success.id,\n\t\t} );\n\t\tcallbacks.onActionPerformed?.( posts );\n\t} else {\n\t\tconst errorMessages = getErrorMessagesFromPromises( allSettledResults );\n\t\tlet errorMessage = '';\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\terrorMessage = notice.error.messages.getMessage( errorMessages );\n\t\t} else {\n\t\t\terrorMessage =\n\t\t\t\tnotice.error.messages.getBatchMessage( errorMessages );\n\t\t}\n\n\t\tcreateErrorNotice( errorMessage, {\n\t\t\ttype: notice.error.type ?? 'snackbar',\n\t\t\tid: notice.error.id,\n\t\t} );\n\t\tcallbacks.onActionError?.();\n\t}\n};\n\nexport const editPostWithNotices = async < T extends Post >(\n\tpostsWithUpdates: {\n\t\toriginalPost: T;\n\t\tchanges: Partial< T >;\n\t}[],\n\tnotice: NoticeSettings< T >,\n\tcallbacks: {\n\t\tonActionPerformed?: ( posts: T[] ) => void;\n\t\tonActionError?: () => void;\n\t}\n) => {\n\tconst { createSuccessNotice, createErrorNotice } = dispatch( noticesStore );\n\tconst { editEntityRecord, saveEditedEntityRecord } = dispatch( coreStore );\n\tawait Promise.allSettled(\n\t\tpostsWithUpdates.map( ( post ) => {\n\t\t\treturn editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.originalPost.type,\n\t\t\t\tpost.originalPost.id,\n\t\t\t\t{\n\t\t\t\t\t...post.changes,\n\t\t\t\t}\n\t\t\t);\n\t\t} )\n\t);\n\tconst allSettledResults = await Promise.allSettled(\n\t\tpostsWithUpdates.map( ( post ) => {\n\t\t\treturn saveEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.originalPost.type,\n\t\t\t\tpost.originalPost.id,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t} )\n\t);\n\t// If all the promises were fulfilled with success.\n\tif ( allSettledResults.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\tlet successMessage;\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\tsuccessMessage = notice.success.messages.getMessage(\n\t\t\t\tpostsWithUpdates[ 0 ].originalPost\n\t\t\t);\n\t\t} else {\n\t\t\tsuccessMessage = notice.success.messages.getBatchMessage(\n\t\t\t\tpostsWithUpdates.map( ( post ) => post.originalPost )\n\t\t\t);\n\t\t}\n\t\tcreateSuccessNotice( successMessage, {\n\t\t\ttype: notice.success.type ?? 'snackbar',\n\t\t\tid: notice.success.id,\n\t\t} );\n\t\tcallbacks.onActionPerformed?.(\n\t\t\tpostsWithUpdates.map( ( post ) => post.originalPost )\n\t\t);\n\t} else {\n\t\tconst errorMessages = getErrorMessagesFromPromises( allSettledResults );\n\t\tlet errorMessage = '';\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\terrorMessage = notice.error.messages.getMessage( errorMessages );\n\t\t} else {\n\t\t\terrorMessage =\n\t\t\t\tnotice.error.messages.getBatchMessage( errorMessages );\n\t\t}\n\n\t\tcreateErrorNotice( errorMessage, {\n\t\t\ttype: notice.error.type ?? 'snackbar',\n\t\t\tid: notice.error.id,\n\t\t} );\n\t\tcallbacks.onActionError?.();\n\t}\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_notices","require","_coreData","_data","getErrorMessagesFromPromises","allSettledResults","errorMessages","Set","length","typedError","reason","message","add","failedPromises","filter","status","failedPromise","deletePostWithNotices","posts","notice","callbacks","createSuccessNotice","createErrorNotice","dispatch","noticesStore","deleteEntityRecord","coreStore","Promise","allSettled","map","post","type","id","force","throwOnError","every","_notice$success$type","successMessage","success","messages","getMessage","getBatchMessage","onActionPerformed","_notice$error$type","errorMessage","error","onActionError","exports","editPostWithNotices","postsWithUpdates","editEntityRecord","saveEditedEntityRecord","originalPost","changes","_notice$success$type2","_notice$error$type2"],"sources":["@wordpress/fields/src/mutation/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { dispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport type { CoreDataError, Post } from '../types';\n\nfunction getErrorMessagesFromPromises< T >(\n\tallSettledResults: PromiseSettledResult< T >[]\n) {\n\tconst errorMessages = new Set< string >();\n\t// If there was at lease one failure.\n\tif ( allSettledResults.length === 1 ) {\n\t\tconst typedError = allSettledResults[ 0 ] as {\n\t\t\treason?: CoreDataError;\n\t\t};\n\t\tif ( typedError.reason?.message ) {\n\t\t\terrorMessages.add( typedError.reason.message );\n\t\t}\n\t} else {\n\t\tconst failedPromises = allSettledResults.filter(\n\t\t\t( { status } ) => status === 'rejected'\n\t\t);\n\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\tconst typedError = failedPromise as {\n\t\t\t\treason?: CoreDataError;\n\t\t\t};\n\t\t\tif ( typedError.reason?.message ) {\n\t\t\t\terrorMessages.add( typedError.reason.message );\n\t\t\t}\n\t\t}\n\t}\n\treturn errorMessages;\n}\n\nexport type NoticeSettings< T extends Post > = {\n\tsuccess: {\n\t\tid?: string;\n\t\ttype?: string;\n\t\tmessages: {\n\t\t\tgetMessage: ( posts: T ) => string;\n\t\t\tgetBatchMessage: ( posts: T[] ) => string;\n\t\t};\n\t};\n\terror: {\n\t\tid?: string;\n\t\ttype?: string;\n\t\tmessages: {\n\t\t\tgetMessage: ( errors: Set< string > ) => string;\n\t\t\tgetBatchMessage: ( errors: Set< string > ) => string;\n\t\t};\n\t};\n};\n\nexport const deletePostWithNotices = async < T extends Post >(\n\tposts: T[],\n\tnotice: NoticeSettings< T >,\n\tcallbacks: {\n\t\tonActionPerformed?: ( posts: T[] ) => void;\n\t\tonActionError?: () => void;\n\t}\n) => {\n\tconst { createSuccessNotice, createErrorNotice } = dispatch( noticesStore );\n\tconst { deleteEntityRecord } = dispatch( coreStore );\n\tconst allSettledResults = await Promise.allSettled(\n\t\tposts.map( ( post ) => {\n\t\t\treturn deleteEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.type,\n\t\t\t\tpost.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t} )\n\t);\n\t// If all the promises were fulfilled with success.\n\tif ( allSettledResults.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\tlet successMessage;\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\tsuccessMessage = notice.success.messages.getMessage( posts[ 0 ] );\n\t\t} else {\n\t\t\tsuccessMessage = notice.success.messages.getBatchMessage( posts );\n\t\t}\n\t\tcreateSuccessNotice( successMessage, {\n\t\t\ttype: notice.success.type ?? 'snackbar',\n\t\t\tid: notice.success.id,\n\t\t} );\n\t\tcallbacks.onActionPerformed?.( posts );\n\t} else {\n\t\tconst errorMessages = getErrorMessagesFromPromises( allSettledResults );\n\t\tlet errorMessage = '';\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\terrorMessage = notice.error.messages.getMessage( errorMessages );\n\t\t} else {\n\t\t\terrorMessage =\n\t\t\t\tnotice.error.messages.getBatchMessage( errorMessages );\n\t\t}\n\n\t\tcreateErrorNotice( errorMessage, {\n\t\t\ttype: notice.error.type ?? 'snackbar',\n\t\t\tid: notice.error.id,\n\t\t} );\n\t\tcallbacks.onActionError?.();\n\t}\n};\n\nexport const editPostWithNotices = async < T extends Post >(\n\tpostsWithUpdates: {\n\t\toriginalPost: T;\n\t\tchanges: Partial< T >;\n\t}[],\n\tnotice: NoticeSettings< T >,\n\tcallbacks: {\n\t\tonActionPerformed?: ( posts: T[] ) => void;\n\t\tonActionError?: () => void;\n\t}\n) => {\n\tconst { createSuccessNotice, createErrorNotice } = dispatch( noticesStore );\n\tconst { editEntityRecord, saveEditedEntityRecord } = dispatch( coreStore );\n\tawait Promise.allSettled(\n\t\tpostsWithUpdates.map( ( post ) => {\n\t\t\treturn editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.originalPost.type,\n\t\t\t\tpost.originalPost.id,\n\t\t\t\t{\n\t\t\t\t\t...post.changes,\n\t\t\t\t}\n\t\t\t);\n\t\t} )\n\t);\n\tconst allSettledResults = await Promise.allSettled(\n\t\tpostsWithUpdates.map( ( post ) => {\n\t\t\treturn saveEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpost.originalPost.type,\n\t\t\t\tpost.originalPost.id,\n\t\t\t\t{\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t}\n\t\t\t);\n\t\t} )\n\t);\n\t// If all the promises were fulfilled with success.\n\tif ( allSettledResults.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\tlet successMessage;\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\tsuccessMessage = notice.success.messages.getMessage(\n\t\t\t\tpostsWithUpdates[ 0 ].originalPost\n\t\t\t);\n\t\t} else {\n\t\t\tsuccessMessage = notice.success.messages.getBatchMessage(\n\t\t\t\tpostsWithUpdates.map( ( post ) => post.originalPost )\n\t\t\t);\n\t\t}\n\t\tcreateSuccessNotice( successMessage, {\n\t\t\ttype: notice.success.type ?? 'snackbar',\n\t\t\tid: notice.success.id,\n\t\t} );\n\t\tcallbacks.onActionPerformed?.(\n\t\t\tpostsWithUpdates.map( ( post ) => post.originalPost )\n\t\t);\n\t} else {\n\t\tconst errorMessages = getErrorMessagesFromPromises( allSettledResults );\n\t\tlet errorMessage = '';\n\t\tif ( allSettledResults.length === 1 ) {\n\t\t\terrorMessage = notice.error.messages.getMessage( errorMessages );\n\t\t} else {\n\t\t\terrorMessage =\n\t\t\t\tnotice.error.messages.getBatchMessage( errorMessages );\n\t\t}\n\n\t\tcreateErrorNotice( errorMessage, {\n\t\t\ttype: notice.error.type ?? 'snackbar',\n\t\t\tid: notice.error.id,\n\t\t} );\n\t\tcallbacks.onActionError?.();\n\t}\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/fields/src/types.ts"],"sourcesContent":["type PostStatus =\n\t| 'published'\n\t| 'draft'\n\t| 'pending'\n\t| 'private'\n\t| 'future'\n\t| 'auto-draft'\n\t| 'trash';\n\nexport interface CommonPost {\n\tstatus?: PostStatus;\n\ttitle: string | { rendered: string } | { raw: string };\n\tcontent: string | { raw: string; rendered: string };\n\ttype: string;\n\tid: string | number;\n\tblocks?: Object[];\n\t_links?: Links;\n}\n\ninterface Links {\n\t'predecessor-version'?: { href: string; id: number }[];\n\t'version-history'?: { href: string; count: number }[];\n\t[ key: string ]: { href: string }[] | undefined;\n}\n\nexport interface BasePost extends CommonPost {\n\tcomment_status?: 'open' | 'closed';\n\texcerpt?: string | { raw: string; rendered: string };\n\tmeta?: Record< string, any >;\n\tparent?: number;\n\tpassword?: string;\n\ttemplate?: string;\n\tformat?: string;\n\tfeatured_media?: number;\n\tmenu_order?: number;\n\tping_status?: 'open' | 'closed';\n\tlink?: string;\n}\n\nexport interface Template extends CommonPost {\n\ttype: 'wp_template';\n\tis_custom: boolean;\n\tsource: string;\n\torigin: string;\n\tplugin?: string;\n\thas_theme_file: boolean;\n\tid: string;\n}\n\nexport interface TemplatePart extends CommonPost {\n\ttype: 'wp_template_part';\n\tsource: string;\n\torigin: string;\n\thas_theme_file: boolean;\n\tid: string;\n\tarea: string;\n\tplugin?: string;\n}\n\nexport interface Pattern extends CommonPost {\n\tslug: string;\n\ttitle: { raw: string };\n\twp_pattern_sync_status: string;\n}\n\nexport type Post = Template | TemplatePart | Pattern | BasePost;\n\nexport type PostWithPermissions = Post & {\n\tpermissions: {\n\t\tdelete: boolean;\n\t\tupdate: boolean;\n\t};\n};\n\nexport interface PostType {\n\tslug: string;\n\tviewable: boolean;\n\tsupports?: {\n\t\t'page-attributes'?: boolean;\n\t\ttitle?: boolean;\n\t\trevisions?: boolean;\n\t};\n}\n\n// Will be unnecessary after typescript 5.0 upgrade.\nexport type CoreDataError = { message?: string; code?: string };\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["@wordpress/fields/src/types.ts"],"sourcesContent":["type PostStatus =\n\t| 'publish'\n\t| 'draft'\n\t| 'pending'\n\t| 'private'\n\t| 'future'\n\t| 'auto-draft'\n\t| 'trash';\n\nexport interface CommonPost {\n\tstatus?: PostStatus;\n\ttitle: string | { rendered: string } | { raw: string };\n\tcontent: string | { raw: string; rendered: string };\n\ttype: string;\n\tid: string | number;\n\tblocks?: Object[];\n\t_links?: Links;\n}\n\ninterface Links {\n\t'predecessor-version'?: { href: string; id: number }[];\n\t'version-history'?: { href: string; count: number }[];\n\t[ key: string ]: { href: string }[] | undefined;\n}\n\nexport interface BasePost extends CommonPost {\n\tcomment_status?: 'open' | 'closed';\n\texcerpt?: string | { raw: string; rendered: string };\n\tmeta?: Record< string, any >;\n\tparent?: number;\n\tpassword?: string;\n\ttemplate?: string;\n\tformat?: string;\n\tfeatured_media?: number;\n\tmenu_order?: number;\n\tping_status?: 'open' | 'closed';\n\tlink?: string;\n\tslug?: string;\n\tpermalink_template?: string;\n\tdate?: string;\n\tmodified?: string;\n}\n\nexport interface Template extends CommonPost {\n\ttype: 'wp_template';\n\tis_custom: boolean;\n\tsource: string;\n\torigin: string;\n\tplugin?: string;\n\thas_theme_file: boolean;\n\tid: string;\n}\n\nexport interface TemplatePart extends CommonPost {\n\ttype: 'wp_template_part';\n\tsource: string;\n\torigin: string;\n\thas_theme_file: boolean;\n\tid: string;\n\tarea: string;\n\tplugin?: string;\n}\n\nexport interface Pattern extends CommonPost {\n\tslug: string;\n\ttitle: { raw: string };\n\twp_pattern_sync_status: string;\n}\n\nexport type Post = Template | TemplatePart | Pattern | BasePost;\n\nexport type PostWithPermissions = Post & {\n\tpermissions: {\n\t\tdelete: boolean;\n\t\tupdate: boolean;\n\t};\n};\n\nexport interface PostType {\n\tslug: string;\n\tviewable: boolean;\n\tsupports?: {\n\t\t'page-attributes'?: boolean;\n\t\ttitle?: boolean;\n\t\trevisions?: boolean;\n\t};\n}\n\n// Will be unnecessary after typescript 5.0 upgrade.\nexport type CoreDataError = { message?: string; code?: string };\n"],"mappings":"","ignoreList":[]}