WPide - Version 3.4.6

Version Description

Download this release

Release Info

Developer xplodedthemes
Plugin Icon 128x128 WPide
Version 3.4.6
Comparing to
See all releases

Code changes from version 3.4.5 to 3.4.6

App/App.php CHANGED
@@ -106,8 +106,8 @@ class App
106
  return $currentVersion === FATAL_ERROR_DROPIN_VERSION;
107
  }
108
 
109
- public function dropInExists() {
110
-
111
  $fs = LocalFileSystem::load(CONTENT_DIR);
112
 
113
  return $fs->fileExists(FATAL_ERROR_DROPIN);
106
  return $currentVersion === FATAL_ERROR_DROPIN_VERSION;
107
  }
108
 
109
+ public function dropInExists(): bool
110
+ {
111
  $fs = LocalFileSystem::load(CONTENT_DIR);
112
 
113
  return $fs->fileExists(FATAL_ERROR_DROPIN);
App/Services/Storage/Adapters/DefaultFileSystem.php CHANGED
@@ -12,7 +12,6 @@ class DefaultFileSystem extends Local
12
  */
13
  public function getMimetype($path)
14
  {
15
- $path = $this->getRelativePath( $path );
16
  $location = $this->applyPathPrefix($path);
17
  if(extension_loaded('fileinfo')) {
18
  $mimeDetector = new FinfoMimeTypeDetector();
12
  */
13
  public function getMimetype($path)
14
  {
 
15
  $location = $this->applyPathPrefix($path);
16
  if(extension_loaded('fileinfo')) {
17
  $mimeDetector = new FinfoMimeTypeDetector();
App/Services/Storage/Adapters/WPFileSystem.php CHANGED
@@ -3,7 +3,6 @@ namespace WPIDE\App\Services\Storage\Adapters;
3
 
4
  use DirectoryIterator;
5
  use FilesystemIterator;
6
- use League\Flysystem\Config;
7
  use League\Flysystem\Exception;
8
  use League\Flysystem\NotSupportedException;
9
  use League\Flysystem\UnreadableFileException;
@@ -148,7 +147,7 @@ class WPFileSystem extends AbstractAdapter
148
  * @inheritdoc
149
  * @throws Exception
150
  */
151
- public function write($path, $contents, Config $config)
152
  {
153
  $path = $this->getRelativePath( $path );
154
  $location = $this->applyPathPrefix($path);
@@ -173,7 +172,7 @@ class WPFileSystem extends AbstractAdapter
173
  * @inheritdoc
174
  * @throws Exception
175
  */
176
- public function writeStream($path, $resource, Config $config)
177
  {
178
  $path = $this->getRelativePath( $path );
179
  $location = $this->applyPathPrefix($path);
@@ -210,7 +209,7 @@ class WPFileSystem extends AbstractAdapter
210
  /**
211
  * @inheritdoc
212
  */
213
- public function updateStream($path, $resource, Config $config)
214
  {
215
  $path = $this->getRelativePath( $path );
216
  return $this->writeStream($path, $resource, $config);
@@ -219,7 +218,7 @@ class WPFileSystem extends AbstractAdapter
219
  /**
220
  * @inheritdoc
221
  */
222
- public function update($path, $contents, Config $config)
223
  {
224
  $path = $this->getRelativePath( $path );
225
  $location = $this->applyPathPrefix($path);
@@ -420,7 +419,7 @@ class WPFileSystem extends AbstractAdapter
420
  /**
421
  * @inheritdoc
422
  */
423
- public function createDir($dirname, Config $config)
424
  {
425
 
426
  $dirname = $this->getRelativePath( $dirname );
3
 
4
  use DirectoryIterator;
5
  use FilesystemIterator;
 
6
  use League\Flysystem\Exception;
7
  use League\Flysystem\NotSupportedException;
8
  use League\Flysystem\UnreadableFileException;
147
  * @inheritdoc
148
  * @throws Exception
149
  */
150
+ public function write($path, $contents, $config)
151
  {
152
  $path = $this->getRelativePath( $path );
153
  $location = $this->applyPathPrefix($path);
172
  * @inheritdoc
173
  * @throws Exception
174
  */
175
+ public function writeStream($path, $resource, $config)
176
  {
177
  $path = $this->getRelativePath( $path );
178
  $location = $this->applyPathPrefix($path);
209
  /**
210
  * @inheritdoc
211
  */
212
+ public function updateStream($path, $resource, $config)
213
  {
214
  $path = $this->getRelativePath( $path );
215
  return $this->writeStream($path, $resource, $config);
218
  /**
219
  * @inheritdoc
220
  */
221
+ public function update($path, $contents, $config)
222
  {
223
  $path = $this->getRelativePath( $path );
224
  $location = $this->applyPathPrefix($path);
419
  /**
420
  * @inheritdoc
421
  */
422
+ public function createDir($dirname, $config)
423
  {
424
 
425
  $dirname = $this->getRelativePath( $dirname );
App/Services/Storage/Filesystem.php CHANGED
@@ -3,6 +3,7 @@
3
  namespace WPIDE\App\Services\Storage;
4
 
5
  use Exception;
 
6
  use WPIDE\App\Services\Service;
7
  use League\Flysystem\Filesystem as Flysystem;
8
 
@@ -12,14 +13,13 @@ class Filesystem implements Service
12
  protected $separator;
13
  protected $excluded_dirs;
14
  protected $excluded_files;
 
15
 
16
  /**
17
- * @var Filesystem
18
  */
19
  protected $storage;
20
 
21
- protected $path_prefix;
22
-
23
  public function init(array $config = [])
24
  {
25
  $this->separator = $config['separator'] ?? '/';
@@ -34,7 +34,6 @@ class Filesystem implements Service
34
  $config = $config['config'] ?? [];
35
 
36
  $this->storage = new Flysystem($adapter(), $config);
37
-
38
  }
39
 
40
  public function createDir(string $path, string $name)
@@ -202,6 +201,9 @@ class Filesystem implements Service
202
  return $this->storage->put($destination, $content);
203
  }
204
 
 
 
 
205
  public function storeStream(string $path, string $name, $resource, bool $overwrite = false): bool
206
  {
207
  $destination = $this->joinPaths($this->applyPathPrefix($path), $name);
@@ -217,6 +219,9 @@ class Filesystem implements Service
217
  return $this->storage->putStream($destination, $resource);
218
  }
219
 
 
 
 
220
  public function storeStreamFromContent(string $path, string $name, $content, bool $overwrite = false): bool
221
  {
222
  $stream = tmpfile();
3
  namespace WPIDE\App\Services\Storage;
4
 
5
  use Exception;
6
+ use League\Flysystem\FileNotFoundException;
7
  use WPIDE\App\Services\Service;
8
  use League\Flysystem\Filesystem as Flysystem;
9
 
13
  protected $separator;
14
  protected $excluded_dirs;
15
  protected $excluded_files;
16
+ protected $path_prefix;
17
 
18
  /**
19
+ * @var Flysystem
20
  */
21
  protected $storage;
22
 
 
 
23
  public function init(array $config = [])
24
  {
25
  $this->separator = $config['separator'] ?? '/';
34
  $config = $config['config'] ?? [];
35
 
36
  $this->storage = new Flysystem($adapter(), $config);
 
37
  }
38
 
39
  public function createDir(string $path, string $name)
201
  return $this->storage->put($destination, $content);
202
  }
203
 
204
+ /**
205
+ * @throws FileNotFoundException
206
+ */
207
  public function storeStream(string $path, string $name, $resource, bool $overwrite = false): bool
208
  {
209
  $destination = $this->joinPaths($this->applyPathPrefix($path), $name);
219
  return $this->storage->putStream($destination, $resource);
220
  }
221
 
222
+ /**
223
+ * @throws FileNotFoundException
224
+ */
225
  public function storeStreamFromContent(string $path, string $name, $content, bool $overwrite = false): bool
226
  {
227
  $stream = tmpfile();
App/Services/Storage/LocalFileSystem.php CHANGED
@@ -5,6 +5,7 @@ namespace WPIDE\App\Services\Storage;
5
  use WPIDE\App\Classes\Freemius ;
6
  use const WPIDE\Constants\DIR ;
7
  use const WPIDE\Constants\CONTENT_DIR ;
 
8
  use const WPIDE\Constants\IMAGE_DATA_DIR ;
9
  use const WPIDE\Constants\TMP_DIR ;
10
  use const WPIDE\Constants\WP_PATH ;
@@ -43,7 +44,7 @@ class LocalFileSystem
43
  'adapter' => function () use( $root ) {
44
  $permissions = [
45
  'file' => [
46
- 'public' => ( defined( 'FS_CHMOD_FILE' ) ? FS_CHMOD_FILE : (( fileperms( WP_PATH . 'index.php' ) ? 0644 : 0777 )) ),
47
  'private' => 0600,
48
  ],
49
  'dir' => [
@@ -51,25 +52,28 @@ class LocalFileSystem
51
  'private' => 0700,
52
  ],
53
  ];
 
54
  $use_wp_filesystem = false;
55
- $credentials = null;
56
  // Try and use WP filesystem
57
 
58
  if ( function_exists( 'request_filesystem_credentials' ) ) {
 
 
 
 
 
 
 
 
 
59
  ob_start();
60
- $credentials = request_filesystem_credentials(
61
- '',
62
- '',
63
- false,
64
- false
65
- );
66
  ob_end_clean();
67
- $use_wp_filesystem = true;
68
  }
69
 
70
 
71
- if ( $use_wp_filesystem && wp_filesystem( $credentials ) ) {
72
- global $wp_filesystem ;
73
  return new WPFileSystem(
74
  $root,
75
  $wp_filesystem,
@@ -100,13 +104,9 @@ class LocalFileSystem
100
  if ( $advanced_mode ) {
101
  AppConfig::update( 'file.advanced_mode', false );
102
  }
103
- $root = self::getRootDir();
104
- if ( $root !== '/' ) {
105
- foreach ( self::excludedDirs( true ) as $excluded ) {
106
- if ( str_contains( $excluded, $root ) ) {
107
- AppConfig::update( 'file.root', '/' );
108
- }
109
- }
110
  }
111
  return false;
112
  }
@@ -136,8 +136,8 @@ class LocalFileSystem
136
  rtrim( DIR, '/' ) . '-pro/',
137
  wp_normalize_path( WP_PLUGIN_DIR . '/wpide/' ),
138
  wp_normalize_path( WP_PLUGIN_DIR . '/wpide-pro/' ),
139
- wp_normalize_path( WP_PATH . 'wp-admin/' ),
140
- wp_normalize_path( WP_PATH . 'wp-includes/' )
141
  ], $user_excluded_dirs );
142
  }
143
  return $user_excluded_dirs;
@@ -146,11 +146,32 @@ class LocalFileSystem
146
  public static function excludedFiles( $forceSafeMode = false ) : array
147
  {
148
  $user_excluded_files = self::excludedEntries( 'file' );
149
- $user_excluded_files = array_merge( [ CONTENT_DIR . '/fatal-error-handler.php' ], $user_excluded_files );
150
  if ( $forceSafeMode || !self::advancedModeEnabled() ) {
151
- $user_excluded_files = array_merge( [ wp_normalize_path( WP_PATH . 'wp-*.php' ), wp_normalize_path( WP_PATH . 'index.php' ), wp_normalize_path( WP_PATH . 'xmlrpc.php' ) ], $user_excluded_files );
152
  }
153
  return $user_excluded_files;
154
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
155
 
156
  }
5
  use WPIDE\App\Classes\Freemius ;
6
  use const WPIDE\Constants\DIR ;
7
  use const WPIDE\Constants\CONTENT_DIR ;
8
+ use const WPIDE\Constants\FATAL_ERROR_DROPIN ;
9
  use const WPIDE\Constants\IMAGE_DATA_DIR ;
10
  use const WPIDE\Constants\TMP_DIR ;
11
  use const WPIDE\Constants\WP_PATH ;
44
  'adapter' => function () use( $root ) {
45
  $permissions = [
46
  'file' => [
47
+ 'public' => ( defined( 'FS_CHMOD_FILE' ) ? FS_CHMOD_FILE : (( fileperms( WP_PATH . '/index.php' ) ? 0644 : 0777 )) ),
48
  'private' => 0600,
49
  ],
50
  'dir' => [
52
  'private' => 0700,
53
  ],
54
  ];
55
+ global $wp_filesystem ;
56
  $use_wp_filesystem = false;
 
57
  // Try and use WP filesystem
58
 
59
  if ( function_exists( 'request_filesystem_credentials' ) ) {
60
+
61
+ if ( defined( 'FS_METHOD' ) ) {
62
+ if ( !defined( 'WPIDE_FS_METHOD_FORCED_ELSEWHERE' ) ) {
63
+ define( 'WPIDE_FS_METHOD_FORCED_ELSEWHERE', FS_METHOD );
64
+ }
65
+ } else {
66
+ define( 'FS_METHOD', 'direct' );
67
+ }
68
+
69
  ob_start();
70
+ $credentials = request_filesystem_credentials( '', FS_METHOD );
 
 
 
 
 
71
  ob_end_clean();
72
+ $use_wp_filesystem = !empty($wp_filesystem) && wp_filesystem( $credentials ) === true;
73
  }
74
 
75
 
76
+ if ( $use_wp_filesystem ) {
 
77
  return new WPFileSystem(
78
  $root,
79
  $wp_filesystem,
104
  if ( $advanced_mode ) {
105
  AppConfig::update( 'file.advanced_mode', false );
106
  }
107
+ $rootDefault = AppConfig::getField( 'file.root.default' );
108
+ if ( self::isRootExcluded() ) {
109
+ AppConfig::update( 'file.root', $rootDefault );
 
 
 
 
110
  }
111
  return false;
112
  }
136
  rtrim( DIR, '/' ) . '-pro/',
137
  wp_normalize_path( WP_PLUGIN_DIR . '/wpide/' ),
138
  wp_normalize_path( WP_PLUGIN_DIR . '/wpide-pro/' ),
139
+ wp_normalize_path( WP_PATH . '/wp-admin/' ),
140
+ wp_normalize_path( WP_PATH . '/wp-includes/' )
141
  ], $user_excluded_dirs );
142
  }
143
  return $user_excluded_dirs;
146
  public static function excludedFiles( $forceSafeMode = false ) : array
147
  {
148
  $user_excluded_files = self::excludedEntries( 'file' );
149
+ $user_excluded_files = array_merge( [ CONTENT_DIR . '/' . FATAL_ERROR_DROPIN ], $user_excluded_files );
150
  if ( $forceSafeMode || !self::advancedModeEnabled() ) {
151
+ $user_excluded_files = array_merge( [ wp_normalize_path( WP_PATH . '/wp-*.php' ), wp_normalize_path( WP_PATH . '/index.php' ), wp_normalize_path( WP_PATH . '/xmlrpc.php' ) ], $user_excluded_files );
152
  }
153
  return $user_excluded_files;
154
  }
155
+
156
+ public static function isDirExcluded( $path ) : bool
157
+ {
158
+
159
+ if ( $path !== '/' ) {
160
+ $path = wp_normalize_path( WP_PATH . '/' . $path . '/' );
161
+ foreach ( self::excludedDirs( true ) as $excluded ) {
162
+ if ( str_contains( $path, $excluded ) ) {
163
+ return true;
164
+ }
165
+ }
166
+ }
167
+
168
+ return false;
169
+ }
170
+
171
+ public static function isRootExcluded() : bool
172
+ {
173
+ $root = self::getRootDir();
174
+ return self::isDirExcluded( $root );
175
+ }
176
 
177
  }
_configuration.php CHANGED
@@ -1,4 +1,7 @@
1
  <?php
 
 
 
2
  defined('ABSPATH') || exit;
3
 
4
  return apply_filters('wpide_config', [
@@ -33,7 +36,7 @@ return apply_filters('wpide_config', [
33
  'root' => [
34
  'type' => 'folders',
35
  'label' => __('Root Path', 'wpide'),
36
- 'default' => '/'
37
  ],
38
  'overwrite_on_upload' => [
39
  'type' => 'bool',
1
  <?php
2
+
3
+ use const WPIDE\Constants\CONTENT_DIR;
4
+
5
  defined('ABSPATH') || exit;
6
 
7
  return apply_filters('wpide_config', [
36
  'root' => [
37
  'type' => 'folders',
38
  'label' => __('Root Path', 'wpide'),
39
+ 'default' => '/'.basename(CONTENT_DIR)
40
  ],
41
  'overwrite_on_upload' => [
42
  'type' => 'bool',
_constants.php CHANGED
@@ -9,7 +9,7 @@ define(__NAMESPACE__ . '\URL', plugin_dir_url(__FILE__));
9
  define(__NAMESPACE__ . '\SLUG', 'wpide');
10
  define(__NAMESPACE__ . '\NAME', 'WPIDE');
11
 
12
- define(__NAMESPACE__ . '\VERSION', '3.4.5');
13
  define(__NAMESPACE__ . '\FM_VERSION', '7.8.1');
14
 
15
  define(__NAMESPACE__ . '\AUTHOR', 'XplodedThemes');
@@ -23,13 +23,13 @@ define(__NAMESPACE__ . '\BACKUPS_DIR', UPLOADS_DIR.'backups/');
23
  define(__NAMESPACE__ . '\BACKUPS_TODAY_DIR', BACKUPS_DIR.date('Y-m-d'));
24
  define(__NAMESPACE__ . '\IMAGE_DATA_DIR', UPLOADS_DIR.'imagedata/');
25
  define(__NAMESPACE__ . '\TMP_DIR', UPLOADS_DIR.'tmp/');
26
- define(__NAMESPACE__ . '\CONTENT_DIR', wp_normalize_path(realpath(__DIR__ . '/../../')));
 
27
 
28
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN_VERSION', '1.1');
29
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN_VERSION_OPT', SLUG.'_dropin_version');
30
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN', 'fatal-error-handler.php');
31
  define(__NAMESPACE__ . '\IS_DEV', empty(getenv('SERVER_SOFTWARE')) && defined('WPIDE_DEV_ENV') && WPIDE_DEV_ENV === true && defined('WPIDE_DEV_URL'));
32
- define(__NAMESPACE__ . '\WP_PATH', wp_normalize_path(ABSPATH));
33
 
34
  define(__NAMESPACE__ . '\GTM_ID', 'GTM-MRT34RM');
35
 
9
  define(__NAMESPACE__ . '\SLUG', 'wpide');
10
  define(__NAMESPACE__ . '\NAME', 'WPIDE');
11
 
12
+ define(__NAMESPACE__ . '\VERSION', '3.4.6');
13
  define(__NAMESPACE__ . '\FM_VERSION', '7.8.1');
14
 
15
  define(__NAMESPACE__ . '\AUTHOR', 'XplodedThemes');
23
  define(__NAMESPACE__ . '\BACKUPS_TODAY_DIR', BACKUPS_DIR.date('Y-m-d'));
24
  define(__NAMESPACE__ . '\IMAGE_DATA_DIR', UPLOADS_DIR.'imagedata/');
25
  define(__NAMESPACE__ . '\TMP_DIR', UPLOADS_DIR.'tmp/');
26
+ define(__NAMESPACE__ . '\CONTENT_DIR', wp_normalize_path(realpath(DIR . '/../../')));
27
+ define(__NAMESPACE__ . '\WP_PATH', wp_normalize_path(realpath(CONTENT_DIR.'/../')));
28
 
29
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN_VERSION', '1.1');
30
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN_VERSION_OPT', SLUG.'_dropin_version');
31
  define(__NAMESPACE__ . '\FATAL_ERROR_DROPIN', 'fatal-error-handler.php');
32
  define(__NAMESPACE__ . '\IS_DEV', empty(getenv('SERVER_SOFTWARE')) && defined('WPIDE_DEV_ENV') && WPIDE_DEV_ENV === true && defined('WPIDE_DEV_URL'));
 
33
 
34
  define(__NAMESPACE__ . '\GTM_ID', 'GTM-MRT34RM');
35
 
dist/js/app.js CHANGED
@@ -10,4 +10,4 @@ redirect:window.WPIDE.premium?null:{name:"premium",query:{name:"db-manager"}},mo
10
  /* fs_premium_only */
11
  component:window.WPIDE.premium?function(){return n.e(311).then(n.bind(n,97486))}:null,
12
  /* /fs_premium_only */
13
- redirect:window.WPIDE.premium?null:{name:"premium",query:{name:"config-manager"}},module:!0,config:null,premium:!0},{path:"/settings",name:"settings",meta:{title:(0,f.__)("Settings","wpide")},icon:"ni-setting",component:function(){return n.e(265).then(n.bind(n,12754))}},{path:"/changelog",name:"changelog",meta:{title:(0,f.__)("Changelog","wpide")},icon:"ni-notes-alt",component:function(){return n.e(714).then(n.bind(n,62322))}},{path:"/account",name:"account",meta:{title:(0,f.__)("Account","wpide")},icon:"user-alt"},{path:"/premium",name:"premium",meta:{title:(0,f.__)("Premium Version Required","wpide")},icon:"ni-lock bg-danger-dim",component:function(){return n.e(211).then(n.bind(n,94560))}},{path:"*",name:"404",meta:{title:(0,f.__)("Not found","wpide")},icon:"ni-sad bg-danger-dim",component:function(){return n.e(187).then(n.bind(n,61973))}}]);const g=new d.ZP({mode:"hash",routes:m});var h=n(3336),p=(n(79753),n(69826),n(20629)),v=n(96486),w=n(95082),b=(n(92222),n(54678),n(56977),n(83710),n(69600),n(82772),n(47042),n(38862),n(65069),n(23123),n(85827),n(85533)),k=n(42227),C=n(38898),_={computed:{premium:function(){return!!window.WPIDE.premium},isPremiumVersion:function(){return!!window.WPIDE.is_premium_version},showFreemiusMenus:function(){return window.WPIDE.show_freemius_menus},showLicenseMenu:function(){return this.showFreemiusMenus&&this.isPremiumVersion},isLicenseActive:function(){return!!window.WPIDE.is_license_active},appDom:function(){return this.$root.$children[0].$refs.app},pageTitle:function(){return this.$route.meta.title||this.$route.name},pageIcon:function(){var e;e=this.getConfig("general.dark_mode")?"icon ni bg-primary text-white":"icon ni bg-primary-dim";var t=this.findRoute(this.$route.name);return t?t.icon+" "+e:null},assetsUrl:function(){return window.WPIDE.assets_url},imagesUrl:function(){return window.WPIDE.images_url},isLoading:function(){return this.$store.state.loading},isModalActive:function(){return this.$store.state.modal.enabled},upgradeUrl:function(){var e=window.WPIDE.account_links.find((function(e){return"_pricing"===e.id}));return e?e.url:null}},methods:{__:function(e,t){return(0,f.__)(e,t)},sprintf:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return f.gB.apply(void 0,[e].concat(n))},loading:function(){this.$store.commit("setLoading",!0)},idle:function(){this.$store.commit("setLoading",!1)},findRoute:function(e){var t=m.find((function(t){return t.name===e}));return t||null},getPremiumMessageData:function(){var e=this,t={title:(0,f.__)("Premium Version Required","wpide"),message:(0,f.__)("It looks like you’re trying to access a feature that requires the Premium Version.","wpide"),button:this.upgradeUrl?this.isPremiumVersion?(0,f.__)("Buy License","wpide"):(0,f.__)("Unlock Access","wpide"):null,buttonCallback:this.upgradeUrl?function(){location.href=e.upgradeUrl}:null,secondaryButton:(0,f.__)("More info","wpide"),secondaryButtonCallback:function(){location.href="https://wpide.com"}};return this.isPremiumVersion&&document.querySelector(".activate-license.wpide a")&&(t.message+=" "+(0,f.__)("If you already have a license key, please activate it.","wpide"),t.secondaryButton=(0,f.__)("Activate License","wpide"),t.secondaryButtonCallback=function(){document.querySelector(".activate-license.wpide a").click()}),t},showModalPrompt:function(e,t,n,i){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},o=this.$createElement,s=o("input",{class:{"form-control":!0},domProps:(0,w.Z)({maxlength:100,required:!1},t),on:{input:function(e){self.value=e.target.value}}}),r=o("div",{class:["form-group"]},[o("label",{class:["form-label"]},[e]),o("div",{class:["form-control-wrap"]},[s])]);this.showModal("","Modal/ModalBody",{node:r},(0,w.Z)({hideHeader:!0,okTitle:n,okOnly:!1,ok:function(){i(s.elm.value)}},a))},showModalConfirm:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.showModal((0,f.__)("Confirmation","wpide"),"Modal/ModalBody",{body:(0,f.__)("Are you sure you want to do this?","wpide")},(0,w.Z)({okVariant:"danger",okTitle:e,okOnly:!1,ok:t},n))},showModalDialog:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{};this.showModal(e,"Modal/ModalBody",{body:t},(0,w.Z)({okTitle:n,ok:i,okOnly:!a,cancelTitle:a,cancel:o},s))},showPremiumFeatureModal:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.getPremiumMessageData();this.showModalDialog(t.title,t.message,t.button,t.buttonCallback,t.secondaryButton,t.secondaryButtonCallback,e)},showModal:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};this.$store.commit("setModal",{enabled:!0,title:e,component:t,props:n,args:(0,w.Z)({size:"sm",buttonSize:"md",footerClass:"modal-footer-sm bg-light",cancelTitle:(0,f.__)("Cancel","wpide"),okOnly:!0},i)})},showExistingModal:function(){this.$store.commit("showModal")},componentModalExists:function(e){return this.$store.state.modal.component===e},hideModal:function(){this.$store.commit("hideModal")},updateModal:function(e,t){this.$store.commit("updateModal",{title:e,args:t})},is:function(e){return this.$store.state.user.role==e},can:function(e){return this.$store.getters.hasPermissions(e)},formatBytes:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;if(0===e)return"0 Bytes";var n=1024,i=t<0?0:t,a=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],o=Math.floor(Math.log(e)/Math.log(n));return parseFloat((e/Math.pow(n,o)).toFixed(i))+" "+a[o]},formatDate:function(e){return(0,b.Z)((0,k.Z)(e),new Date)},isString:function(e){return"string"==typeof e||e instanceof String},isNumeric:function(e){var t=[" ","\n","\r","\t","\f","\v"," "," "," "," "," "," "," "," "," "," "," "," ","​","\u2028","\u2029"," "].join("");return("number"==typeof e||"string"==typeof e&&-1===t.indexOf(e.slice(-1)))&&""!==e&&!isNaN(e)},checkUser:function(){var e=this;return C.Z.getUser().then((function(t){t&&t.username!==M.state.user.username&&e.$store.commit("destroyUser",t)}))},handleError:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=(0,f.__)("Something went wrong!","wpide");e&&"string"==typeof e?i=e:e&&e.response&&e.response.data&&e.response.data.data&&(i=e.response.data.data),this.$bvToast.toast(i,{title:null,variant:"is-danger",toaster:"b-toaster-bottom-right",duration:5e3,appendToast:n,noAutoHide:!t})},handleSuccess:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];this.$bvToast.hide(),this.$bvToast.toast(e,{title:null,variant:"is-success",toaster:"b-toaster-bottom-right",bodyClass:"",duration:5e3,appendToast:n,noAutoHide:!t})},capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)},goTo:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.$router.push(this.routePath(e,t,n)).catch((function(){}))},routePath:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return{name:e,query:t,params:n}},pluginInfo:function(e){return M.state.plugin.hasOwnProperty(e)?M.state.plugin[e]:null},cloneObj:function(e){return JSON.parse(JSON.stringify(e))},isFullscreen:function(){return this.$fullscreen.isFullscreen},toggleFullscreen:function(){this.$fullscreen.toggle()},getRootFolderName:function(){return"/"===this.getConfig("file.root","/")?window.WPIDE.fm_wp_dir:this.getConfig("file.root").split("/").reverse()[0]},getConfigField:function(e){e=Array.isArray(e)?e:e.split(".");for(var t=window.WPIDE.config_fields,n=e.shift();void 0!==n;){if("object"!==(0,h.Z)(t))return t;if(!t.hasOwnProperty(n))return null;t=t[n],n=e.shift()}return t},getDefaultConfig:function(e){e=Array.isArray(e)?e:e.split(".");for(var t=M.state.defaultConfig,n=e.shift();void 0!==n;){if("object"!==(0,h.Z)(t))return t;if(!t.hasOwnProperty(n))return null;t=t[n],n=e.shift()}return t},getConfig:function(e,t){t||this.getDefaultConfig(e);var n=this.getConfigField(e);if(n&&n.hasOwnProperty("premium")&&!this.premium)return t;e=Array.isArray(e)?e:e.split(".");for(var i=M.state.config,a=e.shift();void 0!==a;){if("object"!==(0,h.Z)(i))return i;if(!i.hasOwnProperty(a))return t;i=i[a],a=e.shift()}return i},configIs:function(e,t){return this.getConfig(e)===t},updateConfig:function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=M.state.config,a=e.split("."),o=a.pop();if(a.reduce((function(e,t){return e[t]=e[t]||{}}),i)[o]=t,this.$store.commit("setConfig",i),n)return C.Z.updateConfig(e,t)}}};const y=_;i.default.use(p.ZP);const M=new p.ZP.Store({state:{loading:!1,initialized:!1,config:{},defaultConfig:{},plugin:{},user:{role:"guest",permissions:[],name:"",username:""},cwd:{location:"/",content:[]},tree:{},downloads:[],modal:{enabled:!1,title:"",component:null,props:{},args:{}},imageEditorEnabled:!1},getters:{hasPermissions:function(e){return function(t){return Array.isArray(t)?(0,v.intersection)(e.user.permissions,t).length==t.length:!!e.user.permissions.find((function(e){return e==t}))}}},mutations:{initialize:function(e){this.commit("resetCwd"),this.commit("resetTree"),this.commit("destroyUser"),e.initialized=!0},resetCwd:function(e){e.cwd={location:"/",content:[]}},resetTree:function(e){e.tree={path:"/",name:y.methods.getRootFolderName(),children:[],type:"dir"}},setLoading:function(e,t){e.loading=t},setPluginInfo:function(e,t){e.plugin=t},setConfig:function(e,t){e.config=t},setDefaultConfig:function(e,t){e.defaultConfig=t},setUser:function(e,t){e.user=t},destroyUser:function(e){e.user={role:"guest",permissions:[],name:"",username:""}},setCwd:function(e,t){e.cwd.location=t.location,e.cwd.content=[],(0,v.sortBy)(t.content,[function(e){return e.type.toLowerCase()}]).forEach((function(t){e.cwd.content.push(t)}))},updateTreeNode:function(e,t){!function e(n){for(var i in n)if(n.hasOwnProperty(i)){if("path"===i&&n[i]===t.path)return void Object.assign(n,{path:t.path,children:t.children});"object"===(0,h.Z)(n[i])&&e(n[i])}}(e.tree)},setModal:function(e,t){e.modal=t},showModal:function(e){e.modal.title&&e.modal.component&&(e.modal.enabled=!0)},hideModal:function(e){e.modal.enabled=!1},updateModal:function(e,t){t.title&&(e.modal.title=t.title),t.args&&(e.modal.args=Object.assign({},e.modal.args,t.args))},setImageEditorEnabled:function(e,t){e.imageEditorEnabled=t}}});var F=n(62032),P=n(79501),S=n.n(P),j=n(1659),E=n.n(j),D=n(17751),I=n(48651),T=n.n(I);n(57024);i.default.config.productionTip=!1,i.default.config.baseURL=window.WPIDE.ajax_url,i.default.use(F.XG7),i.default.use(D.ZP,{preLoad:1.3}),i.default.use(E(),{sessionKey:window.WPIDE.plugin.slug+"SessionKey"}),i.default.use(S(),{instances:[{name:window.WPIDE.plugin.slug,storeName:"folder_sizes"}]}),i.default.use(T()),i.default.mixin(y),g.afterEach((function(e,t){i.default.nextTick((function(){document.title=window.WPIDE.plugin.name+(e.meta.title?" | "+e.meta.title:"");var n=document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]');n&&document.body.classList.contains(t.name)&&(document.body.classList.remove(t.name),document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+t.path+'"]').closest("li").classList.remove("current")),n&&!document.body.classList.contains(e.name)&&(document.body.classList.add(e.name),document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]').closest("li").classList.add("current"))}))})),new i.default({router:g,store:M,data:function(){return{adminMenuScrolling:!1}},created:function(){this.init()},mounted:function(){document.body.addEventListener("wpide_error",this.onError,!1)},beforeDestroy:function(){document.body.removeEventListener("wpide_error",this.onError,!1)},methods:{init:function(){this.loading(),this.$store.commit("setPluginInfo",window.WPIDE.plugin),this.loadConfig(),this.fixWpMenu()},loadConfig:function(){var e=this;C.Z.getConfig().then((function(t){e.$store.commit("setConfig",t.data.data.config),e.$store.commit("setDefaultConfig",t.data.data.defaults),C.Z.getUser().then((function(t){e.$store.commit("initialize"),e.$store.commit("setUser",t)})).catch((function(t){console.log(t),e.$bvToast.toast((0,f.__)("Something went wrong!","wpide"),{title:(0,f.__)("Error","wpide"),variant:"danger",toaster:"b-toaster-bottom-right",appendToast:!1})}))})).catch((function(t){console.log(t),e.$bvToast.toast((0,f.__)("Something went wrong!","wpide"),{title:(0,f.__)("Error","wpide"),variant:"danger",toaster:"b-toaster-bottom-right",appendToast:!0})})).finally((function(){e.idle()}))},fixWpMenu:function(){var e=document.getElementById("adminmenuwrap"),t=document.getElementById("adminmenu"),n=document.getElementById("wpcontent"),i=document.querySelector('#toplevel_page_wpide li a[href="#divider"]');i&&!i.closest("li").nextSibling&&i.remove(),t.addEventListener("mouseover",(function(){e.classList.add("hover")})),t.addEventListener("mouseleave",(function(){e.classList.remove("hover")})),n.addEventListener("mouseover",(function(){e.classList.remove("hover")})),this.premium||m.filter((function(e){return e.hasOwnProperty("premium")&&e.premium})).forEach((function(e){document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]').closest("li").classList.add("premium")}))},onError:function(e){this.handleError(e.detail),this.idle()}},render:function(e){return e(c)}}).$mount("#wpide-app")},98131:(e,t,n)=>{n.p=window.WPIDE.assets_url},4876:(e,t,n)=>{var i={"./ConfigManager/ConstantForm":[34804,740],"./ConfigManager/ConstantForm.vue":[34804,740],"./ConfigManager/ListItem":[90146,478],"./ConfigManager/ListItem.vue":[90146,478],"./DbManager/Table":[24552,577],"./DbManager/Table.vue":[24552,577],"./DbManager/TableRowForm":[22487,484],"./DbManager/TableRowForm.vue":[22487,484],"./DbManager/TablesTree":[22224,801],"./DbManager/TablesTree.vue":[22224,801],"./DbManager/easy-table-dark.less":[72888,850],"./DbManager/easy-table-default.less":[69881,469],"./FileManager/AceEditor":[6931,252],"./FileManager/AceEditor.vue":[6931,252],"./FileManager/CodeDiff":[36196,274],"./FileManager/CodeDiff.vue":[36196,274],"./FileManager/Download":[64251,243],"./FileManager/Download.vue":[64251,243],"./FileManager/Editor":[99109,948],"./FileManager/Editor.vue":[99109,948],"./FileManager/FilesItemActions":[85384,673],"./FileManager/FilesItemActions.vue":[85384,673],"./FileManager/FilesList":[50734,62],"./FileManager/FilesList.vue":[50734,62],"./FileManager/FilesListItem":[65513,744],"./FileManager/FilesListItem.vue":[65513,744],"./FileManager/FilesPreview":[95283,717],"./FileManager/FilesPreview.vue":[95283,717],"./FileManager/Gallery":[22559,632],"./FileManager/Gallery.vue":[22559,632],"./FileManager/GridView":[52939,784],"./FileManager/GridView.vue":[52939,784],"./FileManager/GroupView":[42407,600],"./FileManager/GroupView.vue":[42407,600],"./FileManager/ImageEditor":[44345,827],"./FileManager/ImageEditor.vue":[44345,827],"./FileManager/ListView":[17858,540],"./FileManager/ListView.vue":[17858,540],"./FileManager/MediaPlayer":[73762,689],"./FileManager/MediaPlayer.vue":[73762,689],"./FileManager/SortDropdown":[63586,129],"./FileManager/SortDropdown.vue":[63586,129],"./FileManager/Tree":[82446,622],"./FileManager/Tree.vue":[82446,622],"./FileManager/TreeNode":[87182,434],"./FileManager/TreeNode.vue":[87182,434],"./FileManager/Upload":[71252,320],"./FileManager/Upload.vue":[71252,320],"./Header":[68372],"./Header.vue":[68372],"./Loading":[23768],"./Loading.vue":[23768],"./Modal/Modal":[77349],"./Modal/Modal.vue":[77349],"./Modal/ModalBody":[91976,768],"./Modal/ModalBody.vue":[91976,768],"./Settings/SettingControl":[58385,144],"./Settings/SettingControl.vue":[58385,144],"./Settings/SettingControlRepeater":[98566,336],"./Settings/SettingControlRepeater.vue":[98566,336],"./Settings/SettingFields":[78389,218],"./Settings/SettingFields.vue":[78389,218],"./Settings/SettingFoldersControl":[73463,298],"./Settings/SettingFoldersControl.vue":[73463,298]};function a(e){if(!n.o(i,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=i[e],a=t[0];return Promise.all(t.slice(1).map(n.e)).then((()=>n(a)))}a.keys=()=>Object.keys(i),a.id=4876,e.exports=a}},s={};function r(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={id:e,loaded:!1,exports:{}};return o[e].call(n.exports,n,n.exports,r),n.loaded=!0,n.exports}r.m=o,r.amdD=function(){throw new Error("define cannot be used indirect")},e=[],r.O=(t,n,i,a)=>{if(!n){var o=1/0;for(d=0;d<e.length;d++){for(var[n,i,a]=e[d],s=!0,l=0;l<n.length;l++)(!1&a||o>=a)&&Object.keys(r.O).every((e=>r.O[e](n[l])))?n.splice(l--,1):(s=!1,a<o&&(o=a));if(s){e.splice(d--,1);var c=i();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[n,i,a]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>740===e?"js/chunks/ConfigManager/ConfigManager-ConstantForm.js?_hash=0f815510":478===e?"js/chunks/ConfigManager/ConfigManager-ListItem.js?_hash=ec252b1f":577===e?"js/chunks/DbManager/DbManager-Table.js?_hash=5b780ea8":484===e?"js/chunks/DbManager/DbManager-TableRowForm.js?_hash=0efcc5cf":801===e?"js/chunks/DbManager/DbManager-TablesTree.js?_hash=bff35e46":850===e?"js/chunks/DbManager/DbManager-easy-table-dark-less.js?_hash=696fc115":469===e?"js/chunks/DbManager/DbManager-easy-table-default-less.js?_hash=501fe06d":252===e?"js/chunks/FileManager/FileManager-AceEditor.js?_hash=07cab9df":274===e?"js/chunks/FileManager/FileManager-CodeDiff.js?_hash=25b24822":243===e?"js/chunks/FileManager/FileManager-Download.js?_hash=46a29ebc":948===e?"js/chunks/FileManager/FileManager-Editor.js?_hash=3cfed1e1":673===e?"js/chunks/FileManager/FileManager-FilesItemActions.js?_hash=da7f837f":62===e?"js/chunks/FileManager/FileManager-FilesList.js?_hash=336dc493":744===e?"js/chunks/FileManager/FileManager-FilesListItem.js?_hash=f148bc05":717===e?"js/chunks/FileManager/FileManager-FilesPreview.js?_hash=5f63f49a":632===e?"js/chunks/FileManager/FileManager-Gallery.js?_hash=f61ad518":784===e?"js/chunks/FileManager/FileManager-GridView.js?_hash=2cd91419":600===e?"js/chunks/FileManager/FileManager-GroupView.js?_hash=663cadb6":827===e?"js/chunks/FileManager/FileManager-ImageEditor.js?_hash=d7d77a56":540===e?"js/chunks/FileManager/FileManager-ListView.js?_hash=3ff0305b":689===e?"js/chunks/FileManager/FileManager-MediaPlayer.js?_hash=6d56a171":129===e?"js/chunks/FileManager/FileManager-SortDropdown.js?_hash=dedbbf04":622===e?"js/chunks/FileManager/FileManager-Tree.js?_hash=1b5470a0":434===e?"js/chunks/FileManager/FileManager-TreeNode.js?_hash=0ccda793":320===e?"js/chunks/FileManager/FileManager-Upload.js?_hash=3de301b1":768===e?"js/chunks/Modal/Modal-ModalBody.js?_hash=8b3b97bb":144===e?"js/chunks/Settings/Settings-SettingControl.js?_hash=ed785726":336===e?"js/chunks/Settings/Settings-SettingControlRepeater.js?_hash=42298ee3":218===e?"js/chunks/Settings/Settings-SettingFields.js?_hash=7605c80b":298===e?"js/chunks/Settings/Settings-SettingFoldersControl.js?_hash=8aa2cea1":535===e?"js/chunks/FileManager/FileManager.js?_hash=20d7f3bf":15===e?"js/chunks/ImageEditor/ImageEditor.js?_hash=1e678980":248===e?"js/chunks/DbManager/DbManager.js?_hash=a1c3d61d":311===e?"js/chunks/ConfigManager/ConfigManager.js?_hash=004af6d0":265===e?"js/chunks/Settings/Settings.js?_hash=7b77d47a":714===e?"js/chunks/Changelog/Changelog.js?_hash=d449b1e3":211===e?"js/chunks/Premium/Premium.js?_hash=54417fd4":187===e?"js/chunks/NotFound/NotFound.js?_hash=bb008f21":void 0,r.miniCssF=e=>"css/"+{15:"ImageEditor",62:"FileManager-FilesList",218:"Settings-SettingFields",265:"Settings",274:"FileManager-CodeDiff",311:"ConfigManager",320:"FileManager-Upload",336:"Settings-SettingControlRepeater",434:"FileManager-TreeNode",469:"DbManager-easy-table-default-less",478:"ConfigManager-ListItem",484:"DbManager-TableRowForm",535:"FileManager",540:"FileManager-ListView",577:"DbManager-Table",600:"FileManager-GroupView",622:"FileManager-Tree",632:"FileManager-Gallery",689:"FileManager-MediaPlayer",714:"Changelog",744:"FileManager-FilesListItem",784:"FileManager-GridView",801:"DbManager-TablesTree",827:"FileManager-ImageEditor",850:"DbManager-easy-table-dark-less",948:"FileManager-Editor"}[e]+".css?_hash="+{15:"0af54435",62:"213dc083",218:"eee5afa1",265:"1c4161c5",274:"97604922",311:"7ccf5adb",320:"0fca59a8",336:"b441f6ed",434:"72f4e5dd",469:"261d83e7",478:"7ccf5adb",484:"4340a2f5",535:"d25e5679",540:"6fd13d4a",577:"46d0ccb7",600:"213dc083",622:"a07fed27",632:"2e74ee9c",689:"c9be88aa",714:"c118417a",744:"213dc083",784:"213dc083",801:"dbd48afc",827:"3ec2db87",850:"239662ea",948:"84a9c38a"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},n="wpide:",r.l=(e,i,a,o)=>{if(t[e])t[e].push(i);else{var s,l;if(void 0!==a)for(var c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var u=c[d];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==n+a){s=u;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,r.nc&&s.setAttribute("nonce",r.nc),s.setAttribute("data-webpack",n+a),s.src=e),t[e]=[i];var f=(n,i)=>{s.onerror=s.onload=null,clearTimeout(m);var a=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),a&&a.forEach((e=>e(i))),n)return n(i)},m=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),l&&document.head.appendChild(s)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="",i=e=>new Promise(((t,n)=>{var i=r.miniCssF(e),a=r.p+i;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),i=0;i<n.length;i++){var a=(s=n[i]).getAttribute("data-href")||s.getAttribute("href");if("stylesheet"===s.rel&&(a===e||a===t))return s}var o=document.getElementsByTagName("style");for(i=0;i<o.length;i++){var s;if((a=(s=o[i]).getAttribute("data-href"))===e||a===t)return s}})(i,a))return t();((e,t,n,i)=>{var a=document.createElement("link");a.rel="stylesheet",a.type="text/css",a.onerror=a.onload=o=>{if(a.onerror=a.onload=null,"load"===o.type)n();else{var s=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.href||t,l=new Error("Loading CSS chunk "+e+" failed.\n("+r+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=s,l.request=r,a.parentNode.removeChild(a),i(l)}},a.href=t,document.head.appendChild(a)})(e,a,t,n)})),a={143:0},r.f.miniCss=(e,t)=>{a[e]?t.push(a[e]):0!==a[e]&&{15:1,62:1,218:1,265:1,274:1,311:1,320:1,336:1,434:1,469:1,478:1,484:1,535:1,540:1,577:1,600:1,622:1,632:1,689:1,714:1,744:1,784:1,801:1,827:1,850:1,948:1}[e]&&t.push(a[e]=i(e).then((()=>{a[e]=0}),(t=>{throw delete a[e],t})))},(()=>{var e={143:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var a=new Promise(((n,a)=>i=e[t]=[n,a]));n.push(i[2]=a);var o=r.p+r.u(t),s=new Error;r.l(o,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var a=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+a+": "+o+")",s.name="ChunkLoadError",s.type=a,s.request=o,i[1](s)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,n)=>{var i,a,[o,s,l]=n,c=0;if(o.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(l)var d=l(r)}for(t&&t(n);c<o.length;c++)a=o[c],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return r.O(d)},n=self.webpackChunkwpide=self.webpackChunkwpide||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})();var l=r.O(void 0,[998],(()=>r(98732)));l=r.O(l)})();
10
  /* fs_premium_only */
11
  component:window.WPIDE.premium?function(){return n.e(311).then(n.bind(n,97486))}:null,
12
  /* /fs_premium_only */
13
+ redirect:window.WPIDE.premium?null:{name:"premium",query:{name:"config-manager"}},module:!0,config:null,premium:!0},{path:"/settings",name:"settings",meta:{title:(0,f.__)("Settings","wpide")},icon:"ni-setting",component:function(){return n.e(265).then(n.bind(n,12754))}},{path:"/changelog",name:"changelog",meta:{title:(0,f.__)("Changelog","wpide")},icon:"ni-notes-alt",component:function(){return n.e(714).then(n.bind(n,62322))}},{path:"/account",name:"account",meta:{title:(0,f.__)("Account","wpide")},icon:"user-alt"},{path:"/premium",name:"premium",meta:{title:(0,f.__)("Premium Version Required","wpide")},icon:"ni-lock bg-danger-dim",component:function(){return n.e(211).then(n.bind(n,94560))}},{path:"*",name:"404",meta:{title:(0,f.__)("Not found","wpide")},icon:"ni-sad bg-danger-dim",component:function(){return n.e(187).then(n.bind(n,61973))}}]);const g=new d.ZP({mode:"hash",routes:m});var h=n(3336),p=(n(79753),n(69826),n(20629)),v=n(96486),w=n(95082),b=(n(92222),n(54678),n(56977),n(83710),n(69600),n(82772),n(47042),n(38862),n(65069),n(23123),n(85827),n(85533)),C=n(42227),k=n(38898),_={computed:{premium:function(){return!!window.WPIDE.premium},isPremiumVersion:function(){return!!window.WPIDE.is_premium_version},showFreemiusMenus:function(){return window.WPIDE.show_freemius_menus},showLicenseMenu:function(){return this.showFreemiusMenus&&this.isPremiumVersion},isLicenseActive:function(){return!!window.WPIDE.is_license_active},appDom:function(){return this.$root.$children[0].$refs.app},pageTitle:function(){return this.$route.meta.title||this.$route.name},pageIcon:function(){var e;e=this.getConfig("general.dark_mode")?"icon ni bg-primary text-white":"icon ni bg-primary-dim";var t=this.findRoute(this.$route.name);return t?t.icon+" "+e:null},assetsUrl:function(){return window.WPIDE.assets_url},imagesUrl:function(){return window.WPIDE.images_url},isLoading:function(){return this.$store.state.loading},isModalActive:function(){return this.$store.state.modal.enabled},upgradeUrl:function(){var e=window.WPIDE.account_links.find((function(e){return"_pricing"===e.id}));return e?e.url:null}},methods:{__:function(e,t){return(0,f.__)(e,t)},sprintf:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return f.gB.apply(void 0,[e].concat(n))},loading:function(){this.$store.commit("setLoading",!0)},idle:function(){this.$store.commit("setLoading",!1)},findRoute:function(e){var t=m.find((function(t){return t.name===e}));return t||null},getPremiumMessageData:function(){var e=this,t={title:(0,f.__)("Premium Version Required","wpide"),message:(0,f.__)("It looks like you’re trying to access a feature that requires the Premium Version.","wpide"),button:this.upgradeUrl?this.isPremiumVersion?(0,f.__)("Buy License","wpide"):(0,f.__)("Unlock Access","wpide"):null,buttonCallback:this.upgradeUrl?function(){location.href=e.upgradeUrl}:null,secondaryButton:(0,f.__)("More info","wpide"),secondaryButtonCallback:function(){location.href="https://wpide.com"}};return this.isPremiumVersion&&document.querySelector(".activate-license.wpide a")&&(t.message+=" "+(0,f.__)("If you already have a license key, please activate it.","wpide"),t.secondaryButton=(0,f.__)("Activate License","wpide"),t.secondaryButtonCallback=function(){document.querySelector(".activate-license.wpide a").click()}),t},showModalPrompt:function(e,t,n,i){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},o=this.$createElement,s=o("input",{class:{"form-control":!0},domProps:(0,w.Z)({maxlength:100,required:!1},t),on:{input:function(e){self.value=e.target.value}}}),r=o("div",{class:["form-group"]},[o("label",{class:["form-label"]},[e]),o("div",{class:["form-control-wrap"]},[s])]);this.showModal("","Modal/ModalBody",{node:r},(0,w.Z)({hideHeader:!0,okTitle:n,okOnly:!1,ok:function(){i(s.elm.value)}},a))},showModalConfirm:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.showModal((0,f.__)("Confirmation","wpide"),"Modal/ModalBody",{body:(0,f.__)("Are you sure you want to do this?","wpide")},(0,w.Z)({okVariant:"danger",okTitle:e,okOnly:!1,ok:t},n))},showModalDialog:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{};this.showModal(e,"Modal/ModalBody",{body:t},(0,w.Z)({okTitle:n,ok:i,okOnly:!a,cancelTitle:a,cancel:o},s))},showPremiumFeatureModal:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.getPremiumMessageData();this.showModalDialog(t.title,t.message,t.button,t.buttonCallback,t.secondaryButton,t.secondaryButtonCallback,e)},showModal:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};this.$store.commit("setModal",{enabled:!0,title:e,component:t,props:n,args:(0,w.Z)({size:"sm",buttonSize:"md",footerClass:"modal-footer-sm bg-light",cancelTitle:(0,f.__)("Cancel","wpide"),okOnly:!0},i)})},showExistingModal:function(){this.$store.commit("showModal")},componentModalExists:function(e){return this.$store.state.modal.component===e},hideModal:function(){this.$store.commit("hideModal")},updateModal:function(e,t){this.$store.commit("updateModal",{title:e,args:t})},is:function(e){return this.$store.state.user.role==e},can:function(e){return this.$store.getters.hasPermissions(e)},formatBytes:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;if(0===e)return"0 Bytes";var n=1024,i=t<0?0:t,a=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],o=Math.floor(Math.log(e)/Math.log(n));return parseFloat((e/Math.pow(n,o)).toFixed(i))+" "+a[o]},formatDate:function(e){return(0,b.Z)((0,C.Z)(e),new Date)},isString:function(e){return"string"==typeof e||e instanceof String},isNumeric:function(e){var t=[" ","\n","\r","\t","\f","\v"," "," "," "," "," "," "," "," "," "," "," "," ","​","\u2028","\u2029"," "].join("");return("number"==typeof e||"string"==typeof e&&-1===t.indexOf(e.slice(-1)))&&""!==e&&!isNaN(e)},checkUser:function(){var e=this;return k.Z.getUser().then((function(t){t&&t.username!==M.state.user.username&&e.$store.commit("destroyUser",t)}))},handleError:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=(0,f.__)("Something went wrong!","wpide");e&&"string"==typeof e?i=e:e&&e.response&&e.response.data&&e.response.data.data&&(i=e.response.data.data),this.$bvToast.toast(i,{title:null,variant:"is-danger",toaster:"b-toaster-bottom-right",duration:5e3,appendToast:n,noAutoHide:!t})},handleSuccess:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];this.$bvToast.hide(),this.$bvToast.toast(e,{title:null,variant:"is-success",toaster:"b-toaster-bottom-right",bodyClass:"",duration:5e3,appendToast:n,noAutoHide:!t})},capitalize:function(e){return e.charAt(0).toUpperCase()+e.slice(1)},goTo:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.$router.push(this.routePath(e,t,n)).catch((function(){}))},routePath:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return{name:e,query:t,params:n}},pluginInfo:function(e){return M.state.plugin.hasOwnProperty(e)?M.state.plugin[e]:null},cloneObj:function(e){return JSON.parse(JSON.stringify(e))},isFullscreen:function(){return this.$fullscreen.isFullscreen},toggleFullscreen:function(){this.$fullscreen.toggle()},getRootFolderName:function(){return"/"===this.getConfig("file.root","/")?window.WPIDE.fm_wp_dir:this.getConfig("file.root").split("/").reverse()[0]},getConfigField:function(e){e=Array.isArray(e)?e:e.split(".");for(var t=window.WPIDE.config_fields,n=e.shift();void 0!==n;){if("object"!==(0,h.Z)(t))return t;if(!t.hasOwnProperty(n))return null;t=t[n],n=e.shift()}return t},getDefaultConfig:function(e){e=Array.isArray(e)?e:e.split(".");for(var t=M.state.defaultConfig,n=e.shift();void 0!==n;){if("object"!==(0,h.Z)(t))return t;if(!t.hasOwnProperty(n))return null;t=t[n],n=e.shift()}return t},getConfig:function(e,t){t||this.getDefaultConfig(e);var n=this.getConfigField(e);if(n&&n.hasOwnProperty("premium")&&!this.premium)return t;e=Array.isArray(e)?e:e.split(".");for(var i=M.state.config,a=e.shift();void 0!==a;){if("object"!==(0,h.Z)(i))return i;if(!i.hasOwnProperty(a))return t;i=i[a],a=e.shift()}return i},configIs:function(e,t){return this.getConfig(e)===t},updateConfig:function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=M.state.config,a=e.split("."),o=a.pop();if(a.reduce((function(e,t){return e[t]=e[t]||{}}),i)[o]=t,this.$store.commit("setConfig",i),n)return k.Z.updateConfig(e,t)}}};const y=_;i.default.use(p.ZP);const M=new p.ZP.Store({state:{loading:!1,initialized:!1,config:{},defaultConfig:{},plugin:{},user:{role:"guest",permissions:[],name:"",username:""},cwd:{location:"/",content:[]},tree:{},downloads:[],modal:{enabled:!1,title:"",component:null,props:{},args:{}},imageEditorEnabled:!1},getters:{hasPermissions:function(e){return function(t){return Array.isArray(t)?(0,v.intersection)(e.user.permissions,t).length==t.length:!!e.user.permissions.find((function(e){return e==t}))}}},mutations:{initialize:function(e){this.commit("resetCwd"),this.commit("resetTree"),this.commit("destroyUser"),e.initialized=!0},resetCwd:function(e){e.cwd={location:"/",content:[]}},resetTree:function(e){e.tree={path:"/",name:y.methods.getRootFolderName(),children:[],type:"dir"}},setLoading:function(e,t){e.loading=t},setPluginInfo:function(e,t){e.plugin=t},setConfig:function(e,t){e.config=t},setDefaultConfig:function(e,t){e.defaultConfig=t},setUser:function(e,t){e.user=t},destroyUser:function(e){e.user={role:"guest",permissions:[],name:"",username:""}},setCwd:function(e,t){e.cwd.location=t.location,e.cwd.content=[],(0,v.sortBy)(t.content,[function(e){return e.type.toLowerCase()}]).forEach((function(t){e.cwd.content.push(t)}))},updateTreeNode:function(e,t){!function e(n){for(var i in n)if(n.hasOwnProperty(i)){if("path"===i&&n[i]===t.path)return void Object.assign(n,{path:t.path,children:t.children});"object"===(0,h.Z)(n[i])&&e(n[i])}}(e.tree)},setModal:function(e,t){e.modal=t},showModal:function(e){e.modal.title&&e.modal.component&&(e.modal.enabled=!0)},hideModal:function(e){e.modal.enabled=!1},updateModal:function(e,t){t.title&&(e.modal.title=t.title),t.args&&(e.modal.args=Object.assign({},e.modal.args,t.args))},setImageEditorEnabled:function(e,t){e.imageEditorEnabled=t}}});var F=n(62032),P=n(79501),S=n.n(P),j=n(1659),E=n.n(j),D=n(17751),I=n(48651),T=n.n(I);n(57024);i.default.config.productionTip=!1,i.default.config.baseURL=window.WPIDE.ajax_url,i.default.use(F.XG7),i.default.use(D.ZP,{preLoad:1.3}),i.default.use(E(),{sessionKey:window.WPIDE.plugin.slug+"SessionKey"}),i.default.use(S(),{instances:[{name:window.WPIDE.plugin.slug,storeName:"folder_sizes"}]}),i.default.use(T()),i.default.mixin(y),g.afterEach((function(e,t){i.default.nextTick((function(){document.title=window.WPIDE.plugin.name+(e.meta.title?" | "+e.meta.title:"");var n=document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]');n&&document.body.classList.contains(t.name)&&(document.body.classList.remove(t.name),document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+t.path+'"]').closest("li").classList.remove("current")),n&&!document.body.classList.contains(e.name)&&(document.body.classList.add(e.name),document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]').closest("li").classList.add("current"))}))})),new i.default({router:g,store:M,data:function(){return{adminMenuScrolling:!1}},watch:{"$route.name":function(e,t){var n=this;"settings"===t&&"settings"!==e&&k.Z.getConfig().then((function(e){n.updateConfig("file.root",e.data.data.config.file.root,!1)})).catch((function(){}))}},created:function(){this.init()},mounted:function(){document.body.addEventListener("wpide_error",this.onError,!1)},beforeDestroy:function(){document.body.removeEventListener("wpide_error",this.onError,!1)},methods:{init:function(){this.loading(),this.$store.commit("setPluginInfo",window.WPIDE.plugin),this.loadConfig(),this.fixWpMenu()},loadConfig:function(){var e=this;return k.Z.getConfig().then((function(t){e.$store.commit("setConfig",t.data.data.config),e.$store.commit("setDefaultConfig",t.data.data.defaults),k.Z.getUser().then((function(t){e.$store.commit("initialize"),e.$store.commit("setUser",t)})).catch((function(t){console.log(t),e.$bvToast.toast((0,f.__)("Something went wrong!","wpide"),{title:(0,f.__)("Error","wpide"),variant:"danger",toaster:"b-toaster-bottom-right",appendToast:!1})}))})).catch((function(t){console.log(t),e.$bvToast.toast((0,f.__)("Something went wrong!","wpide"),{title:(0,f.__)("Error","wpide"),variant:"danger",toaster:"b-toaster-bottom-right",appendToast:!0})})).finally((function(){e.idle()}))},fixWpMenu:function(){var e=document.getElementById("adminmenuwrap"),t=document.getElementById("adminmenu"),n=document.getElementById("wpcontent"),i=document.querySelector('#toplevel_page_wpide li a[href="#divider"]');i&&!i.closest("li").nextSibling&&i.remove(),t.addEventListener("mouseover",(function(){e.classList.add("hover")})),t.addEventListener("mouseleave",(function(){e.classList.remove("hover")})),n.addEventListener("mouseover",(function(){e.classList.remove("hover")})),this.premium||m.filter((function(e){return e.hasOwnProperty("premium")&&e.premium})).forEach((function(e){document.querySelector('#toplevel_page_wpide li a[href*="page=wpide#'+e.path+'"]').closest("li").classList.add("premium")}))},onError:function(e){this.handleError(e.detail),this.idle()}},render:function(e){return e(c)}}).$mount("#wpide-app")},98131:(e,t,n)=>{n.p=window.WPIDE.assets_url},4876:(e,t,n)=>{var i={"./ConfigManager/ConstantForm":[34804,740],"./ConfigManager/ConstantForm.vue":[34804,740],"./ConfigManager/ListItem":[90146,478],"./ConfigManager/ListItem.vue":[90146,478],"./DbManager/Table":[24552,577],"./DbManager/Table.vue":[24552,577],"./DbManager/TableRowForm":[22487,484],"./DbManager/TableRowForm.vue":[22487,484],"./DbManager/TablesTree":[22224,801],"./DbManager/TablesTree.vue":[22224,801],"./DbManager/easy-table-dark.less":[72888,850],"./DbManager/easy-table-default.less":[69881,469],"./FileManager/AceEditor":[6931,252],"./FileManager/AceEditor.vue":[6931,252],"./FileManager/CodeDiff":[36196,274],"./FileManager/CodeDiff.vue":[36196,274],"./FileManager/Download":[64251,243],"./FileManager/Download.vue":[64251,243],"./FileManager/Editor":[99109,948],"./FileManager/Editor.vue":[99109,948],"./FileManager/FilesItemActions":[85384,673],"./FileManager/FilesItemActions.vue":[85384,673],"./FileManager/FilesList":[50734,62],"./FileManager/FilesList.vue":[50734,62],"./FileManager/FilesListItem":[65513,744],"./FileManager/FilesListItem.vue":[65513,744],"./FileManager/FilesPreview":[95283,717],"./FileManager/FilesPreview.vue":[95283,717],"./FileManager/Gallery":[22559,632],"./FileManager/Gallery.vue":[22559,632],"./FileManager/GridView":[52939,784],"./FileManager/GridView.vue":[52939,784],"./FileManager/GroupView":[42407,600],"./FileManager/GroupView.vue":[42407,600],"./FileManager/ImageEditor":[44345,827],"./FileManager/ImageEditor.vue":[44345,827],"./FileManager/ListView":[17858,540],"./FileManager/ListView.vue":[17858,540],"./FileManager/MediaPlayer":[73762,689],"./FileManager/MediaPlayer.vue":[73762,689],"./FileManager/SortDropdown":[63586,129],"./FileManager/SortDropdown.vue":[63586,129],"./FileManager/Tree":[82446,622],"./FileManager/Tree.vue":[82446,622],"./FileManager/TreeNode":[87182,434],"./FileManager/TreeNode.vue":[87182,434],"./FileManager/Upload":[71252,320],"./FileManager/Upload.vue":[71252,320],"./Header":[68372],"./Header.vue":[68372],"./Loading":[23768],"./Loading.vue":[23768],"./Modal/Modal":[77349],"./Modal/Modal.vue":[77349],"./Modal/ModalBody":[91976,768],"./Modal/ModalBody.vue":[91976,768],"./Settings/SettingControl":[58385,144],"./Settings/SettingControl.vue":[58385,144],"./Settings/SettingControlRepeater":[98566,336],"./Settings/SettingControlRepeater.vue":[98566,336],"./Settings/SettingFields":[78389,218],"./Settings/SettingFields.vue":[78389,218],"./Settings/SettingFoldersControl":[73463,298],"./Settings/SettingFoldersControl.vue":[73463,298]};function a(e){if(!n.o(i,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=i[e],a=t[0];return Promise.all(t.slice(1).map(n.e)).then((()=>n(a)))}a.keys=()=>Object.keys(i),a.id=4876,e.exports=a}},s={};function r(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={id:e,loaded:!1,exports:{}};return o[e].call(n.exports,n,n.exports,r),n.loaded=!0,n.exports}r.m=o,r.amdD=function(){throw new Error("define cannot be used indirect")},e=[],r.O=(t,n,i,a)=>{if(!n){var o=1/0;for(d=0;d<e.length;d++){for(var[n,i,a]=e[d],s=!0,l=0;l<n.length;l++)(!1&a||o>=a)&&Object.keys(r.O).every((e=>r.O[e](n[l])))?n.splice(l--,1):(s=!1,a<o&&(o=a));if(s){e.splice(d--,1);var c=i();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[n,i,a]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>740===e?"js/chunks/ConfigManager/ConfigManager-ConstantForm.js?_hash=0f815510":478===e?"js/chunks/ConfigManager/ConfigManager-ListItem.js?_hash=ec252b1f":577===e?"js/chunks/DbManager/DbManager-Table.js?_hash=5b780ea8":484===e?"js/chunks/DbManager/DbManager-TableRowForm.js?_hash=0efcc5cf":801===e?"js/chunks/DbManager/DbManager-TablesTree.js?_hash=bff35e46":850===e?"js/chunks/DbManager/DbManager-easy-table-dark-less.js?_hash=696fc115":469===e?"js/chunks/DbManager/DbManager-easy-table-default-less.js?_hash=501fe06d":252===e?"js/chunks/FileManager/FileManager-AceEditor.js?_hash=07cab9df":274===e?"js/chunks/FileManager/FileManager-CodeDiff.js?_hash=25b24822":243===e?"js/chunks/FileManager/FileManager-Download.js?_hash=46a29ebc":948===e?"js/chunks/FileManager/FileManager-Editor.js?_hash=3cfed1e1":673===e?"js/chunks/FileManager/FileManager-FilesItemActions.js?_hash=da7f837f":62===e?"js/chunks/FileManager/FileManager-FilesList.js?_hash=336dc493":744===e?"js/chunks/FileManager/FileManager-FilesListItem.js?_hash=f148bc05":717===e?"js/chunks/FileManager/FileManager-FilesPreview.js?_hash=5f63f49a":632===e?"js/chunks/FileManager/FileManager-Gallery.js?_hash=f61ad518":784===e?"js/chunks/FileManager/FileManager-GridView.js?_hash=2cd91419":600===e?"js/chunks/FileManager/FileManager-GroupView.js?_hash=663cadb6":827===e?"js/chunks/FileManager/FileManager-ImageEditor.js?_hash=d7d77a56":540===e?"js/chunks/FileManager/FileManager-ListView.js?_hash=3ff0305b":689===e?"js/chunks/FileManager/FileManager-MediaPlayer.js?_hash=6d56a171":129===e?"js/chunks/FileManager/FileManager-SortDropdown.js?_hash=dedbbf04":622===e?"js/chunks/FileManager/FileManager-Tree.js?_hash=1b5470a0":434===e?"js/chunks/FileManager/FileManager-TreeNode.js?_hash=0ccda793":320===e?"js/chunks/FileManager/FileManager-Upload.js?_hash=3de301b1":768===e?"js/chunks/Modal/Modal-ModalBody.js?_hash=8b3b97bb":144===e?"js/chunks/Settings/Settings-SettingControl.js?_hash=ed785726":336===e?"js/chunks/Settings/Settings-SettingControlRepeater.js?_hash=42298ee3":218===e?"js/chunks/Settings/Settings-SettingFields.js?_hash=7605c80b":298===e?"js/chunks/Settings/Settings-SettingFoldersControl.js?_hash=8aa2cea1":535===e?"js/chunks/FileManager/FileManager.js?_hash=20d7f3bf":15===e?"js/chunks/ImageEditor/ImageEditor.js?_hash=1e678980":248===e?"js/chunks/DbManager/DbManager.js?_hash=a1c3d61d":311===e?"js/chunks/ConfigManager/ConfigManager.js?_hash=004af6d0":265===e?"js/chunks/Settings/Settings.js?_hash=7b77d47a":714===e?"js/chunks/Changelog/Changelog.js?_hash=d449b1e3":211===e?"js/chunks/Premium/Premium.js?_hash=54417fd4":187===e?"js/chunks/NotFound/NotFound.js?_hash=bb008f21":void 0,r.miniCssF=e=>"css/"+{15:"ImageEditor",62:"FileManager-FilesList",218:"Settings-SettingFields",265:"Settings",274:"FileManager-CodeDiff",311:"ConfigManager",320:"FileManager-Upload",336:"Settings-SettingControlRepeater",434:"FileManager-TreeNode",469:"DbManager-easy-table-default-less",478:"ConfigManager-ListItem",484:"DbManager-TableRowForm",535:"FileManager",540:"FileManager-ListView",577:"DbManager-Table",600:"FileManager-GroupView",622:"FileManager-Tree",632:"FileManager-Gallery",689:"FileManager-MediaPlayer",714:"Changelog",744:"FileManager-FilesListItem",784:"FileManager-GridView",801:"DbManager-TablesTree",827:"FileManager-ImageEditor",850:"DbManager-easy-table-dark-less",948:"FileManager-Editor"}[e]+".css?_hash="+{15:"0af54435",62:"213dc083",218:"eee5afa1",265:"1c4161c5",274:"97604922",311:"7ccf5adb",320:"0fca59a8",336:"b441f6ed",434:"72f4e5dd",469:"261d83e7",478:"7ccf5adb",484:"4340a2f5",535:"d25e5679",540:"6fd13d4a",577:"46d0ccb7",600:"213dc083",622:"a07fed27",632:"2e74ee9c",689:"c9be88aa",714:"c118417a",744:"213dc083",784:"213dc083",801:"dbd48afc",827:"3ec2db87",850:"239662ea",948:"84a9c38a"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},n="wpide:",r.l=(e,i,a,o)=>{if(t[e])t[e].push(i);else{var s,l;if(void 0!==a)for(var c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var u=c[d];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==n+a){s=u;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,r.nc&&s.setAttribute("nonce",r.nc),s.setAttribute("data-webpack",n+a),s.src=e),t[e]=[i];var f=(n,i)=>{s.onerror=s.onload=null,clearTimeout(m);var a=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),a&&a.forEach((e=>e(i))),n)return n(i)},m=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),l&&document.head.appendChild(s)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="",i=e=>new Promise(((t,n)=>{var i=r.miniCssF(e),a=r.p+i;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),i=0;i<n.length;i++){var a=(s=n[i]).getAttribute("data-href")||s.getAttribute("href");if("stylesheet"===s.rel&&(a===e||a===t))return s}var o=document.getElementsByTagName("style");for(i=0;i<o.length;i++){var s;if((a=(s=o[i]).getAttribute("data-href"))===e||a===t)return s}})(i,a))return t();((e,t,n,i)=>{var a=document.createElement("link");a.rel="stylesheet",a.type="text/css",a.onerror=a.onload=o=>{if(a.onerror=a.onload=null,"load"===o.type)n();else{var s=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.href||t,l=new Error("Loading CSS chunk "+e+" failed.\n("+r+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=s,l.request=r,a.parentNode.removeChild(a),i(l)}},a.href=t,document.head.appendChild(a)})(e,a,t,n)})),a={143:0},r.f.miniCss=(e,t)=>{a[e]?t.push(a[e]):0!==a[e]&&{15:1,62:1,218:1,265:1,274:1,311:1,320:1,336:1,434:1,469:1,478:1,484:1,535:1,540:1,577:1,600:1,622:1,632:1,689:1,714:1,744:1,784:1,801:1,827:1,850:1,948:1}[e]&&t.push(a[e]=i(e).then((()=>{a[e]=0}),(t=>{throw delete a[e],t})))},(()=>{var e={143:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var a=new Promise(((n,a)=>i=e[t]=[n,a]));n.push(i[2]=a);var o=r.p+r.u(t),s=new Error;r.l(o,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var a=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+a+": "+o+")",s.name="ChunkLoadError",s.type=a,s.request=o,i[1](s)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,n)=>{var i,a,[o,s,l]=n,c=0;if(o.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(l)var d=l(r)}for(t&&t(n);c<o.length;c++)a=o[c],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return r.O(d)},n=self.webpackChunkwpide=self.webpackChunkwpide||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})();var l=r.O(void 0,[998],(()=>r(98732)));l=r.O(l)})();
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: XplodedThemes
3
  Tags: theme editor, plugin editor, code editor, file editor, file manager, wpide, ide
4
  Requires at least: 5.2
5
  Tested up to: 6.1.1
6
- Stable tag: 3.4.5
7
  Requires PHP: 7.4.0
8
  Requires at least: 5.0
9
  License: GPLv2 or later
@@ -152,6 +152,10 @@ This option might be available on other hosting platforms as well.
152
 
153
  == Changelog ==
154
 
 
 
 
 
155
  #### 3.4.5 - 07.12.2022
156
  - **new**: **Pro** Config Manager | Added new visual config manager to easily Add, Update or Delete constants within the wp-config.php file
157
  - **new**: **Pro** File Manager | Added new **Advanced Mode** option. When enabled, all files and folders will be available for editing including core wordpress files and the wp-config.php unless they are filtered out manually within the settings.
3
  Tags: theme editor, plugin editor, code editor, file editor, file manager, wpide, ide
4
  Requires at least: 5.2
5
  Tested up to: 6.1.1
6
+ Stable tag: 3.4.6
7
  Requires PHP: 7.4.0
8
  Requires at least: 5.0
9
  License: GPLv2 or later
152
 
153
  == Changelog ==
154
 
155
+ #### 3.4.6 - 10.12.2022
156
+ - **fix**: Instead of ABSPATH, use the correct root path, relative to the plugin in case WordPress Files are located outside the root directory, which is the case if the site is hosted on WordPress.com.
157
+ - **fix**: Minor fixes
158
+
159
  #### 3.4.5 - 07.12.2022
160
  - **new**: **Pro** Config Manager | Added new visual config manager to easily Add, Update or Delete constants within the wp-config.php file
161
  - **new**: **Pro** File Manager | Added new **Advanced Mode** option. When enabled, all files and folders will be available for editing including core wordpress files and the wp-config.php unless they are filtered out manually within the settings.
wpide.php CHANGED
@@ -10,7 +10,7 @@
10
  * Plugin Name: WPIDE - File Manager & Code Editor
11
  * Plugin URI: https://wpide.com
12
  * Description: WordPress file manager with an advanced code editor / file editor featuring auto-completion of both WordPress and PHP functions with reference, syntax highlighting, line numbers, tabbed editing, automatic backup, image editor & much more!
13
- * Version: 3.4.5
14
  * Requires PHP: 7.4.0
15
  * Requires at least: 5.0
16
  * Author: XplodedThemes
10
  * Plugin Name: WPIDE - File Manager & Code Editor
11
  * Plugin URI: https://wpide.com
12
  * Description: WordPress file manager with an advanced code editor / file editor featuring auto-completion of both WordPress and PHP functions with reference, syntax highlighting, line numbers, tabbed editing, automatic backup, image editor & much more!
13
+ * Version: 3.4.6
14
  * Requires PHP: 7.4.0
15
  * Requires at least: 5.0
16
  * Author: XplodedThemes