diff --git a/assets/build/gutenberg.asset.php b/assets/build/gutenberg.asset.php index e29343a9ed3d83576742b6932e1b84bda48ef38c..704609745aeef47961b56ebc7fbed604d0d15666 100644 --- a/assets/build/gutenberg.asset.php +++ b/assets/build/gutenberg.asset.php @@ -1 +1 @@ -<?php return array('dependencies' => array('wp-api-fetch', 'wp-components', 'wp-compose', 'wp-data', 'wp-edit-post', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => '055b75d79581b13ad80a'); +<?php return array('dependencies' => array('wp-api-fetch', 'wp-components', 'wp-compose', 'wp-data', 'wp-edit-post', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => '75f14aee54cc9b52ebe9'); diff --git a/assets/build/gutenberg.js b/assets/build/gutenberg.js index 64a860324c821d298fa8f60c52d51ef384e14683..4c7a9397b45822ba9bbe3b87f101dabdb2822769 100644 --- a/assets/build/gutenberg.js +++ b/assets/build/gutenberg.js @@ -1 +1,3 @@ -!function(){"use strict";var e={989:function(e){e.exports=window.wp.apiFetch},609:function(e){e.exports=window.wp.components},333:function(e){e.exports=window.wp.compose},818:function(e){e.exports=window.wp.data},67:function(e){e.exports=window.wp.editPost},307:function(e){e.exports=window.wp.element},736:function(e){e.exports=window.wp.i18n},817:function(e){e.exports=window.wp.plugins}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,o),i.exports}o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},function(){var e=o(307);const t=o(989),{Button:n,Modal:r,TextControl:i}=o(609),{compose:s}=o(333),{withSelect:c,withDispatch:l}=o(818),{PluginDocumentSettingPanel:u}=o(67),{useState:a}=o(307),{__:__,_n:_n,sprintf:p}=o(736),{registerPlugin:w}=o(817),d="_wp_rev_ctl_limit",v="wp-revisions-control";w("plugin-document-setting-panel-demo",{render:s([c((e=>{const{getCurrentPostRevisionsCount:t,getEditedPostAttribute:o}=e("core/editor"),n=t(),r=o("meta")[d];return{limit:r,showPurgeButton:Boolean(r)&&n>parseInt(r)}})),l(((e,o,n)=>{let{limit:r}=o,{select:i}=n;return{manualPurge:()=>{const o=i("core/editor").getCurrentPostId();t({path:`/wp-revisions-control/v1/schedule/${o}`,method:"PUT"}).then((t=>{let o,n;t?(o="success",n=__("Excess revisions scheduled for removal.","wp_revisions_control")):(o="error",n=__("Failed to schedule excess revisions for removal.","wp_revisions_control")),e("core/notices").createNotice(o,n,{id:"wp-revisions-control-scheduled-purge",isDismissible:!0,type:"snackbar"})}))},updateMeta:t=>{e("core/editor").editPost({meta:{[d]:t}})}}}))])((t=>{let{limit:o,manualPurge:s,showPurgeButton:c,updateMeta:l}=t;return(0,e.createElement)(u,{name:v,title:__("WP Revisions Control","wp_revisions_control"),className:v},(0,e.createElement)(i,{label:__("Number of revisions to retain:","wp_revisions_control"),help:__("Leave blank to keep all revisions.","wp_revisions_control"),value:o,onChange:l}),c&&((t,o)=>{const[i,s]=a(!1),c=()=>s(!1),l=p(_n("This will remove all but the most-recent revision.","This will remove all but the %1$d most-recent revisions.",parseInt(t),"wp_revisions_control"),t);return(0,e.createElement)(e.Fragment,null,(0,e.createElement)(n,{isSecondary:!0,onClick:()=>s(!0)},__("Purge excess revisions","wp_revisions_control")),i&&(0,e.createElement)(r,{title:__("Purge excess revisions","wp_revisions_control"),contentLabel:l,onRequestClose:c},(0,e.createElement)("p",null,l),(0,e.createElement)(n,{isSecondary:!0,onClick:c},__("Cancel","wp_revisions_control")),(0,e.createElement)(n,{isPrimary:!0,onClick:()=>{c(),o()}},__("Purge","wp_revisions_control"))))})(o,s))})),icon:"backup"})}()}(); \ No newline at end of file +!function(){"use strict";var e={989:function(e){e.exports=window.wp.apiFetch},609:function(e){e.exports=window.wp.components},333:function(e){e.exports=window.wp.compose},818:function(e){e.exports=window.wp.data},67:function(e){e.exports=window.wp.editPost},307:function(e){e.exports=window.wp.element},736:function(e){e.exports=window.wp.i18n},817:function(e){e.exports=window.wp.plugins}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,o),i.exports}o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},function(){var e=o(307);const t=o(989),{Button:n,Modal:r,TextControl:i}=o(609),{compose:s}=o(333),{withSelect:c,withDispatch:l}=o(818),{PluginDocumentSettingPanel:u}=o(67),{useState:a}=o(307),{__:__,_n:_n,sprintf:p}=o(736),{registerPlugin:w}=o(817),d="_wp_rev_ctl_limit",v="wp-revisions-control",m=s([c((e=>{const{getCurrentPostRevisionsCount:t,getEditedPostAttribute:o}=e("core/editor"),n=t(),r=o("meta")[d];return{limit:r,showPurgeButton:Boolean(r)&&n>parseInt(r)}})),l(((e,o,n)=>{let{limit:r}=o,{select:i}=n;return{manualPurge:()=>{const o=i("core/editor").getCurrentPostId();t({path:`/wp-revisions-control/v1/schedule/${o}`,method:"PUT"}).then((t=>{let o,n;t?(o="success",n=__("Excess revisions scheduled for removal.","wp_revisions_control")):(o="error",n=__("Failed to schedule excess revisions for removal.","wp_revisions_control")),e("core/notices").createNotice(o,n,{id:"wp-revisions-control-scheduled-purge",isDismissible:!0,type:"snackbar"})}))},updateMeta:t=>{e("core/editor").editPost({meta:{[d]:t}})}}}))])((t=>{let{limit:o,manualPurge:s,showPurgeButton:c,updateMeta:l}=t;return(0,e.createElement)(u,{name:v,title:__("WP Revisions Control","wp_revisions_control"),className:v},(0,e.createElement)(i,{label:__("Number of revisions to retain:","wp_revisions_control"),help:__("Leave blank to keep all revisions.","wp_revisions_control"),value:o,onChange:l}),c&&((t,o)=>{const[i,s]=a(!1),c=()=>s(!1),l=p( +/* translators: 1. Number of revisions to keep. */ +_n("This will remove all but the most-recent revision.","This will remove all but the %1$d most-recent revisions.",parseInt(t),"wp_revisions_control"),t);return(0,e.createElement)(e.Fragment,null,(0,e.createElement)(n,{isSecondary:!0,onClick:()=>s(!0)},__("Purge excess revisions","wp_revisions_control")),i&&(0,e.createElement)(r,{title:__("Purge excess revisions","wp_revisions_control"),contentLabel:l,onRequestClose:c},(0,e.createElement)("p",null,l),(0,e.createElement)(n,{isSecondary:!0,onClick:c},__("Cancel","wp_revisions_control")),(0,e.createElement)(n,{isPrimary:!0,onClick:()=>{c(),o()}},__("Purge","wp_revisions_control"))))})(o,s))}));w(v,{render:m,icon:"backup"})}()}(); \ No newline at end of file diff --git a/assets/src/gutenberg.js b/assets/src/gutenberg.js index 74f8bf8a2cbe63638a8c7dc29467e82cff09eb52..fe7f5991d75d1e7a4fcfd5c690aaf7d8b182d4fc 100644 --- a/assets/src/gutenberg.js +++ b/assets/src/gutenberg.js @@ -16,6 +16,7 @@ const Render = ( { limit, manualPurge, showPurgeButton, updateMeta } ) => ( title={ __( 'WP Revisions Control', 'wp_revisions_control' ) } className={ slug } > + {/* TODO: switch to InputControl when it becomes available. */} <TextControl label={ __( 'Number of revisions to retain:', 'wp_revisions_control' ) } help={ __( 'Leave blank to keep all revisions.', 'wp_revisions_control' ) } @@ -36,8 +37,8 @@ const PurgeModal = ( limit, manualPurge ) => { manualPurge(); }; - /* translators: 1. Number of revisions to keep. */ const modalText = sprintf( + /* translators: 1. Number of revisions to keep. */ _n( 'This will remove all but the most-recent revision.', 'This will remove all but the %1$d most-recent revisions.', @@ -76,6 +77,7 @@ const PurgeModal = ( limit, manualPurge ) => { ) } +// TODO: switch to `useSelect` and `useDispatch`. const RevisionsControl = compose( [ withSelect( ( select ) => { @@ -146,7 +148,7 @@ const RevisionsControl = compose( )( Render ); registerPlugin( - 'plugin-document-setting-panel-demo', + slug, { render: RevisionsControl, icon: 'backup',