Redirection - Version 4.3.3

Version Description

  • 8th August 2019 ==
  • Add back compatibility fix for URL sanitization
Download this release

Release Info

Developer johnny5
Plugin Icon 128x128 Redirection
Version 4.3.3
Comparing to
See all releases

Code changes from version 4.3.2 to 4.3.3

models/redirect-sanitizer.php CHANGED
@@ -220,8 +220,10 @@ class Red_Item_Sanitize {
220
  // Ensure we URL decode any i10n characters
221
  $url = rawurldecode( $url );
222
 
223
- // Remove bad decoding
224
- $url = @iconv( 'UTF-8', 'UTF-8//IGNORE', $url );
 
 
225
 
226
  return $url;
227
  }
220
  // Ensure we URL decode any i10n characters
221
  $url = rawurldecode( $url );
222
 
223
+ // Try and remove bad decoding
224
+ if ( function_exists( 'iconv' ) ) {
225
+ $url = @iconv( 'UTF-8', 'UTF-8//IGNORE', $url );
226
+ }
227
 
228
  return $url;
229
  }
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://redirection.me/donation/
4
  Tags: redirect, htaccess, 301, 404, seo, permalink, apache, nginx, post, admin
5
  Requires at least: 4.8
6
  Tested up to: 5.2.1
7
- Stable tag: 4.3.2
8
  Requires PHP: 5.4
9
  License: GPLv3
10
 
@@ -157,6 +157,9 @@ The plugin works in a similar manner to how WordPress handles permalinks and sho
157
 
158
  == Changelog ==
159
 
 
 
 
160
  = 4.3.2 - 4th August 2019 ==
161
  * Fix problem with UTF8 characters in a regex URL
162
  * Fix invalid characters causing an error message
4
  Tags: redirect, htaccess, 301, 404, seo, permalink, apache, nginx, post, admin
5
  Requires at least: 4.8
6
  Tested up to: 5.2.1
7
+ Stable tag: 4.3.3
8
  Requires PHP: 5.4
9
  License: GPLv3
10
 
157
 
158
  == Changelog ==
159
 
160
+ = 4.3.3 - 8th August 2019 ==
161
+ * Add back compatibility fix for URL sanitization
162
+
163
  = 4.3.2 - 4th August 2019 ==
164
  * Fix problem with UTF8 characters in a regex URL
165
  * Fix invalid characters causing an error message
redirection-version.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php
2
 
3
- define( 'REDIRECTION_VERSION', '4.3.2' );
4
- define( 'REDIRECTION_BUILD', '0f831a6c0558229b803b83eda31409a3' );
5
  define( 'REDIRECTION_MIN_WP', '4.6' );
1
  <?php
2
 
3
+ define( 'REDIRECTION_VERSION', '4.3.3' );
4
+ define( 'REDIRECTION_BUILD', 'f44c5a22d08097e437d91ad12f79080b' );
5
  define( 'REDIRECTION_MIN_WP', '4.6' );
redirection.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! Redirection v4.3.2 */!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=73)}([function(e,t,n){"use strict";e.exports=n(74)},function(e,t,n){var r=n(78),o=new r;e.exports={numberFormat:o.numberFormat.bind(o),translate:o.translate.bind(o),configure:o.configure.bind(o),setLocale:o.setLocale.bind(o),getLocale:o.getLocale.bind(o),getLocaleSlug:o.getLocaleSlug.bind(o),addTranslations:o.addTranslations.bind(o),reRenderTranslations:o.reRenderTranslations.bind(o),registerComponentUpdateHook:o.registerComponentUpdateHook.bind(o),registerTranslateHook:o.registerTranslateHook.bind(o),state:o.state,stateObserver:o.stateObserver,on:o.stateObserver.on.bind(o.stateObserver),off:o.stateObserver.removeListener.bind(o.stateObserver),emit:o.stateObserver.emit.bind(o.stateObserver),$this:o,I18N:r}},function(e,t,n){e.exports=n(88)()},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var o=(i=r,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),a=r.sources.map(function(e){return"/*# sourceURL="+r.sourceRoot+e+" */"});return[n].concat(a).concat([o]).join("\n")}var i;return[n].join("\n")}(t,e);return t[2]?"@media "+t[2]+"{"+n+"}":n}).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},o=0;o<this.length;o++){var a=this[o][0];null!=a&&(r[a]=!0)}for(o=0;o<e.length;o++){var i=e[o];null!=i[0]&&r[i[0]]||(n&&!i[2]?i[2]=n:n&&(i[2]="("+i[2]+") and ("+n+")"),t.push(i))}},t}},function(e,t,n){var r,o,a={},i=(r=function(){return window&&document&&document.all&&!window.atob},function(){return void 0===o&&(o=r.apply(this,arguments)),o}),l=function(e){var t={};return function(e,n){if("function"==typeof e)return e();if(void 0===t[e]){var r=function(e,t){return t?t.querySelector(e):document.querySelector(e)}.call(this,e,n);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}}(),u=null,s=0,c=[],p=n(96);function f(e,t){for(var n=0;n<e.length;n++){var r=e[n],o=a[r.id];if(o){o.refs++;for(var i=0;i<o.parts.length;i++)o.parts[i](r.parts[i]);for(;i<r.parts.length;i++)o.parts.push(y(r.parts[i],t))}else{var l=[];for(i=0;i<r.parts.length;i++)l.push(y(r.parts[i],t));a[r.id]={id:r.id,refs:1,parts:l}}}}function d(e,t){for(var n=[],r={},o=0;o<e.length;o++){var a=e[o],i=t.base?a[0]+t.base:a[0],l={css:a[1],media:a[2],sourceMap:a[3]};r[i]?r[i].parts.push(l):n.push(r[i]={id:i,parts:[l]})}return n}function h(e,t){var n=l(e.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var r=c[c.length-1];if("top"===e.insertAt)r?r.nextSibling?n.insertBefore(t,r.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),c.push(t);else if("bottom"===e.insertAt)n.appendChild(t);else{if("object"!=typeof e.insertAt||!e.insertAt.before)throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");var o=l(e.insertAt.before,n);n.insertBefore(t,o)}}function m(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e);var t=c.indexOf(e);t>=0&&c.splice(t,1)}function b(e){var t=document.createElement("style");if(void 0===e.attrs.type&&(e.attrs.type="text/css"),void 0===e.attrs.nonce){var r=function(){0;return n.nc}();r&&(e.attrs.nonce=r)}return g(t,e.attrs),h(e,t),t}function g(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function y(e,t){var n,r,o,a;if(t.transform&&e.css){if(!(a="function"==typeof t.transform?t.transform(e.css):t.transform.default(e.css)))return function(){};e.css=a}if(t.singleton){var i=s++;n=u||(u=b(t)),r=w.bind(null,n,i,!1),o=w.bind(null,n,i,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",g(t,e.attrs),h(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,a=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||a)&&(r=p(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var i=new Blob([r],{type:"text/css"}),l=e.href;e.href=URL.createObjectURL(i),l&&URL.revokeObjectURL(l)}.bind(null,n,t),o=function(){m(n),n.href&&URL.revokeObjectURL(n.href)}):(n=b(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){m(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=i()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=d(e,t);return f(n,t),function(e){for(var r=[],o=0;o<n.length;o++){var i=n[o];(l=a[i.id]).refs--,r.push(l)}e&&f(d(e,t),t);for(o=0;o<r.length;o++){var l;if(0===(l=r[o]).refs){for(var u=0;u<l.parts.length;u++)l.parts[u]();delete a[l.id]}}}};var v,E=(v=[],function(e,t){return v[e]=t,v.filter(Boolean).join("\n")});function w(e,t,n,r){var o=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=E(t,o);else{var a=document.createTextNode(o),i=e.childNodes;i[t]&&e.removeChild(i[t]),i.length?e.insertBefore(a,i[t]):e.appendChild(a)}}},function(e,t,n){var r;
2
  /*!
3
  Copyright (c) 2017 Jed Watson.
4
  Licensed under the MIT License (MIT), see
@@ -73,4 +73,4 @@ MERCHANTABLITY OR NON-INFRINGEMENT.
73
 
74
  See the Apache Version 2.0 License for specific language governing permissions
75
  and limitations under the License.
76
- ***************************************************************************** */function rd(e,t,n,r){return new(n||(n=Promise))(function(o,a){function i(e){try{u(r.next(e))}catch(e){a(e)}}function l(e){try{u(r.throw(e))}catch(e){a(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(i,l)}u((r=r.apply(e,t||[])).next())})}function od(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(a){return function(l){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}}function ad(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}var id=new Map([["avi","video/avi"],["gif","image/gif"],["ico","image/x-icon"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["mkv","video/x-matroska"],["mov","video/quicktime"],["mp4","video/mp4"],["pdf","application/pdf"],["png","image/png"],["zip","application/zip"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"]]);function ld(e,t){var n=function(e){var t=e.name;if(t&&-1!==t.lastIndexOf(".")&&!e.type){var n=t.split(".").pop().toLowerCase(),r=id.get(n);r&&Object.defineProperty(e,"type",{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}(e);if("string"!=typeof n.path){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:"string"==typeof t?t:"string"==typeof r&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}var ud=[".DS_Store","Thumbs.db"];function sd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,(n=e,n.dataTransfer&&e.dataTransfer?pd(e.dataTransfer,e.type):cd(e))];var n})})}function cd(e){return(null!==e.target&&e.target.files?dd(e.target.files):[]).map(function(e){return ld(e)})}function pd(e,t){return rd(this,void 0,void 0,function(){var n;return od(this,function(r){switch(r.label){case 0:return e.items?(n=dd(e.items).filter(function(e){return"file"===e.kind}),"drop"!==t?[2,n]:[4,Promise.all(n.map(hd))]):[3,2];case 1:return[2,fd(md(r.sent()))];case 2:return[2,fd(dd(e.files).map(function(e){return ld(e)}))]}})})}function fd(e){return e.filter(function(e){return-1===ud.indexOf(e.name)})}function dd(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r)}return t}function hd(e){if("function"!=typeof e.webkitGetAsEntry)return bd(e);var t=e.webkitGetAsEntry();return t&&t.isDirectory?yd(t):bd(e)}function md(e){return e.reduce(function(e,t){return function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(ad(arguments[t]));return e}(e,Array.isArray(t)?md(t):[t])},[])}function bd(e){var t=e.getAsFile();if(!t)return Promise.reject(e+" is not a File");var n=ld(t);return Promise.resolve(n)}function gd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,e.isDirectory?yd(e):vd(e)]})})}function yd(e){var t=e.createReader();return new Promise(function(e,n){var r=[];!function o(){var a=this;t.readEntries(function(t){return rd(a,void 0,void 0,function(){var a,i,l;return od(this,function(u){switch(u.label){case 0:if(t.length)return[3,5];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,Promise.all(r)];case 2:return a=u.sent(),e(a),[3,4];case 3:return i=u.sent(),n(i),[3,4];case 4:return[3,6];case 5:l=Promise.all(t.map(gd)),r.push(l),o(),u.label=6;case 6:return[2]}})})},function(e){n(e)})}()})}function vd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,new Promise(function(t,n){e.file(function(n){var r=ld(n,e.fullPath);t(r)},function(e){n(e)})})]})})}var Ed=n(71),wd=n.n(Ed);function Od(e,t){return"application/x-moz-file"===e.type||wd()(e,t)}function xd(e){return"function"==typeof e.isPropagationStopped?e.isPropagationStopped():void 0!==e.cancelBubble&&e.cancelBubble}function Sd(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(e){return"Files"===e||"application/x-moz-file"===e}):!!e.target&&!!e.target.files}function kd(e){e.preventDefault()}function _d(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return t.some(function(t){return!xd(e)&&t&&t.apply(void 0,[e].concat(r)),xd(e)})}}function Cd(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function jd(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,o=!1,a=void 0;try{for(var i,l=e[Symbol.iterator]();!(r=(i=l.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){o=!0,a=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw a}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function Pd(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Td(e,t,n[t])})}return e}function Td(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ad(e){return(Ad="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Dd(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var Rd=Object(S.forwardRef)(function(e,t){var n=e.children,r=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.accept,n=e.disabled,r=void 0!==n&&n,o=e.getFilesFromEvent,a=void 0===o?sd:o,i=e.maxSize,l=void 0===i?1/0:i,u=e.minSize,s=void 0===u?0:u,c=e.multiple,p=void 0===c||c,f=e.onDragEnter,d=e.onDragLeave,h=e.onDragOver,m=e.onDrop,b=e.onDropAccepted,g=e.onDropRejected,y=e.onFileDialogCancel,v=e.preventDropOnDocument,E=void 0===v||v,w=e.noClick,O=void 0!==w&&w,x=e.noKeyboard,k=void 0!==x&&x,_=e.noDrag,C=void 0!==_&&_,j=e.noDragEventsBubbling,P=void 0!==j&&j,T=Object(S.useRef)(null),A=Object(S.useRef)(null),D=jd(Object(S.useReducer)(Fd,Nd),2),R=D[0],I=D[1],N=R.isFocused,F=R.isFileDialogActive,L=R.draggedFiles,M=function(){A.current&&(I({type:"openDialog"}),A.current.value=null,A.current.click())},U=function(){F&&setTimeout(function(){if(A.current){var e=A.current.files;e.length||(I({type:"closeDialog"}),"function"==typeof y&&y())}},300)};Object(S.useEffect)(function(){return window.addEventListener("focus",U,!1),function(){window.removeEventListener("focus",U,!1)}},[A,F,y]);var B=Object(S.useCallback)(function(e){T.current&&T.current.isEqualNode(e.target)&&(32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),M()))},[T,A]),z=Object(S.useCallback)(function(){I({type:"focus"})},[]),V=Object(S.useCallback)(function(){I({type:"blur"})},[]),W=Object(S.useCallback)(function(e){e.preventDefault(),O||(!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?M():setTimeout(M,0))},[A,O]),H=jd(Object(S.useState)([]),2),G=H[0],q=H[1],$=function(e){T.current&&T.current.contains(e.target)||(e.preventDefault(),q([]))};Object(S.useEffect)(function(){return E&&(document.addEventListener("dragover",kd,!1),document.addEventListener("drop",$,!1)),function(){E&&(document.removeEventListener("dragover",kd),document.removeEventListener("drop",$))}},[T,E]);var Y=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e),-1===G.indexOf(e.target)&&q([].concat(Cd(G),[e.target])),Sd(e)&&Promise.resolve(a(e)).then(function(t){xd(e)&&!P||(I({draggedFiles:t,isDragActive:!0,type:"setDraggedFiles"}),f&&f(e))})},[G,a,f,P]),K=Object(S.useCallback)(function(e){if(e.preventDefault(),e.persist(),te(e),e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(e){}return Sd(e)&&h&&h(e),!1},[h,P]),Q=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e);var t=Cd(G.filter(function(t){return t!==e.target&&T.current&&T.current.contains(t)}));q(t),t.length>0||(I({isDragActive:!1,type:"setDraggedFiles",draggedFiles:[]}),Sd(e)&&d&&d(e))},[T,G,d,P]),X=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e),q([]),I({type:"reset"}),Sd(e)&&Promise.resolve(a(e)).then(function(n){if(!xd(e)||P){var r=[],o=[];n.forEach(function(e){Od(e,t)&&function(e,t,n){return e.size<=t&&e.size>=n}(e,l,s)?r.push(e):o.push(e)}),!p&&r.length>1&&o.push.apply(o,Cd(r.splice(0))),I({acceptedFiles:r,rejectedFiles:o,type:"setFiles"}),m&&m(r,o,e),o.length>0&&g&&g(o,e),r.length>0&&b&&b(r,e)}})},[p,t,s,l,a,m,b,g,P]),J=function(e){return r?null:e},Z=function(e){return k?null:J(e)},ee=function(e){return C?null:J(e)},te=function(e){P&&e.stopPropagation()},ne=Object(S.useMemo)(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,o=e.onKeyDown,a=e.onFocus,i=e.onBlur,l=e.onClick,u=e.onDragEnter,s=e.onDragOver,c=e.onDragLeave,p=e.onDrop,f=Dd(e,["refKey","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"]);return Pd(Td({onKeyDown:Z(_d(o,B)),onFocus:Z(_d(a,z)),onBlur:Z(_d(i,V)),onClick:J(_d(l,W)),onDragEnter:ee(_d(u,Y)),onDragOver:ee(_d(s,K)),onDragLeave:ee(_d(c,Q)),onDrop:ee(_d(p,X))},n,T),r||k?{}:{tabIndex:0},f)}},[T,B,z,V,W,Y,K,Q,X,k,C,r]),re=Object(S.useCallback)(function(e){e.stopPropagation()},[]),oe=Object(S.useMemo)(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.refKey,r=void 0===n?"ref":n,o=e.onChange,a=e.onClick,i=Dd(e,["refKey","onChange","onClick"]),l=Td({accept:t,multiple:p,type:"file",style:{display:"none"},onChange:J(_d(o,X)),onClick:J(_d(a,re)),autoComplete:"off",tabIndex:-1},r,A);return Pd({},l,i)}},[A,t,p,X,r]),ae=L.length,ie=p||ae<=1,le=ae>0&&function(e,t){return e.every(function(e){return Od(e,t)})}(L,t);return Pd({},R,{isDragAccept:le,isDragReject:ae>0&&(!le||!ie),isFocused:N&&!r,getRootProps:ne,getInputProps:oe,rootRef:T,inputRef:A,open:J(M)})}(Dd(e,["children"])),o=r.open,a=Dd(r,["open"]);return Object(S.useEffect)(function(){return"function"==typeof t?t({open:o}):"object"===Ad(t)&&null!==t&&(t.current={open:o}),function(){"function"==typeof t?t(null):"object"===Ad(t)&&null!==t&&(t.current=null)}},[t]),k.a.createElement(S.Fragment,null,n(Pd({},a,{open:o})))});Rd.displayName="Dropzone",Rd.propTypes={children:R.a.func,accept:R.a.oneOfType([R.a.string,R.a.arrayOf(R.a.string)]),multiple:R.a.bool,preventDropOnDocument:R.a.bool,noClick:R.a.bool,noKeyboard:R.a.bool,noDrag:R.a.bool,noDragEventsBubbling:R.a.bool,minSize:R.a.number,maxSize:R.a.number,disabled:R.a.bool,getFilesFromEvent:R.a.func,onFileDialogCancel:R.a.func,onDragEnter:R.a.func,onDragLeave:R.a.func,onDragOver:R.a.func,onDrop:R.a.func,onDropAccepted:R.a.func,onDropRejected:R.a.func};var Id=Rd,Nd={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,draggedFiles:[],acceptedFiles:[],rejectedFiles:[]};function Fd(e,t){switch(t.type){case"focus":return Pd({},e,{isFocused:!0});case"blur":return Pd({},e,{isFocused:!1});case"openDialog":return Pd({},e,{isFileDialogActive:!0});case"closeDialog":return Pd({},e,{isFileDialogActive:!1});case"setDraggedFiles":var n=t.isDragActive;return Pd({},e,{draggedFiles:t.draggedFiles,isDragActive:n});case"setFiles":return Pd({},e,{acceptedFiles:t.acceptedFiles,rejectedFiles:t.rejectedFiles});case"reset":return Pd({},e,{isFileDialogActive:!1,isDragActive:!1,draggedFiles:[]});default:return e}}var Ld=function(e,t){return function(n){return $t(Bt.export.file(e,t)).then(function(e){n({type:_n,data:e.data})}).catch(function(e){n({type:Tn,error:e})}),n({type:Cn})}},Md=function(e){return document.location.href=e,{type:"NOTHING"}},Ud=function(e,t){return function(n){return $t(Bt.import.upload(t,e)).then(function(e){n({type:Pn,total:e.imported})}).catch(function(e){n({type:Tn,error:e})}),n({type:jn,file:e})}},Bd=function(){return{type:An}},zd=function(e){return{type:Dn,file:e}},Vd=function(){return function(e){$t(Bt.import.pluginList()).then(function(t){e({type:Rn,importers:t.importers})}).catch(function(t){e({type:Tn,error:t})})}},Wd=function(e){return function(t){return $t(Bt.import.pluginImport(e)).then(function(e){t({type:Pn,total:e.imported})}).catch(function(e){t({type:Tn,error:e})}),t({type:jn})}},Hd=function(e,t){return Redirectioni10n.pluginRoot+"&sub=io&export="+e+"&exporter="+t+"&_wpnonce="+It()},Gd=function(e){var t=e.plugin,n=e.doImport,r=t.name,o=t.total;return k.a.createElement("div",{className:"plugin-importer"},k.a.createElement("p",null,k.a.createElement("strong",null,r)," (",Object(j.translate)("total = ")+o," )"),k.a.createElement("button",{onClick:function(){n(t)},className:"button-secondary"},Object(j.translate)("Import from %s",{args:r})))};n(127);function qd(e){return(qd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $d(){return($d=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function Yd(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Kd(e){return(Kd=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Qd(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Xd(e,t){return(Xd=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Jd(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Zd=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==qd(t)&&"function"!=typeof t?Qd(e):t}(this,Kd(t).call(this,e)),Jd(Qd(n),"onView",function(){n.props.onExport(n.state.module,n.state.format)}),Jd(Qd(n),"onDownload",function(){n.props.onDownloadFile(Hd(n.state.module,n.state.format))}),Jd(Qd(n),"onEnter",function(){n.props.io.importingStatus!==Xe&&n.setState({hover:!0})}),Jd(Qd(n),"onLeave",function(){n.setState({hover:!1})}),Jd(Qd(n),"onImport",function(){n.props.onImport(n.props.io.file,n.state.group)}),Jd(Qd(n),"onCancel",function(){n.setState({hover:!1}),n.props.onClearFile()}),Jd(Qd(n),"onInput",function(e){var t=e.target;n.setState(Jd({},t.name,t.value)),"module"===t.name&&"everything"===t.value&&n.setState({format:"json"})}),Jd(Qd(n),"onDrop",function(e){var t=n.props.io.importingStatus;e.length>0&&t!==Xe&&n.props.onAddFile(e[0]),n.setState({hover:!1,group:n.props.group.rows[0].id})}),Jd(Qd(n),"doImport",function(e){confirm(Object(j.translate)("Are you sure you want to import from %s?",{args:e.name}))&&n.props.pluginImport(e.id)}),n.props.onLoadGroups(),n.props.onLoadImport(),n.state={group:0,hover:!1,module:"all",format:"json"},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Xd(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderGroupSelect",value:function(){var e=this.props.group.rows;return k.a.createElement("div",{className:"groups"},Object(j.translate)("Import to group")," ",k.a.createElement(Vr,{items:Rc(e),name:"group",value:this.state.group,onChange:this.onInput}))}},{key:"renderInitialDrop",value:function(e){return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Import a CSV, .htaccess, or JSON file.")),k.a.createElement("p",null,Object(j.translate)("Click 'Add File' or drag and drop here.")),k.a.createElement("button",{type:"button",className:"button-secondary",onClick:e},Object(j.translate)("Add File")))}},{key:"renderDropBeforeUpload",value:function(){var e=this.props.io.file,t="application/json"===e.type;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("File selected")),k.a.createElement("p",null,k.a.createElement("code",null,e.name)),!t&&this.renderGroupSelect(),k.a.createElement("button",{className:"button-primary",onClick:this.onImport},Object(j.translate)("Upload")),"  ",k.a.createElement("button",{className:"button-secondary",onClick:this.onCancel},Object(j.translate)("Cancel")))}},{key:"renderUploading",value:function(){var e=this.props.io.file;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Importing")),k.a.createElement("p",null,k.a.createElement("code",null,e.name)),k.a.createElement("div",{className:"is-placeholder"},k.a.createElement("div",{className:"placeholder-loading"})))}},{key:"renderUploaded",value:function(){var e=this.props.io.lastImport;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Finished importing")),k.a.createElement("p",null,Object(j.translate)("Total redirects imported:")," ",e),0===e&&k.a.createElement("p",null,Object(j.translate)("Double-check the file is the correct format!")),k.a.createElement("button",{className:"button-secondary",onClick:this.onCancel},Object(j.translate)("OK")))}},{key:"renderDropzoneContent",value:function(e){var t,n=e.getInputProps,r=e.getRootProps,o=this.state.hover,a=this.props.io,i=a.importingStatus,l=a.file,u=a.lastImport,s=to()({dropzone:!0,"dropzone-dropped":!1!==l,"dropzone-importing":i===Xe,"dropzone-hover":o}),c=r({onClick:function(e){return e.stopPropagation()},onKeyDown:function(e){32!==e.keyCode&&13!==e.keyCode||e.stopPropagation()}});return t=i===Xe?this.renderUploading():i===Ze&&!1!==u&&!1===l?this.renderUploaded():!1===l?this.renderInitialDrop(e.open):this.renderDropBeforeUpload(),k.a.createElement("div",$d({className:s},c),k.a.createElement("input",n()),t)}},{key:"renderExport",value:function(e){return k.a.createElement("div",null,k.a.createElement("textarea",{className:"module-export",rows:"14",readOnly:!0,value:e}),k.a.createElement("input",{className:"button-secondary",type:"submit",value:Object(j.translate)("Close"),onClick:this.onCancel}))}},{key:"renderExporting",value:function(){return k.a.createElement("div",{className:"loader-wrapper loader-textarea"},k.a.createElement("div",{className:"placeholder-loading"}))}},{key:"renderImporters",value:function(e){var t=this;return k.a.createElement("div",null,k.a.createElement("h3",null,Object(j.translate)("Plugin Importers")),k.a.createElement("p",null,Object(j.translate)("The following redirect plugins were detected on your site and can be imported from.")),e.map(function(e,n){return k.a.createElement(Gd,{plugin:e,key:n,doImport:t.doImport})}))}},{key:"render",value:function(){var e=this,t=this.props.io,n=t.exportData,r=t.exportStatus,o=t.importers;return k.a.createElement("div",{className:"import"},k.a.createElement("h2",null,Object(j.translate)("Import")),k.a.createElement(Id,{multiple:!1,onDrop:this.onDrop,onDragLeave:this.onLeave,onDragEnter:this.onEnter},function(t){return e.renderDropzoneContent(t)}),k.a.createElement("p",null,Object(j.translate)("All imports will be appended to the current database - nothing is merged.")),k.a.createElement("div",{className:"inline-notice notice-warning"},k.a.createElement("p",null,Object(j.translate)("{{strong}}CSV file format{{/strong}}: {{code}}source URL, target URL{{/code}} - and can be optionally followed with {{code}}regex, http code{{/code}} ({{code}}regex{{/code}} - 0 for no, 1 for yes).",{components:{code:k.a.createElement("code",null),strong:k.a.createElement("strong",null)}})),k.a.createElement("p",null,Object(j.translate)('CSV does not include all information, and everything is imported/exported as "URL only" matches. Use the JSON format for a full set of data.'))),k.a.createElement("h2",null,Object(j.translate)("Export")),k.a.createElement("p",null,Object(j.translate)("Export to CSV, Apache .htaccess, Nginx, or Redirection JSON. The JSON format contains full information, and other formats contain partial information appropriate to the format.")),k.a.createElement("select",{name:"module",onChange:this.onInput,value:this.state.module},k.a.createElement("option",{value:"0"},Object(j.translate)("Everything")),k.a.createElement("option",{value:"1"},Object(j.translate)("WordPress redirects")),k.a.createElement("option",{value:"2"},Object(j.translate)("Apache redirects")),k.a.createElement("option",{value:"3"},Object(j.translate)("Nginx redirects"))),k.a.createElement("select",{name:"format",onChange:this.onInput,value:this.state.format},k.a.createElement("option",{value:"json"},Object(j.translate)("Complete data (JSON)")),k.a.createElement("option",{value:"csv"},Object(j.translate)("CSV")),k.a.createElement("option",{value:"apache"},Object(j.translate)("Apache .htaccess")),k.a.createElement("option",{value:"nginx"},Object(j.translate)("Nginx rewrite rules")))," ",k.a.createElement("button",{className:"button-primary",onClick:this.onView},Object(j.translate)("View"))," ",k.a.createElement("button",{className:"button-secondary",onClick:this.onDownload},Object(j.translate)("Download")),r===Xe&&this.renderExporting(),n&&r!==Xe&&this.renderExport(n),k.a.createElement("h2",null,"Export Logs"),k.a.createElement(wi,{logType:"log",title:Object(j.translate)("Export redirect")}),k.a.createElement("br",null),k.a.createElement(wi,{logType:"404",title:Object(j.translate)("Export 404")}),o.length>0&&this.renderImporters(o))}}])&&Yd(n.prototype,r),o&&Yd(n,o),t}();var eh=Te(function(e){return{group:e.group,io:e.io}},function(e){return{onLoadGroups:function(){e(Bf())},onImport:function(t,n){e(Ud(t,n))},onAddFile:function(t){e(zd(t))},onClearFile:function(){e(Bd())},onExport:function(t,n){e(Ld(t,n))},onDownloadFile:function(t){e(Md(t))},onLoadImport:function(){e(Vd())},pluginImport:function(t){e(Wd(t))}}})(Zd);function th(e){return(th="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function nh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function rh(e){return(rh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function oh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ah(e,t){return(ah=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ih(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var lh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==th(t)&&"function"!=typeof t?oh(e):t}(this,rh(t).call(this,e)),ih(oh(n),"onChange",function(e){n.setState({selected:e.target.value})}),ih(oh(n),"onSubmit",function(){n.props.onFilter(n.state.selected)}),n.state={selected:e.selected},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ah(e,t)}(t,k.a.Component),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.options,n=e.isEnabled;return k.a.createElement("div",{className:"alignleft actions"},k.a.createElement(Vr,{items:t,value:this.state.selected,name:"filter",onChange:this.onChange,isEnabled:n}),k.a.createElement("button",{className:"button",onClick:this.onSubmit,disabled:!n},Object(j.translate)("Filter")))}}])&&nh(n.prototype,r),o&&nh(n,o),t}();function uh(e){return(uh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function sh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ch(e){return(ch=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ph(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function fh(e,t){return(fh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function dh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var hh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==uh(t)&&"function"!=typeof t?ph(e):t}(this,ch(t).call(this,e)),dh(ph(n),"onEdit",function(e){e.preventDefault(),n.setState({editing:!n.state.editing})}),dh(ph(n),"onDelete",function(e){e.preventDefault(),n.props.onTableAction("delete",n.props.item.id)}),dh(ph(n),"onDisable",function(e){e.preventDefault(),n.props.onTableAction("disable",n.props.item.id)}),dh(ph(n),"onEnable",function(e){e.preventDefault(),n.props.onTableAction("enable",n.props.item.id)}),dh(ph(n),"onSelected",function(){n.props.onSetSelected([n.props.item.id])}),dh(ph(n),"onChange",function(e){var t=e.target;n.setState({name:t.value})}),dh(ph(n),"onSave",function(e){n.onEdit(e),n.props.onSaveGroup(n.props.item.id,{name:n.state.name,moduleId:n.state.moduleId})}),dh(ph(n),"onSelect",function(e){var t=e.target;n.setState({moduleId:parseInt(t.value,10)})}),n.state={editing:!1,name:e.item.name,moduleId:e.item.module_id},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&fh(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderLoader",value:function(){return k.a.createElement("div",{className:"loader-wrapper"},k.a.createElement("div",{className:"placeholder-loading loading-small",style:{top:"0px"}}))}},{key:"renderActions",value:function(e){var t=this.props.item,n=t.id,r=t.enabled;return k.a.createElement(xi,{disabled:e},k.a.createElement("a",{href:"#",onClick:this.onEdit},Object(j.translate)("Edit"))," | ",k.a.createElement("a",{href:"#",onClick:this.onDelete},Object(j.translate)("Delete"))," | ",k.a.createElement("a",{href:Redirectioni10n.pluginRoot+"&filterby=group&filter="+n},Object(j.translate)("View Redirects"))," | ",r&&k.a.createElement("a",{href:"#",onClick:this.onDisable},Object(j.translate)("Disable")),!r&&k.a.createElement("a",{href:"#",onClick:this.onEnable},Object(j.translate)("Enable")))}},{key:"renderEdit",value:function(){return k.a.createElement("form",{onSubmit:this.onSave},k.a.createElement("table",{className:"edit-groups"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",{width:"70"},Object(j.translate)("Name")),k.a.createElement("td",null,k.a.createElement("input",{type:"text",name:"name",value:this.state.name,onChange:this.onChange}))),k.a.createElement("tr",null,k.a.createElement("th",{width:"70"},Object(j.translate)("Module")),k.a.createElement("td",null,k.a.createElement(Vr,{name:"module_id",value:this.state.moduleId,onChange:this.onSelect,items:[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}]}))),k.a.createElement("tr",null,k.a.createElement("th",{width:"70"}),k.a.createElement("td",null,k.a.createElement("div",{className:"table-actions"},k.a.createElement("input",{className:"button-primary",type:"submit",name:"save",value:Object(j.translate)("Save")}),"  ",k.a.createElement("input",{className:"button-secondary",type:"submit",name:"cancel",value:Object(j.translate)("Cancel"),onClick:this.onEdit})),2===parseInt(this.state.moduleId,10)&&k.a.createElement("p",null,k.a.createElement("br",null),Object(j.translate)("Note that you will need to set the Apache module path in your Redirection options.")))))))}},{key:"getName",value:function(e,t){return t?e:k.a.createElement("strike",null,e)}},{key:"render",value:function(){var e,t,n=this.props.item,r=n.name,o=n.redirects,a=n.id,i=n.module_id,l=n.enabled,u=this.props,s=u.selected,c=u.status,p=c===Xe,f=c===et,d=!l||p||f;return k.a.createElement("tr",{className:d?"disabled":""},k.a.createElement("th",{scope:"row",className:"check-column"},!f&&k.a.createElement("input",{type:"checkbox",name:"item[]",value:a,disabled:p,checked:s,onChange:this.onSelected}),f&&k.a.createElement(Lo,{size:"small"})),k.a.createElement("td",{className:"column-primary column-name"},!this.state.editing&&this.getName(r,l),this.state.editing?this.renderEdit():this.renderActions(f)),k.a.createElement("td",{className:"column-redirects"},o),k.a.createElement("td",{className:"column-module"},(e=i,(t=[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}].find(function(t){return t.value===parseInt(e,10)}))?t.text:"")))}}])&&sh(n.prototype,r),o&&sh(n,o),t}();var mh=Te(null,function(e){return{onSetSelected:function(t){e(Gf(t))},onSaveGroup:function(t,n){e(Mf(t,n))},onTableAction:function(t,n){e(Uf(t,n))}}})(hh);function bh(e){return(bh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function gh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function yh(e){return(yh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function vh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Eh(e,t){return(Eh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function wh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Oh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==bh(t)&&"function"!=typeof t?vh(e):t}(this,yh(t).call(this,e)),wh(vh(n),"onRenderRow",function(e,t,r){var o=n.props.group.saving,a=r.isLoading?Xe:Ze,i=-1!==o.indexOf(e.id)?et:a;return k.a.createElement(mh,{item:e,key:e.id,selected:r.isSelected,status:i})}),wh(vh(n),"onChange",function(e){n.setState({name:e.target.value})}),wh(vh(n),"onModule",function(e){n.setState({moduleId:e.target.value})}),wh(vh(n),"onSubmit",function(e){e.preventDefault(),n.props.onCreate({id:0,name:n.state.name,moduleId:n.state.moduleId}),n.setState({name:""})}),n.props.onLoadGroups(),n.state={name:"",moduleId:1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Eh(e,t)}(t,k.a.Component),n=t,(r=[{key:"getModules",value:function(){return[{value:"",text:Object(j.translate)("All modules")}].concat([{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}])}},{key:"render",value:function(){var e=this.props.group,t=e.status,n=e.total,r=e.table,o=e.rows,a=-1!==e.saving.indexOf(0);return k.a.createElement("div",null,k.a.createElement(hi,{status:t,table:r,onSearch:this.props.onSearch,ignoreFilter:["module"],key:Pt(r)}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t,bulk:[{id:"delete",name:Object(j.translate)("Delete")},{id:"enable",name:Object(j.translate)("Enable")},{id:"disable",name:Object(j.translate)("Disable")}]},k.a.createElement(lh,{selected:r.filter,options:this.getModules(),onFilter:this.props.onFilter,isEnabled:!0,key:Pt(r)})),k.a.createElement(Ha,{headers:[{name:"cb",check:!0},{name:"name",title:Object(j.translate)("Name"),primary:!0},{name:"redirects",title:Object(j.translate)("Redirects"),sortable:!1},{name:"module",title:Object(j.translate)("Module"),sortable:!1}],rows:o,total:n,row:this.onRenderRow,table:r,status:t,onSetAllSelected:this.props.onSetAllSelected,onSetOrderBy:this.props.onSetOrderBy}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t}),k.a.createElement("h2",null,Object(j.translate)("Add Group")),k.a.createElement("p",null,Object(j.translate)("Use groups to organise your redirects. Groups are assigned to a module, which affects how the redirects in that group work. If you are unsure then stick to the WordPress module.")),k.a.createElement("form",{onSubmit:this.onSubmit},k.a.createElement("table",{className:"form-table"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",{style:{width:"50px"}},Object(j.translate)("Name")),k.a.createElement("td",null,k.a.createElement("input",{size:"30",className:"regular-text",type:"text",name:"name",value:this.state.name,onChange:this.onChange,disabled:a}),k.a.createElement(Vr,{name:"id",value:this.state.moduleId,onChange:this.onModule,items:[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}],disabled:a})," ",k.a.createElement("input",{className:"button-primary",type:"submit",name:"add",value:"Add",disabled:a||""===this.state.name}))))),2===parseInt(this.state.moduleId,10)&&k.a.createElement("p",null,Object(j.translate)("Note that you will need to set the Apache module path in your Redirection options."))))}}])&&gh(n.prototype,r),o&&gh(n,o),t}();var xh=Te(function(e){return{group:e.group}},function(e){return{onLoadGroups:function(){e(Bf())},onSearch:function(t){e(Wf(t))},onChangePage:function(t){e(Vf(t))},onAction:function(t){e(Uf(t))},onSetAllSelected:function(t){e(qf(t))},onSetOrderBy:function(t,n){e(zf(t,n))},onFilter:function(t){e(Hf("module",t))},onCreate:function(t){e(Lf(t))}}})(Oh),Sh=function(e){var t=e.item,n=t.action_code,r=t.action_data,o=e.http,a=o.status,i=o.headers,l=void 0===i?[]:i,u=l.find(function(e){return"location"===e.name}),s=yt(l),c=n===a&&u&&u.value===r.url&&s,p=r.url_from?r.url_from:r.url;return k.a.createElement("div",{className:"redirection-httpcheck_results"},k.a.createElement("div",{className:"redirection-httpcheck_status"},c&&k.a.createElement("span",{className:"dashicons dashicons-yes"}),!c&&k.a.createElement("span",{className:"dashicons dashicons-no"})),k.a.createElement("div",{className:"redirection-httpcheck_info"},k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Expected"),": "),k.a.createElement("span",null,Object(j.translate)("{{code}}%(status)d{{/code}} to {{code}}%(target)s{{/code}}",{args:{status:n,target:p},components:{code:k.a.createElement("code",null)}}))),k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Found"),": "),k.a.createElement("span",null,u?Object(j.translate)("{{code}}%(status)d{{/code}} to {{code}}%(url)s{{/code}}",{args:{status:a,url:u.value},components:{code:k.a.createElement("code",null)}}):a)),k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Agent"),": "),k.a.createElement("span",null,s?Object(j.translate)("Using Redirection"):Object(j.translate)("Not using Redirection"))),u&&!s&&k.a.createElement("p",null,k.a.createElement(Wr,{url:"https://redirection.me/support/problems/url-not-redirecting/"},Object(j.translate)("What does this mean?")))))};n(129);function kh(e){return(kh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _h(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ch(e,t){return!t||"object"!==kh(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function jh(e){return(jh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Ph(e,t){return(Ph=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var Th=function(e){function t(e){var n,r,o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=Ch(this,jh(t).call(this,e))).props.onGet((r=n.getServer(e.item),o=e.item.url,r.replace(/\/$/,"")+"/"+o.replace(/^\//,""))),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ph(e,t)}(t,k.a.Component),n=t,(r=[{key:"getServer",value:function(e){return"server"===e.match_type?e.action_data.server:document.location.origin}},{key:"componentWillUnmount",value:function(){this.props.onClearHttp()}},{key:"renderError",value:function(){var e=this.props.error;return k.a.createElement("div",{className:"redirection-modal_error"},k.a.createElement("h2",null,Object(j.translate)("Error")),k.a.createElement("p",null,Object(j.translate)("Something went wrong obtaining this information")),k.a.createElement("p",null,k.a.createElement("code",null,e.message)))}},{key:"componentDidUpdate",value:function(){this.props.parent.resize()}},{key:"render",value:function(){var e=this.props,t=e.status,n=e.http,r=e.item,o=to()({"redirection-httpcheck":!0,"redirection-modal_loading":t===Xe,"redirection-httpcheck_small":t===Je});return k.a.createElement("div",{className:o},t===Xe&&k.a.createElement(Lo,null),t===Je&&this.renderError(),t===Ze&&n&&k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Check redirect for: {{code}}%s{{/code}}",{args:[n.url],components:{code:k.a.createElement("code",null)}})),k.a.createElement(Sh,{http:n,item:r}),k.a.createElement(Mi,null)))}}])&&_h(n.prototype,r),o&&_h(n,o),t}();var Ah=Te(function(e){var t=e.info;return{status:t.status,error:t.error,http:t.http}},function(e){return{onGet:function(t){e(No(t))},onClearHttp:function(){e(Fo())}}})(Th);function Dh(e){return(Dh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Rh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ih(e){return(Ih=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Nh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Fh(e,t){return(Fh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Lh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Mh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==Dh(t)&&"function"!=typeof t?Nh(e):t}(this,Ih(t).call(this,e)),Lh(Nh(n),"onEdit",function(e){e.preventDefault(),n.setState({editing:!0})}),Lh(Nh(n),"onCancel",function(e){e.preventDefault(),n.setState({editing:!1})}),Lh(Nh(n),"onDelete",function(e){e.preventDefault(),n.props.onTableAction("delete",n.props.item.id)}),Lh(Nh(n),"onDisable",function(e){e.preventDefault(),n.props.onTableAction("disable",n.props.item.id)}),Lh(Nh(n),"onEnable",function(e){e.preventDefault(),n.props.onTableAction("enable",n.props.item.id)}),Lh(Nh(n),"onSelected",function(){n.props.onSetSelected([n.props.item.id])}),Lh(Nh(n),"onCheck",function(e){e.preventDefault(),n.setState({showCheck:!0})}),Lh(Nh(n),"closeCheck",function(){n.setState({showCheck:!1})}),n.state={editing:!1,showCheck:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Fh(e,t)}(t,k.a.Component),n=t,(r=[{key:"getMenu",value:function(){var e=this.props.item,t=e.enabled,n=e.regex,r=e.action_type,o=[];return t&&o.push([Object(j.translate)("Edit"),this.onEdit]),o.push([Object(j.translate)("Delete"),this.onDelete]),t?(o.push([Object(j.translate)("Disable"),this.onDisable]),n||"url"!==r||o.push([Object(j.translate)("Check Redirect"),this.onCheck])):o.push([Object(j.translate)("Enable"),this.onEnable]),o.map(function(e,t){return k.a.createElement("a",{key:t,href:"#",onClick:e[1]},e[0])}).reduce(function(e,t){return[e," | ",t]})}},{key:"getCode",value:function(){var e=this.props.item,t=e.action_code,n=e.action_type;return"pass"===n?Object(j.translate)("pass"):"nothing"===n?"-":t}},{key:"getTarget",value:function(){var e=this.props.item,t=e.match_type,n=e.action_data;return t===cc?n.url:null}},{key:"getServerUrl",value:function(e,t){return"server"===t?this.props.item.action_data.server+e:e}},{key:"getUrl",value:function(e,t){return e=this.getServerUrl(e,t),this.props.item.enabled?e:k.a.createElement("strike",null,e)}},{key:"getName",value:function(e,t){var n=this.props.item,r=n.regex,o=n.match_type;if(t)return this.props.item.enabled?t:k.a.createElement("strike",null,t);var a=this.getUrl(e,o);return r?a:k.a.createElement(Wr,{url:this.getServerUrl(e,o)},a)}},{key:"renderSource",value:function(e,t,n){var r=this.getName(e,t);return k.a.createElement("td",{className:"column-primary column-url has-row-actions"},r,k.a.createElement("br",null),k.a.createElement("span",{className:"target"},this.getTarget()),k.a.createElement(xi,{disabled:n},this.getMenu()))}},{key:"renderEditColumns",value:function(){return k.a.createElement("td",{className:"column-primary column-url",colSpan:"4"},k.a.createElement(tf,{item:this.props.item,onCancel:this.onCancel}))}},{key:"renderCheck",value:function(){return k.a.createElement(so,{onClose:this.closeCheck,padding:!1},k.a.createElement(Ah,{item:this.props.item}))}},{key:"renderViewColumns",value:function(e){var t=this.props.item,n=t.url,r=t.hits,o=t.last_access,a=t.title,i=t.position;return k.a.createElement(k.a.Fragment,null,this.renderSource(n,a,e),k.a.createElement("td",{className:"column-position"},Object(j.numberFormat)(i),this.state.showCheck&&this.renderCheck()),k.a.createElement("td",{className:"column-last_count"},Object(j.numberFormat)(r)),k.a.createElement("td",{className:"column_last_access"},o))}},{key:"render",value:function(){var e=this.props.item,t=e.id,n=e.enabled,r=this.props,o=r.selected,a=r.status,i=a===Xe,l=a===et,u=!n||i||l,s=to()({disabled:u});return k.a.createElement("tr",{className:s},k.a.createElement("th",{scope:"row",className:"check-column"},!l&&k.a.createElement("input",{type:"checkbox",name:"item[]",value:t,disabled:i,checked:o,onChange:this.onSelected}),l&&k.a.createElement(Lo,{size:"small"})),k.a.createElement("td",{className:"column-code"},this.getCode()),this.state.editing?this.renderEditColumns():this.renderViewColumns(l))}}])&&Rh(n.prototype,r),o&&Rh(n,o),t}();var Uh=Te(null,function(e){return{onSetSelected:function(t){e(Wp(t))},onTableAction:function(t,n){e(Lp(t,n))}}})(Mh);function Bh(e){return(Bh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function zh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Vh(e){return(Vh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Wh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Hh(e,t){return(Hh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var Gh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=function(e,t){return!t||"object"!==Bh(t)&&"function"!=typeof t?Wh(e):t}(this,Vh(t).call(this,e))).handleRender=n.renderRow.bind(Wh(n)),n.props.onLoadRedirects(),n.props.onLoadGroups(),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Hh(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderRow",value:function(e,t,n){var r=this.props.redirect.saving,o=n.isLoading?Xe:Ze,a=-1!==r.indexOf(e.id)?et:o;return k.a.createElement(Uh,{item:e,key:t,selected:n.isSelected,status:a})}},{key:"getGroups",value:function(e){return[{value:0,text:Object(j.translate)("All groups")}].concat(Rc(e))}},{key:"renderNew",value:function(){var e=this.props.redirect.addTop,t=to()({"add-new":!0,edit:!0,addTop:e});return k.a.createElement(k.a.Fragment,null,!e&&k.a.createElement("h2",null,Object(j.translate)("Add new redirection")),k.a.createElement("div",{className:t},k.a.createElement(tf,{item:vc("",0,this.props.defaultFlags),saveButton:Object(j.translate)("Add Redirect"),autoFocus:e})))}},{key:"canFilter",value:function(e,t){return e.status===Ze&&t!==Xe}},{key:"render",value:function(){var e=this.props.redirect,t=e.status,n=e.total,r=e.table,o=e.rows,a=e.addTop,i=this.props.group,l=t===Ze&&i.status===Ze;return k.a.createElement("div",{className:"redirects"},a&&this.renderNew(),k.a.createElement(hi,{status:t,table:r,onSearch:this.props.onSearch,ignoreFilter:["group"]}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,bulk:[{id:"delete",name:Object(j.translate)("Delete")},{id:"enable",name:Object(j.translate)("Enable")},{id:"disable",name:Object(j.translate)("Disable")},{id:"reset",name:Object(j.translate)("Reset hits")}],status:t},k.a.createElement(lh,{selected:r.filter?r.filter:"0",options:this.getGroups(i.rows),isEnabled:this.canFilter(i,t),onFilter:this.props.onFilter,key:Pt(r)})),k.a.createElement(Ha,{headers:[{name:"cb",check:!0},{name:"code",title:Object(j.translate)("Type"),sortable:!1},{name:"url",title:Object(j.translate)("URL"),primary:!0},{name:"position",title:Object(j.translate)("Pos")},{name:"last_count",title:Object(j.translate)("Hits")},{name:"last_access",title:Object(j.translate)("Last Access")}],rows:o,total:n,row:this.handleRender,table:r,status:t,onSetAllSelected:this.props.onSetAllSelected,onSetOrderBy:this.props.onSetOrderBy}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t}),l&&!a&&this.renderNew())}}])&&zh(n.prototype,r),o&&zh(n,o),t}();var qh=Te(function(e){return{redirect:e.redirect,group:e.group,defaultFlags:sl(e)}},function(e){return{onLoadGroups:function(){e(Bf())},onLoadRedirects:function(t){e(Mp(t))},onSearch:function(t){e(zp(t))},onChangePage:function(t){e(Bp(t))},onAction:function(t){e(Lp(t))},onSetAllSelected:function(t){e(Hp(t))},onSetOrderBy:function(t,n){e(Up(t,n))},onFilter:function(t){e(Vp("group",t))}}})(Gh),$h=!!document.documentElement.currentStyle,Yh={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},Kh=["letter-spacing","line-height","font-family","font-weight","font-size","font-style","tab-size","text-rendering","text-transform","width","text-indent","padding-top","padding-right","padding-bottom","padding-left","border-top-width","border-right-width","border-bottom-width","border-left-width","box-sizing"],Qh={},Xh=document.createElement("textarea"),Jh=function(e){Object.keys(Yh).forEach(function(t){e.style.setProperty(t,Yh[t],"important")})};function Zh(e,t,n,r,o){void 0===n&&(n=!1),void 0===r&&(r=null),void 0===o&&(o=null),null===Xh.parentNode&&document.body.appendChild(Xh);var a=function(e,t,n){void 0===n&&(n=!1);if(n&&Qh[t])return Qh[t];var r=window.getComputedStyle(e);if(null===r)return null;var o=Kh.reduce(function(e,t){return e[t]=r.getPropertyValue(t),e},{}),a=o["box-sizing"];if(""===a)return null;$h&&"border-box"===a&&(o.width=parseFloat(o.width)+parseFloat(r["border-right-width"])+parseFloat(r["border-left-width"])+parseFloat(r["padding-right"])+parseFloat(r["padding-left"])+"px");var i=parseFloat(o["padding-bottom"])+parseFloat(o["padding-top"]),l=parseFloat(o["border-bottom-width"])+parseFloat(o["border-top-width"]),u={sizingStyle:o,paddingSize:i,borderSize:l,boxSizing:a};n&&(Qh[t]=u);return u}(e,t,n);if(null===a)return null;var i=a.paddingSize,l=a.borderSize,u=a.boxSizing,s=a.sizingStyle;Object.keys(s).forEach(function(e){Xh.style[e]=s[e]}),Jh(Xh),Xh.value=e.value||e.placeholder||"x";var c=-1/0,p=1/0,f=Xh.scrollHeight;"border-box"===u?f+=l:"content-box"===u&&(f-=i),Xh.value="x";var d=Xh.scrollHeight-i,h=Math.floor(f/d);return null!==r&&(c=d*r,"border-box"===u&&(c=c+i+l),f=Math.max(c,f)),null!==o&&(p=d*o,"border-box"===u&&(p=p+i+l),f=Math.min(p,f)),{height:f,minHeight:c,maxHeight:p,rowCount:Math.floor(f/d),valueRowCount:h}}Jh(Xh);var em=function(){},tm=0,nm=function(e){function t(t){var n;return(n=e.call(this,t)||this)._onRef=function(e){n._ref=e;var t=n.props.inputRef;"function"!=typeof t?t.current=e:t(e)},n._onChange=function(e){n._controlled||n._resizeComponent(),n.props.onChange(e,T(T(n)))},n._resizeComponent=function(e){void 0===e&&(e=em);var t=Zh(n._ref,n._uid,n.props.useCacheForDOMMeasurements,n.props.minRows,n.props.maxRows);if(null!==t){var r=t.height,o=t.minHeight,a=t.maxHeight,i=t.rowCount,l=t.valueRowCount;n.rowCount=i,n.valueRowCount=l,n.state.height===r&&n.state.minHeight===o&&n.state.maxHeight===a?e():n.setState({height:r,minHeight:o,maxHeight:a},e)}else e()},n.state={height:t.style&&t.style.height||0,minHeight:-1/0,maxHeight:1/0},n._uid=tm++,n._controlled=void 0!==t.value,n._resizeLock=!1,n}A(t,e);var n=t.prototype;return n.render=function(){var e=this.props,t=(e.inputRef,e.maxRows,e.minRows,e.onHeightChange,e.useCacheForDOMMeasurements,W(e,["inputRef","maxRows","minRows","onHeightChange","useCacheForDOMMeasurements"]));return t.style=V({},t.style,{height:this.state.height}),Math.max(t.style.maxHeight||1/0,this.state.maxHeight)<this.state.height&&(t.style.overflow="hidden"),k.a.createElement("textarea",V({},t,{onChange:this._onChange,ref:this._onRef}))},n.componentDidMount=function(){var e=this;this._resizeComponent(),this._resizeListener=function(){e._resizeLock||(e._resizeLock=!0,e._resizeComponent(function(){e._resizeLock=!1}))},window.addEventListener("resize",this._resizeListener)},n.componentDidUpdate=function(e,t){e!==this.props&&this._resizeComponent(),this.state.height!==t.height&&this.props.onHeightChange(this.state.height,this)},n.componentWillUnmount=function(){window.removeEventListener("resize",this._resizeListener),function(e){delete Qh[e]}(this._uid)},t}(k.a.Component);nm.defaultProps={inputRef:em,onChange:em,onHeightChange:em,useCacheForDOMMeasurements:!1};var rm=nm,om=function(){return{type:rr}},am=function(){return{type:or}};n(131);function im(e){return(im="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function lm(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function um(e){return(um=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function sm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function cm(e,t){return(cm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var pm=function(e){function t(){var e,n,r,o,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var i=arguments.length,l=new Array(i),u=0;u<i;u++)l[u]=arguments[u];return n=function(e,t){return!t||"object"!==im(t)&&"function"!=typeof t?sm(e):t}(this,(e=um(t)).call.apply(e,[this].concat(l))),r=sm(n),a=function(){n.props.onClear()},(o="onClick")in r?Object.defineProperty(r,o,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[o]=a,n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&cm(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidUpdate",value:function(e){0===e.errors.length&&this.props.errors.length>0&&window.scrollTo(0,0)}},{key:"getDebug",value:function(e){for(var t=[Redirectioni10n.versions],n=0;n<e.length;n++){var r=e[n].request,o=void 0!==r&&r;t.push(""),t.push("Error: "+this.getErrorDetails(e[n])),o&&o.status&&o.statusText&&(t.push("Action: "+o.action),o.params&&t.push("Params: "+JSON.stringify(o.params)),t.push("Code: "+o.status+" "+o.statusText)),o&&t.push("Raw: "+(o.raw?o.raw:"-no data-"))}return t}},{key:"getErrorDetails",value:function(e){return 0===e.code?e.message:e.data&&e.data.wpdb?"".concat(e.message," (").concat(e.code,"): ").concat(e.data.wpdb):e.code?"".concat(e.message," (").concat(e.code,")"):e.message}},{key:"removeSameError",value:function(e){return e.filter(function(t,n){for(var r=n+1;n<e.length-1;n++){if(t.code&&e[r].code&&t.code===e[r].code)return!1;if(t.message&&e[r].message&&t.message===e[r].message)return!1}return!0})}},{key:"renderError",value:function(e){var t=this.removeSameError(e),n=this.getDebug(t),r="mailto:john@redirection.me?subject=Redirection%20Error&body="+encodeURIComponent(n.join("\n")),o="https://github.com/johngodley/redirection/issues/new?title=Redirection%20Error&body="+encodeURIComponent("```\n"+n.join("\n")+"\n```\n\n");return k.a.createElement("div",{className:"red-error"},k.a.createElement("div",{className:"closer",onClick:this.onClick},"✖"),k.a.createElement("h2",null,Object(j.translate)("Something went wrong 🙁")),k.a.createElement("div",{className:"red-error_title"},t.map(function(e,t){return k.a.createElement($o,{error:e,key:t})})),k.a.createElement(ha,null),k.a.createElement("h3",null,Object(j.translate)("What do I do next?")),k.a.createElement("ol",null,k.a.createElement("li",null,Object(j.translate)('Take a look at the {{link}}plugin status{{/link}}. It may be able to identify and "magic fix" the problem.',{components:{link:k.a.createElement("a",{href:"?page=redirection.php&sub=support"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Caching software{{/link}}, in particular Cloudflare, can cache the wrong thing. Try clearing all your caches.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/cloudflare/"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Please temporarily disable other plugins!{{/link}} This fixes so many problems.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/plugins/"})}})),k.a.createElement("li",null,Object(j.translate)("If you are using WordPress 5.2 or newer then look at your {{link}}Site Health{{/link}} and resolve any issues.",{components:{link:k.a.createElement(Wr,{url:"http://latest.local/wp-admin/site-health.php"})}}))),k.a.createElement("h3",null,Object(j.translate)("That didn't help")),k.a.createElement("p",null,Object(j.translate)("Please {{strong}}create an issue{{/strong}} or send it in an {{strong}}email{{/strong}}.",{components:{strong:k.a.createElement("strong",null)}})),k.a.createElement("p",null,k.a.createElement("a",{href:o,className:"button-primary"},Object(j.translate)("Create An Issue"))," ",k.a.createElement("a",{href:r,className:"button-secondary"},Object(j.translate)("Email"))),k.a.createElement("p",null,Object(j.translate)("Include these details in your report along with a description of what you were doing and a screenshot")),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:n.join("\n"),spellCheck:!1})))}},{key:"render",value:function(){var e=this.props.errors;return 0===e.length?null:this.renderError(e)}}])&&lm(n.prototype,r),o&&lm(n,o),t}();var fm=Te(function(e){return{errors:e.message.errors}},function(e){return{onClear:function(){e(om())}}})(pm);n(133);function dm(e){return(dm="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function hm(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function mm(e){return(mm=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function bm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function gm(e,t){return(gm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ym(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var vm=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==dm(t)&&"function"!=typeof t?bm(e):t}(this,mm(t).call(this,e)),ym(bm(n),"onClick",function(){n.state.shrunk?n.setState({shrunk:!1}):n.props.onClear()}),ym(bm(n),"onShrink",function(){n.setState({shrunk:!0})}),n.state={shrunk:!1,width:"auto"},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&gm(e,t)}(t,k.a.Component),n=t,(r=[{key:"getSnapshotBeforeUpdate",value:function(e){return this.props.notices!==e.notices&&(this.stopTimer(),this.setState({shrunk:!1}),this.startTimer()),null}},{key:"componentWillUnmount",value:function(){this.stopTimer()}},{key:"stopTimer",value:function(){clearTimeout(this.timer)}},{key:"startTimer",value:function(){this.timer=setTimeout(this.onShrink,5e3)}},{key:"getNotice",value:function(e){return e.length>1?e[e.length-1]+" ("+e.length+")":e[0]}},{key:"renderNotice",value:function(e){var t="notice notice-info redirection-notice"+(this.state.shrunk?" redirection-notice_shrunk":"");return k.a.createElement("div",{className:t,onClick:this.onClick},k.a.createElement("div",{className:"closer"},"✔"),k.a.createElement("p",null,this.state.shrunk?k.a.createElement("span",{title:Object(j.translate)("View notice")},"🔔"):this.getNotice(e)))}},{key:"render",value:function(){var e=this.props.notices;return 0===e.length?null:this.renderNotice(e)}}])&&hm(n.prototype,r),o&&hm(n,o),t}();var Em=Te(function(e){return{notices:e.message.notices}},function(e){return{onClear:function(){e(am())}}})(vm);n(135);function wm(e){return(wm="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Om(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function xm(e,t){return!t||"object"!==wm(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Sm(e){return(Sm=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function km(e,t){return(km=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var _m=function(e){function t(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),xm(this,Sm(t).call(this,e))}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&km(e,t)}(t,k.a.Component),n=t,(r=[{key:"getMessage",value:function(e){return e>1?Object(j.translate)("Saving...")+" ("+e+")":Object(j.translate)("Saving...")}},{key:"renderProgress",value:function(e){return k.a.createElement("div",{className:"notice notice-progress redirection-notice"},k.a.createElement(Lo,null),k.a.createElement("p",null,this.getMessage(e)))}},{key:"render",value:function(){var e=this.props.inProgress;return 0===e?null:this.renderProgress(e)}}])&&Om(n.prototype,r),o&&Om(n,o),t}();var Cm=Te(function(e){return{inProgress:e.message.inProgress}},null)(_m),jm=function(e){var t=e.item,n=e.isCurrent,r=e.onClick,o=Redirectioni10n.pluginRoot+(""===t.value?"":"&sub="+t.value);return k.a.createElement("li",null,k.a.createElement("a",{className:n?"current":"",href:o,onClick:function(e){e.preventDefault(),r(t.value,o)}},t.name))},Pm=(n(137),function(e){var t=e.onChangePage,n=gt();return k.a.createElement("div",{className:"subsubsub-container"},k.a.createElement("ul",{className:"subsubsub"},[{name:Object(j.translate)("Redirects"),value:""},{name:Object(j.translate)("Groups"),value:"groups"},{name:Object(j.translate)("Log"),value:"log"},{name:Object(j.translate)("404s"),value:"404s"},{name:Object(j.translate)("Import/Export"),value:"io"},{name:Object(j.translate)("Options"),value:"options"},{name:Object(j.translate)("Support"),value:"support"}].map(function(e,r){return k.a.createElement(jm,{key:r,item:e,isCurrent:n===e.value||"redirect"===n&&""===e.value,onClick:t})}).reduce(function(e,t){return[e," | ",t]})))}),Tm=n(22),Am=n.n(Tm),Dm=n(33),Rm=n.n(Dm),Im=n(20),Nm=n.n(Im),Fm=n(10),Lm=n.n(Fm),Mm=n(21),Um=n.n(Mm),Bm=function(e){return function(e){function t(){return Nm()(this,t),Lm()(this,e.apply(this,arguments))}return Um()(t,e),t.prototype.componentDidUpdate=function(){var e=this,t=Date.now(),n=!1;Object.keys(this.paths).forEach(function(r){var o=e.paths[r];if(o){n=!0;var a=o.style;a.transitionDuration=".3s, .3s, .3s, .06s",e.prevTimeStamp&&t-e.prevTimeStamp<100&&(a.transitionDuration="0s, 0s")}}),n&&(this.prevTimeStamp=Date.now())},t.prototype.render=function(){return e.prototype.render.call(this)},t}(e)},zm={className:"",percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,style:{},trailColor:"#D9D9D9",trailWidth:1},Vm=R.a.oneOfType([R.a.number,R.a.string]),Wm={className:R.a.string,percent:R.a.oneOfType([Vm,R.a.arrayOf(Vm)]),prefixCls:R.a.string,strokeColor:R.a.oneOfType([R.a.string,R.a.arrayOf(R.a.string)]),strokeLinecap:R.a.oneOf(["butt","round","square"]),strokeWidth:Vm,style:R.a.object,trailColor:R.a.string,trailWidth:Vm},Hm=function(e){function t(){var n,r,o;Nm()(this,t);for(var a=arguments.length,i=Array(a),l=0;l<a;l++)i[l]=arguments[l];return n=r=Lm()(this,e.call.apply(e,[this].concat(i))),r.paths={},o=n,Lm()(r,o)}return Um()(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.className,r=t.percent,o=t.prefixCls,a=t.strokeColor,i=t.strokeLinecap,l=t.strokeWidth,u=t.style,s=t.trailColor,c=t.trailWidth,p=Rm()(t,["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth"]);delete p.gapPosition;var f=Array.isArray(r)?r:[r],d=Array.isArray(a)?a:[a],h=l/2,m="M "+("round"===i?h:0)+","+h+"\n L "+("round"===i?100-l/2:100)+","+h,b="0 0 100 "+l,g=0;return k.a.createElement("svg",Am()({className:o+"-line "+n,viewBox:b,preserveAspectRatio:"none",style:u},p),k.a.createElement("path",{className:o+"-line-trail",d:m,strokeLinecap:i,stroke:s,strokeWidth:c||l,fillOpacity:"0"}),f.map(function(t,n){var r={strokeDasharray:t+"px, 100px",strokeDashoffset:"-"+g+"px",transition:"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},a=d[n]||d[d.length-1];return g+=t,k.a.createElement("path",{key:n,className:o+"-line-path",d:m,strokeLinecap:i,stroke:a,strokeWidth:l,fillOpacity:"0",ref:function(t){e.paths[n]=t},style:r})}))},t}(S.Component);Hm.propTypes=Wm,Hm.defaultProps=zm;var Gm=Bm(Hm),qm=function(e){function t(){var n,r,o;Nm()(this,t);for(var a=arguments.length,i=Array(a),l=0;l<a;l++)i[l]=arguments[l];return n=r=Lm()(this,e.call.apply(e,[this].concat(i))),r.paths={},o=n,Lm()(r,o)}return Um()(t,e),t.prototype.getPathStyles=function(e,t,n,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=50-r/2,i=0,l=-a,u=0,s=-2*a;switch(arguments[5]){case"left":i=-a,l=0,u=2*a,s=0;break;case"right":i=a,l=0,u=-2*a,s=0;break;case"bottom":l=a,s=2*a}var c="M 50,50 m "+i+","+l+"\n a "+a+","+a+" 0 1 1 "+u+","+-s+"\n a "+a+","+a+" 0 1 1 "+-u+","+s,p=2*Math.PI*a;return{pathString:c,pathStyle:{stroke:n,strokeDasharray:t/100*(p-o)+"px "+p+"px",strokeDashoffset:"-"+(o/2+e/100*(p-o))+"px",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"}}},t.prototype.getStokeList=function(){var e=this,t=this.props,n=t.prefixCls,r=t.percent,o=t.strokeColor,a=t.strokeWidth,i=t.strokeLinecap,l=t.gapDegree,u=t.gapPosition,s=Array.isArray(r)?r:[r],c=Array.isArray(o)?o:[o],p=0;return s.map(function(t,r){var o=c[r]||c[c.length-1],s=e.getPathStyles(p,t,o,a,l,u),f=s.pathString,d=s.pathStyle;return p+=t,k.a.createElement("path",{key:r,className:n+"-circle-path",d:f,strokeLinecap:i,strokeWidth:0===t?0:a,fillOpacity:"0",style:d,ref:function(t){e.paths[r]=t}})})},t.prototype.render=function(){var e=this.props,t=e.prefixCls,n=e.strokeWidth,r=e.trailWidth,o=e.gapDegree,a=e.gapPosition,i=e.trailColor,l=e.strokeLinecap,u=e.style,s=e.className,c=Rm()(e,["prefixCls","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className"]),p=this.getPathStyles(0,100,i,n,o,a),f=p.pathString,d=p.pathStyle;return delete c.percent,delete c.strokeColor,k.a.createElement("svg",Am()({className:t+"-circle "+s,viewBox:"0 0 100 100",style:u},c),k.a.createElement("path",{className:t+"-circle-trail",d:f,stroke:i,strokeLinecap:l,strokeWidth:r||n,fillOpacity:"0",style:d}),this.getStokeList())},t}(S.Component);qm.propTypes=Am()({},Wm,{gapPosition:R.a.oneOf(["top","bottom","left","right"])}),qm.defaultProps=Am()({},zm,{gapPosition:"top"});Bm(qm);function $m(e){return($m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ym(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Km(e){return(Km=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Qm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Xm(e,t){return(Xm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Jm(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Zm=function(e){function t(){var e,n;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return n=function(e,t){return!t||"object"!==$m(t)&&"function"!=typeof t?Qm(e):t}(this,(e=Km(t)).call.apply(e,[this].concat(o))),Jm(Qm(n),"onWarning",function(e){return e.returnValue=n.props.message,e.returnValue}),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Xm(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidMount",value:function(){this.props.prevent&&this.enable()}},{key:"componentWillUnmount",value:function(){this.props.prevent&&this.disable()}},{key:"componentDidUpdate",value:function(e){e.prevent!==this.props.prevent&&(this.props.prevent?this.enable():this.disable())}},{key:"enable",value:function(){window.addEventListener("beforeunload",this.onWarning)}},{key:"disable",value:function(){window.removeEventListener("beforeunload",this.onWarning)}},{key:"render",value:function(){return null}}])&&Ym(n.prototype,r),o&&Ym(n,o),t}();Jm(Zm,"defaultProps",{prevent:!0});var eb=Zm;n(176);function tb(e){return(tb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function nb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function rb(e){return(rb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ob(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ab(e,t){return(ab=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ib(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var lb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==tb(t)&&"function"!=typeof t?ob(e):t}(this,rb(t).call(this,e)),ib(ob(n),"onRetry",function(e){e.preventDefault(),n.props.onUpgrade()}),ib(ob(n),"onSkip",function(e){e.preventDefault(),n.props.onUpgrade("skip")}),ib(ob(n),"onStop",function(e){e.preventDefault(),n.props.onUpgrade("stop")}),ib(ob(n),"onFinish",function(e){e.preventDefault(),n.props.onFinished&&n.props.onFinished(),n.props.onFinish()}),ib(ob(n),"onComplete",function(){n.props.onComplete(Redirectioni10n.database.next)}),n.hasWork(e)&&!e.manual&&e.onUpgrade(),n.state={looped:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ab(e,t)}(t,k.a.Component),n=t,(r=[{key:"hasWork",value:function(e){var t=e.status;return"error"!==e.result&&("need-install"===t||"need-update"===t)}},{key:"hasFinished",value:function(e){return"finish-install"===e||"finish-update"===e}},{key:"componentDidUpdate",value:function(e){var t=this;e.time!==this.props.time&&this.hasWork(this.props)&&(e.complete===this.props.complete&&"error"!==this.props.status?this.setState({looped:!0}):setTimeout(function(){t.props.onUpgrade()},1e3))}},{key:"getErrorMessage",value:function(){var e=this.props,t=e.debug,n=void 0===t?[]:t,r=e.reason;return[r?"Message: "+r:null,"Installed: "+e.current,"Next: "+e.next,n.length>0?"Debug: "+n.join("\n"):null].filter(function(e){return e}).join("\n")}},{key:"renderLoopError",value:function(){return this.renderError(Object(j.translate)("A loop was detected and the upgrade has been stopped. This usually indicates {{support}}your site is cached{{/support}} and database changes are not being saved.",{components:{support:k.a.createElement("a",{href:"https://redirection.me/support/problems/data-is-not-saved/"})}}),!1)}},{key:"renderError",value:function(e){var t=this.props.current,n=this.getErrorMessage();return k.a.createElement("div",{className:"redirection-database_error red-error"},k.a.createElement("h3",null,Object(j.translate)("Database problem")),k.a.createElement("p",null,e),k.a.createElement("p",null,k.a.createElement("button",{className:"button button-primary",onClick:this.onRetry},Object(j.translate)("Try again"))," ","-"!==t&&k.a.createElement("button",{className:"button button-secondary",onClick:this.onSkip},Object(j.translate)("Skip this stage"))," ","-"!==t&&k.a.createElement("button",{className:"button button-secondary",onClick:this.onStop},Object(j.translate)("Stop upgrade"))),k.a.createElement("p",null,Object(j.translate)("If you want to {{support}}ask for support{{/support}} please include these details:",{components:{support:k.a.createElement("a",{href:"mailto:john@redirection.me?subject=Redirection%20Database&body="+encodeURIComponent("Redirection: "+Redirectioni10n.versions)})}})),k.a.createElement(rm,{readOnly:!0,value:n,rows:"15"}))}},{key:"renderIntro",value:function(){return this.hasWork(this.props)?k.a.createElement("p",null,Object(j.translate)("Please remain on this page until complete.")):null}},{key:"getTitle",value:function(){return"need-update"===this.props.status?Object(j.translate)("Upgrading Redirection"):Object(j.translate)("Setting up Redirection")}},{key:"render",value:function(){var e=this.props,t=e.status,n=e.complete,r=void 0===n?0:n,o=e.reason,a=e.result,i=e.manual,l=this.state.looped,u="ok"===a&&!this.hasFinished(t)&&!l;return i?k.a.createElement("div",{className:"redirection-database"},k.a.createElement("h1",null,Object(j.translate)("Manual Install")),k.a.createElement("p",null,Object(j.translate)("If your site needs special database permissions, or you would rather do it yourself, you can manually run the following SQL.")," ",Object(j.translate)('Click "Finished! 🎉" when finished.')),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:Redirectioni10n.database.manual.join(";\n\n")+";",spellCheck:!1})),k.a.createElement("button",{className:"button button-primary",onClick:this.onComplete},Object(j.translate)("Finished! 🎉")),k.a.createElement("p",null,Object(j.translate)("If you do not complete the manual install you will be returned here."))):k.a.createElement("div",{className:"redirection-database"},k.a.createElement(eb,{message:Object(j.translate)("Leaving before the process has completed may cause problems."),prevent:"error"!==a&&a!==Je}),k.a.createElement("h1",null,this.getTitle()),"error"!==a&&this.renderIntro(),k.a.createElement("div",{className:"redirection-database_progress"},k.a.createElement("h3",null,Object(j.translate)("Progress: %(complete)d%%",{args:{complete:r}})),k.a.createElement(Gm,{percent:r,strokeWidth:"4",trailWidth:"4",strokeLinecap:"square"}),o&&"ok"===a&&k.a.createElement("p",null,o),u&&k.a.createElement("div",{className:"redirection-database_spinner"},k.a.createElement(Lo,null)),"error"===a&&this.renderError(o),l&&this.renderLoopError(),this.hasFinished(t)&&k.a.createElement("button",{className:"button button-primary",onClick:this.onFinish},Object(j.translate)("Finished! 🎉"))))}}])&&nb(n.prototype,r),o&&nb(n,o),t}();ib(lb,"defaultProps",{manual:!1});var ub=Te(function(e){var t=e.settings.database,n=t.status,r=t.complete;return{status:n,result:t.result,complete:r,reason:t.reason,debug:t.debug,time:t.time,current:t.current,next:t.next}},function(e){return{onUpgrade:function(t){e(Nr(t))},onFinish:function(){e(Fr())},onComplete:function(t){e(Rr("database",t))}}})(lb);n(178);function sb(e){return(sb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function cb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function pb(e){return(pb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function fb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function db(e,t){return(db=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function hb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var mb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==sb(t)&&"function"!=typeof t?fb(e):t}(this,pb(t).call(this,e)),hb(fb(n),"nextStep",function(e){e.preventDefault(),n.setState({step:n.state.step+1})}),hb(fb(n),"prevStep",function(e){e.preventDefault(),n.setState({step:n.state.step-1})}),hb(fb(n),"finishSetup",function(e){var t=n.getFirstApi();Redirectioni10n.api.routes[t]&&Rt(Redirectioni10n.api.routes[t]),e.preventDefault(),n.setState({step:3})}),hb(fb(n),"onChange",function(e){var t=hb({},e.target.name,e.target.checked);"log"!==e.target.name||e.target.checked||(t.ip=!1),n.setState(t)}),hb(fb(n),"startManual",function(e){e.preventDefault(),n.afterFinishInstall(),n.setState({step:3,manual:!0})}),hb(fb(n),"stopManual",function(e){e.preventDefault(),n.setState({step:3,manual:!1})}),hb(fb(n),"afterFinishInstall",function(){var e=n.state,t=e.ip,r=e.log,o=e.monitor;n.props.onSaveSettings({expire_redirect:r?7:-1,expire_404:r?7:-1,ip_logging:t?1:0,rest_api:n.getFirstApi(),monitor_types:o?["post","page"]:void 0,monitor_post:o?1:0})}),n.state={step:0,monitor:!1,log:!1,ip:!1,manual:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&db(e,t)}(t,k.a.Component),n=t,(r=[{key:"getFirstApi",value:function(){for(var e=this.props.apiTest,t=Object.keys(e),n=0;n<t.length;n++)if(e[n]&&"ok"===e[n].GET.status&&"ok"===e[n].POST.status)return n;return 0}},{key:"renderStep0",value:function(){return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Welcome to Redirection 🚀🎉")),k.a.createElement("p",null,Object(j.translate)("Thank you for installing and using Redirection v%(version)s. This plugin will allow you to manage 301 redirections, keep track of 404 errors, and improve your site, with no knowledge of Apache or Nginx needed.",{args:{version:Redirectioni10n.version}})),k.a.createElement("p",null,Object(j.translate)("Redirection is designed to be used on sites with a few redirects to sites with thousands of redirects.")),k.a.createElement("h3",null,Object(j.translate)("How do I use this plugin?")),k.a.createElement("p",null,Object(j.translate)("A simple redirect involves setting a {{strong}}source URL{{/strong}} (the old URL) and a {{strong}}target URL{{/strong}} (the new URL). Here's an example:",{components:{strong:k.a.createElement("strong",null)}})),k.a.createElement("table",{className:"edit edit-redirection"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",null,Object(j.translate)("Source URL"),":"),k.a.createElement("td",null,k.a.createElement("input",{type:"text",readOnly:!0,value:Object(j.translate)("(Example) The source URL is your old or original URL")}))),k.a.createElement("tr",null,k.a.createElement("th",null,Object(j.translate)("Target URL"),":"),k.a.createElement("td",null,k.a.createElement("input",{type:"text",readOnly:!0,value:Object(j.translate)("(Example) The target URL is the new URL")}))))),k.a.createElement("p",null,Object(j.translate)("That's all there is to it - you are now redirecting! Note that the above is just an example - you can now enter a redirect.")),k.a.createElement("p",null,Object(j.translate)("Full documentation can be found on the {{link}}Redirection website.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/"})}})),k.a.createElement("h3",null,Object(j.translate)("Some features you may find useful are"),":"),k.a.createElement("ul",null,k.a.createElement("li",null,Object(j.translate)("{{link}}Monitor 404 errors{{/link}}, get detailed information about the visitor, and fix any problems",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/tracking-404-errors/"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Import{{/link}} from .htaccess, CSV, and a variety of other plugins",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/import-export-redirects/"})}})),k.a.createElement("li",null,Object(j.translate)("More powerful URL matching, including {{regular}}regular expressions{{/regular}}, and {{other}}other conditions{{/other}}",{components:{regular:k.a.createElement(Wr,{url:"https://redirection.me/support/redirect-regular-expressions/"}),other:k.a.createElement(Wr,{url:"https://redirection.me/support/matching-redirects/"})}})),k.a.createElement("li",null,Object(j.translate)("Check a URL is being redirected"))),k.a.createElement("h3",null,Object(j.translate)("What's next?")),k.a.createElement("p",null,Object(j.translate)("First you will be asked a few questions, and then Redirection will set up your database.")),k.a.createElement("p",null,Object(j.translate)("When ready please press the button to continue.")),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.nextStep},Object(j.translate)("Start Setup"))))}},{key:"renderStep1",value:function(){var e=this.state,t=e.monitor,n=e.log,r=e.ip;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Basic Setup")),k.a.createElement("p",null,Object(j.translate)("These are some options you may want to enable now. They can be changed at any time.")),k.a.createElement("div",{className:"wizard-option"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"monitor",type:"checkbox",checked:t,onChange:this.onChange})," ",Object(j.translate)("Monitor permalink changes in WordPress posts and pages"),".")),k.a.createElement("p",null,Object(j.translate)("If you change the permalink in a post or page then Redirection can automatically create a redirect for you.")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/options/#monitor"})}}))),k.a.createElement("div",{className:"wizard-option"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"log",type:"checkbox",checked:n,onChange:this.onChange})," ",Object(j.translate)("Keep a log of all redirects and 404 errors."))),k.a.createElement("p",null,Object(j.translate)("Storing logs for redirects and 404s will allow you to see what is happening on your site. This will increase your database storage requirements.")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/logs/"})}}))),k.a.createElement("div",{className:n?"wizard-option":"wizard-option wizard-option_disabled"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"ip",type:"checkbox",disabled:!n,checked:r,onChange:this.onChange})," ",Object(j.translate)("Store IP information for redirects and 404 errors."))),k.a.createElement("p",null,Object(j.translate)("Storing the IP address allows you to perform additional log actions. Note that you will need to adhere to local laws regarding the collection of data (for example GDPR).")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/privacy-gdpr/"})}}))),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.nextStep},Object(j.translate)("Continue Setup")),"  ",k.a.createElement("button",{className:"button",onClick:this.prevStep},Object(j.translate)("Go back"))))}},{key:"renderStep2",value:function(){var e=Oi.parse(Dt()),t=Oi.parse(Redirectioni10n.pluginBaseUrl),n=e.protocol!==t.protocol||e.host!==t.host;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("REST API")),k.a.createElement("p",null,Object(j.translate)("Redirection uses the {{link}}WordPress REST API{{/link}} to communicate with WordPress. This is enabled and working by default. Sometimes the REST API is blocked by:",{components:{link:k.a.createElement(Wr,{url:"https://developer.wordpress.org/rest-api/"})}})),k.a.createElement("ul",null,k.a.createElement("li",null,Object(j.translate)("A security plugin (e.g Wordfence)")),k.a.createElement("li",null,Object(j.translate)("A server firewall or other server configuration (e.g OVH)")),k.a.createElement("li",null,Object(j.translate)("Caching software (e.g Cloudflare)")),k.a.createElement("li",null,Object(j.translate)("Some other plugin that blocks the REST API"))),k.a.createElement("p",null,Object(j.translate)("If you do experience a problem then please consult your plugin documentation, or try contacting your host support. This is generally {{link}}not a problem caused by Redirection{{/link}}.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/rest-api/"})}})),n&&k.a.createElement("div",{className:"red-error"},Object(j.translate)("You have different URLs configured on your WordPress Settings > General page, which is usually an indication of a misconfiguration, and it can cause problems with the REST API. Please review your settings."),k.a.createElement("p",null,k.a.createElement("code",null,e.protocol+"//"+e.host)),k.a.createElement("p",null,k.a.createElement("code",null,t.protocol+"//"+t.host))),k.a.createElement(ha,{allowChange:!1}),k.a.createElement("p",null,Object(j.translate)("You will need at least one working REST API to continue.")),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.finishSetup},Object(j.translate)("Finish Setup")),"  ",k.a.createElement("button",{className:"button",onClick:this.prevStep},Object(j.translate)("Go back"))))}},{key:"renderStep3",value:function(){return k.a.createElement(ub,{onFinished:this.afterFinishInstall,manual:this.state.manual})}},{key:"getContentForStep",value:function(e){return 3===e?this.renderStep3():2===e?this.renderStep2():1===e?this.renderStep1():this.renderStep0()}},{key:"render",value:function(){var e=this.state,t=e.step,n=e.manual,r=this.props.result,o=this.getContentForStep(t);return k.a.createElement(k.a.Fragment,null,r===Je&&k.a.createElement(fm,null),k.a.createElement("div",{className:"wizard-wrapper"},0!==t&&3!==t&&k.a.createElement("h1",null,Object(j.translate)("Redirection")),k.a.createElement("div",{className:"wizard"},o)),k.a.createElement("div",{className:"wizard-support"},k.a.createElement(Wr,{url:"https://redirection.me/contact/"},Object(j.translate)("I need support!")),2===t&&k.a.createElement(k.a.Fragment,null," | ",k.a.createElement("a",{href:"#",onClick:this.startManual},Object(j.translate)("Manual Install"))),3===t&&n&&k.a.createElement(k.a.Fragment,null," | ",k.a.createElement("a",{href:"#",onClick:this.stopManual},Object(j.translate)("Automatic Install")))))}}])&&cb(n.prototype,r),o&&cb(n,o),t}();var bb=Te(function(e){return{result:e.settings.database.result,apiTest:e.settings.apiTest}},function(e){return{onSaveSettings:function(t){e(Tr(t))}}})(mb);function gb(e){return(gb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function yb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function vb(e){return(vb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Eb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function wb(e,t){return(wb=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ob(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var xb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==gb(t)&&"function"!=typeof t?Eb(e):t}(this,vb(t).call(this,e)),Ob(Eb(n),"onToggle",function(e){e.preventDefault(),n.setState({showManual:!n.state.showManual})}),Ob(Eb(n),"onComplete",function(){n.props.onComplete(Redirectioni10n.database.next)}),n.state={showManual:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&wb(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderManual",value:function(){return k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)("If your site needs special database permissions, or you would rather do it yourself, you can manually run the following SQL.")," ",Object(j.translate)('Click "Complete Upgrade" when finished.')),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:Redirectioni10n.database.manual.join(";\n")+";",spellCheck:!1})),k.a.createElement("p",null,k.a.createElement("button",{className:"button-primary",onClick:this.onComplete},Object(j.translate)("Complete Upgrade"))))}},{key:"renderStandard",value:function(){var e=this.props.onShowUpgrade;return k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)('Click the "Upgrade Database" button to automatically upgrade the database.')),k.a.createElement("p",null,k.a.createElement("input",{className:"button-primary",type:"submit",value:Object(j.translate)("Upgrade Database"),onClick:e})))}},{key:"render",value:function(){var e,t=this.props,n=t.showDatabase,r=t.result,o=this.state.showManual;return n?k.a.createElement(k.a.Fragment,null,r===Je&&k.a.createElement(fm,null),k.a.createElement("div",{className:"wizard-wrapper"},k.a.createElement("div",{className:"wizard"},k.a.createElement(ub,null)))):k.a.createElement("div",{className:"wrap redirection"},k.a.createElement("h1",{className:"wp-heading-inline"},Object(j.translate)("Upgrade Required")),k.a.createElement("div",{className:"red-error"},k.a.createElement("h3",null,Object(j.translate)("Redirection database needs upgrading")),(e=Redirectioni10n.database).current===e.next?k.a.createElement("p",null,Object(j.translate)("A database upgrade is in progress. Please continue to finish.")):k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)("Redirection stores data in your database and sometimes this needs upgrading. Your database is at version {{strong}}%(current)s{{/strong}} and the latest is {{strong}}%(latest)s{{/strong}}.",{args:{current:Redirectioni10n.database.current,latest:Redirectioni10n.database.next},components:{strong:k.a.createElement("strong",null)}}))),k.a.createElement("p",null,Object(j.translate)("Please make a backup of your Redirection data: {{download}}downloading a backup{{/download}}. If you experience any issues you can import this back into Redirection.",{components:{download:k.a.createElement(Wr,{url:Hd("all","json")}),import:k.a.createElement(Wr,{url:"https://redirection.me/support/import-export-redirects/"})}})),o&&this.renderManual(),!o&&this.renderStandard()),k.a.createElement("div",{className:"database-switch"},!o&&k.a.createElement("a",{href:"#",onClick:this.onToggle},Object(j.translate)("Manual Upgrade")),o&&k.a.createElement("a",{href:"#",onClick:this.onToggle},Object(j.translate)("Automatic Upgrade"))))}}])&&yb(n.prototype,r),o&&yb(n,o),t}();var Sb=Te(null,function(e){return{onComplete:function(t){e(Rr("database",t))}}})(xb);n(180);function kb(e){return(kb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _b(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Cb(e){return(Cb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function jb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Pb(e,t){return(Pb=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Tb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ab=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==kb(t)&&"function"!=typeof t?jb(e):t}(this,Cb(t).call(this,e)),Tb(jb(n),"onPageChanged",function(){var e=gt();n.changePage(e),n.setState({page:e,clicked:n.state.clicked+1})}),Tb(jb(n),"onChangePage",function(e,t){var r=n.props.errors;""===e&&(e="redirect"),"support"===e&&r.length>0?document.location.href=t:(n.props.onClear(),history.pushState({},null,t),n.changePage(e),n.setState({page:e,clicked:n.state.clicked+1}))}),Tb(jb(n),"onAdd",function(e){e.preventDefault(),n.props.onAdd()}),Tb(jb(n),"onShowUpgrade",function(e){e.preventDefault(),n.props.onShowUpgrade()}),n.state={page:gt(),clicked:0,stack:!1,error:"4.3.2"!==Redirectioni10n.version,info:!1},window.addEventListener("popstate",n.onPageChanged),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Pb(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidCatch",value:function(e,t){this.setState({error:!0,stack:e,info:t})}},{key:"componentWillUnmount",value:function(){window.removeEventListener("popstate",this.onPageChanged)}},{key:"changePage",value:function(e){var t=this.props,n=t.onSet404Table,r=t.onSetLogTable,o=t.onSetRedirectTable,a=t.onSetGroupTable;"404s"===e?n(_r().table):"log"===e?r(kr().table):"redirect"===e?o(jr().table):"groups"===e&&a(Cr().table)}},{key:"getContent",value:function(e){var t=this.state.clicked;switch(e){case"support":return k.a.createElement(Ra,null);case"404s":return k.a.createElement(nd,{key:t});case"log":return k.a.createElement(gl,{key:t});case"io":return k.a.createElement(eh,null);case"groups":return k.a.createElement(xh,{key:t});case"options":return k.a.createElement(Ao,null)}return k.a.createElement(qh,{key:t})}},{key:"renderError",value:function(){var e=[Redirectioni10n.versions,"Buster: 4.3.2 === "+Redirectioni10n.version,"",this.state.stack];return this.state.info&&this.state.info.componentStack&&e.push(this.state.info.componentStack),"4.3.2"!==Redirectioni10n.version?k.a.createElement("div",{className:"red-error"},k.a.createElement("h2",null,Object(j.translate)("Cached Redirection detected")),k.a.createElement("p",null,Object(j.translate)("Please clear your browser cache and reload this page.")),k.a.createElement("p",null,Object(j.translate)("If you are using a caching system such as Cloudflare then please read this: "),k.a.createElement(Wr,{url:"https://redirection.me/support/problems/cloudflare/?utm_source=redirection&utm_medium=plugin&utm_campaign=support"},Object(j.translate)("clearing your cache."))),k.a.createElement("p",null,k.a.createElement("textarea",{readOnly:!0,rows:e.length+3,cols:"120",value:e.join("\n"),spellCheck:!1}))):k.a.createElement("div",{className:"red-error"},k.a.createElement("h2",null,Object(j.translate)("Something went wrong 🙁")),k.a.createElement("p",null,Object(j.translate)("Redirection is not working. Try clearing your browser cache and reloading this page."),"  ",Object(j.translate)("If you are using a page caching plugin or service (CloudFlare, OVH, etc) then you can also try clearing that cache.")),k.a.createElement("p",null,Object(j.translate)("If that doesn't help, open your browser's error console and create a {{link}}new issue{{/link}} with the details.",{components:{link:k.a.createElement(Wr,{url:"https://github.com/johngodley/redirection/issues"})}})),k.a.createElement("p",null,Object(j.translate)("Please mention {{code}}%s{{/code}}, and explain what you were doing at the time",{components:{code:k.a.createElement("code",null)},args:this.state.page})),k.a.createElement("p",null,k.a.createElement("textarea",{readOnly:!0,rows:e.length+8,cols:"120",value:e.join("\n"),spellCheck:!1})))}},{key:"render",value:function(){var e=this.state,t=e.error,n=e.page,r=this.props,o=r.databaseStatus,a=r.showDatabase,i=r.result,l={redirect:Object(j.translate)("Redirections"),groups:Object(j.translate)("Groups"),io:Object(j.translate)("Import/Export"),log:Object(j.translate)("Logs"),"404s":Object(j.translate)("404 errors"),options:Object(j.translate)("Options"),support:Object(j.translate)("Support")}[n];return t?this.renderError():"need-install"===o||"finish-install"===o?k.a.createElement(bb,null):"need-update"===o||"finish-update"===o?k.a.createElement(Sb,{onShowUpgrade:this.props.onShowUpgrade,showDatabase:a,result:i}):k.a.createElement("div",{className:"wrap redirection"},k.a.createElement("h1",{className:"wp-heading-inline"},l),"redirect"===n&&k.a.createElement("a",{href:"#",onClick:this.onAdd,className:"page-title-action"},Object(j.translate)("Add New")),k.a.createElement(Pm,{onChangePage:this.onChangePage}),k.a.createElement(fm,null),this.getContent(n),k.a.createElement(Cm,null),k.a.createElement(Em,null))}}])&&_b(n.prototype,r),o&&_b(n,o),t}();var Db,Rb=Te(function(e){var t=e.message.errors,n=e.settings.showDatabase,r=e.settings.database;return{errors:t,showDatabase:n,databaseStatus:r.status,result:r.result}},function(e){return{onClear:function(){e(om())},onAdd:function(){e(Gp(!0))},onSet404Table:function(t){e(zl(t))},onSetLogTable:function(t){e(Li(t))},onSetGroupTable:function(t){e($f(t))},onSetRedirectTable:function(t){e(qp(t))},onShowUpgrade:function(){e(Ir())}}})(Ab),Ib=Object(Ae.hot)(function(){return k.a.createElement(z,{store:xr({settings:Sr(),log:kr(),error:_r(),io:{status:Xe,file:!1,lastImport:!1,exportData:!1,importingStatus:!1,exportStatus:!1,importers:[]},group:Cr(),redirect:jr(),message:{errors:[],notices:[],inProgress:0,saving:[]},info:{status:Ze,maps:{},agents:{},http:!1,error:""}})},k.a.createElement(Rb,null))});document.querySelector("#react-ui")&&(Db="react-ui",P.a.setLocale({"":{localeSlug:Redirectioni10n.localeSlug}}),P.a.addTranslations(Redirectioni10n.locale),C.a.render(k.a.createElement(Ib,null),document.getElementById(Db))),window.redirection=Redirectioni10n.version}]);
1
+ /*! Redirection v4.3.3 */!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=73)}([function(e,t,n){"use strict";e.exports=n(74)},function(e,t,n){var r=n(78),o=new r;e.exports={numberFormat:o.numberFormat.bind(o),translate:o.translate.bind(o),configure:o.configure.bind(o),setLocale:o.setLocale.bind(o),getLocale:o.getLocale.bind(o),getLocaleSlug:o.getLocaleSlug.bind(o),addTranslations:o.addTranslations.bind(o),reRenderTranslations:o.reRenderTranslations.bind(o),registerComponentUpdateHook:o.registerComponentUpdateHook.bind(o),registerTranslateHook:o.registerTranslateHook.bind(o),state:o.state,stateObserver:o.stateObserver,on:o.stateObserver.on.bind(o.stateObserver),off:o.stateObserver.removeListener.bind(o.stateObserver),emit:o.stateObserver.emit.bind(o.stateObserver),$this:o,I18N:r}},function(e,t,n){e.exports=n(88)()},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var o=(i=r,"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),a=r.sources.map(function(e){return"/*# sourceURL="+r.sourceRoot+e+" */"});return[n].concat(a).concat([o]).join("\n")}var i;return[n].join("\n")}(t,e);return t[2]?"@media "+t[2]+"{"+n+"}":n}).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},o=0;o<this.length;o++){var a=this[o][0];null!=a&&(r[a]=!0)}for(o=0;o<e.length;o++){var i=e[o];null!=i[0]&&r[i[0]]||(n&&!i[2]?i[2]=n:n&&(i[2]="("+i[2]+") and ("+n+")"),t.push(i))}},t}},function(e,t,n){var r,o,a={},i=(r=function(){return window&&document&&document.all&&!window.atob},function(){return void 0===o&&(o=r.apply(this,arguments)),o}),l=function(e){var t={};return function(e,n){if("function"==typeof e)return e();if(void 0===t[e]){var r=function(e,t){return t?t.querySelector(e):document.querySelector(e)}.call(this,e,n);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}}(),u=null,s=0,c=[],p=n(96);function f(e,t){for(var n=0;n<e.length;n++){var r=e[n],o=a[r.id];if(o){o.refs++;for(var i=0;i<o.parts.length;i++)o.parts[i](r.parts[i]);for(;i<r.parts.length;i++)o.parts.push(y(r.parts[i],t))}else{var l=[];for(i=0;i<r.parts.length;i++)l.push(y(r.parts[i],t));a[r.id]={id:r.id,refs:1,parts:l}}}}function d(e,t){for(var n=[],r={},o=0;o<e.length;o++){var a=e[o],i=t.base?a[0]+t.base:a[0],l={css:a[1],media:a[2],sourceMap:a[3]};r[i]?r[i].parts.push(l):n.push(r[i]={id:i,parts:[l]})}return n}function h(e,t){var n=l(e.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var r=c[c.length-1];if("top"===e.insertAt)r?r.nextSibling?n.insertBefore(t,r.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),c.push(t);else if("bottom"===e.insertAt)n.appendChild(t);else{if("object"!=typeof e.insertAt||!e.insertAt.before)throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");var o=l(e.insertAt.before,n);n.insertBefore(t,o)}}function m(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e);var t=c.indexOf(e);t>=0&&c.splice(t,1)}function b(e){var t=document.createElement("style");if(void 0===e.attrs.type&&(e.attrs.type="text/css"),void 0===e.attrs.nonce){var r=function(){0;return n.nc}();r&&(e.attrs.nonce=r)}return g(t,e.attrs),h(e,t),t}function g(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function y(e,t){var n,r,o,a;if(t.transform&&e.css){if(!(a="function"==typeof t.transform?t.transform(e.css):t.transform.default(e.css)))return function(){};e.css=a}if(t.singleton){var i=s++;n=u||(u=b(t)),r=w.bind(null,n,i,!1),o=w.bind(null,n,i,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",g(t,e.attrs),h(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,a=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||a)&&(r=p(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var i=new Blob([r],{type:"text/css"}),l=e.href;e.href=URL.createObjectURL(i),l&&URL.revokeObjectURL(l)}.bind(null,n,t),o=function(){m(n),n.href&&URL.revokeObjectURL(n.href)}):(n=b(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){m(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=i()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=d(e,t);return f(n,t),function(e){for(var r=[],o=0;o<n.length;o++){var i=n[o];(l=a[i.id]).refs--,r.push(l)}e&&f(d(e,t),t);for(o=0;o<r.length;o++){var l;if(0===(l=r[o]).refs){for(var u=0;u<l.parts.length;u++)l.parts[u]();delete a[l.id]}}}};var v,E=(v=[],function(e,t){return v[e]=t,v.filter(Boolean).join("\n")});function w(e,t,n,r){var o=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=E(t,o);else{var a=document.createTextNode(o),i=e.childNodes;i[t]&&e.removeChild(i[t]),i.length?e.insertBefore(a,i[t]):e.appendChild(a)}}},function(e,t,n){var r;
2
  /*!
3
  Copyright (c) 2017 Jed Watson.
4
  Licensed under the MIT License (MIT), see
73
 
74
  See the Apache Version 2.0 License for specific language governing permissions
75
  and limitations under the License.
76
+ ***************************************************************************** */function rd(e,t,n,r){return new(n||(n=Promise))(function(o,a){function i(e){try{u(r.next(e))}catch(e){a(e)}}function l(e){try{u(r.throw(e))}catch(e){a(e)}}function u(e){e.done?o(e.value):new n(function(t){t(e.value)}).then(i,l)}u((r=r.apply(e,t||[])).next())})}function od(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(a){return function(l){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}}function ad(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}var id=new Map([["avi","video/avi"],["gif","image/gif"],["ico","image/x-icon"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["mkv","video/x-matroska"],["mov","video/quicktime"],["mp4","video/mp4"],["pdf","application/pdf"],["png","image/png"],["zip","application/zip"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"]]);function ld(e,t){var n=function(e){var t=e.name;if(t&&-1!==t.lastIndexOf(".")&&!e.type){var n=t.split(".").pop().toLowerCase(),r=id.get(n);r&&Object.defineProperty(e,"type",{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}(e);if("string"!=typeof n.path){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:"string"==typeof t?t:"string"==typeof r&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}var ud=[".DS_Store","Thumbs.db"];function sd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,(n=e,n.dataTransfer&&e.dataTransfer?pd(e.dataTransfer,e.type):cd(e))];var n})})}function cd(e){return(null!==e.target&&e.target.files?dd(e.target.files):[]).map(function(e){return ld(e)})}function pd(e,t){return rd(this,void 0,void 0,function(){var n;return od(this,function(r){switch(r.label){case 0:return e.items?(n=dd(e.items).filter(function(e){return"file"===e.kind}),"drop"!==t?[2,n]:[4,Promise.all(n.map(hd))]):[3,2];case 1:return[2,fd(md(r.sent()))];case 2:return[2,fd(dd(e.files).map(function(e){return ld(e)}))]}})})}function fd(e){return e.filter(function(e){return-1===ud.indexOf(e.name)})}function dd(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r)}return t}function hd(e){if("function"!=typeof e.webkitGetAsEntry)return bd(e);var t=e.webkitGetAsEntry();return t&&t.isDirectory?yd(t):bd(e)}function md(e){return e.reduce(function(e,t){return function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(ad(arguments[t]));return e}(e,Array.isArray(t)?md(t):[t])},[])}function bd(e){var t=e.getAsFile();if(!t)return Promise.reject(e+" is not a File");var n=ld(t);return Promise.resolve(n)}function gd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,e.isDirectory?yd(e):vd(e)]})})}function yd(e){var t=e.createReader();return new Promise(function(e,n){var r=[];!function o(){var a=this;t.readEntries(function(t){return rd(a,void 0,void 0,function(){var a,i,l;return od(this,function(u){switch(u.label){case 0:if(t.length)return[3,5];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,Promise.all(r)];case 2:return a=u.sent(),e(a),[3,4];case 3:return i=u.sent(),n(i),[3,4];case 4:return[3,6];case 5:l=Promise.all(t.map(gd)),r.push(l),o(),u.label=6;case 6:return[2]}})})},function(e){n(e)})}()})}function vd(e){return rd(this,void 0,void 0,function(){return od(this,function(t){return[2,new Promise(function(t,n){e.file(function(n){var r=ld(n,e.fullPath);t(r)},function(e){n(e)})})]})})}var Ed=n(71),wd=n.n(Ed);function Od(e,t){return"application/x-moz-file"===e.type||wd()(e,t)}function xd(e){return"function"==typeof e.isPropagationStopped?e.isPropagationStopped():void 0!==e.cancelBubble&&e.cancelBubble}function Sd(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(e){return"Files"===e||"application/x-moz-file"===e}):!!e.target&&!!e.target.files}function kd(e){e.preventDefault()}function _d(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return t.some(function(t){return!xd(e)&&t&&t.apply(void 0,[e].concat(r)),xd(e)})}}function Cd(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function jd(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,o=!1,a=void 0;try{for(var i,l=e[Symbol.iterator]();!(r=(i=l.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){o=!0,a=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw a}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function Pd(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Td(e,t,n[t])})}return e}function Td(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ad(e){return(Ad="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Dd(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var Rd=Object(S.forwardRef)(function(e,t){var n=e.children,r=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.accept,n=e.disabled,r=void 0!==n&&n,o=e.getFilesFromEvent,a=void 0===o?sd:o,i=e.maxSize,l=void 0===i?1/0:i,u=e.minSize,s=void 0===u?0:u,c=e.multiple,p=void 0===c||c,f=e.onDragEnter,d=e.onDragLeave,h=e.onDragOver,m=e.onDrop,b=e.onDropAccepted,g=e.onDropRejected,y=e.onFileDialogCancel,v=e.preventDropOnDocument,E=void 0===v||v,w=e.noClick,O=void 0!==w&&w,x=e.noKeyboard,k=void 0!==x&&x,_=e.noDrag,C=void 0!==_&&_,j=e.noDragEventsBubbling,P=void 0!==j&&j,T=Object(S.useRef)(null),A=Object(S.useRef)(null),D=jd(Object(S.useReducer)(Fd,Nd),2),R=D[0],I=D[1],N=R.isFocused,F=R.isFileDialogActive,L=R.draggedFiles,M=function(){A.current&&(I({type:"openDialog"}),A.current.value=null,A.current.click())},U=function(){F&&setTimeout(function(){if(A.current){var e=A.current.files;e.length||(I({type:"closeDialog"}),"function"==typeof y&&y())}},300)};Object(S.useEffect)(function(){return window.addEventListener("focus",U,!1),function(){window.removeEventListener("focus",U,!1)}},[A,F,y]);var B=Object(S.useCallback)(function(e){T.current&&T.current.isEqualNode(e.target)&&(32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),M()))},[T,A]),z=Object(S.useCallback)(function(){I({type:"focus"})},[]),V=Object(S.useCallback)(function(){I({type:"blur"})},[]),W=Object(S.useCallback)(function(e){e.preventDefault(),O||(!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?M():setTimeout(M,0))},[A,O]),H=jd(Object(S.useState)([]),2),G=H[0],q=H[1],$=function(e){T.current&&T.current.contains(e.target)||(e.preventDefault(),q([]))};Object(S.useEffect)(function(){return E&&(document.addEventListener("dragover",kd,!1),document.addEventListener("drop",$,!1)),function(){E&&(document.removeEventListener("dragover",kd),document.removeEventListener("drop",$))}},[T,E]);var Y=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e),-1===G.indexOf(e.target)&&q([].concat(Cd(G),[e.target])),Sd(e)&&Promise.resolve(a(e)).then(function(t){xd(e)&&!P||(I({draggedFiles:t,isDragActive:!0,type:"setDraggedFiles"}),f&&f(e))})},[G,a,f,P]),K=Object(S.useCallback)(function(e){if(e.preventDefault(),e.persist(),te(e),e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(e){}return Sd(e)&&h&&h(e),!1},[h,P]),Q=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e);var t=Cd(G.filter(function(t){return t!==e.target&&T.current&&T.current.contains(t)}));q(t),t.length>0||(I({isDragActive:!1,type:"setDraggedFiles",draggedFiles:[]}),Sd(e)&&d&&d(e))},[T,G,d,P]),X=Object(S.useCallback)(function(e){e.preventDefault(),e.persist(),te(e),q([]),I({type:"reset"}),Sd(e)&&Promise.resolve(a(e)).then(function(n){if(!xd(e)||P){var r=[],o=[];n.forEach(function(e){Od(e,t)&&function(e,t,n){return e.size<=t&&e.size>=n}(e,l,s)?r.push(e):o.push(e)}),!p&&r.length>1&&o.push.apply(o,Cd(r.splice(0))),I({acceptedFiles:r,rejectedFiles:o,type:"setFiles"}),m&&m(r,o,e),o.length>0&&g&&g(o,e),r.length>0&&b&&b(r,e)}})},[p,t,s,l,a,m,b,g,P]),J=function(e){return r?null:e},Z=function(e){return k?null:J(e)},ee=function(e){return C?null:J(e)},te=function(e){P&&e.stopPropagation()},ne=Object(S.useMemo)(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,o=e.onKeyDown,a=e.onFocus,i=e.onBlur,l=e.onClick,u=e.onDragEnter,s=e.onDragOver,c=e.onDragLeave,p=e.onDrop,f=Dd(e,["refKey","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"]);return Pd(Td({onKeyDown:Z(_d(o,B)),onFocus:Z(_d(a,z)),onBlur:Z(_d(i,V)),onClick:J(_d(l,W)),onDragEnter:ee(_d(u,Y)),onDragOver:ee(_d(s,K)),onDragLeave:ee(_d(c,Q)),onDrop:ee(_d(p,X))},n,T),r||k?{}:{tabIndex:0},f)}},[T,B,z,V,W,Y,K,Q,X,k,C,r]),re=Object(S.useCallback)(function(e){e.stopPropagation()},[]),oe=Object(S.useMemo)(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.refKey,r=void 0===n?"ref":n,o=e.onChange,a=e.onClick,i=Dd(e,["refKey","onChange","onClick"]),l=Td({accept:t,multiple:p,type:"file",style:{display:"none"},onChange:J(_d(o,X)),onClick:J(_d(a,re)),autoComplete:"off",tabIndex:-1},r,A);return Pd({},l,i)}},[A,t,p,X,r]),ae=L.length,ie=p||ae<=1,le=ae>0&&function(e,t){return e.every(function(e){return Od(e,t)})}(L,t);return Pd({},R,{isDragAccept:le,isDragReject:ae>0&&(!le||!ie),isFocused:N&&!r,getRootProps:ne,getInputProps:oe,rootRef:T,inputRef:A,open:J(M)})}(Dd(e,["children"])),o=r.open,a=Dd(r,["open"]);return Object(S.useEffect)(function(){return"function"==typeof t?t({open:o}):"object"===Ad(t)&&null!==t&&(t.current={open:o}),function(){"function"==typeof t?t(null):"object"===Ad(t)&&null!==t&&(t.current=null)}},[t]),k.a.createElement(S.Fragment,null,n(Pd({},a,{open:o})))});Rd.displayName="Dropzone",Rd.propTypes={children:R.a.func,accept:R.a.oneOfType([R.a.string,R.a.arrayOf(R.a.string)]),multiple:R.a.bool,preventDropOnDocument:R.a.bool,noClick:R.a.bool,noKeyboard:R.a.bool,noDrag:R.a.bool,noDragEventsBubbling:R.a.bool,minSize:R.a.number,maxSize:R.a.number,disabled:R.a.bool,getFilesFromEvent:R.a.func,onFileDialogCancel:R.a.func,onDragEnter:R.a.func,onDragLeave:R.a.func,onDragOver:R.a.func,onDrop:R.a.func,onDropAccepted:R.a.func,onDropRejected:R.a.func};var Id=Rd,Nd={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,draggedFiles:[],acceptedFiles:[],rejectedFiles:[]};function Fd(e,t){switch(t.type){case"focus":return Pd({},e,{isFocused:!0});case"blur":return Pd({},e,{isFocused:!1});case"openDialog":return Pd({},e,{isFileDialogActive:!0});case"closeDialog":return Pd({},e,{isFileDialogActive:!1});case"setDraggedFiles":var n=t.isDragActive;return Pd({},e,{draggedFiles:t.draggedFiles,isDragActive:n});case"setFiles":return Pd({},e,{acceptedFiles:t.acceptedFiles,rejectedFiles:t.rejectedFiles});case"reset":return Pd({},e,{isFileDialogActive:!1,isDragActive:!1,draggedFiles:[]});default:return e}}var Ld=function(e,t){return function(n){return $t(Bt.export.file(e,t)).then(function(e){n({type:_n,data:e.data})}).catch(function(e){n({type:Tn,error:e})}),n({type:Cn})}},Md=function(e){return document.location.href=e,{type:"NOTHING"}},Ud=function(e,t){return function(n){return $t(Bt.import.upload(t,e)).then(function(e){n({type:Pn,total:e.imported})}).catch(function(e){n({type:Tn,error:e})}),n({type:jn,file:e})}},Bd=function(){return{type:An}},zd=function(e){return{type:Dn,file:e}},Vd=function(){return function(e){$t(Bt.import.pluginList()).then(function(t){e({type:Rn,importers:t.importers})}).catch(function(t){e({type:Tn,error:t})})}},Wd=function(e){return function(t){return $t(Bt.import.pluginImport(e)).then(function(e){t({type:Pn,total:e.imported})}).catch(function(e){t({type:Tn,error:e})}),t({type:jn})}},Hd=function(e,t){return Redirectioni10n.pluginRoot+"&sub=io&export="+e+"&exporter="+t+"&_wpnonce="+It()},Gd=function(e){var t=e.plugin,n=e.doImport,r=t.name,o=t.total;return k.a.createElement("div",{className:"plugin-importer"},k.a.createElement("p",null,k.a.createElement("strong",null,r)," (",Object(j.translate)("total = ")+o," )"),k.a.createElement("button",{onClick:function(){n(t)},className:"button-secondary"},Object(j.translate)("Import from %s",{args:r})))};n(127);function qd(e){return(qd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $d(){return($d=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function Yd(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Kd(e){return(Kd=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Qd(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Xd(e,t){return(Xd=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Jd(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Zd=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==qd(t)&&"function"!=typeof t?Qd(e):t}(this,Kd(t).call(this,e)),Jd(Qd(n),"onView",function(){n.props.onExport(n.state.module,n.state.format)}),Jd(Qd(n),"onDownload",function(){n.props.onDownloadFile(Hd(n.state.module,n.state.format))}),Jd(Qd(n),"onEnter",function(){n.props.io.importingStatus!==Xe&&n.setState({hover:!0})}),Jd(Qd(n),"onLeave",function(){n.setState({hover:!1})}),Jd(Qd(n),"onImport",function(){n.props.onImport(n.props.io.file,n.state.group)}),Jd(Qd(n),"onCancel",function(){n.setState({hover:!1}),n.props.onClearFile()}),Jd(Qd(n),"onInput",function(e){var t=e.target;n.setState(Jd({},t.name,t.value)),"module"===t.name&&"everything"===t.value&&n.setState({format:"json"})}),Jd(Qd(n),"onDrop",function(e){var t=n.props.io.importingStatus;e.length>0&&t!==Xe&&n.props.onAddFile(e[0]),n.setState({hover:!1,group:n.props.group.rows[0].id})}),Jd(Qd(n),"doImport",function(e){confirm(Object(j.translate)("Are you sure you want to import from %s?",{args:e.name}))&&n.props.pluginImport(e.id)}),n.props.onLoadGroups(),n.props.onLoadImport(),n.state={group:0,hover:!1,module:"all",format:"json"},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Xd(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderGroupSelect",value:function(){var e=this.props.group.rows;return k.a.createElement("div",{className:"groups"},Object(j.translate)("Import to group")," ",k.a.createElement(Vr,{items:Rc(e),name:"group",value:this.state.group,onChange:this.onInput}))}},{key:"renderInitialDrop",value:function(e){return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Import a CSV, .htaccess, or JSON file.")),k.a.createElement("p",null,Object(j.translate)("Click 'Add File' or drag and drop here.")),k.a.createElement("button",{type:"button",className:"button-secondary",onClick:e},Object(j.translate)("Add File")))}},{key:"renderDropBeforeUpload",value:function(){var e=this.props.io.file,t="application/json"===e.type;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("File selected")),k.a.createElement("p",null,k.a.createElement("code",null,e.name)),!t&&this.renderGroupSelect(),k.a.createElement("button",{className:"button-primary",onClick:this.onImport},Object(j.translate)("Upload")),"  ",k.a.createElement("button",{className:"button-secondary",onClick:this.onCancel},Object(j.translate)("Cancel")))}},{key:"renderUploading",value:function(){var e=this.props.io.file;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Importing")),k.a.createElement("p",null,k.a.createElement("code",null,e.name)),k.a.createElement("div",{className:"is-placeholder"},k.a.createElement("div",{className:"placeholder-loading"})))}},{key:"renderUploaded",value:function(){var e=this.props.io.lastImport;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h3",null,Object(j.translate)("Finished importing")),k.a.createElement("p",null,Object(j.translate)("Total redirects imported:")," ",e),0===e&&k.a.createElement("p",null,Object(j.translate)("Double-check the file is the correct format!")),k.a.createElement("button",{className:"button-secondary",onClick:this.onCancel},Object(j.translate)("OK")))}},{key:"renderDropzoneContent",value:function(e){var t,n=e.getInputProps,r=e.getRootProps,o=this.state.hover,a=this.props.io,i=a.importingStatus,l=a.file,u=a.lastImport,s=to()({dropzone:!0,"dropzone-dropped":!1!==l,"dropzone-importing":i===Xe,"dropzone-hover":o}),c=r({onClick:function(e){return e.stopPropagation()},onKeyDown:function(e){32!==e.keyCode&&13!==e.keyCode||e.stopPropagation()}});return t=i===Xe?this.renderUploading():i===Ze&&!1!==u&&!1===l?this.renderUploaded():!1===l?this.renderInitialDrop(e.open):this.renderDropBeforeUpload(),k.a.createElement("div",$d({className:s},c),k.a.createElement("input",n()),t)}},{key:"renderExport",value:function(e){return k.a.createElement("div",null,k.a.createElement("textarea",{className:"module-export",rows:"14",readOnly:!0,value:e}),k.a.createElement("input",{className:"button-secondary",type:"submit",value:Object(j.translate)("Close"),onClick:this.onCancel}))}},{key:"renderExporting",value:function(){return k.a.createElement("div",{className:"loader-wrapper loader-textarea"},k.a.createElement("div",{className:"placeholder-loading"}))}},{key:"renderImporters",value:function(e){var t=this;return k.a.createElement("div",null,k.a.createElement("h3",null,Object(j.translate)("Plugin Importers")),k.a.createElement("p",null,Object(j.translate)("The following redirect plugins were detected on your site and can be imported from.")),e.map(function(e,n){return k.a.createElement(Gd,{plugin:e,key:n,doImport:t.doImport})}))}},{key:"render",value:function(){var e=this,t=this.props.io,n=t.exportData,r=t.exportStatus,o=t.importers;return k.a.createElement("div",{className:"import"},k.a.createElement("h2",null,Object(j.translate)("Import")),k.a.createElement(Id,{multiple:!1,onDrop:this.onDrop,onDragLeave:this.onLeave,onDragEnter:this.onEnter},function(t){return e.renderDropzoneContent(t)}),k.a.createElement("p",null,Object(j.translate)("All imports will be appended to the current database - nothing is merged.")),k.a.createElement("div",{className:"inline-notice notice-warning"},k.a.createElement("p",null,Object(j.translate)("{{strong}}CSV file format{{/strong}}: {{code}}source URL, target URL{{/code}} - and can be optionally followed with {{code}}regex, http code{{/code}} ({{code}}regex{{/code}} - 0 for no, 1 for yes).",{components:{code:k.a.createElement("code",null),strong:k.a.createElement("strong",null)}})),k.a.createElement("p",null,Object(j.translate)('CSV does not include all information, and everything is imported/exported as "URL only" matches. Use the JSON format for a full set of data.'))),k.a.createElement("h2",null,Object(j.translate)("Export")),k.a.createElement("p",null,Object(j.translate)("Export to CSV, Apache .htaccess, Nginx, or Redirection JSON. The JSON format contains full information, and other formats contain partial information appropriate to the format.")),k.a.createElement("select",{name:"module",onChange:this.onInput,value:this.state.module},k.a.createElement("option",{value:"0"},Object(j.translate)("Everything")),k.a.createElement("option",{value:"1"},Object(j.translate)("WordPress redirects")),k.a.createElement("option",{value:"2"},Object(j.translate)("Apache redirects")),k.a.createElement("option",{value:"3"},Object(j.translate)("Nginx redirects"))),k.a.createElement("select",{name:"format",onChange:this.onInput,value:this.state.format},k.a.createElement("option",{value:"json"},Object(j.translate)("Complete data (JSON)")),k.a.createElement("option",{value:"csv"},Object(j.translate)("CSV")),k.a.createElement("option",{value:"apache"},Object(j.translate)("Apache .htaccess")),k.a.createElement("option",{value:"nginx"},Object(j.translate)("Nginx rewrite rules")))," ",k.a.createElement("button",{className:"button-primary",onClick:this.onView},Object(j.translate)("View"))," ",k.a.createElement("button",{className:"button-secondary",onClick:this.onDownload},Object(j.translate)("Download")),r===Xe&&this.renderExporting(),n&&r!==Xe&&this.renderExport(n),k.a.createElement("h2",null,"Export Logs"),k.a.createElement(wi,{logType:"log",title:Object(j.translate)("Export redirect")}),k.a.createElement("br",null),k.a.createElement(wi,{logType:"404",title:Object(j.translate)("Export 404")}),o.length>0&&this.renderImporters(o))}}])&&Yd(n.prototype,r),o&&Yd(n,o),t}();var eh=Te(function(e){return{group:e.group,io:e.io}},function(e){return{onLoadGroups:function(){e(Bf())},onImport:function(t,n){e(Ud(t,n))},onAddFile:function(t){e(zd(t))},onClearFile:function(){e(Bd())},onExport:function(t,n){e(Ld(t,n))},onDownloadFile:function(t){e(Md(t))},onLoadImport:function(){e(Vd())},pluginImport:function(t){e(Wd(t))}}})(Zd);function th(e){return(th="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function nh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function rh(e){return(rh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function oh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ah(e,t){return(ah=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ih(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var lh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==th(t)&&"function"!=typeof t?oh(e):t}(this,rh(t).call(this,e)),ih(oh(n),"onChange",function(e){n.setState({selected:e.target.value})}),ih(oh(n),"onSubmit",function(){n.props.onFilter(n.state.selected)}),n.state={selected:e.selected},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ah(e,t)}(t,k.a.Component),n=t,(r=[{key:"render",value:function(){var e=this.props,t=e.options,n=e.isEnabled;return k.a.createElement("div",{className:"alignleft actions"},k.a.createElement(Vr,{items:t,value:this.state.selected,name:"filter",onChange:this.onChange,isEnabled:n}),k.a.createElement("button",{className:"button",onClick:this.onSubmit,disabled:!n},Object(j.translate)("Filter")))}}])&&nh(n.prototype,r),o&&nh(n,o),t}();function uh(e){return(uh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function sh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ch(e){return(ch=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ph(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function fh(e,t){return(fh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function dh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var hh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==uh(t)&&"function"!=typeof t?ph(e):t}(this,ch(t).call(this,e)),dh(ph(n),"onEdit",function(e){e.preventDefault(),n.setState({editing:!n.state.editing})}),dh(ph(n),"onDelete",function(e){e.preventDefault(),n.props.onTableAction("delete",n.props.item.id)}),dh(ph(n),"onDisable",function(e){e.preventDefault(),n.props.onTableAction("disable",n.props.item.id)}),dh(ph(n),"onEnable",function(e){e.preventDefault(),n.props.onTableAction("enable",n.props.item.id)}),dh(ph(n),"onSelected",function(){n.props.onSetSelected([n.props.item.id])}),dh(ph(n),"onChange",function(e){var t=e.target;n.setState({name:t.value})}),dh(ph(n),"onSave",function(e){n.onEdit(e),n.props.onSaveGroup(n.props.item.id,{name:n.state.name,moduleId:n.state.moduleId})}),dh(ph(n),"onSelect",function(e){var t=e.target;n.setState({moduleId:parseInt(t.value,10)})}),n.state={editing:!1,name:e.item.name,moduleId:e.item.module_id},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&fh(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderLoader",value:function(){return k.a.createElement("div",{className:"loader-wrapper"},k.a.createElement("div",{className:"placeholder-loading loading-small",style:{top:"0px"}}))}},{key:"renderActions",value:function(e){var t=this.props.item,n=t.id,r=t.enabled;return k.a.createElement(xi,{disabled:e},k.a.createElement("a",{href:"#",onClick:this.onEdit},Object(j.translate)("Edit"))," | ",k.a.createElement("a",{href:"#",onClick:this.onDelete},Object(j.translate)("Delete"))," | ",k.a.createElement("a",{href:Redirectioni10n.pluginRoot+"&filterby=group&filter="+n},Object(j.translate)("View Redirects"))," | ",r&&k.a.createElement("a",{href:"#",onClick:this.onDisable},Object(j.translate)("Disable")),!r&&k.a.createElement("a",{href:"#",onClick:this.onEnable},Object(j.translate)("Enable")))}},{key:"renderEdit",value:function(){return k.a.createElement("form",{onSubmit:this.onSave},k.a.createElement("table",{className:"edit-groups"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",{width:"70"},Object(j.translate)("Name")),k.a.createElement("td",null,k.a.createElement("input",{type:"text",name:"name",value:this.state.name,onChange:this.onChange}))),k.a.createElement("tr",null,k.a.createElement("th",{width:"70"},Object(j.translate)("Module")),k.a.createElement("td",null,k.a.createElement(Vr,{name:"module_id",value:this.state.moduleId,onChange:this.onSelect,items:[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}]}))),k.a.createElement("tr",null,k.a.createElement("th",{width:"70"}),k.a.createElement("td",null,k.a.createElement("div",{className:"table-actions"},k.a.createElement("input",{className:"button-primary",type:"submit",name:"save",value:Object(j.translate)("Save")}),"  ",k.a.createElement("input",{className:"button-secondary",type:"submit",name:"cancel",value:Object(j.translate)("Cancel"),onClick:this.onEdit})),2===parseInt(this.state.moduleId,10)&&k.a.createElement("p",null,k.a.createElement("br",null),Object(j.translate)("Note that you will need to set the Apache module path in your Redirection options.")))))))}},{key:"getName",value:function(e,t){return t?e:k.a.createElement("strike",null,e)}},{key:"render",value:function(){var e,t,n=this.props.item,r=n.name,o=n.redirects,a=n.id,i=n.module_id,l=n.enabled,u=this.props,s=u.selected,c=u.status,p=c===Xe,f=c===et,d=!l||p||f;return k.a.createElement("tr",{className:d?"disabled":""},k.a.createElement("th",{scope:"row",className:"check-column"},!f&&k.a.createElement("input",{type:"checkbox",name:"item[]",value:a,disabled:p,checked:s,onChange:this.onSelected}),f&&k.a.createElement(Lo,{size:"small"})),k.a.createElement("td",{className:"column-primary column-name"},!this.state.editing&&this.getName(r,l),this.state.editing?this.renderEdit():this.renderActions(f)),k.a.createElement("td",{className:"column-redirects"},o),k.a.createElement("td",{className:"column-module"},(e=i,(t=[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}].find(function(t){return t.value===parseInt(e,10)}))?t.text:"")))}}])&&sh(n.prototype,r),o&&sh(n,o),t}();var mh=Te(null,function(e){return{onSetSelected:function(t){e(Gf(t))},onSaveGroup:function(t,n){e(Mf(t,n))},onTableAction:function(t,n){e(Uf(t,n))}}})(hh);function bh(e){return(bh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function gh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function yh(e){return(yh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function vh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Eh(e,t){return(Eh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function wh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Oh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==bh(t)&&"function"!=typeof t?vh(e):t}(this,yh(t).call(this,e)),wh(vh(n),"onRenderRow",function(e,t,r){var o=n.props.group.saving,a=r.isLoading?Xe:Ze,i=-1!==o.indexOf(e.id)?et:a;return k.a.createElement(mh,{item:e,key:e.id,selected:r.isSelected,status:i})}),wh(vh(n),"onChange",function(e){n.setState({name:e.target.value})}),wh(vh(n),"onModule",function(e){n.setState({moduleId:e.target.value})}),wh(vh(n),"onSubmit",function(e){e.preventDefault(),n.props.onCreate({id:0,name:n.state.name,moduleId:n.state.moduleId}),n.setState({name:""})}),n.props.onLoadGroups(),n.state={name:"",moduleId:1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Eh(e,t)}(t,k.a.Component),n=t,(r=[{key:"getModules",value:function(){return[{value:"",text:Object(j.translate)("All modules")}].concat([{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}])}},{key:"render",value:function(){var e=this.props.group,t=e.status,n=e.total,r=e.table,o=e.rows,a=-1!==e.saving.indexOf(0);return k.a.createElement("div",null,k.a.createElement(hi,{status:t,table:r,onSearch:this.props.onSearch,ignoreFilter:["module"],key:Pt(r)}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t,bulk:[{id:"delete",name:Object(j.translate)("Delete")},{id:"enable",name:Object(j.translate)("Enable")},{id:"disable",name:Object(j.translate)("Disable")}]},k.a.createElement(lh,{selected:r.filter,options:this.getModules(),onFilter:this.props.onFilter,isEnabled:!0,key:Pt(r)})),k.a.createElement(Ha,{headers:[{name:"cb",check:!0},{name:"name",title:Object(j.translate)("Name"),primary:!0},{name:"redirects",title:Object(j.translate)("Redirects"),sortable:!1},{name:"module",title:Object(j.translate)("Module"),sortable:!1}],rows:o,total:n,row:this.onRenderRow,table:r,status:t,onSetAllSelected:this.props.onSetAllSelected,onSetOrderBy:this.props.onSetOrderBy}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t}),k.a.createElement("h2",null,Object(j.translate)("Add Group")),k.a.createElement("p",null,Object(j.translate)("Use groups to organise your redirects. Groups are assigned to a module, which affects how the redirects in that group work. If you are unsure then stick to the WordPress module.")),k.a.createElement("form",{onSubmit:this.onSubmit},k.a.createElement("table",{className:"form-table"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",{style:{width:"50px"}},Object(j.translate)("Name")),k.a.createElement("td",null,k.a.createElement("input",{size:"30",className:"regular-text",type:"text",name:"name",value:this.state.name,onChange:this.onChange,disabled:a}),k.a.createElement(Vr,{name:"id",value:this.state.moduleId,onChange:this.onModule,items:[{value:1,text:"WordPress"},{value:2,text:"Apache"},{value:3,text:"Nginx"}],disabled:a})," ",k.a.createElement("input",{className:"button-primary",type:"submit",name:"add",value:"Add",disabled:a||""===this.state.name}))))),2===parseInt(this.state.moduleId,10)&&k.a.createElement("p",null,Object(j.translate)("Note that you will need to set the Apache module path in your Redirection options."))))}}])&&gh(n.prototype,r),o&&gh(n,o),t}();var xh=Te(function(e){return{group:e.group}},function(e){return{onLoadGroups:function(){e(Bf())},onSearch:function(t){e(Wf(t))},onChangePage:function(t){e(Vf(t))},onAction:function(t){e(Uf(t))},onSetAllSelected:function(t){e(qf(t))},onSetOrderBy:function(t,n){e(zf(t,n))},onFilter:function(t){e(Hf("module",t))},onCreate:function(t){e(Lf(t))}}})(Oh),Sh=function(e){var t=e.item,n=t.action_code,r=t.action_data,o=e.http,a=o.status,i=o.headers,l=void 0===i?[]:i,u=l.find(function(e){return"location"===e.name}),s=yt(l),c=n===a&&u&&u.value===r.url&&s,p=r.url_from?r.url_from:r.url;return k.a.createElement("div",{className:"redirection-httpcheck_results"},k.a.createElement("div",{className:"redirection-httpcheck_status"},c&&k.a.createElement("span",{className:"dashicons dashicons-yes"}),!c&&k.a.createElement("span",{className:"dashicons dashicons-no"})),k.a.createElement("div",{className:"redirection-httpcheck_info"},k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Expected"),": "),k.a.createElement("span",null,Object(j.translate)("{{code}}%(status)d{{/code}} to {{code}}%(target)s{{/code}}",{args:{status:n,target:p},components:{code:k.a.createElement("code",null)}}))),k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Found"),": "),k.a.createElement("span",null,u?Object(j.translate)("{{code}}%(status)d{{/code}} to {{code}}%(url)s{{/code}}",{args:{status:a,url:u.value},components:{code:k.a.createElement("code",null)}}):a)),k.a.createElement("p",null,k.a.createElement("strong",null,Object(j.translate)("Agent"),": "),k.a.createElement("span",null,s?Object(j.translate)("Using Redirection"):Object(j.translate)("Not using Redirection"))),u&&!s&&k.a.createElement("p",null,k.a.createElement(Wr,{url:"https://redirection.me/support/problems/url-not-redirecting/"},Object(j.translate)("What does this mean?")))))};n(129);function kh(e){return(kh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _h(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ch(e,t){return!t||"object"!==kh(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function jh(e){return(jh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Ph(e,t){return(Ph=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var Th=function(e){function t(e){var n,r,o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=Ch(this,jh(t).call(this,e))).props.onGet((r=n.getServer(e.item),o=e.item.url,r.replace(/\/$/,"")+"/"+o.replace(/^\//,""))),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ph(e,t)}(t,k.a.Component),n=t,(r=[{key:"getServer",value:function(e){return"server"===e.match_type?e.action_data.server:document.location.origin}},{key:"componentWillUnmount",value:function(){this.props.onClearHttp()}},{key:"renderError",value:function(){var e=this.props.error;return k.a.createElement("div",{className:"redirection-modal_error"},k.a.createElement("h2",null,Object(j.translate)("Error")),k.a.createElement("p",null,Object(j.translate)("Something went wrong obtaining this information")),k.a.createElement("p",null,k.a.createElement("code",null,e.message)))}},{key:"componentDidUpdate",value:function(){this.props.parent.resize()}},{key:"render",value:function(){var e=this.props,t=e.status,n=e.http,r=e.item,o=to()({"redirection-httpcheck":!0,"redirection-modal_loading":t===Xe,"redirection-httpcheck_small":t===Je});return k.a.createElement("div",{className:o},t===Xe&&k.a.createElement(Lo,null),t===Je&&this.renderError(),t===Ze&&n&&k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Check redirect for: {{code}}%s{{/code}}",{args:[n.url],components:{code:k.a.createElement("code",null)}})),k.a.createElement(Sh,{http:n,item:r}),k.a.createElement(Mi,null)))}}])&&_h(n.prototype,r),o&&_h(n,o),t}();var Ah=Te(function(e){var t=e.info;return{status:t.status,error:t.error,http:t.http}},function(e){return{onGet:function(t){e(No(t))},onClearHttp:function(){e(Fo())}}})(Th);function Dh(e){return(Dh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Rh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ih(e){return(Ih=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Nh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Fh(e,t){return(Fh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Lh(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Mh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==Dh(t)&&"function"!=typeof t?Nh(e):t}(this,Ih(t).call(this,e)),Lh(Nh(n),"onEdit",function(e){e.preventDefault(),n.setState({editing:!0})}),Lh(Nh(n),"onCancel",function(e){e.preventDefault(),n.setState({editing:!1})}),Lh(Nh(n),"onDelete",function(e){e.preventDefault(),n.props.onTableAction("delete",n.props.item.id)}),Lh(Nh(n),"onDisable",function(e){e.preventDefault(),n.props.onTableAction("disable",n.props.item.id)}),Lh(Nh(n),"onEnable",function(e){e.preventDefault(),n.props.onTableAction("enable",n.props.item.id)}),Lh(Nh(n),"onSelected",function(){n.props.onSetSelected([n.props.item.id])}),Lh(Nh(n),"onCheck",function(e){e.preventDefault(),n.setState({showCheck:!0})}),Lh(Nh(n),"closeCheck",function(){n.setState({showCheck:!1})}),n.state={editing:!1,showCheck:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Fh(e,t)}(t,k.a.Component),n=t,(r=[{key:"getMenu",value:function(){var e=this.props.item,t=e.enabled,n=e.regex,r=e.action_type,o=[];return t&&o.push([Object(j.translate)("Edit"),this.onEdit]),o.push([Object(j.translate)("Delete"),this.onDelete]),t?(o.push([Object(j.translate)("Disable"),this.onDisable]),n||"url"!==r||o.push([Object(j.translate)("Check Redirect"),this.onCheck])):o.push([Object(j.translate)("Enable"),this.onEnable]),o.map(function(e,t){return k.a.createElement("a",{key:t,href:"#",onClick:e[1]},e[0])}).reduce(function(e,t){return[e," | ",t]})}},{key:"getCode",value:function(){var e=this.props.item,t=e.action_code,n=e.action_type;return"pass"===n?Object(j.translate)("pass"):"nothing"===n?"-":t}},{key:"getTarget",value:function(){var e=this.props.item,t=e.match_type,n=e.action_data;return t===cc?n.url:null}},{key:"getServerUrl",value:function(e,t){return"server"===t?this.props.item.action_data.server+e:e}},{key:"getUrl",value:function(e,t){return e=this.getServerUrl(e,t),this.props.item.enabled?e:k.a.createElement("strike",null,e)}},{key:"getName",value:function(e,t){var n=this.props.item,r=n.regex,o=n.match_type;if(t)return this.props.item.enabled?t:k.a.createElement("strike",null,t);var a=this.getUrl(e,o);return r?a:k.a.createElement(Wr,{url:this.getServerUrl(e,o)},a)}},{key:"renderSource",value:function(e,t,n){var r=this.getName(e,t);return k.a.createElement("td",{className:"column-primary column-url has-row-actions"},r,k.a.createElement("br",null),k.a.createElement("span",{className:"target"},this.getTarget()),k.a.createElement(xi,{disabled:n},this.getMenu()))}},{key:"renderEditColumns",value:function(){return k.a.createElement("td",{className:"column-primary column-url",colSpan:"4"},k.a.createElement(tf,{item:this.props.item,onCancel:this.onCancel}))}},{key:"renderCheck",value:function(){return k.a.createElement(so,{onClose:this.closeCheck,padding:!1},k.a.createElement(Ah,{item:this.props.item}))}},{key:"renderViewColumns",value:function(e){var t=this.props.item,n=t.url,r=t.hits,o=t.last_access,a=t.title,i=t.position;return k.a.createElement(k.a.Fragment,null,this.renderSource(n,a,e),k.a.createElement("td",{className:"column-position"},Object(j.numberFormat)(i),this.state.showCheck&&this.renderCheck()),k.a.createElement("td",{className:"column-last_count"},Object(j.numberFormat)(r)),k.a.createElement("td",{className:"column_last_access"},o))}},{key:"render",value:function(){var e=this.props.item,t=e.id,n=e.enabled,r=this.props,o=r.selected,a=r.status,i=a===Xe,l=a===et,u=!n||i||l,s=to()({disabled:u});return k.a.createElement("tr",{className:s},k.a.createElement("th",{scope:"row",className:"check-column"},!l&&k.a.createElement("input",{type:"checkbox",name:"item[]",value:t,disabled:i,checked:o,onChange:this.onSelected}),l&&k.a.createElement(Lo,{size:"small"})),k.a.createElement("td",{className:"column-code"},this.getCode()),this.state.editing?this.renderEditColumns():this.renderViewColumns(l))}}])&&Rh(n.prototype,r),o&&Rh(n,o),t}();var Uh=Te(null,function(e){return{onSetSelected:function(t){e(Wp(t))},onTableAction:function(t,n){e(Lp(t,n))}}})(Mh);function Bh(e){return(Bh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function zh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Vh(e){return(Vh=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Wh(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Hh(e,t){return(Hh=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var Gh=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=function(e,t){return!t||"object"!==Bh(t)&&"function"!=typeof t?Wh(e):t}(this,Vh(t).call(this,e))).handleRender=n.renderRow.bind(Wh(n)),n.props.onLoadRedirects(),n.props.onLoadGroups(),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Hh(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderRow",value:function(e,t,n){var r=this.props.redirect.saving,o=n.isLoading?Xe:Ze,a=-1!==r.indexOf(e.id)?et:o;return k.a.createElement(Uh,{item:e,key:t,selected:n.isSelected,status:a})}},{key:"getGroups",value:function(e){return[{value:0,text:Object(j.translate)("All groups")}].concat(Rc(e))}},{key:"renderNew",value:function(){var e=this.props.redirect.addTop,t=to()({"add-new":!0,edit:!0,addTop:e});return k.a.createElement(k.a.Fragment,null,!e&&k.a.createElement("h2",null,Object(j.translate)("Add new redirection")),k.a.createElement("div",{className:t},k.a.createElement(tf,{item:vc("",0,this.props.defaultFlags),saveButton:Object(j.translate)("Add Redirect"),autoFocus:e})))}},{key:"canFilter",value:function(e,t){return e.status===Ze&&t!==Xe}},{key:"render",value:function(){var e=this.props.redirect,t=e.status,n=e.total,r=e.table,o=e.rows,a=e.addTop,i=this.props.group,l=t===Ze&&i.status===Ze;return k.a.createElement("div",{className:"redirects"},a&&this.renderNew(),k.a.createElement(hi,{status:t,table:r,onSearch:this.props.onSearch,ignoreFilter:["group"]}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,bulk:[{id:"delete",name:Object(j.translate)("Delete")},{id:"enable",name:Object(j.translate)("Enable")},{id:"disable",name:Object(j.translate)("Disable")},{id:"reset",name:Object(j.translate)("Reset hits")}],status:t},k.a.createElement(lh,{selected:r.filter?r.filter:"0",options:this.getGroups(i.rows),isEnabled:this.canFilter(i,t),onFilter:this.props.onFilter,key:Pt(r)})),k.a.createElement(Ha,{headers:[{name:"cb",check:!0},{name:"code",title:Object(j.translate)("Type"),sortable:!1},{name:"url",title:Object(j.translate)("URL"),primary:!0},{name:"position",title:Object(j.translate)("Pos")},{name:"last_count",title:Object(j.translate)("Hits")},{name:"last_access",title:Object(j.translate)("Last Access")}],rows:o,total:n,row:this.handleRender,table:r,status:t,onSetAllSelected:this.props.onSetAllSelected,onSetOrderBy:this.props.onSetOrderBy}),k.a.createElement(ui,{total:n,selected:r.selected,table:r,onChangePage:this.props.onChangePage,onAction:this.props.onAction,status:t}),l&&!a&&this.renderNew())}}])&&zh(n.prototype,r),o&&zh(n,o),t}();var qh=Te(function(e){return{redirect:e.redirect,group:e.group,defaultFlags:sl(e)}},function(e){return{onLoadGroups:function(){e(Bf())},onLoadRedirects:function(t){e(Mp(t))},onSearch:function(t){e(zp(t))},onChangePage:function(t){e(Bp(t))},onAction:function(t){e(Lp(t))},onSetAllSelected:function(t){e(Hp(t))},onSetOrderBy:function(t,n){e(Up(t,n))},onFilter:function(t){e(Vp("group",t))}}})(Gh),$h=!!document.documentElement.currentStyle,Yh={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},Kh=["letter-spacing","line-height","font-family","font-weight","font-size","font-style","tab-size","text-rendering","text-transform","width","text-indent","padding-top","padding-right","padding-bottom","padding-left","border-top-width","border-right-width","border-bottom-width","border-left-width","box-sizing"],Qh={},Xh=document.createElement("textarea"),Jh=function(e){Object.keys(Yh).forEach(function(t){e.style.setProperty(t,Yh[t],"important")})};function Zh(e,t,n,r,o){void 0===n&&(n=!1),void 0===r&&(r=null),void 0===o&&(o=null),null===Xh.parentNode&&document.body.appendChild(Xh);var a=function(e,t,n){void 0===n&&(n=!1);if(n&&Qh[t])return Qh[t];var r=window.getComputedStyle(e);if(null===r)return null;var o=Kh.reduce(function(e,t){return e[t]=r.getPropertyValue(t),e},{}),a=o["box-sizing"];if(""===a)return null;$h&&"border-box"===a&&(o.width=parseFloat(o.width)+parseFloat(r["border-right-width"])+parseFloat(r["border-left-width"])+parseFloat(r["padding-right"])+parseFloat(r["padding-left"])+"px");var i=parseFloat(o["padding-bottom"])+parseFloat(o["padding-top"]),l=parseFloat(o["border-bottom-width"])+parseFloat(o["border-top-width"]),u={sizingStyle:o,paddingSize:i,borderSize:l,boxSizing:a};n&&(Qh[t]=u);return u}(e,t,n);if(null===a)return null;var i=a.paddingSize,l=a.borderSize,u=a.boxSizing,s=a.sizingStyle;Object.keys(s).forEach(function(e){Xh.style[e]=s[e]}),Jh(Xh),Xh.value=e.value||e.placeholder||"x";var c=-1/0,p=1/0,f=Xh.scrollHeight;"border-box"===u?f+=l:"content-box"===u&&(f-=i),Xh.value="x";var d=Xh.scrollHeight-i,h=Math.floor(f/d);return null!==r&&(c=d*r,"border-box"===u&&(c=c+i+l),f=Math.max(c,f)),null!==o&&(p=d*o,"border-box"===u&&(p=p+i+l),f=Math.min(p,f)),{height:f,minHeight:c,maxHeight:p,rowCount:Math.floor(f/d),valueRowCount:h}}Jh(Xh);var em=function(){},tm=0,nm=function(e){function t(t){var n;return(n=e.call(this,t)||this)._onRef=function(e){n._ref=e;var t=n.props.inputRef;"function"!=typeof t?t.current=e:t(e)},n._onChange=function(e){n._controlled||n._resizeComponent(),n.props.onChange(e,T(T(n)))},n._resizeComponent=function(e){void 0===e&&(e=em);var t=Zh(n._ref,n._uid,n.props.useCacheForDOMMeasurements,n.props.minRows,n.props.maxRows);if(null!==t){var r=t.height,o=t.minHeight,a=t.maxHeight,i=t.rowCount,l=t.valueRowCount;n.rowCount=i,n.valueRowCount=l,n.state.height===r&&n.state.minHeight===o&&n.state.maxHeight===a?e():n.setState({height:r,minHeight:o,maxHeight:a},e)}else e()},n.state={height:t.style&&t.style.height||0,minHeight:-1/0,maxHeight:1/0},n._uid=tm++,n._controlled=void 0!==t.value,n._resizeLock=!1,n}A(t,e);var n=t.prototype;return n.render=function(){var e=this.props,t=(e.inputRef,e.maxRows,e.minRows,e.onHeightChange,e.useCacheForDOMMeasurements,W(e,["inputRef","maxRows","minRows","onHeightChange","useCacheForDOMMeasurements"]));return t.style=V({},t.style,{height:this.state.height}),Math.max(t.style.maxHeight||1/0,this.state.maxHeight)<this.state.height&&(t.style.overflow="hidden"),k.a.createElement("textarea",V({},t,{onChange:this._onChange,ref:this._onRef}))},n.componentDidMount=function(){var e=this;this._resizeComponent(),this._resizeListener=function(){e._resizeLock||(e._resizeLock=!0,e._resizeComponent(function(){e._resizeLock=!1}))},window.addEventListener("resize",this._resizeListener)},n.componentDidUpdate=function(e,t){e!==this.props&&this._resizeComponent(),this.state.height!==t.height&&this.props.onHeightChange(this.state.height,this)},n.componentWillUnmount=function(){window.removeEventListener("resize",this._resizeListener),function(e){delete Qh[e]}(this._uid)},t}(k.a.Component);nm.defaultProps={inputRef:em,onChange:em,onHeightChange:em,useCacheForDOMMeasurements:!1};var rm=nm,om=function(){return{type:rr}},am=function(){return{type:or}};n(131);function im(e){return(im="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function lm(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function um(e){return(um=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function sm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function cm(e,t){return(cm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var pm=function(e){function t(){var e,n,r,o,a;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var i=arguments.length,l=new Array(i),u=0;u<i;u++)l[u]=arguments[u];return n=function(e,t){return!t||"object"!==im(t)&&"function"!=typeof t?sm(e):t}(this,(e=um(t)).call.apply(e,[this].concat(l))),r=sm(n),a=function(){n.props.onClear()},(o="onClick")in r?Object.defineProperty(r,o,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[o]=a,n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&cm(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidUpdate",value:function(e){0===e.errors.length&&this.props.errors.length>0&&window.scrollTo(0,0)}},{key:"getDebug",value:function(e){for(var t=[Redirectioni10n.versions],n=0;n<e.length;n++){var r=e[n].request,o=void 0!==r&&r;t.push(""),t.push("Error: "+this.getErrorDetails(e[n])),o&&o.status&&o.statusText&&(t.push("Action: "+o.action),o.params&&t.push("Params: "+JSON.stringify(o.params)),t.push("Code: "+o.status+" "+o.statusText)),o&&t.push("Raw: "+(o.raw?o.raw:"-no data-"))}return t}},{key:"getErrorDetails",value:function(e){return 0===e.code?e.message:e.data&&e.data.wpdb?"".concat(e.message," (").concat(e.code,"): ").concat(e.data.wpdb):e.code?"".concat(e.message," (").concat(e.code,")"):e.message}},{key:"removeSameError",value:function(e){return e.filter(function(t,n){for(var r=n+1;n<e.length-1;n++){if(t.code&&e[r].code&&t.code===e[r].code)return!1;if(t.message&&e[r].message&&t.message===e[r].message)return!1}return!0})}},{key:"renderError",value:function(e){var t=this.removeSameError(e),n=this.getDebug(t),r="mailto:john@redirection.me?subject=Redirection%20Error&body="+encodeURIComponent(n.join("\n")),o="https://github.com/johngodley/redirection/issues/new?title=Redirection%20Error&body="+encodeURIComponent("```\n"+n.join("\n")+"\n```\n\n");return k.a.createElement("div",{className:"red-error"},k.a.createElement("div",{className:"closer",onClick:this.onClick},"✖"),k.a.createElement("h2",null,Object(j.translate)("Something went wrong 🙁")),k.a.createElement("div",{className:"red-error_title"},t.map(function(e,t){return k.a.createElement($o,{error:e,key:t})})),k.a.createElement(ha,null),k.a.createElement("h3",null,Object(j.translate)("What do I do next?")),k.a.createElement("ol",null,k.a.createElement("li",null,Object(j.translate)('Take a look at the {{link}}plugin status{{/link}}. It may be able to identify and "magic fix" the problem.',{components:{link:k.a.createElement("a",{href:"?page=redirection.php&sub=support"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Caching software{{/link}}, in particular Cloudflare, can cache the wrong thing. Try clearing all your caches.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/cloudflare/"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Please temporarily disable other plugins!{{/link}} This fixes so many problems.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/plugins/"})}})),k.a.createElement("li",null,Object(j.translate)("If you are using WordPress 5.2 or newer then look at your {{link}}Site Health{{/link}} and resolve any issues.",{components:{link:k.a.createElement(Wr,{url:"http://latest.local/wp-admin/site-health.php"})}}))),k.a.createElement("h3",null,Object(j.translate)("That didn't help")),k.a.createElement("p",null,Object(j.translate)("Please {{strong}}create an issue{{/strong}} or send it in an {{strong}}email{{/strong}}.",{components:{strong:k.a.createElement("strong",null)}})),k.a.createElement("p",null,k.a.createElement("a",{href:o,className:"button-primary"},Object(j.translate)("Create An Issue"))," ",k.a.createElement("a",{href:r,className:"button-secondary"},Object(j.translate)("Email"))),k.a.createElement("p",null,Object(j.translate)("Include these details in your report along with a description of what you were doing and a screenshot")),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:n.join("\n"),spellCheck:!1})))}},{key:"render",value:function(){var e=this.props.errors;return 0===e.length?null:this.renderError(e)}}])&&lm(n.prototype,r),o&&lm(n,o),t}();var fm=Te(function(e){return{errors:e.message.errors}},function(e){return{onClear:function(){e(om())}}})(pm);n(133);function dm(e){return(dm="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function hm(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function mm(e){return(mm=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function bm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function gm(e,t){return(gm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ym(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var vm=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==dm(t)&&"function"!=typeof t?bm(e):t}(this,mm(t).call(this,e)),ym(bm(n),"onClick",function(){n.state.shrunk?n.setState({shrunk:!1}):n.props.onClear()}),ym(bm(n),"onShrink",function(){n.setState({shrunk:!0})}),n.state={shrunk:!1,width:"auto"},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&gm(e,t)}(t,k.a.Component),n=t,(r=[{key:"getSnapshotBeforeUpdate",value:function(e){return this.props.notices!==e.notices&&(this.stopTimer(),this.setState({shrunk:!1}),this.startTimer()),null}},{key:"componentWillUnmount",value:function(){this.stopTimer()}},{key:"stopTimer",value:function(){clearTimeout(this.timer)}},{key:"startTimer",value:function(){this.timer=setTimeout(this.onShrink,5e3)}},{key:"getNotice",value:function(e){return e.length>1?e[e.length-1]+" ("+e.length+")":e[0]}},{key:"renderNotice",value:function(e){var t="notice notice-info redirection-notice"+(this.state.shrunk?" redirection-notice_shrunk":"");return k.a.createElement("div",{className:t,onClick:this.onClick},k.a.createElement("div",{className:"closer"},"✔"),k.a.createElement("p",null,this.state.shrunk?k.a.createElement("span",{title:Object(j.translate)("View notice")},"🔔"):this.getNotice(e)))}},{key:"render",value:function(){var e=this.props.notices;return 0===e.length?null:this.renderNotice(e)}}])&&hm(n.prototype,r),o&&hm(n,o),t}();var Em=Te(function(e){return{notices:e.message.notices}},function(e){return{onClear:function(){e(am())}}})(vm);n(135);function wm(e){return(wm="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Om(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function xm(e,t){return!t||"object"!==wm(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Sm(e){return(Sm=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function km(e,t){return(km=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var _m=function(e){function t(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),xm(this,Sm(t).call(this,e))}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&km(e,t)}(t,k.a.Component),n=t,(r=[{key:"getMessage",value:function(e){return e>1?Object(j.translate)("Saving...")+" ("+e+")":Object(j.translate)("Saving...")}},{key:"renderProgress",value:function(e){return k.a.createElement("div",{className:"notice notice-progress redirection-notice"},k.a.createElement(Lo,null),k.a.createElement("p",null,this.getMessage(e)))}},{key:"render",value:function(){var e=this.props.inProgress;return 0===e?null:this.renderProgress(e)}}])&&Om(n.prototype,r),o&&Om(n,o),t}();var Cm=Te(function(e){return{inProgress:e.message.inProgress}},null)(_m),jm=function(e){var t=e.item,n=e.isCurrent,r=e.onClick,o=Redirectioni10n.pluginRoot+(""===t.value?"":"&sub="+t.value);return k.a.createElement("li",null,k.a.createElement("a",{className:n?"current":"",href:o,onClick:function(e){e.preventDefault(),r(t.value,o)}},t.name))},Pm=(n(137),function(e){var t=e.onChangePage,n=gt();return k.a.createElement("div",{className:"subsubsub-container"},k.a.createElement("ul",{className:"subsubsub"},[{name:Object(j.translate)("Redirects"),value:""},{name:Object(j.translate)("Groups"),value:"groups"},{name:Object(j.translate)("Log"),value:"log"},{name:Object(j.translate)("404s"),value:"404s"},{name:Object(j.translate)("Import/Export"),value:"io"},{name:Object(j.translate)("Options"),value:"options"},{name:Object(j.translate)("Support"),value:"support"}].map(function(e,r){return k.a.createElement(jm,{key:r,item:e,isCurrent:n===e.value||"redirect"===n&&""===e.value,onClick:t})}).reduce(function(e,t){return[e," | ",t]})))}),Tm=n(22),Am=n.n(Tm),Dm=n(33),Rm=n.n(Dm),Im=n(20),Nm=n.n(Im),Fm=n(10),Lm=n.n(Fm),Mm=n(21),Um=n.n(Mm),Bm=function(e){return function(e){function t(){return Nm()(this,t),Lm()(this,e.apply(this,arguments))}return Um()(t,e),t.prototype.componentDidUpdate=function(){var e=this,t=Date.now(),n=!1;Object.keys(this.paths).forEach(function(r){var o=e.paths[r];if(o){n=!0;var a=o.style;a.transitionDuration=".3s, .3s, .3s, .06s",e.prevTimeStamp&&t-e.prevTimeStamp<100&&(a.transitionDuration="0s, 0s")}}),n&&(this.prevTimeStamp=Date.now())},t.prototype.render=function(){return e.prototype.render.call(this)},t}(e)},zm={className:"",percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,style:{},trailColor:"#D9D9D9",trailWidth:1},Vm=R.a.oneOfType([R.a.number,R.a.string]),Wm={className:R.a.string,percent:R.a.oneOfType([Vm,R.a.arrayOf(Vm)]),prefixCls:R.a.string,strokeColor:R.a.oneOfType([R.a.string,R.a.arrayOf(R.a.string)]),strokeLinecap:R.a.oneOf(["butt","round","square"]),strokeWidth:Vm,style:R.a.object,trailColor:R.a.string,trailWidth:Vm},Hm=function(e){function t(){var n,r,o;Nm()(this,t);for(var a=arguments.length,i=Array(a),l=0;l<a;l++)i[l]=arguments[l];return n=r=Lm()(this,e.call.apply(e,[this].concat(i))),r.paths={},o=n,Lm()(r,o)}return Um()(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.className,r=t.percent,o=t.prefixCls,a=t.strokeColor,i=t.strokeLinecap,l=t.strokeWidth,u=t.style,s=t.trailColor,c=t.trailWidth,p=Rm()(t,["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth"]);delete p.gapPosition;var f=Array.isArray(r)?r:[r],d=Array.isArray(a)?a:[a],h=l/2,m="M "+("round"===i?h:0)+","+h+"\n L "+("round"===i?100-l/2:100)+","+h,b="0 0 100 "+l,g=0;return k.a.createElement("svg",Am()({className:o+"-line "+n,viewBox:b,preserveAspectRatio:"none",style:u},p),k.a.createElement("path",{className:o+"-line-trail",d:m,strokeLinecap:i,stroke:s,strokeWidth:c||l,fillOpacity:"0"}),f.map(function(t,n){var r={strokeDasharray:t+"px, 100px",strokeDashoffset:"-"+g+"px",transition:"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},a=d[n]||d[d.length-1];return g+=t,k.a.createElement("path",{key:n,className:o+"-line-path",d:m,strokeLinecap:i,stroke:a,strokeWidth:l,fillOpacity:"0",ref:function(t){e.paths[n]=t},style:r})}))},t}(S.Component);Hm.propTypes=Wm,Hm.defaultProps=zm;var Gm=Bm(Hm),qm=function(e){function t(){var n,r,o;Nm()(this,t);for(var a=arguments.length,i=Array(a),l=0;l<a;l++)i[l]=arguments[l];return n=r=Lm()(this,e.call.apply(e,[this].concat(i))),r.paths={},o=n,Lm()(r,o)}return Um()(t,e),t.prototype.getPathStyles=function(e,t,n,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=50-r/2,i=0,l=-a,u=0,s=-2*a;switch(arguments[5]){case"left":i=-a,l=0,u=2*a,s=0;break;case"right":i=a,l=0,u=-2*a,s=0;break;case"bottom":l=a,s=2*a}var c="M 50,50 m "+i+","+l+"\n a "+a+","+a+" 0 1 1 "+u+","+-s+"\n a "+a+","+a+" 0 1 1 "+-u+","+s,p=2*Math.PI*a;return{pathString:c,pathStyle:{stroke:n,strokeDasharray:t/100*(p-o)+"px "+p+"px",strokeDashoffset:"-"+(o/2+e/100*(p-o))+"px",transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"}}},t.prototype.getStokeList=function(){var e=this,t=this.props,n=t.prefixCls,r=t.percent,o=t.strokeColor,a=t.strokeWidth,i=t.strokeLinecap,l=t.gapDegree,u=t.gapPosition,s=Array.isArray(r)?r:[r],c=Array.isArray(o)?o:[o],p=0;return s.map(function(t,r){var o=c[r]||c[c.length-1],s=e.getPathStyles(p,t,o,a,l,u),f=s.pathString,d=s.pathStyle;return p+=t,k.a.createElement("path",{key:r,className:n+"-circle-path",d:f,strokeLinecap:i,strokeWidth:0===t?0:a,fillOpacity:"0",style:d,ref:function(t){e.paths[r]=t}})})},t.prototype.render=function(){var e=this.props,t=e.prefixCls,n=e.strokeWidth,r=e.trailWidth,o=e.gapDegree,a=e.gapPosition,i=e.trailColor,l=e.strokeLinecap,u=e.style,s=e.className,c=Rm()(e,["prefixCls","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className"]),p=this.getPathStyles(0,100,i,n,o,a),f=p.pathString,d=p.pathStyle;return delete c.percent,delete c.strokeColor,k.a.createElement("svg",Am()({className:t+"-circle "+s,viewBox:"0 0 100 100",style:u},c),k.a.createElement("path",{className:t+"-circle-trail",d:f,stroke:i,strokeLinecap:l,strokeWidth:r||n,fillOpacity:"0",style:d}),this.getStokeList())},t}(S.Component);qm.propTypes=Am()({},Wm,{gapPosition:R.a.oneOf(["top","bottom","left","right"])}),qm.defaultProps=Am()({},zm,{gapPosition:"top"});Bm(qm);function $m(e){return($m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ym(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Km(e){return(Km=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Qm(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Xm(e,t){return(Xm=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Jm(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Zm=function(e){function t(){var e,n;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return n=function(e,t){return!t||"object"!==$m(t)&&"function"!=typeof t?Qm(e):t}(this,(e=Km(t)).call.apply(e,[this].concat(o))),Jm(Qm(n),"onWarning",function(e){return e.returnValue=n.props.message,e.returnValue}),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Xm(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidMount",value:function(){this.props.prevent&&this.enable()}},{key:"componentWillUnmount",value:function(){this.props.prevent&&this.disable()}},{key:"componentDidUpdate",value:function(e){e.prevent!==this.props.prevent&&(this.props.prevent?this.enable():this.disable())}},{key:"enable",value:function(){window.addEventListener("beforeunload",this.onWarning)}},{key:"disable",value:function(){window.removeEventListener("beforeunload",this.onWarning)}},{key:"render",value:function(){return null}}])&&Ym(n.prototype,r),o&&Ym(n,o),t}();Jm(Zm,"defaultProps",{prevent:!0});var eb=Zm;n(176);function tb(e){return(tb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function nb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function rb(e){return(rb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ob(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ab(e,t){return(ab=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ib(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var lb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==tb(t)&&"function"!=typeof t?ob(e):t}(this,rb(t).call(this,e)),ib(ob(n),"onRetry",function(e){e.preventDefault(),n.props.onUpgrade()}),ib(ob(n),"onSkip",function(e){e.preventDefault(),n.props.onUpgrade("skip")}),ib(ob(n),"onStop",function(e){e.preventDefault(),n.props.onUpgrade("stop")}),ib(ob(n),"onFinish",function(e){e.preventDefault(),n.props.onFinished&&n.props.onFinished(),n.props.onFinish()}),ib(ob(n),"onComplete",function(){n.props.onComplete(Redirectioni10n.database.next)}),n.hasWork(e)&&!e.manual&&e.onUpgrade(),n.state={looped:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ab(e,t)}(t,k.a.Component),n=t,(r=[{key:"hasWork",value:function(e){var t=e.status;return"error"!==e.result&&("need-install"===t||"need-update"===t)}},{key:"hasFinished",value:function(e){return"finish-install"===e||"finish-update"===e}},{key:"componentDidUpdate",value:function(e){var t=this;e.time!==this.props.time&&this.hasWork(this.props)&&(e.complete===this.props.complete&&"error"!==this.props.status?this.setState({looped:!0}):setTimeout(function(){t.props.onUpgrade()},1e3))}},{key:"getErrorMessage",value:function(){var e=this.props,t=e.debug,n=void 0===t?[]:t,r=e.reason;return[r?"Message: "+r:null,"Installed: "+e.current,"Next: "+e.next,n.length>0?"Debug: "+n.join("\n"):null].filter(function(e){return e}).join("\n")}},{key:"renderLoopError",value:function(){return this.renderError(Object(j.translate)("A loop was detected and the upgrade has been stopped. This usually indicates {{support}}your site is cached{{/support}} and database changes are not being saved.",{components:{support:k.a.createElement("a",{href:"https://redirection.me/support/problems/data-is-not-saved/"})}}),!1)}},{key:"renderError",value:function(e){var t=this.props.current,n=this.getErrorMessage();return k.a.createElement("div",{className:"redirection-database_error red-error"},k.a.createElement("h3",null,Object(j.translate)("Database problem")),k.a.createElement("p",null,e),k.a.createElement("p",null,k.a.createElement("button",{className:"button button-primary",onClick:this.onRetry},Object(j.translate)("Try again"))," ","-"!==t&&k.a.createElement("button",{className:"button button-secondary",onClick:this.onSkip},Object(j.translate)("Skip this stage"))," ","-"!==t&&k.a.createElement("button",{className:"button button-secondary",onClick:this.onStop},Object(j.translate)("Stop upgrade"))),k.a.createElement("p",null,Object(j.translate)("If you want to {{support}}ask for support{{/support}} please include these details:",{components:{support:k.a.createElement("a",{href:"mailto:john@redirection.me?subject=Redirection%20Database&body="+encodeURIComponent("Redirection: "+Redirectioni10n.versions)})}})),k.a.createElement(rm,{readOnly:!0,value:n,rows:"15"}))}},{key:"renderIntro",value:function(){return this.hasWork(this.props)?k.a.createElement("p",null,Object(j.translate)("Please remain on this page until complete.")):null}},{key:"getTitle",value:function(){return"need-update"===this.props.status?Object(j.translate)("Upgrading Redirection"):Object(j.translate)("Setting up Redirection")}},{key:"render",value:function(){var e=this.props,t=e.status,n=e.complete,r=void 0===n?0:n,o=e.reason,a=e.result,i=e.manual,l=this.state.looped,u="ok"===a&&!this.hasFinished(t)&&!l;return i?k.a.createElement("div",{className:"redirection-database"},k.a.createElement("h1",null,Object(j.translate)("Manual Install")),k.a.createElement("p",null,Object(j.translate)("If your site needs special database permissions, or you would rather do it yourself, you can manually run the following SQL.")," ",Object(j.translate)('Click "Finished! 🎉" when finished.')),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:Redirectioni10n.database.manual.join(";\n\n")+";",spellCheck:!1})),k.a.createElement("button",{className:"button button-primary",onClick:this.onComplete},Object(j.translate)("Finished! 🎉")),k.a.createElement("p",null,Object(j.translate)("If you do not complete the manual install you will be returned here."))):k.a.createElement("div",{className:"redirection-database"},k.a.createElement(eb,{message:Object(j.translate)("Leaving before the process has completed may cause problems."),prevent:"error"!==a&&a!==Je}),k.a.createElement("h1",null,this.getTitle()),"error"!==a&&this.renderIntro(),k.a.createElement("div",{className:"redirection-database_progress"},k.a.createElement("h3",null,Object(j.translate)("Progress: %(complete)d%%",{args:{complete:r}})),k.a.createElement(Gm,{percent:r,strokeWidth:"4",trailWidth:"4",strokeLinecap:"square"}),o&&"ok"===a&&k.a.createElement("p",null,o),u&&k.a.createElement("div",{className:"redirection-database_spinner"},k.a.createElement(Lo,null)),"error"===a&&this.renderError(o),l&&this.renderLoopError(),this.hasFinished(t)&&k.a.createElement("button",{className:"button button-primary",onClick:this.onFinish},Object(j.translate)("Finished! 🎉"))))}}])&&nb(n.prototype,r),o&&nb(n,o),t}();ib(lb,"defaultProps",{manual:!1});var ub=Te(function(e){var t=e.settings.database,n=t.status,r=t.complete;return{status:n,result:t.result,complete:r,reason:t.reason,debug:t.debug,time:t.time,current:t.current,next:t.next}},function(e){return{onUpgrade:function(t){e(Nr(t))},onFinish:function(){e(Fr())},onComplete:function(t){e(Rr("database",t))}}})(lb);n(178);function sb(e){return(sb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function cb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function pb(e){return(pb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function fb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function db(e,t){return(db=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function hb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var mb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==sb(t)&&"function"!=typeof t?fb(e):t}(this,pb(t).call(this,e)),hb(fb(n),"nextStep",function(e){e.preventDefault(),n.setState({step:n.state.step+1})}),hb(fb(n),"prevStep",function(e){e.preventDefault(),n.setState({step:n.state.step-1})}),hb(fb(n),"finishSetup",function(e){var t=n.getFirstApi();Redirectioni10n.api.routes[t]&&Rt(Redirectioni10n.api.routes[t]),e.preventDefault(),n.setState({step:3})}),hb(fb(n),"onChange",function(e){var t=hb({},e.target.name,e.target.checked);"log"!==e.target.name||e.target.checked||(t.ip=!1),n.setState(t)}),hb(fb(n),"startManual",function(e){e.preventDefault(),n.afterFinishInstall(),n.setState({step:3,manual:!0})}),hb(fb(n),"stopManual",function(e){e.preventDefault(),n.setState({step:3,manual:!1})}),hb(fb(n),"afterFinishInstall",function(){var e=n.state,t=e.ip,r=e.log,o=e.monitor;n.props.onSaveSettings({expire_redirect:r?7:-1,expire_404:r?7:-1,ip_logging:t?1:0,rest_api:n.getFirstApi(),monitor_types:o?["post","page"]:void 0,monitor_post:o?1:0})}),n.state={step:0,monitor:!1,log:!1,ip:!1,manual:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&db(e,t)}(t,k.a.Component),n=t,(r=[{key:"getFirstApi",value:function(){for(var e=this.props.apiTest,t=Object.keys(e),n=0;n<t.length;n++)if(e[n]&&"ok"===e[n].GET.status&&"ok"===e[n].POST.status)return n;return 0}},{key:"renderStep0",value:function(){return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Welcome to Redirection 🚀🎉")),k.a.createElement("p",null,Object(j.translate)("Thank you for installing and using Redirection v%(version)s. This plugin will allow you to manage 301 redirections, keep track of 404 errors, and improve your site, with no knowledge of Apache or Nginx needed.",{args:{version:Redirectioni10n.version}})),k.a.createElement("p",null,Object(j.translate)("Redirection is designed to be used on sites with a few redirects to sites with thousands of redirects.")),k.a.createElement("h3",null,Object(j.translate)("How do I use this plugin?")),k.a.createElement("p",null,Object(j.translate)("A simple redirect involves setting a {{strong}}source URL{{/strong}} (the old URL) and a {{strong}}target URL{{/strong}} (the new URL). Here's an example:",{components:{strong:k.a.createElement("strong",null)}})),k.a.createElement("table",{className:"edit edit-redirection"},k.a.createElement("tbody",null,k.a.createElement("tr",null,k.a.createElement("th",null,Object(j.translate)("Source URL"),":"),k.a.createElement("td",null,k.a.createElement("input",{type:"text",readOnly:!0,value:Object(j.translate)("(Example) The source URL is your old or original URL")}))),k.a.createElement("tr",null,k.a.createElement("th",null,Object(j.translate)("Target URL"),":"),k.a.createElement("td",null,k.a.createElement("input",{type:"text",readOnly:!0,value:Object(j.translate)("(Example) The target URL is the new URL")}))))),k.a.createElement("p",null,Object(j.translate)("That's all there is to it - you are now redirecting! Note that the above is just an example - you can now enter a redirect.")),k.a.createElement("p",null,Object(j.translate)("Full documentation can be found on the {{link}}Redirection website.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/"})}})),k.a.createElement("h3",null,Object(j.translate)("Some features you may find useful are"),":"),k.a.createElement("ul",null,k.a.createElement("li",null,Object(j.translate)("{{link}}Monitor 404 errors{{/link}}, get detailed information about the visitor, and fix any problems",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/tracking-404-errors/"})}})),k.a.createElement("li",null,Object(j.translate)("{{link}}Import{{/link}} from .htaccess, CSV, and a variety of other plugins",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/import-export-redirects/"})}})),k.a.createElement("li",null,Object(j.translate)("More powerful URL matching, including {{regular}}regular expressions{{/regular}}, and {{other}}other conditions{{/other}}",{components:{regular:k.a.createElement(Wr,{url:"https://redirection.me/support/redirect-regular-expressions/"}),other:k.a.createElement(Wr,{url:"https://redirection.me/support/matching-redirects/"})}})),k.a.createElement("li",null,Object(j.translate)("Check a URL is being redirected"))),k.a.createElement("h3",null,Object(j.translate)("What's next?")),k.a.createElement("p",null,Object(j.translate)("First you will be asked a few questions, and then Redirection will set up your database.")),k.a.createElement("p",null,Object(j.translate)("When ready please press the button to continue.")),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.nextStep},Object(j.translate)("Start Setup"))))}},{key:"renderStep1",value:function(){var e=this.state,t=e.monitor,n=e.log,r=e.ip;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("Basic Setup")),k.a.createElement("p",null,Object(j.translate)("These are some options you may want to enable now. They can be changed at any time.")),k.a.createElement("div",{className:"wizard-option"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"monitor",type:"checkbox",checked:t,onChange:this.onChange})," ",Object(j.translate)("Monitor permalink changes in WordPress posts and pages"),".")),k.a.createElement("p",null,Object(j.translate)("If you change the permalink in a post or page then Redirection can automatically create a redirect for you.")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/options/#monitor"})}}))),k.a.createElement("div",{className:"wizard-option"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"log",type:"checkbox",checked:n,onChange:this.onChange})," ",Object(j.translate)("Keep a log of all redirects and 404 errors."))),k.a.createElement("p",null,Object(j.translate)("Storing logs for redirects and 404s will allow you to see what is happening on your site. This will increase your database storage requirements.")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/logs/"})}}))),k.a.createElement("div",{className:n?"wizard-option":"wizard-option wizard-option_disabled"},k.a.createElement("p",null,k.a.createElement("label",null,k.a.createElement("input",{name:"ip",type:"checkbox",disabled:!n,checked:r,onChange:this.onChange})," ",Object(j.translate)("Store IP information for redirects and 404 errors."))),k.a.createElement("p",null,Object(j.translate)("Storing the IP address allows you to perform additional log actions. Note that you will need to adhere to local laws regarding the collection of data (for example GDPR).")," ",Object(j.translate)("{{link}}Read more about this.{{/link}}",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/privacy-gdpr/"})}}))),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.nextStep},Object(j.translate)("Continue Setup")),"  ",k.a.createElement("button",{className:"button",onClick:this.prevStep},Object(j.translate)("Go back"))))}},{key:"renderStep2",value:function(){var e=Oi.parse(Dt()),t=Oi.parse(Redirectioni10n.pluginBaseUrl),n=e.protocol!==t.protocol||e.host!==t.host;return k.a.createElement(k.a.Fragment,null,k.a.createElement("h2",null,Object(j.translate)("REST API")),k.a.createElement("p",null,Object(j.translate)("Redirection uses the {{link}}WordPress REST API{{/link}} to communicate with WordPress. This is enabled and working by default. Sometimes the REST API is blocked by:",{components:{link:k.a.createElement(Wr,{url:"https://developer.wordpress.org/rest-api/"})}})),k.a.createElement("ul",null,k.a.createElement("li",null,Object(j.translate)("A security plugin (e.g Wordfence)")),k.a.createElement("li",null,Object(j.translate)("A server firewall or other server configuration (e.g OVH)")),k.a.createElement("li",null,Object(j.translate)("Caching software (e.g Cloudflare)")),k.a.createElement("li",null,Object(j.translate)("Some other plugin that blocks the REST API"))),k.a.createElement("p",null,Object(j.translate)("If you do experience a problem then please consult your plugin documentation, or try contacting your host support. This is generally {{link}}not a problem caused by Redirection{{/link}}.",{components:{link:k.a.createElement(Wr,{url:"https://redirection.me/support/problems/rest-api/"})}})),n&&k.a.createElement("div",{className:"red-error"},Object(j.translate)("You have different URLs configured on your WordPress Settings > General page, which is usually an indication of a misconfiguration, and it can cause problems with the REST API. Please review your settings."),k.a.createElement("p",null,k.a.createElement("code",null,e.protocol+"//"+e.host)),k.a.createElement("p",null,k.a.createElement("code",null,t.protocol+"//"+t.host))),k.a.createElement(ha,{allowChange:!1}),k.a.createElement("p",null,Object(j.translate)("You will need at least one working REST API to continue.")),k.a.createElement("div",{className:"wizard-buttons"},k.a.createElement("button",{className:"button-primary button",onClick:this.finishSetup},Object(j.translate)("Finish Setup")),"  ",k.a.createElement("button",{className:"button",onClick:this.prevStep},Object(j.translate)("Go back"))))}},{key:"renderStep3",value:function(){return k.a.createElement(ub,{onFinished:this.afterFinishInstall,manual:this.state.manual})}},{key:"getContentForStep",value:function(e){return 3===e?this.renderStep3():2===e?this.renderStep2():1===e?this.renderStep1():this.renderStep0()}},{key:"render",value:function(){var e=this.state,t=e.step,n=e.manual,r=this.props.result,o=this.getContentForStep(t);return k.a.createElement(k.a.Fragment,null,r===Je&&k.a.createElement(fm,null),k.a.createElement("div",{className:"wizard-wrapper"},0!==t&&3!==t&&k.a.createElement("h1",null,Object(j.translate)("Redirection")),k.a.createElement("div",{className:"wizard"},o)),k.a.createElement("div",{className:"wizard-support"},k.a.createElement(Wr,{url:"https://redirection.me/contact/"},Object(j.translate)("I need support!")),2===t&&k.a.createElement(k.a.Fragment,null," | ",k.a.createElement("a",{href:"#",onClick:this.startManual},Object(j.translate)("Manual Install"))),3===t&&n&&k.a.createElement(k.a.Fragment,null," | ",k.a.createElement("a",{href:"#",onClick:this.stopManual},Object(j.translate)("Automatic Install")))))}}])&&cb(n.prototype,r),o&&cb(n,o),t}();var bb=Te(function(e){return{result:e.settings.database.result,apiTest:e.settings.apiTest}},function(e){return{onSaveSettings:function(t){e(Tr(t))}}})(mb);function gb(e){return(gb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function yb(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function vb(e){return(vb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Eb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function wb(e,t){return(wb=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ob(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var xb=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==gb(t)&&"function"!=typeof t?Eb(e):t}(this,vb(t).call(this,e)),Ob(Eb(n),"onToggle",function(e){e.preventDefault(),n.setState({showManual:!n.state.showManual})}),Ob(Eb(n),"onComplete",function(){n.props.onComplete(Redirectioni10n.database.next)}),n.state={showManual:!1},n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&wb(e,t)}(t,k.a.Component),n=t,(r=[{key:"renderManual",value:function(){return k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)("If your site needs special database permissions, or you would rather do it yourself, you can manually run the following SQL.")," ",Object(j.translate)('Click "Complete Upgrade" when finished.')),k.a.createElement("p",null,k.a.createElement(rm,{readOnly:!0,cols:"120",value:Redirectioni10n.database.manual.join(";\n")+";",spellCheck:!1})),k.a.createElement("p",null,k.a.createElement("button",{className:"button-primary",onClick:this.onComplete},Object(j.translate)("Complete Upgrade"))))}},{key:"renderStandard",value:function(){var e=this.props.onShowUpgrade;return k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)('Click the "Upgrade Database" button to automatically upgrade the database.')),k.a.createElement("p",null,k.a.createElement("input",{className:"button-primary",type:"submit",value:Object(j.translate)("Upgrade Database"),onClick:e})))}},{key:"render",value:function(){var e,t=this.props,n=t.showDatabase,r=t.result,o=this.state.showManual;return n?k.a.createElement(k.a.Fragment,null,r===Je&&k.a.createElement(fm,null),k.a.createElement("div",{className:"wizard-wrapper"},k.a.createElement("div",{className:"wizard"},k.a.createElement(ub,null)))):k.a.createElement("div",{className:"wrap redirection"},k.a.createElement("h1",{className:"wp-heading-inline"},Object(j.translate)("Upgrade Required")),k.a.createElement("div",{className:"red-error"},k.a.createElement("h3",null,Object(j.translate)("Redirection database needs upgrading")),(e=Redirectioni10n.database).current===e.next?k.a.createElement("p",null,Object(j.translate)("A database upgrade is in progress. Please continue to finish.")):k.a.createElement(k.a.Fragment,null,k.a.createElement("p",null,Object(j.translate)("Redirection stores data in your database and sometimes this needs upgrading. Your database is at version {{strong}}%(current)s{{/strong}} and the latest is {{strong}}%(latest)s{{/strong}}.",{args:{current:Redirectioni10n.database.current,latest:Redirectioni10n.database.next},components:{strong:k.a.createElement("strong",null)}}))),k.a.createElement("p",null,Object(j.translate)("Please make a backup of your Redirection data: {{download}}downloading a backup{{/download}}. If you experience any issues you can import this back into Redirection.",{components:{download:k.a.createElement(Wr,{url:Hd("all","json")}),import:k.a.createElement(Wr,{url:"https://redirection.me/support/import-export-redirects/"})}})),o&&this.renderManual(),!o&&this.renderStandard()),k.a.createElement("div",{className:"database-switch"},!o&&k.a.createElement("a",{href:"#",onClick:this.onToggle},Object(j.translate)("Manual Upgrade")),o&&k.a.createElement("a",{href:"#",onClick:this.onToggle},Object(j.translate)("Automatic Upgrade"))))}}])&&yb(n.prototype,r),o&&yb(n,o),t}();var Sb=Te(null,function(e){return{onComplete:function(t){e(Rr("database",t))}}})(xb);n(180);function kb(e){return(kb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _b(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Cb(e){return(Cb=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function jb(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Pb(e,t){return(Pb=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Tb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ab=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),n=function(e,t){return!t||"object"!==kb(t)&&"function"!=typeof t?jb(e):t}(this,Cb(t).call(this,e)),Tb(jb(n),"onPageChanged",function(){var e=gt();n.changePage(e),n.setState({page:e,clicked:n.state.clicked+1})}),Tb(jb(n),"onChangePage",function(e,t){var r=n.props.errors;""===e&&(e="redirect"),"support"===e&&r.length>0?document.location.href=t:(n.props.onClear(),history.pushState({},null,t),n.changePage(e),n.setState({page:e,clicked:n.state.clicked+1}))}),Tb(jb(n),"onAdd",function(e){e.preventDefault(),n.props.onAdd()}),Tb(jb(n),"onShowUpgrade",function(e){e.preventDefault(),n.props.onShowUpgrade()}),n.state={page:gt(),clicked:0,stack:!1,error:"4.3.3"!==Redirectioni10n.version,info:!1},window.addEventListener("popstate",n.onPageChanged),n}var n,r,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Pb(e,t)}(t,k.a.Component),n=t,(r=[{key:"componentDidCatch",value:function(e,t){this.setState({error:!0,stack:e,info:t})}},{key:"componentWillUnmount",value:function(){window.removeEventListener("popstate",this.onPageChanged)}},{key:"changePage",value:function(e){var t=this.props,n=t.onSet404Table,r=t.onSetLogTable,o=t.onSetRedirectTable,a=t.onSetGroupTable;"404s"===e?n(_r().table):"log"===e?r(kr().table):"redirect"===e?o(jr().table):"groups"===e&&a(Cr().table)}},{key:"getContent",value:function(e){var t=this.state.clicked;switch(e){case"support":return k.a.createElement(Ra,null);case"404s":return k.a.createElement(nd,{key:t});case"log":return k.a.createElement(gl,{key:t});case"io":return k.a.createElement(eh,null);case"groups":return k.a.createElement(xh,{key:t});case"options":return k.a.createElement(Ao,null)}return k.a.createElement(qh,{key:t})}},{key:"renderError",value:function(){var e=[Redirectioni10n.versions,"Buster: 4.3.3 === "+Redirectioni10n.version,"",this.state.stack];return this.state.info&&this.state.info.componentStack&&e.push(this.state.info.componentStack),"4.3.3"!==Redirectioni10n.version?k.a.createElement("div",{className:"red-error"},k.a.createElement("h2",null,Object(j.translate)("Cached Redirection detected")),k.a.createElement("p",null,Object(j.translate)("Please clear your browser cache and reload this page.")),k.a.createElement("p",null,Object(j.translate)("If you are using a caching system such as Cloudflare then please read this: "),k.a.createElement(Wr,{url:"https://redirection.me/support/problems/cloudflare/?utm_source=redirection&utm_medium=plugin&utm_campaign=support"},Object(j.translate)("clearing your cache."))),k.a.createElement("p",null,k.a.createElement("textarea",{readOnly:!0,rows:e.length+3,cols:"120",value:e.join("\n"),spellCheck:!1}))):k.a.createElement("div",{className:"red-error"},k.a.createElement("h2",null,Object(j.translate)("Something went wrong 🙁")),k.a.createElement("p",null,Object(j.translate)("Redirection is not working. Try clearing your browser cache and reloading this page."),"  ",Object(j.translate)("If you are using a page caching plugin or service (CloudFlare, OVH, etc) then you can also try clearing that cache.")),k.a.createElement("p",null,Object(j.translate)("If that doesn't help, open your browser's error console and create a {{link}}new issue{{/link}} with the details.",{components:{link:k.a.createElement(Wr,{url:"https://github.com/johngodley/redirection/issues"})}})),k.a.createElement("p",null,Object(j.translate)("Please mention {{code}}%s{{/code}}, and explain what you were doing at the time",{components:{code:k.a.createElement("code",null)},args:this.state.page})),k.a.createElement("p",null,k.a.createElement("textarea",{readOnly:!0,rows:e.length+8,cols:"120",value:e.join("\n"),spellCheck:!1})))}},{key:"render",value:function(){var e=this.state,t=e.error,n=e.page,r=this.props,o=r.databaseStatus,a=r.showDatabase,i=r.result,l={redirect:Object(j.translate)("Redirections"),groups:Object(j.translate)("Groups"),io:Object(j.translate)("Import/Export"),log:Object(j.translate)("Logs"),"404s":Object(j.translate)("404 errors"),options:Object(j.translate)("Options"),support:Object(j.translate)("Support")}[n];return t?this.renderError():"need-install"===o||"finish-install"===o?k.a.createElement(bb,null):"need-update"===o||"finish-update"===o?k.a.createElement(Sb,{onShowUpgrade:this.props.onShowUpgrade,showDatabase:a,result:i}):k.a.createElement("div",{className:"wrap redirection"},k.a.createElement("h1",{className:"wp-heading-inline"},l),"redirect"===n&&k.a.createElement("a",{href:"#",onClick:this.onAdd,className:"page-title-action"},Object(j.translate)("Add New")),k.a.createElement(Pm,{onChangePage:this.onChangePage}),k.a.createElement(fm,null),this.getContent(n),k.a.createElement(Cm,null),k.a.createElement(Em,null))}}])&&_b(n.prototype,r),o&&_b(n,o),t}();var Db,Rb=Te(function(e){var t=e.message.errors,n=e.settings.showDatabase,r=e.settings.database;return{errors:t,showDatabase:n,databaseStatus:r.status,result:r.result}},function(e){return{onClear:function(){e(om())},onAdd:function(){e(Gp(!0))},onSet404Table:function(t){e(zl(t))},onSetLogTable:function(t){e(Li(t))},onSetGroupTable:function(t){e($f(t))},onSetRedirectTable:function(t){e(qp(t))},onShowUpgrade:function(){e(Ir())}}})(Ab),Ib=Object(Ae.hot)(function(){return k.a.createElement(z,{store:xr({settings:Sr(),log:kr(),error:_r(),io:{status:Xe,file:!1,lastImport:!1,exportData:!1,importingStatus:!1,exportStatus:!1,importers:[]},group:Cr(),redirect:jr(),message:{errors:[],notices:[],inProgress:0,saving:[]},info:{status:Ze,maps:{},agents:{},http:!1,error:""}})},k.a.createElement(Rb,null))});document.querySelector("#react-ui")&&(Db="react-ui",P.a.setLocale({"":{localeSlug:Redirectioni10n.localeSlug}}),P.a.addTranslations(Redirectioni10n.locale),C.a.render(k.a.createElement(Ib,null),document.getElementById(Db))),window.redirection=Redirectioni10n.version}]);
redirection.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Redirection
4
  Plugin URI: https://redirection.me/
5
  Description: Manage all your 301 redirects and monitor 404 errors
6
- Version: 4.3.2
7
  Author: John Godley
8
  Author URI: https://johngodley.com
9
  Text Domain: redirection
3
  Plugin Name: Redirection
4
  Plugin URI: https://redirection.me/
5
  Description: Manage all your 301 redirects and monitor 404 errors
6
+ Version: 4.3.3
7
  Author: John Godley
8
  Author URI: https://johngodley.com
9
  Text Domain: redirection