Real Media Library: Media Library Folder & File Manager - Version 4.18.21

Version Description

Download this release

Release Info

Developer devowl
Plugin Icon wp plugin Real Media Library: Media Library Folder & File Manager
Version 4.18.21
Comparing to
See all releases

Code changes from version 4.18.20 to 4.18.21

Files changed (29) hide show
  1. CHANGELOG.md +8 -0
  2. README.txt +1 -1
  3. inc/base/others/cachebuster-lib.php +1 -1
  4. inc/base/others/cachebuster.php +1 -1
  5. index.php +1 -1
  6. vendor/autoload.php +1 -1
  7. vendor/composer/autoload_real.php +7 -7
  8. vendor/composer/autoload_static.php +4 -4
  9. vendor/composer/installed.php +1 -1
  10. vendor/devowl-wp/freemium/CHANGELOG.md +8 -0
  11. vendor/devowl-wp/freemium/package.json +2 -2
  12. vendor/devowl-wp/real-product-manager-wp-client/CHANGELOG.md +12 -0
  13. vendor/devowl-wp/real-product-manager-wp-client/dist/index.css.map +1 -1
  14. vendor/devowl-wp/real-product-manager-wp-client/dist/index.js +1 -1
  15. vendor/devowl-wp/real-product-manager-wp-client/dist/index.js.map +1 -1
  16. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_AT-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  17. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_CH-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  18. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_CH_informal-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  19. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_DE-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  20. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_DE_formal-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  21. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-hu_HU-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  22. vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-ru_RU-168726dbe96b3ce427e7fedce31bb0bc.json +1 -1
  23. vendor/devowl-wp/real-product-manager-wp-client/package.json +2 -2
  24. vendor/devowl-wp/real-product-manager-wp-client/src/Utils.php +6 -2
  25. vendor/devowl-wp/real-utils/CHANGELOG.md +8 -0
  26. vendor/devowl-wp/real-utils/package.json +2 -2
  27. vendor/devowl-wp/utils/CHANGELOG.md +11 -0
  28. vendor/devowl-wp/utils/dist/index.js +1 -1
  29. vendor/devowl-wp/utils/dist/index.js.map +1 -1
CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
6
  ## 4.18.20 (2022-11-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ ## 4.18.21 (2022-11-15)
7
+
8
+ **Note:** This package (@devowl-wp/real-media-library) has been updated because a dependency, which is also shipped with this package, has changed.
9
+
10
+
11
+
12
+
13
+
14
  ## 4.18.20 (2022-11-09)
15
 
16
 
README.txt CHANGED
@@ -1,7 +1,7 @@
1
  === Real Media Library: Media Library Folder & File Manager ===
2
  Contributors: devowl, mguenter, jankarres, mrguenter, styx
3
  Tags: wordpress media library folders, media library folders, file manager, media folder, media library folder, media library category, media library categories, media category, subfolders, file manager, directories, folder, folders, organize, media library, enhanced Media, enhanced media library, media management, media directory, folder manager, wordpress, media library wizard, folders manager, media library folder, media folders, media directories, media categories, wordpress media library folders, wordpress media folder, wordpress media folders, wordpress media library
4
- Stable tag: 4.18.20
5
  Requires at least: 5.2
6
  Requires PHP: 7.2.0
7
  Tested up to: 6.1
1
  === Real Media Library: Media Library Folder & File Manager ===
2
  Contributors: devowl, mguenter, jankarres, mrguenter, styx
3
  Tags: wordpress media library folders, media library folders, file manager, media folder, media library folder, media library category, media library categories, media category, subfolders, file manager, directories, folder, folders, organize, media library, enhanced Media, enhanced media library, media management, media directory, folder manager, wordpress, media library wizard, folders manager, media library folder, media folders, media directories, media categories, wordpress media library folders, wordpress media folder, wordpress media folders, wordpress media library
4
+ Stable tag: 4.18.21
5
  Requires at least: 5.2
6
  Requires PHP: 7.2.0
7
  Tested up to: 6.1
inc/base/others/cachebuster-lib.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php
2
- /* This file was automatically generated (Wed Nov 09 2022 09:00:31 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'i18n-react' => '0.7.0',
5
  'mobx' => '4.15.7',
1
  <?php
2
+ /* This file was automatically generated (Tue Nov 15 2022 07:48:53 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'i18n-react' => '0.7.0',
5
  'mobx' => '4.15.7',
inc/base/others/cachebuster.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php
2
- /* This file was automatically generated (Wed Nov 09 2022 09:00:31 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'src/public/dist/rml_gutenberg.lite.js' => 'ec037dfb6f4518134e33bc6a33d2e466',
5
  'src/public/dist/rml_gutenberg.pro.js' => '6a34186dde43c12b236b2fd5c0c947df',
1
  <?php
2
+ /* This file was automatically generated (Tue Nov 15 2022 07:48:53 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'src/public/dist/rml_gutenberg.lite.js' => 'ec037dfb6f4518134e33bc6a33d2e466',
5
  'src/public/dist/rml_gutenberg.pro.js' => '6a34186dde43c12b236b2fd5c0c947df',
index.php CHANGED
@@ -8,7 +8,7 @@
8
  * Description: Organize uploaded media in folders, collections and galleries: A file manager for WordPress. Media management made easy!
9
  * Author: devowl.io
10
  * Author URI: https://devowl.io
11
- * Version: 4.18.20
12
  * Text Domain: real-media-library
13
  * Domain Path: /languages
14
  */
8
  * Description: Organize uploaded media in folders, collections and galleries: A file manager for WordPress. Media management made easy!
9
  * Author: devowl.io
10
  * Author URI: https://devowl.io
11
+ * Version: 4.18.21
12
  * Text Domain: real-media-library
13
  * Domain Path: /languages
14
  */
vendor/autoload.php CHANGED
@@ -22,4 +22,4 @@ if (PHP_VERSION_ID < 50600) {
22
 
23
  require_once __DIR__ . '/composer/autoload_real.php';
24
 
25
- return ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c::getLoader();
22
 
23
  require_once __DIR__ . '/composer/autoload_real.php';
24
 
25
+ return ComposerAutoloaderInitda041578ce1d8b91aebd7c91b01b1f6d::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c
6
  {
7
  private static $loader;
8
 
@@ -22,19 +22,19 @@ class ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c
22
  return self::$loader;
23
  }
24
 
25
- spl_autoload_register(array('ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
27
- spl_autoload_unregister(array('ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c', 'loadClassLoader'));
28
 
29
  require __DIR__ . '/autoload_static.php';
30
- call_user_func(\Composer\Autoload\ComposerStaticInitb4d011161faea616338c914ff18d1b0c::getInitializer($loader));
31
 
32
  $loader->setClassMapAuthoritative(true);
33
  $loader->register(true);
34
 
35
- $includeFiles = \Composer\Autoload\ComposerStaticInitb4d011161faea616338c914ff18d1b0c::$files;
36
  foreach ($includeFiles as $fileIdentifier => $file) {
37
- composerRequireb4d011161faea616338c914ff18d1b0c($fileIdentifier, $file);
38
  }
39
 
40
  return $loader;
@@ -46,7 +46,7 @@ class ComposerAutoloaderInitb4d011161faea616338c914ff18d1b0c
46
  * @param string $file
47
  * @return void
48
  */
49
- function composerRequireb4d011161faea616338c914ff18d1b0c($fileIdentifier, $file)
50
  {
51
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
52
  $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInitda041578ce1d8b91aebd7c91b01b1f6d
6
  {
7
  private static $loader;
8
 
22
  return self::$loader;
23
  }
24
 
25
+ spl_autoload_register(array('ComposerAutoloaderInitda041578ce1d8b91aebd7c91b01b1f6d', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
27
+ spl_autoload_unregister(array('ComposerAutoloaderInitda041578ce1d8b91aebd7c91b01b1f6d', 'loadClassLoader'));
28
 
29
  require __DIR__ . '/autoload_static.php';
30
+ call_user_func(\Composer\Autoload\ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d::getInitializer($loader));
31
 
32
  $loader->setClassMapAuthoritative(true);
33
  $loader->register(true);
34
 
35
+ $includeFiles = \Composer\Autoload\ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d::$files;
36
  foreach ($includeFiles as $fileIdentifier => $file) {
37
+ composerRequireda041578ce1d8b91aebd7c91b01b1f6d($fileIdentifier, $file);
38
  }
39
 
40
  return $loader;
46
  * @param string $file
47
  * @return void
48
  */
49
+ function composerRequireda041578ce1d8b91aebd7c91b01b1f6d($fileIdentifier, $file)
50
  {
51
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
52
  $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitb4d011161faea616338c914ff18d1b0c
8
  {
9
  public static $files = array (
10
  'cd48e99dc39649f6529395d65373ee16' => __DIR__ . '/..' . '/devowl-wp/real-product-manager-wp-client/src/autoload.php',
@@ -175,9 +175,9 @@ class ComposerStaticInitb4d011161faea616338c914ff18d1b0c
175
  public static function getInitializer(ClassLoader $loader)
176
  {
177
  return \Closure::bind(function () use ($loader) {
178
- $loader->prefixLengthsPsr4 = ComposerStaticInitb4d011161faea616338c914ff18d1b0c::$prefixLengthsPsr4;
179
- $loader->prefixDirsPsr4 = ComposerStaticInitb4d011161faea616338c914ff18d1b0c::$prefixDirsPsr4;
180
- $loader->classMap = ComposerStaticInitb4d011161faea616338c914ff18d1b0c::$classMap;
181
 
182
  }, null, ClassLoader::class);
183
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d
8
  {
9
  public static $files = array (
10
  'cd48e99dc39649f6529395d65373ee16' => __DIR__ . '/..' . '/devowl-wp/real-product-manager-wp-client/src/autoload.php',
175
  public static function getInitializer(ClassLoader $loader)
176
  {
177
  return \Closure::bind(function () use ($loader) {
178
+ $loader->prefixLengthsPsr4 = ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d::$prefixLengthsPsr4;
179
+ $loader->prefixDirsPsr4 = ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d::$prefixDirsPsr4;
180
+ $loader->classMap = ComposerStaticInitda041578ce1d8b91aebd7c91b01b1f6d::$classMap;
181
 
182
  }, null, ClassLoader::class);
183
  }
vendor/composer/installed.php CHANGED
@@ -2,4 +2,4 @@
2
 
3
  namespace MatthiasWeb\RealMediaLibrary\Vendor;
4
 
5
- return array('root' => array('name' => '__root__', 'pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '823b2c7467e3efd32ad0ea251a0649cfba6d2adc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('__root__' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '823b2c7467e3efd32ad0ea251a0649cfba6d2adc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/freemium' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => 'a6f7fa5938b077d07d390d5a6729e1b48e0c178b', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/freemium', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/real-product-manager-wp-client' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '20cb702cfdf8371d48750463c30f8551c1753410', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/real-product-manager-wp-client', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/real-utils' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '48f380da0e61910f07cecb52dc58cf8e24b8f5e1', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/real-utils', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/utils' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '4f4a98962be8e2e5a3404e76233f744ca5346477', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/utils', 'aliases' => array(), 'dev_requirement' => \false), 'yahnis-elsts/plugin-update-checker' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '56c78cc6da7b071e58ec4a4cc04f2a2dcae05a13', 'type' => 'library', 'install_path' => __DIR__ . '/../yahnis-elsts/plugin-update-checker', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false)));
2
 
3
  namespace MatthiasWeb\RealMediaLibrary\Vendor;
4
 
5
+ return array('root' => array('name' => '__root__', 'pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '832c5626efa8bc4b0d788877fc4a22f2f36acc56', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('__root__' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '832c5626efa8bc4b0d788877fc4a22f2f36acc56', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/freemium' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => 'a6f7fa5938b077d07d390d5a6729e1b48e0c178b', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/freemium', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/real-product-manager-wp-client' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '20cb702cfdf8371d48750463c30f8551c1753410', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/real-product-manager-wp-client', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/real-utils' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '48f380da0e61910f07cecb52dc58cf8e24b8f5e1', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/real-utils', 'aliases' => array(), 'dev_requirement' => \false), 'devowl-wp/utils' => array('pretty_version' => 'dev-wordpress', 'version' => 'dev-wordpress', 'reference' => '4f4a98962be8e2e5a3404e76233f744ca5346477', 'type' => 'library', 'install_path' => __DIR__ . '/../devowl-wp/utils', 'aliases' => array(), 'dev_requirement' => \false), 'yahnis-elsts/plugin-update-checker' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '56c78cc6da7b071e58ec4a4cc04f2a2dcae05a13', 'type' => 'library', 'install_path' => __DIR__ . '/../yahnis-elsts/plugin-update-checker', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false)));
vendor/devowl-wp/freemium/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
6
  ## 1.3.24 (2022-11-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ ## 1.3.25 (2022-11-15)
7
+
8
+ **Note:** This package (@devowl-wp/freemium) has been updated because a dependency, which is also shipped with this package, has changed.
9
+
10
+
11
+
12
+
13
+
14
  ## 1.3.24 (2022-11-09)
15
 
16
 
vendor/devowl-wp/freemium/package.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "name": "@devowl-wp/freemium",
3
- "version": "1.3.24",
4
  "private": true,
5
  "description": "Make your plugin to a freemium plugin with predefined Envato support",
6
  "homepage": "https://devowl.io",
@@ -101,7 +101,7 @@
101
  "@devowl-wp/phpcs-config": "^0.1.4",
102
  "@devowl-wp/phpunit-config": "^0.1.4",
103
  "@devowl-wp/ts-config": "^0.1.6",
104
- "@devowl-wp/utils": "^1.12.22",
105
  "@devowl-wp/webpack-config": "^0.2.4",
106
  "@types/grunt": "~0.4.25",
107
  "@types/jest": "~26.0.23",
1
  {
2
  "name": "@devowl-wp/freemium",
3
+ "version": "1.3.25",
4
  "private": true,
5
  "description": "Make your plugin to a freemium plugin with predefined Envato support",
6
  "homepage": "https://devowl.io",
101
  "@devowl-wp/phpcs-config": "^0.1.4",
102
  "@devowl-wp/phpunit-config": "^0.1.4",
103
  "@devowl-wp/ts-config": "^0.1.6",
104
+ "@devowl-wp/utils": "^1.12.23",
105
  "@devowl-wp/webpack-config": "^0.2.4",
106
  "@types/grunt": "~0.4.25",
107
  "@types/jest": "~26.0.23",
vendor/devowl-wp/real-product-manager-wp-client/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  ## 1.13.14 (2022-11-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ ## 1.13.15 (2022-11-15)
7
+
8
+
9
+ ### fix
10
+
11
+ * add a button to enter PRO license and redirct to kb-article in free version (CU-30db841)
12
+ * force to use option home_url and siteurl instead of constants when within subdomain MU (CU-33khexz)
13
+
14
+
15
+
16
+
17
+
18
  ## 1.13.14 (2022-11-09)
19
 
20
 
vendor/devowl-wp/real-product-manager-wp-client/dist/index.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.css","mappings":"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","sources":["webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/color/bezierEasing.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/motion.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/fade.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/move.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/other.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/slide.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/zoom.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/components.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/inline.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/horizontal.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/vertical.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/status.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/reset.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/affix.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/compatibility.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/allow-clear.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/clearfix.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/search-input.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/IE11.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/checkbox/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/checkbox/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tooltip/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tooltip/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/alert/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/alert/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/spin/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/size.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/spin/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/message/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/message/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/modal-mask.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/modal.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/box.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/confirm.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/single.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/multiple.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/iconfont.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/divider/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/divider/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/bordered.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/responsive.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/space/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/space/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/radio/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/radio/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tag/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tag/style/rtl.less","webpack:///./lib/style/antd.less"],"sourcesContent":["/* stylelint-disable */\n.bezierEasingMixin() {\n@functions: ~`(function() {\n var NEWTON_ITERATIONS = 4;\n var NEWTON_MIN_SLOPE = 0.001;\n var SUBDIVISION_PRECISION = 0.0000001;\n var SUBDIVISION_MAX_ITERATIONS = 10;\n\n var kSplineTableSize = 11;\n var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\n\n var float32ArraySupported = typeof Float32Array === 'function';\n\n function A (aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1; }\n function B (aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1; }\n function C (aA1) { return 3.0 * aA1; }\n\n // Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\n function calcBezier (aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT; }\n\n // Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\n function getSlope (aT, aA1, aA2) { return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1); }\n\n function binarySubdivide (aX, aA, aB, mX1, mX2) {\n var currentX, currentT, i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) {\n aB = currentT;\n } else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n return currentT;\n }\n\n function newtonRaphsonIterate (aX, aGuessT, mX1, mX2) {\n for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\n var currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n }\n\n var BezierEasing = function (mX1, mY1, mX2, mY2) {\n if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) {\n throw new Error('bezier x values must be in [0, 1] range');\n }\n\n // Precompute samples table\n var sampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n if (mX1 !== mY1 || mX2 !== mY2) {\n for (var i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n }\n\n function getTForX (aX) {\n var intervalStart = 0.0;\n var currentSample = 1;\n var lastSample = kSplineTableSize - 1;\n\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n --currentSample;\n\n // Interpolate to provide an initial guess for t\n var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n var guessForT = intervalStart + dist * kSampleStepSize;\n\n var initialSlope = getSlope(guessForT, mX1, mX2);\n if (initialSlope >= NEWTON_MIN_SLOPE) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n } else if (initialSlope === 0.0) {\n return guessForT;\n } else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n }\n\n return function BezierEasing (x) {\n if (mX1 === mY1 && mX2 === mY2) {\n return x; // linear\n }\n // Because JavaScript number are imprecise, we should guarantee the extremes are right.\n if (x === 0) {\n return 0;\n }\n if (x === 1) {\n return 1;\n }\n return calcBezier(getTForX(x), mY1, mY2);\n };\n };\n\n this.colorEasing = BezierEasing(0.26, 0.09, 0.37, 0.18);\n // less 3 requires a return\n return '';\n})()`;\n}\n// It is hacky way to make this function will be compiled preferentially by less\n// resolve error: `ReferenceError: colorPalette is not defined`\n// https://github.com/ant-design/ant-motion/issues/44\n.bezierEasingMixin();\n","@import '../themes/index';\n\n.motion-common(@duration: @animation-duration-base) {\n animation-duration: @duration;\n animation-fill-mode: both;\n}\n\n.motion-common-leave(@duration: @animation-duration-base) {\n animation-duration: @duration;\n animation-fill-mode: both;\n}\n\n.make-motion(@className, @keyframeName, @duration: @animation-duration-base) {\n .@{className}-enter,\n .@{className}-appear {\n .motion-common(@duration);\n\n animation-play-state: paused;\n }\n .@{className}-leave {\n .motion-common-leave(@duration);\n\n animation-play-state: paused;\n }\n .@{className}-enter.@{className}-enter-active,\n .@{className}-appear.@{className}-appear-active {\n animation-name: ~'@{keyframeName}In';\n animation-play-state: running;\n }\n .@{className}-leave.@{className}-leave-active {\n animation-name: ~'@{keyframeName}Out';\n animation-play-state: running;\n pointer-events: none;\n }\n}\n",".fade-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: linear;\n }\n .@{name}-leave {\n animation-timing-function: linear;\n }\n}\n\n.fade-motion(fade, antFade);\n\n@keyframes antFadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes antFadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n",".move-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-out-circ;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-circ;\n }\n}\n\n.move-motion(move-up, antMoveUp);\n.move-motion(move-down, antMoveDown);\n.move-motion(move-left, antMoveLeft);\n.move-motion(move-right, antMoveRight);\n\n@keyframes antMoveDownIn {\n 0% {\n transform: translateY(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveDownOut {\n 0% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateY(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveLeftIn {\n 0% {\n transform: translateX(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveLeftOut {\n 0% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateX(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveRightIn {\n 0% {\n transform: translateX(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveRightOut {\n 0% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateX(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveUpIn {\n 0% {\n transform: translateY(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveUpOut {\n 0% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateY(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n","@keyframes loadingCircle {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@click-animating-true: ~\"[@{ant-prefix}-click-animating='true']\";\n@click-animating-with-extra-node-true: ~\"[@{ant-prefix}-click-animating-without-extra-node='true']\";\n\n@{click-animating-true},\n@{click-animating-with-extra-node-true} {\n position: relative;\n}\n\nhtml {\n --antd-wave-shadow-color: @primary-color;\n --scroll-bar: 0;\n}\n\n@click-animating-with-extra-node-true-after: ~'@{click-animating-with-extra-node-true}::after';\n\n@{click-animating-with-extra-node-true-after},\n.@{ant-prefix}-click-animating-node {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n border-radius: inherit;\n box-shadow: 0 0 0 0 @primary-color;\n box-shadow: 0 0 0 0 var(--antd-wave-shadow-color);\n opacity: 0.2;\n animation: fadeEffect 2s @ease-out-circ, waveEffect 0.4s @ease-out-circ;\n animation-fill-mode: forwards;\n content: '';\n pointer-events: none;\n}\n\n@keyframes waveEffect {\n 100% {\n box-shadow: 0 0 0 @primary-color;\n box-shadow: 0 0 0 @wave-animation-width var(--antd-wave-shadow-color);\n }\n}\n\n@keyframes fadeEffect {\n 100% {\n opacity: 0;\n }\n}\n",".slide-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-out-quint;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-quint;\n }\n}\n\n.slide-motion(slide-up, antSlideUp);\n.slide-motion(slide-down, antSlideDown);\n.slide-motion(slide-left, antSlideLeft);\n.slide-motion(slide-right, antSlideRight);\n\n@keyframes antSlideUpIn {\n 0% {\n transform: scaleY(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleY(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideUpOut {\n 0% {\n transform: scaleY(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleY(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideDownIn {\n 0% {\n transform: scaleY(0.8);\n transform-origin: 100% 100%;\n opacity: 0;\n }\n 100% {\n transform: scaleY(1);\n transform-origin: 100% 100%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideDownOut {\n 0% {\n transform: scaleY(1);\n transform-origin: 100% 100%;\n opacity: 1;\n }\n 100% {\n transform: scaleY(0.8);\n transform-origin: 100% 100%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideLeftIn {\n 0% {\n transform: scaleX(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleX(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideLeftOut {\n 0% {\n transform: scaleX(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleX(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideRightIn {\n 0% {\n transform: scaleX(0.8);\n transform-origin: 100% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleX(1);\n transform-origin: 100% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideRightOut {\n 0% {\n transform: scaleX(1);\n transform-origin: 100% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleX(0.8);\n transform-origin: 100% 0%;\n opacity: 0;\n }\n}\n",".zoom-motion(@className, @keyframeName, @duration: @animation-duration-base) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName, @duration);\n .@{name}-enter,\n .@{name}-appear {\n transform: scale(0); // need this by yiminghe\n opacity: 0;\n animation-timing-function: @ease-out-circ;\n\n &-prepare {\n transform: none;\n }\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-out-circ;\n }\n}\n\n// For Modal, Select choosen item\n.zoom-motion(zoom, antZoom);\n// For Popover, Popconfirm, Dropdown\n.zoom-motion(zoom-big, antZoomBig);\n// For Tooltip\n.zoom-motion(zoom-big-fast, antZoomBig, @animation-duration-fast);\n\n.zoom-motion(zoom-up, antZoomUp);\n.zoom-motion(zoom-down, antZoomDown);\n.zoom-motion(zoom-left, antZoomLeft);\n.zoom-motion(zoom-right, antZoomRight);\n\n@keyframes antZoomIn {\n 0% {\n transform: scale(0.2);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes antZoomOut {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0.2);\n opacity: 0;\n }\n}\n\n@keyframes antZoomBigIn {\n 0% {\n transform: scale(0.8);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes antZoomBigOut {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0.8);\n opacity: 0;\n }\n}\n\n@keyframes antZoomUpIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 50% 0%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 50% 0%;\n }\n}\n\n@keyframes antZoomUpOut {\n 0% {\n transform: scale(1);\n transform-origin: 50% 0%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 50% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomLeftIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 0% 50%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 0% 50%;\n }\n}\n\n@keyframes antZoomLeftOut {\n 0% {\n transform: scale(1);\n transform-origin: 0% 50%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 0% 50%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomRightIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 100% 50%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 100% 50%;\n }\n}\n\n@keyframes antZoomRightOut {\n 0% {\n transform: scale(1);\n transform-origin: 100% 50%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 100% 50%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomDownIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 50% 100%;\n }\n}\n\n@keyframes antZoomDownOut {\n 0% {\n transform: scale(1);\n transform-origin: 50% 100%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n}\n","@import '../mixins/motion';\n@import 'motion/fade';\n@import 'motion/move';\n@import 'motion/other';\n@import 'motion/slide';\n@import 'motion/zoom';\n\n// For common/openAnimation\n.ant-motion-collapse-legacy {\n overflow: hidden;\n &-active {\n transition: height @animation-duration-base @ease-in-out,\n opacity @animation-duration-base @ease-in-out !important;\n }\n}\n\n.ant-motion-collapse {\n overflow: hidden;\n transition: height @animation-duration-base @ease-in-out,\n opacity @animation-duration-base @ease-in-out !important;\n}\n","@import './index';\n\n// ================================================================\n// = Children Component =\n// ================================================================\n.@{form-item-prefix-cls} {\n .@{ant-prefix}-mentions,\n textarea.@{ant-prefix}-input {\n height: auto;\n }\n\n // input[type=file]\n .@{ant-prefix}-upload {\n background: transparent;\n }\n .@{ant-prefix}-upload.@{ant-prefix}-upload-drag {\n background: @background-color-light;\n }\n\n input[type='radio'],\n input[type='checkbox'] {\n width: 14px;\n height: 14px;\n }\n\n // Radios and checkboxes on same line\n .@{ant-prefix}-radio-inline,\n .@{ant-prefix}-checkbox-inline {\n display: inline-block;\n margin-left: 8px;\n font-weight: normal;\n vertical-align: middle;\n cursor: pointer;\n\n &:first-child {\n margin-left: 0;\n }\n }\n\n .@{ant-prefix}-checkbox-vertical,\n .@{ant-prefix}-radio-vertical {\n display: block;\n }\n\n .@{ant-prefix}-checkbox-vertical + .@{ant-prefix}-checkbox-vertical,\n .@{ant-prefix}-radio-vertical + .@{ant-prefix}-radio-vertical {\n margin-left: 0;\n }\n\n .@{ant-prefix}-input-number {\n + .@{form-prefix-cls}-text {\n margin-left: 8px;\n }\n &-handler-wrap {\n z-index: 2; // https://github.com/ant-design/ant-design/issues/6289\n }\n }\n\n .@{ant-prefix}-select,\n .@{ant-prefix}-cascader-picker {\n width: 100%;\n }\n\n // Don't impact select inside input group and calendar header select\n .@{ant-prefix}-picker-calendar-year-select,\n .@{ant-prefix}-picker-calendar-month-select,\n .@{ant-prefix}-input-group .@{ant-prefix}-select,\n .@{ant-prefix}-input-group .@{ant-prefix}-cascader-picker {\n width: auto;\n }\n}\n","@import './index';\n\n.@{form-prefix-cls}-inline {\n display: flex;\n flex-wrap: wrap;\n\n .@{form-prefix-cls}-item {\n flex: none;\n flex-wrap: nowrap;\n margin-right: 16px;\n margin-bottom: 0;\n\n &-with-help {\n margin-bottom: @form-item-margin-bottom;\n }\n\n > .@{form-item-prefix-cls}-label,\n > .@{form-item-prefix-cls}-control {\n display: inline-block;\n vertical-align: top;\n }\n\n > .@{form-item-prefix-cls}-label {\n flex: none;\n }\n\n .@{form-prefix-cls}-text {\n display: inline-block;\n }\n\n .@{form-item-prefix-cls}-has-feedback {\n display: inline-block;\n }\n }\n}\n","@import './index';\n\n.@{form-prefix-cls}-horizontal {\n .@{form-item-prefix-cls}-label {\n flex-grow: 0;\n }\n .@{form-item-prefix-cls}-control {\n flex: 1 1 0;\n }\n}\n","@import './index';\n\n// ================== Label ==================\n.make-vertical-layout-label() {\n & when (@form-vertical-label-margin > 0) {\n margin: @form-vertical-label-margin;\n }\n padding: @form-vertical-label-padding;\n line-height: @line-height-base;\n white-space: initial;\n text-align: left;\n\n > label {\n margin: 0;\n\n &::after {\n display: none;\n }\n }\n}\n\n.make-vertical-layout() {\n .@{form-prefix-cls}-item .@{form-prefix-cls}-item-label {\n .make-vertical-layout-label();\n }\n .@{form-prefix-cls} {\n .@{form-prefix-cls}-item {\n flex-wrap: wrap;\n .@{form-prefix-cls}-item-label,\n .@{form-prefix-cls}-item-control {\n flex: 0 0 100%;\n max-width: 100%;\n }\n }\n }\n}\n\n.@{form-prefix-cls}-vertical {\n .@{form-item-prefix-cls} {\n flex-direction: column;\n\n &-label > label {\n height: auto;\n }\n }\n}\n\n.@{form-prefix-cls}-vertical .@{form-item-prefix-cls}-label,\n // when labelCol is 24, it is a vertical form\n.@{ant-prefix}-col-24.@{form-item-prefix-cls}-label,\n.@{ant-prefix}-col-xl-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n}\n\n@media (max-width: @screen-xs-max) {\n .make-vertical-layout();\n .@{ant-prefix}-col-xs-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-sm-max) {\n .@{ant-prefix}-col-sm-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-md-max) {\n .@{ant-prefix}-col-md-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-lg-max) {\n .@{ant-prefix}-col-lg-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-xl-max) {\n .@{ant-prefix}-col-xl-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n@import '../../button/style/mixin';\n@import '../../grid/style/mixin';\n\n@form-prefix-cls: ~'@{ant-prefix}-form';\n@form-item-prefix-cls: ~'@{form-prefix-cls}-item';\n\n.@{form-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n}\n\n// ================================================================\n// = Item =\n// ================================================================\n.@{form-item-prefix-cls} {\n // ==============================================================\n // = Label =\n // ==============================================================\n &-label {\n .@{form-prefix-cls}-rtl & {\n text-align: left;\n }\n\n > label {\n &.@{form-item-prefix-cls}-required::before {\n .@{form-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: 4px;\n }\n }\n &::after {\n .@{form-prefix-cls}-rtl & {\n margin: 0 @form-item-label-colon-margin-left 0 @form-item-label-colon-margin-right;\n }\n }\n\n .@{form-item-prefix-cls}-optional {\n .@{form-prefix-cls}-rtl & {\n margin-right: @margin-xss;\n margin-left: 0;\n }\n }\n }\n }\n\n // ==============================================================\n // = Input =\n // ==============================================================\n &-control {\n .@{ant-prefix}-col-rtl &:first-child {\n width: 100%;\n }\n }\n\n // status\n &-has-feedback {\n .@{ant-prefix}-input {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: 24px;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper {\n .@{ant-prefix}-input-suffix {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: 18px;\n }\n }\n .@{ant-prefix}-input {\n .@{form-prefix-cls}-rtl & {\n padding: 0;\n }\n }\n }\n\n .@{ant-prefix}-input-search:not(.@{ant-prefix}-input-search-enter-button) {\n .@{ant-prefix}-input-suffix {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 28px;\n }\n }\n }\n\n .@{ant-prefix}-input-number {\n .@{form-prefix-cls}-rtl & {\n padding-left: 18px;\n }\n }\n\n > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n > .@{ant-prefix}-select .@{ant-prefix}-select-clear,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-clear {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 32px;\n }\n }\n\n > .@{ant-prefix}-select .@{ant-prefix}-select-selection-selected-value,\n :not(.@{ant-prefix}-input-group-addon)\n > .@{ant-prefix}-select\n .@{ant-prefix}-select-selection-selected-value {\n .@{form-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: 42px;\n }\n }\n\n .@{ant-prefix}-cascader-picker {\n &-arrow {\n .@{form-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: 19px;\n }\n }\n &-clear {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 32px;\n }\n }\n }\n\n .@{ant-prefix}-picker {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: @input-padding-horizontal-base + @font-size-base * 1.3;\n }\n\n &-large {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-lg;\n padding-left: @input-padding-horizontal-lg + @font-size-base * 1.3;\n }\n }\n\n &-small {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-sm;\n padding-left: @input-padding-horizontal-sm + @font-size-base * 1.3;\n }\n }\n }\n\n &.@{form-item-prefix-cls} {\n &-has-success,\n &-has-warning,\n &-has-error,\n &-is-validating {\n // ====================== Icon ======================\n .@{form-item-prefix-cls}-children-icon {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 0;\n }\n }\n }\n }\n }\n}\n\n// inline\n.@{form-prefix-cls}-inline {\n .@{form-prefix-cls}-item {\n .@{form-prefix-cls}-rtl& {\n margin-right: 0;\n margin-left: 16px;\n }\n }\n}\n\n// vertical\n.make-vertical-layout-label() {\n .@{form-prefix-cls}-rtl& {\n text-align: right;\n }\n}\n","@import './index.less';\n\n.@{form-item-prefix-cls} {\n // ================================================================\n // = Status =\n // ================================================================\n /* Some non-status related component style is in `components.less` */\n\n // ========================= Explain =========================\n /* To support leave along ErrorList. We add additional className to handle explain style */\n &-explain {\n &&-error {\n color: @error-color;\n }\n\n &&-warning {\n color: @warning-color;\n }\n }\n\n &-has-feedback {\n // ========================= Input =========================\n .@{ant-prefix}-input {\n padding-right: 24px;\n }\n // https://github.com/ant-design/ant-design/issues/19884\n .@{ant-prefix}-input-affix-wrapper {\n .@{ant-prefix}-input-suffix {\n padding-right: 18px;\n }\n }\n\n // Fix issue: https://github.com/ant-design/ant-design/issues/7854\n .@{ant-prefix}-input-search:not(.@{ant-prefix}-input-search-enter-button) {\n .@{ant-prefix}-input-suffix {\n right: 28px;\n }\n }\n\n // ======================== Switch =========================\n .@{ant-prefix}-switch {\n margin: 2px 0 4px;\n }\n\n // ======================== Select =========================\n // Fix overlapping between feedback icon and <Select>'s arrow.\n // https://github.com/ant-design/ant-design/issues/4431\n > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n > .@{ant-prefix}-select .@{ant-prefix}-select-clear,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-clear {\n right: 32px;\n }\n > .@{ant-prefix}-select .@{ant-prefix}-select-selection-selected-value,\n :not(.@{ant-prefix}-input-group-addon)\n > .@{ant-prefix}-select\n .@{ant-prefix}-select-selection-selected-value {\n padding-right: 42px;\n }\n\n // ======================= Cascader ========================\n .@{ant-prefix}-cascader-picker {\n &-arrow {\n margin-right: 19px;\n }\n &-clear {\n right: 32px;\n }\n }\n\n // ======================== Picker =========================\n // Fix issue: https://github.com/ant-design/ant-design/issues/4783\n .@{ant-prefix}-picker {\n padding-right: @input-padding-horizontal-base + @font-size-base * 1.3;\n\n &-large {\n padding-right: @input-padding-horizontal-lg + @font-size-base * 1.3;\n }\n\n &-small {\n padding-right: @input-padding-horizontal-sm + @font-size-base * 1.3;\n }\n }\n\n // ===================== Status Group ======================\n &.@{form-item-prefix-cls} {\n &-has-success,\n &-has-warning,\n &-has-error,\n &-is-validating {\n // ====================== Icon ======================\n .@{form-item-prefix-cls}-children-icon {\n position: absolute;\n top: 50%;\n right: 0;\n z-index: 1;\n width: @input-height-base;\n height: 20px;\n margin-top: -10px;\n font-size: @font-size-base;\n line-height: 20px;\n text-align: center;\n visibility: visible;\n animation: zoomIn 0.3s @ease-out-back;\n pointer-events: none;\n }\n }\n }\n }\n\n // ======================== Success ========================\n &-has-success {\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @success-color;\n animation-name: diffZoomIn1 !important;\n }\n }\n\n // ======================== Warning ========================\n &-has-warning {\n .form-control-validation(@warning-color; @warning-color; @form-warning-input-bg);\n\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @warning-color;\n animation-name: diffZoomIn3 !important;\n }\n\n // Select\n .@{ant-prefix}-select:not(.@{ant-prefix}-select-disabled):not(.@{ant-prefix}-select-customize-input) {\n .@{ant-prefix}-select-selector {\n background-color: @form-warning-input-bg;\n border-color: @warning-color !important;\n }\n &.@{ant-prefix}-select-open .@{ant-prefix}-select-selector,\n &.@{ant-prefix}-select-focused .@{ant-prefix}-select-selector {\n .active(@warning-color);\n }\n }\n\n // InputNumber, TimePicker\n .@{ant-prefix}-input-number,\n .@{ant-prefix}-picker {\n background-color: @form-warning-input-bg;\n border-color: @warning-color;\n &-focused,\n &:focus {\n .active(@warning-color);\n }\n &:not([disabled]):hover {\n background-color: @form-warning-input-bg;\n border-color: @warning-color;\n }\n }\n\n .@{ant-prefix}-cascader-picker:focus .@{ant-prefix}-cascader-input {\n .active(@warning-color);\n }\n }\n\n // ========================= Error =========================\n &-has-error {\n .form-control-validation(@error-color; @error-color; @form-error-input-bg);\n\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @error-color;\n animation-name: diffZoomIn2 !important;\n }\n\n // Select\n .@{ant-prefix}-select:not(.@{ant-prefix}-select-disabled):not(.@{ant-prefix}-select-customize-input) {\n .@{ant-prefix}-select-selector {\n background-color: @form-error-input-bg;\n border-color: @error-color !important;\n }\n &.@{ant-prefix}-select-open .@{ant-prefix}-select-selector,\n &.@{ant-prefix}-select-focused .@{ant-prefix}-select-selector {\n .active(@error-color);\n }\n }\n\n // fixes https://github.com/ant-design/ant-design/issues/20482\n .@{ant-prefix}-input-group-addon .@{ant-prefix}-select {\n &.@{ant-prefix}-select-single:not(.@{ant-prefix}-select-customize-input)\n .@{ant-prefix}-select-selector {\n border: 0;\n }\n }\n\n .@{ant-prefix}-select.@{ant-prefix}-select-auto-complete {\n .@{ant-prefix}-input:focus {\n border-color: @error-color;\n }\n }\n\n // InputNumber, TimePicker\n .@{ant-prefix}-input-number,\n .@{ant-prefix}-picker {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n &-focused,\n &:focus {\n .active(@error-color);\n }\n &:not([disabled]):hover {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n }\n }\n\n .@{ant-prefix}-mention-wrapper {\n .@{ant-prefix}-mention-editor {\n &,\n &:not([disabled]):hover {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n }\n }\n &.@{ant-prefix}-mention-active:not([disabled]) .@{ant-prefix}-mention-editor,\n .@{ant-prefix}-mention-editor:not([disabled]):focus {\n .active(@error-color);\n }\n }\n\n .@{ant-prefix}-cascader-picker:focus .@{ant-prefix}-cascader-input {\n background-color: @form-error-input-bg;\n .active(@error-color);\n }\n\n // transfer\n .@{ant-prefix}-transfer {\n &-list {\n border-color: @error-color;\n\n &-search:not([disabled]) {\n border-color: @input-border-color;\n\n &:hover {\n .hover();\n }\n\n &:focus {\n .active();\n }\n }\n }\n }\n\n // RadioGroup\n .@{ant-prefix}-radio-button-wrapper {\n border-color: @error-color !important;\n\n &:not(:first-child) {\n &::before {\n background-color: @error-color;\n }\n }\n }\n }\n\n // ====================== Validating =======================\n &-is-validating {\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n display: inline-block;\n color: @primary-color;\n }\n }\n}\n","@import '../../input/style/mixin';\n\n.form-control-validation(@text-color: @input-color; @border-color: @input-border-color; @background-color: @input-bg) {\n .@{ant-prefix}-form-item-split {\n color: @text-color;\n }\n // 输入框的不同校验状态\n .@{ant-prefix}-input,\n .@{ant-prefix}-input-affix-wrapper {\n &,\n &:hover {\n background-color: @background-color;\n border-color: @border-color;\n }\n\n &:focus,\n &-focused {\n .active(@border-color);\n }\n }\n\n .@{ant-prefix}-input-disabled {\n &,\n &:hover {\n background-color: @input-disabled-bg;\n border-color: @input-border-color;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper-disabled {\n &,\n &:hover {\n background-color: @input-disabled-bg;\n border-color: @input-border-color;\n\n input:focus {\n box-shadow: none !important;\n }\n }\n }\n\n .@{ant-prefix}-calendar-picker-open .@{ant-prefix}-calendar-picker-input {\n .active(@border-color);\n }\n\n .@{ant-prefix}-input-prefix {\n color: @text-color;\n }\n\n .@{ant-prefix}-input-group-addon {\n color: @text-color;\n border-color: @border-color;\n }\n\n .has-feedback {\n color: @text-color;\n }\n}\n\n// Reset form styles\n// -----------------------------\n// Based on Bootstrap framework\n.reset-form() {\n legend {\n display: block;\n width: 100%;\n margin-bottom: 20px;\n padding: 0;\n color: @text-color-secondary;\n font-size: @font-size-lg;\n line-height: inherit;\n border: 0;\n border-bottom: @border-width-base @border-style-base @border-color-base;\n }\n\n label {\n font-size: @font-size-base;\n }\n\n input[type='search'] {\n box-sizing: border-box;\n }\n\n // Position radios and checkboxes better\n input[type='radio'],\n input[type='checkbox'] {\n line-height: normal;\n }\n\n input[type='file'] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type='range'] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type='file']:focus,\n input[type='radio']:focus,\n input[type='checkbox']:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n }\n\n // Adjust output element\n output {\n display: block;\n padding-top: 15px;\n color: @input-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@input-affix-with-clear-btn-width: 38px;\n\n// size mixins for input\n.input-lg() {\n padding: @input-padding-vertical-lg @input-padding-horizontal-lg;\n font-size: @font-size-lg;\n}\n\n.input-sm() {\n padding: @input-padding-vertical-sm @input-padding-horizontal-sm;\n}\n\n// input status\n// == when focus or actived\n.active(@color: @outline-color) {\n & when (@theme = dark) {\n border-color: @color;\n }\n & when not (@theme = dark) {\n border-color: ~`colorPalette('@{color}', 5) `;\n }\n border-right-width: @border-width-base !important;\n outline: 0;\n box-shadow: @input-outline-offset @outline-blur-size @outline-width fade(@color, @outline-fade);\n}\n\n// == when hoverd\n.hover(@color: @input-hover-border-color) {\n border-color: @color;\n border-right-width: @border-width-base !important;\n}\n\n.disabled() {\n color: @input-disabled-color;\n background-color: @input-disabled-bg;\n cursor: not-allowed;\n opacity: 1;\n\n &:hover {\n .hover(@input-border-color);\n }\n}\n\n// Basic style for input\n.input() {\n position: relative;\n display: inline-block;\n width: 100%;\n min-width: 0;\n padding: @input-padding-vertical-base @input-padding-horizontal-base;\n color: @input-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n background-color: @input-bg;\n background-image: none;\n border: @border-width-base @border-style-base @input-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s;\n .placeholder(); // Reset placeholder\n\n &:hover {\n .hover();\n }\n\n &:focus,\n &-focused {\n .active();\n }\n\n &-disabled {\n .disabled();\n }\n\n &[disabled] {\n .disabled();\n }\n\n &-borderless {\n &,\n &:hover,\n &:focus,\n &-focused,\n &-disabled,\n &[disabled] {\n background-color: transparent;\n border: none;\n box-shadow: none;\n }\n }\n\n // Reset height for `textarea`s\n textarea& {\n max-width: 100%; // prevent textearea resize from coming out of its container\n height: auto;\n min-height: @input-height-base;\n line-height: @line-height-base;\n vertical-align: bottom;\n transition: all 0.3s, height 0s;\n }\n\n // Size\n &-lg {\n .input-lg();\n }\n\n &-sm {\n .input-sm();\n }\n}\n\n// label input\n.input-group(@inputClass) {\n position: relative;\n display: table;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n\n // Undo padding and float of grid classes\n &[class*='col-'] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n }\n\n > [class*='col-'] {\n padding-right: 8px;\n\n &:last-child {\n padding-right: 0;\n }\n }\n\n &-addon,\n &-wrap,\n > .@{inputClass} {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n\n &-addon,\n &-wrap {\n width: 1px; // To make addon/wrap as small as possible\n white-space: nowrap;\n vertical-align: middle;\n }\n\n &-wrap > * {\n display: block !important;\n }\n\n .@{inputClass} {\n float: left;\n width: 100%;\n margin-bottom: 0;\n text-align: inherit;\n\n &:focus {\n z-index: 1; // Fix https://gw.alipayobjects.com/zos/rmsportal/DHNpoqfMXSfrSnlZvhsJ.png\n border-right-width: 1px;\n }\n\n &:hover {\n z-index: 1;\n border-right-width: 1px;\n .@{ant-prefix}-input-search-with-button & {\n z-index: 0;\n }\n }\n }\n\n &-addon {\n position: relative;\n padding: 0 @input-padding-horizontal-base;\n color: @input-color;\n font-weight: normal;\n font-size: @font-size-base;\n text-align: center;\n background-color: @input-addon-bg;\n border: @border-width-base @border-style-base @input-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select {\n margin: -(@input-padding-vertical-base + 1px) (-@input-padding-horizontal-base);\n\n &.@{ant-prefix}-select-single:not(.@{ant-prefix}-select-customize-input)\n .@{ant-prefix}-select-selector {\n background-color: inherit;\n border: @border-width-base @border-style-base transparent;\n box-shadow: none;\n }\n\n &-open,\n &-focused {\n .@{ant-prefix}-select-selector {\n color: @primary-color;\n }\n }\n }\n }\n\n // Reset rounded corners\n > .@{inputClass}:first-child,\n &-addon:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select .@{ant-prefix}-select-selector {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n > .@{inputClass}-affix-wrapper {\n &:not(:first-child) .@{inputClass} {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child) .@{inputClass} {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n &-addon:first-child {\n border-right: 0;\n }\n\n &-addon:last-child {\n border-left: 0;\n }\n\n > .@{inputClass}:last-child,\n &-addon:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select .@{ant-prefix}-select-selector {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n // Sizing options\n &-lg .@{inputClass},\n &-lg > &-addon {\n .input-lg();\n }\n\n &-sm .@{inputClass},\n &-sm > &-addon {\n .input-sm();\n }\n\n // Fix https://github.com/ant-design/ant-design/issues/5754\n &-lg .@{ant-prefix}-select-single .@{ant-prefix}-select-selector {\n height: @input-height-lg;\n }\n\n &-sm .@{ant-prefix}-select-single .@{ant-prefix}-select-selector {\n height: @input-height-sm;\n }\n\n .@{inputClass}-affix-wrapper {\n &:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n .@{ant-prefix}-input-search & {\n border-top-left-radius: @border-radius-base;\n border-bottom-left-radius: @border-radius-base;\n }\n }\n }\n\n &&-compact {\n display: block;\n .clearfix();\n\n &-addon,\n &-wrap,\n > .@{inputClass} {\n &:not(:first-child):not(:last-child) {\n border-right-width: @border-width-base;\n\n &:hover {\n z-index: 1;\n }\n\n &:focus {\n z-index: 1;\n }\n }\n }\n\n & > * {\n display: inline-block;\n float: none;\n vertical-align: top; // https://github.com/ant-design/ant-design-pro/issues/139\n border-radius: 0;\n }\n\n & > .@{inputClass}-affix-wrapper {\n display: inline-flex;\n }\n\n & > .@{ant-prefix}-picker-range {\n display: inline-flex;\n }\n\n & > *:not(:last-child) {\n margin-right: -@border-width-base;\n border-right-width: @border-width-base;\n }\n\n // Undo float for .ant-input-group .ant-input\n .@{inputClass} {\n float: none;\n }\n\n // reset border for Select, DatePicker, AutoComplete, Cascader, Mention, TimePicker, Input\n & > .@{ant-prefix}-select > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker .@{ant-prefix}-input,\n & > .@{ant-prefix}-input-group-wrapper .@{ant-prefix}-input {\n border-right-width: @border-width-base;\n border-radius: 0;\n\n &:hover {\n z-index: 1;\n }\n\n &:focus {\n z-index: 1;\n }\n }\n\n & > .@{ant-prefix}-select-focused {\n z-index: 1;\n }\n\n // update z-index for arrow icon\n & > .@{ant-prefix}-select > .@{ant-prefix}-select-arrow {\n z-index: 1; // https://github.com/ant-design/ant-design/issues/20371\n }\n\n & > *:first-child,\n & > .@{ant-prefix}-select:first-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:first-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:first-child .@{ant-prefix}-input {\n border-top-left-radius: @border-radius-base;\n border-bottom-left-radius: @border-radius-base;\n }\n\n & > *:last-child,\n & > .@{ant-prefix}-select:last-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-cascader-picker:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker-focused:last-child .@{ant-prefix}-input {\n border-right-width: @border-width-base;\n border-top-right-radius: @border-radius-base;\n border-bottom-right-radius: @border-radius-base;\n }\n\n // https://github.com/ant-design/ant-design/issues/12493\n & > .@{ant-prefix}-select-auto-complete .@{ant-prefix}-input {\n vertical-align: top;\n }\n\n .@{ant-prefix}-input-group-wrapper + .@{ant-prefix}-input-group-wrapper {\n margin-left: -1px;\n .@{ant-prefix}-input-affix-wrapper {\n border-radius: 0;\n }\n }\n\n .@{ant-prefix}-input-group-wrapper:not(:last-child) {\n &.@{ant-prefix}-input-search > .@{ant-prefix}-input-group {\n & > .@{ant-prefix}-input-group-addon > .@{ant-prefix}-input-search-button {\n border-radius: 0;\n }\n\n & > .@{ant-prefix}-input {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n//== Style for input-group: input with label, with button or dropdown...\n.@{ant-prefix}-input-group {\n &-wrapper {\n &-rtl {\n direction: rtl;\n }\n }\n &-rtl {\n direction: rtl;\n }\n}\n\n// affix\n@input-affix-margin: 4px;\n\n.@{ant-prefix}-input {\n &-affix-wrapper&-affix-wrapper-rtl {\n > input.@{ant-prefix}-input {\n border: none;\n outline: none;\n }\n }\n\n &-affix-wrapper-rtl {\n .@{ant-prefix}-input-prefix {\n margin: 0 0 0 @input-affix-margin;\n }\n\n .@{ant-prefix}-input-suffix {\n margin: 0 @input-affix-margin 0 0;\n }\n }\n\n &-textarea {\n &-rtl {\n direction: rtl;\n }\n\n &-rtl&-show-count::after {\n text-align: left;\n }\n }\n}\n\n// allow-clear\n.@{ant-prefix}-input-clear-icon {\n &:last-child {\n .@{ant-prefix}-input-affix-wrapper-rtl & {\n margin-right: @input-affix-margin;\n margin-left: 0;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper-rtl & {\n right: auto;\n left: 8px;\n }\n}\n\n// mixin\n@input-rtl-cls: ~'@{ant-prefix}-input-rtl';\n\n.active() {\n .@{input-rtl-cls} & {\n border-right-width: 0;\n border-left-width: @border-width-base !important;\n }\n}\n\n.hover() {\n .@{input-rtl-cls} & {\n border-right-width: 0;\n border-left-width: @border-width-base !important;\n }\n}\n\n.input() {\n &-rtl {\n direction: rtl;\n }\n}\n\n// label input\n.input-group(@inputClass) {\n > .@{inputClass}-rtl:first-child,\n &-rtl &-addon:first-child {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n &-addon:first-child {\n .@{inputClass}-group-rtl & {\n border-right: @border-width-base @border-style-base @input-border-color;\n border-left: 0;\n }\n }\n\n &-addon:last-child {\n .@{inputClass}-group-rtl & {\n border-right: 0;\n border-left: @border-width-base @border-style-base @input-border-color;\n }\n }\n\n > .@{inputClass}:last-child,\n &-addon:last-child {\n .@{inputClass}-group-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n .@{inputClass}-affix-wrapper {\n &:not(:first-child) {\n .@{inputClass}-group-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n &:not(:last-child) {\n .@{inputClass}-group-rtl& {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n }\n\n &&-compact {\n & > *:not(:last-child) {\n .@{inputClass}-group-rtl& {\n margin-right: 0;\n margin-left: -@border-width-base;\n border-left-width: @border-width-base;\n }\n }\n\n & > *:first-child,\n & > .@{ant-prefix}-select:first-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:first-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:first-child .@{ant-prefix}-input {\n .@{inputClass}-group-rtl& {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n\n & > *:last-child,\n & > .@{ant-prefix}-select:last-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker-focused:last-child .@{ant-prefix}-input {\n .@{inputClass}-group-rtl& {\n border-left-width: @border-width-base;\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n .@{ant-prefix}-input-group-wrapper-rtl + .@{ant-prefix}-input-group-wrapper-rtl {\n margin-right: -1px;\n margin-left: 0;\n }\n\n .@{ant-prefix}-input-group-wrapper-rtl:not(:last-child) {\n &.@{ant-prefix}-input-search > .@{ant-prefix}-input-group {\n & > .@{ant-prefix}-input {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n }\n }\n}\n\n// search-input\n@search-prefix: ~'@{ant-prefix}-input-search';\n@search-rtl-cls: ~'@{search-prefix}-rtl';\n\n.@{search-prefix}-rtl {\n direction: rtl;\n\n .@{ant-prefix}-input {\n &:hover,\n &:focus {\n + .@{ant-prefix}-input-group-addon .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n border-right-color: @input-hover-border-color;\n border-left-color: @border-color-base;\n }\n }\n }\n\n > .@{ant-prefix}-input-group {\n > .@{ant-prefix}-input-affix-wrapper {\n &:hover,\n &-focused {\n border-right-color: @input-hover-border-color;\n }\n }\n\n > .@{ant-prefix}-input-group-addon {\n right: -1px;\n left: auto;\n .@{search-prefix}-button {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n }\n}\n","@import '../themes/index';\n\n.reset-component() {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n color: @text-color;\n font-size: @font-size-base;\n font-variant: @font-variant-base;\n line-height: @line-height-base;\n list-style: none;\n font-feature-settings: @font-feature-settings-base;\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n@import '../../button/style/mixin';\n@import '../../grid/style/mixin';\n@import './components';\n@import './inline';\n@import './horizontal';\n@import './vertical';\n@import './status';\n@import './mixin';\n\n@form-prefix-cls: ~'@{ant-prefix}-form';\n@form-item-prefix-cls: ~'@{form-prefix-cls}-item';\n@form-font-height: ceil(@font-size-base * @line-height-base);\n\n.@{form-prefix-cls} {\n .reset-component();\n .reset-form();\n\n .@{form-prefix-cls}-text {\n display: inline-block;\n padding-right: 8px;\n }\n\n // ================================================================\n // = Size =\n // ================================================================\n .formSize(@input-height) {\n .@{form-item-prefix-cls}-label > label {\n height: @input-height;\n }\n\n .@{form-item-prefix-cls}-control-input {\n min-height: @input-height;\n }\n }\n\n &-small {\n .formSize(@input-height-sm);\n }\n &-large {\n .formSize(@input-height-lg);\n }\n}\n\n.explainAndExtraDistance(@num) when (@num >= 0) {\n padding-top: floor(@num);\n}\n\n.explainAndExtraDistance(@num) when (@num < 0) {\n margin-top: ceil(@num);\n margin-bottom: ceil(@num);\n}\n\n// ================================================================\n// = Item =\n// ================================================================\n.@{form-item-prefix-cls} {\n .reset-component();\n\n margin-bottom: @form-item-margin-bottom;\n vertical-align: top;\n\n &-with-help {\n margin-bottom: 0;\n }\n\n &-hidden,\n &-hidden.@{ant-prefix}-row {\n // https://github.com/ant-design/ant-design/issues/26141\n display: none;\n }\n\n // ==============================================================\n // = Label =\n // ==============================================================\n &-label {\n display: inline-block;\n flex-grow: 0;\n overflow: hidden;\n white-space: nowrap;\n text-align: right;\n vertical-align: middle;\n\n &-left {\n text-align: left;\n }\n\n > label {\n position: relative;\n // display: inline;\n display: inline-flex;\n align-items: center;\n height: @form-item-label-height;\n color: @label-color;\n font-size: @form-item-label-font-size;\n\n > .@{iconfont-css-prefix} {\n font-size: @form-item-label-font-size;\n vertical-align: top;\n }\n\n // Required mark\n &.@{form-item-prefix-cls}-required:not(.@{form-item-prefix-cls}-required-mark-optional)::before {\n display: inline-block;\n margin-right: 4px;\n color: @label-required-color;\n font-size: @form-item-label-font-size;\n font-family: SimSun, sans-serif;\n line-height: 1;\n content: '*';\n\n .@{form-prefix-cls}-hide-required-mark & {\n display: none;\n }\n }\n\n // Optional mark\n .@{form-item-prefix-cls}-optional {\n display: inline-block;\n margin-left: @margin-xss;\n color: @text-color-secondary;\n\n .@{form-prefix-cls}-hide-required-mark & {\n display: none;\n }\n }\n\n // Optional mark\n .@{form-item-prefix-cls}-tooltip {\n color: @text-color-secondary;\n cursor: help;\n writing-mode: horizontal-tb;\n margin-inline-start: @margin-xss;\n }\n\n &::after {\n & when (@form-item-trailing-colon=true) {\n content: ':';\n }\n & when not (@form-item-trailing-colon=true) {\n content: ' ';\n }\n\n position: relative;\n top: -0.5px;\n margin: 0 @form-item-label-colon-margin-right 0 @form-item-label-colon-margin-left;\n }\n\n &.@{form-item-prefix-cls}-no-colon::after {\n content: ' ';\n }\n }\n }\n\n // ==============================================================\n // = Input =\n // ==============================================================\n &-control {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n\n &:first-child:not([class^=~\"'@{ant-prefix}-col-'\"]):not([class*=~\"' @{ant-prefix}-col-'\"]) {\n width: 100%;\n }\n }\n\n &-control-input {\n position: relative;\n display: flex;\n align-items: center;\n min-height: @input-height-base;\n\n &-content {\n flex: auto;\n max-width: 100%;\n }\n }\n\n &-explain,\n &-extra {\n clear: both;\n min-height: @form-item-margin-bottom;\n color: @text-color-secondary;\n font-size: @font-size-base;\n line-height: @line-height-base;\n transition: color 0.3s @ease-out; // sync input color transition\n .explainAndExtraDistance((@form-item-margin-bottom - @form-font-height) / 2);\n }\n\n .@{ant-prefix}-input-textarea-show-count {\n &::after {\n margin-bottom: -22px;\n }\n }\n}\n\n.show-help-motion(@className, @keyframeName, @duration: @animation-duration-slow) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName, @duration);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-in-out;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-out;\n }\n}\n\n.show-help-motion(show-help, antShowHelp, 0.3s);\n\n@keyframes antShowHelpIn {\n 0% {\n transform: translateY(-5px);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n@keyframes antShowHelpOut {\n to {\n transform: translateY(-5px);\n opacity: 0;\n }\n}\n\n// need there different zoom animation\n// otherwise won't trigger anim\n@keyframes diffZoomIn1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes diffZoomIn2 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes diffZoomIn3 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@import './rtl';\n","@import './index';\n@import './mixin';\n\n@input-affix-margin: 4px;\n\n.@{ant-prefix}-input {\n &-affix-wrapper {\n .input();\n display: inline-flex;\n\n &:not(&-disabled):hover {\n .hover();\n z-index: 1;\n .@{ant-prefix}-input-search-with-button & {\n z-index: 0;\n }\n }\n\n &-focused,\n &:focus {\n z-index: 1;\n }\n\n &-disabled {\n .@{ant-prefix}-input[disabled] {\n background: transparent;\n }\n }\n\n > input.@{ant-prefix}-input {\n padding: 0;\n border: none;\n outline: none;\n\n &:focus {\n box-shadow: none;\n }\n }\n\n &::before {\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n }\n\n &-prefix,\n &-suffix {\n display: flex;\n flex: none;\n align-items: center;\n }\n\n &-prefix {\n margin-right: @input-affix-margin;\n }\n\n &-suffix {\n margin-left: @input-affix-margin;\n }\n}\n","// Compatibility for browsers.\n\n// Placeholder text\n.placeholder(@color: @input-placeholder-color) {\n // Firefox\n &::-moz-placeholder {\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n\n &::placeholder {\n color: @color;\n }\n\n &:placeholder-shown {\n text-overflow: ellipsis;\n }\n}\n","@import './index';\n\n// ========================= Input =========================\n.@{ant-prefix}-input-clear-icon {\n margin: 0 @input-affix-margin;\n color: @disabled-color;\n font-size: @font-size-sm;\n vertical-align: -1px;\n // https://github.com/ant-design/ant-design/pull/18151\n // https://codesandbox.io/s/wizardly-sun-u10br\n cursor: pointer;\n transition: color 0.3s;\n\n &:hover {\n color: @text-color-secondary;\n }\n\n &:active {\n color: @text-color;\n }\n\n &-hidden {\n visibility: hidden;\n }\n\n &:last-child {\n margin-right: 0;\n }\n}\n\n// ======================= TextArea ========================\n.@{ant-prefix}-input-affix-wrapper-textarea-with-clear-btn {\n padding: 0 !important;\n border: 0 !important;\n\n .@{ant-prefix}-input-clear-icon {\n position: absolute;\n top: 8px;\n right: 8px;\n z-index: 1;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './mixin';\n@import './affix';\n@import './allow-clear';\n\n// Input styles\n.@{ant-prefix}-input {\n .reset-component();\n .input();\n\n //== Style for input-group: input with label, with button or dropdown...\n &-group {\n .reset-component();\n .input-group(~'@{ant-prefix}-input');\n &-wrapper {\n display: inline-block;\n width: 100%;\n text-align: start;\n vertical-align: top; // https://github.com/ant-design/ant-design/issues/6403\n }\n }\n\n &-password-icon {\n color: @text-color-secondary;\n cursor: pointer;\n transition: all 0.3s;\n\n &:hover {\n color: @input-icon-hover-color;\n }\n }\n\n &[type='color'] {\n height: @input-height-base;\n\n &.@{ant-prefix}-input-lg {\n height: @input-height-lg;\n }\n &.@{ant-prefix}-input-sm {\n height: @input-height-sm;\n padding-top: 3px;\n padding-bottom: 3px;\n }\n }\n\n &-textarea {\n &-show-count::after {\n float: right;\n color: @text-color-secondary;\n white-space: nowrap;\n content: attr(data-count);\n pointer-events: none;\n }\n }\n}\n\n@import './search-input';\n@import './rtl';\n@import './IE11';\n","// mixins for clearfix\n// ------------------------\n.clearfix() {\n // https://github.com/ant-design/ant-design/issues/21301#issuecomment-583955229\n &::before {\n display: table;\n content: '';\n }\n &::after {\n // https://github.com/ant-design/ant-design/issues/21864\n display: table;\n clear: both;\n content: '';\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../button/style/mixin';\n@import './mixin';\n\n@search-prefix: ~'@{ant-prefix}-input-search';\n\n.@{search-prefix} {\n .@{ant-prefix}-input {\n &:hover,\n &:focus {\n border-color: @input-hover-border-color;\n\n + .@{ant-prefix}-input-group-addon .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n border-left-color: @input-hover-border-color;\n }\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper {\n border-radius: 0;\n }\n\n // fix slight height diff in Firefox:\n // https://ant.design/components/auto-complete-cn/#components-auto-complete-demo-certain-category\n .@{ant-prefix}-input-lg {\n line-height: @line-height-base - 0.0002;\n }\n\n > .@{ant-prefix}-input-group {\n > .@{ant-prefix}-input-group-addon:last-child {\n left: -1px;\n padding: 0;\n border: 0;\n\n .@{search-prefix}-button {\n padding-top: 0;\n padding-bottom: 0;\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n color: @text-color-secondary;\n\n &.@{ant-prefix}-btn-loading::before {\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n }\n }\n }\n\n &-button {\n height: @input-height-base;\n\n &:hover,\n &:focus {\n z-index: 1;\n }\n }\n\n &-large &-button {\n height: @input-height-lg;\n }\n\n &-small &-button {\n height: @input-height-sm;\n }\n}\n","// Fix Input component height issue in IE11\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n .@{ant-prefix}-input {\n height: @input-height-base;\n\n &-lg {\n height: @input-height-lg;\n }\n\n &-sm {\n height: @input-height-sm;\n }\n\n &-affix-wrapper {\n > input.@{ant-prefix}-input {\n height: auto;\n }\n }\n }\n}\n","@import '../../style/mixins/index';\n\n.antCheckboxFn(@checkbox-prefix-cls: ~'@{ant-prefix}-checkbox') {\n @checkbox-inner-prefix-cls: ~'@{checkbox-prefix-cls}-inner';\n // 一般状态\n .@{checkbox-prefix-cls} {\n .reset-component();\n\n position: relative;\n top: 0.2em;\n line-height: 1;\n white-space: nowrap;\n outline: none;\n cursor: pointer;\n\n .@{checkbox-prefix-cls}-wrapper:hover &-inner,\n &:hover &-inner,\n &-input:focus + &-inner {\n border-color: @checkbox-color;\n }\n\n &-checked::after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 1px solid @checkbox-color;\n border-radius: @border-radius-base;\n visibility: hidden;\n animation: antCheckboxEffect 0.36s ease-in-out;\n animation-fill-mode: backwards;\n content: '';\n }\n\n &:hover::after,\n .@{checkbox-prefix-cls}-wrapper:hover &::after {\n visibility: visible;\n }\n\n &-inner {\n position: relative;\n top: 0;\n left: 0;\n display: block;\n width: @checkbox-size;\n height: @checkbox-size;\n direction: ltr;\n background-color: @checkbox-check-bg;\n border: @checkbox-border-width @border-style-base @border-color-base;\n border-radius: @border-radius-base;\n // Fix IE checked style\n // https://github.com/ant-design/ant-design/issues/12597\n border-collapse: separate;\n transition: all 0.3s;\n\n &::after {\n @check-width: (@checkbox-size / 14) * 5px;\n @check-height: (@checkbox-size / 14) * 8px;\n\n position: absolute;\n top: 50%;\n left: 22%;\n display: table;\n width: @check-width;\n height: @check-height;\n border: 2px solid @checkbox-check-color;\n border-top: 0;\n border-left: 0;\n transform: rotate(45deg) scale(0) translate(-50%, -50%);\n opacity: 0;\n transition: all 0.1s @ease-in-back, opacity 0.1s;\n content: ' ';\n }\n }\n\n &-input {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n width: 100%;\n height: 100%;\n cursor: pointer;\n opacity: 0;\n }\n }\n\n // 选中状态\n .@{checkbox-prefix-cls}-checked .@{checkbox-inner-prefix-cls}::after {\n position: absolute;\n display: table;\n border: 2px solid @checkbox-check-color;\n border-top: 0;\n border-left: 0;\n transform: rotate(45deg) scale(1) translate(-50%, -50%);\n opacity: 1;\n transition: all 0.2s @ease-out-back 0.1s;\n content: ' ';\n }\n\n .@{checkbox-prefix-cls}-checked {\n .@{checkbox-inner-prefix-cls} {\n background-color: @checkbox-color;\n border-color: @checkbox-color;\n }\n }\n\n .@{checkbox-prefix-cls}-disabled {\n cursor: not-allowed;\n\n &.@{checkbox-prefix-cls}-checked {\n .@{checkbox-inner-prefix-cls}::after {\n border-color: @disabled-color;\n animation-name: none;\n }\n }\n\n .@{checkbox-prefix-cls}-input {\n cursor: not-allowed;\n }\n\n .@{checkbox-inner-prefix-cls} {\n background-color: @input-disabled-bg;\n border-color: @border-color-base !important;\n &::after {\n border-color: @input-disabled-bg;\n border-collapse: separate;\n animation-name: none;\n }\n }\n\n & + span {\n color: @disabled-color;\n cursor: not-allowed;\n }\n\n // Not show highlight border of checkbox when disabled\n &:hover::after,\n .@{checkbox-prefix-cls}-wrapper:hover &::after {\n visibility: hidden;\n }\n }\n\n .@{checkbox-prefix-cls}-wrapper {\n .reset-component();\n display: inline-flex;\n align-items: baseline;\n line-height: unset;\n cursor: pointer;\n\n &::after {\n display: inline-block;\n width: 0;\n overflow: hidden;\n content: '\\a0';\n }\n\n &.@{checkbox-prefix-cls}-wrapper-disabled {\n cursor: not-allowed;\n }\n\n & + & {\n margin-left: 8px;\n }\n }\n\n .@{checkbox-prefix-cls} + span {\n padding-right: 8px;\n padding-left: 8px;\n }\n\n .@{checkbox-prefix-cls}-group {\n .reset-component();\n display: inline-block;\n\n &-item {\n margin-right: @checkbox-group-item-margin-right;\n &:last-child {\n margin-right: 0;\n }\n }\n &-item + &-item {\n margin-left: 0;\n }\n }\n\n // 半选状态\n .@{checkbox-prefix-cls}-indeterminate {\n .@{checkbox-inner-prefix-cls} {\n background-color: @checkbox-check-bg;\n border-color: @border-color-base;\n }\n .@{checkbox-inner-prefix-cls}::after {\n @indeterminate-width: @checkbox-size - 8px;\n @indeterminate-height: @checkbox-size - 8px;\n\n top: 50%;\n left: 50%;\n width: @indeterminate-width;\n height: @indeterminate-height;\n background-color: @checkbox-color;\n border: 0;\n transform: translate(-50%, -50%) scale(1);\n opacity: 1;\n content: ' ';\n }\n\n &.@{checkbox-prefix-cls}-disabled .@{checkbox-inner-prefix-cls}::after {\n background-color: @disabled-color;\n border-color: @disabled-color;\n }\n }\n}\n\n@keyframes antCheckboxEffect {\n 0% {\n transform: scale(1);\n opacity: 0.5;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n","@import '../../style/mixins/index';\n\n.antCheckboxFn(@checkbox-prefix-cls: ~'@{ant-prefix}-checkbox') {\n .@{checkbox-prefix-cls}-rtl {\n direction: rtl;\n }\n\n .@{checkbox-prefix-cls}-group {\n &-item {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-right: 0;\n margin-left: @checkbox-group-item-margin-right;\n }\n &:last-child {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-left: 0 !important;\n }\n }\n }\n &-item + &-item {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-left: @checkbox-group-item-margin-right;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tooltip-prefix-cls: ~'@{ant-prefix}-tooltip';\n\n@tooltip-arrow-shadow-width: 3px;\n\n@tooltip-arrow-rotate-width: sqrt(@tooltip-arrow-width * @tooltip-arrow-width * 2) +\n @tooltip-arrow-shadow-width * 2;\n\n@tooltip-arrow-offset-vertical: 5px; // 8 - 3px\n@tooltip-arrow-offset-horizontal: 13px; // 16 - 3px\n\n// Base class\n.@{tooltip-prefix-cls} {\n .reset-component();\n\n position: absolute;\n z-index: @zindex-tooltip;\n display: block;\n max-width: @tooltip-max-width;\n visibility: visible;\n\n &-hidden {\n display: none;\n }\n\n &-placement-top,\n &-placement-topLeft,\n &-placement-topRight {\n padding-bottom: @tooltip-distance;\n }\n\n &-placement-right,\n &-placement-rightTop,\n &-placement-rightBottom {\n padding-left: @tooltip-distance;\n }\n\n &-placement-bottom,\n &-placement-bottomLeft,\n &-placement-bottomRight {\n padding-top: @tooltip-distance;\n }\n\n &-placement-left,\n &-placement-leftTop,\n &-placement-leftBottom {\n padding-right: @tooltip-distance;\n }\n\n // Wrapper for the tooltip content\n &-inner {\n min-width: 30px;\n min-height: 32px;\n padding: 6px 8px;\n color: @tooltip-color;\n text-align: left;\n text-decoration: none;\n word-wrap: break-word;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n box-shadow: @box-shadow-base;\n }\n\n // Arrows\n &-arrow {\n position: absolute;\n display: block;\n width: @tooltip-arrow-rotate-width;\n height: @tooltip-arrow-rotate-width;\n overflow: hidden;\n background: transparent;\n pointer-events: none;\n\n &-content {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n width: @tooltip-arrow-width;\n height: @tooltip-arrow-width;\n margin: auto;\n background-color: @tooltip-bg;\n content: '';\n pointer-events: auto;\n }\n }\n\n &-placement-top &-arrow,\n &-placement-topLeft &-arrow,\n &-placement-topRight &-arrow {\n bottom: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: @tooltip-arrow-shadow-width @tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateY((-@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-top &-arrow {\n left: 50%;\n transform: translateX(-50%);\n }\n\n &-placement-topLeft &-arrow {\n left: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-topRight &-arrow {\n right: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-right &-arrow,\n &-placement-rightTop &-arrow,\n &-placement-rightBottom &-arrow {\n left: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: -@tooltip-arrow-shadow-width @tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateX((@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-right &-arrow {\n top: 50%;\n transform: translateY(-50%);\n }\n\n &-placement-rightTop &-arrow {\n top: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-rightBottom &-arrow {\n bottom: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-left &-arrow,\n &-placement-leftTop &-arrow,\n &-placement-leftBottom &-arrow {\n right: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: @tooltip-arrow-shadow-width -@tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateX((-@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-left &-arrow {\n top: 50%;\n transform: translateY(-50%);\n }\n\n &-placement-leftTop &-arrow {\n top: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-leftBottom &-arrow {\n bottom: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-bottom &-arrow,\n &-placement-bottomLeft &-arrow,\n &-placement-bottomRight &-arrow {\n top: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: -@tooltip-arrow-shadow-width -@tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateY((@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-bottom &-arrow {\n left: 50%;\n transform: translateX(-50%);\n }\n\n &-placement-bottomLeft &-arrow {\n left: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-bottomRight &-arrow {\n right: @tooltip-arrow-offset-horizontal;\n }\n}\n\n.generator-tooltip-preset-color(@i: length(@preset-colors)) when (@i > 0) {\n .generator-tooltip-preset-color(@i - 1);\n @color: extract(@preset-colors, @i);\n @lightColor: '@{color}-6';\n .@{tooltip-prefix-cls}-@{color} {\n .@{tooltip-prefix-cls}-inner {\n background-color: @@lightColor;\n }\n .@{tooltip-prefix-cls}-arrow {\n &-content {\n background-color: @@lightColor;\n }\n }\n }\n}\n.generator-tooltip-preset-color();\n\n@import './rtl';\n","@tooltip-prefix-cls: ~'@{ant-prefix}-tooltip';\n\n// Base class\n.@{tooltip-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n // Wrapper for the tooltip content\n &-inner {\n .@{tooltip-prefix-cls}-rtl & {\n text-align: right;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@alert-prefix-cls: ~'@{ant-prefix}-alert';\n\n.@{alert-prefix-cls} {\n .reset-component();\n\n position: relative;\n display: flex;\n align-items: center;\n padding: 8px 15px;\n word-wrap: break-word;\n border-radius: @border-radius-base;\n\n &-content {\n flex: 1;\n min-width: 0;\n }\n\n &-icon {\n margin-right: @margin-xs;\n }\n\n &-description {\n display: none;\n font-size: @font-size-base;\n line-height: @font-size-base + 8px;\n }\n\n &-success {\n background-color: @alert-success-bg-color;\n border: @border-width-base @border-style-base @alert-success-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-success-icon-color;\n }\n }\n\n &-info {\n background-color: @alert-info-bg-color;\n border: @border-width-base @border-style-base @alert-info-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-info-icon-color;\n }\n }\n\n &-warning {\n background-color: @alert-warning-bg-color;\n border: @border-width-base @border-style-base @alert-warning-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-warning-icon-color;\n }\n }\n\n &-error {\n background-color: @alert-error-bg-color;\n border: @border-width-base @border-style-base @alert-error-border-color;\n\n .@{alert-prefix-cls}-icon {\n color: @alert-error-icon-color;\n }\n\n .@{alert-prefix-cls}-description > pre {\n margin: 0;\n padding: 0;\n }\n }\n\n &-action {\n margin-left: @margin-xs;\n }\n\n &-close-icon {\n margin-left: @margin-xs;\n padding: 0;\n overflow: hidden;\n font-size: @font-size-sm;\n line-height: @font-size-sm;\n background-color: transparent;\n border: none;\n outline: none;\n cursor: pointer;\n\n .@{iconfont-css-prefix}-close {\n color: @alert-close-color;\n transition: color 0.3s;\n &:hover {\n color: @alert-close-hover-color;\n }\n }\n }\n\n &-close-text {\n color: @alert-close-color;\n transition: color 0.3s;\n &:hover {\n color: @alert-close-hover-color;\n }\n }\n\n &-with-description {\n align-items: flex-start;\n padding: @alert-with-description-padding;\n }\n\n &-with-description&-no-icon {\n padding: @alert-with-description-no-icon-padding-vertical 15px;\n }\n\n &-with-description &-icon {\n margin-right: @alert-with-description-padding-vertical;\n font-size: @alert-with-description-icon-size;\n }\n &-with-description &-message {\n display: block;\n margin-bottom: 4px;\n color: @alert-message-color;\n font-size: @font-size-lg;\n }\n\n &-message {\n color: @alert-message-color;\n }\n\n &-with-description &-description {\n display: block;\n }\n\n &&-motion-leave {\n overflow: hidden;\n opacity: 1;\n transition: max-height 0.3s @ease-in-out-circ, opacity 0.3s @ease-in-out-circ,\n padding-top 0.3s @ease-in-out-circ, padding-bottom 0.3s @ease-in-out-circ,\n margin-bottom 0.3s @ease-in-out-circ;\n }\n\n &&-motion-leave-active {\n max-height: 0;\n margin-bottom: 0 !important;\n padding-top: 0;\n padding-bottom: 0;\n opacity: 0;\n }\n\n &-banner {\n margin-bottom: 0;\n border: 0;\n border-radius: 0;\n }\n}\n\n@import './rtl';\n",".@{alert-prefix-cls} {\n &&-rtl {\n direction: rtl;\n }\n\n &&-no-icon {\n .@{alert-prefix-cls}-rtl& {\n padding: @alert-no-icon-padding-vertical 15px;\n }\n }\n\n &-icon {\n .@{alert-prefix-cls}-rtl & {\n margin-right: auto;\n margin-left: @margin-xs;\n }\n }\n\n &-action {\n .@{alert-prefix-cls}-rtl & {\n margin-right: @margin-xs;\n margin-left: auto;\n }\n }\n\n &-close-icon {\n .@{alert-prefix-cls}-rtl & {\n margin-right: @margin-xs;\n margin-left: auto;\n }\n }\n\n &-with-description &-icon {\n .@{alert-prefix-cls}-rtl& {\n margin-right: auto;\n margin-left: @alert-with-description-padding-vertical;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@spin-prefix-cls: ~'@{ant-prefix}-spin';\n@spin-dot-default: @text-color-secondary;\n\n.@{spin-prefix-cls} {\n .reset-component();\n\n position: absolute;\n display: none;\n color: @primary-color;\n text-align: center;\n vertical-align: middle;\n opacity: 0;\n transition: transform 0.3s @ease-in-out-circ;\n\n &-spinning {\n position: static;\n display: inline-block;\n opacity: 1;\n }\n\n &-nested-loading {\n position: relative;\n > div > .@{spin-prefix-cls} {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 4;\n display: block;\n width: 100%;\n height: 100%;\n max-height: 400px;\n .@{spin-prefix-cls}-dot {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -(@spin-dot-size / 2);\n }\n .@{spin-prefix-cls}-text {\n position: absolute;\n top: 50%;\n width: 100%;\n padding-top: ((@spin-dot-size - @font-size-base) / 2) + 2px;\n text-shadow: 0 1px 2px @shadow-color-inverse;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size / 2) - 10px;\n }\n }\n\n > div > .@{spin-prefix-cls}-sm {\n .@{spin-prefix-cls}-dot {\n margin: -(@spin-dot-size-sm / 2);\n }\n .@{spin-prefix-cls}-text {\n padding-top: ((@spin-dot-size-sm - @font-size-base) / 2) + 2px;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size-sm / 2) - 10px;\n }\n }\n\n > div > .@{spin-prefix-cls}-lg {\n .@{spin-prefix-cls}-dot {\n margin: -(@spin-dot-size-lg / 2);\n }\n .@{spin-prefix-cls}-text {\n padding-top: ((@spin-dot-size-lg - @font-size-base) / 2) + 2px;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size-lg / 2) - 10px;\n }\n }\n }\n\n &-container {\n position: relative;\n transition: opacity 0.3s;\n\n &::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 10;\n display: ~'none \\9';\n width: 100%;\n height: 100%;\n background: @component-background;\n opacity: 0;\n transition: all 0.3s;\n content: '';\n pointer-events: none;\n }\n }\n\n &-blur {\n clear: both;\n overflow: hidden;\n opacity: 0.5;\n user-select: none;\n pointer-events: none;\n\n &::after {\n opacity: 0.4;\n pointer-events: auto;\n }\n }\n\n // tip\n // ------------------------------\n &-tip {\n color: @spin-dot-default;\n }\n\n // dots\n // ------------------------------\n\n &-dot {\n position: relative;\n display: inline-block;\n font-size: @spin-dot-size;\n\n .square(1em);\n\n &-item {\n position: absolute;\n display: block;\n width: 9px;\n height: 9px;\n background-color: @primary-color;\n border-radius: 100%;\n transform: scale(0.75);\n transform-origin: 50% 50%;\n opacity: 0.3;\n animation: antSpinMove 1s infinite linear alternate;\n\n &:nth-child(1) {\n top: 0;\n left: 0;\n }\n &:nth-child(2) {\n top: 0;\n right: 0;\n animation-delay: 0.4s;\n }\n &:nth-child(3) {\n right: 0;\n bottom: 0;\n animation-delay: 0.8s;\n }\n &:nth-child(4) {\n bottom: 0;\n left: 0;\n animation-delay: 1.2s;\n }\n }\n\n &-spin {\n transform: rotate(45deg);\n animation: antRotate 1.2s infinite linear;\n }\n }\n\n // Sizes\n // ------------------------------\n\n // small\n &-sm &-dot {\n font-size: @spin-dot-size-sm;\n\n i {\n width: 6px;\n height: 6px;\n }\n }\n\n // large\n &-lg &-dot {\n font-size: @spin-dot-size-lg;\n\n i {\n width: 14px;\n height: 14px;\n }\n }\n\n &&-show-text &-text {\n display: block;\n }\n}\n\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n /* IE10+ */\n .@{spin-prefix-cls}-blur {\n background: @component-background;\n opacity: 0.5;\n }\n}\n\n@keyframes antSpinMove {\n to {\n opacity: 1;\n }\n}\n\n@keyframes antRotate {\n to {\n transform: rotate(405deg);\n }\n}\n\n@import './rtl';\n","// Sizing shortcuts\n\n.size(@width; @height) {\n width: @width;\n height: @height;\n}\n\n.square(@size) {\n .size(@size; @size);\n}\n",".@{spin-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-dot {\n &-spin {\n .@{spin-prefix-cls}-rtl & {\n transform: rotate(-45deg);\n animation-name: antRotateRtl;\n }\n }\n }\n}\n\n@keyframes antRotateRtl {\n to {\n transform: rotate(-405deg);\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@message-prefix-cls: ~'@{ant-prefix}-message';\n\n.@{message-prefix-cls} {\n .reset-component();\n\n position: fixed;\n top: 8px;\n left: 0;\n z-index: @zindex-message;\n width: 100%;\n pointer-events: none;\n\n &-notice {\n padding: 8px;\n text-align: center;\n }\n\n &-notice-content {\n display: inline-block;\n padding: @message-notice-content-padding;\n background: @message-notice-content-bg;\n border-radius: @border-radius-base;\n box-shadow: @shadow-2;\n pointer-events: all;\n }\n\n &-success .@{iconfont-css-prefix} {\n color: @success-color;\n }\n\n &-error .@{iconfont-css-prefix} {\n color: @error-color;\n }\n\n &-warning .@{iconfont-css-prefix} {\n color: @warning-color;\n }\n\n &-info .@{iconfont-css-prefix},\n &-loading .@{iconfont-css-prefix} {\n color: @info-color;\n }\n\n .@{iconfont-css-prefix} {\n position: relative;\n top: 1px;\n margin-right: 8px;\n font-size: @font-size-lg;\n }\n\n &-notice.move-up-leave.move-up-leave-active {\n animation-name: MessageMoveOut;\n animation-duration: 0.3s;\n }\n}\n\n@keyframes MessageMoveOut {\n 0% {\n max-height: 150px;\n padding: 8px;\n opacity: 1;\n }\n 100% {\n max-height: 0;\n padding: 0;\n opacity: 0;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@message-prefix-cls: ~'@{ant-prefix}-message';\n\n.@{message-prefix-cls}-rtl {\n direction: rtl;\n\n span {\n direction: rtl;\n }\n\n .@{iconfont-css-prefix} {\n margin-right: 0;\n margin-left: 8px;\n }\n}\n","@import 'box';\n\n.modal-mask() {\n pointer-events: none;\n\n &.zoom-enter,\n &.zoom-appear {\n transform: none; // reset scale avoid mousePosition bug\n opacity: 0;\n animation-duration: @animation-duration-slow;\n user-select: none; // https://github.com/ant-design/ant-design/issues/11777\n }\n\n &-mask {\n .box(fixed);\n z-index: @zindex-modal-mask;\n height: 100%;\n background-color: @modal-mask-bg;\n\n &-hidden {\n display: none;\n }\n }\n\n &-wrap {\n .box(fixed);\n overflow: auto;\n outline: 0;\n -webkit-overflow-scrolling: touch;\n }\n}\n","@dialog-prefix-cls: ~'@{ant-prefix}-modal';\n\n.@{dialog-prefix-cls} {\n .reset-component();\n .modal-mask();\n\n position: relative;\n top: 100px;\n width: auto;\n max-width: calc(100vw - 32px);\n margin: 0 auto;\n padding-bottom: 24px;\n\n &-wrap {\n z-index: @zindex-modal;\n }\n\n &-title {\n margin: 0;\n color: @modal-heading-color;\n font-weight: 500;\n font-size: @modal-header-title-font-size;\n line-height: @modal-header-title-line-height;\n word-wrap: break-word;\n }\n\n &-content {\n position: relative;\n background-color: @modal-content-bg;\n background-clip: padding-box;\n border: 0;\n border-radius: @border-radius-base;\n box-shadow: @shadow-2;\n pointer-events: auto;\n }\n\n &-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: @zindex-popup-close;\n padding: 0;\n color: @modal-close-color;\n font-weight: 700;\n line-height: 1;\n text-decoration: none;\n background: transparent;\n border: 0;\n outline: 0;\n cursor: pointer;\n transition: color 0.3s;\n\n &-x {\n display: block;\n width: @modal-header-close-size;\n height: @modal-header-close-size;\n font-size: @font-size-lg;\n font-style: normal;\n line-height: @modal-header-close-size;\n text-align: center;\n text-transform: none;\n text-rendering: auto;\n }\n\n &:focus,\n &:hover {\n color: @icon-color-hover;\n text-decoration: none;\n }\n }\n\n &-header {\n padding: @modal-header-padding;\n color: @text-color;\n background: @modal-header-bg;\n border-bottom: @modal-header-border-width @modal-header-border-style\n @modal-header-border-color-split;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n\n &-body {\n padding: @modal-body-padding;\n font-size: @font-size-base;\n line-height: @line-height-base;\n word-wrap: break-word;\n }\n\n &-footer {\n padding: @modal-footer-padding-vertical @modal-footer-padding-horizontal;\n text-align: right;\n background: @modal-footer-bg;\n border-top: @modal-footer-border-width @modal-footer-border-style\n @modal-footer-border-color-split;\n border-radius: 0 0 @border-radius-base @border-radius-base;\n\n .@{ant-prefix}-btn + .@{ant-prefix}-btn:not(.@{ant-prefix}-dropdown-trigger) {\n margin-bottom: 0;\n margin-left: 8px;\n }\n }\n\n &-open {\n overflow: hidden;\n }\n}\n\n.@{dialog-prefix-cls}-centered {\n text-align: center;\n &::before {\n display: inline-block;\n width: 0;\n height: 100%;\n vertical-align: middle;\n content: '';\n }\n .@{dialog-prefix-cls} {\n top: 0;\n display: inline-block;\n text-align: left;\n vertical-align: middle;\n }\n}\n\n@media (max-width: @screen-sm-max) {\n .@{dialog-prefix-cls} {\n max-width: calc(100vw - 16px);\n margin: 8px auto;\n }\n .@{dialog-prefix-cls}-centered {\n .@{dialog-prefix-cls} {\n flex: 1;\n }\n }\n}\n",".box(@position: absolute) {\n position: @position;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n","@import '../../style/mixins/index';\n\n@confirm-prefix-cls: ~'@{ant-prefix}-modal-confirm';\n\n.@{confirm-prefix-cls} {\n .@{ant-prefix}-modal-header {\n display: none;\n }\n\n .@{ant-prefix}-modal-body {\n padding: @modal-confirm-body-padding;\n }\n\n &-body-wrapper {\n .clearfix();\n }\n\n &-body {\n .@{confirm-prefix-cls}-title {\n display: block;\n // create BFC to avoid\n // https://user-images.githubusercontent.com/507615/37702510-ba844e06-2d2d-11e8-9b67-8e19be57f445.png\n overflow: hidden;\n color: @heading-color;\n font-weight: 500;\n font-size: @font-size-lg;\n line-height: 1.4;\n }\n\n .@{confirm-prefix-cls}-content {\n margin-top: 8px;\n color: @text-color;\n font-size: @font-size-base;\n }\n\n > .@{iconfont-css-prefix} {\n float: left;\n margin-right: 16px;\n font-size: 22px;\n\n // `content` after `icon` should set marginLeft\n + .@{confirm-prefix-cls}-title + .@{confirm-prefix-cls}-content {\n margin-left: 38px;\n }\n }\n }\n\n .@{confirm-prefix-cls}-btns {\n float: right;\n margin-top: 24px;\n\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n margin-bottom: 0;\n margin-left: 8px;\n }\n }\n\n &-error &-body > .@{iconfont-css-prefix} {\n color: @error-color;\n }\n\n &-warning &-body > .@{iconfont-css-prefix},\n &-confirm &-body > .@{iconfont-css-prefix} {\n color: @warning-color;\n }\n\n &-info &-body > .@{iconfont-css-prefix} {\n color: @info-color;\n }\n\n &-success &-body > .@{iconfont-css-prefix} {\n color: @success-color;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@dialog-prefix-cls: ~'@{ant-prefix}-modal';\n@confirm-prefix-cls: ~'@{ant-prefix}-modal-confirm';\n@dialog-wrap-rtl-cls: ~'@{dialog-prefix-cls}-wrap-rtl';\n\n.@{dialog-prefix-cls} {\n &-wrap {\n &-rtl {\n direction: rtl;\n }\n }\n\n &-close {\n .@{dialog-wrap-rtl-cls} & {\n right: initial;\n left: 0;\n }\n }\n\n &-footer {\n .@{dialog-wrap-rtl-cls} & {\n text-align: left;\n }\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n }\n\n &-confirm {\n &-body {\n .@{dialog-wrap-rtl-cls} & {\n direction: rtl;\n }\n > .@{iconfont-css-prefix} {\n .@{dialog-wrap-rtl-cls} & {\n float: right;\n margin-right: 0;\n margin-left: 16px;\n }\n + .@{confirm-prefix-cls}-title + .@{confirm-prefix-cls}-content {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 38px;\n margin-left: 0;\n }\n }\n }\n }\n &-btns {\n .@{dialog-wrap-rtl-cls} & {\n float: left;\n }\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n }\n }\n}\n\n.@{dialog-prefix-cls}-centered {\n .@{dialog-prefix-cls} {\n .@{dialog-wrap-rtl-cls}& {\n text-align: right;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './mixin';\n\n@btn-prefix-cls: ~'@{ant-prefix}-btn';\n\n// for compatible\n@btn-ghost-color: @text-color;\n@btn-ghost-bg: transparent;\n@btn-ghost-border: @border-color-base;\n\n// Button styles\n// -----------------------------\n.@{btn-prefix-cls} {\n // Fixing https://github.com/ant-design/ant-design/issues/12978\n // Fixing https://github.com/ant-design/ant-design/issues/20058\n // Fixing https://github.com/ant-design/ant-design/issues/19972\n // Fixing https://github.com/ant-design/ant-design/issues/18107\n // Fixing https://github.com/ant-design/ant-design/issues/13214\n // It is a render problem of chrome, which is only happened in the codesandbox demo\n // 0.001px solution works and I don't why\n line-height: @btn-line-height;\n .btn();\n .btn-default();\n\n // Fix loading button animation\n // https://github.com/ant-design/ant-design/issues/24323\n > span {\n display: inline-block;\n }\n\n &-primary {\n .btn-primary();\n\n .@{btn-prefix-cls}-group &:not(:first-child):not(:last-child) {\n border-right-color: @btn-group-border;\n border-left-color: @btn-group-border;\n\n &:disabled {\n border-color: @btn-default-border;\n }\n }\n\n .@{btn-prefix-cls}-group &:first-child {\n &:not(:last-child) {\n border-right-color: @btn-group-border;\n\n &[disabled] {\n border-right-color: @btn-default-border;\n }\n }\n }\n\n .@{btn-prefix-cls}-group &:last-child:not(:first-child),\n .@{btn-prefix-cls}-group & + & {\n border-left-color: @btn-group-border;\n\n &[disabled] {\n border-left-color: @btn-default-border;\n }\n }\n }\n\n &-ghost {\n .btn-ghost();\n }\n\n &-dashed {\n .btn-dashed();\n }\n\n // type=\"danger\" will deprecated\n // use danger instead\n &-danger {\n .btn-danger();\n }\n\n &-link {\n .btn-link();\n }\n\n &-text {\n .btn-text();\n }\n\n &-dangerous {\n .btn-danger-default();\n }\n\n &-dangerous&-primary {\n .btn-danger();\n }\n\n &-dangerous&-link {\n .btn-danger-link();\n }\n\n &-dangerous&-text {\n .btn-danger-text();\n }\n\n &-icon-only {\n .btn-square(@btn-prefix-cls);\n vertical-align: -1px;\n }\n\n &-round {\n .btn-round(@btn-prefix-cls);\n &.@{btn-prefix-cls}-icon-only {\n width: auto;\n }\n }\n\n &-circle {\n .btn-circle(@btn-prefix-cls);\n }\n\n &::before {\n position: absolute;\n top: -@btn-border-width;\n right: -@btn-border-width;\n bottom: -@btn-border-width;\n left: -@btn-border-width;\n z-index: 1;\n display: none;\n background: @component-background;\n border-radius: inherit;\n opacity: 0.35;\n transition: opacity 0.2s;\n content: '';\n pointer-events: none;\n }\n\n .@{iconfont-css-prefix} {\n transition: margin-left 0.3s @ease-in-out;\n\n // Follow icon blur under windows. Change the render.\n // https://github.com/ant-design/ant-design/issues/13924\n &.@{iconfont-css-prefix}-plus,\n &.@{iconfont-css-prefix}-minus {\n > svg {\n shape-rendering: optimizeSpeed;\n }\n }\n }\n\n &&-loading {\n position: relative;\n &:not([disabled]) {\n pointer-events: none;\n }\n\n &::before {\n display: block;\n }\n }\n\n & > &-loading-icon {\n transition: all 0.3s @ease-in-out;\n\n .@{iconfont-css-prefix} {\n padding-right: @padding-xs;\n animation: none;\n // for smooth button padding transition\n svg {\n animation: loadingCircle 1s infinite linear;\n }\n }\n\n &:only-child {\n .@{iconfont-css-prefix} {\n padding-right: 0;\n }\n }\n }\n\n &-group {\n .btn-group(@btn-prefix-cls);\n }\n\n // http://stackoverflow.com/a/21281554/3040605\n &:focus > span,\n &:active > span {\n position: relative;\n }\n\n // To ensure that a space will be placed between character and `Icon`.\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n margin-left: @margin-xs;\n }\n\n &-background-ghost {\n color: @btn-default-ghost-color;\n background: @btn-default-ghost-bg !important;\n border-color: @btn-default-ghost-border;\n }\n\n &-background-ghost&-primary {\n .button-variant-ghost(@btn-primary-bg);\n }\n\n &-background-ghost&-danger {\n .button-variant-ghost(@btn-danger-border);\n }\n\n &-background-ghost&-dangerous {\n .button-variant-ghost(@btn-danger-border);\n }\n\n &-background-ghost&-dangerous&-link {\n .button-variant-ghost(@btn-danger-border, transparent);\n }\n\n &-two-chinese-chars::first-letter {\n letter-spacing: 0.34em;\n }\n\n &-two-chinese-chars > *:not(.@{iconfont-css-prefix}) {\n margin-right: -0.34em;\n letter-spacing: 0.34em;\n }\n\n &-block {\n width: 100%;\n }\n\n // https://github.com/ant-design/ant-design/issues/12681\n // same method as Select\n &:empty {\n display: inline-block;\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n}\n\na.@{btn-prefix-cls} {\n // Fixing https://github.com/ant-design/ant-design/issues/12978\n // https://github.com/ant-design/ant-design/issues/29978\n // It is a render problem of chrome, which is only happened in the codesandbox demo\n // 0.1px for padding-top solution works and I don't why\n padding-top: 0.01px !important;\n line-height: @btn-height-base - 2px;\n\n &-lg {\n line-height: @btn-height-lg - 2px;\n }\n &-sm {\n line-height: @btn-height-sm - 2px;\n }\n}\n\n@import './rtl';\n","// mixins for button\n// ------------------------\n.button-size(@height; @padding-horizontal; @font-size; @border-radius) {\n @padding-vertical: max(\n (round(((@height - @font-size * @line-height-base) / 2) * 10) / 10) - @border-width-base,\n 0\n );\n height: @height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n border-radius: @border-radius;\n}\n\n.button-disabled(@color: @btn-disable-color; @background: @btn-disable-bg; @border: @btn-disable-border) {\n &[disabled] {\n &,\n &:hover,\n &:focus,\n &:active {\n .button-color(@color; @background; @border);\n\n text-shadow: none;\n box-shadow: none;\n }\n }\n}\n\n.button-variant-primary(@color; @background) {\n .button-color(@color; @background; @background);\n\n text-shadow: @btn-text-shadow;\n box-shadow: @btn-primary-shadow;\n\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 7) `; ~`colorPalette('@{background}', 7) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 5) `; ~`colorPalette('@{background}', 5) `\n );\n }\n }\n\n &:active {\n & when (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 5) `; ~`colorPalette('@{background}', 5) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 7) `; ~`colorPalette('@{background}', 7) `\n );\n }\n }\n\n .button-disabled();\n}\n\n.button-variant-other(@color; @background; @border) {\n .button-color(@color; @background; @border);\n\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(@primary-5; @background; @primary-5);\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{btn-primary-bg}', 5) `; @background;\n ~`colorPalette('@{btn-primary-bg}', 5) `\n );\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(@primary-7; @background; @primary-7);\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{btn-primary-bg}', 7) `; @background;\n ~`colorPalette('@{btn-primary-bg}', 7) `\n );\n }\n }\n .button-disabled();\n}\n.button-variant-ghost(@color; @border: @color) {\n .button-color(@color; transparent; @border);\n text-shadow: none;\n &:hover,\n &:focus {\n & when (@border = transparent) {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 7) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 5) `; transparent; transparent);\n }\n }\n & when not (@border = transparent) {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 7) `; transparent; ~`colorPalette('@{color}', 7) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 5) `; transparent; ~`colorPalette('@{color}', 5) `\n );\n }\n }\n }\n &:active {\n & when (@border = transparent) {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 5) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 7) `; transparent; transparent);\n }\n }\n & when not(@border = transparent) {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 5) `; transparent; ~`colorPalette('@{color}', 5) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 7) `; transparent; ~`colorPalette('@{color}', 7) `\n );\n }\n }\n }\n .button-disabled();\n}\n.button-color(@color; @background; @border) {\n color: @color;\n background: @background;\n border-color: @border; // a inside Button which only work in Chrome\n // http://stackoverflow.com/a/17253457\n > a:only-child {\n color: currentColor;\n &::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: transparent;\n content: '';\n }\n }\n}\n.button-group-base(@btnClassName) {\n position: relative;\n display: inline-flex;\n > .@{btnClassName},\n > span > .@{btnClassName} {\n position: relative;\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n &[disabled] {\n z-index: 0;\n }\n }\n .@{btnClassName}-icon-only {\n font-size: @font-size-base;\n }\n // size\n &-lg > .@{btnClassName},\n &-lg > span > .@{btnClassName} {\n .button-size(@btn-height-lg; @btn-padding-horizontal-lg; @btn-font-size-lg; 0);\n }\n &-lg .@{btnClassName}.@{btnClassName}-icon-only {\n .square(@btn-height-lg);\n padding-right: 0;\n padding-left: 0;\n }\n &-sm > .@{btnClassName},\n &-sm > span > .@{btnClassName} {\n .button-size(@btn-height-sm; @btn-padding-horizontal-sm; @font-size-base; 0);\n > .@{iconfont-css-prefix} {\n font-size: @font-size-base;\n }\n }\n &-sm .@{btnClassName}.@{btnClassName}-icon-only {\n .square(@btn-height-sm);\n padding-right: 0;\n padding-left: 0;\n }\n}\n// Base styles of buttons\n// --------------------------------------------------\n.btn() {\n position: relative;\n display: inline-block;\n font-weight: @btn-font-weight;\n white-space: nowrap;\n text-align: center;\n background-image: none;\n border: @btn-border-width @btn-border-style transparent;\n box-shadow: @btn-shadow;\n cursor: pointer;\n transition: all 0.3s @ease-in-out;\n user-select: none;\n touch-action: manipulation;\n .button-size(\n @btn-height-base; @btn-padding-horizontal-base; @font-size-base; @btn-border-radius-base\n );\n > .@{iconfont-css-prefix} {\n line-height: 1;\n }\n &,\n &:active,\n &:focus {\n outline: 0;\n }\n &:not([disabled]):hover {\n text-decoration: none;\n }\n &:not([disabled]):active {\n outline: 0;\n box-shadow: none;\n }\n &[disabled] {\n cursor: not-allowed;\n > * {\n pointer-events: none;\n }\n }\n &-lg {\n .button-size(\n @btn-height-lg; @btn-padding-horizontal-lg; @btn-font-size-lg; @btn-border-radius-base\n );\n }\n &-sm {\n .button-size(\n @btn-height-sm; @btn-padding-horizontal-sm; @btn-font-size-sm; @btn-border-radius-sm\n );\n }\n}\n// primary button style\n.btn-primary() {\n .button-variant-primary(@btn-primary-color; @btn-primary-bg);\n}\n// default button style\n.btn-default() {\n .button-variant-other(@btn-default-color; @btn-default-bg; @btn-default-border);\n &:hover,\n &:focus,\n &:active {\n text-decoration: none;\n background: @btn-default-bg;\n }\n}\n// ghost button style\n.btn-ghost() {\n .button-variant-other(@btn-ghost-color, @btn-ghost-bg, @btn-ghost-border);\n}\n// dashed button style\n.btn-dashed() {\n .button-variant-other(@btn-default-color, @btn-default-bg, @btn-default-border);\n border-style: dashed;\n}\n// danger button style\n.btn-danger() {\n .button-variant-primary(@btn-danger-color, @btn-danger-bg);\n}\n// danger default button style\n.btn-danger-default() {\n .button-color(@error-color, @btn-default-bg, @error-color);\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 7) `; @btn-default-bg; ~`colorPalette('@{error-color}', 7)\n `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 5) `; @btn-default-bg; ~`colorPalette('@{error-color}', 5)\n `\n );\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 5) `; @btn-default-bg; ~`colorPalette('@{error-color}', 5)\n `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 7) `; @btn-default-bg; ~`colorPalette('@{error-color}', 7)\n `\n );\n }\n }\n .button-disabled();\n}\n// danger link button style\n.btn-danger-link() {\n .button-variant-other(@error-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; transparent; transparent);\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; transparent; transparent);\n }\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// link button style\n.btn-link() {\n .button-variant-other(@link-color, transparent, transparent);\n box-shadow: none;\n &:hover {\n background: @btn-link-hover-bg;\n }\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// text button style\n.btn-text() {\n .button-variant-other(@text-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n color: @text-color;\n background: @btn-text-hover-bg;\n border-color: transparent;\n }\n\n &:active {\n color: @text-color;\n background: fadein(@btn-text-hover-bg, 1%);\n border-color: transparent;\n }\n\n .button-disabled(@disabled-color; transparent; transparent);\n}\n.btn-danger-text() {\n .button-variant-other(@error-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; @btn-text-hover-bg; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; @btn-text-hover-bg; transparent);\n }\n }\n\n &:active {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; fadein(@btn-text-hover-bg, 1%); transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; fadein(@btn-text-hover-bg, 1%); transparent);\n }\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// round button\n.btn-round(@btnClassName: btn) {\n .button-size(@btn-circle-size; (@btn-circle-size / 2); @font-size-base; @btn-circle-size);\n &.@{btnClassName}-lg {\n .button-size(\n @btn-circle-size-lg; (@btn-circle-size-lg / 2); @btn-font-size-lg; @btn-circle-size-lg\n );\n }\n &.@{btnClassName}-sm {\n .button-size(\n @btn-circle-size-sm; (@btn-circle-size-sm / 2); @font-size-base; @btn-circle-size-sm\n );\n }\n}\n// square button: the content only contains icon\n.btn-square(@btnClassName: btn) {\n .square(@btn-square-size);\n .button-size(@btn-square-size; 0; @btn-square-only-icon-size; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size;\n }\n &.@{btnClassName}-lg {\n .square(@btn-square-size-lg);\n .button-size(@btn-square-size-lg; 0; @btn-square-only-icon-size-lg; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size-lg;\n }\n }\n &.@{btnClassName}-sm {\n .square(@btn-square-size-sm);\n .button-size(@btn-square-size-sm; 0; @btn-square-only-icon-size-sm; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size-sm;\n }\n }\n}\n// circle button: the content only contains icon\n.btn-circle(@btnClassName: btn) {\n min-width: @btn-height-base;\n padding-right: 0;\n padding-left: 0;\n text-align: center;\n border-radius: 50%;\n &.@{btnClassName}-lg {\n min-width: @btn-height-lg;\n border-radius: 50%;\n }\n &.@{btnClassName}-sm {\n min-width: @btn-height-sm;\n border-radius: 50%;\n }\n}\n// Horizontal button groups style\n// --------------------------------------------------\n.btn-group(@btnClassName: btn) {\n .button-group-base(@btnClassName);\n .@{btnClassName} + .@{btnClassName},\n .@{btnClassName} + &,\n span + .@{btnClassName},\n .@{btnClassName} + span,\n > span + span,\n & + .@{btnClassName},\n & + & {\n margin-left: -1px;\n }\n .@{btnClassName}-primary + .@{btnClassName}:not(.@{btnClassName}-primary):not([disabled]) {\n border-left-color: transparent;\n }\n .@{btnClassName} {\n border-radius: 0;\n }\n > .@{btnClassName}:first-child,\n > span:first-child > .@{btnClassName} {\n margin-left: 0;\n }\n > .@{btnClassName}:only-child {\n border-radius: @btn-border-radius-base;\n }\n > span:only-child > .@{btnClassName} {\n border-radius: @btn-border-radius-base;\n }\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n border-top-left-radius: @btn-border-radius-base;\n border-bottom-left-radius: @btn-border-radius-base;\n }\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n border-top-right-radius: @btn-border-radius-base;\n border-bottom-right-radius: @btn-border-radius-base;\n }\n &-sm {\n > .@{btnClassName}:only-child {\n border-radius: @btn-border-radius-sm;\n }\n > span:only-child > .@{btnClassName} {\n border-radius: @btn-border-radius-sm;\n }\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n border-top-left-radius: @btn-border-radius-sm;\n border-bottom-left-radius: @btn-border-radius-sm;\n }\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n border-top-right-radius: @btn-border-radius-sm;\n border-bottom-right-radius: @btn-border-radius-sm;\n }\n }\n & > & {\n float: left;\n }\n & > &:not(:first-child):not(:last-child) > .@{btnClassName} {\n border-radius: 0;\n }\n & > &:first-child:not(:last-child) {\n > .@{btnClassName}:last-child {\n padding-right: 8px;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n & > &:last-child:not(:first-child) > .@{btnClassName}:first-child {\n padding-left: 8px;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n}\n",".@{btn-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-primary {\n .@{btn-prefix-cls}-group &:last-child:not(:first-child),\n .@{btn-prefix-cls}-group & + & {\n .@{btn-prefix-cls}-group-rtl& {\n border-right-color: @btn-group-border;\n border-left-color: @btn-default-border;\n }\n &[disabled] {\n .@{btn-prefix-cls}-group-rtl& {\n border-right-color: @btn-default-border;\n border-left-color: @btn-group-border;\n }\n }\n }\n }\n\n & > &-loading-icon {\n .@{iconfont-css-prefix} {\n .@{btn-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @margin-xs;\n }\n }\n\n &:only-child {\n .@{iconfont-css-prefix} {\n padding-right: 0;\n padding-left: 0;\n }\n }\n }\n\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n .@{btn-prefix-cls}-rtl& {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n}\n\n// mixin\n.btn-group(@btnClassName: btn) {\n .@{btnClassName} + .@{btnClassName},\n .@{btnClassName} + &,\n span + .@{btnClassName},\n .@{btnClassName} + span,\n > span + span,\n & + .@{btnClassName},\n & + & {\n .@{btnClassName}-rtl&,\n .@{btnClassName}-group-rtl& {\n margin-right: -1px;\n margin-left: auto;\n }\n }\n\n &.@{btnClassName}-group-rtl {\n direction: rtl;\n }\n\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: 0;\n border-top-right-radius: @btn-border-radius-base;\n border-bottom-right-radius: @btn-border-radius-base;\n border-bottom-left-radius: 0;\n }\n }\n\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: @btn-border-radius-base;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: @btn-border-radius-base;\n }\n }\n\n &-sm {\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: 0;\n border-top-right-radius: @btn-border-radius-sm;\n border-bottom-right-radius: @btn-border-radius-sm;\n border-bottom-left-radius: 0;\n }\n }\n\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: @btn-border-radius-sm;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: @btn-border-radius-sm;\n }\n }\n }\n}\n","@import './index';\n\n@selection-item-padding: ceil(@font-size-base * 1.25);\n\n.@{select-prefix-cls}-single {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n display: flex;\n\n .@{select-prefix-cls}-selection-search {\n position: absolute;\n top: 0;\n right: @input-padding-horizontal-base;\n bottom: 0;\n left: @input-padding-horizontal-base;\n\n &-input {\n width: 100%;\n }\n }\n\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n padding: 0;\n line-height: @select-height-without-border;\n transition: all 0.3s;\n\n // Firefox inline-block position calculation is not same as Chrome & Safari. Patch this:\n @supports (-moz-appearance: meterbar) {\n & {\n line-height: @select-height-without-border;\n }\n }\n }\n\n .@{select-prefix-cls}-selection-item {\n position: relative;\n user-select: none;\n }\n\n .@{select-prefix-cls}-selection-placeholder {\n pointer-events: none;\n }\n\n // For common baseline align\n &::after,\n // For '' value baseline align\n .@{select-prefix-cls}-selection-item::after,\n // For undefined value baseline align\n .@{select-prefix-cls}-selection-placeholder::after {\n display: inline-block;\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-base + @font-size-base;\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n padding-right: @selection-item-padding;\n }\n\n // Opacity selection if open\n &.@{select-prefix-cls}-open .@{select-prefix-cls}-selection-item {\n color: @input-placeholder-color;\n }\n\n // ========================== Input ==========================\n // We only change the style of non-customize input which is only support by `combobox` mode.\n\n // Not customize\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n width: 100%;\n height: @input-height-base;\n padding: 0 @input-padding-horizontal-base;\n\n .@{select-prefix-cls}-selection-search-input {\n height: @select-height-without-border;\n }\n\n &::after {\n line-height: @select-height-without-border;\n }\n }\n }\n\n &.@{select-prefix-cls}-customize-input {\n .@{select-prefix-cls}-selector {\n &::after {\n display: none;\n }\n\n .@{select-prefix-cls}-selection-search {\n position: static;\n width: 100%;\n }\n\n .@{select-prefix-cls}-selection-placeholder {\n position: absolute;\n right: 0;\n left: 0;\n padding: 0 @input-padding-horizontal-base;\n\n &::after {\n display: none;\n }\n }\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n .select-size(@suffix, @input-height) {\n @merged-cls: ~'@{select-prefix-cls}-@{suffix}';\n\n &.@{merged-cls}:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n height: @input-height;\n\n &::after,\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n line-height: @input-height - 2 * @border-width-base;\n }\n }\n\n // Not customize\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selection-search-input {\n height: @input-height - 2 * @border-width-base;\n }\n }\n }\n }\n\n .select-size('lg', @select-single-item-height-lg);\n .select-size('sm', @input-height-sm);\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-sm;\n left: @input-padding-horizontal-sm;\n }\n\n .@{select-prefix-cls}-selector {\n padding: 0 @input-padding-horizontal-sm;\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-sm + @font-size-base * 1.5;\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n padding-right: @font-size-base * 1.5;\n }\n }\n }\n\n &.@{select-prefix-cls}-lg {\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n padding: 0 @input-padding-horizontal-lg;\n }\n }\n }\n}\n","@import './index';\n\n@select-overflow-prefix-cls: ~'@{select-prefix-cls}-selection-overflow';\n@select-multiple-item-border-width: 1px;\n\n@select-multiple-padding: max(\n @input-padding-vertical-base - @select-multiple-item-border-width -\n @select-multiple-item-spacing-half,\n 0\n);\n\n/**\n * Do not merge `height` & `line-height` under style with `selection` & `search`,\n * since chrome may update to redesign with its align logic.\n */\n\n// =========================== Overflow ===========================\n.@{select-overflow-prefix-cls} {\n position: relative;\n display: flex;\n flex: auto;\n flex-wrap: wrap;\n max-width: 100%;\n\n &-item {\n flex: none;\n align-self: center;\n max-width: 100%;\n }\n}\n\n.@{select-prefix-cls} {\n &-multiple {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n // Multiple is little different that horizontal is follow the vertical\n padding: @select-multiple-padding @input-padding-vertical-base;\n\n .@{select-prefix-cls}-show-search& {\n cursor: text;\n }\n\n .@{select-prefix-cls}-disabled& {\n background: @select-multiple-disabled-background;\n cursor: not-allowed;\n }\n\n &::after {\n display: inline-block;\n width: 0;\n margin: @select-multiple-item-spacing-half 0;\n line-height: @select-multiple-item-height;\n content: '\\a0';\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selector,\n &.@{select-prefix-cls}-allow-clear .@{select-prefix-cls}-selector {\n padding-right: @font-size-sm + @control-padding-horizontal;\n }\n\n // ======================== Selections ========================\n .@{select-prefix-cls}-selection-item {\n position: relative;\n display: flex;\n flex: none;\n box-sizing: border-box;\n max-width: 100%;\n\n height: @select-multiple-item-height;\n margin-top: @select-multiple-item-spacing-half;\n margin-bottom: @select-multiple-item-spacing-half;\n line-height: @select-multiple-item-height - @select-multiple-item-border-width * 2;\n background: @select-selection-item-bg;\n border: 1px solid @select-selection-item-border-color;\n border-radius: @border-radius-base;\n cursor: default;\n transition: font-size 0.3s, line-height 0.3s, height 0.3s;\n user-select: none;\n margin-inline-end: @input-padding-vertical-base;\n padding-inline-start: @padding-xs;\n padding-inline-end: (@padding-xs / 2);\n\n .@{select-prefix-cls}-disabled& {\n color: @select-multiple-item-disabled-color;\n border-color: @select-multiple-item-disabled-border-color;\n cursor: not-allowed;\n }\n\n // It's ok not to do this, but 24px makes bottom narrow in view should adjust\n &-content {\n display: inline-block;\n margin-right: (@padding-xs / 2);\n overflow: hidden;\n white-space: pre; // fix whitespace wrapping. custom tags display all whitespace within.\n text-overflow: ellipsis;\n }\n\n &-remove {\n .iconfont-mixin();\n display: inline-block;\n color: @text-color-secondary;\n font-weight: bold;\n font-size: 10px;\n line-height: inherit;\n cursor: pointer;\n\n > .@{iconfont-css-prefix} {\n vertical-align: -0.2em;\n }\n\n &:hover {\n color: @icon-color-hover;\n }\n }\n }\n\n // ========================== Input ==========================\n .@{select-overflow-prefix-cls}-item + .@{select-overflow-prefix-cls}-item {\n .@{select-prefix-cls}-selection-search {\n margin-inline-start: 0;\n }\n }\n\n .@{select-prefix-cls}-selection-search {\n position: relative;\n max-width: 100%;\n margin-top: @select-multiple-item-spacing-half;\n margin-bottom: @select-multiple-item-spacing-half;\n margin-inline-start: @input-padding-horizontal-base - @input-padding-vertical-base;\n\n &-input,\n &-mirror {\n height: @select-multiple-item-height;\n font-family: @font-family;\n line-height: @select-multiple-item-height;\n transition: all 0.3s;\n }\n\n &-input {\n width: 100%;\n min-width: 4.1px; // fix search cursor missing\n }\n\n &-mirror {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 999;\n white-space: pre; // fix whitespace wrapping caused width calculation bug\n visibility: hidden;\n }\n }\n\n // ======================= Placeholder =======================\n .@{select-prefix-cls}-selection-placeholder {\n position: absolute;\n top: 50%;\n right: @input-padding-horizontal;\n left: @input-padding-horizontal;\n transform: translateY(-50%);\n transition: all 0.3s;\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n .select-size(@suffix, @input-height) {\n @merged-cls: ~'@{select-prefix-cls}-@{suffix}';\n &.@{merged-cls} {\n @select-selection-height: @input-height - @input-padding-vertical-base * 2;\n @select-height-without-border: @input-height - @border-width-base * 2;\n\n .@{select-prefix-cls}-selector::after {\n line-height: @select-selection-height;\n }\n\n .@{select-prefix-cls}-selection-item {\n height: @select-selection-height;\n line-height: @select-selection-height - @border-width-base * 2;\n }\n\n .@{select-prefix-cls}-selection-search {\n height: @select-selection-height;\n line-height: @select-selection-height;\n\n &-input,\n &-mirror {\n height: @select-selection-height;\n line-height: @select-selection-height - @border-width-base * 2;\n }\n }\n }\n }\n\n .select-size('lg', @input-height-lg);\n .select-size('sm', @input-height-sm);\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n .@{select-prefix-cls}-selection-placeholder {\n left: @input-padding-horizontal-sm;\n }\n // https://github.com/ant-design/ant-design/issues/29559\n .@{select-prefix-cls}-selection-search {\n margin-inline-start: 3px;\n }\n }\n &.@{select-prefix-cls}-lg {\n .@{select-prefix-cls}-selection-item {\n height: @select-multiple-item-height-lg;\n line-height: @select-multiple-item-height-lg;\n }\n }\n }\n\n &-disabled .@{select-prefix-cls}-selection-item-remove {\n display: none;\n }\n}\n",".iconfont-mixin() {\n display: inline-block;\n color: @icon-color;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em; // for SVG icon, see https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n > * {\n line-height: 1;\n }\n\n svg {\n display: inline-block;\n }\n\n &::before {\n display: none; // dont display old icon.\n }\n\n & &-icon {\n display: block;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n\n@import './single';\n@import './multiple';\n\n@select-prefix-cls: ~'@{ant-prefix}-select';\n@select-height-without-border: @input-height-base - 2 * @border-width-base;\n@select-dropdown-edge-child-vertical-padding: @dropdown-edge-child-vertical-padding;\n\n.select-selector() {\n position: relative;\n background-color: @select-background;\n border: @border-width-base @border-style-base @select-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s @ease-in-out;\n\n input {\n cursor: pointer;\n }\n\n .@{select-prefix-cls}-show-search& {\n cursor: text;\n\n input {\n cursor: auto;\n }\n }\n\n .@{select-prefix-cls}-focused:not(.@{select-prefix-cls}-disabled)& {\n .active();\n }\n\n .@{select-prefix-cls}-disabled& {\n color: @disabled-color;\n background: @input-disabled-bg;\n cursor: not-allowed;\n\n .@{select-prefix-cls}-multiple& {\n background: @select-multiple-disabled-background;\n }\n\n input {\n cursor: not-allowed;\n }\n }\n}\n\n/* Reset search input style */\n.select-search-input-without-border() {\n .@{select-prefix-cls}-selection-search-input {\n margin: 0;\n padding: 0;\n background: transparent;\n border: none;\n outline: none;\n appearance: none;\n\n &::-webkit-search-cancel-button {\n display: none;\n -webkit-appearance: none;\n }\n }\n}\n\n.@{select-prefix-cls} {\n .reset-component();\n position: relative;\n display: inline-block;\n cursor: pointer;\n\n &:not(&-customize-input) &-selector {\n .select-selector();\n .select-search-input-without-border();\n }\n\n &:not(&-disabled):hover &-selector {\n .hover();\n }\n\n // ======================== Selection ========================\n &-selection-item {\n flex: 1;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n // IE11 css hack. `*::-ms-backdrop,` is a must have\n @media all and (-ms-high-contrast: none) {\n *::-ms-backdrop,\n & {\n flex: auto;\n }\n }\n }\n\n // ======================= Placeholder =======================\n &-selection-placeholder {\n flex: 1;\n overflow: hidden;\n color: @input-placeholder-color;\n white-space: nowrap;\n text-overflow: ellipsis;\n pointer-events: none;\n\n // IE11 css hack. `*::-ms-backdrop,` is a must have\n @media all and (-ms-high-contrast: none) {\n *::-ms-backdrop,\n & {\n flex: auto;\n }\n }\n }\n\n // ========================== Arrow ==========================\n &-arrow {\n .iconfont-mixin();\n position: absolute;\n top: 53%;\n right: @control-padding-horizontal - 1px;\n width: @font-size-sm;\n height: @font-size-sm;\n margin-top: (-@font-size-sm / 2);\n color: @disabled-color;\n font-size: @font-size-sm;\n line-height: 1;\n text-align: center;\n pointer-events: none;\n\n .@{iconfont-css-prefix} {\n vertical-align: top;\n transition: transform 0.3s;\n\n > svg {\n vertical-align: top;\n }\n\n &:not(.@{select-prefix-cls}-suffix) {\n pointer-events: auto;\n }\n }\n\n .@{select-prefix-cls}-disabled & {\n cursor: not-allowed;\n }\n }\n\n // ========================== Clear ==========================\n &-clear {\n position: absolute;\n top: 50%;\n right: @control-padding-horizontal - 1px;\n z-index: 1;\n display: inline-block;\n width: @font-size-sm;\n height: @font-size-sm;\n margin-top: (-@font-size-sm / 2);\n color: @disabled-color;\n font-size: @font-size-sm;\n font-style: normal;\n line-height: 1;\n text-align: center;\n text-transform: none;\n background: @select-clear-background;\n cursor: pointer;\n opacity: 0;\n transition: color 0.3s ease, opacity 0.15s ease;\n text-rendering: auto;\n &::before {\n display: block;\n }\n &:hover {\n color: @text-color-secondary;\n }\n\n .@{select-prefix-cls}:hover & {\n opacity: 1;\n }\n }\n\n // ========================== Popup ==========================\n &-dropdown {\n .reset-component();\n position: absolute;\n top: -9999px;\n left: -9999px;\n z-index: @zindex-dropdown;\n box-sizing: border-box;\n padding: @select-dropdown-edge-child-vertical-padding 0;\n overflow: hidden;\n font-size: @font-size-base;\n // Fix select render lag of long text in chrome\n // https://github.com/ant-design/ant-design/issues/11456\n // https://github.com/ant-design/ant-design/issues/11843\n font-variant: initial;\n background-color: @select-dropdown-bg;\n border-radius: @border-radius-base;\n outline: none;\n box-shadow: @box-shadow-base;\n\n &.slide-up-enter.slide-up-enter-active&-placement-bottomLeft,\n &.slide-up-appear.slide-up-appear-active&-placement-bottomLeft {\n animation-name: antSlideUpIn;\n }\n\n &.slide-up-enter.slide-up-enter-active&-placement-topLeft,\n &.slide-up-appear.slide-up-appear-active&-placement-topLeft {\n animation-name: antSlideDownIn;\n }\n\n &.slide-up-leave.slide-up-leave-active&-placement-bottomLeft {\n animation-name: antSlideUpOut;\n }\n\n &.slide-up-leave.slide-up-leave-active&-placement-topLeft {\n animation-name: antSlideDownOut;\n }\n\n &-hidden {\n display: none;\n }\n\n &-empty {\n color: @disabled-color;\n }\n }\n\n // ========================= Options =========================\n .item() {\n position: relative;\n display: block;\n min-height: @select-dropdown-height;\n padding: @select-dropdown-vertical-padding @control-padding-horizontal;\n color: @text-color;\n font-weight: normal;\n font-size: @select-dropdown-font-size;\n line-height: @select-dropdown-line-height;\n }\n\n &-item-empty {\n .item();\n color: @disabled-color;\n }\n\n &-item {\n .item();\n\n cursor: pointer;\n transition: background 0.3s ease;\n\n // =========== Group ============\n &-group {\n color: @text-color-secondary;\n font-size: @font-size-sm;\n cursor: default;\n }\n\n // =========== Option ===========\n &-option {\n display: flex;\n\n &-content {\n flex: auto;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n &-state {\n flex: none;\n }\n\n &-active:not(&-disabled) {\n background-color: @select-item-active-bg;\n }\n\n &-selected:not(&-disabled) {\n color: @select-item-selected-color;\n font-weight: @select-item-selected-font-weight;\n background-color: @select-item-selected-bg;\n\n .@{select-prefix-cls}-item-option-state {\n color: @primary-color;\n }\n }\n\n &-disabled {\n color: @disabled-color;\n cursor: not-allowed;\n }\n\n &-grouped {\n padding-left: @control-padding-horizontal * 2;\n }\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n &-lg {\n font-size: @font-size-lg;\n }\n\n // no border style\n &-borderless &-selector {\n background-color: transparent !important;\n border-color: transparent !important;\n box-shadow: none !important;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n\n@select-prefix-cls: ~'@{ant-prefix}-select';\n\n.@{select-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n // ========================== Arrow ==========================\n &-arrow {\n .@{select-prefix-cls}-rtl & {\n right: initial;\n left: @control-padding-horizontal - 1px;\n }\n }\n\n // ========================== Clear ==========================\n &-clear {\n .@{select-prefix-cls}-rtl & {\n right: initial;\n left: @control-padding-horizontal - 1px;\n }\n }\n\n // ========================== Popup ==========================\n &-dropdown {\n &-rtl {\n direction: rtl;\n }\n }\n\n // ========================= Options =========================\n &-item {\n &-option {\n &-grouped {\n .@{select-prefix-cls}-dropdown-rtl & {\n padding-right: @control-padding-horizontal * 2;\n padding-left: @control-padding-horizontal;\n }\n }\n }\n }\n}\n\n// multiple\n@select-multiple-item-border-width: 1px;\n@select-multiple-item-spacing-half: ceil((@input-padding-vertical-base / 2));\n@select-multiple-padding: max(\n @input-padding-vertical-base - @select-multiple-item-border-width -\n @select-multiple-item-spacing-half,\n 0\n);\n\n.@{select-prefix-cls}-multiple {\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selector,\n &.@{select-prefix-cls}-allow-clear .@{select-prefix-cls}-selector {\n .@{select-prefix-cls}-rtl& {\n padding-right: @input-padding-vertical-base;\n padding-left: @font-size-sm + @control-padding-horizontal;\n }\n }\n\n // ======================== Selections ========================\n .@{select-prefix-cls}-selection-item {\n .@{select-prefix-cls}-rtl& {\n text-align: right;\n }\n // It's ok not to do this, but 24px makes bottom narrow in view should adjust\n &-content {\n .@{select-prefix-cls}-rtl& {\n margin-right: 0;\n margin-left: (@padding-xs / 2);\n text-align: right;\n }\n }\n }\n\n // ========================== Input ==========================\n .@{select-prefix-cls}-selection-search {\n &-mirror {\n .@{select-prefix-cls}-rtl& {\n right: 0;\n left: auto;\n }\n }\n }\n\n // ======================= Placeholder =======================\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal;\n left: auto;\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-sm;\n }\n }\n }\n}\n\n// single\n@selection-item-padding: ceil(@font-size-base * 1.25);\n\n.@{select-prefix-cls}-single {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: 0;\n left: 9px;\n text-align: right;\n }\n }\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-base;\n left: @input-padding-horizontal-base + @font-size-base;\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @selection-item-padding;\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n &:not(.@{select-prefix-cls}-customize-input) {\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-sm - 1px;\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @font-size-base * 1.5;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@divider-prefix-cls: ~'@{ant-prefix}-divider';\n\n.@{divider-prefix-cls} {\n .reset-component();\n\n border-top: @border-width-base solid @divider-color;\n\n &-vertical {\n position: relative;\n top: -0.06em;\n display: inline-block;\n height: 0.9em;\n margin: 0 8px;\n vertical-align: middle;\n border-top: 0;\n border-left: @border-width-base solid @divider-color;\n }\n\n &-horizontal {\n display: flex;\n clear: both;\n width: 100%;\n min-width: 100%; // Fix https://github.com/ant-design/ant-design/issues/10914\n margin: 24px 0;\n }\n\n &-horizontal&-with-text {\n display: flex;\n margin: 16px 0;\n color: @heading-color;\n font-weight: 500;\n font-size: @font-size-lg;\n white-space: nowrap;\n text-align: center;\n border-top: 0;\n border-top-color: @divider-color;\n\n &::before,\n &::after {\n position: relative;\n top: 50%;\n width: 50%;\n border-top: @border-width-base solid transparent;\n // Chrome not accept `inherit` in `border-top`\n border-top-color: inherit;\n border-bottom: 0;\n transform: translateY(50%);\n content: '';\n }\n }\n\n &-horizontal&-with-text-left {\n &::before {\n top: 50%;\n width: @divider-orientation-margin;\n }\n &::after {\n top: 50%;\n width: 100% - @divider-orientation-margin;\n }\n }\n\n &-horizontal&-with-text-right {\n &::before {\n top: 50%;\n width: 100% - @divider-orientation-margin;\n }\n &::after {\n top: 50%;\n width: @divider-orientation-margin;\n }\n }\n\n &-inner-text {\n display: inline-block;\n padding: 0 @divider-text-padding;\n }\n\n &-dashed {\n background: none;\n border-color: @divider-color;\n border-style: dashed;\n border-width: @border-width-base 0 0;\n }\n\n &-horizontal&-with-text&-dashed {\n border-top: 0;\n &::before,\n &::after {\n border-style: dashed none none;\n }\n }\n\n &-vertical&-dashed {\n border-width: 0 0 0 @border-width-base;\n }\n\n &-plain&-with-text {\n color: @text-color;\n font-weight: normal;\n font-size: @font-size-base;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@divider-prefix-cls: ~'@{ant-prefix}-divider';\n\n.@{divider-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-horizontal&-with-text-left {\n &::before {\n .@{divider-prefix-cls}-rtl& {\n width: 100% - @divider-orientation-margin;\n }\n }\n &::after {\n .@{divider-prefix-cls}-rtl& {\n width: @divider-orientation-margin;\n }\n }\n }\n\n &-horizontal&-with-text-right {\n &::before {\n .@{divider-prefix-cls}-rtl& {\n width: @divider-orientation-margin;\n }\n }\n &::after {\n .@{divider-prefix-cls}-rtl& {\n width: 100% - @divider-orientation-margin;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './customize.less';\n\n@list-prefix-cls: ~'@{ant-prefix}-list';\n\n.@{list-prefix-cls} {\n .reset-component();\n\n position: relative;\n\n * {\n outline: none;\n }\n\n &-pagination {\n margin-top: @margin-lg;\n text-align: right;\n\n // https://github.com/ant-design/ant-design/issues/20037\n .@{ant-prefix}-pagination-options {\n text-align: left;\n }\n }\n\n &-more {\n margin-top: @margin-sm;\n text-align: center;\n button {\n padding-right: 32px;\n padding-left: 32px;\n }\n }\n\n &-spin {\n min-height: 40px;\n text-align: center;\n }\n\n &-empty-text {\n padding: @list-empty-text-padding;\n color: @disabled-color;\n font-size: @font-size-base;\n text-align: center;\n }\n\n &-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n &-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: @list-item-padding;\n color: @text-color;\n\n &-meta {\n display: flex;\n flex: 1;\n align-items: flex-start;\n max-width: 100%;\n\n &-avatar {\n margin-right: @list-item-meta-avatar-margin-right;\n }\n &-content {\n flex: 1 0;\n width: 0;\n color: @text-color;\n }\n &-title {\n margin-bottom: 4px;\n color: @text-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n > a {\n color: @text-color;\n transition: all 0.3s;\n &:hover {\n color: @primary-color;\n }\n }\n }\n &-description {\n color: @text-color-secondary;\n font-size: @list-item-meta-description-font-size;\n line-height: @line-height-base;\n }\n }\n &-action {\n flex: 0 0 auto;\n margin-left: 48px;\n padding: 0;\n font-size: 0;\n list-style: none;\n\n & > li {\n position: relative;\n display: inline-block;\n padding: 0 @padding-xs;\n color: @text-color-secondary;\n font-size: @font-size-base;\n line-height: @line-height-base;\n text-align: center;\n\n &:first-child {\n padding-left: 0;\n }\n }\n\n &-split {\n position: absolute;\n top: 50%;\n right: 0;\n width: 1px;\n height: 14px;\n margin-top: -7px;\n background-color: @border-color-split;\n }\n }\n }\n\n &-header {\n background: @list-header-background;\n }\n\n &-footer {\n background: @list-footer-background;\n }\n\n &-header,\n &-footer {\n padding-top: @padding-sm;\n padding-bottom: @padding-sm;\n }\n\n &-empty {\n padding: @padding-md 0;\n color: @text-color-secondary;\n font-size: 12px;\n text-align: center;\n }\n\n &-split &-item {\n border-bottom: 1px solid @border-color-split;\n &:last-child {\n border-bottom: none;\n }\n }\n\n &-split &-header {\n border-bottom: 1px solid @border-color-split;\n }\n\n &-split&-empty &-footer {\n border-top: 1px solid @border-color-split;\n }\n\n &-loading &-spin-nested-loading {\n min-height: 32px;\n }\n\n &-split&-something-after-last-item .@{ant-prefix}-spin-container > &-items > &-item:last-child {\n border-bottom: 1px solid @border-color-split;\n }\n\n &-lg &-item {\n padding: @list-item-padding-lg;\n }\n\n &-sm &-item {\n padding: @list-item-padding-sm;\n }\n\n &-vertical &-item {\n align-items: initial;\n\n &-main {\n display: block;\n flex: 1;\n }\n\n &-extra {\n margin-left: 40px;\n }\n\n &-meta {\n margin-bottom: @list-item-meta-margin-bottom;\n\n &-title {\n margin-bottom: @list-item-meta-title-margin-bottom;\n color: @heading-color;\n font-size: @font-size-lg;\n line-height: 24px;\n }\n }\n\n &-action {\n margin-top: @padding-md;\n margin-left: auto;\n\n > li {\n padding: 0 @padding-md;\n &:first-child {\n padding-left: 0;\n }\n }\n }\n }\n\n &-grid .@{ant-prefix}-col > &-item {\n display: block;\n max-width: 100%;\n margin-bottom: @margin-md;\n padding-top: 0;\n padding-bottom: 0;\n border-bottom: none;\n }\n\n // ============================ without flex ============================\n &-item-no-flex {\n display: block;\n }\n\n // Horizontal\n &:not(.@{list-prefix-cls}-vertical) {\n .@{list-prefix-cls}-item-no-flex {\n .@{list-prefix-cls}-item-action {\n float: right;\n }\n }\n }\n}\n\n@import './bordered';\n@import './responsive';\n@import './rtl';\n","@import '../../style/themes/index';\n\n.@{list-prefix-cls}-bordered {\n border: 1px solid @border-color-base;\n border-radius: @border-radius-base;\n .@{list-prefix-cls}-header {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-footer {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-item {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-pagination {\n margin: @margin-md @margin-lg;\n }\n\n &.@{list-prefix-cls}-sm {\n .@{list-prefix-cls}-item {\n padding: @list-item-padding-sm;\n }\n .@{list-prefix-cls}-header,\n .@{list-prefix-cls}-footer {\n padding: @list-item-padding-sm;\n }\n }\n\n &.@{list-prefix-cls}-lg {\n .@{list-prefix-cls}-item {\n padding: @list-item-padding-lg;\n }\n .@{list-prefix-cls}-header,\n .@{list-prefix-cls}-footer {\n padding: @list-item-padding-lg;\n }\n }\n}\n","@media screen and (max-width: @screen-md) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n margin-left: 24px;\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n margin-left: 24px;\n }\n }\n }\n}\n\n@media screen and (max-width: @screen-sm) {\n .@{list-prefix-cls} {\n &-item {\n flex-wrap: wrap;\n &-action {\n margin-left: 12px;\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n flex-wrap: wrap-reverse;\n &-main {\n min-width: 220px;\n }\n &-extra {\n margin: auto auto 16px;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './customize.less';\n\n@list-prefix-cls: ~'@{ant-prefix}-list';\n\n.@{list-prefix-cls} {\n &-rtl {\n direction: rtl;\n text-align: right;\n\n // fix for virtual scroll style attribute > (direction:ltr)\n .ReactVirtualized__List .@{list-prefix-cls}-item {\n direction: rtl;\n }\n }\n\n &-pagination {\n .@{list-prefix-cls}-rtl & {\n text-align: left;\n }\n }\n\n &-item {\n &-meta {\n &-avatar {\n .@{list-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: @list-item-meta-avatar-margin-right;\n }\n }\n }\n\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 48px;\n margin-left: 0;\n }\n\n & > li:first-child {\n .@{list-prefix-cls}.@{list-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: @padding-md;\n }\n }\n\n &-split {\n .@{list-prefix-cls}-rtl & {\n right: auto;\n left: 0;\n }\n }\n }\n }\n\n &-vertical &-item {\n &-extra {\n .@{list-prefix-cls}-rtl& {\n margin-right: 40px;\n margin-left: 0;\n }\n }\n\n &-action {\n .@{list-prefix-cls}-rtl& {\n margin-right: auto;\n }\n\n > li {\n &:first-child {\n .@{list-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: @padding-md;\n }\n }\n }\n }\n }\n\n // Horizontal\n &:not(.@{list-prefix-cls}-vertical) {\n .@{list-prefix-cls}-item-no-flex {\n .@{list-prefix-cls}-item-action {\n .@{list-prefix-cls}-rtl & {\n float: left;\n }\n }\n }\n }\n}\n\n// responsive\n@media screen and (max-width: @screen-md) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 24px;\n margin-left: 0;\n }\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n .@{list-prefix-cls}-rtl & {\n margin-right: 24px;\n margin-left: 0;\n }\n }\n }\n }\n}\n\n@media screen and (max-width: @screen-sm) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 22px;\n margin-left: 0;\n }\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n // to override margins on rtl view\n .@{list-prefix-cls}-rtl& {\n margin: auto auto 16px;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@space-prefix-cls: ~'@{ant-prefix}-space';\n@space-item-prefix-cls: ~'@{ant-prefix}-space-item';\n\n.@{space-prefix-cls} {\n display: inline-flex;\n &-vertical {\n flex-direction: column;\n }\n\n &-align {\n &-center {\n align-items: center;\n }\n &-start {\n align-items: flex-start;\n }\n &-end {\n align-items: flex-end;\n }\n &-baseline {\n align-items: baseline;\n }\n }\n}\n\n.@{space-item-prefix-cls} {\n &:empty {\n display: none;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@space-prefix-cls: ~'@{ant-prefix}-space';\n\n.@{space-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@radio-prefix-cls: ~'@{ant-prefix}-radio';\n@radio-group-prefix-cls: ~'@{radio-prefix-cls}-group';\n@radio-inner-prefix-cls: ~'@{radio-prefix-cls}-inner';\n@radio-duration: 0.3s;\n@radio-focus-shadow: 0 0 0 3px fade(@radio-dot-color, 8%);\n@radio-button-focus-shadow: @radio-focus-shadow;\n\n.@{radio-group-prefix-cls} {\n .reset-component();\n\n display: inline-block;\n font-size: 0;\n line-height: unset;\n\n .@{ant-prefix}-badge-count {\n z-index: 1;\n }\n\n > .@{ant-prefix}-badge:not(:first-child) > .@{radio-prefix-cls}-button-wrapper {\n border-left: none;\n }\n}\n\n// 一般状态\n.@{radio-prefix-cls}-wrapper {\n .reset-component();\n position: relative;\n display: inline-flex;\n align-items: baseline;\n margin-right: @radio-wrapper-margin-right;\n cursor: pointer;\n\n &::after {\n display: inline-block;\n width: 0;\n overflow: hidden;\n content: '\\a0';\n }\n}\n\n.@{radio-prefix-cls} {\n .reset-component();\n\n position: relative;\n top: @radio-top;\n display: inline-block;\n outline: none;\n cursor: pointer;\n\n .@{radio-prefix-cls}-wrapper:hover &,\n &:hover .@{radio-inner-prefix-cls},\n &-input:focus + .@{radio-inner-prefix-cls} {\n border-color: @radio-dot-color;\n }\n\n &-input:focus + .@{radio-inner-prefix-cls} {\n box-shadow: @radio-focus-shadow;\n }\n\n &-checked::after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 1px solid @radio-dot-color;\n border-radius: 50%;\n visibility: hidden;\n animation: antRadioEffect 0.36s ease-in-out;\n animation-fill-mode: both;\n content: '';\n }\n\n &:hover::after,\n .@{radio-prefix-cls}-wrapper:hover &::after {\n visibility: visible;\n }\n\n &-inner {\n &::after {\n position: absolute;\n top: ((@radio-size - @radio-dot-size) / 2) - @radio-border-width;\n left: ((@radio-size - @radio-dot-size) / 2) - @radio-border-width;\n display: block;\n width: @radio-dot-size;\n height: @radio-dot-size;\n background-color: @radio-dot-color;\n border-top: 0;\n border-left: 0;\n border-radius: @radio-dot-size;\n transform: scale(0);\n opacity: 0;\n transition: all @radio-duration @ease-in-out-circ;\n content: ' ';\n }\n\n position: relative;\n top: 0;\n left: 0;\n display: block;\n width: @radio-size;\n height: @radio-size;\n background-color: @radio-button-bg;\n border-color: @border-color-base;\n border-style: solid;\n border-width: @radio-border-width;\n border-radius: 50%;\n transition: all @radio-duration;\n }\n\n &-input {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n cursor: pointer;\n opacity: 0;\n }\n}\n\n// 选中状态\n.@{radio-prefix-cls}-checked {\n .@{radio-inner-prefix-cls} {\n border-color: @radio-dot-color;\n &::after {\n transform: scale(1);\n opacity: 1;\n transition: all @radio-duration @ease-in-out-circ;\n }\n }\n}\n\n.@{radio-prefix-cls}-disabled {\n cursor: not-allowed;\n\n .@{radio-inner-prefix-cls} {\n background-color: @input-disabled-bg;\n border-color: @border-color-base !important;\n cursor: not-allowed;\n &::after {\n background-color: @radio-dot-disabled-color;\n }\n }\n\n .@{radio-prefix-cls}-input {\n cursor: not-allowed;\n }\n\n & + span {\n color: @disabled-color;\n cursor: not-allowed;\n }\n}\n\nspan.@{radio-prefix-cls} + * {\n padding-right: 8px;\n padding-left: 8px;\n}\n\n.@{radio-prefix-cls}-button-wrapper {\n position: relative;\n display: inline-block;\n height: @btn-height-base;\n margin: 0;\n padding: 0 @padding-md - 1px;\n color: @radio-button-color;\n font-size: @font-size-base;\n line-height: @btn-height-base - 2px;\n background: @radio-button-bg;\n border: @border-width-base @border-style-base @border-color-base;\n // strange align fix for chrome but works\n // https://gw.alipayobjects.com/zos/rmsportal/VFTfKXJuogBAXcvfAUWJ.gif\n border-top-width: @border-width-base + 0.02px;\n border-left-width: 0;\n cursor: pointer;\n transition: color 0.3s, background 0.3s, border-color 0.3s, box-shadow 0.3s;\n\n a {\n color: @radio-button-color;\n }\n\n > .@{radio-prefix-cls}-button {\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n width: 100%;\n height: 100%;\n }\n\n .@{radio-group-prefix-cls}-large & {\n height: @input-height-lg;\n font-size: @font-size-lg;\n line-height: @input-height-lg - 2px;\n }\n\n .@{radio-group-prefix-cls}-small & {\n height: @input-height-sm;\n padding: 0 @control-padding-horizontal-sm - 1px;\n line-height: @input-height-sm - 2px;\n }\n\n &:not(:first-child) {\n &::before {\n position: absolute;\n top: @border-width-base * -1;\n left: -1px;\n display: block;\n box-sizing: content-box;\n width: 1px;\n height: 100%;\n padding: @border-width-base 0;\n background-color: @border-color-base;\n transition: background-color 0.3s;\n content: '';\n }\n }\n\n &:first-child {\n border-left: @border-width-base @border-style-base @border-color-base;\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n\n &:last-child {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n &:first-child:last-child {\n border-radius: @border-radius-base;\n }\n\n &:hover {\n position: relative;\n color: @radio-dot-color;\n }\n\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n\n .@{radio-prefix-cls}-inner,\n input[type='checkbox'],\n input[type='radio'] {\n width: 0;\n height: 0;\n opacity: 0;\n pointer-events: none;\n }\n\n &-checked:not(&-disabled) {\n z-index: 1;\n color: @radio-dot-color;\n background: @radio-button-checked-bg;\n border-color: @radio-dot-color;\n\n &::before {\n background-color: @radio-dot-color;\n }\n\n &:first-child {\n border-color: @radio-dot-color;\n }\n\n &:hover {\n color: @radio-button-hover-color;\n border-color: @radio-button-hover-color;\n &::before {\n background-color: @radio-button-hover-color;\n }\n }\n\n &:active {\n color: @radio-button-active-color;\n border-color: @radio-button-active-color;\n &::before {\n background-color: @radio-button-active-color;\n }\n }\n\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n }\n\n .@{radio-group-prefix-cls}-solid &-checked:not(&-disabled) {\n color: @radio-solid-checked-color;\n background: @radio-dot-color;\n border-color: @radio-dot-color;\n &:hover {\n color: @radio-solid-checked-color;\n background: @radio-button-hover-color;\n border-color: @radio-button-hover-color;\n }\n &:active {\n color: @radio-solid-checked-color;\n background: @radio-button-active-color;\n border-color: @radio-button-active-color;\n }\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n }\n\n &-disabled {\n color: @disabled-color;\n background-color: @input-disabled-bg;\n border-color: @border-color-base;\n cursor: not-allowed;\n\n &:first-child,\n &:hover {\n color: @disabled-color;\n background-color: @input-disabled-bg;\n border-color: @border-color-base;\n }\n &:first-child {\n border-left-color: @border-color-base;\n }\n }\n\n &-disabled&-checked {\n color: @radio-disabled-button-checked-color;\n background-color: @radio-disabled-button-checked-bg;\n border-color: @border-color-base;\n box-shadow: none;\n }\n}\n\n@keyframes antRadioEffect {\n 0% {\n transform: scale(1);\n opacity: 0.5;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@radio-prefix-cls: ~'@{ant-prefix}-radio';\n@radio-group-prefix-cls: ~'@{radio-prefix-cls}-group';\n@radio-prefix-cls-button-wrapper: ~'@{radio-prefix-cls}-button-wrapper';\n\n.@{radio-group-prefix-cls} {\n &&-rtl {\n direction: rtl;\n }\n}\n\n// 一般状态\n.@{radio-prefix-cls}-wrapper {\n &&-rtl {\n margin-right: 0;\n margin-left: @radio-wrapper-margin-right;\n direction: rtl;\n }\n}\n\n.@{radio-prefix-cls-button-wrapper} {\n &&-rtl {\n border-right-width: 0;\n border-left-width: @border-width-base;\n }\n\n &:not(:first-child) {\n &::before {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n right: -1px;\n left: 0;\n }\n }\n }\n\n &:first-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-right: @border-width-base @border-style-base @border-color-base;\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n .@{radio-prefix-cls-button-wrapper}-checked:not([class*=~\"' @{radio-prefix-cls}-button-wrapper-disabled'\"])& {\n border-right-color: @radio-button-hover-color;\n }\n }\n\n &:last-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n &-disabled {\n &:first-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-right-color: @border-color-base;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tag-prefix-cls: ~'@{ant-prefix}-tag';\n\n.@{tag-prefix-cls} {\n .reset-component();\n\n display: inline-block;\n height: auto;\n margin-right: 8px;\n padding: 0 7px;\n font-size: @tag-font-size;\n line-height: @tag-line-height;\n white-space: nowrap;\n background: @tag-default-bg;\n border: @border-width-base @border-style-base @border-color-base;\n border-radius: @border-radius-base;\n opacity: 1;\n transition: all 0.3s;\n\n &,\n a,\n a:hover {\n color: @tag-default-color;\n }\n\n > a:first-child:last-child {\n display: inline-block;\n margin: 0 -8px;\n padding: 0 8px;\n }\n\n &-close-icon {\n margin-left: 3px;\n color: @text-color-secondary;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.3s;\n\n &:hover {\n color: @heading-color;\n }\n }\n\n &-has-color {\n border-color: transparent;\n &,\n a,\n a:hover,\n .@{iconfont-css-prefix}-close,\n .@{iconfont-css-prefix}-close:hover {\n color: @text-color-inverse;\n }\n }\n\n &-checkable {\n background-color: transparent;\n border-color: transparent;\n cursor: pointer;\n &:not(&-checked):hover {\n color: @primary-color;\n }\n &:active,\n &-checked {\n color: @text-color-inverse;\n }\n &-checked {\n background-color: @primary-6;\n }\n &:active {\n background-color: @primary-7;\n }\n }\n\n &-hidden {\n display: none;\n }\n\n // mixin to iterate over colors and create CSS class for each one\n .make-color-classes(@i: length(@preset-colors)) when (@i > 0) {\n .make-color-classes(@i - 1);\n @color: extract(@preset-colors, @i);\n @lightColor: '@{color}-1';\n @lightBorderColor: '@{color}-3';\n @darkColor: '@{color}-6';\n @textColor: '@{color}-7';\n &-@{color} {\n color: @@textColor;\n background: @@lightColor;\n border-color: @@lightBorderColor;\n }\n &-@{color}-inverse {\n color: @text-color-inverse;\n background: @@darkColor;\n border-color: @@darkColor;\n }\n }\n\n .make-status-color-classes(@color, @status) {\n @lightColor: '@{color}-1';\n @lightBorderColor: '@{color}-3';\n @darkColor: '@{color}-6';\n &-@{status} {\n color: @@darkColor;\n background: @@lightColor;\n border-color: @@lightBorderColor;\n }\n }\n\n .make-color-classes();\n\n .make-status-color-classes('green', success);\n .make-status-color-classes('blue', processing);\n .make-status-color-classes('red', error);\n .make-status-color-classes('orange', warning);\n\n // To ensure that a space will be placed between character and `Icon`.\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n margin-left: 7px;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tag-prefix-cls: ~'@{ant-prefix}-tag';\n\n.@{tag-prefix-cls} {\n &&-rtl {\n margin-right: 0;\n margin-left: 8px;\n direction: rtl;\n text-align: right;\n }\n\n &-close-icon {\n .@{tag-prefix-cls}-rtl & {\n margin-right: 3px;\n margin-left: 0;\n }\n }\n\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n .@{tag-prefix-cls}-rtl& {\n margin-right: 7px;\n margin-left: 0;\n }\n }\n}\n","// Creating own less file because directly in tsx it's not possible: https://github.com/webpack-contrib/mini-css-extract-plugin/issues/73\n@import \"~antd/lib/style/themes/default\";\n@import \"~antd/lib/style/core/motion\";\n@import \"~antd/lib/form/style/index\";\n@import \"~antd/lib/input/style/index\";\n@import \"~antd/lib/checkbox/style/index\";\n@import \"~antd/lib/tooltip/style/index\";\n@import \"~antd/lib/alert/style/index\";\n@import \"~antd/lib/spin/style/index\";\n@import \"~antd/lib/message/style/index\";\n@import \"~antd/lib/modal/style/index\";\n@import \"~antd/lib/button/style/index\";\n@import \"~antd/lib/select/style/index\";\n@import \"~antd/lib/divider/style/index\";\n@import \"~antd/lib/list/style/index\";\n@import \"~antd/lib/space/style/index\";\n@import \"~antd/lib/radio/style/index\";\n@import \"~antd/lib/tag/style/index\";\n\n.rpm-wpc-antd-list-item-meta-title {\n margin-top: 0 !important;\n}\n\n// Fix select inputs in WordPress backend\n.rpm-wpc-antd-select-single:not(.rpm-wpc-antd-select-customize-input) .rpm-wpc-antd-select-selector {\n box-sizing: border-box;\n}\n\n.rpm-wpc-antd-select-item {\n line-height: 2;\n}\n\n.rpm-wpc-antd-radio-inner::after {\n top: 4px;\n left: 4px;\n}\n\n// Do not show validate icon in any form, causes issues with input form groups (installation type, license key)\n.rpm-wpc-antd-form-item-children-icon {\n display: none;\n}\n\n// Fix modal issues with admin bar in plugins list\nbody.rpm-wpc-antd-modal-open {\n #wpadminbar,\n #adminmenuwrap {\n z-index: 999;\n }\n}\n\n// Fix select dropdowns and messages in modals\n.rpm-wpc-antd-select-dropdown, .rpm-wpc-antd-message {\n z-index: 105000000;\n}\n\n.rpm-wpc-antd-checkbox-inner::after {\n margin-top: -1px;\n}\n\n// The hover animation is broken on most WordPress themes, we need to deactivate it\n.rpm-wpc-antd-checkbox-wrapper:hover .rpm-wpc-antd-checkbox::after,\n.rpm-wpc-antd-checkbox:hover::after {\n visibility: hidden !important;\n}\n\n@ant-prefix: rpm-wpc-antd;"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"index.css","mappings":"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","sources":["webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/color/tinyColor.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/motion.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/fade.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/move.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/other.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/slide.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion/zoom.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/core/motion.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/components.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/inline.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/horizontal.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/vertical.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/status.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/reset.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/form/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/affix.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/compatibility.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/allow-clear.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/clearfix.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/search-input.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/input/style/IE11.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/checkbox/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/checkbox/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tooltip/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tooltip/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/alert/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/alert/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/spin/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/size.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/spin/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/message/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/message/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/modal-mask.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/modal.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/box.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/confirm.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/modal/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/mixin.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/button/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/single.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/multiple.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/style/mixins/iconfont.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/select/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/divider/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/divider/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/bordered.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/responsive.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/list/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/space/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/space/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/radio/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/radio/style/rtl.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tag/style/index.less","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/.pnpm/antd@4.15.5_zp7ji4foiagey5wp7r374ckidi/node_modules/antd/lib/tag/style/rtl.less","webpack:///./lib/style/antd.less"],"sourcesContent":["/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n.tinyColorMixin() {\n@functions: ~`(function() {\n// TinyColor v1.4.1\n// https://github.com/bgrins/TinyColor\n// 2016-07-07, Brian Grinstead, MIT License\nvar trimLeft = /^\\s+/,\n trimRight = /\\s+$/,\n tinyCounter = 0,\n mathRound = Math.round,\n mathMin = Math.min,\n mathMax = Math.max,\n mathRandom = Math.random;\n\nfunction tinycolor (color, opts) {\n\n color = (color) ? color : '';\n opts = opts || { };\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n\n var rgb = inputToRGB(color);\n this._originalInput = color,\n this._r = rgb.r,\n this._g = rgb.g,\n this._b = rgb.b,\n this._a = rgb.a,\n this._roundA = mathRound(100*this._a) / 100,\n this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by inputToRgb\n if (this._r < 1) { this._r = mathRound(this._r); }\n if (this._g < 1) { this._g = mathRound(this._g); }\n if (this._b < 1) { this._b = mathRound(this._b); }\n\n this._ok = rgb.ok;\n this._tc_id = tinyCounter++;\n}\n\ntinycolor.prototype = {\n isDark: function() {\n return this.getBrightness() < 128;\n },\n isLight: function() {\n return !this.isDark();\n },\n isValid: function() {\n return this._ok;\n },\n getOriginalInput: function() {\n return this._originalInput;\n },\n getFormat: function() {\n return this._format;\n },\n getAlpha: function() {\n return this._a;\n },\n getBrightness: function() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r/255;\n GsRGB = rgb.g/255;\n BsRGB = rgb.b/255;\n\n if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}\n if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}\n if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}\n return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);\n },\n setAlpha: function(value) {\n this._a = boundAlpha(value);\n this._roundA = mathRound(100*this._a) / 100;\n return this;\n },\n toHsv: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };\n },\n toHsvString: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);\n return (this._a == 1) ?\n \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" :\n \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \"+ this._roundA + \")\";\n },\n toHsl: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };\n },\n toHslString: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);\n return (this._a == 1) ?\n \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" :\n \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \"+ this._roundA + \")\";\n },\n toHex: function(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function(allow3Char) {\n return '#' + this.toHex(allow3Char);\n },\n toHex8: function(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function(allow4Char) {\n return '#' + this.toHex8(allow4Char);\n },\n toRgb: function() {\n return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };\n },\n toRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \")\" :\n \"rgba(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function() {\n return { r: mathRound(bound01(this._r, 255) * 100) + \"%\", g: mathRound(bound01(this._g, 255) * 100) + \"%\", b: mathRound(bound01(this._b, 255) * 100) + \"%\", a: this._a };\n },\n toPercentageRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%)\" :\n \"rgba(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function() {\n if (this._a === 0) {\n return \"transparent\";\n }\n\n if (this._a < 1) {\n return false;\n }\n\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function(secondColor) {\n var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n\n return \"progid:DXImageTransform.Microsoft.gradient(\"+gradientType+\"startColorstr=\"+hex8String+\",endColorstr=\"+secondHex8String+\")\";\n },\n toString: function(format) {\n var formatSet = !!format;\n format = format || this._format;\n\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n\n return formattedString || this.toHexString();\n },\n clone: function() {\n return tinycolor(this.toString());\n },\n\n _applyModification: function(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function() {\n return this._applyModification(lighten, arguments);\n },\n brighten: function() {\n return this._applyModification(brighten, arguments);\n },\n darken: function() {\n return this._applyModification(darken, arguments);\n },\n desaturate: function() {\n return this._applyModification(desaturate, arguments);\n },\n saturate: function() {\n return this._applyModification(saturate, arguments);\n },\n greyscale: function() {\n return this._applyModification(greyscale, arguments);\n },\n spin: function() {\n return this._applyModification(spin, arguments);\n },\n\n _applyCombination: function(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function() {\n return this._applyCombination(analogous, arguments);\n },\n complement: function() {\n return this._applyCombination(complement, arguments);\n },\n monochromatic: function() {\n return this._applyCombination(monochromatic, arguments);\n },\n splitcomplement: function() {\n return this._applyCombination(splitcomplement, arguments);\n },\n triad: function() {\n return this._applyCombination(triad, arguments);\n },\n tetrad: function() {\n return this._applyCombination(tetrad, arguments);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function(color, opts) {\n if (typeof color == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n }\n else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n\n if (typeof color == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n\n a = boundAlpha(a);\n\n return {\n ok: ok,\n format: color.format || format,\n r: mathMin(255, mathMax(rgb.r, 0)),\n g: mathMin(255, mathMax(rgb.g, 0)),\n b: mathMin(255, mathMax(rgb.b, 0)),\n a: a\n };\n}\n\n// Conversion Functions\n// --------------------\n\n// rgbToHsl, rgbToHsv, hslToRgb, hsvToRgb modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n\n// rgbToRgb\n// Handle bounds / percentage checking to conform to CSS color spec\n// <http://www.w3.org/TR/css3-color/>\n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b){\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// rgbToHsl\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if(max == min) {\n h = s = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n\n h /= 6;\n }\n\n return { h: h, s: s, l: l };\n}\n\n// hslToRgb\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n\n function hue2rgb(p, q, t) {\n if(t < 0) t += 1;\n if(t > 1) t -= 1;\n if(t < 1/6) return p + (q - p) * 6 * t;\n if(t < 1/2) return q;\n if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;\n return p;\n }\n\n if(s === 0) {\n r = g = b = l; // achromatic\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// rgbToHsv\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, v = max;\n\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if(max == min) {\n h = 0; // achromatic\n }\n else {\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n\n// hsvToRgb\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\n function hsvToRgb(h, s, v) {\n\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// rgbToHex\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// rgbaToHex\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16)),\n pad2(convertDecimalToHex(a))\n ];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// rgbaToArgbHex\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n return hex.join(\"\");\n}\n\n// equals\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) { return false; }\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\n\ntinycolor.random = function() {\n return tinycolor.fromRatio({\n r: mathRandom(),\n g: mathRandom(),\n b: mathRandom()\n });\n};\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>\n\nfunction desaturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction saturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\n\nfunction lighten (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\nfunction brighten(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var rgb = tinycolor(color).toRgb();\n rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));\n rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));\n rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));\n return tinycolor(rgb);\n}\n\nfunction darken (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>\n\nfunction complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\n\nfunction triad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction tetrad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),\n tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})\n ];\n}\n\nfunction analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n\n for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\n\nfunction monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h, s = hsv.s, v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n\n while (results--) {\n ret.push(tinycolor({ h: h, s: s, v: v}));\n v = (v + modification) % 1;\n }\n\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function(color1, color2, amount) {\n amount = (amount === 0) ? 0 : (amount || 50);\n\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n\n var p = amount / 100;\n\n var rgba = {\n r: ((rgb2.r - rgb1.r) * p) + rgb1.r,\n g: ((rgb2.g - rgb1.g) * p) + rgb1.g,\n b: ((rgb2.b - rgb1.b) * p) + rgb1.b,\n a: ((rgb2.a - rgb1.a) * p) + rgb1.a\n };\n\n return tinycolor(rgba);\n};\n\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n\n// contrast\n// Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\ntinycolor.readability = function(color1, color2) {\n var c1 = tinycolor(color1);\n var c2 = tinycolor(color2);\n return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);\n};\n\n// isReadable\n// Ensure that foreground and background color combinations meet WCAG2 guidelines.\n// The third argument is an optional Object.\n// the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';\n// the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.\n// If the entire object is absent, isReadable defaults to {level:\"AA\",size:\"small\"}.\n\n// *Example*\n// tinycolor.isReadable(\"#000\", \"#111\") => false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function(color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n\n out = false;\n\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n\n};\n\n// mostReadable\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function(baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size ;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors ;\n level = args.level;\n size = args.size;\n\n for (var i= 0; i < colorList.length ; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n\n if (tinycolor.isReadable(baseColor, bestColor, {\"level\":level,\"size\":size}) || !includeFallbackColors) {\n return bestColor;\n }\n else {\n args.includeFallbackColors=false;\n return tinycolor.mostReadable(baseColor,[\"#fff\", \"#000\"],args);\n }\n};\n\n// Big List of Colors\n// ------------------\n// <http://www.w3.org/TR/css3-color/#svg-color>\nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\n darkblue: \"00008b\",\n darkcyan: \"008b8b\",\n darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\",\n darkgreen: \"006400\",\n darkgrey: \"a9a9a9\",\n darkkhaki: \"bdb76b\",\n darkmagenta: \"8b008b\",\n darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\",\n darkorchid: \"9932cc\",\n darkred: \"8b0000\",\n darksalmon: \"e9967a\",\n darkseagreen: \"8fbc8f\",\n darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\",\n darkslategrey: \"2f4f4f\",\n darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\",\n deeppink: \"ff1493\",\n deepskyblue: \"00bfff\",\n dimgray: \"696969\",\n dimgrey: \"696969\",\n dodgerblue: \"1e90ff\",\n firebrick: \"b22222\",\n floralwhite: \"fffaf0\",\n forestgreen: \"228b22\",\n fuchsia: \"f0f\",\n gainsboro: \"dcdcdc\",\n ghostwhite: \"f8f8ff\",\n gold: \"ffd700\",\n goldenrod: \"daa520\",\n gray: \"808080\",\n green: \"008000\",\n greenyellow: \"adff2f\",\n grey: \"808080\",\n honeydew: \"f0fff0\",\n hotpink: \"ff69b4\",\n indianred: \"cd5c5c\",\n indigo: \"4b0082\",\n ivory: \"fffff0\",\n khaki: \"f0e68c\",\n lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\n lightgoldenrodyellow: \"fafad2\",\n lightgray: \"d3d3d3\",\n lightgreen: \"90ee90\",\n lightgrey: \"d3d3d3\",\n lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\",\n lightseagreen: \"20b2aa\",\n lightskyblue: \"87cefa\",\n lightslategray: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\n mediumaquamarine: \"66cdaa\",\n mediumblue: \"0000cd\",\n mediumorchid: \"ba55d3\",\n mediumpurple: \"9370db\",\n mediumseagreen: \"3cb371\",\n mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\",\n mediumturquoise: \"48d1cc\",\n mediumvioletred: \"c71585\",\n midnightblue: \"191970\",\n mintcream: \"f5fffa\",\n mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\",\n navajowhite: \"ffdead\",\n navy: \"000080\",\n oldlace: \"fdf5e6\",\n olive: \"808000\",\n olivedrab: \"6b8e23\",\n orange: \"ffa500\",\n orangered: \"ff4500\",\n orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\",\n palegreen: \"98fb98\",\n paleturquoise: \"afeeee\",\n palevioletred: \"db7093\",\n papayawhip: \"ffefd5\",\n peachpuff: \"ffdab9\",\n peru: \"cd853f\",\n pink: \"ffc0cb\",\n plum: \"dda0dd\",\n powderblue: \"b0e0e6\",\n purple: \"800080\",\n rebeccapurple: \"663399\",\n red: \"f00\",\n rosybrown: \"bc8f8f\",\n royalblue: \"4169e1\",\n saddlebrown: \"8b4513\",\n salmon: \"fa8072\",\n sandybrown: \"f4a460\",\n seagreen: \"2e8b57\",\n seashell: \"fff5ee\",\n sienna: \"a0522d\",\n silver: \"c0c0c0\",\n skyblue: \"87ceeb\",\n slateblue: \"6a5acd\",\n slategray: \"708090\",\n slategrey: \"708090\",\n snow: \"fffafa\",\n springgreen: \"00ff7f\",\n steelblue: \"4682b4\",\n tan: \"d2b48c\",\n teal: \"008080\",\n thistle: \"d8bfd8\",\n tomato: \"ff6347\",\n turquoise: \"40e0d0\",\n violet: \"ee82ee\",\n wheat: \"f5deb3\",\n white: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via hexNames[hex]\nvar hexNames = tinycolor.hexNames = flip(names);\n\n// Utilities\n// ---------\n\n// { 'name1': 'val1' } becomes { 'val1': 'name1' }\nfunction flip(o) {\n var flipped = { };\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) { n = \"100%\"; }\n\n var processPercent = isPercentage(n);\n n = mathMin(max, mathMax(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return (n % max) / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return mathMin(1, mathMax(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf('.') != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf('%') != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? '0' + c : '' + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = (n * 100) + \"%\";\n }\n\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return (parseIntFromHex(h) / 255);\n}\n\nvar matchers = (function() {\n\n // <http://www.w3.org/TR/css3-values/#integers>\n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // <http://www.w3.org/TR/css3-values/#number-value>\n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n})();\n\n// isValidCSSUnit\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see matchers above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// stringInputToObject\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns { r, g, b } or { h, s, l } or { h, s, v}\nfunction stringInputToObject(color) {\n\n color = color.replace(trimLeft, '').replace(trimRight, '').toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color == 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: \"name\" };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if ((match = matchers.rgb.exec(color))) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n if ((match = matchers.rgba.exec(color))) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n if ((match = matchers.hsl.exec(color))) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n if ((match = matchers.hsla.exec(color))) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n if ((match = matchers.hsv.exec(color))) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n if ((match = matchers.hsva.exec(color))) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n if ((match = matchers.hex8.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex6.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if ((match = matchers.hex4.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n a: convertHexToDecimal(match[4] + '' + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex3.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n\n return false;\n}\n\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\"level\":\"AA\", \"size\":\"small\"};\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\"level\":level, \"size\":size};\n}\n\nthis.tinycolor = tinycolor;\n\n})()`;\n}\n// It is hacky way to make this function will be compiled preferentially by less\n// resolve error: `ReferenceError: colorPalette is not defined`\n// https://github.com/ant-design/ant-motion/issues/44\n.tinyColorMixin();\n","@import '../themes/index';\n\n.motion-common(@duration: @animation-duration-base) {\n animation-duration: @duration;\n animation-fill-mode: both;\n}\n\n.motion-common-leave(@duration: @animation-duration-base) {\n animation-duration: @duration;\n animation-fill-mode: both;\n}\n\n.make-motion(@className, @keyframeName, @duration: @animation-duration-base) {\n .@{className}-enter,\n .@{className}-appear {\n .motion-common(@duration);\n\n animation-play-state: paused;\n }\n .@{className}-leave {\n .motion-common-leave(@duration);\n\n animation-play-state: paused;\n }\n .@{className}-enter.@{className}-enter-active,\n .@{className}-appear.@{className}-appear-active {\n animation-name: ~'@{keyframeName}In';\n animation-play-state: running;\n }\n .@{className}-leave.@{className}-leave-active {\n animation-name: ~'@{keyframeName}Out';\n animation-play-state: running;\n pointer-events: none;\n }\n}\n",".fade-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: linear;\n }\n .@{name}-leave {\n animation-timing-function: linear;\n }\n}\n\n.fade-motion(fade, antFade);\n\n@keyframes antFadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes antFadeOut {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n",".move-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-out-circ;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-circ;\n }\n}\n\n.move-motion(move-up, antMoveUp);\n.move-motion(move-down, antMoveDown);\n.move-motion(move-left, antMoveLeft);\n.move-motion(move-right, antMoveRight);\n\n@keyframes antMoveDownIn {\n 0% {\n transform: translateY(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveDownOut {\n 0% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateY(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveLeftIn {\n 0% {\n transform: translateX(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveLeftOut {\n 0% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateX(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveRightIn {\n 0% {\n transform: translateX(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveRightOut {\n 0% {\n transform: translateX(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateX(100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n\n@keyframes antMoveUpIn {\n 0% {\n transform: translateY(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n 100% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n}\n\n@keyframes antMoveUpOut {\n 0% {\n transform: translateY(0%);\n transform-origin: 0 0;\n opacity: 1;\n }\n 100% {\n transform: translateY(-100%);\n transform-origin: 0 0;\n opacity: 0;\n }\n}\n","@keyframes loadingCircle {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@click-animating-true: ~\"[@{ant-prefix}-click-animating='true']\";\n@click-animating-with-extra-node-true: ~\"[@{ant-prefix}-click-animating-without-extra-node='true']\";\n\n@{click-animating-true},\n@{click-animating-with-extra-node-true} {\n position: relative;\n}\n\nhtml {\n --antd-wave-shadow-color: @primary-color;\n --scroll-bar: 0;\n}\n\n@click-animating-with-extra-node-true-after: ~'@{click-animating-with-extra-node-true}::after';\n\n@{click-animating-with-extra-node-true-after},\n.@{ant-prefix}-click-animating-node {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n border-radius: inherit;\n box-shadow: 0 0 0 0 @primary-color;\n box-shadow: 0 0 0 0 var(--antd-wave-shadow-color);\n opacity: 0.2;\n animation: fadeEffect 2s @ease-out-circ, waveEffect 0.4s @ease-out-circ;\n animation-fill-mode: forwards;\n content: '';\n pointer-events: none;\n}\n\n@keyframes waveEffect {\n 100% {\n box-shadow: 0 0 0 @primary-color;\n box-shadow: 0 0 0 @wave-animation-width var(--antd-wave-shadow-color);\n }\n}\n\n@keyframes fadeEffect {\n 100% {\n opacity: 0;\n }\n}\n",".slide-motion(@className, @keyframeName) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-out-quint;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-quint;\n }\n}\n\n.slide-motion(slide-up, antSlideUp);\n.slide-motion(slide-down, antSlideDown);\n.slide-motion(slide-left, antSlideLeft);\n.slide-motion(slide-right, antSlideRight);\n\n@keyframes antSlideUpIn {\n 0% {\n transform: scaleY(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleY(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideUpOut {\n 0% {\n transform: scaleY(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleY(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideDownIn {\n 0% {\n transform: scaleY(0.8);\n transform-origin: 100% 100%;\n opacity: 0;\n }\n 100% {\n transform: scaleY(1);\n transform-origin: 100% 100%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideDownOut {\n 0% {\n transform: scaleY(1);\n transform-origin: 100% 100%;\n opacity: 1;\n }\n 100% {\n transform: scaleY(0.8);\n transform-origin: 100% 100%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideLeftIn {\n 0% {\n transform: scaleX(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleX(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideLeftOut {\n 0% {\n transform: scaleX(1);\n transform-origin: 0% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleX(0.8);\n transform-origin: 0% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antSlideRightIn {\n 0% {\n transform: scaleX(0.8);\n transform-origin: 100% 0%;\n opacity: 0;\n }\n 100% {\n transform: scaleX(1);\n transform-origin: 100% 0%;\n opacity: 1;\n }\n}\n\n@keyframes antSlideRightOut {\n 0% {\n transform: scaleX(1);\n transform-origin: 100% 0%;\n opacity: 1;\n }\n 100% {\n transform: scaleX(0.8);\n transform-origin: 100% 0%;\n opacity: 0;\n }\n}\n",".zoom-motion(@className, @keyframeName, @duration: @animation-duration-base) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName, @duration);\n .@{name}-enter,\n .@{name}-appear {\n transform: scale(0); // need this by yiminghe\n opacity: 0;\n animation-timing-function: @ease-out-circ;\n\n &-prepare {\n transform: none;\n }\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-out-circ;\n }\n}\n\n// For Modal, Select choosen item\n.zoom-motion(zoom, antZoom);\n// For Popover, Popconfirm, Dropdown\n.zoom-motion(zoom-big, antZoomBig);\n// For Tooltip\n.zoom-motion(zoom-big-fast, antZoomBig, @animation-duration-fast);\n\n.zoom-motion(zoom-up, antZoomUp);\n.zoom-motion(zoom-down, antZoomDown);\n.zoom-motion(zoom-left, antZoomLeft);\n.zoom-motion(zoom-right, antZoomRight);\n\n@keyframes antZoomIn {\n 0% {\n transform: scale(0.2);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes antZoomOut {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0.2);\n opacity: 0;\n }\n}\n\n@keyframes antZoomBigIn {\n 0% {\n transform: scale(0.8);\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n opacity: 1;\n }\n}\n\n@keyframes antZoomBigOut {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0.8);\n opacity: 0;\n }\n}\n\n@keyframes antZoomUpIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 50% 0%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 50% 0%;\n }\n}\n\n@keyframes antZoomUpOut {\n 0% {\n transform: scale(1);\n transform-origin: 50% 0%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 50% 0%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomLeftIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 0% 50%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 0% 50%;\n }\n}\n\n@keyframes antZoomLeftOut {\n 0% {\n transform: scale(1);\n transform-origin: 0% 50%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 0% 50%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomRightIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 100% 50%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 100% 50%;\n }\n}\n\n@keyframes antZoomRightOut {\n 0% {\n transform: scale(1);\n transform-origin: 100% 50%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 100% 50%;\n opacity: 0;\n }\n}\n\n@keyframes antZoomDownIn {\n 0% {\n transform: scale(0.8);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n 100% {\n transform: scale(1);\n transform-origin: 50% 100%;\n }\n}\n\n@keyframes antZoomDownOut {\n 0% {\n transform: scale(1);\n transform-origin: 50% 100%;\n }\n 100% {\n transform: scale(0.8);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n}\n","@import '../mixins/motion';\n@import 'motion/fade';\n@import 'motion/move';\n@import 'motion/other';\n@import 'motion/slide';\n@import 'motion/zoom';\n\n// For common/openAnimation\n.ant-motion-collapse-legacy {\n overflow: hidden;\n &-active {\n transition: height @animation-duration-base @ease-in-out,\n opacity @animation-duration-base @ease-in-out !important;\n }\n}\n\n.ant-motion-collapse {\n overflow: hidden;\n transition: height @animation-duration-base @ease-in-out,\n opacity @animation-duration-base @ease-in-out !important;\n}\n","@import './index';\n\n// ================================================================\n// = Children Component =\n// ================================================================\n.@{form-item-prefix-cls} {\n .@{ant-prefix}-mentions,\n textarea.@{ant-prefix}-input {\n height: auto;\n }\n\n // input[type=file]\n .@{ant-prefix}-upload {\n background: transparent;\n }\n .@{ant-prefix}-upload.@{ant-prefix}-upload-drag {\n background: @background-color-light;\n }\n\n input[type='radio'],\n input[type='checkbox'] {\n width: 14px;\n height: 14px;\n }\n\n // Radios and checkboxes on same line\n .@{ant-prefix}-radio-inline,\n .@{ant-prefix}-checkbox-inline {\n display: inline-block;\n margin-left: 8px;\n font-weight: normal;\n vertical-align: middle;\n cursor: pointer;\n\n &:first-child {\n margin-left: 0;\n }\n }\n\n .@{ant-prefix}-checkbox-vertical,\n .@{ant-prefix}-radio-vertical {\n display: block;\n }\n\n .@{ant-prefix}-checkbox-vertical + .@{ant-prefix}-checkbox-vertical,\n .@{ant-prefix}-radio-vertical + .@{ant-prefix}-radio-vertical {\n margin-left: 0;\n }\n\n .@{ant-prefix}-input-number {\n + .@{form-prefix-cls}-text {\n margin-left: 8px;\n }\n &-handler-wrap {\n z-index: 2; // https://github.com/ant-design/ant-design/issues/6289\n }\n }\n\n .@{ant-prefix}-select,\n .@{ant-prefix}-cascader-picker {\n width: 100%;\n }\n\n // Don't impact select inside input group and calendar header select\n .@{ant-prefix}-picker-calendar-year-select,\n .@{ant-prefix}-picker-calendar-month-select,\n .@{ant-prefix}-input-group .@{ant-prefix}-select,\n .@{ant-prefix}-input-group .@{ant-prefix}-cascader-picker {\n width: auto;\n }\n}\n","@import './index';\n\n.@{form-prefix-cls}-inline {\n display: flex;\n flex-wrap: wrap;\n\n .@{form-prefix-cls}-item {\n flex: none;\n flex-wrap: nowrap;\n margin-right: 16px;\n margin-bottom: 0;\n\n &-with-help {\n margin-bottom: @form-item-margin-bottom;\n }\n\n > .@{form-item-prefix-cls}-label,\n > .@{form-item-prefix-cls}-control {\n display: inline-block;\n vertical-align: top;\n }\n\n > .@{form-item-prefix-cls}-label {\n flex: none;\n }\n\n .@{form-prefix-cls}-text {\n display: inline-block;\n }\n\n .@{form-item-prefix-cls}-has-feedback {\n display: inline-block;\n }\n }\n}\n","@import './index';\n\n.@{form-prefix-cls}-horizontal {\n .@{form-item-prefix-cls}-label {\n flex-grow: 0;\n }\n .@{form-item-prefix-cls}-control {\n flex: 1 1 0;\n }\n}\n","@import './index';\n\n// ================== Label ==================\n.make-vertical-layout-label() {\n & when (@form-vertical-label-margin > 0) {\n margin: @form-vertical-label-margin;\n }\n padding: @form-vertical-label-padding;\n line-height: @line-height-base;\n white-space: initial;\n text-align: left;\n\n > label {\n margin: 0;\n\n &::after {\n display: none;\n }\n }\n}\n\n.make-vertical-layout() {\n .@{form-prefix-cls}-item .@{form-prefix-cls}-item-label {\n .make-vertical-layout-label();\n }\n .@{form-prefix-cls} {\n .@{form-prefix-cls}-item {\n flex-wrap: wrap;\n .@{form-prefix-cls}-item-label,\n .@{form-prefix-cls}-item-control {\n flex: 0 0 100%;\n max-width: 100%;\n }\n }\n }\n}\n\n.@{form-prefix-cls}-vertical {\n .@{form-item-prefix-cls} {\n flex-direction: column;\n\n &-label > label {\n height: auto;\n }\n }\n}\n\n.@{form-prefix-cls}-vertical .@{form-item-prefix-cls}-label,\n // when labelCol is 24, it is a vertical form\n.@{ant-prefix}-col-24.@{form-item-prefix-cls}-label,\n.@{ant-prefix}-col-xl-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n}\n\n@media (max-width: @screen-xs-max) {\n .make-vertical-layout();\n .@{ant-prefix}-col-xs-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-sm-max) {\n .@{ant-prefix}-col-sm-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-md-max) {\n .@{ant-prefix}-col-md-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-lg-max) {\n .@{ant-prefix}-col-lg-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n\n@media (max-width: @screen-xl-max) {\n .@{ant-prefix}-col-xl-24.@{form-item-prefix-cls}-label {\n .make-vertical-layout-label();\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n@import '../../button/style/mixin';\n@import '../../grid/style/mixin';\n\n@form-prefix-cls: ~'@{ant-prefix}-form';\n@form-item-prefix-cls: ~'@{form-prefix-cls}-item';\n\n.@{form-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n}\n\n// ================================================================\n// = Item =\n// ================================================================\n.@{form-item-prefix-cls} {\n // ==============================================================\n // = Label =\n // ==============================================================\n &-label {\n .@{form-prefix-cls}-rtl & {\n text-align: left;\n }\n\n > label {\n &.@{form-item-prefix-cls}-required::before {\n .@{form-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: 4px;\n }\n }\n &::after {\n .@{form-prefix-cls}-rtl & {\n margin: 0 @form-item-label-colon-margin-left 0 @form-item-label-colon-margin-right;\n }\n }\n\n .@{form-item-prefix-cls}-optional {\n .@{form-prefix-cls}-rtl & {\n margin-right: @margin-xss;\n margin-left: 0;\n }\n }\n }\n }\n\n // ==============================================================\n // = Input =\n // ==============================================================\n &-control {\n .@{ant-prefix}-col-rtl &:first-child {\n width: 100%;\n }\n }\n\n // status\n &-has-feedback {\n .@{ant-prefix}-input {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: 24px;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper {\n .@{ant-prefix}-input-suffix {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: 18px;\n }\n }\n .@{ant-prefix}-input {\n .@{form-prefix-cls}-rtl & {\n padding: 0;\n }\n }\n }\n\n .@{ant-prefix}-input-search:not(.@{ant-prefix}-input-search-enter-button) {\n .@{ant-prefix}-input-suffix {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 28px;\n }\n }\n }\n\n .@{ant-prefix}-input-number {\n .@{form-prefix-cls}-rtl & {\n padding-left: 18px;\n }\n }\n\n > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n > .@{ant-prefix}-select .@{ant-prefix}-select-clear,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-clear {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 32px;\n }\n }\n\n > .@{ant-prefix}-select .@{ant-prefix}-select-selection-selected-value,\n :not(.@{ant-prefix}-input-group-addon)\n > .@{ant-prefix}-select\n .@{ant-prefix}-select-selection-selected-value {\n .@{form-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: 42px;\n }\n }\n\n .@{ant-prefix}-cascader-picker {\n &-arrow {\n .@{form-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: 19px;\n }\n }\n &-clear {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 32px;\n }\n }\n }\n\n .@{ant-prefix}-picker {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-base;\n padding-left: @input-padding-horizontal-base + @font-size-base * 1.3;\n }\n\n &-large {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-lg;\n padding-left: @input-padding-horizontal-lg + @font-size-base * 1.3;\n }\n }\n\n &-small {\n .@{form-prefix-cls}-rtl & {\n padding-right: @input-padding-horizontal-sm;\n padding-left: @input-padding-horizontal-sm + @font-size-base * 1.3;\n }\n }\n }\n\n &.@{form-item-prefix-cls} {\n &-has-success,\n &-has-warning,\n &-has-error,\n &-is-validating {\n // ====================== Icon ======================\n .@{form-item-prefix-cls}-children-icon {\n .@{form-prefix-cls}-rtl & {\n right: auto;\n left: 0;\n }\n }\n }\n }\n }\n}\n\n// inline\n.@{form-prefix-cls}-inline {\n .@{form-prefix-cls}-item {\n .@{form-prefix-cls}-rtl& {\n margin-right: 0;\n margin-left: 16px;\n }\n }\n}\n\n// vertical\n.make-vertical-layout-label() {\n .@{form-prefix-cls}-rtl& {\n text-align: right;\n }\n}\n","@import './index.less';\n\n.@{form-item-prefix-cls} {\n // ================================================================\n // = Status =\n // ================================================================\n /* Some non-status related component style is in `components.less` */\n\n // ========================= Explain =========================\n /* To support leave along ErrorList. We add additional className to handle explain style */\n &-explain {\n &&-error {\n color: @error-color;\n }\n\n &&-warning {\n color: @warning-color;\n }\n }\n\n &-has-feedback {\n // ========================= Input =========================\n .@{ant-prefix}-input {\n padding-right: 24px;\n }\n // https://github.com/ant-design/ant-design/issues/19884\n .@{ant-prefix}-input-affix-wrapper {\n .@{ant-prefix}-input-suffix {\n padding-right: 18px;\n }\n }\n\n // Fix issue: https://github.com/ant-design/ant-design/issues/7854\n .@{ant-prefix}-input-search:not(.@{ant-prefix}-input-search-enter-button) {\n .@{ant-prefix}-input-suffix {\n right: 28px;\n }\n }\n\n // ======================== Switch =========================\n .@{ant-prefix}-switch {\n margin: 2px 0 4px;\n }\n\n // ======================== Select =========================\n // Fix overlapping between feedback icon and <Select>'s arrow.\n // https://github.com/ant-design/ant-design/issues/4431\n > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n > .@{ant-prefix}-select .@{ant-prefix}-select-clear,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-arrow,\n :not(.@{ant-prefix}-input-group-addon) > .@{ant-prefix}-select .@{ant-prefix}-select-clear {\n right: 32px;\n }\n > .@{ant-prefix}-select .@{ant-prefix}-select-selection-selected-value,\n :not(.@{ant-prefix}-input-group-addon)\n > .@{ant-prefix}-select\n .@{ant-prefix}-select-selection-selected-value {\n padding-right: 42px;\n }\n\n // ======================= Cascader ========================\n .@{ant-prefix}-cascader-picker {\n &-arrow {\n margin-right: 19px;\n }\n &-clear {\n right: 32px;\n }\n }\n\n // ======================== Picker =========================\n // Fix issue: https://github.com/ant-design/ant-design/issues/4783\n .@{ant-prefix}-picker {\n padding-right: @input-padding-horizontal-base + @font-size-base * 1.3;\n\n &-large {\n padding-right: @input-padding-horizontal-lg + @font-size-base * 1.3;\n }\n\n &-small {\n padding-right: @input-padding-horizontal-sm + @font-size-base * 1.3;\n }\n }\n\n // ===================== Status Group ======================\n &.@{form-item-prefix-cls} {\n &-has-success,\n &-has-warning,\n &-has-error,\n &-is-validating {\n // ====================== Icon ======================\n .@{form-item-prefix-cls}-children-icon {\n position: absolute;\n top: 50%;\n right: 0;\n z-index: 1;\n width: @input-height-base;\n height: 20px;\n margin-top: -10px;\n font-size: @font-size-base;\n line-height: 20px;\n text-align: center;\n visibility: visible;\n animation: zoomIn 0.3s @ease-out-back;\n pointer-events: none;\n }\n }\n }\n }\n\n // ======================== Success ========================\n &-has-success {\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @success-color;\n animation-name: diffZoomIn1 !important;\n }\n }\n\n // ======================== Warning ========================\n &-has-warning {\n .form-control-validation(@warning-color; @warning-color; @form-warning-input-bg);\n\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @warning-color;\n animation-name: diffZoomIn3 !important;\n }\n\n // Select\n .@{ant-prefix}-select:not(.@{ant-prefix}-select-disabled):not(.@{ant-prefix}-select-customize-input) {\n .@{ant-prefix}-select-selector {\n background-color: @form-warning-input-bg;\n border-color: @warning-color !important;\n }\n &.@{ant-prefix}-select-open .@{ant-prefix}-select-selector,\n &.@{ant-prefix}-select-focused .@{ant-prefix}-select-selector {\n .active(@warning-color);\n }\n }\n\n // InputNumber, TimePicker\n .@{ant-prefix}-input-number,\n .@{ant-prefix}-picker {\n background-color: @form-warning-input-bg;\n border-color: @warning-color;\n &-focused,\n &:focus {\n .active(@warning-color);\n }\n &:not([disabled]):hover {\n background-color: @form-warning-input-bg;\n border-color: @warning-color;\n }\n }\n\n .@{ant-prefix}-cascader-picker:focus .@{ant-prefix}-cascader-input {\n .active(@warning-color);\n }\n }\n\n // ========================= Error =========================\n &-has-error {\n .form-control-validation(@error-color; @error-color; @form-error-input-bg);\n\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n color: @error-color;\n animation-name: diffZoomIn2 !important;\n }\n\n // Select\n .@{ant-prefix}-select:not(.@{ant-prefix}-select-disabled):not(.@{ant-prefix}-select-customize-input) {\n .@{ant-prefix}-select-selector {\n background-color: @form-error-input-bg;\n border-color: @error-color !important;\n }\n &.@{ant-prefix}-select-open .@{ant-prefix}-select-selector,\n &.@{ant-prefix}-select-focused .@{ant-prefix}-select-selector {\n .active(@error-color);\n }\n }\n\n // fixes https://github.com/ant-design/ant-design/issues/20482\n .@{ant-prefix}-input-group-addon .@{ant-prefix}-select {\n &.@{ant-prefix}-select-single:not(.@{ant-prefix}-select-customize-input)\n .@{ant-prefix}-select-selector {\n border: 0;\n }\n }\n\n .@{ant-prefix}-select.@{ant-prefix}-select-auto-complete {\n .@{ant-prefix}-input:focus {\n border-color: @error-color;\n }\n }\n\n // InputNumber, TimePicker\n .@{ant-prefix}-input-number,\n .@{ant-prefix}-picker {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n &-focused,\n &:focus {\n .active(@error-color);\n }\n &:not([disabled]):hover {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n }\n }\n\n .@{ant-prefix}-mention-wrapper {\n .@{ant-prefix}-mention-editor {\n &,\n &:not([disabled]):hover {\n background-color: @form-error-input-bg;\n border-color: @error-color;\n }\n }\n &.@{ant-prefix}-mention-active:not([disabled]) .@{ant-prefix}-mention-editor,\n .@{ant-prefix}-mention-editor:not([disabled]):focus {\n .active(@error-color);\n }\n }\n\n .@{ant-prefix}-cascader-picker:focus .@{ant-prefix}-cascader-input {\n background-color: @form-error-input-bg;\n .active(@error-color);\n }\n\n // transfer\n .@{ant-prefix}-transfer {\n &-list {\n border-color: @error-color;\n\n &-search:not([disabled]) {\n border-color: @input-border-color;\n\n &:hover {\n .hover();\n }\n\n &:focus {\n .active();\n }\n }\n }\n }\n\n // RadioGroup\n .@{ant-prefix}-radio-button-wrapper {\n border-color: @error-color !important;\n\n &:not(:first-child) {\n &::before {\n background-color: @error-color;\n }\n }\n }\n }\n\n // ====================== Validating =======================\n &-is-validating {\n &.@{form-item-prefix-cls}-has-feedback .@{form-item-prefix-cls}-children-icon {\n display: inline-block;\n color: @primary-color;\n }\n }\n}\n","@import '../../input/style/mixin';\n\n.form-control-validation(@text-color: @input-color; @border-color: @input-border-color; @background-color: @input-bg) {\n .@{ant-prefix}-form-item-split {\n color: @text-color;\n }\n // 输入框的不同校验状态\n .@{ant-prefix}-input,\n .@{ant-prefix}-input-affix-wrapper {\n &,\n &:hover {\n background-color: @background-color;\n border-color: @border-color;\n }\n\n &:focus,\n &-focused {\n .active(@border-color);\n }\n }\n\n .@{ant-prefix}-input-disabled {\n &,\n &:hover {\n background-color: @input-disabled-bg;\n border-color: @input-border-color;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper-disabled {\n &,\n &:hover {\n background-color: @input-disabled-bg;\n border-color: @input-border-color;\n\n input:focus {\n box-shadow: none !important;\n }\n }\n }\n\n .@{ant-prefix}-calendar-picker-open .@{ant-prefix}-calendar-picker-input {\n .active(@border-color);\n }\n\n .@{ant-prefix}-input-prefix {\n color: @text-color;\n }\n\n .@{ant-prefix}-input-group-addon {\n color: @text-color;\n border-color: @border-color;\n }\n\n .has-feedback {\n color: @text-color;\n }\n}\n\n// Reset form styles\n// -----------------------------\n// Based on Bootstrap framework\n.reset-form() {\n legend {\n display: block;\n width: 100%;\n margin-bottom: 20px;\n padding: 0;\n color: @text-color-secondary;\n font-size: @font-size-lg;\n line-height: inherit;\n border: 0;\n border-bottom: @border-width-base @border-style-base @border-color-base;\n }\n\n label {\n font-size: @font-size-base;\n }\n\n input[type='search'] {\n box-sizing: border-box;\n }\n\n // Position radios and checkboxes better\n input[type='radio'],\n input[type='checkbox'] {\n line-height: normal;\n }\n\n input[type='file'] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type='range'] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type='file']:focus,\n input[type='radio']:focus,\n input[type='checkbox']:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n }\n\n // Adjust output element\n output {\n display: block;\n padding-top: 15px;\n color: @input-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@input-affix-with-clear-btn-width: 38px;\n\n// size mixins for input\n.input-lg() {\n padding: @input-padding-vertical-lg @input-padding-horizontal-lg;\n font-size: @font-size-lg;\n}\n\n.input-sm() {\n padding: @input-padding-vertical-sm @input-padding-horizontal-sm;\n}\n\n// input status\n// == when focus or actived\n.active(@color: @outline-color) {\n & when (@theme = dark) {\n border-color: @color;\n }\n & when not (@theme = dark) {\n border-color: ~`colorPalette('@{color}', 5) `;\n }\n border-right-width: @border-width-base !important;\n outline: 0;\n box-shadow: @input-outline-offset @outline-blur-size @outline-width fade(@color, @outline-fade);\n}\n\n// == when hoverd\n.hover(@color: @input-hover-border-color) {\n border-color: @color;\n border-right-width: @border-width-base !important;\n}\n\n.disabled() {\n color: @input-disabled-color;\n background-color: @input-disabled-bg;\n cursor: not-allowed;\n opacity: 1;\n\n &:hover {\n .hover(@input-border-color);\n }\n}\n\n// Basic style for input\n.input() {\n position: relative;\n display: inline-block;\n width: 100%;\n min-width: 0;\n padding: @input-padding-vertical-base @input-padding-horizontal-base;\n color: @input-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n background-color: @input-bg;\n background-image: none;\n border: @border-width-base @border-style-base @input-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s;\n .placeholder(); // Reset placeholder\n\n &:hover {\n .hover();\n }\n\n &:focus,\n &-focused {\n .active();\n }\n\n &-disabled {\n .disabled();\n }\n\n &[disabled] {\n .disabled();\n }\n\n &-borderless {\n &,\n &:hover,\n &:focus,\n &-focused,\n &-disabled,\n &[disabled] {\n background-color: transparent;\n border: none;\n box-shadow: none;\n }\n }\n\n // Reset height for `textarea`s\n textarea& {\n max-width: 100%; // prevent textearea resize from coming out of its container\n height: auto;\n min-height: @input-height-base;\n line-height: @line-height-base;\n vertical-align: bottom;\n transition: all 0.3s, height 0s;\n }\n\n // Size\n &-lg {\n .input-lg();\n }\n\n &-sm {\n .input-sm();\n }\n}\n\n// label input\n.input-group(@inputClass) {\n position: relative;\n display: table;\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n\n // Undo padding and float of grid classes\n &[class*='col-'] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n }\n\n > [class*='col-'] {\n padding-right: 8px;\n\n &:last-child {\n padding-right: 0;\n }\n }\n\n &-addon,\n &-wrap,\n > .@{inputClass} {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n\n &-addon,\n &-wrap {\n width: 1px; // To make addon/wrap as small as possible\n white-space: nowrap;\n vertical-align: middle;\n }\n\n &-wrap > * {\n display: block !important;\n }\n\n .@{inputClass} {\n float: left;\n width: 100%;\n margin-bottom: 0;\n text-align: inherit;\n\n &:focus {\n z-index: 1; // Fix https://gw.alipayobjects.com/zos/rmsportal/DHNpoqfMXSfrSnlZvhsJ.png\n border-right-width: 1px;\n }\n\n &:hover {\n z-index: 1;\n border-right-width: 1px;\n .@{ant-prefix}-input-search-with-button & {\n z-index: 0;\n }\n }\n }\n\n &-addon {\n position: relative;\n padding: 0 @input-padding-horizontal-base;\n color: @input-color;\n font-weight: normal;\n font-size: @font-size-base;\n text-align: center;\n background-color: @input-addon-bg;\n border: @border-width-base @border-style-base @input-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select {\n margin: -(@input-padding-vertical-base + 1px) (-@input-padding-horizontal-base);\n\n &.@{ant-prefix}-select-single:not(.@{ant-prefix}-select-customize-input)\n .@{ant-prefix}-select-selector {\n background-color: inherit;\n border: @border-width-base @border-style-base transparent;\n box-shadow: none;\n }\n\n &-open,\n &-focused {\n .@{ant-prefix}-select-selector {\n color: @primary-color;\n }\n }\n }\n }\n\n // Reset rounded corners\n > .@{inputClass}:first-child,\n &-addon:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select .@{ant-prefix}-select-selector {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n > .@{inputClass}-affix-wrapper {\n &:not(:first-child) .@{inputClass} {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child) .@{inputClass} {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n &-addon:first-child {\n border-right: 0;\n }\n\n &-addon:last-child {\n border-left: 0;\n }\n\n > .@{inputClass}:last-child,\n &-addon:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n\n // Reset Select's style in addon\n .@{ant-prefix}-select .@{ant-prefix}-select-selector {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n // Sizing options\n &-lg .@{inputClass},\n &-lg > &-addon {\n .input-lg();\n }\n\n &-sm .@{inputClass},\n &-sm > &-addon {\n .input-sm();\n }\n\n // Fix https://github.com/ant-design/ant-design/issues/5754\n &-lg .@{ant-prefix}-select-single .@{ant-prefix}-select-selector {\n height: @input-height-lg;\n }\n\n &-sm .@{ant-prefix}-select-single .@{ant-prefix}-select-selector {\n height: @input-height-sm;\n }\n\n .@{inputClass}-affix-wrapper {\n &:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n .@{ant-prefix}-input-search & {\n border-top-left-radius: @border-radius-base;\n border-bottom-left-radius: @border-radius-base;\n }\n }\n }\n\n &&-compact {\n display: block;\n .clearfix();\n\n &-addon,\n &-wrap,\n > .@{inputClass} {\n &:not(:first-child):not(:last-child) {\n border-right-width: @border-width-base;\n\n &:hover {\n z-index: 1;\n }\n\n &:focus {\n z-index: 1;\n }\n }\n }\n\n & > * {\n display: inline-block;\n float: none;\n vertical-align: top; // https://github.com/ant-design/ant-design-pro/issues/139\n border-radius: 0;\n }\n\n & > .@{inputClass}-affix-wrapper {\n display: inline-flex;\n }\n\n & > .@{ant-prefix}-picker-range {\n display: inline-flex;\n }\n\n & > *:not(:last-child) {\n margin-right: -@border-width-base;\n border-right-width: @border-width-base;\n }\n\n // Undo float for .ant-input-group .ant-input\n .@{inputClass} {\n float: none;\n }\n\n // reset border for Select, DatePicker, AutoComplete, Cascader, Mention, TimePicker, Input\n & > .@{ant-prefix}-select > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker .@{ant-prefix}-input,\n & > .@{ant-prefix}-input-group-wrapper .@{ant-prefix}-input {\n border-right-width: @border-width-base;\n border-radius: 0;\n\n &:hover {\n z-index: 1;\n }\n\n &:focus {\n z-index: 1;\n }\n }\n\n & > .@{ant-prefix}-select-focused {\n z-index: 1;\n }\n\n // update z-index for arrow icon\n & > .@{ant-prefix}-select > .@{ant-prefix}-select-arrow {\n z-index: 1; // https://github.com/ant-design/ant-design/issues/20371\n }\n\n & > *:first-child,\n & > .@{ant-prefix}-select:first-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:first-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:first-child .@{ant-prefix}-input {\n border-top-left-radius: @border-radius-base;\n border-bottom-left-radius: @border-radius-base;\n }\n\n & > *:last-child,\n & > .@{ant-prefix}-select:last-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-cascader-picker:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker-focused:last-child .@{ant-prefix}-input {\n border-right-width: @border-width-base;\n border-top-right-radius: @border-radius-base;\n border-bottom-right-radius: @border-radius-base;\n }\n\n // https://github.com/ant-design/ant-design/issues/12493\n & > .@{ant-prefix}-select-auto-complete .@{ant-prefix}-input {\n vertical-align: top;\n }\n\n .@{ant-prefix}-input-group-wrapper + .@{ant-prefix}-input-group-wrapper {\n margin-left: -1px;\n .@{ant-prefix}-input-affix-wrapper {\n border-radius: 0;\n }\n }\n\n .@{ant-prefix}-input-group-wrapper:not(:last-child) {\n &.@{ant-prefix}-input-search > .@{ant-prefix}-input-group {\n & > .@{ant-prefix}-input-group-addon > .@{ant-prefix}-input-search-button {\n border-radius: 0;\n }\n\n & > .@{ant-prefix}-input {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n//== Style for input-group: input with label, with button or dropdown...\n.@{ant-prefix}-input-group {\n &-wrapper {\n &-rtl {\n direction: rtl;\n }\n }\n &-rtl {\n direction: rtl;\n }\n}\n\n// affix\n@input-affix-margin: 4px;\n\n.@{ant-prefix}-input {\n &-affix-wrapper&-affix-wrapper-rtl {\n > input.@{ant-prefix}-input {\n border: none;\n outline: none;\n }\n }\n\n &-affix-wrapper-rtl {\n .@{ant-prefix}-input-prefix {\n margin: 0 0 0 @input-affix-margin;\n }\n\n .@{ant-prefix}-input-suffix {\n margin: 0 @input-affix-margin 0 0;\n }\n }\n\n &-textarea {\n &-rtl {\n direction: rtl;\n }\n\n &-rtl&-show-count::after {\n text-align: left;\n }\n }\n}\n\n// allow-clear\n.@{ant-prefix}-input-clear-icon {\n &:last-child {\n .@{ant-prefix}-input-affix-wrapper-rtl & {\n margin-right: @input-affix-margin;\n margin-left: 0;\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper-rtl & {\n right: auto;\n left: 8px;\n }\n}\n\n// mixin\n@input-rtl-cls: ~'@{ant-prefix}-input-rtl';\n\n.active() {\n .@{input-rtl-cls} & {\n border-right-width: 0;\n border-left-width: @border-width-base !important;\n }\n}\n\n.hover() {\n .@{input-rtl-cls} & {\n border-right-width: 0;\n border-left-width: @border-width-base !important;\n }\n}\n\n.input() {\n &-rtl {\n direction: rtl;\n }\n}\n\n// label input\n.input-group(@inputClass) {\n > .@{inputClass}-rtl:first-child,\n &-rtl &-addon:first-child {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n &-addon:first-child {\n .@{inputClass}-group-rtl & {\n border-right: @border-width-base @border-style-base @input-border-color;\n border-left: 0;\n }\n }\n\n &-addon:last-child {\n .@{inputClass}-group-rtl & {\n border-right: 0;\n border-left: @border-width-base @border-style-base @input-border-color;\n }\n }\n\n > .@{inputClass}:last-child,\n &-addon:last-child {\n .@{inputClass}-group-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n .@{inputClass}-affix-wrapper {\n &:not(:first-child) {\n .@{inputClass}-group-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n &:not(:last-child) {\n .@{inputClass}-group-rtl& {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n }\n\n &&-compact {\n & > *:not(:last-child) {\n .@{inputClass}-group-rtl& {\n margin-right: 0;\n margin-left: -@border-width-base;\n border-left-width: @border-width-base;\n }\n }\n\n & > *:first-child,\n & > .@{ant-prefix}-select:first-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:first-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:first-child .@{ant-prefix}-input {\n .@{inputClass}-group-rtl& {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n\n & > *:last-child,\n & > .@{ant-prefix}-select:last-child > .@{ant-prefix}-select-selector,\n & > .@{ant-prefix}-select-auto-complete:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker:last-child .@{ant-prefix}-input,\n & > .@{ant-prefix}-cascader-picker-focused:last-child .@{ant-prefix}-input {\n .@{inputClass}-group-rtl& {\n border-left-width: @border-width-base;\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n .@{ant-prefix}-input-group-wrapper-rtl + .@{ant-prefix}-input-group-wrapper-rtl {\n margin-right: -1px;\n margin-left: 0;\n }\n\n .@{ant-prefix}-input-group-wrapper-rtl:not(:last-child) {\n &.@{ant-prefix}-input-search > .@{ant-prefix}-input-group {\n & > .@{ant-prefix}-input {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n }\n }\n }\n}\n\n// search-input\n@search-prefix: ~'@{ant-prefix}-input-search';\n@search-rtl-cls: ~'@{search-prefix}-rtl';\n\n.@{search-prefix}-rtl {\n direction: rtl;\n\n .@{ant-prefix}-input {\n &:hover,\n &:focus {\n + .@{ant-prefix}-input-group-addon .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n border-right-color: @input-hover-border-color;\n border-left-color: @border-color-base;\n }\n }\n }\n\n > .@{ant-prefix}-input-group {\n > .@{ant-prefix}-input-affix-wrapper {\n &:hover,\n &-focused {\n border-right-color: @input-hover-border-color;\n }\n }\n\n > .@{ant-prefix}-input-group-addon {\n right: -1px;\n left: auto;\n .@{search-prefix}-button {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n }\n}\n","@import '../themes/index';\n\n.reset-component() {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n color: @text-color;\n font-size: @font-size-base;\n font-variant: @font-variant-base;\n line-height: @line-height-base;\n list-style: none;\n font-feature-settings: @font-feature-settings-base;\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n@import '../../button/style/mixin';\n@import '../../grid/style/mixin';\n@import './components';\n@import './inline';\n@import './horizontal';\n@import './vertical';\n@import './status';\n@import './mixin';\n\n@form-prefix-cls: ~'@{ant-prefix}-form';\n@form-item-prefix-cls: ~'@{form-prefix-cls}-item';\n@form-font-height: ceil(@font-size-base * @line-height-base);\n\n.@{form-prefix-cls} {\n .reset-component();\n .reset-form();\n\n .@{form-prefix-cls}-text {\n display: inline-block;\n padding-right: 8px;\n }\n\n // ================================================================\n // = Size =\n // ================================================================\n .formSize(@input-height) {\n .@{form-item-prefix-cls}-label > label {\n height: @input-height;\n }\n\n .@{form-item-prefix-cls}-control-input {\n min-height: @input-height;\n }\n }\n\n &-small {\n .formSize(@input-height-sm);\n }\n &-large {\n .formSize(@input-height-lg);\n }\n}\n\n.explainAndExtraDistance(@num) when (@num >= 0) {\n padding-top: floor(@num);\n}\n\n.explainAndExtraDistance(@num) when (@num < 0) {\n margin-top: ceil(@num);\n margin-bottom: ceil(@num);\n}\n\n// ================================================================\n// = Item =\n// ================================================================\n.@{form-item-prefix-cls} {\n .reset-component();\n\n margin-bottom: @form-item-margin-bottom;\n vertical-align: top;\n\n &-with-help {\n margin-bottom: 0;\n }\n\n &-hidden,\n &-hidden.@{ant-prefix}-row {\n // https://github.com/ant-design/ant-design/issues/26141\n display: none;\n }\n\n // ==============================================================\n // = Label =\n // ==============================================================\n &-label {\n display: inline-block;\n flex-grow: 0;\n overflow: hidden;\n white-space: nowrap;\n text-align: right;\n vertical-align: middle;\n\n &-left {\n text-align: left;\n }\n\n > label {\n position: relative;\n // display: inline;\n display: inline-flex;\n align-items: center;\n height: @form-item-label-height;\n color: @label-color;\n font-size: @form-item-label-font-size;\n\n > .@{iconfont-css-prefix} {\n font-size: @form-item-label-font-size;\n vertical-align: top;\n }\n\n // Required mark\n &.@{form-item-prefix-cls}-required:not(.@{form-item-prefix-cls}-required-mark-optional)::before {\n display: inline-block;\n margin-right: 4px;\n color: @label-required-color;\n font-size: @form-item-label-font-size;\n font-family: SimSun, sans-serif;\n line-height: 1;\n content: '*';\n\n .@{form-prefix-cls}-hide-required-mark & {\n display: none;\n }\n }\n\n // Optional mark\n .@{form-item-prefix-cls}-optional {\n display: inline-block;\n margin-left: @margin-xss;\n color: @text-color-secondary;\n\n .@{form-prefix-cls}-hide-required-mark & {\n display: none;\n }\n }\n\n // Optional mark\n .@{form-item-prefix-cls}-tooltip {\n color: @text-color-secondary;\n cursor: help;\n writing-mode: horizontal-tb;\n margin-inline-start: @margin-xss;\n }\n\n &::after {\n & when (@form-item-trailing-colon=true) {\n content: ':';\n }\n & when not (@form-item-trailing-colon=true) {\n content: ' ';\n }\n\n position: relative;\n top: -0.5px;\n margin: 0 @form-item-label-colon-margin-right 0 @form-item-label-colon-margin-left;\n }\n\n &.@{form-item-prefix-cls}-no-colon::after {\n content: ' ';\n }\n }\n }\n\n // ==============================================================\n // = Input =\n // ==============================================================\n &-control {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n\n &:first-child:not([class^=~\"'@{ant-prefix}-col-'\"]):not([class*=~\"' @{ant-prefix}-col-'\"]) {\n width: 100%;\n }\n }\n\n &-control-input {\n position: relative;\n display: flex;\n align-items: center;\n min-height: @input-height-base;\n\n &-content {\n flex: auto;\n max-width: 100%;\n }\n }\n\n &-explain,\n &-extra {\n clear: both;\n min-height: @form-item-margin-bottom;\n color: @text-color-secondary;\n font-size: @font-size-base;\n line-height: @line-height-base;\n transition: color 0.3s @ease-out; // sync input color transition\n .explainAndExtraDistance((@form-item-margin-bottom - @form-font-height) / 2);\n }\n\n .@{ant-prefix}-input-textarea-show-count {\n &::after {\n margin-bottom: -22px;\n }\n }\n}\n\n.show-help-motion(@className, @keyframeName, @duration: @animation-duration-slow) {\n @name: ~'@{ant-prefix}-@{className}';\n .make-motion(@name, @keyframeName, @duration);\n .@{name}-enter,\n .@{name}-appear {\n opacity: 0;\n animation-timing-function: @ease-in-out;\n }\n .@{name}-leave {\n animation-timing-function: @ease-in-out;\n }\n}\n\n.show-help-motion(show-help, antShowHelp, 0.3s);\n\n@keyframes antShowHelpIn {\n 0% {\n transform: translateY(-5px);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n}\n\n@keyframes antShowHelpOut {\n to {\n transform: translateY(-5px);\n opacity: 0;\n }\n}\n\n// need there different zoom animation\n// otherwise won't trigger anim\n@keyframes diffZoomIn1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes diffZoomIn2 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes diffZoomIn3 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@import './rtl';\n","@import './index';\n@import './mixin';\n\n@input-affix-margin: 4px;\n\n.@{ant-prefix}-input {\n &-affix-wrapper {\n .input();\n display: inline-flex;\n\n &:not(&-disabled):hover {\n .hover();\n z-index: 1;\n .@{ant-prefix}-input-search-with-button & {\n z-index: 0;\n }\n }\n\n &-focused,\n &:focus {\n z-index: 1;\n }\n\n &-disabled {\n .@{ant-prefix}-input[disabled] {\n background: transparent;\n }\n }\n\n > input.@{ant-prefix}-input {\n padding: 0;\n border: none;\n outline: none;\n\n &:focus {\n box-shadow: none;\n }\n }\n\n &::before {\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n }\n\n &-prefix,\n &-suffix {\n display: flex;\n flex: none;\n align-items: center;\n }\n\n &-prefix {\n margin-right: @input-affix-margin;\n }\n\n &-suffix {\n margin-left: @input-affix-margin;\n }\n}\n","// Compatibility for browsers.\n\n// Placeholder text\n.placeholder(@color: @input-placeholder-color) {\n // Firefox\n &::-moz-placeholder {\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n\n &::placeholder {\n color: @color;\n }\n\n &:placeholder-shown {\n text-overflow: ellipsis;\n }\n}\n","@import './index';\n\n// ========================= Input =========================\n.@{ant-prefix}-input-clear-icon {\n margin: 0 @input-affix-margin;\n color: @disabled-color;\n font-size: @font-size-sm;\n vertical-align: -1px;\n // https://github.com/ant-design/ant-design/pull/18151\n // https://codesandbox.io/s/wizardly-sun-u10br\n cursor: pointer;\n transition: color 0.3s;\n\n &:hover {\n color: @text-color-secondary;\n }\n\n &:active {\n color: @text-color;\n }\n\n &-hidden {\n visibility: hidden;\n }\n\n &:last-child {\n margin-right: 0;\n }\n}\n\n// ======================= TextArea ========================\n.@{ant-prefix}-input-affix-wrapper-textarea-with-clear-btn {\n padding: 0 !important;\n border: 0 !important;\n\n .@{ant-prefix}-input-clear-icon {\n position: absolute;\n top: 8px;\n right: 8px;\n z-index: 1;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './mixin';\n@import './affix';\n@import './allow-clear';\n\n// Input styles\n.@{ant-prefix}-input {\n .reset-component();\n .input();\n\n //== Style for input-group: input with label, with button or dropdown...\n &-group {\n .reset-component();\n .input-group(~'@{ant-prefix}-input');\n &-wrapper {\n display: inline-block;\n width: 100%;\n text-align: start;\n vertical-align: top; // https://github.com/ant-design/ant-design/issues/6403\n }\n }\n\n &-password-icon {\n color: @text-color-secondary;\n cursor: pointer;\n transition: all 0.3s;\n\n &:hover {\n color: @input-icon-hover-color;\n }\n }\n\n &[type='color'] {\n height: @input-height-base;\n\n &.@{ant-prefix}-input-lg {\n height: @input-height-lg;\n }\n &.@{ant-prefix}-input-sm {\n height: @input-height-sm;\n padding-top: 3px;\n padding-bottom: 3px;\n }\n }\n\n &-textarea {\n &-show-count::after {\n float: right;\n color: @text-color-secondary;\n white-space: nowrap;\n content: attr(data-count);\n pointer-events: none;\n }\n }\n}\n\n@import './search-input';\n@import './rtl';\n@import './IE11';\n","// mixins for clearfix\n// ------------------------\n.clearfix() {\n // https://github.com/ant-design/ant-design/issues/21301#issuecomment-583955229\n &::before {\n display: table;\n content: '';\n }\n &::after {\n // https://github.com/ant-design/ant-design/issues/21864\n display: table;\n clear: both;\n content: '';\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../button/style/mixin';\n@import './mixin';\n\n@search-prefix: ~'@{ant-prefix}-input-search';\n\n.@{search-prefix} {\n .@{ant-prefix}-input {\n &:hover,\n &:focus {\n border-color: @input-hover-border-color;\n\n + .@{ant-prefix}-input-group-addon .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n border-left-color: @input-hover-border-color;\n }\n }\n }\n\n .@{ant-prefix}-input-affix-wrapper {\n border-radius: 0;\n }\n\n // fix slight height diff in Firefox:\n // https://ant.design/components/auto-complete-cn/#components-auto-complete-demo-certain-category\n .@{ant-prefix}-input-lg {\n line-height: @line-height-base - 0.0002;\n }\n\n > .@{ant-prefix}-input-group {\n > .@{ant-prefix}-input-group-addon:last-child {\n left: -1px;\n padding: 0;\n border: 0;\n\n .@{search-prefix}-button {\n padding-top: 0;\n padding-bottom: 0;\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n .@{search-prefix}-button:not(.@{ant-prefix}-btn-primary) {\n color: @text-color-secondary;\n\n &.@{ant-prefix}-btn-loading::before {\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n }\n }\n }\n\n &-button {\n height: @input-height-base;\n\n &:hover,\n &:focus {\n z-index: 1;\n }\n }\n\n &-large &-button {\n height: @input-height-lg;\n }\n\n &-small &-button {\n height: @input-height-sm;\n }\n}\n","// Fix Input component height issue in IE11\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n .@{ant-prefix}-input {\n height: @input-height-base;\n\n &-lg {\n height: @input-height-lg;\n }\n\n &-sm {\n height: @input-height-sm;\n }\n\n &-affix-wrapper {\n > input.@{ant-prefix}-input {\n height: auto;\n }\n }\n }\n}\n","@import '../../style/mixins/index';\n\n.antCheckboxFn(@checkbox-prefix-cls: ~'@{ant-prefix}-checkbox') {\n @checkbox-inner-prefix-cls: ~'@{checkbox-prefix-cls}-inner';\n // 一般状态\n .@{checkbox-prefix-cls} {\n .reset-component();\n\n position: relative;\n top: 0.2em;\n line-height: 1;\n white-space: nowrap;\n outline: none;\n cursor: pointer;\n\n .@{checkbox-prefix-cls}-wrapper:hover &-inner,\n &:hover &-inner,\n &-input:focus + &-inner {\n border-color: @checkbox-color;\n }\n\n &-checked::after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 1px solid @checkbox-color;\n border-radius: @border-radius-base;\n visibility: hidden;\n animation: antCheckboxEffect 0.36s ease-in-out;\n animation-fill-mode: backwards;\n content: '';\n }\n\n &:hover::after,\n .@{checkbox-prefix-cls}-wrapper:hover &::after {\n visibility: visible;\n }\n\n &-inner {\n position: relative;\n top: 0;\n left: 0;\n display: block;\n width: @checkbox-size;\n height: @checkbox-size;\n direction: ltr;\n background-color: @checkbox-check-bg;\n border: @checkbox-border-width @border-style-base @border-color-base;\n border-radius: @border-radius-base;\n // Fix IE checked style\n // https://github.com/ant-design/ant-design/issues/12597\n border-collapse: separate;\n transition: all 0.3s;\n\n &::after {\n @check-width: (@checkbox-size / 14) * 5px;\n @check-height: (@checkbox-size / 14) * 8px;\n\n position: absolute;\n top: 50%;\n left: 22%;\n display: table;\n width: @check-width;\n height: @check-height;\n border: 2px solid @checkbox-check-color;\n border-top: 0;\n border-left: 0;\n transform: rotate(45deg) scale(0) translate(-50%, -50%);\n opacity: 0;\n transition: all 0.1s @ease-in-back, opacity 0.1s;\n content: ' ';\n }\n }\n\n &-input {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n width: 100%;\n height: 100%;\n cursor: pointer;\n opacity: 0;\n }\n }\n\n // 选中状态\n .@{checkbox-prefix-cls}-checked .@{checkbox-inner-prefix-cls}::after {\n position: absolute;\n display: table;\n border: 2px solid @checkbox-check-color;\n border-top: 0;\n border-left: 0;\n transform: rotate(45deg) scale(1) translate(-50%, -50%);\n opacity: 1;\n transition: all 0.2s @ease-out-back 0.1s;\n content: ' ';\n }\n\n .@{checkbox-prefix-cls}-checked {\n .@{checkbox-inner-prefix-cls} {\n background-color: @checkbox-color;\n border-color: @checkbox-color;\n }\n }\n\n .@{checkbox-prefix-cls}-disabled {\n cursor: not-allowed;\n\n &.@{checkbox-prefix-cls}-checked {\n .@{checkbox-inner-prefix-cls}::after {\n border-color: @disabled-color;\n animation-name: none;\n }\n }\n\n .@{checkbox-prefix-cls}-input {\n cursor: not-allowed;\n }\n\n .@{checkbox-inner-prefix-cls} {\n background-color: @input-disabled-bg;\n border-color: @border-color-base !important;\n &::after {\n border-color: @input-disabled-bg;\n border-collapse: separate;\n animation-name: none;\n }\n }\n\n & + span {\n color: @disabled-color;\n cursor: not-allowed;\n }\n\n // Not show highlight border of checkbox when disabled\n &:hover::after,\n .@{checkbox-prefix-cls}-wrapper:hover &::after {\n visibility: hidden;\n }\n }\n\n .@{checkbox-prefix-cls}-wrapper {\n .reset-component();\n display: inline-flex;\n align-items: baseline;\n line-height: unset;\n cursor: pointer;\n\n &::after {\n display: inline-block;\n width: 0;\n overflow: hidden;\n content: '\\a0';\n }\n\n &.@{checkbox-prefix-cls}-wrapper-disabled {\n cursor: not-allowed;\n }\n\n & + & {\n margin-left: 8px;\n }\n }\n\n .@{checkbox-prefix-cls} + span {\n padding-right: 8px;\n padding-left: 8px;\n }\n\n .@{checkbox-prefix-cls}-group {\n .reset-component();\n display: inline-block;\n\n &-item {\n margin-right: @checkbox-group-item-margin-right;\n &:last-child {\n margin-right: 0;\n }\n }\n &-item + &-item {\n margin-left: 0;\n }\n }\n\n // 半选状态\n .@{checkbox-prefix-cls}-indeterminate {\n .@{checkbox-inner-prefix-cls} {\n background-color: @checkbox-check-bg;\n border-color: @border-color-base;\n }\n .@{checkbox-inner-prefix-cls}::after {\n @indeterminate-width: @checkbox-size - 8px;\n @indeterminate-height: @checkbox-size - 8px;\n\n top: 50%;\n left: 50%;\n width: @indeterminate-width;\n height: @indeterminate-height;\n background-color: @checkbox-color;\n border: 0;\n transform: translate(-50%, -50%) scale(1);\n opacity: 1;\n content: ' ';\n }\n\n &.@{checkbox-prefix-cls}-disabled .@{checkbox-inner-prefix-cls}::after {\n background-color: @disabled-color;\n border-color: @disabled-color;\n }\n }\n}\n\n@keyframes antCheckboxEffect {\n 0% {\n transform: scale(1);\n opacity: 0.5;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n","@import '../../style/mixins/index';\n\n.antCheckboxFn(@checkbox-prefix-cls: ~'@{ant-prefix}-checkbox') {\n .@{checkbox-prefix-cls}-rtl {\n direction: rtl;\n }\n\n .@{checkbox-prefix-cls}-group {\n &-item {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-right: 0;\n margin-left: @checkbox-group-item-margin-right;\n }\n &:last-child {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-left: 0 !important;\n }\n }\n }\n &-item + &-item {\n .@{checkbox-prefix-cls}-group-rtl & {\n margin-left: @checkbox-group-item-margin-right;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tooltip-prefix-cls: ~'@{ant-prefix}-tooltip';\n\n@tooltip-arrow-shadow-width: 3px;\n\n@tooltip-arrow-rotate-width: sqrt(@tooltip-arrow-width * @tooltip-arrow-width * 2) +\n @tooltip-arrow-shadow-width * 2;\n\n@tooltip-arrow-offset-vertical: 5px; // 8 - 3px\n@tooltip-arrow-offset-horizontal: 13px; // 16 - 3px\n\n// Base class\n.@{tooltip-prefix-cls} {\n .reset-component();\n\n position: absolute;\n z-index: @zindex-tooltip;\n display: block;\n max-width: @tooltip-max-width;\n visibility: visible;\n\n &-hidden {\n display: none;\n }\n\n &-placement-top,\n &-placement-topLeft,\n &-placement-topRight {\n padding-bottom: @tooltip-distance;\n }\n\n &-placement-right,\n &-placement-rightTop,\n &-placement-rightBottom {\n padding-left: @tooltip-distance;\n }\n\n &-placement-bottom,\n &-placement-bottomLeft,\n &-placement-bottomRight {\n padding-top: @tooltip-distance;\n }\n\n &-placement-left,\n &-placement-leftTop,\n &-placement-leftBottom {\n padding-right: @tooltip-distance;\n }\n\n // Wrapper for the tooltip content\n &-inner {\n min-width: 30px;\n min-height: 32px;\n padding: 6px 8px;\n color: @tooltip-color;\n text-align: left;\n text-decoration: none;\n word-wrap: break-word;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n box-shadow: @box-shadow-base;\n }\n\n // Arrows\n &-arrow {\n position: absolute;\n display: block;\n width: @tooltip-arrow-rotate-width;\n height: @tooltip-arrow-rotate-width;\n overflow: hidden;\n background: transparent;\n pointer-events: none;\n\n &-content {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: block;\n width: @tooltip-arrow-width;\n height: @tooltip-arrow-width;\n margin: auto;\n background-color: @tooltip-bg;\n content: '';\n pointer-events: auto;\n }\n }\n\n &-placement-top &-arrow,\n &-placement-topLeft &-arrow,\n &-placement-topRight &-arrow {\n bottom: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: @tooltip-arrow-shadow-width @tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateY((-@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-top &-arrow {\n left: 50%;\n transform: translateX(-50%);\n }\n\n &-placement-topLeft &-arrow {\n left: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-topRight &-arrow {\n right: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-right &-arrow,\n &-placement-rightTop &-arrow,\n &-placement-rightBottom &-arrow {\n left: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: -@tooltip-arrow-shadow-width @tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateX((@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-right &-arrow {\n top: 50%;\n transform: translateY(-50%);\n }\n\n &-placement-rightTop &-arrow {\n top: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-rightBottom &-arrow {\n bottom: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-left &-arrow,\n &-placement-leftTop &-arrow,\n &-placement-leftBottom &-arrow {\n right: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: @tooltip-arrow-shadow-width -@tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateX((-@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-left &-arrow {\n top: 50%;\n transform: translateY(-50%);\n }\n\n &-placement-leftTop &-arrow {\n top: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-leftBottom &-arrow {\n bottom: @tooltip-arrow-offset-vertical;\n }\n\n &-placement-bottom &-arrow,\n &-placement-bottomLeft &-arrow,\n &-placement-bottomRight &-arrow {\n top: @tooltip-distance - @tooltip-arrow-rotate-width;\n\n &-content {\n box-shadow: -@tooltip-arrow-shadow-width -@tooltip-arrow-shadow-width 7px fade(@black, 7%);\n transform: translateY((@tooltip-arrow-rotate-width / 2)) rotate(45deg);\n }\n }\n\n &-placement-bottom &-arrow {\n left: 50%;\n transform: translateX(-50%);\n }\n\n &-placement-bottomLeft &-arrow {\n left: @tooltip-arrow-offset-horizontal;\n }\n\n &-placement-bottomRight &-arrow {\n right: @tooltip-arrow-offset-horizontal;\n }\n}\n\n.generator-tooltip-preset-color(@i: length(@preset-colors)) when (@i > 0) {\n .generator-tooltip-preset-color(@i - 1);\n @color: extract(@preset-colors, @i);\n @lightColor: '@{color}-6';\n .@{tooltip-prefix-cls}-@{color} {\n .@{tooltip-prefix-cls}-inner {\n background-color: @@lightColor;\n }\n .@{tooltip-prefix-cls}-arrow {\n &-content {\n background-color: @@lightColor;\n }\n }\n }\n}\n.generator-tooltip-preset-color();\n\n@import './rtl';\n","@tooltip-prefix-cls: ~'@{ant-prefix}-tooltip';\n\n// Base class\n.@{tooltip-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n // Wrapper for the tooltip content\n &-inner {\n .@{tooltip-prefix-cls}-rtl & {\n text-align: right;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@alert-prefix-cls: ~'@{ant-prefix}-alert';\n\n.@{alert-prefix-cls} {\n .reset-component();\n\n position: relative;\n display: flex;\n align-items: center;\n padding: 8px 15px;\n word-wrap: break-word;\n border-radius: @border-radius-base;\n\n &-content {\n flex: 1;\n min-width: 0;\n }\n\n &-icon {\n margin-right: @margin-xs;\n }\n\n &-description {\n display: none;\n font-size: @font-size-base;\n line-height: @font-size-base + 8px;\n }\n\n &-success {\n background-color: @alert-success-bg-color;\n border: @border-width-base @border-style-base @alert-success-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-success-icon-color;\n }\n }\n\n &-info {\n background-color: @alert-info-bg-color;\n border: @border-width-base @border-style-base @alert-info-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-info-icon-color;\n }\n }\n\n &-warning {\n background-color: @alert-warning-bg-color;\n border: @border-width-base @border-style-base @alert-warning-border-color;\n .@{alert-prefix-cls}-icon {\n color: @alert-warning-icon-color;\n }\n }\n\n &-error {\n background-color: @alert-error-bg-color;\n border: @border-width-base @border-style-base @alert-error-border-color;\n\n .@{alert-prefix-cls}-icon {\n color: @alert-error-icon-color;\n }\n\n .@{alert-prefix-cls}-description > pre {\n margin: 0;\n padding: 0;\n }\n }\n\n &-action {\n margin-left: @margin-xs;\n }\n\n &-close-icon {\n margin-left: @margin-xs;\n padding: 0;\n overflow: hidden;\n font-size: @font-size-sm;\n line-height: @font-size-sm;\n background-color: transparent;\n border: none;\n outline: none;\n cursor: pointer;\n\n .@{iconfont-css-prefix}-close {\n color: @alert-close-color;\n transition: color 0.3s;\n &:hover {\n color: @alert-close-hover-color;\n }\n }\n }\n\n &-close-text {\n color: @alert-close-color;\n transition: color 0.3s;\n &:hover {\n color: @alert-close-hover-color;\n }\n }\n\n &-with-description {\n align-items: flex-start;\n padding: @alert-with-description-padding;\n }\n\n &-with-description&-no-icon {\n padding: @alert-with-description-no-icon-padding-vertical 15px;\n }\n\n &-with-description &-icon {\n margin-right: @alert-with-description-padding-vertical;\n font-size: @alert-with-description-icon-size;\n }\n &-with-description &-message {\n display: block;\n margin-bottom: 4px;\n color: @alert-message-color;\n font-size: @font-size-lg;\n }\n\n &-message {\n color: @alert-message-color;\n }\n\n &-with-description &-description {\n display: block;\n }\n\n &&-motion-leave {\n overflow: hidden;\n opacity: 1;\n transition: max-height 0.3s @ease-in-out-circ, opacity 0.3s @ease-in-out-circ,\n padding-top 0.3s @ease-in-out-circ, padding-bottom 0.3s @ease-in-out-circ,\n margin-bottom 0.3s @ease-in-out-circ;\n }\n\n &&-motion-leave-active {\n max-height: 0;\n margin-bottom: 0 !important;\n padding-top: 0;\n padding-bottom: 0;\n opacity: 0;\n }\n\n &-banner {\n margin-bottom: 0;\n border: 0;\n border-radius: 0;\n }\n}\n\n@import './rtl';\n",".@{alert-prefix-cls} {\n &&-rtl {\n direction: rtl;\n }\n\n &&-no-icon {\n .@{alert-prefix-cls}-rtl& {\n padding: @alert-no-icon-padding-vertical 15px;\n }\n }\n\n &-icon {\n .@{alert-prefix-cls}-rtl & {\n margin-right: auto;\n margin-left: @margin-xs;\n }\n }\n\n &-action {\n .@{alert-prefix-cls}-rtl & {\n margin-right: @margin-xs;\n margin-left: auto;\n }\n }\n\n &-close-icon {\n .@{alert-prefix-cls}-rtl & {\n margin-right: @margin-xs;\n margin-left: auto;\n }\n }\n\n &-with-description &-icon {\n .@{alert-prefix-cls}-rtl& {\n margin-right: auto;\n margin-left: @alert-with-description-padding-vertical;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@spin-prefix-cls: ~'@{ant-prefix}-spin';\n@spin-dot-default: @text-color-secondary;\n\n.@{spin-prefix-cls} {\n .reset-component();\n\n position: absolute;\n display: none;\n color: @primary-color;\n text-align: center;\n vertical-align: middle;\n opacity: 0;\n transition: transform 0.3s @ease-in-out-circ;\n\n &-spinning {\n position: static;\n display: inline-block;\n opacity: 1;\n }\n\n &-nested-loading {\n position: relative;\n > div > .@{spin-prefix-cls} {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 4;\n display: block;\n width: 100%;\n height: 100%;\n max-height: 400px;\n .@{spin-prefix-cls}-dot {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -(@spin-dot-size / 2);\n }\n .@{spin-prefix-cls}-text {\n position: absolute;\n top: 50%;\n width: 100%;\n padding-top: ((@spin-dot-size - @font-size-base) / 2) + 2px;\n text-shadow: 0 1px 2px @shadow-color-inverse;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size / 2) - 10px;\n }\n }\n\n > div > .@{spin-prefix-cls}-sm {\n .@{spin-prefix-cls}-dot {\n margin: -(@spin-dot-size-sm / 2);\n }\n .@{spin-prefix-cls}-text {\n padding-top: ((@spin-dot-size-sm - @font-size-base) / 2) + 2px;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size-sm / 2) - 10px;\n }\n }\n\n > div > .@{spin-prefix-cls}-lg {\n .@{spin-prefix-cls}-dot {\n margin: -(@spin-dot-size-lg / 2);\n }\n .@{spin-prefix-cls}-text {\n padding-top: ((@spin-dot-size-lg - @font-size-base) / 2) + 2px;\n }\n &.@{spin-prefix-cls}-show-text .@{spin-prefix-cls}-dot {\n margin-top: -(@spin-dot-size-lg / 2) - 10px;\n }\n }\n }\n\n &-container {\n position: relative;\n transition: opacity 0.3s;\n\n &::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 10;\n display: ~'none \\9';\n width: 100%;\n height: 100%;\n background: @component-background;\n opacity: 0;\n transition: all 0.3s;\n content: '';\n pointer-events: none;\n }\n }\n\n &-blur {\n clear: both;\n overflow: hidden;\n opacity: 0.5;\n user-select: none;\n pointer-events: none;\n\n &::after {\n opacity: 0.4;\n pointer-events: auto;\n }\n }\n\n // tip\n // ------------------------------\n &-tip {\n color: @spin-dot-default;\n }\n\n // dots\n // ------------------------------\n\n &-dot {\n position: relative;\n display: inline-block;\n font-size: @spin-dot-size;\n\n .square(1em);\n\n &-item {\n position: absolute;\n display: block;\n width: 9px;\n height: 9px;\n background-color: @primary-color;\n border-radius: 100%;\n transform: scale(0.75);\n transform-origin: 50% 50%;\n opacity: 0.3;\n animation: antSpinMove 1s infinite linear alternate;\n\n &:nth-child(1) {\n top: 0;\n left: 0;\n }\n &:nth-child(2) {\n top: 0;\n right: 0;\n animation-delay: 0.4s;\n }\n &:nth-child(3) {\n right: 0;\n bottom: 0;\n animation-delay: 0.8s;\n }\n &:nth-child(4) {\n bottom: 0;\n left: 0;\n animation-delay: 1.2s;\n }\n }\n\n &-spin {\n transform: rotate(45deg);\n animation: antRotate 1.2s infinite linear;\n }\n }\n\n // Sizes\n // ------------------------------\n\n // small\n &-sm &-dot {\n font-size: @spin-dot-size-sm;\n\n i {\n width: 6px;\n height: 6px;\n }\n }\n\n // large\n &-lg &-dot {\n font-size: @spin-dot-size-lg;\n\n i {\n width: 14px;\n height: 14px;\n }\n }\n\n &&-show-text &-text {\n display: block;\n }\n}\n\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n /* IE10+ */\n .@{spin-prefix-cls}-blur {\n background: @component-background;\n opacity: 0.5;\n }\n}\n\n@keyframes antSpinMove {\n to {\n opacity: 1;\n }\n}\n\n@keyframes antRotate {\n to {\n transform: rotate(405deg);\n }\n}\n\n@import './rtl';\n","// Sizing shortcuts\n\n.size(@width; @height) {\n width: @width;\n height: @height;\n}\n\n.square(@size) {\n .size(@size; @size);\n}\n",".@{spin-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-dot {\n &-spin {\n .@{spin-prefix-cls}-rtl & {\n transform: rotate(-45deg);\n animation-name: antRotateRtl;\n }\n }\n }\n}\n\n@keyframes antRotateRtl {\n to {\n transform: rotate(-405deg);\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@message-prefix-cls: ~'@{ant-prefix}-message';\n\n.@{message-prefix-cls} {\n .reset-component();\n\n position: fixed;\n top: 8px;\n left: 0;\n z-index: @zindex-message;\n width: 100%;\n pointer-events: none;\n\n &-notice {\n padding: 8px;\n text-align: center;\n }\n\n &-notice-content {\n display: inline-block;\n padding: @message-notice-content-padding;\n background: @message-notice-content-bg;\n border-radius: @border-radius-base;\n box-shadow: @shadow-2;\n pointer-events: all;\n }\n\n &-success .@{iconfont-css-prefix} {\n color: @success-color;\n }\n\n &-error .@{iconfont-css-prefix} {\n color: @error-color;\n }\n\n &-warning .@{iconfont-css-prefix} {\n color: @warning-color;\n }\n\n &-info .@{iconfont-css-prefix},\n &-loading .@{iconfont-css-prefix} {\n color: @info-color;\n }\n\n .@{iconfont-css-prefix} {\n position: relative;\n top: 1px;\n margin-right: 8px;\n font-size: @font-size-lg;\n }\n\n &-notice.move-up-leave.move-up-leave-active {\n animation-name: MessageMoveOut;\n animation-duration: 0.3s;\n }\n}\n\n@keyframes MessageMoveOut {\n 0% {\n max-height: 150px;\n padding: 8px;\n opacity: 1;\n }\n 100% {\n max-height: 0;\n padding: 0;\n opacity: 0;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@message-prefix-cls: ~'@{ant-prefix}-message';\n\n.@{message-prefix-cls}-rtl {\n direction: rtl;\n\n span {\n direction: rtl;\n }\n\n .@{iconfont-css-prefix} {\n margin-right: 0;\n margin-left: 8px;\n }\n}\n","@import 'box';\n\n.modal-mask() {\n pointer-events: none;\n\n &.zoom-enter,\n &.zoom-appear {\n transform: none; // reset scale avoid mousePosition bug\n opacity: 0;\n animation-duration: @animation-duration-slow;\n user-select: none; // https://github.com/ant-design/ant-design/issues/11777\n }\n\n &-mask {\n .box(fixed);\n z-index: @zindex-modal-mask;\n height: 100%;\n background-color: @modal-mask-bg;\n\n &-hidden {\n display: none;\n }\n }\n\n &-wrap {\n .box(fixed);\n overflow: auto;\n outline: 0;\n -webkit-overflow-scrolling: touch;\n }\n}\n","@dialog-prefix-cls: ~'@{ant-prefix}-modal';\n\n.@{dialog-prefix-cls} {\n .reset-component();\n .modal-mask();\n\n position: relative;\n top: 100px;\n width: auto;\n max-width: calc(100vw - 32px);\n margin: 0 auto;\n padding-bottom: 24px;\n\n &-wrap {\n z-index: @zindex-modal;\n }\n\n &-title {\n margin: 0;\n color: @modal-heading-color;\n font-weight: 500;\n font-size: @modal-header-title-font-size;\n line-height: @modal-header-title-line-height;\n word-wrap: break-word;\n }\n\n &-content {\n position: relative;\n background-color: @modal-content-bg;\n background-clip: padding-box;\n border: 0;\n border-radius: @border-radius-base;\n box-shadow: @shadow-2;\n pointer-events: auto;\n }\n\n &-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: @zindex-popup-close;\n padding: 0;\n color: @modal-close-color;\n font-weight: 700;\n line-height: 1;\n text-decoration: none;\n background: transparent;\n border: 0;\n outline: 0;\n cursor: pointer;\n transition: color 0.3s;\n\n &-x {\n display: block;\n width: @modal-header-close-size;\n height: @modal-header-close-size;\n font-size: @font-size-lg;\n font-style: normal;\n line-height: @modal-header-close-size;\n text-align: center;\n text-transform: none;\n text-rendering: auto;\n }\n\n &:focus,\n &:hover {\n color: @icon-color-hover;\n text-decoration: none;\n }\n }\n\n &-header {\n padding: @modal-header-padding;\n color: @text-color;\n background: @modal-header-bg;\n border-bottom: @modal-header-border-width @modal-header-border-style\n @modal-header-border-color-split;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n\n &-body {\n padding: @modal-body-padding;\n font-size: @font-size-base;\n line-height: @line-height-base;\n word-wrap: break-word;\n }\n\n &-footer {\n padding: @modal-footer-padding-vertical @modal-footer-padding-horizontal;\n text-align: right;\n background: @modal-footer-bg;\n border-top: @modal-footer-border-width @modal-footer-border-style\n @modal-footer-border-color-split;\n border-radius: 0 0 @border-radius-base @border-radius-base;\n\n .@{ant-prefix}-btn + .@{ant-prefix}-btn:not(.@{ant-prefix}-dropdown-trigger) {\n margin-bottom: 0;\n margin-left: 8px;\n }\n }\n\n &-open {\n overflow: hidden;\n }\n}\n\n.@{dialog-prefix-cls}-centered {\n text-align: center;\n &::before {\n display: inline-block;\n width: 0;\n height: 100%;\n vertical-align: middle;\n content: '';\n }\n .@{dialog-prefix-cls} {\n top: 0;\n display: inline-block;\n text-align: left;\n vertical-align: middle;\n }\n}\n\n@media (max-width: @screen-sm-max) {\n .@{dialog-prefix-cls} {\n max-width: calc(100vw - 16px);\n margin: 8px auto;\n }\n .@{dialog-prefix-cls}-centered {\n .@{dialog-prefix-cls} {\n flex: 1;\n }\n }\n}\n",".box(@position: absolute) {\n position: @position;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n","@import '../../style/mixins/index';\n\n@confirm-prefix-cls: ~'@{ant-prefix}-modal-confirm';\n\n.@{confirm-prefix-cls} {\n .@{ant-prefix}-modal-header {\n display: none;\n }\n\n .@{ant-prefix}-modal-body {\n padding: @modal-confirm-body-padding;\n }\n\n &-body-wrapper {\n .clearfix();\n }\n\n &-body {\n .@{confirm-prefix-cls}-title {\n display: block;\n // create BFC to avoid\n // https://user-images.githubusercontent.com/507615/37702510-ba844e06-2d2d-11e8-9b67-8e19be57f445.png\n overflow: hidden;\n color: @heading-color;\n font-weight: 500;\n font-size: @font-size-lg;\n line-height: 1.4;\n }\n\n .@{confirm-prefix-cls}-content {\n margin-top: 8px;\n color: @text-color;\n font-size: @font-size-base;\n }\n\n > .@{iconfont-css-prefix} {\n float: left;\n margin-right: 16px;\n font-size: 22px;\n\n // `content` after `icon` should set marginLeft\n + .@{confirm-prefix-cls}-title + .@{confirm-prefix-cls}-content {\n margin-left: 38px;\n }\n }\n }\n\n .@{confirm-prefix-cls}-btns {\n float: right;\n margin-top: 24px;\n\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n margin-bottom: 0;\n margin-left: 8px;\n }\n }\n\n &-error &-body > .@{iconfont-css-prefix} {\n color: @error-color;\n }\n\n &-warning &-body > .@{iconfont-css-prefix},\n &-confirm &-body > .@{iconfont-css-prefix} {\n color: @warning-color;\n }\n\n &-info &-body > .@{iconfont-css-prefix} {\n color: @info-color;\n }\n\n &-success &-body > .@{iconfont-css-prefix} {\n color: @success-color;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@dialog-prefix-cls: ~'@{ant-prefix}-modal';\n@confirm-prefix-cls: ~'@{ant-prefix}-modal-confirm';\n@dialog-wrap-rtl-cls: ~'@{dialog-prefix-cls}-wrap-rtl';\n\n.@{dialog-prefix-cls} {\n &-wrap {\n &-rtl {\n direction: rtl;\n }\n }\n\n &-close {\n .@{dialog-wrap-rtl-cls} & {\n right: initial;\n left: 0;\n }\n }\n\n &-footer {\n .@{dialog-wrap-rtl-cls} & {\n text-align: left;\n }\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n }\n\n &-confirm {\n &-body {\n .@{dialog-wrap-rtl-cls} & {\n direction: rtl;\n }\n > .@{iconfont-css-prefix} {\n .@{dialog-wrap-rtl-cls} & {\n float: right;\n margin-right: 0;\n margin-left: 16px;\n }\n + .@{confirm-prefix-cls}-title + .@{confirm-prefix-cls}-content {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 38px;\n margin-left: 0;\n }\n }\n }\n }\n &-btns {\n .@{dialog-wrap-rtl-cls} & {\n float: left;\n }\n .@{ant-prefix}-btn + .@{ant-prefix}-btn {\n .@{dialog-wrap-rtl-cls} & {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n }\n }\n}\n\n.@{dialog-prefix-cls}-centered {\n .@{dialog-prefix-cls} {\n .@{dialog-wrap-rtl-cls}& {\n text-align: right;\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './mixin';\n\n@btn-prefix-cls: ~'@{ant-prefix}-btn';\n\n// for compatible\n@btn-ghost-color: @text-color;\n@btn-ghost-bg: transparent;\n@btn-ghost-border: @border-color-base;\n\n// Button styles\n// -----------------------------\n.@{btn-prefix-cls} {\n // Fixing https://github.com/ant-design/ant-design/issues/12978\n // Fixing https://github.com/ant-design/ant-design/issues/20058\n // Fixing https://github.com/ant-design/ant-design/issues/19972\n // Fixing https://github.com/ant-design/ant-design/issues/18107\n // Fixing https://github.com/ant-design/ant-design/issues/13214\n // It is a render problem of chrome, which is only happened in the codesandbox demo\n // 0.001px solution works and I don't why\n line-height: @btn-line-height;\n .btn();\n .btn-default();\n\n // Fix loading button animation\n // https://github.com/ant-design/ant-design/issues/24323\n > span {\n display: inline-block;\n }\n\n &-primary {\n .btn-primary();\n\n .@{btn-prefix-cls}-group &:not(:first-child):not(:last-child) {\n border-right-color: @btn-group-border;\n border-left-color: @btn-group-border;\n\n &:disabled {\n border-color: @btn-default-border;\n }\n }\n\n .@{btn-prefix-cls}-group &:first-child {\n &:not(:last-child) {\n border-right-color: @btn-group-border;\n\n &[disabled] {\n border-right-color: @btn-default-border;\n }\n }\n }\n\n .@{btn-prefix-cls}-group &:last-child:not(:first-child),\n .@{btn-prefix-cls}-group & + & {\n border-left-color: @btn-group-border;\n\n &[disabled] {\n border-left-color: @btn-default-border;\n }\n }\n }\n\n &-ghost {\n .btn-ghost();\n }\n\n &-dashed {\n .btn-dashed();\n }\n\n // type=\"danger\" will deprecated\n // use danger instead\n &-danger {\n .btn-danger();\n }\n\n &-link {\n .btn-link();\n }\n\n &-text {\n .btn-text();\n }\n\n &-dangerous {\n .btn-danger-default();\n }\n\n &-dangerous&-primary {\n .btn-danger();\n }\n\n &-dangerous&-link {\n .btn-danger-link();\n }\n\n &-dangerous&-text {\n .btn-danger-text();\n }\n\n &-icon-only {\n .btn-square(@btn-prefix-cls);\n vertical-align: -1px;\n }\n\n &-round {\n .btn-round(@btn-prefix-cls);\n &.@{btn-prefix-cls}-icon-only {\n width: auto;\n }\n }\n\n &-circle {\n .btn-circle(@btn-prefix-cls);\n }\n\n &::before {\n position: absolute;\n top: -@btn-border-width;\n right: -@btn-border-width;\n bottom: -@btn-border-width;\n left: -@btn-border-width;\n z-index: 1;\n display: none;\n background: @component-background;\n border-radius: inherit;\n opacity: 0.35;\n transition: opacity 0.2s;\n content: '';\n pointer-events: none;\n }\n\n .@{iconfont-css-prefix} {\n transition: margin-left 0.3s @ease-in-out;\n\n // Follow icon blur under windows. Change the render.\n // https://github.com/ant-design/ant-design/issues/13924\n &.@{iconfont-css-prefix}-plus,\n &.@{iconfont-css-prefix}-minus {\n > svg {\n shape-rendering: optimizeSpeed;\n }\n }\n }\n\n &&-loading {\n position: relative;\n &:not([disabled]) {\n pointer-events: none;\n }\n\n &::before {\n display: block;\n }\n }\n\n & > &-loading-icon {\n transition: all 0.3s @ease-in-out;\n\n .@{iconfont-css-prefix} {\n padding-right: @padding-xs;\n animation: none;\n // for smooth button padding transition\n svg {\n animation: loadingCircle 1s infinite linear;\n }\n }\n\n &:only-child {\n .@{iconfont-css-prefix} {\n padding-right: 0;\n }\n }\n }\n\n &-group {\n .btn-group(@btn-prefix-cls);\n }\n\n // http://stackoverflow.com/a/21281554/3040605\n &:focus > span,\n &:active > span {\n position: relative;\n }\n\n // To ensure that a space will be placed between character and `Icon`.\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n margin-left: @margin-xs;\n }\n\n &-background-ghost {\n color: @btn-default-ghost-color;\n background: @btn-default-ghost-bg !important;\n border-color: @btn-default-ghost-border;\n }\n\n &-background-ghost&-primary {\n .button-variant-ghost(@btn-primary-bg);\n }\n\n &-background-ghost&-danger {\n .button-variant-ghost(@btn-danger-border);\n }\n\n &-background-ghost&-dangerous {\n .button-variant-ghost(@btn-danger-border);\n }\n\n &-background-ghost&-dangerous&-link {\n .button-variant-ghost(@btn-danger-border, transparent);\n }\n\n &-two-chinese-chars::first-letter {\n letter-spacing: 0.34em;\n }\n\n &-two-chinese-chars > *:not(.@{iconfont-css-prefix}) {\n margin-right: -0.34em;\n letter-spacing: 0.34em;\n }\n\n &-block {\n width: 100%;\n }\n\n // https://github.com/ant-design/ant-design/issues/12681\n // same method as Select\n &:empty {\n display: inline-block;\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n}\n\na.@{btn-prefix-cls} {\n // Fixing https://github.com/ant-design/ant-design/issues/12978\n // https://github.com/ant-design/ant-design/issues/29978\n // It is a render problem of chrome, which is only happened in the codesandbox demo\n // 0.1px for padding-top solution works and I don't why\n padding-top: 0.01px !important;\n line-height: @btn-height-base - 2px;\n\n &-lg {\n line-height: @btn-height-lg - 2px;\n }\n &-sm {\n line-height: @btn-height-sm - 2px;\n }\n}\n\n@import './rtl';\n","// mixins for button\n// ------------------------\n.button-size(@height; @padding-horizontal; @font-size; @border-radius) {\n @padding-vertical: max(\n (round(((@height - @font-size * @line-height-base) / 2) * 10) / 10) - @border-width-base,\n 0\n );\n height: @height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n border-radius: @border-radius;\n}\n\n.button-disabled(@color: @btn-disable-color; @background: @btn-disable-bg; @border: @btn-disable-border) {\n &[disabled] {\n &,\n &:hover,\n &:focus,\n &:active {\n .button-color(@color; @background; @border);\n\n text-shadow: none;\n box-shadow: none;\n }\n }\n}\n\n.button-variant-primary(@color; @background) {\n .button-color(@color; @background; @background);\n\n text-shadow: @btn-text-shadow;\n box-shadow: @btn-primary-shadow;\n\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 7) `; ~`colorPalette('@{background}', 7) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 5) `; ~`colorPalette('@{background}', 5) `\n );\n }\n }\n\n &:active {\n & when (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 5) `; ~`colorPalette('@{background}', 5) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n @color; ~`colorPalette('@{background}', 7) `; ~`colorPalette('@{background}', 7) `\n );\n }\n }\n\n .button-disabled();\n}\n\n.button-variant-other(@color; @background; @border) {\n .button-color(@color; @background; @border);\n\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(@primary-5; @background; @primary-5);\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{btn-primary-bg}', 5) `; @background;\n ~`colorPalette('@{btn-primary-bg}', 5) `\n );\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(@primary-7; @background; @primary-7);\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{btn-primary-bg}', 7) `; @background;\n ~`colorPalette('@{btn-primary-bg}', 7) `\n );\n }\n }\n .button-disabled();\n}\n.button-variant-ghost(@color; @border: @color) {\n .button-color(@color; transparent; @border);\n text-shadow: none;\n &:hover,\n &:focus {\n & when (@border = transparent) {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 7) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 5) `; transparent; transparent);\n }\n }\n & when not (@border = transparent) {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 7) `; transparent; ~`colorPalette('@{color}', 7) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 5) `; transparent; ~`colorPalette('@{color}', 5) `\n );\n }\n }\n }\n &:active {\n & when (@border = transparent) {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 5) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{color}', 7) `; transparent; transparent);\n }\n }\n & when not(@border = transparent) {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 5) `; transparent; ~`colorPalette('@{color}', 5) `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{color}', 7) `; transparent; ~`colorPalette('@{color}', 7) `\n );\n }\n }\n }\n .button-disabled();\n}\n.button-color(@color; @background; @border) {\n color: @color;\n background: @background;\n border-color: @border; // a inside Button which only work in Chrome\n // http://stackoverflow.com/a/17253457\n > a:only-child {\n color: currentColor;\n &::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: transparent;\n content: '';\n }\n }\n}\n.button-group-base(@btnClassName) {\n position: relative;\n display: inline-flex;\n > .@{btnClassName},\n > span > .@{btnClassName} {\n position: relative;\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n &[disabled] {\n z-index: 0;\n }\n }\n .@{btnClassName}-icon-only {\n font-size: @font-size-base;\n }\n // size\n &-lg > .@{btnClassName},\n &-lg > span > .@{btnClassName} {\n .button-size(@btn-height-lg; @btn-padding-horizontal-lg; @btn-font-size-lg; 0);\n }\n &-lg .@{btnClassName}.@{btnClassName}-icon-only {\n .square(@btn-height-lg);\n padding-right: 0;\n padding-left: 0;\n }\n &-sm > .@{btnClassName},\n &-sm > span > .@{btnClassName} {\n .button-size(@btn-height-sm; @btn-padding-horizontal-sm; @font-size-base; 0);\n > .@{iconfont-css-prefix} {\n font-size: @font-size-base;\n }\n }\n &-sm .@{btnClassName}.@{btnClassName}-icon-only {\n .square(@btn-height-sm);\n padding-right: 0;\n padding-left: 0;\n }\n}\n// Base styles of buttons\n// --------------------------------------------------\n.btn() {\n position: relative;\n display: inline-block;\n font-weight: @btn-font-weight;\n white-space: nowrap;\n text-align: center;\n background-image: none;\n border: @btn-border-width @btn-border-style transparent;\n box-shadow: @btn-shadow;\n cursor: pointer;\n transition: all 0.3s @ease-in-out;\n user-select: none;\n touch-action: manipulation;\n .button-size(\n @btn-height-base; @btn-padding-horizontal-base; @font-size-base; @btn-border-radius-base\n );\n > .@{iconfont-css-prefix} {\n line-height: 1;\n }\n &,\n &:active,\n &:focus {\n outline: 0;\n }\n &:not([disabled]):hover {\n text-decoration: none;\n }\n &:not([disabled]):active {\n outline: 0;\n box-shadow: none;\n }\n &[disabled] {\n cursor: not-allowed;\n > * {\n pointer-events: none;\n }\n }\n &-lg {\n .button-size(\n @btn-height-lg; @btn-padding-horizontal-lg; @btn-font-size-lg; @btn-border-radius-base\n );\n }\n &-sm {\n .button-size(\n @btn-height-sm; @btn-padding-horizontal-sm; @btn-font-size-sm; @btn-border-radius-sm\n );\n }\n}\n// primary button style\n.btn-primary() {\n .button-variant-primary(@btn-primary-color; @btn-primary-bg);\n}\n// default button style\n.btn-default() {\n .button-variant-other(@btn-default-color; @btn-default-bg; @btn-default-border);\n &:hover,\n &:focus,\n &:active {\n text-decoration: none;\n background: @btn-default-bg;\n }\n}\n// ghost button style\n.btn-ghost() {\n .button-variant-other(@btn-ghost-color, @btn-ghost-bg, @btn-ghost-border);\n}\n// dashed button style\n.btn-dashed() {\n .button-variant-other(@btn-default-color, @btn-default-bg, @btn-default-border);\n border-style: dashed;\n}\n// danger button style\n.btn-danger() {\n .button-variant-primary(@btn-danger-color, @btn-danger-bg);\n}\n// danger default button style\n.btn-danger-default() {\n .button-color(@error-color, @btn-default-bg, @error-color);\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 7) `; @btn-default-bg; ~`colorPalette('@{error-color}', 7)\n `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 5) `; @btn-default-bg; ~`colorPalette('@{error-color}', 5)\n `\n );\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 5) `; @btn-default-bg; ~`colorPalette('@{error-color}', 5)\n `\n );\n }\n & when not (@theme = dark) {\n .button-color(\n ~`colorPalette('@{error-color}', 7) `; @btn-default-bg; ~`colorPalette('@{error-color}', 7)\n `\n );\n }\n }\n .button-disabled();\n}\n// danger link button style\n.btn-danger-link() {\n .button-variant-other(@error-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; transparent; transparent);\n }\n }\n &:active {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; transparent; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; transparent; transparent);\n }\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// link button style\n.btn-link() {\n .button-variant-other(@link-color, transparent, transparent);\n box-shadow: none;\n &:hover {\n background: @btn-link-hover-bg;\n }\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// text button style\n.btn-text() {\n .button-variant-other(@text-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n color: @text-color;\n background: @btn-text-hover-bg;\n border-color: transparent;\n }\n\n &:active {\n color: @text-color;\n background: fadein(@btn-text-hover-bg, 1%);\n border-color: transparent;\n }\n\n .button-disabled(@disabled-color; transparent; transparent);\n}\n.btn-danger-text() {\n .button-variant-other(@error-color, transparent, transparent);\n box-shadow: none;\n &:hover,\n &:focus {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; @btn-text-hover-bg; transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; @btn-text-hover-bg; transparent);\n }\n }\n\n &:active {\n & when (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 5) `; fadein(@btn-text-hover-bg, 1%); transparent);\n }\n & when not (@theme = dark) {\n .button-color(~`colorPalette('@{error-color}', 7) `; fadein(@btn-text-hover-bg, 1%); transparent);\n }\n }\n .button-disabled(@disabled-color; transparent; transparent);\n}\n// round button\n.btn-round(@btnClassName: btn) {\n .button-size(@btn-circle-size; (@btn-circle-size / 2); @font-size-base; @btn-circle-size);\n &.@{btnClassName}-lg {\n .button-size(\n @btn-circle-size-lg; (@btn-circle-size-lg / 2); @btn-font-size-lg; @btn-circle-size-lg\n );\n }\n &.@{btnClassName}-sm {\n .button-size(\n @btn-circle-size-sm; (@btn-circle-size-sm / 2); @font-size-base; @btn-circle-size-sm\n );\n }\n}\n// square button: the content only contains icon\n.btn-square(@btnClassName: btn) {\n .square(@btn-square-size);\n .button-size(@btn-square-size; 0; @btn-square-only-icon-size; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size;\n }\n &.@{btnClassName}-lg {\n .square(@btn-square-size-lg);\n .button-size(@btn-square-size-lg; 0; @btn-square-only-icon-size-lg; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size-lg;\n }\n }\n &.@{btnClassName}-sm {\n .square(@btn-square-size-sm);\n .button-size(@btn-square-size-sm; 0; @btn-square-only-icon-size-sm; @btn-border-radius-base);\n & > * {\n font-size: @btn-square-only-icon-size-sm;\n }\n }\n}\n// circle button: the content only contains icon\n.btn-circle(@btnClassName: btn) {\n min-width: @btn-height-base;\n padding-right: 0;\n padding-left: 0;\n text-align: center;\n border-radius: 50%;\n &.@{btnClassName}-lg {\n min-width: @btn-height-lg;\n border-radius: 50%;\n }\n &.@{btnClassName}-sm {\n min-width: @btn-height-sm;\n border-radius: 50%;\n }\n}\n// Horizontal button groups style\n// --------------------------------------------------\n.btn-group(@btnClassName: btn) {\n .button-group-base(@btnClassName);\n .@{btnClassName} + .@{btnClassName},\n .@{btnClassName} + &,\n span + .@{btnClassName},\n .@{btnClassName} + span,\n > span + span,\n & + .@{btnClassName},\n & + & {\n margin-left: -1px;\n }\n .@{btnClassName}-primary + .@{btnClassName}:not(.@{btnClassName}-primary):not([disabled]) {\n border-left-color: transparent;\n }\n .@{btnClassName} {\n border-radius: 0;\n }\n > .@{btnClassName}:first-child,\n > span:first-child > .@{btnClassName} {\n margin-left: 0;\n }\n > .@{btnClassName}:only-child {\n border-radius: @btn-border-radius-base;\n }\n > span:only-child > .@{btnClassName} {\n border-radius: @btn-border-radius-base;\n }\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n border-top-left-radius: @btn-border-radius-base;\n border-bottom-left-radius: @btn-border-radius-base;\n }\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n border-top-right-radius: @btn-border-radius-base;\n border-bottom-right-radius: @btn-border-radius-base;\n }\n &-sm {\n > .@{btnClassName}:only-child {\n border-radius: @btn-border-radius-sm;\n }\n > span:only-child > .@{btnClassName} {\n border-radius: @btn-border-radius-sm;\n }\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n border-top-left-radius: @btn-border-radius-sm;\n border-bottom-left-radius: @btn-border-radius-sm;\n }\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n border-top-right-radius: @btn-border-radius-sm;\n border-bottom-right-radius: @btn-border-radius-sm;\n }\n }\n & > & {\n float: left;\n }\n & > &:not(:first-child):not(:last-child) > .@{btnClassName} {\n border-radius: 0;\n }\n & > &:first-child:not(:last-child) {\n > .@{btnClassName}:last-child {\n padding-right: 8px;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n & > &:last-child:not(:first-child) > .@{btnClassName}:first-child {\n padding-left: 8px;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n}\n",".@{btn-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-primary {\n .@{btn-prefix-cls}-group &:last-child:not(:first-child),\n .@{btn-prefix-cls}-group & + & {\n .@{btn-prefix-cls}-group-rtl& {\n border-right-color: @btn-group-border;\n border-left-color: @btn-default-border;\n }\n &[disabled] {\n .@{btn-prefix-cls}-group-rtl& {\n border-right-color: @btn-default-border;\n border-left-color: @btn-group-border;\n }\n }\n }\n }\n\n & > &-loading-icon {\n .@{iconfont-css-prefix} {\n .@{btn-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @margin-xs;\n }\n }\n\n &:only-child {\n .@{iconfont-css-prefix} {\n padding-right: 0;\n padding-left: 0;\n }\n }\n }\n\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n .@{btn-prefix-cls}-rtl& {\n margin-right: 8px;\n margin-left: 0;\n }\n }\n}\n\n// mixin\n.btn-group(@btnClassName: btn) {\n .@{btnClassName} + .@{btnClassName},\n .@{btnClassName} + &,\n span + .@{btnClassName},\n .@{btnClassName} + span,\n > span + span,\n & + .@{btnClassName},\n & + & {\n .@{btnClassName}-rtl&,\n .@{btnClassName}-group-rtl& {\n margin-right: -1px;\n margin-left: auto;\n }\n }\n\n &.@{btnClassName}-group-rtl {\n direction: rtl;\n }\n\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: 0;\n border-top-right-radius: @btn-border-radius-base;\n border-bottom-right-radius: @btn-border-radius-base;\n border-bottom-left-radius: 0;\n }\n }\n\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: @btn-border-radius-base;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: @btn-border-radius-base;\n }\n }\n\n &-sm {\n > .@{btnClassName}:first-child:not(:last-child),\n > span:first-child:not(:last-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: 0;\n border-top-right-radius: @btn-border-radius-sm;\n border-bottom-right-radius: @btn-border-radius-sm;\n border-bottom-left-radius: 0;\n }\n }\n\n > .@{btnClassName}:last-child:not(:first-child),\n > span:last-child:not(:first-child) > .@{btnClassName} {\n .@{btnClassName}-group-rtl& {\n border-top-left-radius: @btn-border-radius-sm;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: @btn-border-radius-sm;\n }\n }\n }\n}\n","@import './index';\n\n@selection-item-padding: ceil(@font-size-base * 1.25);\n\n.@{select-prefix-cls}-single {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n display: flex;\n\n .@{select-prefix-cls}-selection-search {\n position: absolute;\n top: 0;\n right: @input-padding-horizontal-base;\n bottom: 0;\n left: @input-padding-horizontal-base;\n\n &-input {\n width: 100%;\n }\n }\n\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n padding: 0;\n line-height: @select-height-without-border;\n transition: all 0.3s;\n\n // Firefox inline-block position calculation is not same as Chrome & Safari. Patch this:\n @supports (-moz-appearance: meterbar) {\n & {\n line-height: @select-height-without-border;\n }\n }\n }\n\n .@{select-prefix-cls}-selection-item {\n position: relative;\n user-select: none;\n }\n\n .@{select-prefix-cls}-selection-placeholder {\n pointer-events: none;\n }\n\n // For common baseline align\n &::after,\n // For '' value baseline align\n .@{select-prefix-cls}-selection-item::after,\n // For undefined value baseline align\n .@{select-prefix-cls}-selection-placeholder::after {\n display: inline-block;\n width: 0;\n visibility: hidden;\n content: '\\a0';\n }\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-base + @font-size-base;\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n padding-right: @selection-item-padding;\n }\n\n // Opacity selection if open\n &.@{select-prefix-cls}-open .@{select-prefix-cls}-selection-item {\n color: @input-placeholder-color;\n }\n\n // ========================== Input ==========================\n // We only change the style of non-customize input which is only support by `combobox` mode.\n\n // Not customize\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n width: 100%;\n height: @input-height-base;\n padding: 0 @input-padding-horizontal-base;\n\n .@{select-prefix-cls}-selection-search-input {\n height: @select-height-without-border;\n }\n\n &::after {\n line-height: @select-height-without-border;\n }\n }\n }\n\n &.@{select-prefix-cls}-customize-input {\n .@{select-prefix-cls}-selector {\n &::after {\n display: none;\n }\n\n .@{select-prefix-cls}-selection-search {\n position: static;\n width: 100%;\n }\n\n .@{select-prefix-cls}-selection-placeholder {\n position: absolute;\n right: 0;\n left: 0;\n padding: 0 @input-padding-horizontal-base;\n\n &::after {\n display: none;\n }\n }\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n .select-size(@suffix, @input-height) {\n @merged-cls: ~'@{select-prefix-cls}-@{suffix}';\n\n &.@{merged-cls}:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n height: @input-height;\n\n &::after,\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n line-height: @input-height - 2 * @border-width-base;\n }\n }\n\n // Not customize\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selection-search-input {\n height: @input-height - 2 * @border-width-base;\n }\n }\n }\n }\n\n .select-size('lg', @select-single-item-height-lg);\n .select-size('sm', @input-height-sm);\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-sm;\n left: @input-padding-horizontal-sm;\n }\n\n .@{select-prefix-cls}-selector {\n padding: 0 @input-padding-horizontal-sm;\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n right: @input-padding-horizontal-sm + @font-size-base * 1.5;\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n padding-right: @font-size-base * 1.5;\n }\n }\n }\n\n &.@{select-prefix-cls}-lg {\n &:not(.@{select-prefix-cls}-customize-input) {\n .@{select-prefix-cls}-selector {\n padding: 0 @input-padding-horizontal-lg;\n }\n }\n }\n}\n","@import './index';\n\n@select-overflow-prefix-cls: ~'@{select-prefix-cls}-selection-overflow';\n@select-multiple-item-border-width: 1px;\n\n@select-multiple-padding: max(\n @input-padding-vertical-base - @select-multiple-item-border-width -\n @select-multiple-item-spacing-half,\n 0\n);\n\n/**\n * Do not merge `height` & `line-height` under style with `selection` & `search`,\n * since chrome may update to redesign with its align logic.\n */\n\n// =========================== Overflow ===========================\n.@{select-overflow-prefix-cls} {\n position: relative;\n display: flex;\n flex: auto;\n flex-wrap: wrap;\n max-width: 100%;\n\n &-item {\n flex: none;\n align-self: center;\n max-width: 100%;\n }\n}\n\n.@{select-prefix-cls} {\n &-multiple {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n // Multiple is little different that horizontal is follow the vertical\n padding: @select-multiple-padding @input-padding-vertical-base;\n\n .@{select-prefix-cls}-show-search& {\n cursor: text;\n }\n\n .@{select-prefix-cls}-disabled& {\n background: @select-multiple-disabled-background;\n cursor: not-allowed;\n }\n\n &::after {\n display: inline-block;\n width: 0;\n margin: @select-multiple-item-spacing-half 0;\n line-height: @select-multiple-item-height;\n content: '\\a0';\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selector,\n &.@{select-prefix-cls}-allow-clear .@{select-prefix-cls}-selector {\n padding-right: @font-size-sm + @control-padding-horizontal;\n }\n\n // ======================== Selections ========================\n .@{select-prefix-cls}-selection-item {\n position: relative;\n display: flex;\n flex: none;\n box-sizing: border-box;\n max-width: 100%;\n\n height: @select-multiple-item-height;\n margin-top: @select-multiple-item-spacing-half;\n margin-bottom: @select-multiple-item-spacing-half;\n line-height: @select-multiple-item-height - @select-multiple-item-border-width * 2;\n background: @select-selection-item-bg;\n border: 1px solid @select-selection-item-border-color;\n border-radius: @border-radius-base;\n cursor: default;\n transition: font-size 0.3s, line-height 0.3s, height 0.3s;\n user-select: none;\n margin-inline-end: @input-padding-vertical-base;\n padding-inline-start: @padding-xs;\n padding-inline-end: (@padding-xs / 2);\n\n .@{select-prefix-cls}-disabled& {\n color: @select-multiple-item-disabled-color;\n border-color: @select-multiple-item-disabled-border-color;\n cursor: not-allowed;\n }\n\n // It's ok not to do this, but 24px makes bottom narrow in view should adjust\n &-content {\n display: inline-block;\n margin-right: (@padding-xs / 2);\n overflow: hidden;\n white-space: pre; // fix whitespace wrapping. custom tags display all whitespace within.\n text-overflow: ellipsis;\n }\n\n &-remove {\n .iconfont-mixin();\n display: inline-block;\n color: @text-color-secondary;\n font-weight: bold;\n font-size: 10px;\n line-height: inherit;\n cursor: pointer;\n\n > .@{iconfont-css-prefix} {\n vertical-align: -0.2em;\n }\n\n &:hover {\n color: @icon-color-hover;\n }\n }\n }\n\n // ========================== Input ==========================\n .@{select-overflow-prefix-cls}-item + .@{select-overflow-prefix-cls}-item {\n .@{select-prefix-cls}-selection-search {\n margin-inline-start: 0;\n }\n }\n\n .@{select-prefix-cls}-selection-search {\n position: relative;\n max-width: 100%;\n margin-top: @select-multiple-item-spacing-half;\n margin-bottom: @select-multiple-item-spacing-half;\n margin-inline-start: @input-padding-horizontal-base - @input-padding-vertical-base;\n\n &-input,\n &-mirror {\n height: @select-multiple-item-height;\n font-family: @font-family;\n line-height: @select-multiple-item-height;\n transition: all 0.3s;\n }\n\n &-input {\n width: 100%;\n min-width: 4.1px; // fix search cursor missing\n }\n\n &-mirror {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 999;\n white-space: pre; // fix whitespace wrapping caused width calculation bug\n visibility: hidden;\n }\n }\n\n // ======================= Placeholder =======================\n .@{select-prefix-cls}-selection-placeholder {\n position: absolute;\n top: 50%;\n right: @input-padding-horizontal;\n left: @input-padding-horizontal;\n transform: translateY(-50%);\n transition: all 0.3s;\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n .select-size(@suffix, @input-height) {\n @merged-cls: ~'@{select-prefix-cls}-@{suffix}';\n &.@{merged-cls} {\n @select-selection-height: @input-height - @input-padding-vertical-base * 2;\n @select-height-without-border: @input-height - @border-width-base * 2;\n\n .@{select-prefix-cls}-selector::after {\n line-height: @select-selection-height;\n }\n\n .@{select-prefix-cls}-selection-item {\n height: @select-selection-height;\n line-height: @select-selection-height - @border-width-base * 2;\n }\n\n .@{select-prefix-cls}-selection-search {\n height: @select-selection-height;\n line-height: @select-selection-height;\n\n &-input,\n &-mirror {\n height: @select-selection-height;\n line-height: @select-selection-height - @border-width-base * 2;\n }\n }\n }\n }\n\n .select-size('lg', @input-height-lg);\n .select-size('sm', @input-height-sm);\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n .@{select-prefix-cls}-selection-placeholder {\n left: @input-padding-horizontal-sm;\n }\n // https://github.com/ant-design/ant-design/issues/29559\n .@{select-prefix-cls}-selection-search {\n margin-inline-start: 3px;\n }\n }\n &.@{select-prefix-cls}-lg {\n .@{select-prefix-cls}-selection-item {\n height: @select-multiple-item-height-lg;\n line-height: @select-multiple-item-height-lg;\n }\n }\n }\n\n &-disabled .@{select-prefix-cls}-selection-item-remove {\n display: none;\n }\n}\n",".iconfont-mixin() {\n display: inline-block;\n color: @icon-color;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em; // for SVG icon, see https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n > * {\n line-height: 1;\n }\n\n svg {\n display: inline-block;\n }\n\n &::before {\n display: none; // dont display old icon.\n }\n\n & &-icon {\n display: block;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n\n@import './single';\n@import './multiple';\n\n@select-prefix-cls: ~'@{ant-prefix}-select';\n@select-height-without-border: @input-height-base - 2 * @border-width-base;\n@select-dropdown-edge-child-vertical-padding: @dropdown-edge-child-vertical-padding;\n\n.select-selector() {\n position: relative;\n background-color: @select-background;\n border: @border-width-base @border-style-base @select-border-color;\n border-radius: @border-radius-base;\n transition: all 0.3s @ease-in-out;\n\n input {\n cursor: pointer;\n }\n\n .@{select-prefix-cls}-show-search& {\n cursor: text;\n\n input {\n cursor: auto;\n }\n }\n\n .@{select-prefix-cls}-focused:not(.@{select-prefix-cls}-disabled)& {\n .active();\n }\n\n .@{select-prefix-cls}-disabled& {\n color: @disabled-color;\n background: @input-disabled-bg;\n cursor: not-allowed;\n\n .@{select-prefix-cls}-multiple& {\n background: @select-multiple-disabled-background;\n }\n\n input {\n cursor: not-allowed;\n }\n }\n}\n\n/* Reset search input style */\n.select-search-input-without-border() {\n .@{select-prefix-cls}-selection-search-input {\n margin: 0;\n padding: 0;\n background: transparent;\n border: none;\n outline: none;\n appearance: none;\n\n &::-webkit-search-cancel-button {\n display: none;\n -webkit-appearance: none;\n }\n }\n}\n\n.@{select-prefix-cls} {\n .reset-component();\n position: relative;\n display: inline-block;\n cursor: pointer;\n\n &:not(&-customize-input) &-selector {\n .select-selector();\n .select-search-input-without-border();\n }\n\n &:not(&-disabled):hover &-selector {\n .hover();\n }\n\n // ======================== Selection ========================\n &-selection-item {\n flex: 1;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n // IE11 css hack. `*::-ms-backdrop,` is a must have\n @media all and (-ms-high-contrast: none) {\n *::-ms-backdrop,\n & {\n flex: auto;\n }\n }\n }\n\n // ======================= Placeholder =======================\n &-selection-placeholder {\n flex: 1;\n overflow: hidden;\n color: @input-placeholder-color;\n white-space: nowrap;\n text-overflow: ellipsis;\n pointer-events: none;\n\n // IE11 css hack. `*::-ms-backdrop,` is a must have\n @media all and (-ms-high-contrast: none) {\n *::-ms-backdrop,\n & {\n flex: auto;\n }\n }\n }\n\n // ========================== Arrow ==========================\n &-arrow {\n .iconfont-mixin();\n position: absolute;\n top: 53%;\n right: @control-padding-horizontal - 1px;\n width: @font-size-sm;\n height: @font-size-sm;\n margin-top: (-@font-size-sm / 2);\n color: @disabled-color;\n font-size: @font-size-sm;\n line-height: 1;\n text-align: center;\n pointer-events: none;\n\n .@{iconfont-css-prefix} {\n vertical-align: top;\n transition: transform 0.3s;\n\n > svg {\n vertical-align: top;\n }\n\n &:not(.@{select-prefix-cls}-suffix) {\n pointer-events: auto;\n }\n }\n\n .@{select-prefix-cls}-disabled & {\n cursor: not-allowed;\n }\n }\n\n // ========================== Clear ==========================\n &-clear {\n position: absolute;\n top: 50%;\n right: @control-padding-horizontal - 1px;\n z-index: 1;\n display: inline-block;\n width: @font-size-sm;\n height: @font-size-sm;\n margin-top: (-@font-size-sm / 2);\n color: @disabled-color;\n font-size: @font-size-sm;\n font-style: normal;\n line-height: 1;\n text-align: center;\n text-transform: none;\n background: @select-clear-background;\n cursor: pointer;\n opacity: 0;\n transition: color 0.3s ease, opacity 0.15s ease;\n text-rendering: auto;\n &::before {\n display: block;\n }\n &:hover {\n color: @text-color-secondary;\n }\n\n .@{select-prefix-cls}:hover & {\n opacity: 1;\n }\n }\n\n // ========================== Popup ==========================\n &-dropdown {\n .reset-component();\n position: absolute;\n top: -9999px;\n left: -9999px;\n z-index: @zindex-dropdown;\n box-sizing: border-box;\n padding: @select-dropdown-edge-child-vertical-padding 0;\n overflow: hidden;\n font-size: @font-size-base;\n // Fix select render lag of long text in chrome\n // https://github.com/ant-design/ant-design/issues/11456\n // https://github.com/ant-design/ant-design/issues/11843\n font-variant: initial;\n background-color: @select-dropdown-bg;\n border-radius: @border-radius-base;\n outline: none;\n box-shadow: @box-shadow-base;\n\n &.slide-up-enter.slide-up-enter-active&-placement-bottomLeft,\n &.slide-up-appear.slide-up-appear-active&-placement-bottomLeft {\n animation-name: antSlideUpIn;\n }\n\n &.slide-up-enter.slide-up-enter-active&-placement-topLeft,\n &.slide-up-appear.slide-up-appear-active&-placement-topLeft {\n animation-name: antSlideDownIn;\n }\n\n &.slide-up-leave.slide-up-leave-active&-placement-bottomLeft {\n animation-name: antSlideUpOut;\n }\n\n &.slide-up-leave.slide-up-leave-active&-placement-topLeft {\n animation-name: antSlideDownOut;\n }\n\n &-hidden {\n display: none;\n }\n\n &-empty {\n color: @disabled-color;\n }\n }\n\n // ========================= Options =========================\n .item() {\n position: relative;\n display: block;\n min-height: @select-dropdown-height;\n padding: @select-dropdown-vertical-padding @control-padding-horizontal;\n color: @text-color;\n font-weight: normal;\n font-size: @select-dropdown-font-size;\n line-height: @select-dropdown-line-height;\n }\n\n &-item-empty {\n .item();\n color: @disabled-color;\n }\n\n &-item {\n .item();\n\n cursor: pointer;\n transition: background 0.3s ease;\n\n // =========== Group ============\n &-group {\n color: @text-color-secondary;\n font-size: @font-size-sm;\n cursor: default;\n }\n\n // =========== Option ===========\n &-option {\n display: flex;\n\n &-content {\n flex: auto;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n &-state {\n flex: none;\n }\n\n &-active:not(&-disabled) {\n background-color: @select-item-active-bg;\n }\n\n &-selected:not(&-disabled) {\n color: @select-item-selected-color;\n font-weight: @select-item-selected-font-weight;\n background-color: @select-item-selected-bg;\n\n .@{select-prefix-cls}-item-option-state {\n color: @primary-color;\n }\n }\n\n &-disabled {\n color: @disabled-color;\n cursor: not-allowed;\n }\n\n &-grouped {\n padding-left: @control-padding-horizontal * 2;\n }\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n &-lg {\n font-size: @font-size-lg;\n }\n\n // no border style\n &-borderless &-selector {\n background-color: transparent !important;\n border-color: transparent !important;\n box-shadow: none !important;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import '../../input/style/mixin';\n\n@select-prefix-cls: ~'@{ant-prefix}-select';\n\n.@{select-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n // ========================== Arrow ==========================\n &-arrow {\n .@{select-prefix-cls}-rtl & {\n right: initial;\n left: @control-padding-horizontal - 1px;\n }\n }\n\n // ========================== Clear ==========================\n &-clear {\n .@{select-prefix-cls}-rtl & {\n right: initial;\n left: @control-padding-horizontal - 1px;\n }\n }\n\n // ========================== Popup ==========================\n &-dropdown {\n &-rtl {\n direction: rtl;\n }\n }\n\n // ========================= Options =========================\n &-item {\n &-option {\n &-grouped {\n .@{select-prefix-cls}-dropdown-rtl & {\n padding-right: @control-padding-horizontal * 2;\n padding-left: @control-padding-horizontal;\n }\n }\n }\n }\n}\n\n// multiple\n@select-multiple-item-border-width: 1px;\n@select-multiple-item-spacing-half: ceil((@input-padding-vertical-base / 2));\n@select-multiple-padding: max(\n @input-padding-vertical-base - @select-multiple-item-border-width -\n @select-multiple-item-spacing-half,\n 0\n);\n\n.@{select-prefix-cls}-multiple {\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selector,\n &.@{select-prefix-cls}-allow-clear .@{select-prefix-cls}-selector {\n .@{select-prefix-cls}-rtl& {\n padding-right: @input-padding-vertical-base;\n padding-left: @font-size-sm + @control-padding-horizontal;\n }\n }\n\n // ======================== Selections ========================\n .@{select-prefix-cls}-selection-item {\n .@{select-prefix-cls}-rtl& {\n text-align: right;\n }\n // It's ok not to do this, but 24px makes bottom narrow in view should adjust\n &-content {\n .@{select-prefix-cls}-rtl& {\n margin-right: 0;\n margin-left: (@padding-xs / 2);\n text-align: right;\n }\n }\n }\n\n // ========================== Input ==========================\n .@{select-prefix-cls}-selection-search {\n &-mirror {\n .@{select-prefix-cls}-rtl& {\n right: 0;\n left: auto;\n }\n }\n }\n\n // ======================= Placeholder =======================\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal;\n left: auto;\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-sm;\n }\n }\n }\n}\n\n// single\n@selection-item-padding: ceil(@font-size-base * 1.25);\n\n.@{select-prefix-cls}-single {\n // ========================= Selector =========================\n .@{select-prefix-cls}-selector {\n .@{select-prefix-cls}-selection-item,\n .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n right: 0;\n left: 9px;\n text-align: right;\n }\n }\n }\n\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-base;\n left: @input-padding-horizontal-base + @font-size-base;\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @selection-item-padding;\n }\n }\n\n // ============================================================\n // == Size ==\n // ============================================================\n\n // Size small need additional set padding\n &.@{select-prefix-cls}-sm {\n &:not(.@{select-prefix-cls}-customize-input) {\n // With arrow should provides `padding-right` to show the arrow\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-search {\n .@{select-prefix-cls}-rtl& {\n right: @input-padding-horizontal-sm - 1px;\n }\n }\n\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-item,\n &.@{select-prefix-cls}-show-arrow .@{select-prefix-cls}-selection-placeholder {\n .@{select-prefix-cls}-rtl& {\n padding-right: 0;\n padding-left: @font-size-base * 1.5;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@divider-prefix-cls: ~'@{ant-prefix}-divider';\n\n.@{divider-prefix-cls} {\n .reset-component();\n\n border-top: @border-width-base solid @divider-color;\n\n &-vertical {\n position: relative;\n top: -0.06em;\n display: inline-block;\n height: 0.9em;\n margin: 0 8px;\n vertical-align: middle;\n border-top: 0;\n border-left: @border-width-base solid @divider-color;\n }\n\n &-horizontal {\n display: flex;\n clear: both;\n width: 100%;\n min-width: 100%; // Fix https://github.com/ant-design/ant-design/issues/10914\n margin: 24px 0;\n }\n\n &-horizontal&-with-text {\n display: flex;\n margin: 16px 0;\n color: @heading-color;\n font-weight: 500;\n font-size: @font-size-lg;\n white-space: nowrap;\n text-align: center;\n border-top: 0;\n border-top-color: @divider-color;\n\n &::before,\n &::after {\n position: relative;\n top: 50%;\n width: 50%;\n border-top: @border-width-base solid transparent;\n // Chrome not accept `inherit` in `border-top`\n border-top-color: inherit;\n border-bottom: 0;\n transform: translateY(50%);\n content: '';\n }\n }\n\n &-horizontal&-with-text-left {\n &::before {\n top: 50%;\n width: @divider-orientation-margin;\n }\n &::after {\n top: 50%;\n width: 100% - @divider-orientation-margin;\n }\n }\n\n &-horizontal&-with-text-right {\n &::before {\n top: 50%;\n width: 100% - @divider-orientation-margin;\n }\n &::after {\n top: 50%;\n width: @divider-orientation-margin;\n }\n }\n\n &-inner-text {\n display: inline-block;\n padding: 0 @divider-text-padding;\n }\n\n &-dashed {\n background: none;\n border-color: @divider-color;\n border-style: dashed;\n border-width: @border-width-base 0 0;\n }\n\n &-horizontal&-with-text&-dashed {\n border-top: 0;\n &::before,\n &::after {\n border-style: dashed none none;\n }\n }\n\n &-vertical&-dashed {\n border-width: 0 0 0 @border-width-base;\n }\n\n &-plain&-with-text {\n color: @text-color;\n font-weight: normal;\n font-size: @font-size-base;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@divider-prefix-cls: ~'@{ant-prefix}-divider';\n\n.@{divider-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n\n &-horizontal&-with-text-left {\n &::before {\n .@{divider-prefix-cls}-rtl& {\n width: 100% - @divider-orientation-margin;\n }\n }\n &::after {\n .@{divider-prefix-cls}-rtl& {\n width: @divider-orientation-margin;\n }\n }\n }\n\n &-horizontal&-with-text-right {\n &::before {\n .@{divider-prefix-cls}-rtl& {\n width: @divider-orientation-margin;\n }\n }\n &::after {\n .@{divider-prefix-cls}-rtl& {\n width: 100% - @divider-orientation-margin;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './customize.less';\n\n@list-prefix-cls: ~'@{ant-prefix}-list';\n\n.@{list-prefix-cls} {\n .reset-component();\n\n position: relative;\n\n * {\n outline: none;\n }\n\n &-pagination {\n margin-top: @margin-lg;\n text-align: right;\n\n // https://github.com/ant-design/ant-design/issues/20037\n .@{ant-prefix}-pagination-options {\n text-align: left;\n }\n }\n\n &-more {\n margin-top: @margin-sm;\n text-align: center;\n button {\n padding-right: 32px;\n padding-left: 32px;\n }\n }\n\n &-spin {\n min-height: 40px;\n text-align: center;\n }\n\n &-empty-text {\n padding: @list-empty-text-padding;\n color: @disabled-color;\n font-size: @font-size-base;\n text-align: center;\n }\n\n &-items {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n &-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: @list-item-padding;\n color: @text-color;\n\n &-meta {\n display: flex;\n flex: 1;\n align-items: flex-start;\n max-width: 100%;\n\n &-avatar {\n margin-right: @list-item-meta-avatar-margin-right;\n }\n &-content {\n flex: 1 0;\n width: 0;\n color: @text-color;\n }\n &-title {\n margin-bottom: 4px;\n color: @text-color;\n font-size: @font-size-base;\n line-height: @line-height-base;\n > a {\n color: @text-color;\n transition: all 0.3s;\n &:hover {\n color: @primary-color;\n }\n }\n }\n &-description {\n color: @text-color-secondary;\n font-size: @list-item-meta-description-font-size;\n line-height: @line-height-base;\n }\n }\n &-action {\n flex: 0 0 auto;\n margin-left: 48px;\n padding: 0;\n font-size: 0;\n list-style: none;\n\n & > li {\n position: relative;\n display: inline-block;\n padding: 0 @padding-xs;\n color: @text-color-secondary;\n font-size: @font-size-base;\n line-height: @line-height-base;\n text-align: center;\n\n &:first-child {\n padding-left: 0;\n }\n }\n\n &-split {\n position: absolute;\n top: 50%;\n right: 0;\n width: 1px;\n height: 14px;\n margin-top: -7px;\n background-color: @border-color-split;\n }\n }\n }\n\n &-header {\n background: @list-header-background;\n }\n\n &-footer {\n background: @list-footer-background;\n }\n\n &-header,\n &-footer {\n padding-top: @padding-sm;\n padding-bottom: @padding-sm;\n }\n\n &-empty {\n padding: @padding-md 0;\n color: @text-color-secondary;\n font-size: 12px;\n text-align: center;\n }\n\n &-split &-item {\n border-bottom: 1px solid @border-color-split;\n &:last-child {\n border-bottom: none;\n }\n }\n\n &-split &-header {\n border-bottom: 1px solid @border-color-split;\n }\n\n &-split&-empty &-footer {\n border-top: 1px solid @border-color-split;\n }\n\n &-loading &-spin-nested-loading {\n min-height: 32px;\n }\n\n &-split&-something-after-last-item .@{ant-prefix}-spin-container > &-items > &-item:last-child {\n border-bottom: 1px solid @border-color-split;\n }\n\n &-lg &-item {\n padding: @list-item-padding-lg;\n }\n\n &-sm &-item {\n padding: @list-item-padding-sm;\n }\n\n &-vertical &-item {\n align-items: initial;\n\n &-main {\n display: block;\n flex: 1;\n }\n\n &-extra {\n margin-left: 40px;\n }\n\n &-meta {\n margin-bottom: @list-item-meta-margin-bottom;\n\n &-title {\n margin-bottom: @list-item-meta-title-margin-bottom;\n color: @heading-color;\n font-size: @font-size-lg;\n line-height: 24px;\n }\n }\n\n &-action {\n margin-top: @padding-md;\n margin-left: auto;\n\n > li {\n padding: 0 @padding-md;\n &:first-child {\n padding-left: 0;\n }\n }\n }\n }\n\n &-grid .@{ant-prefix}-col > &-item {\n display: block;\n max-width: 100%;\n margin-bottom: @margin-md;\n padding-top: 0;\n padding-bottom: 0;\n border-bottom: none;\n }\n\n // ============================ without flex ============================\n &-item-no-flex {\n display: block;\n }\n\n // Horizontal\n &:not(.@{list-prefix-cls}-vertical) {\n .@{list-prefix-cls}-item-no-flex {\n .@{list-prefix-cls}-item-action {\n float: right;\n }\n }\n }\n}\n\n@import './bordered';\n@import './responsive';\n@import './rtl';\n","@import '../../style/themes/index';\n\n.@{list-prefix-cls}-bordered {\n border: 1px solid @border-color-base;\n border-radius: @border-radius-base;\n .@{list-prefix-cls}-header {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-footer {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-item {\n padding-right: @padding-lg;\n padding-left: @padding-lg;\n }\n\n .@{list-prefix-cls}-pagination {\n margin: @margin-md @margin-lg;\n }\n\n &.@{list-prefix-cls}-sm {\n .@{list-prefix-cls}-item {\n padding: @list-item-padding-sm;\n }\n .@{list-prefix-cls}-header,\n .@{list-prefix-cls}-footer {\n padding: @list-item-padding-sm;\n }\n }\n\n &.@{list-prefix-cls}-lg {\n .@{list-prefix-cls}-item {\n padding: @list-item-padding-lg;\n }\n .@{list-prefix-cls}-header,\n .@{list-prefix-cls}-footer {\n padding: @list-item-padding-lg;\n }\n }\n}\n","@media screen and (max-width: @screen-md) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n margin-left: 24px;\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n margin-left: 24px;\n }\n }\n }\n}\n\n@media screen and (max-width: @screen-sm) {\n .@{list-prefix-cls} {\n &-item {\n flex-wrap: wrap;\n &-action {\n margin-left: 12px;\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n flex-wrap: wrap-reverse;\n &-main {\n min-width: 220px;\n }\n &-extra {\n margin: auto auto 16px;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n@import './customize.less';\n\n@list-prefix-cls: ~'@{ant-prefix}-list';\n\n.@{list-prefix-cls} {\n &-rtl {\n direction: rtl;\n text-align: right;\n\n // fix for virtual scroll style attribute > (direction:ltr)\n .ReactVirtualized__List .@{list-prefix-cls}-item {\n direction: rtl;\n }\n }\n\n &-pagination {\n .@{list-prefix-cls}-rtl & {\n text-align: left;\n }\n }\n\n &-item {\n &-meta {\n &-avatar {\n .@{list-prefix-cls}-rtl & {\n margin-right: 0;\n margin-left: @list-item-meta-avatar-margin-right;\n }\n }\n }\n\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 48px;\n margin-left: 0;\n }\n\n & > li:first-child {\n .@{list-prefix-cls}.@{list-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: @padding-md;\n }\n }\n\n &-split {\n .@{list-prefix-cls}-rtl & {\n right: auto;\n left: 0;\n }\n }\n }\n }\n\n &-vertical &-item {\n &-extra {\n .@{list-prefix-cls}-rtl& {\n margin-right: 40px;\n margin-left: 0;\n }\n }\n\n &-action {\n .@{list-prefix-cls}-rtl& {\n margin-right: auto;\n }\n\n > li {\n &:first-child {\n .@{list-prefix-cls}-rtl & {\n padding-right: 0;\n padding-left: @padding-md;\n }\n }\n }\n }\n }\n\n // Horizontal\n &:not(.@{list-prefix-cls}-vertical) {\n .@{list-prefix-cls}-item-no-flex {\n .@{list-prefix-cls}-item-action {\n .@{list-prefix-cls}-rtl & {\n float: left;\n }\n }\n }\n }\n}\n\n// responsive\n@media screen and (max-width: @screen-md) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 24px;\n margin-left: 0;\n }\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n .@{list-prefix-cls}-rtl & {\n margin-right: 24px;\n margin-left: 0;\n }\n }\n }\n }\n}\n\n@media screen and (max-width: @screen-sm) {\n .@{list-prefix-cls} {\n &-item {\n &-action {\n .@{list-prefix-cls}-rtl & {\n margin-right: 22px;\n margin-left: 0;\n }\n }\n }\n }\n\n .@{list-prefix-cls}-vertical {\n .@{list-prefix-cls}-item {\n &-extra {\n // to override margins on rtl view\n .@{list-prefix-cls}-rtl& {\n margin: auto auto 16px;\n }\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@space-prefix-cls: ~'@{ant-prefix}-space';\n@space-item-prefix-cls: ~'@{ant-prefix}-space-item';\n\n.@{space-prefix-cls} {\n display: inline-flex;\n &-vertical {\n flex-direction: column;\n }\n\n &-align {\n &-center {\n align-items: center;\n }\n &-start {\n align-items: flex-start;\n }\n &-end {\n align-items: flex-end;\n }\n &-baseline {\n align-items: baseline;\n }\n }\n}\n\n.@{space-item-prefix-cls} {\n &:empty {\n display: none;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@space-prefix-cls: ~'@{ant-prefix}-space';\n\n.@{space-prefix-cls} {\n &-rtl {\n direction: rtl;\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@radio-prefix-cls: ~'@{ant-prefix}-radio';\n@radio-group-prefix-cls: ~'@{radio-prefix-cls}-group';\n@radio-inner-prefix-cls: ~'@{radio-prefix-cls}-inner';\n@radio-duration: 0.3s;\n@radio-focus-shadow: 0 0 0 3px fade(@radio-dot-color, 8%);\n@radio-button-focus-shadow: @radio-focus-shadow;\n\n.@{radio-group-prefix-cls} {\n .reset-component();\n\n display: inline-block;\n font-size: 0;\n line-height: unset;\n\n .@{ant-prefix}-badge-count {\n z-index: 1;\n }\n\n > .@{ant-prefix}-badge:not(:first-child) > .@{radio-prefix-cls}-button-wrapper {\n border-left: none;\n }\n}\n\n// 一般状态\n.@{radio-prefix-cls}-wrapper {\n .reset-component();\n position: relative;\n display: inline-flex;\n align-items: baseline;\n margin-right: @radio-wrapper-margin-right;\n cursor: pointer;\n\n &::after {\n display: inline-block;\n width: 0;\n overflow: hidden;\n content: '\\a0';\n }\n}\n\n.@{radio-prefix-cls} {\n .reset-component();\n\n position: relative;\n top: @radio-top;\n display: inline-block;\n outline: none;\n cursor: pointer;\n\n .@{radio-prefix-cls}-wrapper:hover &,\n &:hover .@{radio-inner-prefix-cls},\n &-input:focus + .@{radio-inner-prefix-cls} {\n border-color: @radio-dot-color;\n }\n\n &-input:focus + .@{radio-inner-prefix-cls} {\n box-shadow: @radio-focus-shadow;\n }\n\n &-checked::after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 1px solid @radio-dot-color;\n border-radius: 50%;\n visibility: hidden;\n animation: antRadioEffect 0.36s ease-in-out;\n animation-fill-mode: both;\n content: '';\n }\n\n &:hover::after,\n .@{radio-prefix-cls}-wrapper:hover &::after {\n visibility: visible;\n }\n\n &-inner {\n &::after {\n position: absolute;\n top: ((@radio-size - @radio-dot-size) / 2) - @radio-border-width;\n left: ((@radio-size - @radio-dot-size) / 2) - @radio-border-width;\n display: block;\n width: @radio-dot-size;\n height: @radio-dot-size;\n background-color: @radio-dot-color;\n border-top: 0;\n border-left: 0;\n border-radius: @radio-dot-size;\n transform: scale(0);\n opacity: 0;\n transition: all @radio-duration @ease-in-out-circ;\n content: ' ';\n }\n\n position: relative;\n top: 0;\n left: 0;\n display: block;\n width: @radio-size;\n height: @radio-size;\n background-color: @radio-button-bg;\n border-color: @border-color-base;\n border-style: solid;\n border-width: @radio-border-width;\n border-radius: 50%;\n transition: all @radio-duration;\n }\n\n &-input {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n cursor: pointer;\n opacity: 0;\n }\n}\n\n// 选中状态\n.@{radio-prefix-cls}-checked {\n .@{radio-inner-prefix-cls} {\n border-color: @radio-dot-color;\n &::after {\n transform: scale(1);\n opacity: 1;\n transition: all @radio-duration @ease-in-out-circ;\n }\n }\n}\n\n.@{radio-prefix-cls}-disabled {\n cursor: not-allowed;\n\n .@{radio-inner-prefix-cls} {\n background-color: @input-disabled-bg;\n border-color: @border-color-base !important;\n cursor: not-allowed;\n &::after {\n background-color: @radio-dot-disabled-color;\n }\n }\n\n .@{radio-prefix-cls}-input {\n cursor: not-allowed;\n }\n\n & + span {\n color: @disabled-color;\n cursor: not-allowed;\n }\n}\n\nspan.@{radio-prefix-cls} + * {\n padding-right: 8px;\n padding-left: 8px;\n}\n\n.@{radio-prefix-cls}-button-wrapper {\n position: relative;\n display: inline-block;\n height: @btn-height-base;\n margin: 0;\n padding: 0 @padding-md - 1px;\n color: @radio-button-color;\n font-size: @font-size-base;\n line-height: @btn-height-base - 2px;\n background: @radio-button-bg;\n border: @border-width-base @border-style-base @border-color-base;\n // strange align fix for chrome but works\n // https://gw.alipayobjects.com/zos/rmsportal/VFTfKXJuogBAXcvfAUWJ.gif\n border-top-width: @border-width-base + 0.02px;\n border-left-width: 0;\n cursor: pointer;\n transition: color 0.3s, background 0.3s, border-color 0.3s, box-shadow 0.3s;\n\n a {\n color: @radio-button-color;\n }\n\n > .@{radio-prefix-cls}-button {\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n width: 100%;\n height: 100%;\n }\n\n .@{radio-group-prefix-cls}-large & {\n height: @input-height-lg;\n font-size: @font-size-lg;\n line-height: @input-height-lg - 2px;\n }\n\n .@{radio-group-prefix-cls}-small & {\n height: @input-height-sm;\n padding: 0 @control-padding-horizontal-sm - 1px;\n line-height: @input-height-sm - 2px;\n }\n\n &:not(:first-child) {\n &::before {\n position: absolute;\n top: @border-width-base * -1;\n left: -1px;\n display: block;\n box-sizing: content-box;\n width: 1px;\n height: 100%;\n padding: @border-width-base 0;\n background-color: @border-color-base;\n transition: background-color 0.3s;\n content: '';\n }\n }\n\n &:first-child {\n border-left: @border-width-base @border-style-base @border-color-base;\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n\n &:last-child {\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n\n &:first-child:last-child {\n border-radius: @border-radius-base;\n }\n\n &:hover {\n position: relative;\n color: @radio-dot-color;\n }\n\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n\n .@{radio-prefix-cls}-inner,\n input[type='checkbox'],\n input[type='radio'] {\n width: 0;\n height: 0;\n opacity: 0;\n pointer-events: none;\n }\n\n &-checked:not(&-disabled) {\n z-index: 1;\n color: @radio-dot-color;\n background: @radio-button-checked-bg;\n border-color: @radio-dot-color;\n\n &::before {\n background-color: @radio-dot-color;\n }\n\n &:first-child {\n border-color: @radio-dot-color;\n }\n\n &:hover {\n color: @radio-button-hover-color;\n border-color: @radio-button-hover-color;\n &::before {\n background-color: @radio-button-hover-color;\n }\n }\n\n &:active {\n color: @radio-button-active-color;\n border-color: @radio-button-active-color;\n &::before {\n background-color: @radio-button-active-color;\n }\n }\n\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n }\n\n .@{radio-group-prefix-cls}-solid &-checked:not(&-disabled) {\n color: @radio-solid-checked-color;\n background: @radio-dot-color;\n border-color: @radio-dot-color;\n &:hover {\n color: @radio-solid-checked-color;\n background: @radio-button-hover-color;\n border-color: @radio-button-hover-color;\n }\n &:active {\n color: @radio-solid-checked-color;\n background: @radio-button-active-color;\n border-color: @radio-button-active-color;\n }\n &:focus-within {\n box-shadow: @radio-button-focus-shadow;\n }\n }\n\n &-disabled {\n color: @disabled-color;\n background-color: @input-disabled-bg;\n border-color: @border-color-base;\n cursor: not-allowed;\n\n &:first-child,\n &:hover {\n color: @disabled-color;\n background-color: @input-disabled-bg;\n border-color: @border-color-base;\n }\n &:first-child {\n border-left-color: @border-color-base;\n }\n }\n\n &-disabled&-checked {\n color: @radio-disabled-button-checked-color;\n background-color: @radio-disabled-button-checked-bg;\n border-color: @border-color-base;\n box-shadow: none;\n }\n}\n\n@keyframes antRadioEffect {\n 0% {\n transform: scale(1);\n opacity: 0.5;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@radio-prefix-cls: ~'@{ant-prefix}-radio';\n@radio-group-prefix-cls: ~'@{radio-prefix-cls}-group';\n@radio-prefix-cls-button-wrapper: ~'@{radio-prefix-cls}-button-wrapper';\n\n.@{radio-group-prefix-cls} {\n &&-rtl {\n direction: rtl;\n }\n}\n\n// 一般状态\n.@{radio-prefix-cls}-wrapper {\n &&-rtl {\n margin-right: 0;\n margin-left: @radio-wrapper-margin-right;\n direction: rtl;\n }\n}\n\n.@{radio-prefix-cls-button-wrapper} {\n &&-rtl {\n border-right-width: 0;\n border-left-width: @border-width-base;\n }\n\n &:not(:first-child) {\n &::before {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n right: -1px;\n left: 0;\n }\n }\n }\n\n &:first-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-right: @border-width-base @border-style-base @border-color-base;\n border-radius: 0 @border-radius-base @border-radius-base 0;\n }\n .@{radio-prefix-cls-button-wrapper}-checked:not([class*=~\"' @{radio-prefix-cls}-button-wrapper-disabled'\"])& {\n border-right-color: @radio-button-hover-color;\n }\n }\n\n &:last-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-radius: @border-radius-base 0 0 @border-radius-base;\n }\n }\n\n &-disabled {\n &:first-child {\n .@{radio-prefix-cls-button-wrapper}.@{radio-prefix-cls-button-wrapper}-rtl& {\n border-right-color: @border-color-base;\n }\n }\n }\n}\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tag-prefix-cls: ~'@{ant-prefix}-tag';\n\n.@{tag-prefix-cls} {\n .reset-component();\n\n display: inline-block;\n height: auto;\n margin-right: 8px;\n padding: 0 7px;\n font-size: @tag-font-size;\n line-height: @tag-line-height;\n white-space: nowrap;\n background: @tag-default-bg;\n border: @border-width-base @border-style-base @border-color-base;\n border-radius: @border-radius-base;\n opacity: 1;\n transition: all 0.3s;\n\n &,\n a,\n a:hover {\n color: @tag-default-color;\n }\n\n > a:first-child:last-child {\n display: inline-block;\n margin: 0 -8px;\n padding: 0 8px;\n }\n\n &-close-icon {\n margin-left: 3px;\n color: @text-color-secondary;\n font-size: 10px;\n cursor: pointer;\n transition: all 0.3s;\n\n &:hover {\n color: @heading-color;\n }\n }\n\n &-has-color {\n border-color: transparent;\n &,\n a,\n a:hover,\n .@{iconfont-css-prefix}-close,\n .@{iconfont-css-prefix}-close:hover {\n color: @text-color-inverse;\n }\n }\n\n &-checkable {\n background-color: transparent;\n border-color: transparent;\n cursor: pointer;\n &:not(&-checked):hover {\n color: @primary-color;\n }\n &:active,\n &-checked {\n color: @text-color-inverse;\n }\n &-checked {\n background-color: @primary-6;\n }\n &:active {\n background-color: @primary-7;\n }\n }\n\n &-hidden {\n display: none;\n }\n\n // mixin to iterate over colors and create CSS class for each one\n .make-color-classes(@i: length(@preset-colors)) when (@i > 0) {\n .make-color-classes(@i - 1);\n @color: extract(@preset-colors, @i);\n @lightColor: '@{color}-1';\n @lightBorderColor: '@{color}-3';\n @darkColor: '@{color}-6';\n @textColor: '@{color}-7';\n &-@{color} {\n color: @@textColor;\n background: @@lightColor;\n border-color: @@lightBorderColor;\n }\n &-@{color}-inverse {\n color: @text-color-inverse;\n background: @@darkColor;\n border-color: @@darkColor;\n }\n }\n\n .make-status-color-classes(@color, @status) {\n @lightColor: '@{color}-1';\n @lightBorderColor: '@{color}-3';\n @darkColor: '@{color}-6';\n &-@{status} {\n color: @@darkColor;\n background: @@lightColor;\n border-color: @@lightBorderColor;\n }\n }\n\n .make-color-classes();\n\n .make-status-color-classes('green', success);\n .make-status-color-classes('blue', processing);\n .make-status-color-classes('red', error);\n .make-status-color-classes('orange', warning);\n\n // To ensure that a space will be placed between character and `Icon`.\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n margin-left: 7px;\n }\n}\n\n@import './rtl';\n","@import '../../style/themes/index';\n@import '../../style/mixins/index';\n\n@tag-prefix-cls: ~'@{ant-prefix}-tag';\n\n.@{tag-prefix-cls} {\n &&-rtl {\n margin-right: 0;\n margin-left: 8px;\n direction: rtl;\n text-align: right;\n }\n\n &-close-icon {\n .@{tag-prefix-cls}-rtl & {\n margin-right: 3px;\n margin-left: 0;\n }\n }\n\n > .@{iconfont-css-prefix} + span,\n > span + .@{iconfont-css-prefix} {\n .@{tag-prefix-cls}-rtl& {\n margin-right: 7px;\n margin-left: 0;\n }\n }\n}\n","// Creating own less file because directly in tsx it's not possible: https://github.com/webpack-contrib/mini-css-extract-plugin/issues/73\n@import \"~antd/lib/style/themes/default\";\n@import \"~antd/lib/style/core/motion\";\n@import \"~antd/lib/form/style/index\";\n@import \"~antd/lib/input/style/index\";\n@import \"~antd/lib/checkbox/style/index\";\n@import \"~antd/lib/tooltip/style/index\";\n@import \"~antd/lib/alert/style/index\";\n@import \"~antd/lib/spin/style/index\";\n@import \"~antd/lib/message/style/index\";\n@import \"~antd/lib/modal/style/index\";\n@import \"~antd/lib/button/style/index\";\n@import \"~antd/lib/select/style/index\";\n@import \"~antd/lib/divider/style/index\";\n@import \"~antd/lib/list/style/index\";\n@import \"~antd/lib/space/style/index\";\n@import \"~antd/lib/radio/style/index\";\n@import \"~antd/lib/tag/style/index\";\n\n.rpm-wpc-antd-list-item-meta-title {\n margin-top: 0 !important;\n}\n\n// Fix select inputs in WordPress backend\n.rpm-wpc-antd-select-single:not(.rpm-wpc-antd-select-customize-input) .rpm-wpc-antd-select-selector {\n box-sizing: border-box;\n}\n\n.rpm-wpc-antd-select-item {\n line-height: 2;\n}\n\n.rpm-wpc-antd-radio-inner::after {\n top: 4px;\n left: 4px;\n}\n\n// Do not show validate icon in any form, causes issues with input form groups (installation type, license key)\n.rpm-wpc-antd-form-item-children-icon {\n display: none;\n}\n\n// Fix modal issues with admin bar in plugins list\nbody.rpm-wpc-antd-modal-open {\n #wpadminbar,\n #adminmenuwrap {\n z-index: 999;\n }\n}\n\n// Fix select dropdowns and messages in modals\n.rpm-wpc-antd-select-dropdown, .rpm-wpc-antd-message {\n z-index: 105000000;\n}\n\n.rpm-wpc-antd-checkbox-inner::after {\n margin-top: -1px;\n}\n\n// The hover animation is broken on most WordPress themes, we need to deactivate it\n.rpm-wpc-antd-checkbox-wrapper:hover .rpm-wpc-antd-checkbox::after,\n.rpm-wpc-antd-checkbox:hover::after {\n visibility: hidden !important;\n}\n\n@ant-prefix: rpm-wpc-antd;"],"names":[],"sourceRoot":""}
vendor/devowl-wp/real-product-manager-wp-client/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var devowlWp_realProductManagerWpClient;(()=>{"use strict";var e,t={8428:(e,t,a)=>{a.r(t),a.d(t,{Avatar:()=>i.C,CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE:()=>Te,Card:()=>o.Z,FeedbackModal:()=>Ie,Form:()=>s.Z,HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX:()=>Ae,LearnMoreTag:()=>Xe,OptionStore:()=>b,PLUGIN_UPDATE_FORM_LAYOUT:()=>We,PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM:()=>Ke,PluginUpdateEmbed:()=>Ye,PluginUpdateErrorNotice:()=>Je,PluginUpdateForm:()=>qe,PluginUpdateLicenseList:()=>Ge,PluginUpdateModal:()=>$e,PluginUpdateStore:()=>ue,PluginUpdateTermFields:()=>De,Provider:()=>me,RootStore:()=>de,Space:()=>c.Z,listenHashPluginUpdate:()=>Ce,listenPluginDeactivation:()=>Ne,listenPluginUpdateLinkClick:()=>Fe,locationRestAnnouncementActive:()=>v,locationRestLicenseDelete:()=>P,locationRestLicenseRetry:()=>Z,locationRestPluginFeedbackPost:()=>Ue,locationRestPluginUpdateGet:()=>le,locationRestPluginUpdatePatch:()=>f,locationRestPluginUpdateSkipPost:()=>w,useStores:()=>pe});var n=a(1533),l=a(5585),r=a(9464),i=a(5191),o=a(5851),s=a(4549),c=a(8157),u=a(7465),d=a(7821);const p=devowlWp_utils;var m,h,g=a(6921),y=a(9888);let b=(m=class extends p.BaseOptions{constructor(e){super(),(0,g.Z)(this,"others",h,this),this.pureSlug=void 0,this.pureSlugCamelCased=void 0,this.rootStore=void 0,this.rootStore=e,this.pureSlug=p.BaseOptions.getPureSlug("real-product-manager-wp-client"),this.pureSlugCamelCased=p.BaseOptions.getPureSlug("real-product-manager-wp-client",!0),(0,d.runInAction)((()=>Object.assign(this,window[this.pureSlugCamelCased])))}},h=(0,y.Z)(m.prototype,"others",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m);const v={path:"/announcement/:slug/active",method:p.RouteHttpVerb.POST},f={path:"/plugin-update/:slug",method:p.RouteHttpVerb.PATCH},w={path:"/plugin-update/:slug/skip",method:p.RouteHttpVerb.POST};let E;const R=(...e)=>(E||(E=(0,p.createRequestFactory)(window[p.BaseOptions.getPureSlug("real-product-manager-wp-client",!0)]))).request(...e),Z={path:"/plugin-update/:slug/license/:blogId/retry",method:p.RouteHttpVerb.POST},P={path:"/plugin-update/:slug/license/:blogId",method:p.RouteHttpVerb.DELETE};var k,U,S,O,I,N,T,F,A,C,_;let z=(k=class{constructor(e,t){(0,g.Z)(this,"busy",U,this),(0,g.Z)(this,"blog",S,this),(0,g.Z)(this,"host",O,this),(0,g.Z)(this,"programmatically",I,this),(0,g.Z)(this,"blogName",N,this),(0,g.Z)(this,"installationType",T,this),(0,g.Z)(this,"code",F,this),(0,g.Z)(this,"hint",A,this),(0,g.Z)(this,"remote",C,this),(0,g.Z)(this,"noUsage",_,this),this.store=void 0,this.retry=(0,d.flow)((function*(){this.busy=!0;try{const e=yield R({location:Z,params:{slug:this.store.slug,blogId:this.blog}});(0,d.set)(this,e)}catch(e){throw console.log(e),e}finally{this.busy=!1}})),this.deactivate=(0,d.flow)((function*(){this.busy=!0;try{const e=yield R({location:P,params:{slug:this.store.slug,blogId:this.blog}});(0,d.set)(this,e)}catch(e){throw console.log(e),e}finally{this.busy=!1}})),(0,d.runInAction)((()=>(0,d.set)(this,e))),this.store=t}},U=(0,y.Z)(k.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),S=(0,y.Z)(k.prototype,"blog",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=(0,y.Z)(k.prototype,"host",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=(0,y.Z)(k.prototype,"programmatically",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=(0,y.Z)(k.prototype,"blogName",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=(0,y.Z)(k.prototype,"installationType",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=(0,y.Z)(k.prototype,"code",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=(0,y.Z)(k.prototype,"hint",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=(0,y.Z)(k.prototype,"remote",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=(0,y.Z)(k.prototype,"noUsage",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k);var L,D,M,x,X,W,K,q,B,V,j,H,G,J,Y,$,Q,ee,te,ae;let ne=(L=class{get licensedEntries(){return this.licenses.filter((({code:e})=>e))}get unlicensedEntries(){return this.licenses.filter((({code:e})=>!e))}get noUsageEntries(){return this.unlicensedEntries.filter((({noUsage:e})=>e))}get modifiableEntries(){return this.unlicensedEntries.filter((({programmatically:e})=>!e))}get isLicensed(){return 0===this.unlicensedEntries.length}constructor(e,t){(0,g.Z)(this,"busy",D,this),(0,g.Z)(this,"slug",M,this),(0,g.Z)(this,"licenses",x,this),(0,g.Z)(this,"hasInteractedWithFormOnce",X,this),(0,g.Z)(this,"name",W,this),(0,g.Z)(this,"needsLicenseKeys",K,this),(0,g.Z)(this,"announcementsActive",q,this),(0,g.Z)(this,"allowsAutoUpdates",B,this),(0,g.Z)(this,"allowsTelemetry",V,this),(0,g.Z)(this,"allowsNewsletter",j,this),(0,g.Z)(this,"potentialNewsletterUser",H,this),(0,g.Z)(this,"privacyProvider",G,this),(0,g.Z)(this,"privacyPolicy",J,this),(0,g.Z)(this,"accountSiteUrl",Y,this),(0,g.Z)(this,"licenseKeyHelpUrl",$,this),(0,g.Z)(this,"checkUpdateLink",Q,this),(0,g.Z)(this,"invalidKeysError",ee,this),(0,g.Z)(this,"showBlogName",te,this),(0,g.Z)(this,"showNetworkWideUpdateIssueNotice",ae,this),this.store=void 0,this.setAnnouncementActive=(0,d.flow)((function*(e){this.busy=!0;try{const t=yield R({location:v,params:{slug:this.slug},request:{state:e}});return t.success&&(this.announcementsActive=e),t.success}catch(e){throw console.log(e),e}finally{this.busy=!1}})),this.update=(0,d.flow)((function*(e){this.busy=!0,this.invalidKeysError=void 0;try{const t=yield R({location:f,params:{slug:this.slug},request:e});this.fromResponse(t)}catch(e){var t,a;throw console.log(e),null!==(t=e.responseJSON)&&void 0!==t&&null!==(a=t.data)&&void 0!==a&&a.invalidKeys&&(this.invalidKeysError=e.responseJSON.data.invalidKeys),e}finally{this.busy=!1}})),this.skip=(0,d.flow)((function*(){this.busy=!0;try{yield R({location:w,params:{slug:this.slug}})}catch(a){var e,t;throw console.log(a),null!==(e=a.responseJSON)&&void 0!==e&&null!==(t=e.data)&&void 0!==t&&t.invalidKeys&&(this.invalidKeysError=a.responseJSON.data.invalidKeysError),a}finally{this.busy=!1}})),this.fromResponse(e),this.store=t}fromResponse({licenses:e,...t}){(0,d.set)(this,t),this.licenses=[],null==e||e.forEach((e=>{this.licenses.push(new z(e,this))}))}},D=(0,y.Z)(L.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),M=(0,y.Z)(L.prototype,"slug",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=(0,y.Z)(L.prototype,"licenses",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=(0,y.Z)(L.prototype,"hasInteractedWithFormOnce",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=(0,y.Z)(L.prototype,"name",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=(0,y.Z)(L.prototype,"needsLicenseKeys",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=(0,y.Z)(L.prototype,"announcementsActive",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=(0,y.Z)(L.prototype,"allowsAutoUpdates",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=(0,y.Z)(L.prototype,"allowsTelemetry",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=(0,y.Z)(L.prototype,"allowsNewsletter",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=(0,y.Z)(L.prototype,"potentialNewsletterUser",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=(0,y.Z)(L.prototype,"privacyProvider",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=(0,y.Z)(L.prototype,"privacyPolicy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=(0,y.Z)(L.prototype,"accountSiteUrl",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=(0,y.Z)(L.prototype,"licenseKeyHelpUrl",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=(0,y.Z)(L.prototype,"checkUpdateLink",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=(0,y.Z)(L.prototype,"invalidKeysError",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=(0,y.Z)(L.prototype,"showBlogName",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),ae=(0,y.Z)(L.prototype,"showNetworkWideUpdateIssueNotice",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,y.Z)(L.prototype,"licensedEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"licensedEntries"),L.prototype),(0,y.Z)(L.prototype,"unlicensedEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"unlicensedEntries"),L.prototype),(0,y.Z)(L.prototype,"noUsageEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"noUsageEntries"),L.prototype),(0,y.Z)(L.prototype,"modifiableEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"modifiableEntries"),L.prototype),(0,y.Z)(L.prototype,"isLicensed",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"isLicensed"),L.prototype),(0,y.Z)(L.prototype,"fromResponse",[d.action],Object.getOwnPropertyDescriptor(L.prototype,"fromResponse"),L.prototype),L);const le={path:"/plugin-update/:slug",method:p.RouteHttpVerb.GET};var re,ie,oe,se,ce;let ue=(re=class{constructor(e){(0,g.Z)(this,"busy",ie,this),(0,g.Z)(this,"modalPlugin",oe,this),(0,g.Z)(this,"pluginUpdates",se,this),(0,g.Z)(this,"pluginUpdateFetchErrors",ce,this),this.rootStore=void 0,this.showInModal=(0,d.flow)((function*(e){this.modalPlugin=e;try{yield this.fetchPluginUpdate(e)}catch(e){throw console.log(e),e}})),this.fetchPluginUpdate=(0,d.flow)((function*(e){this.busy=!0;try{const t=yield R({location:le,params:{slug:e}}),a=new ne(t,this);return this.pluginUpdates.set(e,a),this.pluginUpdateFetchErrors.delete(e),a}catch(t){throw console.log(t),this.pluginUpdateFetchErrors.set(e,t),t}finally{this.busy=!1}})),this.rootStore=e}hideModal(){this.modalPlugin=void 0}},ie=(0,y.Z)(re.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),oe=(0,y.Z)(re.prototype,"modalPlugin",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),se=(0,y.Z)(re.prototype,"pluginUpdates",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),ce=(0,y.Z)(re.prototype,"pluginUpdateFetchErrors",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),(0,y.Z)(re.prototype,"hideModal",[d.action],Object.getOwnPropertyDescriptor(re.prototype,"hideModal"),re.prototype),re);(0,d.configure)({enforceActions:"always"});class de{get context(){return this.contextMemo?this.contextMemo:this.contextMemo=(0,p.createContextFactory)(this)}constructor(){this.optionStore=void 0,this.pluginUpdateStore=void 0,this.contextMemo=void 0,this.optionStore=new b(this),this.pluginUpdateStore=new ue(this)}static get StoreProvider(){return de.get.context.StoreProvider}static get get(){return de.me?de.me:de.me=new de}}de.me=void 0;const pe=()=>de.get.context.useStores(),me=({children:e})=>React.createElement(l.ZP,{prefixCls:"rpm-wpc-antd"},React.createElement(de.StoreProvider,null,e));var he=a(7363),ge=a(3557),ye=a(5493),be=a(4648),ve=a(3685),fe=a(3550),we=a(7418);let Ee;function Re(){return Ee||(Ee=(0,p.createLocalizationFactory)("".concat("devowl-wp","-").concat("real-product-manager-wp-client")))}const Ze=(...e)=>Re().__(...e),Pe=(...e)=>Re()._i(...e);var ke=a(8974);const Ue={path:"/feedback/:slug",method:p.RouteHttpVerb.POST},Se={labelCol:{span:24},wrapperCol:{span:24}},Oe={marginBottom:8},Ie=({initialValues:e={},plugin:t,name:a,privacyPolicy:n,privacyProvider:l,onClose:i,onDeactivate:o})=>{const c=(0,he.useMemo)((()=>({"upgrade-to-pro":Ze("Upgrade to PRO Version"),"not-working":Ze("Plugin does not work"),"missing-features":Ze("Not the features I want"),incompatible:Ze("Incompatible with themes/plugins"),"missing-doc":Ze("Lack of documentation"),"found-better-plugin":Ze("Found a better plugin"),temp:Ze("Temporary deactivation"),other:Ze("Other")})),[]),[d]=s.Z.useForm(),p="license-form-".concat(t),[m,h]=(0,he.useState)(!0),[g,y]=(0,he.useState)(!1),b=(0,he.useCallback)((()=>{window.confirm(Ze("Are you sure you want to leave the feedback form?"))&&h(!1)}),[]),v=(0,he.useCallback)((async e=>{const{reason:a="other",note:n="",email:l="",name:i=""}=e;try{y(!0),await R({location:Ue,params:{slug:t},request:{reason:a,note:n,email:l,name:l?i:""}}),null==o||o()}catch(e){var s,c,u;const{responseJSON:t}=e,a=null==t||null===(s=t.data)||void 0===s||null===(c=s.body)||void 0===c||null===(u=c[0])||void 0===u?void 0:u.code;if(["DeactivationFeedbackAlreadyGiven","DeactivationFeedbackMightBeSpam"].indexOf(a)>-1||!a)return void(null==o||o());var d,p,m;r.ZP.error(null==t||null===(d=t.data)||void 0===d||null===(p=d.body)||void 0===p||null===(m=p[0])||void 0===m?void 0:m.message)}finally{y(!1)}}),[d,t]);return React.createElement(ge.Z,{afterClose:i,onCancel:b,visible:m,footer:[React.createElement(ye.Z,{key:"skip",type:"default",onClick:o,className:"alignleft",disabled:g},React.createElement("b",null,Ze("Skip & Deactivate"))),React.createElement(ye.Z,{key:"submit",type:"primary",htmlType:"submit",form:p,disabled:g},Ze("Deactivate"))],title:React.createElement(React.Fragment,null,React.createElement(ke.Z,{twoToneColor:"#eb2f96"})," ",Ze("Too bad you are leaving"))},React.createElement(be.Z,{spinning:g},React.createElement(s.Z,(0,u.Z)({name:p,id:p,form:d},Se,{onFinish:v,initialValues:e}),React.createElement(s.Z.Item,{name:"reason",label:React.createElement(React.Fragment,null,Ze("Please give us feedback why you deactivate %s.",a)),style:Oe,required:!0,rules:[{required:!0,message:Ze("Please provide a reason!")}]},React.createElement(ve.ZP.Group,null,Object.keys(c).map((e=>React.createElement(ve.ZP,{key:e,value:e,style:{width:"calc(50% - 8px)",float:"left"}},c[e]))))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.reason!==t.reason},(({getFieldValue:e})=>!!e("reason")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{label:Ze("What could we do better?"),name:"note",style:Oe},React.createElement(fe.Z.TextArea,{autoSize:{minRows:3}})),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.answerTerms!==t.answerTerms},(({getFieldValue:e})=>!!e("reason")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{name:"email",label:Ze("Email for answer/solution"),style:Oe,rules:[{type:"email",required:e("answerTerms"),message:Ze("Please provide a valid e-mail address!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.email!==t.email},(({getFieldValue:e})=>React.createElement(React.Fragment,null,!!e("email")&&React.createElement(s.Z.Item,{name:"name",label:Ze("Name"),required:!0,style:Oe,rules:[{required:!0,message:Ze("Please provide a name!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{name:"answerTerms",valuePropName:"checked",required:!0,rules:[{type:"boolean",required:!!e("email"),transform:e=>e||void 0,message:Ze("Please confirm that you have checked the privacy policy.")}],style:Oe},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{/a}}.",l),{a:React.createElement("a",{href:n,target:"_blank",rel:"noreferrer"})})))))))))))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.note!==t.note||e.answerTerms!==t.answerTerms},(({getFieldValue:e})=>{const t=e("answerTerms")||!1,a=e("note")||"";return t?null:a.split(" ").length>=5?React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:0}},React.createElement("p",null,Ze("Allow us to reply to you by email and we will get back to you as soon as possible!"))):React.createElement("p",{className:"description",style:{marginTop:5}},Pe(Ze("Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{/a}}."),{a:React.createElement("a",{href:Ze("https://devowl.io/support/"),target:"_blank",rel:"noreferrer"})}))})))))};function Ne(){document.addEventListener("click",(e=>{const{names:t,currentUserFullName:a}=de.get.optionStore.others,l=null==e?void 0:e.target;for(const r in t){const{plugin:i}=t[r];if(l.matches('tr[data-plugin="'.concat(i,'"] a[href*="action=deactivate"]'))){const i=document.createElement("div");document.body.appendChild(i),(0,n.render)(React.createElement(me,null,React.createElement(Ie,(0,u.Z)({},t[r],{initialValues:{name:a},plugin:r,onClose:()=>{(0,n.unmountComponentAtNode)(i)},onDeactivate:()=>{window.location.href=l.href}}))),i),e.preventDefault(),e.stopImmediatePropagation();break}}}),!0)}const Te="data-rpm-wp-client-plugin-update";function Fe(){document.addEventListener("click",(e=>{var t;const a=null===(t=e.target)||void 0===t?void 0:t.getAttribute(Te);a&&(de.get.pluginUpdateStore.showInModal(a),e.preventDefault())}))}const Ae="rpm-wp-client-plugin-update-";function Ce(){const{hash:e}=window.location;if(e.startsWith("#".concat(Ae))){const t=e.substr(Ae.length+1);de.get.pluginUpdateStore.showInModal(t),window.location.hash=""}}var _e=a(3867),ze=a(6519),Le=a(2764);const De=(0,_e.Pi)((({pluginUpdate:e})=>{const{privacyProvider:t,privacyPolicy:a,allowsTelemetry:n,allowsAutoUpdates:l,allowsNewsletter:r}=e;return React.createElement(React.Fragment,null,l&&React.createElement(s.Z.Item,{name:"autoUpdates",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("Updates containing bug fixes and new features will be downloaded and installed automatically."),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),React.createElement(s.Z.Item,{name:"terms",valuePropName:"checked",required:!0,rules:[{type:"boolean",required:!0,transform:e=>e||void 0,message:Ze("Please confirm that you have read the privacy policy!")}],style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{/a}} of %1$s.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),n&&React.createElement(s.Z.Item,{name:"telemetry",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),r&&React.createElement(s.Z.Item,{name:"newsletter",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{/a}}. I know that I can unsubscribe from the newsletter at any time.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.newsletter!==t.newsletter},(({getFieldValue:e})=>e("newsletter")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{label:Ze("First name"),name:"firstName",style:Ke,required:!0,rules:[{required:!0,message:Ze("Please enter your first name!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{label:Ze("Email"),name:"email",style:Ke,required:!0,rules:[{type:"email",required:!0,message:Ze("Please enter your email address!")}]},React.createElement(fe.Z,null)),React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:0}},React.createElement("p",null,Ze("Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.")))))))}));var Me=a(8965),xe=a(4759);const Xe=({url:e,style:t,label:a=Ze("Learn more")})=>{const n={cursor:"pointer",...t};return React.createElement(Me.Z,{style:n,onClick:()=>window.open(e,"_blank")},React.createElement(xe.Z,null)," ",a)},We={labelCol:{span:24},wrapperCol:{span:24}},Ke={marginBottom:8},qe=(0,_e.Pi)((({onSave:e,onFailure:t,footer:a,pluginUpdate:n})=>{const[l,i]=(0,he.useState)(!1),{busy:o,slug:c,allowsAutoUpdates:d,needsLicenseKeys:p,licenses:m,unlicensedEntries:h,noUsageEntries:g,modifiableEntries:y,invalidKeysError:b,accountSiteUrl:v,licenseKeyHelpUrl:f,name:w,potentialNewsletterUser:{firstName:E,email:R},showBlogName:Z,showNetworkWideUpdateIssueNotice:P}=n,k=m.length>1,U={licenses:m.map((({blog:e,code:t,installationType:a,hint:n,noUsage:l})=>{var r;return{blog:e,code:t||(n?null===(r=n.help.match(/(\w{8}-\w{4}-\w{4}-\w{4}-\w{12})|(\w{32})/))||void 0===r?void 0:r[0]:"")||"",installationType:a||"",noUsage:l}})),autoUpdates:d,terms:!1,telemetry:!1,newsletter:!1,firstName:E,email:R},[S]=s.Z.useForm(),[O,I]=(0,he.useState)(g.length!==h.length),N=(0,he.useCallback)((async a=>{const{licenses:l,...i}=a,o={...i,licenses:JSON.stringify(p?l.filter((({blog:e})=>{const[t]=m.filter((t=>t.blog===e));return h.indexOf(t)>-1})):void 0)};try{await n.update(o),S.setFieldsValue({terms:!1,telemetry:!1,newsletter:!1}),r.ZP.success(Ze("Your license has been activated!")),null==e||e()}catch(e){throw n.invalidKeysError||r.ZP.error(e.responseJSON.message),null==t||t(),e}}),[n,e,m,h,p]),T=(0,he.useCallback)((async e=>{try{await N(e)}catch(e){}finally{i(!1)}}),[S,N,i]),F=(0,he.useCallback)((()=>{i(!0),I(!0)}),[]);return React.createElement(be.Z,{spinning:o},h.length>0&&React.createElement(React.Fragment,null,React.createElement("p",{className:"description",style:{marginBottom:15}},p?Ze("Activate your %s PRO license to receive regular updates and support.",w):Pe(Ze("To use all advantages of %s {{strong}}you need a free license{{/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).",w),{strong:React.createElement("strong",null)})),P&&React.createElement("div",{className:"notice notice-error inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Ze("You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.",w)),React.createElement("p",null,Ze("Please enable %s network-wide or take care of regular updates manually! ",w))),React.createElement(s.Z,(0,u.Z)({name:"license-form-".concat(c),id:"license-form-".concat(c),form:S},We,{initialValues:U,onFinish:T,onFinishFailed:F,onChange:()=>{I(!0)}}),p&&React.createElement(React.Fragment,null,React.createElement(s.Z.List,{name:"licenses"},(e=>e.map(((e,t)=>{const{blog:a}=S.getFieldValue(["licenses",e.name]),[n]=m.filter((e=>e.blog===a));if(-1===h.indexOf(n))return null;const{busy:i,blogName:o,programmatically:c,host:d}=n,p=null==b?void 0:b[a],g=l?{}:p||n.hint,y=!(null==p||!p.debug.errors.LicenseMaxUsagesReached);let w;return"boolean"!=typeof g&&y&&(w=React.createElement("span",null,g.help," ",React.createElement(Xe,{url:Ze("https://devowl.io/knowledge-base/the-limit-of-activated-clients-for-this-license-has-already-been-reached/")}))),React.createElement(be.Z,{spinning:i,key:e.key},React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(t,a)=>t.licenses[e.key].noUsage!==a.licenses[e.key].noUsage},(({getFieldValue:a})=>{const n=a(["licenses",e.key,"noUsage"]);return React.createElement(s.Z.Item,(0,u.Z)({label:React.createElement("span",null,h.length>1||Z?Pe(Ze("Installation type and license key for {{strong}}%s{{/strong}}",o),{strong:React.createElement("strong",null)}):Ze("Installation type and license key")," ",React.createElement(Xe,{url:f})),help:w},g,{required:!0,style:Ke}),!n&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"code"],name:[e.name,"code"],noStyle:!0,rules:[{pattern:/(^\w{8}-\w{4}-\w{4}-\w{4}-\w{12}$)|(^\w{32}$)/,required:!0,message:Ze("Please enter a valid license key!")}]},React.createElement(fe.Z,{placeholder:c?c.code:"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",disabled:!!c,addonBefore:React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"installationType"],name:[e.name,"installationType"],noStyle:!0,rules:[{required:!0,message:Ze("Please choose an installation type!")}]},React.createElement(Le.Z,{placeholder:Ze("Installation type"),disabled:!!c},React.createElement(Le.Z.Option,{value:"",disabled:!0},c?"development"===c.type?Ze("Development"):Ze("Production"):Ze("Select installation type…")),React.createElement(Le.Z.Option,{value:"production"},Ze("Production")),React.createElement(Le.Z.Option,{value:"development"},Ze("Development"))))})),0===t&&React.createElement("p",{className:"description",style:{marginTop:5}},React.createElement("strong",null,Ze("What is an installation type?"))," ",Ze("You can use each license in both production and development environments.")," ",Pe(Ze('Generally speaking, you use "{{strong}}Development{{/strong}}" when your site is not yet live, or it is a staging environment of your site. "{{strong}}Production{{/strong}}" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.'),{strong:React.createElement("strong",null)}))),k&&React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"noUsage"],name:[e.name,"noUsage"],valuePropName:"checked",style:{marginTop:n?-25:0===t?-8:0,marginBottom:0}},React.createElement(we.Z,null,Ze("I do not want to license and use the plugin for this site within my multisite."))))})),c&&React.createElement("div",{className:"notice notice-warning inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Pe(Ze("This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.",d,a),{code:React.createElement("code",null),a:React.createElement("a",{href:"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html",target:"_blank",rel:"noreferrer"})})," ","•"," ",React.createElement("a",{className:"button-link",onClick:async()=>{try{await n.retry(),n.hint&&r.ZP.error(n.hint.help)}catch(e){r.ZP.error(e.responseJSON.message)}}},Ze("Retry activation")))),y&&React.createElement("a",{href:v,target:"_blank",rel:"noreferrer",className:"button button-primary"},Ze("Manage licenses in the customer center")))})))),React.createElement(ze.Z,{type:"horizontal",style:{margin:"10px 0"}})),y.length>0&&React.createElement(React.Fragment,null,React.createElement("div",{style:{display:O?"block":"none"}},React.createElement(De,{pluginUpdate:n})),a))))}));var Be=a(5799),Ve=a(3897),je=a(811),He=a(7847);const Ge=(0,_e.Pi)((({onDeactivate:e,pluginUpdate:t})=>{const{licensedEntries:a,needsLicenseKeys:n}=t;return React.createElement(React.Fragment,null,React.createElement(Be.ZP,{itemLayout:"vertical",size:"small",dataSource:a,renderItem:t=>{const{busy:a,installationType:l,blogName:i,code:o,remote:s,programmatically:u,host:d,blog:p}=t;return React.createElement(be.Z,{spinning:a},React.createElement(Be.ZP.Item,{style:{paddingLeft:0,paddingRight:0},actions:[n&&React.createElement(c.Z,{key:"installationType"},React.createElement(Ve.Z,null),"production"===l?Ze("Production"):"development"===l?Ze("Development"):"n/a"),s&&React.createElement(c.Z,{key:"activatedAt"},React.createElement(je.Z,null),Ze("Activated %s",new Date(s.licenseActivation.activatedAt).toLocaleString(document.documentElement.lang))),s&&React.createElement(c.Z,{key:"telemetryDataSharingOptIn"},React.createElement(He.Z,null),s.licenseActivation.telemetryDataSharingOptIn?Ze("Telemetry data sharing enabled"):Ze("Telemetry data sharing disabled")),!u&&React.createElement("a",{key:"deactivate",className:"button-link",onClick:async()=>{try{await t.deactivate()}catch(e){r.ZP.error(e.responseJSON.message)}null==e||e(t)}},Ze("Deactivate"))].filter(Boolean)},React.createElement(Be.ZP.Item.Meta,{title:i,description:n?React.createElement(React.Fragment,null,Ze("Your license key"),": ",React.createElement("code",null,o)):Ze("Your installation is fully activated.")}),u&&React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Pe(Ze("This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Please remove the filter to deactivate the license!",d,p),{code:React.createElement("code",null),a:React.createElement("a",{href:"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html",target:"_blank",rel:"noreferrer"})})))))}}),React.createElement("p",{style:{textAlign:"right"}},React.createElement(we.Z,{disabled:t.busy,checked:t.announcementsActive,onChange:e=>t.setAnnouncementActive(e.target.checked)},Ze("Show announcements for this plugin"))))})),Je=(0,_e.Pi)((({slug:e})=>{var t;const a=pe().pluginUpdateStore.pluginUpdateFetchErrors.get(e),n=null==a||null===(t=a.responseJSON)||void 0===t?void 0:t.message;return React.createElement("div",{className:"notice notice-error inline below-h2 notice-alt",style:{margin:"20px 0"}},React.createElement("p",null,Pe(Ze("Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{/a}}.",n?" (".concat(n,")"):""),{a:React.createElement("a",{href:Ze("https://devowl.io/knowledge-base/wordpress-rest-api-does-not-respond/"),target:"_blank",rel:"noreferrer"})})))})),Ye=(0,_e.Pi)((({formProps:e={},listProps:t={},slug:a})=>{const{pluginUpdateStore:n}=pe(),{busy:l,pluginUpdates:r,pluginUpdateFetchErrors:i}=n,o=r.get(a),s=(null==o?void 0:o.unlicensedEntries.length)>0&&(null==o?void 0:o.licensedEntries.length)>0;return(0,he.useEffect)((()=>{try{n.fetchPluginUpdate(a)}catch(e){}}),[a]),i.get(a)?React.createElement(Je,{slug:a}):l||!o?React.createElement(be.Z,{spinning:!0}):React.createElement("div",null,s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left",style:{marginTop:0}},Ze("Not yet licensed")),React.createElement(qe,(0,u.Z)({},e,{pluginUpdate:o})),s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left"},Ze("Already licensed")),o.licensedEntries.length>0&&React.createElement(Ge,(0,u.Z)({},t,{pluginUpdate:o})))})),$e=(0,_e.Pi)((()=>{const[e,t]=(0,he.useState)(!1),{pluginUpdateStore:a}=pe(),{busy:n,modalPlugin:l,pluginUpdates:r,pluginUpdateFetchErrors:i}=a,o=l?r.get(l):void 0,s=(null==o?void 0:o.unlicensedEntries.length)>0&&(null==o?void 0:o.licensedEntries.length)>0,c=(0,he.useCallback)((()=>{if(e){const{checkUpdateLink:e}=o;e?window.location.href=e:window.location.reload()}else a.hideModal()}),[e,a,o]),u=(0,he.useCallback)((()=>t(!0)),[t]),d=i.get(l);return(0,he.useEffect)((()=>{document.body.classList[l?"add":"remove"]("rpm-wpc-antd-modal-open")}),[l]),l?React.createElement(ge.Z,{visible:!0,okButtonProps:{form:"license-form-".concat(null==o?void 0:o.slug),htmlType:"submit",style:{display:0===(null==o?void 0:o.unlicensedEntries.length)||d?"none":void 0}},cancelButtonProps:{style:{display:"none"}},onCancel:c,okText:Ze("Save"),title:o?React.createElement("span",{style:{fontWeight:"normal"}},React.createElement("strong",null,o.name,":")," ",Ze("License settings")):"",width:800},d?React.createElement(Je,{slug:l}):n||!o?React.createElement(be.Z,{spinning:!0}):React.createElement("div",null,s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left",style:{marginTop:0}},Ze("Not yet licensed")),React.createElement(qe,{onSave:u,pluginUpdate:o}),s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left"},Ze("Already licensed")),o.licensedEntries.length>0&&React.createElement(Ge,{onDeactivate:u,pluginUpdate:o}))):null}));l.ZP.config({prefixCls:"rpm-wpc-antd"}),r.ZP.config({top:50}),Ne(),((e,t="complete")=>{new Promise((a=>{document.readyState===t?(null==e||e(),a()):document.addEventListener("readystatechange",(()=>{document.readyState===t&&(null==e||e(),a())}))}))})((()=>{const e=document.createElement("div");document.body.appendChild(e),(0,n.render)(React.createElement(me,null,React.createElement($e,null)),e),Fe(),Ce()}))},7363:e=>{e.exports=React},1533:e=>{e.exports=ReactDOM},7821:e=>{e.exports=mobx}},a={};function n(e){var l=a[e];if(void 0!==l)return l.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return t[e](r,r.exports,n),r.loaded=!0,r.exports}n.m=t,e=[],n.O=(t,a,l,r)=>{if(!a){var i=1/0;for(u=0;u<e.length;u++){for(var[a,l,r]=e[u],o=!0,s=0;s<a.length;s++)(!1&r||i>=r)&&Object.keys(n.O).every((e=>n.O[e](a[s])))?a.splice(s--,1):(o=!1,r<i&&(i=r));if(o){e.splice(u--,1);var c=l();void 0!==c&&(t=c)}}return t}r=r||0;for(var u=e.length;u>0&&e[u-1][2]>r;u--)e[u]=e[u-1];e[u]=[a,l,r]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e={826:0};n.O.j=t=>0===e[t];var t=(t,a)=>{var l,r,[i,o,s]=a,c=0;if(i.some((t=>0!==e[t]))){for(l in o)n.o(o,l)&&(n.m[l]=o[l]);if(s)var u=s(n)}for(t&&t(a);c<i.length;c++)r=i[c],n.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return n.O(u)},a=self.webpackChunkdevowlWp_realProductManagerWpClient=self.webpackChunkdevowlWp_realProductManagerWpClient||[];a.forEach(t.bind(null,0)),a.push=t.bind(null,a.push.bind(a))})();var l=n.O(void 0,[764],(()=>n(8428)));l=n.O(l),devowlWp_realProductManagerWpClient=l})();
2
  //# sourceMappingURL=index.js.map
1
+ var devowlWp_realProductManagerWpClient;(()=>{"use strict";var e,t={8428:(e,t,a)=>{a.r(t),a.d(t,{Avatar:()=>i.C,CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE:()=>Te,Card:()=>o.Z,FeedbackModal:()=>Ie,Form:()=>s.Z,HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX:()=>Ae,LearnMoreTag:()=>Xe,OptionStore:()=>b,PLUGIN_UPDATE_FORM_LAYOUT:()=>We,PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM:()=>Ke,PluginUpdateEmbed:()=>Ye,PluginUpdateErrorNotice:()=>Je,PluginUpdateForm:()=>qe,PluginUpdateLicenseList:()=>Ge,PluginUpdateModal:()=>$e,PluginUpdateStore:()=>ue,PluginUpdateTermFields:()=>De,Provider:()=>me,RootStore:()=>de,Space:()=>c.Z,listenHashPluginUpdate:()=>_e,listenPluginDeactivation:()=>Ne,listenPluginUpdateLinkClick:()=>Fe,locationRestAnnouncementActive:()=>v,locationRestLicenseDelete:()=>P,locationRestLicenseRetry:()=>Z,locationRestPluginFeedbackPost:()=>Ue,locationRestPluginUpdateGet:()=>le,locationRestPluginUpdatePatch:()=>f,locationRestPluginUpdateSkipPost:()=>w,useStores:()=>pe});var n=a(1533),l=a(5585),r=a(9464),i=a(5191),o=a(5851),s=a(4549),c=a(8157),u=a(7465),d=a(7821);const p=devowlWp_utils;var m,h,g=a(6921),y=a(9888);let b=(m=class extends p.BaseOptions{constructor(e){super(),(0,g.Z)(this,"others",h,this),this.pureSlug=void 0,this.pureSlugCamelCased=void 0,this.rootStore=void 0,this.rootStore=e,this.pureSlug=p.BaseOptions.getPureSlug("real-product-manager-wp-client"),this.pureSlugCamelCased=p.BaseOptions.getPureSlug("real-product-manager-wp-client",!0),(0,d.runInAction)((()=>Object.assign(this,window[this.pureSlugCamelCased])))}},h=(0,y.Z)(m.prototype,"others",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m);const v={path:"/announcement/:slug/active",method:p.RouteHttpVerb.POST},f={path:"/plugin-update/:slug",method:p.RouteHttpVerb.PATCH},w={path:"/plugin-update/:slug/skip",method:p.RouteHttpVerb.POST};let E;const R=(...e)=>(E||(E=(0,p.createRequestFactory)(window[p.BaseOptions.getPureSlug("real-product-manager-wp-client",!0)]))).request(...e),Z={path:"/plugin-update/:slug/license/:blogId/retry",method:p.RouteHttpVerb.POST},P={path:"/plugin-update/:slug/license/:blogId",method:p.RouteHttpVerb.DELETE};var k,U,S,O,I,N,T,F,A,_,C;let z=(k=class{constructor(e,t){(0,g.Z)(this,"busy",U,this),(0,g.Z)(this,"blog",S,this),(0,g.Z)(this,"host",O,this),(0,g.Z)(this,"programmatically",I,this),(0,g.Z)(this,"blogName",N,this),(0,g.Z)(this,"installationType",T,this),(0,g.Z)(this,"code",F,this),(0,g.Z)(this,"hint",A,this),(0,g.Z)(this,"remote",_,this),(0,g.Z)(this,"noUsage",C,this),this.store=void 0,this.retry=(0,d.flow)((function*(){this.busy=!0;try{const e=yield R({location:Z,params:{slug:this.store.slug,blogId:this.blog}});(0,d.set)(this,e)}catch(e){throw console.log(e),e}finally{this.busy=!1}})),this.deactivate=(0,d.flow)((function*(){this.busy=!0;try{const e=yield R({location:P,params:{slug:this.store.slug,blogId:this.blog}});(0,d.set)(this,e)}catch(e){throw console.log(e),e}finally{this.busy=!1}})),(0,d.runInAction)((()=>(0,d.set)(this,e))),this.store=t}},U=(0,y.Z)(k.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),S=(0,y.Z)(k.prototype,"blog",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=(0,y.Z)(k.prototype,"host",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=(0,y.Z)(k.prototype,"programmatically",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=(0,y.Z)(k.prototype,"blogName",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=(0,y.Z)(k.prototype,"installationType",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=(0,y.Z)(k.prototype,"code",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=(0,y.Z)(k.prototype,"hint",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=(0,y.Z)(k.prototype,"remote",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=(0,y.Z)(k.prototype,"noUsage",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k);var L,D,M,x,X,W,K,q,B,V,j,H,G,J,Y,$,Q,ee,te,ae;let ne=(L=class{get licensedEntries(){return this.licenses.filter((({code:e})=>e))}get unlicensedEntries(){return this.licenses.filter((({code:e})=>!e))}get noUsageEntries(){return this.unlicensedEntries.filter((({noUsage:e})=>e))}get modifiableEntries(){return this.unlicensedEntries.filter((({programmatically:e})=>!e))}get isLicensed(){return 0===this.unlicensedEntries.length}constructor(e,t){(0,g.Z)(this,"busy",D,this),(0,g.Z)(this,"slug",M,this),(0,g.Z)(this,"licenses",x,this),(0,g.Z)(this,"hasInteractedWithFormOnce",X,this),(0,g.Z)(this,"name",W,this),(0,g.Z)(this,"needsLicenseKeys",K,this),(0,g.Z)(this,"announcementsActive",q,this),(0,g.Z)(this,"allowsAutoUpdates",B,this),(0,g.Z)(this,"allowsTelemetry",V,this),(0,g.Z)(this,"allowsNewsletter",j,this),(0,g.Z)(this,"potentialNewsletterUser",H,this),(0,g.Z)(this,"privacyProvider",G,this),(0,g.Z)(this,"privacyPolicy",J,this),(0,g.Z)(this,"accountSiteUrl",Y,this),(0,g.Z)(this,"licenseKeyHelpUrl",$,this),(0,g.Z)(this,"checkUpdateLink",Q,this),(0,g.Z)(this,"invalidKeysError",ee,this),(0,g.Z)(this,"showBlogName",te,this),(0,g.Z)(this,"showNetworkWideUpdateIssueNotice",ae,this),this.store=void 0,this.setAnnouncementActive=(0,d.flow)((function*(e){this.busy=!0;try{const t=yield R({location:v,params:{slug:this.slug},request:{state:e}});return t.success&&(this.announcementsActive=e),t.success}catch(e){throw console.log(e),e}finally{this.busy=!1}})),this.update=(0,d.flow)((function*(e){this.busy=!0,this.invalidKeysError=void 0;try{const t=yield R({location:f,params:{slug:this.slug},request:e});this.fromResponse(t)}catch(e){var t,a;throw console.log(e),null!==(t=e.responseJSON)&&void 0!==t&&null!==(a=t.data)&&void 0!==a&&a.invalidKeys&&(this.invalidKeysError=e.responseJSON.data.invalidKeys),e}finally{this.busy=!1}})),this.skip=(0,d.flow)((function*(){this.busy=!0;try{yield R({location:w,params:{slug:this.slug}})}catch(a){var e,t;throw console.log(a),null!==(e=a.responseJSON)&&void 0!==e&&null!==(t=e.data)&&void 0!==t&&t.invalidKeys&&(this.invalidKeysError=a.responseJSON.data.invalidKeysError),a}finally{this.busy=!1}})),this.fromResponse(e),this.store=t}fromResponse({licenses:e,...t}){(0,d.set)(this,t),this.licenses=[],null==e||e.forEach((e=>{this.licenses.push(new z(e,this))}))}},D=(0,y.Z)(L.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),M=(0,y.Z)(L.prototype,"slug",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=(0,y.Z)(L.prototype,"licenses",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=(0,y.Z)(L.prototype,"hasInteractedWithFormOnce",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=(0,y.Z)(L.prototype,"name",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=(0,y.Z)(L.prototype,"needsLicenseKeys",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=(0,y.Z)(L.prototype,"announcementsActive",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=(0,y.Z)(L.prototype,"allowsAutoUpdates",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=(0,y.Z)(L.prototype,"allowsTelemetry",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=(0,y.Z)(L.prototype,"allowsNewsletter",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=(0,y.Z)(L.prototype,"potentialNewsletterUser",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=(0,y.Z)(L.prototype,"privacyProvider",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=(0,y.Z)(L.prototype,"privacyPolicy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=(0,y.Z)(L.prototype,"accountSiteUrl",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=(0,y.Z)(L.prototype,"licenseKeyHelpUrl",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=(0,y.Z)(L.prototype,"checkUpdateLink",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=(0,y.Z)(L.prototype,"invalidKeysError",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=(0,y.Z)(L.prototype,"showBlogName",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),ae=(0,y.Z)(L.prototype,"showNetworkWideUpdateIssueNotice",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,y.Z)(L.prototype,"licensedEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"licensedEntries"),L.prototype),(0,y.Z)(L.prototype,"unlicensedEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"unlicensedEntries"),L.prototype),(0,y.Z)(L.prototype,"noUsageEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"noUsageEntries"),L.prototype),(0,y.Z)(L.prototype,"modifiableEntries",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"modifiableEntries"),L.prototype),(0,y.Z)(L.prototype,"isLicensed",[d.computed],Object.getOwnPropertyDescriptor(L.prototype,"isLicensed"),L.prototype),(0,y.Z)(L.prototype,"fromResponse",[d.action],Object.getOwnPropertyDescriptor(L.prototype,"fromResponse"),L.prototype),L);const le={path:"/plugin-update/:slug",method:p.RouteHttpVerb.GET};var re,ie,oe,se,ce;let ue=(re=class{constructor(e){(0,g.Z)(this,"busy",ie,this),(0,g.Z)(this,"modalPlugin",oe,this),(0,g.Z)(this,"pluginUpdates",se,this),(0,g.Z)(this,"pluginUpdateFetchErrors",ce,this),this.rootStore=void 0,this.showInModal=(0,d.flow)((function*(e){this.modalPlugin=e;try{yield this.fetchPluginUpdate(e)}catch(e){throw console.log(e),e}})),this.fetchPluginUpdate=(0,d.flow)((function*(e){this.busy=!0;try{const t=yield R({location:le,params:{slug:e}}),a=new ne(t,this);return this.pluginUpdates.set(e,a),this.pluginUpdateFetchErrors.delete(e),a}catch(t){throw console.log(t),this.pluginUpdateFetchErrors.set(e,t),t}finally{this.busy=!1}})),this.rootStore=e}hideModal(){this.modalPlugin=void 0}},ie=(0,y.Z)(re.prototype,"busy",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),oe=(0,y.Z)(re.prototype,"modalPlugin",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),se=(0,y.Z)(re.prototype,"pluginUpdates",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),ce=(0,y.Z)(re.prototype,"pluginUpdateFetchErrors",[d.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),(0,y.Z)(re.prototype,"hideModal",[d.action],Object.getOwnPropertyDescriptor(re.prototype,"hideModal"),re.prototype),re);(0,d.configure)({enforceActions:"always"});class de{get context(){return this.contextMemo?this.contextMemo:this.contextMemo=(0,p.createContextFactory)(this)}constructor(){this.optionStore=void 0,this.pluginUpdateStore=void 0,this.contextMemo=void 0,this.optionStore=new b(this),this.pluginUpdateStore=new ue(this)}static get StoreProvider(){return de.get.context.StoreProvider}static get get(){return de.me?de.me:de.me=new de}}de.me=void 0;const pe=()=>de.get.context.useStores(),me=({children:e})=>React.createElement(l.ZP,{prefixCls:"rpm-wpc-antd"},React.createElement(de.StoreProvider,null,e));var he=a(7363),ge=a(3557),ye=a(5493),be=a(4648),ve=a(3685),fe=a(3550),we=a(7418);let Ee;function Re(){return Ee||(Ee=(0,p.createLocalizationFactory)("".concat("devowl-wp","-").concat("real-product-manager-wp-client")))}const Ze=(...e)=>Re().__(...e),Pe=(...e)=>Re()._i(...e);var ke=a(8974);const Ue={path:"/feedback/:slug",method:p.RouteHttpVerb.POST},Se={labelCol:{span:24},wrapperCol:{span:24}},Oe={marginBottom:8},Ie=({initialValues:e={},plugin:t,name:a,privacyPolicy:n,privacyProvider:l,onClose:i,onDeactivate:o})=>{const c=(0,he.useMemo)((()=>({"upgrade-to-pro":Ze("Upgrade to PRO Version"),"not-working":Ze("Plugin does not work"),"missing-features":Ze("Not the features I want"),incompatible:Ze("Incompatible with themes/plugins"),"missing-doc":Ze("Lack of documentation"),"found-better-plugin":Ze("Found a better plugin"),temp:Ze("Temporary deactivation"),other:Ze("Other")})),[]),[d]=s.Z.useForm(),p="license-form-".concat(t),[m,h]=(0,he.useState)(!0),[g,y]=(0,he.useState)(!1),b=(0,he.useCallback)((()=>{window.confirm(Ze("Are you sure you want to leave the feedback form?"))&&h(!1)}),[]),v=(0,he.useCallback)((async e=>{const{reason:a="other",note:n="",email:l="",name:i=""}=e;try{y(!0),await R({location:Ue,params:{slug:t},request:{reason:a,note:n,email:l,name:l?i:""}}),null==o||o()}catch(e){var s,c,u;const{responseJSON:t}=e,a=null==t||null===(s=t.data)||void 0===s||null===(c=s.body)||void 0===c||null===(u=c[0])||void 0===u?void 0:u.code;if(["DeactivationFeedbackAlreadyGiven","DeactivationFeedbackMightBeSpam"].indexOf(a)>-1||!a)return void(null==o||o());var d,p,m;r.ZP.error(null==t||null===(d=t.data)||void 0===d||null===(p=d.body)||void 0===p||null===(m=p[0])||void 0===m?void 0:m.message)}finally{y(!1)}}),[d,t]);return React.createElement(ge.Z,{afterClose:i,onCancel:b,visible:m,footer:[React.createElement(ye.Z,{key:"skip",type:"default",onClick:o,className:"alignleft",disabled:g},React.createElement("b",null,Ze("Skip & Deactivate"))),React.createElement(ye.Z,{key:"submit",type:"primary",htmlType:"submit",form:p,disabled:g},Ze("Deactivate"))],title:React.createElement(React.Fragment,null,React.createElement(ke.Z,{twoToneColor:"#eb2f96"})," ",Ze("Too bad you are leaving"))},React.createElement(be.Z,{spinning:g},React.createElement(s.Z,(0,u.Z)({name:p,id:p,form:d},Se,{onFinish:v,initialValues:e}),React.createElement(s.Z.Item,{name:"reason",label:React.createElement(React.Fragment,null,Ze("Please give us feedback why you deactivate %s.",a)),style:Oe,required:!0,rules:[{required:!0,message:Ze("Please provide a reason!")}]},React.createElement(ve.ZP.Group,null,Object.keys(c).map((e=>React.createElement(ve.ZP,{key:e,value:e,style:{width:"calc(50% - 8px)",float:"left"}},c[e]))))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.reason!==t.reason},(({getFieldValue:e})=>!!e("reason")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{label:Ze("What could we do better?"),name:"note",style:Oe},React.createElement(fe.Z.TextArea,{autoSize:{minRows:3}})),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.answerTerms!==t.answerTerms},(({getFieldValue:e})=>!!e("reason")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{name:"email",label:Ze("Email for answer/solution"),style:Oe,rules:[{type:"email",required:e("answerTerms"),message:Ze("Please provide a valid e-mail address!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.email!==t.email},(({getFieldValue:e})=>React.createElement(React.Fragment,null,!!e("email")&&React.createElement(s.Z.Item,{name:"name",label:Ze("Name"),required:!0,style:Oe,rules:[{required:!0,message:Ze("Please provide a name!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{name:"answerTerms",valuePropName:"checked",required:!0,rules:[{type:"boolean",required:!!e("email"),transform:e=>e||void 0,message:Ze("Please confirm that you have checked the privacy policy.")}],style:Oe},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{/a}}.",l),{a:React.createElement("a",{href:n,target:"_blank",rel:"noreferrer"})})))))))))))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.note!==t.note||e.answerTerms!==t.answerTerms},(({getFieldValue:e})=>{const t=e("answerTerms")||!1,a=e("note")||"";return t?null:a.split(" ").length>=5?React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:0}},React.createElement("p",null,Ze("Allow us to reply to you by email and we will get back to you as soon as possible!"))):React.createElement("p",{className:"description",style:{marginTop:5}},Pe(Ze("Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{/a}}."),{a:React.createElement("a",{href:Ze("https://devowl.io/support/"),target:"_blank",rel:"noreferrer"})}))})))))};function Ne(){document.addEventListener("click",(e=>{const{names:t,currentUserFullName:a}=de.get.optionStore.others,l=null==e?void 0:e.target;for(const r in t){const{plugin:i}=t[r];if(l.matches('tr[data-plugin="'.concat(i,'"] a[href*="action=deactivate"]'))){const i=document.createElement("div");document.body.appendChild(i),(0,n.render)(React.createElement(me,null,React.createElement(Ie,(0,u.Z)({},t[r],{initialValues:{name:a},plugin:r,onClose:()=>{(0,n.unmountComponentAtNode)(i)},onDeactivate:()=>{window.location.href=l.href}}))),i),e.preventDefault(),e.stopImmediatePropagation();break}}}),!0)}const Te="data-rpm-wp-client-plugin-update";function Fe(){document.addEventListener("click",(e=>{var t;const a=null===(t=e.target)||void 0===t?void 0:t.getAttribute(Te);a&&(de.get.pluginUpdateStore.showInModal(a),e.preventDefault())}))}const Ae="rpm-wp-client-plugin-update-";function _e(){const{hash:e}=window.location;if(e.startsWith("#".concat(Ae))){const t=e.substr(Ae.length+1);de.get.pluginUpdateStore.showInModal(t),window.location.hash=""}}var Ce=a(3867),ze=a(6519),Le=a(2764);const De=(0,Ce.Pi)((({pluginUpdate:e})=>{const{privacyProvider:t,privacyPolicy:a,allowsTelemetry:n,allowsAutoUpdates:l,allowsNewsletter:r}=e;return React.createElement(React.Fragment,null,l&&React.createElement(s.Z.Item,{name:"autoUpdates",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("Updates containing bug fixes and new features will be downloaded and installed automatically."),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),React.createElement(s.Z.Item,{name:"terms",valuePropName:"checked",required:!0,rules:[{type:"boolean",required:!0,transform:e=>e||void 0,message:Ze("Please confirm that you have read the privacy policy!")}],style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{/a}} of %1$s.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),n&&React.createElement(s.Z.Item,{name:"telemetry",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),r&&React.createElement(s.Z.Item,{name:"newsletter",valuePropName:"checked",style:Ke},React.createElement(we.Z,{style:{zoom:.8}},Pe(Ze("I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{/a}}. I know that I can unsubscribe from the newsletter at any time.",t),{a:React.createElement("a",{href:a,target:"_blank",rel:"noreferrer"})}))),React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.newsletter!==t.newsletter},(({getFieldValue:e})=>e("newsletter")&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{label:Ze("First name"),name:"firstName",style:Ke,required:!0,rules:[{required:!0,message:Ze("Please enter your first name!")}]},React.createElement(fe.Z,null)),React.createElement(s.Z.Item,{label:Ze("Email"),name:"email",style:Ke,required:!0,rules:[{type:"email",required:!0,message:Ze("Please enter your email address!")}]},React.createElement(fe.Z,null)),React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:0}},React.createElement("p",null,Ze("Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.")))))))}));var Me=a(8965),xe=a(4759);const Xe=({url:e,style:t,label:a=Ze("Learn more")})=>{const n={cursor:"pointer",...t};return React.createElement(Me.Z,{style:n,onClick:()=>window.open(e,"_blank")},React.createElement(xe.Z,null)," ",a)},We={labelCol:{span:24},wrapperCol:{span:24}},Ke={marginBottom:8},qe=(0,Ce.Pi)((({onSave:e,onFailure:t,footer:a,pluginUpdate:n})=>{const[l,i]=(0,he.useState)(!1),{busy:o,slug:c,allowsAutoUpdates:d,needsLicenseKeys:p,licenses:m,unlicensedEntries:h,noUsageEntries:g,modifiableEntries:y,invalidKeysError:b,accountSiteUrl:v,licenseKeyHelpUrl:f,name:w,potentialNewsletterUser:{firstName:E,email:R},showBlogName:Z,showNetworkWideUpdateIssueNotice:P}=n,k=m.length>1,U={licenses:m.map((({blog:e,code:t,installationType:a,hint:n,noUsage:l})=>{var r;return{blog:e,code:t||(n?null===(r=n.help.match(/(\w{8}-\w{4}-\w{4}-\w{4}-\w{12})|(\w{32})/))||void 0===r?void 0:r[0]:"")||"",installationType:a||"",noUsage:l}})),autoUpdates:d,terms:!1,telemetry:!1,newsletter:!1,firstName:E,email:R},[S]=s.Z.useForm(),[O,I]=(0,he.useState)(g.length!==h.length),N=(0,he.useCallback)((async a=>{const{licenses:l,...i}=a,o={...i,licenses:JSON.stringify(p?l.filter((({blog:e})=>{const[t]=m.filter((t=>t.blog===e));return h.indexOf(t)>-1})):void 0)};try{await n.update(o),S.setFieldsValue({terms:!1,telemetry:!1,newsletter:!1}),r.ZP.success(Ze("Your license has been activated!")),null==e||e()}catch(e){throw n.invalidKeysError||r.ZP.error(e.responseJSON.message),null==t||t(),e}}),[n,e,m,h,p]),T=(0,he.useCallback)((async e=>{try{await N(e)}catch(e){}finally{i(!1)}}),[S,N,i]),F=(0,he.useCallback)((()=>{i(!0),I(!0)}),[]);return React.createElement(be.Z,{spinning:o},h.length>0&&React.createElement(React.Fragment,null,React.createElement("p",{className:"description",style:{marginBottom:15}},p?Ze("Activate your %s PRO license to receive regular updates and support.",w):Pe(Ze("To use all advantages of %s {{strong}}you need a free license{{/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).",w),{strong:React.createElement("strong",null)})),P&&React.createElement("div",{className:"notice notice-error inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Ze("You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.",w)),React.createElement("p",null,Ze("Please enable %s network-wide or take care of regular updates manually! ",w))),React.createElement(s.Z,(0,u.Z)({name:"license-form-".concat(c),id:"license-form-".concat(c),form:S},We,{initialValues:U,onFinish:T,onFinishFailed:F,onChange:()=>{I(!0)}}),p&&React.createElement(React.Fragment,null,React.createElement(s.Z.List,{name:"licenses"},(e=>e.map(((e,t)=>{const{blog:a}=S.getFieldValue(["licenses",e.name]),[n]=m.filter((e=>e.blog===a));if(-1===h.indexOf(n))return null;const{busy:i,blogName:o,programmatically:c,host:d}=n,p=null==b?void 0:b[a],g=l?{}:p||n.hint,y=!(null==p||!p.debug.errors.LicenseMaxUsagesReached);let w;return"boolean"!=typeof g&&y&&(w=React.createElement("span",null,g.help," ",React.createElement(Xe,{url:Ze("https://devowl.io/knowledge-base/the-limit-of-activated-clients-for-this-license-has-already-been-reached/")}))),React.createElement(be.Z,{spinning:i,key:e.key},React.createElement(s.Z.Item,{noStyle:!0,shouldUpdate:(t,a)=>t.licenses[e.key].noUsage!==a.licenses[e.key].noUsage},(({getFieldValue:a})=>{const n=a(["licenses",e.key,"noUsage"]);return React.createElement(s.Z.Item,(0,u.Z)({label:React.createElement("span",null,h.length>1||Z?Pe(Ze("Installation type and license key for {{strong}}%s{{/strong}}",o),{strong:React.createElement("strong",null)}):Ze("Installation type and license key")," ",React.createElement(Xe,{url:f})),help:w},g,{required:!0,style:Ke}),!n&&React.createElement(React.Fragment,null,React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"code"],name:[e.name,"code"],noStyle:!0,rules:[{pattern:/(^\w{8}-\w{4}-\w{4}-\w{4}-\w{12}$)|(^\w{32}$)/,required:!0,message:Ze("Please enter a valid license key!")}]},React.createElement(fe.Z,{placeholder:c?c.code:"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",disabled:!!c,addonBefore:React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"installationType"],name:[e.name,"installationType"],noStyle:!0,rules:[{required:!0,message:Ze("Please choose an installation type!")}]},React.createElement(Le.Z,{placeholder:Ze("Installation type"),disabled:!!c},React.createElement(Le.Z.Option,{value:"",disabled:!0},c?"development"===c.type?Ze("Development"):Ze("Production"):Ze("Select installation type…")),React.createElement(Le.Z.Option,{value:"production"},Ze("Production")),React.createElement(Le.Z.Option,{value:"development"},Ze("Development"))))})),0===t&&React.createElement("p",{className:"description",style:{marginTop:5}},React.createElement("strong",null,Ze("What is an installation type?"))," ",Ze("You can use each license in both production and development environments.")," ",Pe(Ze('Generally speaking, you use "{{strong}}Development{{/strong}}" when your site is not yet live, or it is a staging environment of your site. "{{strong}}Production{{/strong}}" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.'),{strong:React.createElement("strong",null)}))),k&&React.createElement(s.Z.Item,{fieldKey:[e.fieldKey,"noUsage"],name:[e.name,"noUsage"],valuePropName:"checked",style:{marginTop:n?-25:0===t?-8:0,marginBottom:0}},React.createElement(we.Z,null,Ze("I do not want to license and use the plugin for this site within my multisite."))))})),c&&React.createElement("div",{className:"notice notice-warning inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Pe(Ze("This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.",d,a),{code:React.createElement("code",null),a:React.createElement("a",{href:"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html",target:"_blank",rel:"noreferrer"})})," ","•"," ",React.createElement("a",{className:"button-link",onClick:async()=>{try{await n.retry(),n.hint&&r.ZP.error(n.hint.help)}catch(e){r.ZP.error(e.responseJSON.message)}}},Ze("Retry activation")))),y&&React.createElement("a",{href:v,target:"_blank",rel:"noreferrer",className:"button button-primary"},Ze("Manage licenses in the customer center")))})))),React.createElement(ze.Z,{type:"horizontal",style:{margin:"10px 0"}})),y.length>0&&React.createElement(React.Fragment,null,React.createElement("div",{style:{display:O?"block":"none"}},React.createElement(De,{pluginUpdate:n})),a))))}));var Be=a(5799),Ve=a(3897),je=a(811),He=a(7847);const Ge=(0,Ce.Pi)((({onDeactivate:e,pluginUpdate:t})=>{const{licensedEntries:a,needsLicenseKeys:n}=t;return React.createElement(React.Fragment,null,React.createElement(Be.ZP,{itemLayout:"vertical",size:"small",dataSource:a,renderItem:t=>{const{busy:a,installationType:l,blogName:i,code:o,remote:s,programmatically:u,host:d,blog:p}=t;return React.createElement(be.Z,{spinning:a},React.createElement(Be.ZP.Item,{style:{paddingLeft:0,paddingRight:0},actions:[n&&React.createElement(c.Z,{key:"installationType"},React.createElement(Ve.Z,null),"production"===l?Ze("Production"):"development"===l?Ze("Development"):"n/a"),s&&React.createElement(c.Z,{key:"activatedAt"},React.createElement(je.Z,null),Ze("Activated %s",new Date(s.licenseActivation.activatedAt).toLocaleString(document.documentElement.lang))),s&&React.createElement(c.Z,{key:"telemetryDataSharingOptIn"},React.createElement(He.Z,null),s.licenseActivation.telemetryDataSharingOptIn?Ze("Telemetry data sharing enabled"):Ze("Telemetry data sharing disabled")),!u&&React.createElement("a",{key:"deactivate",className:"button-link",onClick:async()=>{try{await t.deactivate()}catch(e){r.ZP.error(e.responseJSON.message)}null==e||e(t)}},Ze("Deactivate"))].filter(Boolean)},React.createElement(Be.ZP.Item.Meta,{title:i,description:n?React.createElement(React.Fragment,null,Ze("Your license key"),": ",React.createElement("code",null,o)):React.createElement(React.Fragment,null,Ze("Your installation is fully activated."),React.createElement("div",{style:{marginTop:15}},React.createElement("a",{rel:"noreferrer",href:Ze("https://devowl.io/knowledge-base/real-cookie-banner-upgrade-free-to-pro-version/"),className:"button",target:"_blank"},Ze("Enter license key to unlock PRO features"))))}),u&&React.createElement("div",{className:"notice notice-info inline below-h2 notice-alt",style:{margin:"0 0 10px 0"}},React.createElement("p",null,Pe(Ze("This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Please remove the filter to deactivate the license!",d,p),{code:React.createElement("code",null),a:React.createElement("a",{href:"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html",target:"_blank",rel:"noreferrer"})})))))}}),React.createElement("p",{style:{textAlign:"right"}},React.createElement(we.Z,{disabled:t.busy,checked:t.announcementsActive,onChange:e=>t.setAnnouncementActive(e.target.checked)},Ze("Show announcements for this plugin"))))})),Je=(0,Ce.Pi)((({slug:e})=>{var t;const a=pe().pluginUpdateStore.pluginUpdateFetchErrors.get(e),n=null==a||null===(t=a.responseJSON)||void 0===t?void 0:t.message;return React.createElement("div",{className:"notice notice-error inline below-h2 notice-alt",style:{margin:"20px 0"}},React.createElement("p",null,Pe(Ze("Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{/a}}.",n?" (".concat(n,")"):""),{a:React.createElement("a",{href:Ze("https://devowl.io/knowledge-base/wordpress-rest-api-does-not-respond/"),target:"_blank",rel:"noreferrer"})})))})),Ye=(0,Ce.Pi)((({formProps:e={},listProps:t={},slug:a})=>{const{pluginUpdateStore:n}=pe(),{busy:l,pluginUpdates:r,pluginUpdateFetchErrors:i}=n,o=r.get(a),s=(null==o?void 0:o.unlicensedEntries.length)>0&&(null==o?void 0:o.licensedEntries.length)>0;return(0,he.useEffect)((()=>{try{n.fetchPluginUpdate(a)}catch(e){}}),[a]),i.get(a)?React.createElement(Je,{slug:a}):l||!o?React.createElement(be.Z,{spinning:!0}):React.createElement("div",null,s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left",style:{marginTop:0}},Ze("Not yet licensed")),React.createElement(qe,(0,u.Z)({},e,{pluginUpdate:o})),s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left"},Ze("Already licensed")),o.licensedEntries.length>0&&React.createElement(Ge,(0,u.Z)({},t,{pluginUpdate:o})))})),$e=(0,Ce.Pi)((()=>{const[e,t]=(0,he.useState)(!1),{pluginUpdateStore:a}=pe(),{busy:n,modalPlugin:l,pluginUpdates:r,pluginUpdateFetchErrors:i}=a,o=l?r.get(l):void 0,s=(null==o?void 0:o.unlicensedEntries.length)>0&&(null==o?void 0:o.licensedEntries.length)>0,c=(0,he.useCallback)((()=>{if(e){const{checkUpdateLink:e}=o;e?window.location.href=e:window.location.reload()}else a.hideModal()}),[e,a,o]),u=(0,he.useCallback)((()=>t(!0)),[t]),d=i.get(l);return(0,he.useEffect)((()=>{document.body.classList[l?"add":"remove"]("rpm-wpc-antd-modal-open")}),[l]),l?React.createElement(ge.Z,{visible:!0,okButtonProps:{form:"license-form-".concat(null==o?void 0:o.slug),htmlType:"submit",style:{display:0===(null==o?void 0:o.unlicensedEntries.length)||d?"none":void 0}},cancelButtonProps:{style:{display:"none"}},onCancel:c,okText:Ze("Save"),title:o?React.createElement("span",{style:{fontWeight:"normal"}},React.createElement("strong",null,o.name,":")," ",Ze("License settings")):"",width:800},d?React.createElement(Je,{slug:l}):n||!o?React.createElement(be.Z,{spinning:!0}):React.createElement("div",null,s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left",style:{marginTop:0}},Ze("Not yet licensed")),React.createElement(qe,{onSave:u,pluginUpdate:o}),s&&React.createElement(ze.Z,{type:"horizontal",orientation:"left"},Ze("Already licensed")),o.licensedEntries.length>0&&React.createElement(Ge,{onDeactivate:u,pluginUpdate:o}))):null}));l.ZP.config({prefixCls:"rpm-wpc-antd"}),r.ZP.config({top:50}),Ne(),((e,t="complete")=>{new Promise((a=>{document.readyState===t?(null==e||e(),a()):document.addEventListener("readystatechange",(()=>{document.readyState===t&&(null==e||e(),a())}))}))})((()=>{const e=document.createElement("div");document.body.appendChild(e),(0,n.render)(React.createElement(me,null,React.createElement($e,null)),e),Fe(),_e()}))},7363:e=>{e.exports=React},1533:e=>{e.exports=ReactDOM},7821:e=>{e.exports=mobx}},a={};function n(e){var l=a[e];if(void 0!==l)return l.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return t[e](r,r.exports,n),r.loaded=!0,r.exports}n.m=t,e=[],n.O=(t,a,l,r)=>{if(!a){var i=1/0;for(u=0;u<e.length;u++){for(var[a,l,r]=e[u],o=!0,s=0;s<a.length;s++)(!1&r||i>=r)&&Object.keys(n.O).every((e=>n.O[e](a[s])))?a.splice(s--,1):(o=!1,r<i&&(i=r));if(o){e.splice(u--,1);var c=l();void 0!==c&&(t=c)}}return t}r=r||0;for(var u=e.length;u>0&&e[u-1][2]>r;u--)e[u]=e[u-1];e[u]=[a,l,r]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e={826:0};n.O.j=t=>0===e[t];var t=(t,a)=>{var l,r,[i,o,s]=a,c=0;if(i.some((t=>0!==e[t]))){for(l in o)n.o(o,l)&&(n.m[l]=o[l]);if(s)var u=s(n)}for(t&&t(a);c<i.length;c++)r=i[c],n.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return n.O(u)},a=self.webpackChunkdevowlWp_realProductManagerWpClient=self.webpackChunkdevowlWp_realProductManagerWpClient||[];a.forEach(t.bind(null,0)),a.push=t.bind(null,a.push.bind(a))})();var l=n.O(void 0,[764],(()=>n(8428)));l=n.O(l),devowlWp_realProductManagerWpClient=l})();
2
  //# sourceMappingURL=index.js.map
vendor/devowl-wp/real-product-manager-wp-client/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///external var \"devowlWp_utils\"","webpack:///./lib/store/option.tsx","webpack:///./lib/wp-api/announcementActive.post.tsx","webpack:///./lib/wp-api/pluginUpdate.patch.tsx","webpack:///./lib/wp-api/pluginUpdateSkip.post.tsx","webpack:///./lib/utils/request.tsx","webpack:///./lib/wp-api/licenseRetry.post.tsx","webpack:///./lib/wp-api/license.delete.tsx","webpack:///./lib/models/license.tsx","webpack:///./lib/models/pluginUpdate.tsx","webpack:///./lib/wp-api/pluginUpdate.get.tsx","webpack:///./lib/store/pluginUpdateStore.tsx","webpack:///./lib/store/stores.tsx","webpack:///./lib/components/provider.tsx","webpack:///./lib/utils/i18n.tsx","webpack:///./lib/wp-api/feedback.post.tsx","webpack:///./lib/components/feedback/modal.tsx","webpack:///./lib/others/listenPluginDeactivation.tsx","webpack:///./lib/others/listenPluginUpdateLinkClick.tsx","webpack:///./lib/others/listenHashPluginUpdate.tsx","webpack:///./lib/components/pluginUpdate/form/terms.tsx","webpack:///./lib/components/learnMoreTag.tsx","webpack:///./lib/components/pluginUpdate/form/form.tsx","webpack:///./lib/components/pluginUpdate/licenseList.tsx","webpack:///./lib/components/pluginUpdate/embed.tsx","webpack:///./lib/components/pluginUpdate/modal.tsx","webpack:///./lib/index.tsx","webpack:///./lib/utils/ready.tsx","webpack:///external var \"React\"","webpack:///external var \"ReactDOM\"","webpack:///external var \"mobx\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","const __WEBPACK_NAMESPACE_OBJECT__ = devowlWp_utils;","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor;\n\nimport { observable, runInAction } from \"mobx\";\nimport { BaseOptions } from \"@devowl-wp/utils\";\nlet OptionStore = (_class = class OptionStore extends BaseOptions {\n constructor(rootStore) {\n super();\n\n _initializerDefineProperty(this, \"others\", _descriptor, this);\n\n this.pureSlug = void 0;\n this.pureSlugCamelCased = void 0;\n this.rootStore = void 0;\n this.rootStore = rootStore;\n this.pureSlug = BaseOptions.getPureSlug(process.env.slug);\n this.pureSlugCamelCased = BaseOptions.getPureSlug(process.env.slug, true); // Use the localized WP object to fill this object values.\n\n runInAction(() => Object.assign(this, window[this.pureSlugCamelCased]));\n }\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"others\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n})), _class);\nexport { OptionStore };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestAnnouncementActive = {\n path: \"/announcement/:slug/active\",\n method: RouteHttpVerb.POST\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdatePatch = {\n path: \"/plugin-update/:slug\",\n method: RouteHttpVerb.PATCH\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdateSkipPost = {\n path: \"/plugin-update/:slug/skip\",\n method: RouteHttpVerb.POST\n};","/* istanbul ignore file: this file does not contain any logic, only factory calls */\nimport { createRequestFactory, BaseOptions } from \"@devowl-wp/utils\"; // Only needed once per `window`\n\nlet FACTORY_MEMO;\n\nfunction get() {\n return FACTORY_MEMO ? FACTORY_MEMO : FACTORY_MEMO = createRequestFactory(window[BaseOptions.getPureSlug(process.env.slug, true)]);\n}\n\nconst urlBuilder = (...args) => get().urlBuilder(...args);\n\nconst request = (...args) => get().request(...args);\n\nexport { urlBuilder, request };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestLicenseRetry = {\n path: \"/plugin-update/:slug/license/:blogId/retry\",\n method: RouteHttpVerb.POST\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestLicenseDelete = {\n path: \"/plugin-update/:slug/license/:blogId\",\n method: RouteHttpVerb.DELETE\n};","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10;\n\nimport { observable, set, runInAction, flow } from \"mobx\";\nimport { locationRestLicenseDelete, locationRestLicenseRetry } from \"../wp-api\";\nimport { request } from \"../utils\";\nlet License = (_class = class License {\n constructor(license, store) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"blog\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"host\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"programmatically\", _descriptor4, this);\n\n _initializerDefineProperty(this, \"blogName\", _descriptor5, this);\n\n _initializerDefineProperty(this, \"installationType\", _descriptor6, this);\n\n _initializerDefineProperty(this, \"code\", _descriptor7, this);\n\n _initializerDefineProperty(this, \"hint\", _descriptor8, this);\n\n _initializerDefineProperty(this, \"remote\", _descriptor9, this);\n\n _initializerDefineProperty(this, \"noUsage\", _descriptor10, this);\n\n this.store = void 0;\n this.retry = flow(function* () {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestLicenseRetry,\n params: {\n slug: this.store.slug,\n blogId: this.blog\n }\n });\n set(this, result);\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.deactivate = flow(function* () {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestLicenseDelete,\n params: {\n slug: this.store.slug,\n blogId: this.blog\n }\n });\n set(this, result);\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n runInAction(() => set(this, license));\n this.store = store;\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"blog\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"host\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"programmatically\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"blogName\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"installationType\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"code\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"hint\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"remote\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, \"noUsage\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n})), _class);\nexport { License };","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19;\n\nimport { observable, set, flow, computed, action } from \"mobx\";\nimport { locationRestPluginUpdatePatch, locationRestPluginUpdateSkipPost, locationRestAnnouncementActive } from \"../wp-api\";\nimport { request } from \"../utils\";\nimport { License } from \".\";\nlet PluginUpdate = (_class = class PluginUpdate {\n get licensedEntries() {\n return this.licenses.filter(({\n code\n }) => code);\n }\n\n get unlicensedEntries() {\n return this.licenses.filter(({\n code\n }) => !code);\n }\n\n get noUsageEntries() {\n return this.unlicensedEntries.filter(({\n noUsage\n }) => noUsage);\n }\n\n get modifiableEntries() {\n return this.unlicensedEntries.filter(({\n programmatically\n }) => !programmatically);\n }\n\n get isLicensed() {\n return this.unlicensedEntries.length === 0;\n }\n\n constructor(pluginUpdate, store) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"slug\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"licenses\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"hasInteractedWithFormOnce\", _descriptor4, this);\n\n _initializerDefineProperty(this, \"name\", _descriptor5, this);\n\n _initializerDefineProperty(this, \"needsLicenseKeys\", _descriptor6, this);\n\n _initializerDefineProperty(this, \"announcementsActive\", _descriptor7, this);\n\n _initializerDefineProperty(this, \"allowsAutoUpdates\", _descriptor8, this);\n\n _initializerDefineProperty(this, \"allowsTelemetry\", _descriptor9, this);\n\n _initializerDefineProperty(this, \"allowsNewsletter\", _descriptor10, this);\n\n _initializerDefineProperty(this, \"potentialNewsletterUser\", _descriptor11, this);\n\n _initializerDefineProperty(this, \"privacyProvider\", _descriptor12, this);\n\n _initializerDefineProperty(this, \"privacyPolicy\", _descriptor13, this);\n\n _initializerDefineProperty(this, \"accountSiteUrl\", _descriptor14, this);\n\n _initializerDefineProperty(this, \"licenseKeyHelpUrl\", _descriptor15, this);\n\n _initializerDefineProperty(this, \"checkUpdateLink\", _descriptor16, this);\n\n _initializerDefineProperty(this, \"invalidKeysError\", _descriptor17, this);\n\n _initializerDefineProperty(this, \"showBlogName\", _descriptor18, this);\n\n _initializerDefineProperty(this, \"showNetworkWideUpdateIssueNotice\", _descriptor19, this);\n\n this.store = void 0;\n this.setAnnouncementActive = flow(function* (state) {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestAnnouncementActive,\n params: {\n slug: this.slug\n },\n request: {\n state\n }\n });\n\n if (result.success) {\n this.announcementsActive = state;\n }\n\n return result.success;\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.update = flow(function* (data) {\n this.busy = true;\n this.invalidKeysError = undefined;\n\n try {\n const result = yield request({\n location: locationRestPluginUpdatePatch,\n params: {\n slug: this.slug\n },\n request: data\n });\n this.fromResponse(result);\n } catch (e) {\n var _e$responseJSON, _e$responseJSON$data;\n\n console.log(e); // Parse error for invalid keys\n\n if ((_e$responseJSON = e.responseJSON) !== null && _e$responseJSON !== void 0 && (_e$responseJSON$data = _e$responseJSON.data) !== null && _e$responseJSON$data !== void 0 && _e$responseJSON$data.invalidKeys) {\n this.invalidKeysError = e.responseJSON.data.invalidKeys;\n }\n\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.skip = flow(function* () {\n this.busy = true;\n\n try {\n yield request({\n location: locationRestPluginUpdateSkipPost,\n params: {\n slug: this.slug\n }\n });\n } catch (e) {\n var _e$responseJSON2, _e$responseJSON2$data;\n\n console.log(e); // Parse error for invalid keys\n\n if ((_e$responseJSON2 = e.responseJSON) !== null && _e$responseJSON2 !== void 0 && (_e$responseJSON2$data = _e$responseJSON2.data) !== null && _e$responseJSON2$data !== void 0 && _e$responseJSON2$data.invalidKeys) {\n this.invalidKeysError = e.responseJSON.data.invalidKeysError;\n }\n\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.fromResponse(pluginUpdate);\n this.store = store;\n }\n\n fromResponse({\n licenses,\n ...pluginUpdate\n }) {\n set(this, pluginUpdate);\n this.licenses = [];\n licenses === null || licenses === void 0 ? void 0 : licenses.forEach(license => {\n this.licenses.push(new License(license, this));\n });\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"slug\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"licenses\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"hasInteractedWithFormOnce\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"name\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"needsLicenseKeys\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"announcementsActive\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"allowsAutoUpdates\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"allowsTelemetry\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, \"allowsNewsletter\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor11 = _applyDecoratedDescriptor(_class.prototype, \"potentialNewsletterUser\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor12 = _applyDecoratedDescriptor(_class.prototype, \"privacyProvider\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor13 = _applyDecoratedDescriptor(_class.prototype, \"privacyPolicy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor14 = _applyDecoratedDescriptor(_class.prototype, \"accountSiteUrl\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor15 = _applyDecoratedDescriptor(_class.prototype, \"licenseKeyHelpUrl\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor16 = _applyDecoratedDescriptor(_class.prototype, \"checkUpdateLink\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor17 = _applyDecoratedDescriptor(_class.prototype, \"invalidKeysError\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor18 = _applyDecoratedDescriptor(_class.prototype, \"showBlogName\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor19 = _applyDecoratedDescriptor(_class.prototype, \"showNetworkWideUpdateIssueNotice\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _applyDecoratedDescriptor(_class.prototype, \"licensedEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"licensedEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"unlicensedEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"unlicensedEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"noUsageEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"noUsageEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"modifiableEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"modifiableEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"isLicensed\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"isLicensed\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"fromResponse\", [action], Object.getOwnPropertyDescriptor(_class.prototype, \"fromResponse\"), _class.prototype)), _class);\nexport { PluginUpdate };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdateGet = {\n path: \"/plugin-update/:slug\",\n method: RouteHttpVerb.GET\n};","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4;\n\nimport { observable, flow, action } from \"mobx\";\nimport { PluginUpdate } from \"../models\";\nimport { request } from \"../utils\";\nimport { locationRestPluginUpdateGet } from \"../wp-api\";\nlet PluginUpdateStore = (_class = class PluginUpdateStore {\n constructor(rootStore) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"modalPlugin\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"pluginUpdates\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"pluginUpdateFetchErrors\", _descriptor4, this);\n\n this.rootStore = void 0;\n this.showInModal = flow(function* (slug) {\n this.modalPlugin = slug;\n\n try {\n yield this.fetchPluginUpdate(slug);\n } catch (e) {\n console.log(e);\n throw e;\n }\n });\n this.fetchPluginUpdate = flow(function* (slug) {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestPluginUpdateGet,\n params: {\n slug\n }\n });\n const pluginUpdate = new PluginUpdate(result, this);\n this.pluginUpdates.set(slug, pluginUpdate);\n this.pluginUpdateFetchErrors.delete(slug);\n return pluginUpdate;\n } catch (e) {\n console.log(e);\n this.pluginUpdateFetchErrors.set(slug, e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.rootStore = rootStore;\n }\n\n hideModal() {\n this.modalPlugin = undefined;\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"modalPlugin\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"pluginUpdates\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return new Map();\n }\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"pluginUpdateFetchErrors\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return new Map();\n }\n}), _applyDecoratedDescriptor(_class.prototype, \"hideModal\", [action], Object.getOwnPropertyDescriptor(_class.prototype, \"hideModal\"), _class.prototype)), _class);\nexport { PluginUpdateStore };","import { configure } from \"mobx\";\nimport { createContextFactory } from \"@devowl-wp/utils\";\nimport { OptionStore, PluginUpdateStore } from \".\";\nconfigure({\n enforceActions: \"always\"\n});\n/**\n * A collection of all available stores which gets available\n * through the custom hook useStores in your function components.\n *\n * @see https://mobx.js.org/best/store.html#combining-multiple-stores\n */\n\nclass RootStore {\n get context() {\n return this.contextMemo ? this.contextMemo : this.contextMemo = createContextFactory(this);\n }\n\n constructor() {\n this.optionStore = void 0;\n this.pluginUpdateStore = void 0;\n this.contextMemo = void 0;\n this.optionStore = new OptionStore(this);\n this.pluginUpdateStore = new PluginUpdateStore(this);\n }\n\n static get StoreProvider() {\n return RootStore.get.context.StoreProvider;\n }\n\n static get get() {\n return RootStore.me ? RootStore.me : RootStore.me = new RootStore();\n }\n\n}\n\nRootStore.me = void 0;\n\nconst useStores = () => RootStore.get.context.useStores();\n\nexport { RootStore, useStores };","import { ConfigProvider } from \"antd\";\nimport { RootStore } from \"../store\";\n\nconst Provider = ({\n children\n}) => /*#__PURE__*/React.createElement(ConfigProvider, {\n prefixCls: process.env.ANTD_PREFIX\n}, /*#__PURE__*/React.createElement(RootStore.StoreProvider, null, children));\n\nexport { Provider };","/* istanbul ignore file: this file does not contain any logic, only factory calls */\nimport { createLocalizationFactory } from \"@devowl-wp/utils\"; // Only needed once per `window`\n\nlet FACTORY_MEMO;\n\nfunction get() {\n return FACTORY_MEMO ? FACTORY_MEMO : FACTORY_MEMO = createLocalizationFactory(\"\".concat(process.env.rootSlug, \"-\").concat(process.env.slug));\n}\n\nconst _n = (...args) => get()._n(...args);\n\nconst _nx = (...args) => get()._nx(...args);\n\nconst _x = (...args) => get()._x(...args);\n\nconst __ = (...args) => get().__(...args);\n\nconst _i = (...args) => get()._i(...args);\n\nexport { _n, _nx, _x, __, _i };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginFeedbackPost = {\n path: \"/feedback/:slug\",\n method: RouteHttpVerb.POST\n};","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useCallback, useState, useMemo } from \"react\";\nimport { Button, Modal, Form, Spin, Input, Checkbox, Radio, message } from \"antd\";\nimport { request, _i, __ } from \"../../utils\";\nimport { HeartTwoTone } from \"@ant-design/icons\";\nimport { locationRestPluginFeedbackPost } from \"../../wp-api\";\nconst FEEDBACK_FORM_LAYOUT = {\n labelCol: {\n span: 24\n },\n wrapperCol: {\n span: 24\n }\n};\nconst FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM = {\n marginBottom: 8\n};\n\nconst FeedbackModal = ({\n initialValues = {},\n plugin,\n name,\n privacyPolicy,\n privacyProvider,\n onClose,\n onDeactivate\n}) => {\n const reasons = useMemo(() => ({\n \"upgrade-to-pro\": __(\"Upgrade to PRO Version\"),\n \"not-working\": __(\"Plugin does not work\"),\n \"missing-features\": __(\"Not the features I want\"),\n incompatible: __(\"Incompatible with themes/plugins\"),\n \"missing-doc\": __(\"Lack of documentation\"),\n \"found-better-plugin\": __(\"Found a better plugin\"),\n temp: __(\"Temporary deactivation\"),\n other: __(\"Other\")\n }), []);\n const [form] = Form.useForm();\n const formName = \"license-form-\".concat(plugin);\n const [visible, setVisible] = useState(true);\n const [busy, setBusy] = useState(false);\n const handleClose = useCallback(() => {\n if (window.confirm(__(\"Are you sure you want to leave the feedback form?\"))) {\n setVisible(false);\n }\n }, []);\n const handleFinish = useCallback(async store => {\n const {\n reason = \"other\",\n note = \"\",\n email = \"\",\n name = \"\"\n } = store;\n\n try {\n setBusy(true);\n await request({\n location: locationRestPluginFeedbackPost,\n params: {\n slug: plugin\n },\n request: {\n reason,\n note,\n email,\n name: email ? name : \"\" // Only send the name when an email got entered, too\n\n }\n });\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();\n } catch (e) {\n var _responseJSON$data, _responseJSON$data$bo, _responseJSON$data$bo2;\n\n const {\n responseJSON\n } = e;\n const code = responseJSON === null || responseJSON === void 0 ? void 0 : (_responseJSON$data = responseJSON.data) === null || _responseJSON$data === void 0 ? void 0 : (_responseJSON$data$bo = _responseJSON$data.body) === null || _responseJSON$data$bo === void 0 ? void 0 : (_responseJSON$data$bo2 = _responseJSON$data$bo[0]) === null || _responseJSON$data$bo2 === void 0 ? void 0 : _responseJSON$data$bo2.code;\n\n if ([\"DeactivationFeedbackAlreadyGiven\", \"DeactivationFeedbackMightBeSpam\"].indexOf(code) > -1 || !code) {\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();\n return;\n } else {\n var _responseJSON$data2, _responseJSON$data2$b, _responseJSON$data2$b2;\n\n message.error(responseJSON === null || responseJSON === void 0 ? void 0 : (_responseJSON$data2 = responseJSON.data) === null || _responseJSON$data2 === void 0 ? void 0 : (_responseJSON$data2$b = _responseJSON$data2.body) === null || _responseJSON$data2$b === void 0 ? void 0 : (_responseJSON$data2$b2 = _responseJSON$data2$b[0]) === null || _responseJSON$data2$b2 === void 0 ? void 0 : _responseJSON$data2$b2.message);\n }\n } finally {\n setBusy(false);\n }\n }, [form, plugin]);\n return /*#__PURE__*/React.createElement(Modal, {\n afterClose: onClose,\n onCancel: handleClose,\n visible: visible,\n footer: [/*#__PURE__*/React.createElement(Button, {\n key: \"skip\",\n type: \"default\",\n onClick: onDeactivate,\n className: \"alignleft\",\n disabled: busy\n }, /*#__PURE__*/React.createElement(\"b\", null, __(\"Skip & Deactivate\"))), /*#__PURE__*/React.createElement(Button, {\n key: \"submit\",\n type: \"primary\",\n htmlType: \"submit\",\n form: formName,\n disabled: busy\n }, __(\"Deactivate\"))],\n title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(HeartTwoTone, {\n twoToneColor: \"#eb2f96\"\n }), \" \", __(\"Too bad you are leaving\"))\n }, /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, /*#__PURE__*/React.createElement(Form, _extends({\n name: formName,\n id: formName,\n form: form\n }, FEEDBACK_FORM_LAYOUT, {\n onFinish: handleFinish,\n initialValues: initialValues\n }), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"reason\",\n label: /*#__PURE__*/React.createElement(React.Fragment, null, __(\"Please give us feedback why you deactivate %s.\", name)),\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n required: true,\n message: __(\"Please provide a reason!\")\n }]\n }, /*#__PURE__*/React.createElement(Radio.Group, null, Object.keys(reasons).map(choice => /*#__PURE__*/React.createElement(Radio, {\n key: choice,\n value: choice,\n style: {\n width: \"calc(50% - 8px)\",\n float: \"left\"\n }\n }, reasons[choice])))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.reason !== nextValues.reason\n }, ({\n getFieldValue\n }) => !!getFieldValue(\"reason\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"What could we do better?\"),\n name: \"note\",\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Input.TextArea, {\n autoSize: {\n minRows: 3\n }\n })), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.answerTerms !== nextValues.answerTerms\n }, ({\n getFieldValue\n }) => !!getFieldValue(\"reason\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n name: \"email\",\n label: __(\"Email for answer/solution\"),\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n rules: [{\n type: \"email\",\n required: getFieldValue(\"answerTerms\"),\n message: __(\"Please provide a valid e-mail address!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.email !== nextValues.email\n }, ({\n getFieldValue\n }) => /*#__PURE__*/React.createElement(React.Fragment, null, !!getFieldValue(\"email\") && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"name\",\n label: __(\"Name\"),\n required: true,\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n rules: [{\n required: true,\n message: __(\"Please provide a name!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"answerTerms\",\n valuePropName: \"checked\",\n required: true,\n rules: [{\n type: \"boolean\",\n required: !!getFieldValue(\"email\"),\n transform: value => value || undefined,\n message: __(\"Please confirm that you have checked the privacy policy.\")\n }],\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{/a}}.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))))))))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.note !== nextValues.note || prevValues.answerTerms !== nextValues.answerTerms\n }, ({\n getFieldValue\n }) => {\n const answerTerms = getFieldValue(\"answerTerms\") || false;\n const note = getFieldValue(\"note\") || \"\";\n\n if (answerTerms) {\n return null;\n }\n\n return note.split(\" \").length >= 5 ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: 0\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"Allow us to reply to you by email and we will get back to you as soon as possible!\"))) : /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginTop: 5\n }\n }, _i(__(\"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{/a}}.\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: __(\"https://devowl.io/support/\"),\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }));\n }))));\n};\n\nexport { FeedbackModal };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { render, unmountComponentAtNode } from \"react-dom\";\nimport { FeedbackModal, Provider } from \"../components\";\nimport { RootStore } from \"../store\";\n\nfunction listenPluginDeactivation() {\n document.addEventListener(\"click\", e => {\n const {\n names,\n currentUserFullName\n } = RootStore.get.optionStore.others;\n const link = e === null || e === void 0 ? void 0 : e.target;\n\n for (const slug in names) {\n const {\n plugin\n } = names[slug];\n\n if (link.matches(\"tr[data-plugin=\\\"\".concat(plugin, \"\\\"] a[href*=\\\"action=deactivate\\\"]\"))) {\n const node = document.createElement(\"div\");\n document.body.appendChild(node);\n render( /*#__PURE__*/React.createElement(Provider, null, /*#__PURE__*/React.createElement(FeedbackModal, _extends({}, names[slug], {\n initialValues: {\n name: currentUserFullName\n },\n plugin: slug,\n onClose: () => {\n unmountComponentAtNode(node);\n },\n onDeactivate: () => {\n window.location.href = link.href;\n }\n }))), node);\n e.preventDefault(); // Stop `real-utils` functionality\n\n e.stopImmediatePropagation();\n break;\n }\n }\n }, true);\n}\n\nexport { listenPluginDeactivation };","import { RootStore } from \"../store\";\nconst CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE = \"data-rpm-wp-client-plugin-update\";\n/**\n * Listen to clicks on `<a data-rpm-wp-client-license=\"\"` links and open the license modal.\n */\n\nfunction listenPluginUpdateLinkClick() {\n document.addEventListener(\"click\", e => {\n var _e$target;\n\n const plugin = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.getAttribute(CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE);\n\n if (plugin) {\n RootStore.get.pluginUpdateStore.showInModal(plugin);\n e.preventDefault();\n }\n });\n}\n\nexport { listenPluginUpdateLinkClick, CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE };","import { RootStore } from \"../store\";\nconst HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX = \"rpm-wp-client-plugin-update-\";\n/**\n * Listen to window hash links and open the license modal.\n */\n\nfunction listenHashPluginUpdate() {\n const {\n hash\n } = window.location;\n\n if (hash.startsWith(\"#\".concat(HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX))) {\n const slug = hash.substr(HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX.length + 1);\n RootStore.get.pluginUpdateStore.showInModal(slug); // Reset, should not be visible in URL\n\n window.location.hash = \"\";\n }\n}\n\nexport { listenHashPluginUpdate, HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX };","import { Form, Input, Checkbox } from \"antd\";\nimport { observer } from \"mobx-react\";\nimport { __, _i } from \"../../../utils\";\nimport { PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM } from \".\";\nconst PluginUpdateTermFields = observer(({\n pluginUpdate\n}) => {\n const {\n privacyProvider,\n privacyPolicy,\n allowsTelemetry,\n allowsAutoUpdates,\n allowsNewsletter\n } = pluginUpdate;\n return /*#__PURE__*/React.createElement(React.Fragment, null, allowsAutoUpdates && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"autoUpdates\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"Updates containing bug fixes and new features will be downloaded and installed automatically.\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"terms\",\n valuePropName: \"checked\",\n required: true,\n rules: [{\n type: \"boolean\",\n required: true,\n transform: value => value || undefined,\n message: __(\"Please confirm that you have read the privacy policy!\")\n }],\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{/a}} of %1$s.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), allowsTelemetry && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"telemetry\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), allowsNewsletter && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"newsletter\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{/a}}. I know that I can unsubscribe from the newsletter at any time.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.newsletter !== nextValues.newsletter\n }, ({\n getFieldValue\n }) => getFieldValue(\"newsletter\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"First name\"),\n name: \"firstName\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n required: true,\n message: __(\"Please enter your first name!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"Email\"),\n name: \"email\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n type: \"email\",\n required: true,\n message: __(\"Please enter your email address!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: 0\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.\"))))));\n});\nexport { PluginUpdateTermFields };","import { Tag } from \"antd\";\nimport { QuestionCircleFilled } from \"@ant-design/icons\";\nimport { __ } from \"../utils\";\n\nconst LearnMoreTag = ({\n url,\n style = undefined,\n label = __(\"Learn more\")\n}) => {\n const useStyle = {\n cursor: \"pointer\",\n ...style\n };\n return /*#__PURE__*/React.createElement(Tag, {\n style: useStyle,\n onClick: () => window.open(url, \"_blank\")\n }, /*#__PURE__*/React.createElement(QuestionCircleFilled, null), \" \", label);\n};\n\nexport { LearnMoreTag };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useCallback, useState } from \"react\";\nimport { Form, Input, Select, Divider, Spin, message, Checkbox } from \"antd\";\nimport { observer } from \"mobx-react\";\nimport { __, _i } from \"../../../utils\";\nimport { PluginUpdateTermFields } from \".\";\nimport { LearnMoreTag } from \"../..\";\nconst PLUGIN_UPDATE_FORM_LAYOUT = {\n labelCol: {\n span: 24\n },\n wrapperCol: {\n span: 24\n }\n};\nconst PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM = {\n marginBottom: 8\n};\nconst PluginUpdateForm = observer(({\n onSave,\n onFailure,\n footer,\n pluginUpdate\n}) => {\n const [forceFormValidateStatus, setForceFormValidateStatus] = useState(false);\n const {\n busy,\n slug,\n allowsAutoUpdates,\n needsLicenseKeys,\n licenses,\n unlicensedEntries,\n noUsageEntries,\n modifiableEntries,\n invalidKeysError,\n accountSiteUrl,\n licenseKeyHelpUrl,\n name,\n potentialNewsletterUser: {\n firstName,\n email\n },\n showBlogName,\n showNetworkWideUpdateIssueNotice\n } = pluginUpdate;\n const allowNoUsage = licenses.length > 1; // only allow \"No usage\" within multisite\n\n const initialValues = {\n licenses: licenses.map(({\n blog,\n code,\n installationType,\n hint,\n noUsage\n }) => {\n var _hint$help$match;\n\n return {\n blog,\n code: code || ( // Read a code from the hint\n hint ? (_hint$help$match = hint.help.match(/(\\w{8}-\\w{4}-\\w{4}-\\w{4}-\\w{12})|(\\w{32})/)) === null || _hint$help$match === void 0 ? void 0 : _hint$help$match[0] : \"\") || \"\",\n installationType: installationType || \"\",\n noUsage\n };\n }),\n autoUpdates: allowsAutoUpdates,\n terms: false,\n telemetry: false,\n newsletter: false,\n firstName,\n email\n };\n const [form] = Form.useForm();\n const [showTermFields, setShowTermFields] = useState(noUsageEntries.length !== unlicensedEntries.length);\n const handleSave = useCallback(async values => {\n const {\n licenses: formLicenses,\n ...meta\n } = values;\n const newMeta = { ...meta,\n licenses: JSON.stringify(needsLicenseKeys ? // Remove all entries which are already licensed\n formLicenses.filter(({\n blog\n }) => {\n const [foundLicense] = licenses.filter(k => k.blog === blog);\n return unlicensedEntries.indexOf(foundLicense) > -1;\n }) : // The free version does not show any inputs for license keys and license activation is done by backend\n undefined)\n };\n\n try {\n await pluginUpdate.update(newMeta);\n form.setFieldsValue({\n terms: false,\n telemetry: false,\n newsletter: false\n });\n message.success(__(\"Your license has been activated!\"));\n onSave === null || onSave === void 0 ? void 0 : onSave();\n } catch (e) {\n if (!pluginUpdate.invalidKeysError) {\n message.error(e.responseJSON.message);\n } // No error needed cause it is catch trough `invalidKeysError`\n\n\n onFailure === null || onFailure === void 0 ? void 0 : onFailure();\n throw e;\n }\n }, [pluginUpdate, onSave, licenses, unlicensedEntries, needsLicenseKeys]);\n const onFinish = useCallback(async values => {\n try {\n await handleSave(values);\n } catch (e) {// Silence is golden.\n } finally {\n setForceFormValidateStatus(false);\n }\n }, [form, handleSave, setForceFormValidateStatus]);\n const onFinishFailed = useCallback(() => {\n setForceFormValidateStatus(true);\n setShowTermFields(true);\n }, []);\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, unlicensedEntries.length > 0 && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginBottom: 15\n }\n }, needsLicenseKeys ? __(\"Activate your %s PRO license to receive regular updates and support.\", name) : _i(__(\"To use all advantages of %s {{strong}}you need a free license{{/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).\", name), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n })), showNetworkWideUpdateIssueNotice && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-error inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.\", name)), /*#__PURE__*/React.createElement(\"p\", null, __(\"Please enable %s network-wide or take care of regular updates manually! \", name))), /*#__PURE__*/React.createElement(Form, _extends({\n name: \"license-form-\".concat(slug),\n id: \"license-form-\".concat(slug),\n form: form\n }, PLUGIN_UPDATE_FORM_LAYOUT, {\n initialValues: initialValues,\n onFinish: onFinish,\n onFinishFailed: onFinishFailed,\n onChange: () => {\n setShowTermFields(true);\n }\n }), needsLicenseKeys && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.List, {\n name: \"licenses\"\n }, fields => fields.map((field, index) => {\n const {\n blog\n } = form.getFieldValue([\"licenses\", field.name]);\n const [foundLicense] = licenses.filter(k => k.blog === blog); // Already licensed, do not show in form again\n\n if (unlicensedEntries.indexOf(foundLicense) === -1) {\n return null;\n }\n\n const {\n busy: licenseBusy,\n blogName,\n programmatically,\n host\n } = foundLicense;\n const lastBlogPutError = invalidKeysError === null || invalidKeysError === void 0 ? void 0 : invalidKeysError[blog]; // Hints priority: Form handling, POST-Request, Hint coming from license deactivation\n\n const useHint = forceFormValidateStatus ? {} : lastBlogPutError || foundLicense.hint;\n const isLicenseMaxUsagesReached = !!(lastBlogPutError !== null && lastBlogPutError !== void 0 && lastBlogPutError.debug.errors[\"LicenseMaxUsagesReached\"]); // Modify hint for LicenseMaxUsagesReached error and show a \"Learn more tag\"\n\n let customHelp;\n\n if (typeof useHint !== \"boolean\" && isLicenseMaxUsagesReached) {\n customHelp = /*#__PURE__*/React.createElement(\"span\", null, useHint.help, \" \", /*#__PURE__*/React.createElement(LearnMoreTag, {\n url: __(\"https://devowl.io/knowledge-base/the-limit-of-activated-clients-for-this-license-has-already-been-reached/\")\n }));\n }\n\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: licenseBusy,\n key: field.key\n }, /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.licenses[field.key].noUsage !== nextValues.licenses[field.key].noUsage\n }, ({\n getFieldValue\n }) => {\n const noUsage = getFieldValue([\"licenses\", field.key, \"noUsage\"]);\n return /*#__PURE__*/React.createElement(Form.Item, _extends({\n label: /*#__PURE__*/React.createElement(\"span\", null, unlicensedEntries.length > 1 || showBlogName ? _i(__(\"Installation type and license key for {{strong}}%s{{/strong}}\", blogName), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n }) : __(\"Installation type and license key\"), \" \", /*#__PURE__*/React.createElement(LearnMoreTag, {\n url: licenseKeyHelpUrl\n })),\n help: customHelp\n }, useHint, {\n required: true,\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }), !noUsage && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"code\"],\n name: [field.name, \"code\"],\n noStyle: true,\n rules: [{\n // Allow UUID format and additionally a custom 32-length string\n pattern: /(^\\w{8}-\\w{4}-\\w{4}-\\w{4}-\\w{12}$)|(^\\w{32}$)/,\n required: true,\n message: __(\"Please enter a valid license key!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, {\n placeholder: programmatically ? programmatically.code : \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n disabled: !!programmatically,\n addonBefore: /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"installationType\"],\n name: [field.name, \"installationType\"],\n noStyle: true,\n rules: [{\n required: true,\n message: __(\"Please choose an installation type!\")\n }]\n }, /*#__PURE__*/React.createElement(Select, {\n placeholder: __(\"Installation type\"),\n disabled: !!programmatically\n }, /*#__PURE__*/React.createElement(Select.Option, {\n value: \"\",\n disabled: true\n }, programmatically ? programmatically.type === \"development\" ? __(\"Development\") : __(\"Production\") : __(\"Select installation type…\")), /*#__PURE__*/React.createElement(Select.Option, {\n value: \"production\"\n }, __(\"Production\")), /*#__PURE__*/React.createElement(Select.Option, {\n value: \"development\"\n }, __(\"Development\"))))\n })), index === 0 && /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginTop: 5\n }\n }, /*#__PURE__*/React.createElement(\"strong\", null, __(\"What is an installation type?\")), \" \", __(\"You can use each license in both production and development environments.\"), \" \", _i(__('Generally speaking, you use \"{{strong}}Development{{/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.'), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n }))), allowNoUsage && /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"noUsage\"],\n name: [field.name, \"noUsage\"],\n valuePropName: \"checked\",\n style: {\n marginTop: noUsage ? -25 : index === 0 ? -8 : 0,\n marginBottom: 0\n }\n }, /*#__PURE__*/React.createElement(Checkbox, null, __(\"I do not want to license and use the plugin for this site within my multisite.\"))));\n }), programmatically && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-warning inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.\", host, blog), {\n code: /*#__PURE__*/React.createElement(\"code\", null),\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: \"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html\",\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }), \" \", \"\\u2022\", \" \", /*#__PURE__*/React.createElement(\"a\", {\n className: \"button-link\",\n onClick: async () => {\n try {\n await foundLicense.retry();\n\n if (foundLicense.hint) {\n message.error(foundLicense.hint.help);\n }\n } catch (e) {\n message.error(e.responseJSON.message);\n }\n }\n }, __(\"Retry activation\")))), isLicenseMaxUsagesReached && /*#__PURE__*/React.createElement(\"a\", {\n href: accountSiteUrl,\n target: \"_blank\",\n rel: \"noreferrer\",\n className: \"button button-primary\"\n }, __(\"Manage licenses in the customer center\")));\n })), /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n style: {\n margin: \"10px 0\"\n }\n })), modifiableEntries.length > 0 && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n style: {\n display: showTermFields ? \"block\" : \"none\"\n }\n }, /*#__PURE__*/React.createElement(PluginUpdateTermFields, {\n pluginUpdate: pluginUpdate\n })), footer))));\n});\nexport { PluginUpdateForm, PLUGIN_UPDATE_FORM_LAYOUT, PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM };","import { observer } from \"mobx-react\";\nimport { __, _i } from \"../../utils\";\nimport { List, Space, Spin, message, Checkbox } from \"antd\";\nimport { ClockCircleOutlined, CloudServerOutlined, CloudUploadOutlined } from \"@ant-design/icons\";\nconst PluginUpdateLicenseList = observer(({\n onDeactivate,\n pluginUpdate\n}) => {\n const {\n licensedEntries,\n needsLicenseKeys\n } = pluginUpdate;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(List, {\n itemLayout: \"vertical\",\n size: \"small\",\n dataSource: licensedEntries,\n renderItem: item => {\n const {\n busy,\n installationType,\n blogName,\n code,\n remote,\n programmatically,\n host,\n blog\n } = item;\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, /*#__PURE__*/React.createElement(List.Item, {\n style: {\n paddingLeft: 0,\n paddingRight: 0\n },\n actions: [needsLicenseKeys && /*#__PURE__*/React.createElement(Space, {\n key: \"installationType\"\n }, /*#__PURE__*/React.createElement(CloudServerOutlined, null), installationType === \"production\" ? __(\"Production\") : installationType === \"development\" ? __(\"Development\") : \"n/a\"), remote && /*#__PURE__*/React.createElement(Space, {\n key: \"activatedAt\"\n }, /*#__PURE__*/React.createElement(ClockCircleOutlined, null), __(\"Activated %s\", new Date(remote.licenseActivation.activatedAt).toLocaleString(document.documentElement.lang))), remote && /*#__PURE__*/React.createElement(Space, {\n key: \"telemetryDataSharingOptIn\"\n }, /*#__PURE__*/React.createElement(CloudUploadOutlined, null), remote.licenseActivation.telemetryDataSharingOptIn ? __(\"Telemetry data sharing enabled\") : __(\"Telemetry data sharing disabled\")), !programmatically && /*#__PURE__*/React.createElement(\"a\", {\n key: \"deactivate\",\n className: \"button-link\",\n onClick: async () => {\n try {\n await item.deactivate();\n } catch (e) {\n message.error(e.responseJSON.message);\n }\n\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate(item);\n }\n }, __(\"Deactivate\"))].filter(Boolean)\n }, /*#__PURE__*/React.createElement(List.Item.Meta, {\n title: blogName,\n description: needsLicenseKeys ? /*#__PURE__*/React.createElement(React.Fragment, null, __(\"Your license key\"), \": \", /*#__PURE__*/React.createElement(\"code\", null, code)) : __(\"Your installation is fully activated.\")\n }), programmatically && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Please remove the filter to deactivate the license!\", host, blog), {\n code: /*#__PURE__*/React.createElement(\"code\", null),\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: \"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html\",\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n })))));\n }\n }), /*#__PURE__*/React.createElement(\"p\", {\n style: {\n textAlign: \"right\"\n }\n }, /*#__PURE__*/React.createElement(Checkbox, {\n disabled: pluginUpdate.busy,\n checked: pluginUpdate.announcementsActive,\n onChange: e => pluginUpdate.setAnnouncementActive(e.target.checked)\n }, __(\"Show announcements for this plugin\"))));\n});\nexport { PluginUpdateLicenseList };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useEffect } from \"react\";\nimport { observer } from \"mobx-react\";\nimport { useStores } from \"../../store\";\nimport { Divider, Spin } from \"antd\";\nimport { PluginUpdateForm, PluginUpdateLicenseList } from \".\";\nimport { _i, __ } from \"../../utils\";\nconst PluginUpdateErrorNotice = observer(({\n slug\n}) => {\n var _error$responseJSON;\n\n const error = useStores().pluginUpdateStore.pluginUpdateFetchErrors.get(slug);\n const errorMessage = error === null || error === void 0 ? void 0 : (_error$responseJSON = error.responseJSON) === null || _error$responseJSON === void 0 ? void 0 : _error$responseJSON.message;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-error inline below-h2 notice-alt\",\n style: {\n margin: \"20px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{/a}}.\", errorMessage ? \" (\".concat(errorMessage, \")\") : \"\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: __(\"https://devowl.io/knowledge-base/wordpress-rest-api-does-not-respond/\"),\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n })));\n});\n/**\n * Embed the license form and list of activated licenses into your app.\n * Please consider, that this embed does not provide any buttons, please provide\n * them yourself with `<button form=\"license-form-$slug\"`>\n */\n\nconst PluginUpdateEmbed = observer(({\n formProps = {},\n listProps = {},\n slug\n}) => {\n const {\n pluginUpdateStore\n } = useStores();\n const {\n busy,\n pluginUpdates,\n pluginUpdateFetchErrors\n } = pluginUpdateStore;\n const pluginUpdate = pluginUpdates.get(slug);\n const showHeadline = (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) > 0 && (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.licensedEntries.length) > 0;\n useEffect(() => {\n try {\n pluginUpdateStore.fetchPluginUpdate(slug);\n } catch (e) {// Silence is golden.\n }\n }, [slug]);\n return pluginUpdateFetchErrors.get(slug) ? /*#__PURE__*/React.createElement(PluginUpdateErrorNotice, {\n slug: slug\n }) : busy || !pluginUpdate ? /*#__PURE__*/React.createElement(Spin, {\n spinning: true\n }) : /*#__PURE__*/React.createElement(\"div\", null, showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\",\n style: {\n marginTop: 0\n }\n }, __(\"Not yet licensed\")), /*#__PURE__*/React.createElement(PluginUpdateForm, _extends({}, formProps, {\n pluginUpdate: pluginUpdate\n })), showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\"\n }, __(\"Already licensed\")), pluginUpdate.licensedEntries.length > 0 && /*#__PURE__*/React.createElement(PluginUpdateLicenseList, _extends({}, listProps, {\n pluginUpdate: pluginUpdate\n })));\n});\nexport { PluginUpdateErrorNotice, PluginUpdateEmbed };","import { useCallback, useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react\";\nimport { useStores } from \"../../store\";\nimport { Divider, Modal, Spin } from \"antd\";\nimport { __ } from \"../../utils\";\nimport { PluginUpdateForm, PluginUpdateLicenseList, PluginUpdateErrorNotice } from \".\";\nconst PluginUpdateModal = observer(() => {\n const [doReloadAfterClose, setDoReloadAfterClose] = useState(false);\n const {\n pluginUpdateStore\n } = useStores();\n const {\n busy,\n modalPlugin,\n pluginUpdates,\n pluginUpdateFetchErrors\n } = pluginUpdateStore;\n const pluginUpdate = modalPlugin ? pluginUpdates.get(modalPlugin) : undefined;\n const showHeadline = (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) > 0 && (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.licensedEntries.length) > 0;\n const handleCancel = useCallback(() => {\n if (doReloadAfterClose) {\n const {\n checkUpdateLink\n } = pluginUpdate;\n\n if (checkUpdateLink) {\n window.location.href = checkUpdateLink;\n } else {\n window.location.reload();\n }\n } else {\n pluginUpdateStore.hideModal();\n }\n }, [doReloadAfterClose, pluginUpdateStore, pluginUpdate]);\n const handleChange = useCallback(() => setDoReloadAfterClose(true), [setDoReloadAfterClose]);\n const error = pluginUpdateFetchErrors.get(modalPlugin);\n useEffect(() => {\n document.body.classList[modalPlugin ? \"add\" : \"remove\"](\"rpm-wpc-antd-modal-open\");\n }, [modalPlugin]);\n return modalPlugin ? /*#__PURE__*/React.createElement(Modal, {\n visible: true,\n okButtonProps: {\n form: \"license-form-\".concat(pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.slug),\n htmlType: \"submit\",\n style: {\n display: (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) === 0 || error ? \"none\" : undefined\n }\n },\n cancelButtonProps: {\n style: {\n display: \"none\"\n }\n },\n onCancel: handleCancel,\n okText: __(\"Save\"),\n title: pluginUpdate ? /*#__PURE__*/React.createElement(\"span\", {\n style: {\n fontWeight: \"normal\"\n }\n }, /*#__PURE__*/React.createElement(\"strong\", null, pluginUpdate.name, \":\"), \" \", __(\"License settings\")) : \"\",\n width: 800\n }, error ? /*#__PURE__*/React.createElement(PluginUpdateErrorNotice, {\n slug: modalPlugin\n }) : busy || !pluginUpdate ? /*#__PURE__*/React.createElement(Spin, {\n spinning: true\n }) : /*#__PURE__*/React.createElement(\"div\", null, showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\",\n style: {\n marginTop: 0\n }\n }, __(\"Not yet licensed\")), /*#__PURE__*/React.createElement(PluginUpdateForm, {\n onSave: handleChange,\n pluginUpdate: pluginUpdate\n }), showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\"\n }, __(\"Already licensed\")), pluginUpdate.licensedEntries.length > 0 && /*#__PURE__*/React.createElement(PluginUpdateLicenseList, {\n onDeactivate: handleChange,\n pluginUpdate: pluginUpdate\n }))) : null;\n});\nexport { PluginUpdateModal };","/* istanbul ignore file: we do not need to care about the entry point file as errors are detected through integration tests (E2E) */\n\n/**\n * The entry point for the admin side wp-admin resource.\n */\nimport { render } from \"react-dom\";\nimport { message, ConfigProvider, Avatar, Card, Form, Space } from \"antd\";\nimport \"./style/antd.less\";\nimport { listenHashPluginUpdate, listenPluginDeactivation, listenPluginUpdateLinkClick } from \"./others\";\nimport { PluginUpdateModal, Provider } from \"./components\";\nimport { ready } from \"./utils\"; // Configure prefix for root (https://bit.ly/3wb2pv9)\n\nConfigProvider.config({\n prefixCls: process.env.ANTD_PREFIX\n});\nmessage.config({\n top: 50\n});\nlistenPluginDeactivation();\nready(() => {\n // Create main component for all available features (e.g. license modal)\n const node = document.createElement(\"div\");\n document.body.appendChild(node);\n render( /*#__PURE__*/React.createElement(Provider, null, /*#__PURE__*/React.createElement(PluginUpdateModal, null)), node);\n listenPluginUpdateLinkClick();\n listenHashPluginUpdate();\n});\nexport * from \"./others\";\nexport * from \"./components\";\nexport * from \"./wp-api\";\nexport * from \"./store\"; // Provide some UI elements so other plugins can use the same antd class prefix e.g. extending the update modal form\n// Currently only used for Real Media Library as it does not yet use an own class prefix\n\nexport { Avatar, Card, Form, Space };","/**\n * Wait DOM is ready depending on a state.\n *\n * - `interactive`: Defer scripts are executing, but DOM is ready\n * - `complete`: All scripts including deferred ones are executed and DOM is ready\n *\n * @see https://stackoverflow.com/a/65430734/5506547\n * @see https://stackoverflow.com/a/51980980/5506547\n */\nconst ready = (fn, state = \"complete\") => {\n return new Promise(resolve => {\n if (document.readyState === state) {\n fn === null || fn === void 0 ? void 0 : fn();\n resolve();\n } else {\n document.addEventListener(\"readystatechange\", () => {\n if (document.readyState === state) {\n fn === null || fn === void 0 ? void 0 : fn();\n resolve();\n }\n });\n }\n });\n};\n\nexport { ready };","module.exports = React;","module.exports = ReactDOM;","module.exports = mobx;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t826: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkdevowlWp_realProductManagerWpClient\"] = self[\"webpackChunkdevowlWp_realProductManagerWpClient\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [764], () => (__webpack_require__(8428)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","devowlWp_utils","_class","_descriptor","OptionStore","BaseOptions","constructor","rootStore","super","this","pureSlug","pureSlugCamelCased","runInAction","Object","assign","window","prototype","observable","configurable","enumerable","writable","initializer","locationRestAnnouncementActive","path","method","RouteHttpVerb","locationRestPluginUpdatePatch","locationRestPluginUpdateSkipPost","FACTORY_MEMO","request","args","createRequestFactory","locationRestLicenseRetry","locationRestLicenseDelete","_descriptor2","_descriptor3","_descriptor4","_descriptor5","_descriptor6","_descriptor7","_descriptor8","_descriptor9","_descriptor10","License","license","store","retry","flow","busy","result","location","params","slug","blogId","blog","set","e","console","log","deactivate","_descriptor11","_descriptor12","_descriptor13","_descriptor14","_descriptor15","_descriptor16","_descriptor17","_descriptor18","_descriptor19","PluginUpdate","licensedEntries","licenses","filter","code","unlicensedEntries","noUsageEntries","noUsage","modifiableEntries","programmatically","isLicensed","length","pluginUpdate","setAnnouncementActive","state","success","announcementsActive","update","data","invalidKeysError","undefined","fromResponse","_e$responseJSON","_e$responseJSON$data","responseJSON","invalidKeys","skip","_e$responseJSON2","_e$responseJSON2$data","forEach","push","computed","getOwnPropertyDescriptor","action","locationRestPluginUpdateGet","PluginUpdateStore","showInModal","modalPlugin","fetchPluginUpdate","pluginUpdates","pluginUpdateFetchErrors","delete","hideModal","Map","configure","enforceActions","RootStore","context","contextMemo","createContextFactory","optionStore","pluginUpdateStore","StoreProvider","get","me","useStores","Provider","children","React","createElement","prefixCls","createLocalizationFactory","concat","__","_i","locationRestPluginFeedbackPost","FEEDBACK_FORM_LAYOUT","labelCol","span","wrapperCol","FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM","marginBottom","FeedbackModal","initialValues","plugin","name","privacyPolicy","privacyProvider","onClose","onDeactivate","reasons","useMemo","incompatible","temp","other","form","formName","visible","setVisible","useState","setBusy","handleClose","useCallback","confirm","handleFinish","async","reason","note","email","_responseJSON$data","_responseJSON$data$bo","_responseJSON$data$bo2","body","indexOf","_responseJSON$data2","_responseJSON$data2$b","_responseJSON$data2$b2","message","afterClose","onCancel","footer","key","type","onClick","className","disabled","htmlType","title","Fragment","HeartTwoTone","twoToneColor","spinning","id","onFinish","label","style","required","rules","keys","map","choice","value","width","float","noStyle","shouldUpdate","prevValues","nextValues","getFieldValue","autoSize","minRows","answerTerms","valuePropName","transform","zoom","a","href","target","rel","split","margin","marginTop","listenPluginDeactivation","document","addEventListener","names","currentUserFullName","others","link","matches","node","appendChild","render","unmountComponentAtNode","preventDefault","stopImmediatePropagation","CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE","listenPluginUpdateLinkClick","_e$target","getAttribute","HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX","listenHashPluginUpdate","hash","startsWith","substr","PluginUpdateTermFields","allowsTelemetry","allowsAutoUpdates","allowsNewsletter","PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM","newsletter","LearnMoreTag","url","useStyle","cursor","open","QuestionCircleFilled","PLUGIN_UPDATE_FORM_LAYOUT","PluginUpdateForm","onSave","onFailure","forceFormValidateStatus","setForceFormValidateStatus","needsLicenseKeys","accountSiteUrl","licenseKeyHelpUrl","potentialNewsletterUser","firstName","showBlogName","showNetworkWideUpdateIssueNotice","allowNoUsage","installationType","hint","_hint$help$match","help","match","autoUpdates","terms","telemetry","showTermFields","setShowTermFields","handleSave","formLicenses","meta","values","newMeta","JSON","stringify","foundLicense","k","setFieldsValue","onFinishFailed","strong","onChange","fields","field","index","licenseBusy","blogName","host","lastBlogPutError","useHint","isLicenseMaxUsagesReached","debug","errors","customHelp","fieldKey","pattern","placeholder","addonBefore","display","PluginUpdateLicenseList","itemLayout","size","dataSource","renderItem","item","remote","paddingLeft","paddingRight","actions","CloudServerOutlined","ClockCircleOutlined","Date","licenseActivation","activatedAt","toLocaleString","documentElement","lang","CloudUploadOutlined","telemetryDataSharingOptIn","Boolean","description","textAlign","checked","PluginUpdateErrorNotice","_error$responseJSON","error","errorMessage","PluginUpdateEmbed","formProps","listProps","showHeadline","useEffect","orientation","PluginUpdateModal","doReloadAfterClose","setDoReloadAfterClose","handleCancel","checkUpdateLink","reload","handleChange","classList","okButtonProps","cancelButtonProps","okText","fontWeight","top","fn","Promise","resolve","readyState","ready","module","exports","ReactDOM","mobx","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","every","splice","r","n","getter","__esModule","d","definition","o","defineProperty","g","globalThis","Function","obj","prop","hasOwnProperty","call","Symbol","toStringTag","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///external var \"devowlWp_utils\"","webpack:///./lib/store/option.tsx","webpack:///./lib/wp-api/announcementActive.post.tsx","webpack:///./lib/wp-api/pluginUpdate.patch.tsx","webpack:///./lib/wp-api/pluginUpdateSkip.post.tsx","webpack:///./lib/utils/request.tsx","webpack:///./lib/wp-api/licenseRetry.post.tsx","webpack:///./lib/wp-api/license.delete.tsx","webpack:///./lib/models/license.tsx","webpack:///./lib/models/pluginUpdate.tsx","webpack:///./lib/wp-api/pluginUpdate.get.tsx","webpack:///./lib/store/pluginUpdateStore.tsx","webpack:///./lib/store/stores.tsx","webpack:///./lib/components/provider.tsx","webpack:///./lib/utils/i18n.tsx","webpack:///./lib/wp-api/feedback.post.tsx","webpack:///./lib/components/feedback/modal.tsx","webpack:///./lib/others/listenPluginDeactivation.tsx","webpack:///./lib/others/listenPluginUpdateLinkClick.tsx","webpack:///./lib/others/listenHashPluginUpdate.tsx","webpack:///./lib/components/pluginUpdate/form/terms.tsx","webpack:///./lib/components/learnMoreTag.tsx","webpack:///./lib/components/pluginUpdate/form/form.tsx","webpack:///./lib/components/pluginUpdate/licenseList.tsx","webpack:///./lib/components/pluginUpdate/embed.tsx","webpack:///./lib/components/pluginUpdate/modal.tsx","webpack:///./lib/index.tsx","webpack:///./lib/utils/ready.tsx","webpack:///external var \"React\"","webpack:///external var \"ReactDOM\"","webpack:///external var \"mobx\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","const __WEBPACK_NAMESPACE_OBJECT__ = devowlWp_utils;","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor;\n\nimport { observable, runInAction } from \"mobx\";\nimport { BaseOptions } from \"@devowl-wp/utils\";\nlet OptionStore = (_class = class OptionStore extends BaseOptions {\n constructor(rootStore) {\n super();\n\n _initializerDefineProperty(this, \"others\", _descriptor, this);\n\n this.pureSlug = void 0;\n this.pureSlugCamelCased = void 0;\n this.rootStore = void 0;\n this.rootStore = rootStore;\n this.pureSlug = BaseOptions.getPureSlug(process.env.slug);\n this.pureSlugCamelCased = BaseOptions.getPureSlug(process.env.slug, true); // Use the localized WP object to fill this object values.\n\n runInAction(() => Object.assign(this, window[this.pureSlugCamelCased]));\n }\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"others\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n})), _class);\nexport { OptionStore };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestAnnouncementActive = {\n path: \"/announcement/:slug/active\",\n method: RouteHttpVerb.POST\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdatePatch = {\n path: \"/plugin-update/:slug\",\n method: RouteHttpVerb.PATCH\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdateSkipPost = {\n path: \"/plugin-update/:slug/skip\",\n method: RouteHttpVerb.POST\n};","/* istanbul ignore file: this file does not contain any logic, only factory calls */\nimport { createRequestFactory, BaseOptions } from \"@devowl-wp/utils\"; // Only needed once per `window`\n\nlet FACTORY_MEMO;\n\nfunction get() {\n return FACTORY_MEMO ? FACTORY_MEMO : FACTORY_MEMO = createRequestFactory(window[BaseOptions.getPureSlug(process.env.slug, true)]);\n}\n\nconst urlBuilder = (...args) => get().urlBuilder(...args);\n\nconst request = (...args) => get().request(...args);\n\nexport { urlBuilder, request };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestLicenseRetry = {\n path: \"/plugin-update/:slug/license/:blogId/retry\",\n method: RouteHttpVerb.POST\n};","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestLicenseDelete = {\n path: \"/plugin-update/:slug/license/:blogId\",\n method: RouteHttpVerb.DELETE\n};","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10;\n\nimport { observable, set, runInAction, flow } from \"mobx\";\nimport { locationRestLicenseDelete, locationRestLicenseRetry } from \"../wp-api\";\nimport { request } from \"../utils\";\nlet License = (_class = class License {\n constructor(license, store) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"blog\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"host\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"programmatically\", _descriptor4, this);\n\n _initializerDefineProperty(this, \"blogName\", _descriptor5, this);\n\n _initializerDefineProperty(this, \"installationType\", _descriptor6, this);\n\n _initializerDefineProperty(this, \"code\", _descriptor7, this);\n\n _initializerDefineProperty(this, \"hint\", _descriptor8, this);\n\n _initializerDefineProperty(this, \"remote\", _descriptor9, this);\n\n _initializerDefineProperty(this, \"noUsage\", _descriptor10, this);\n\n this.store = void 0;\n this.retry = flow(function* () {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestLicenseRetry,\n params: {\n slug: this.store.slug,\n blogId: this.blog\n }\n });\n set(this, result);\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.deactivate = flow(function* () {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestLicenseDelete,\n params: {\n slug: this.store.slug,\n blogId: this.blog\n }\n });\n set(this, result);\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n runInAction(() => set(this, license));\n this.store = store;\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"blog\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"host\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"programmatically\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"blogName\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"installationType\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"code\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"hint\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"remote\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, \"noUsage\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n})), _class);\nexport { License };","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19;\n\nimport { observable, set, flow, computed, action } from \"mobx\";\nimport { locationRestPluginUpdatePatch, locationRestPluginUpdateSkipPost, locationRestAnnouncementActive } from \"../wp-api\";\nimport { request } from \"../utils\";\nimport { License } from \".\";\nlet PluginUpdate = (_class = class PluginUpdate {\n get licensedEntries() {\n return this.licenses.filter(({\n code\n }) => code);\n }\n\n get unlicensedEntries() {\n return this.licenses.filter(({\n code\n }) => !code);\n }\n\n get noUsageEntries() {\n return this.unlicensedEntries.filter(({\n noUsage\n }) => noUsage);\n }\n\n get modifiableEntries() {\n return this.unlicensedEntries.filter(({\n programmatically\n }) => !programmatically);\n }\n\n get isLicensed() {\n return this.unlicensedEntries.length === 0;\n }\n\n constructor(pluginUpdate, store) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"slug\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"licenses\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"hasInteractedWithFormOnce\", _descriptor4, this);\n\n _initializerDefineProperty(this, \"name\", _descriptor5, this);\n\n _initializerDefineProperty(this, \"needsLicenseKeys\", _descriptor6, this);\n\n _initializerDefineProperty(this, \"announcementsActive\", _descriptor7, this);\n\n _initializerDefineProperty(this, \"allowsAutoUpdates\", _descriptor8, this);\n\n _initializerDefineProperty(this, \"allowsTelemetry\", _descriptor9, this);\n\n _initializerDefineProperty(this, \"allowsNewsletter\", _descriptor10, this);\n\n _initializerDefineProperty(this, \"potentialNewsletterUser\", _descriptor11, this);\n\n _initializerDefineProperty(this, \"privacyProvider\", _descriptor12, this);\n\n _initializerDefineProperty(this, \"privacyPolicy\", _descriptor13, this);\n\n _initializerDefineProperty(this, \"accountSiteUrl\", _descriptor14, this);\n\n _initializerDefineProperty(this, \"licenseKeyHelpUrl\", _descriptor15, this);\n\n _initializerDefineProperty(this, \"checkUpdateLink\", _descriptor16, this);\n\n _initializerDefineProperty(this, \"invalidKeysError\", _descriptor17, this);\n\n _initializerDefineProperty(this, \"showBlogName\", _descriptor18, this);\n\n _initializerDefineProperty(this, \"showNetworkWideUpdateIssueNotice\", _descriptor19, this);\n\n this.store = void 0;\n this.setAnnouncementActive = flow(function* (state) {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestAnnouncementActive,\n params: {\n slug: this.slug\n },\n request: {\n state\n }\n });\n\n if (result.success) {\n this.announcementsActive = state;\n }\n\n return result.success;\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.update = flow(function* (data) {\n this.busy = true;\n this.invalidKeysError = undefined;\n\n try {\n const result = yield request({\n location: locationRestPluginUpdatePatch,\n params: {\n slug: this.slug\n },\n request: data\n });\n this.fromResponse(result);\n } catch (e) {\n var _e$responseJSON, _e$responseJSON$data;\n\n console.log(e); // Parse error for invalid keys\n\n if ((_e$responseJSON = e.responseJSON) !== null && _e$responseJSON !== void 0 && (_e$responseJSON$data = _e$responseJSON.data) !== null && _e$responseJSON$data !== void 0 && _e$responseJSON$data.invalidKeys) {\n this.invalidKeysError = e.responseJSON.data.invalidKeys;\n }\n\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.skip = flow(function* () {\n this.busy = true;\n\n try {\n yield request({\n location: locationRestPluginUpdateSkipPost,\n params: {\n slug: this.slug\n }\n });\n } catch (e) {\n var _e$responseJSON2, _e$responseJSON2$data;\n\n console.log(e); // Parse error for invalid keys\n\n if ((_e$responseJSON2 = e.responseJSON) !== null && _e$responseJSON2 !== void 0 && (_e$responseJSON2$data = _e$responseJSON2.data) !== null && _e$responseJSON2$data !== void 0 && _e$responseJSON2$data.invalidKeys) {\n this.invalidKeysError = e.responseJSON.data.invalidKeysError;\n }\n\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.fromResponse(pluginUpdate);\n this.store = store;\n }\n\n fromResponse({\n licenses,\n ...pluginUpdate\n }) {\n set(this, pluginUpdate);\n this.licenses = [];\n licenses === null || licenses === void 0 ? void 0 : licenses.forEach(license => {\n this.licenses.push(new License(license, this));\n });\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"slug\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"licenses\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"hasInteractedWithFormOnce\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"name\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"needsLicenseKeys\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"announcementsActive\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"allowsAutoUpdates\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"allowsTelemetry\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, \"allowsNewsletter\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor11 = _applyDecoratedDescriptor(_class.prototype, \"potentialNewsletterUser\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor12 = _applyDecoratedDescriptor(_class.prototype, \"privacyProvider\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor13 = _applyDecoratedDescriptor(_class.prototype, \"privacyPolicy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor14 = _applyDecoratedDescriptor(_class.prototype, \"accountSiteUrl\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor15 = _applyDecoratedDescriptor(_class.prototype, \"licenseKeyHelpUrl\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor16 = _applyDecoratedDescriptor(_class.prototype, \"checkUpdateLink\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor17 = _applyDecoratedDescriptor(_class.prototype, \"invalidKeysError\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor18 = _applyDecoratedDescriptor(_class.prototype, \"showBlogName\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor19 = _applyDecoratedDescriptor(_class.prototype, \"showNetworkWideUpdateIssueNotice\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _applyDecoratedDescriptor(_class.prototype, \"licensedEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"licensedEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"unlicensedEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"unlicensedEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"noUsageEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"noUsageEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"modifiableEntries\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"modifiableEntries\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"isLicensed\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"isLicensed\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"fromResponse\", [action], Object.getOwnPropertyDescriptor(_class.prototype, \"fromResponse\"), _class.prototype)), _class);\nexport { PluginUpdate };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginUpdateGet = {\n path: \"/plugin-update/:slug\",\n method: RouteHttpVerb.GET\n};","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _descriptor4;\n\nimport { observable, flow, action } from \"mobx\";\nimport { PluginUpdate } from \"../models\";\nimport { request } from \"../utils\";\nimport { locationRestPluginUpdateGet } from \"../wp-api\";\nlet PluginUpdateStore = (_class = class PluginUpdateStore {\n constructor(rootStore) {\n _initializerDefineProperty(this, \"busy\", _descriptor, this);\n\n _initializerDefineProperty(this, \"modalPlugin\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"pluginUpdates\", _descriptor3, this);\n\n _initializerDefineProperty(this, \"pluginUpdateFetchErrors\", _descriptor4, this);\n\n this.rootStore = void 0;\n this.showInModal = flow(function* (slug) {\n this.modalPlugin = slug;\n\n try {\n yield this.fetchPluginUpdate(slug);\n } catch (e) {\n console.log(e);\n throw e;\n }\n });\n this.fetchPluginUpdate = flow(function* (slug) {\n this.busy = true;\n\n try {\n const result = yield request({\n location: locationRestPluginUpdateGet,\n params: {\n slug\n }\n });\n const pluginUpdate = new PluginUpdate(result, this);\n this.pluginUpdates.set(slug, pluginUpdate);\n this.pluginUpdateFetchErrors.delete(slug);\n return pluginUpdate;\n } catch (e) {\n console.log(e);\n this.pluginUpdateFetchErrors.set(slug, e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.rootStore = rootStore;\n }\n\n hideModal() {\n this.modalPlugin = undefined;\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n}, (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"modalPlugin\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"pluginUpdates\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return new Map();\n }\n}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"pluginUpdateFetchErrors\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return new Map();\n }\n}), _applyDecoratedDescriptor(_class.prototype, \"hideModal\", [action], Object.getOwnPropertyDescriptor(_class.prototype, \"hideModal\"), _class.prototype)), _class);\nexport { PluginUpdateStore };","import { configure } from \"mobx\";\nimport { createContextFactory } from \"@devowl-wp/utils\";\nimport { OptionStore, PluginUpdateStore } from \".\";\nconfigure({\n enforceActions: \"always\"\n});\n/**\n * A collection of all available stores which gets available\n * through the custom hook useStores in your function components.\n *\n * @see https://mobx.js.org/best/store.html#combining-multiple-stores\n */\n\nclass RootStore {\n get context() {\n return this.contextMemo ? this.contextMemo : this.contextMemo = createContextFactory(this);\n }\n\n constructor() {\n this.optionStore = void 0;\n this.pluginUpdateStore = void 0;\n this.contextMemo = void 0;\n this.optionStore = new OptionStore(this);\n this.pluginUpdateStore = new PluginUpdateStore(this);\n }\n\n static get StoreProvider() {\n return RootStore.get.context.StoreProvider;\n }\n\n static get get() {\n return RootStore.me ? RootStore.me : RootStore.me = new RootStore();\n }\n\n}\n\nRootStore.me = void 0;\n\nconst useStores = () => RootStore.get.context.useStores();\n\nexport { RootStore, useStores };","import { ConfigProvider } from \"antd\";\nimport { RootStore } from \"../store\";\n\nconst Provider = ({\n children\n}) => /*#__PURE__*/React.createElement(ConfigProvider, {\n prefixCls: process.env.ANTD_PREFIX\n}, /*#__PURE__*/React.createElement(RootStore.StoreProvider, null, children));\n\nexport { Provider };","/* istanbul ignore file: this file does not contain any logic, only factory calls */\nimport { createLocalizationFactory } from \"@devowl-wp/utils\"; // Only needed once per `window`\n\nlet FACTORY_MEMO;\n\nfunction get() {\n return FACTORY_MEMO ? FACTORY_MEMO : FACTORY_MEMO = createLocalizationFactory(\"\".concat(process.env.rootSlug, \"-\").concat(process.env.slug));\n}\n\nconst _n = (...args) => get()._n(...args);\n\nconst _nx = (...args) => get()._nx(...args);\n\nconst _x = (...args) => get()._x(...args);\n\nconst __ = (...args) => get().__(...args);\n\nconst _i = (...args) => get()._i(...args);\n\nexport { _n, _nx, _x, __, _i };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport const locationRestPluginFeedbackPost = {\n path: \"/feedback/:slug\",\n method: RouteHttpVerb.POST\n};","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useCallback, useState, useMemo } from \"react\";\nimport { Button, Modal, Form, Spin, Input, Checkbox, Radio, message } from \"antd\";\nimport { request, _i, __ } from \"../../utils\";\nimport { HeartTwoTone } from \"@ant-design/icons\";\nimport { locationRestPluginFeedbackPost } from \"../../wp-api\";\nconst FEEDBACK_FORM_LAYOUT = {\n labelCol: {\n span: 24\n },\n wrapperCol: {\n span: 24\n }\n};\nconst FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM = {\n marginBottom: 8\n};\n\nconst FeedbackModal = ({\n initialValues = {},\n plugin,\n name,\n privacyPolicy,\n privacyProvider,\n onClose,\n onDeactivate\n}) => {\n const reasons = useMemo(() => ({\n \"upgrade-to-pro\": __(\"Upgrade to PRO Version\"),\n \"not-working\": __(\"Plugin does not work\"),\n \"missing-features\": __(\"Not the features I want\"),\n incompatible: __(\"Incompatible with themes/plugins\"),\n \"missing-doc\": __(\"Lack of documentation\"),\n \"found-better-plugin\": __(\"Found a better plugin\"),\n temp: __(\"Temporary deactivation\"),\n other: __(\"Other\")\n }), []);\n const [form] = Form.useForm();\n const formName = \"license-form-\".concat(plugin);\n const [visible, setVisible] = useState(true);\n const [busy, setBusy] = useState(false);\n const handleClose = useCallback(() => {\n if (window.confirm(__(\"Are you sure you want to leave the feedback form?\"))) {\n setVisible(false);\n }\n }, []);\n const handleFinish = useCallback(async store => {\n const {\n reason = \"other\",\n note = \"\",\n email = \"\",\n name = \"\"\n } = store;\n\n try {\n setBusy(true);\n await request({\n location: locationRestPluginFeedbackPost,\n params: {\n slug: plugin\n },\n request: {\n reason,\n note,\n email,\n name: email ? name : \"\" // Only send the name when an email got entered, too\n\n }\n });\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();\n } catch (e) {\n var _responseJSON$data, _responseJSON$data$bo, _responseJSON$data$bo2;\n\n const {\n responseJSON\n } = e;\n const code = responseJSON === null || responseJSON === void 0 ? void 0 : (_responseJSON$data = responseJSON.data) === null || _responseJSON$data === void 0 ? void 0 : (_responseJSON$data$bo = _responseJSON$data.body) === null || _responseJSON$data$bo === void 0 ? void 0 : (_responseJSON$data$bo2 = _responseJSON$data$bo[0]) === null || _responseJSON$data$bo2 === void 0 ? void 0 : _responseJSON$data$bo2.code;\n\n if ([\"DeactivationFeedbackAlreadyGiven\", \"DeactivationFeedbackMightBeSpam\"].indexOf(code) > -1 || !code) {\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();\n return;\n } else {\n var _responseJSON$data2, _responseJSON$data2$b, _responseJSON$data2$b2;\n\n message.error(responseJSON === null || responseJSON === void 0 ? void 0 : (_responseJSON$data2 = responseJSON.data) === null || _responseJSON$data2 === void 0 ? void 0 : (_responseJSON$data2$b = _responseJSON$data2.body) === null || _responseJSON$data2$b === void 0 ? void 0 : (_responseJSON$data2$b2 = _responseJSON$data2$b[0]) === null || _responseJSON$data2$b2 === void 0 ? void 0 : _responseJSON$data2$b2.message);\n }\n } finally {\n setBusy(false);\n }\n }, [form, plugin]);\n return /*#__PURE__*/React.createElement(Modal, {\n afterClose: onClose,\n onCancel: handleClose,\n visible: visible,\n footer: [/*#__PURE__*/React.createElement(Button, {\n key: \"skip\",\n type: \"default\",\n onClick: onDeactivate,\n className: \"alignleft\",\n disabled: busy\n }, /*#__PURE__*/React.createElement(\"b\", null, __(\"Skip & Deactivate\"))), /*#__PURE__*/React.createElement(Button, {\n key: \"submit\",\n type: \"primary\",\n htmlType: \"submit\",\n form: formName,\n disabled: busy\n }, __(\"Deactivate\"))],\n title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(HeartTwoTone, {\n twoToneColor: \"#eb2f96\"\n }), \" \", __(\"Too bad you are leaving\"))\n }, /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, /*#__PURE__*/React.createElement(Form, _extends({\n name: formName,\n id: formName,\n form: form\n }, FEEDBACK_FORM_LAYOUT, {\n onFinish: handleFinish,\n initialValues: initialValues\n }), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"reason\",\n label: /*#__PURE__*/React.createElement(React.Fragment, null, __(\"Please give us feedback why you deactivate %s.\", name)),\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n required: true,\n message: __(\"Please provide a reason!\")\n }]\n }, /*#__PURE__*/React.createElement(Radio.Group, null, Object.keys(reasons).map(choice => /*#__PURE__*/React.createElement(Radio, {\n key: choice,\n value: choice,\n style: {\n width: \"calc(50% - 8px)\",\n float: \"left\"\n }\n }, reasons[choice])))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.reason !== nextValues.reason\n }, ({\n getFieldValue\n }) => !!getFieldValue(\"reason\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"What could we do better?\"),\n name: \"note\",\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Input.TextArea, {\n autoSize: {\n minRows: 3\n }\n })), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.answerTerms !== nextValues.answerTerms\n }, ({\n getFieldValue\n }) => !!getFieldValue(\"reason\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n name: \"email\",\n label: __(\"Email for answer/solution\"),\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n rules: [{\n type: \"email\",\n required: getFieldValue(\"answerTerms\"),\n message: __(\"Please provide a valid e-mail address!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.email !== nextValues.email\n }, ({\n getFieldValue\n }) => /*#__PURE__*/React.createElement(React.Fragment, null, !!getFieldValue(\"email\") && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"name\",\n label: __(\"Name\"),\n required: true,\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM,\n rules: [{\n required: true,\n message: __(\"Please provide a name!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"answerTerms\",\n valuePropName: \"checked\",\n required: true,\n rules: [{\n type: \"boolean\",\n required: !!getFieldValue(\"email\"),\n transform: value => value || undefined,\n message: __(\"Please confirm that you have checked the privacy policy.\")\n }],\n style: FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{/a}}.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))))))))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.note !== nextValues.note || prevValues.answerTerms !== nextValues.answerTerms\n }, ({\n getFieldValue\n }) => {\n const answerTerms = getFieldValue(\"answerTerms\") || false;\n const note = getFieldValue(\"note\") || \"\";\n\n if (answerTerms) {\n return null;\n }\n\n return note.split(\" \").length >= 5 ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: 0\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"Allow us to reply to you by email and we will get back to you as soon as possible!\"))) : /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginTop: 5\n }\n }, _i(__(\"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{/a}}.\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: __(\"https://devowl.io/support/\"),\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }));\n }))));\n};\n\nexport { FeedbackModal };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { render, unmountComponentAtNode } from \"react-dom\";\nimport { FeedbackModal, Provider } from \"../components\";\nimport { RootStore } from \"../store\";\n\nfunction listenPluginDeactivation() {\n document.addEventListener(\"click\", e => {\n const {\n names,\n currentUserFullName\n } = RootStore.get.optionStore.others;\n const link = e === null || e === void 0 ? void 0 : e.target;\n\n for (const slug in names) {\n const {\n plugin\n } = names[slug];\n\n if (link.matches(\"tr[data-plugin=\\\"\".concat(plugin, \"\\\"] a[href*=\\\"action=deactivate\\\"]\"))) {\n const node = document.createElement(\"div\");\n document.body.appendChild(node);\n render( /*#__PURE__*/React.createElement(Provider, null, /*#__PURE__*/React.createElement(FeedbackModal, _extends({}, names[slug], {\n initialValues: {\n name: currentUserFullName\n },\n plugin: slug,\n onClose: () => {\n unmountComponentAtNode(node);\n },\n onDeactivate: () => {\n window.location.href = link.href;\n }\n }))), node);\n e.preventDefault(); // Stop `real-utils` functionality\n\n e.stopImmediatePropagation();\n break;\n }\n }\n }, true);\n}\n\nexport { listenPluginDeactivation };","import { RootStore } from \"../store\";\nconst CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE = \"data-rpm-wp-client-plugin-update\";\n/**\n * Listen to clicks on `<a data-rpm-wp-client-license=\"\"` links and open the license modal.\n */\n\nfunction listenPluginUpdateLinkClick() {\n document.addEventListener(\"click\", e => {\n var _e$target;\n\n const plugin = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.getAttribute(CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE);\n\n if (plugin) {\n RootStore.get.pluginUpdateStore.showInModal(plugin);\n e.preventDefault();\n }\n });\n}\n\nexport { listenPluginUpdateLinkClick, CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE };","import { RootStore } from \"../store\";\nconst HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX = \"rpm-wp-client-plugin-update-\";\n/**\n * Listen to window hash links and open the license modal.\n */\n\nfunction listenHashPluginUpdate() {\n const {\n hash\n } = window.location;\n\n if (hash.startsWith(\"#\".concat(HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX))) {\n const slug = hash.substr(HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX.length + 1);\n RootStore.get.pluginUpdateStore.showInModal(slug); // Reset, should not be visible in URL\n\n window.location.hash = \"\";\n }\n}\n\nexport { listenHashPluginUpdate, HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX };","import { Form, Input, Checkbox } from \"antd\";\nimport { observer } from \"mobx-react\";\nimport { __, _i } from \"../../../utils\";\nimport { PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM } from \".\";\nconst PluginUpdateTermFields = observer(({\n pluginUpdate\n}) => {\n const {\n privacyProvider,\n privacyPolicy,\n allowsTelemetry,\n allowsAutoUpdates,\n allowsNewsletter\n } = pluginUpdate;\n return /*#__PURE__*/React.createElement(React.Fragment, null, allowsAutoUpdates && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"autoUpdates\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"Updates containing bug fixes and new features will be downloaded and installed automatically.\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), /*#__PURE__*/React.createElement(Form.Item, {\n name: \"terms\",\n valuePropName: \"checked\",\n required: true,\n rules: [{\n type: \"boolean\",\n required: true,\n transform: value => value || undefined,\n message: __(\"Please confirm that you have read the privacy policy!\")\n }],\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{/a}} of %1$s.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), allowsTelemetry && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"telemetry\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), allowsNewsletter && /*#__PURE__*/React.createElement(Form.Item, {\n name: \"newsletter\",\n valuePropName: \"checked\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }, /*#__PURE__*/React.createElement(Checkbox, {\n style: {\n zoom: 0.8\n }\n }, _i(__(\"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{/a}}. I know that I can unsubscribe from the newsletter at any time.\", privacyProvider), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: privacyPolicy,\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }))), /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.newsletter !== nextValues.newsletter\n }, ({\n getFieldValue\n }) => getFieldValue(\"newsletter\") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"First name\"),\n name: \"firstName\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n required: true,\n message: __(\"Please enter your first name!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {\n label: __(\"Email\"),\n name: \"email\",\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM,\n required: true,\n rules: [{\n type: \"email\",\n required: true,\n message: __(\"Please enter your email address!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: 0\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.\"))))));\n});\nexport { PluginUpdateTermFields };","import { Tag } from \"antd\";\nimport { QuestionCircleFilled } from \"@ant-design/icons\";\nimport { __ } from \"../utils\";\n\nconst LearnMoreTag = ({\n url,\n style = undefined,\n label = __(\"Learn more\")\n}) => {\n const useStyle = {\n cursor: \"pointer\",\n ...style\n };\n return /*#__PURE__*/React.createElement(Tag, {\n style: useStyle,\n onClick: () => window.open(url, \"_blank\")\n }, /*#__PURE__*/React.createElement(QuestionCircleFilled, null), \" \", label);\n};\n\nexport { LearnMoreTag };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useCallback, useState } from \"react\";\nimport { Form, Input, Select, Divider, Spin, message, Checkbox } from \"antd\";\nimport { observer } from \"mobx-react\";\nimport { __, _i } from \"../../../utils\";\nimport { PluginUpdateTermFields } from \".\";\nimport { LearnMoreTag } from \"../..\";\nconst PLUGIN_UPDATE_FORM_LAYOUT = {\n labelCol: {\n span: 24\n },\n wrapperCol: {\n span: 24\n }\n};\nconst PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM = {\n marginBottom: 8\n};\nconst PluginUpdateForm = observer(({\n onSave,\n onFailure,\n footer,\n pluginUpdate\n}) => {\n const [forceFormValidateStatus, setForceFormValidateStatus] = useState(false);\n const {\n busy,\n slug,\n allowsAutoUpdates,\n needsLicenseKeys,\n licenses,\n unlicensedEntries,\n noUsageEntries,\n modifiableEntries,\n invalidKeysError,\n accountSiteUrl,\n licenseKeyHelpUrl,\n name,\n potentialNewsletterUser: {\n firstName,\n email\n },\n showBlogName,\n showNetworkWideUpdateIssueNotice\n } = pluginUpdate;\n const allowNoUsage = licenses.length > 1; // only allow \"No usage\" within multisite\n\n const initialValues = {\n licenses: licenses.map(({\n blog,\n code,\n installationType,\n hint,\n noUsage\n }) => {\n var _hint$help$match;\n\n return {\n blog,\n code: code || ( // Read a code from the hint\n hint ? (_hint$help$match = hint.help.match(/(\\w{8}-\\w{4}-\\w{4}-\\w{4}-\\w{12})|(\\w{32})/)) === null || _hint$help$match === void 0 ? void 0 : _hint$help$match[0] : \"\") || \"\",\n installationType: installationType || \"\",\n noUsage\n };\n }),\n autoUpdates: allowsAutoUpdates,\n terms: false,\n telemetry: false,\n newsletter: false,\n firstName,\n email\n };\n const [form] = Form.useForm();\n const [showTermFields, setShowTermFields] = useState(noUsageEntries.length !== unlicensedEntries.length);\n const handleSave = useCallback(async values => {\n const {\n licenses: formLicenses,\n ...meta\n } = values;\n const newMeta = { ...meta,\n licenses: JSON.stringify(needsLicenseKeys ? // Remove all entries which are already licensed\n formLicenses.filter(({\n blog\n }) => {\n const [foundLicense] = licenses.filter(k => k.blog === blog);\n return unlicensedEntries.indexOf(foundLicense) > -1;\n }) : // The free version does not show any inputs for license keys and license activation is done by backend\n undefined)\n };\n\n try {\n await pluginUpdate.update(newMeta);\n form.setFieldsValue({\n terms: false,\n telemetry: false,\n newsletter: false\n });\n message.success(__(\"Your license has been activated!\"));\n onSave === null || onSave === void 0 ? void 0 : onSave();\n } catch (e) {\n if (!pluginUpdate.invalidKeysError) {\n message.error(e.responseJSON.message);\n } // No error needed cause it is catch trough `invalidKeysError`\n\n\n onFailure === null || onFailure === void 0 ? void 0 : onFailure();\n throw e;\n }\n }, [pluginUpdate, onSave, licenses, unlicensedEntries, needsLicenseKeys]);\n const onFinish = useCallback(async values => {\n try {\n await handleSave(values);\n } catch (e) {// Silence is golden.\n } finally {\n setForceFormValidateStatus(false);\n }\n }, [form, handleSave, setForceFormValidateStatus]);\n const onFinishFailed = useCallback(() => {\n setForceFormValidateStatus(true);\n setShowTermFields(true);\n }, []);\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, unlicensedEntries.length > 0 && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginBottom: 15\n }\n }, needsLicenseKeys ? __(\"Activate your %s PRO license to receive regular updates and support.\", name) : _i(__(\"To use all advantages of %s {{strong}}you need a free license{{/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).\", name), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n })), showNetworkWideUpdateIssueNotice && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-error inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, __(\"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.\", name)), /*#__PURE__*/React.createElement(\"p\", null, __(\"Please enable %s network-wide or take care of regular updates manually! \", name))), /*#__PURE__*/React.createElement(Form, _extends({\n name: \"license-form-\".concat(slug),\n id: \"license-form-\".concat(slug),\n form: form\n }, PLUGIN_UPDATE_FORM_LAYOUT, {\n initialValues: initialValues,\n onFinish: onFinish,\n onFinishFailed: onFinishFailed,\n onChange: () => {\n setShowTermFields(true);\n }\n }), needsLicenseKeys && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.List, {\n name: \"licenses\"\n }, fields => fields.map((field, index) => {\n const {\n blog\n } = form.getFieldValue([\"licenses\", field.name]);\n const [foundLicense] = licenses.filter(k => k.blog === blog); // Already licensed, do not show in form again\n\n if (unlicensedEntries.indexOf(foundLicense) === -1) {\n return null;\n }\n\n const {\n busy: licenseBusy,\n blogName,\n programmatically,\n host\n } = foundLicense;\n const lastBlogPutError = invalidKeysError === null || invalidKeysError === void 0 ? void 0 : invalidKeysError[blog]; // Hints priority: Form handling, POST-Request, Hint coming from license deactivation\n\n const useHint = forceFormValidateStatus ? {} : lastBlogPutError || foundLicense.hint;\n const isLicenseMaxUsagesReached = !!(lastBlogPutError !== null && lastBlogPutError !== void 0 && lastBlogPutError.debug.errors[\"LicenseMaxUsagesReached\"]); // Modify hint for LicenseMaxUsagesReached error and show a \"Learn more tag\"\n\n let customHelp;\n\n if (typeof useHint !== \"boolean\" && isLicenseMaxUsagesReached) {\n customHelp = /*#__PURE__*/React.createElement(\"span\", null, useHint.help, \" \", /*#__PURE__*/React.createElement(LearnMoreTag, {\n url: __(\"https://devowl.io/knowledge-base/the-limit-of-activated-clients-for-this-license-has-already-been-reached/\")\n }));\n }\n\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: licenseBusy,\n key: field.key\n }, /*#__PURE__*/React.createElement(Form.Item, {\n noStyle: true,\n shouldUpdate: (prevValues, nextValues) => prevValues.licenses[field.key].noUsage !== nextValues.licenses[field.key].noUsage\n }, ({\n getFieldValue\n }) => {\n const noUsage = getFieldValue([\"licenses\", field.key, \"noUsage\"]);\n return /*#__PURE__*/React.createElement(Form.Item, _extends({\n label: /*#__PURE__*/React.createElement(\"span\", null, unlicensedEntries.length > 1 || showBlogName ? _i(__(\"Installation type and license key for {{strong}}%s{{/strong}}\", blogName), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n }) : __(\"Installation type and license key\"), \" \", /*#__PURE__*/React.createElement(LearnMoreTag, {\n url: licenseKeyHelpUrl\n })),\n help: customHelp\n }, useHint, {\n required: true,\n style: PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM\n }), !noUsage && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"code\"],\n name: [field.name, \"code\"],\n noStyle: true,\n rules: [{\n // Allow UUID format and additionally a custom 32-length string\n pattern: /(^\\w{8}-\\w{4}-\\w{4}-\\w{4}-\\w{12}$)|(^\\w{32}$)/,\n required: true,\n message: __(\"Please enter a valid license key!\")\n }]\n }, /*#__PURE__*/React.createElement(Input, {\n placeholder: programmatically ? programmatically.code : \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n disabled: !!programmatically,\n addonBefore: /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"installationType\"],\n name: [field.name, \"installationType\"],\n noStyle: true,\n rules: [{\n required: true,\n message: __(\"Please choose an installation type!\")\n }]\n }, /*#__PURE__*/React.createElement(Select, {\n placeholder: __(\"Installation type\"),\n disabled: !!programmatically\n }, /*#__PURE__*/React.createElement(Select.Option, {\n value: \"\",\n disabled: true\n }, programmatically ? programmatically.type === \"development\" ? __(\"Development\") : __(\"Production\") : __(\"Select installation type…\")), /*#__PURE__*/React.createElement(Select.Option, {\n value: \"production\"\n }, __(\"Production\")), /*#__PURE__*/React.createElement(Select.Option, {\n value: \"development\"\n }, __(\"Development\"))))\n })), index === 0 && /*#__PURE__*/React.createElement(\"p\", {\n className: \"description\",\n style: {\n marginTop: 5\n }\n }, /*#__PURE__*/React.createElement(\"strong\", null, __(\"What is an installation type?\")), \" \", __(\"You can use each license in both production and development environments.\"), \" \", _i(__('Generally speaking, you use \"{{strong}}Development{{/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.'), {\n strong: /*#__PURE__*/React.createElement(\"strong\", null)\n }))), allowNoUsage && /*#__PURE__*/React.createElement(Form.Item, {\n fieldKey: [field.fieldKey, \"noUsage\"],\n name: [field.name, \"noUsage\"],\n valuePropName: \"checked\",\n style: {\n marginTop: noUsage ? -25 : index === 0 ? -8 : 0,\n marginBottom: 0\n }\n }, /*#__PURE__*/React.createElement(Checkbox, null, __(\"I do not want to license and use the plugin for this site within my multisite.\"))));\n }), programmatically && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-warning inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.\", host, blog), {\n code: /*#__PURE__*/React.createElement(\"code\", null),\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: \"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html\",\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n }), \" \", \"\\u2022\", \" \", /*#__PURE__*/React.createElement(\"a\", {\n className: \"button-link\",\n onClick: async () => {\n try {\n await foundLicense.retry();\n\n if (foundLicense.hint) {\n message.error(foundLicense.hint.help);\n }\n } catch (e) {\n message.error(e.responseJSON.message);\n }\n }\n }, __(\"Retry activation\")))), isLicenseMaxUsagesReached && /*#__PURE__*/React.createElement(\"a\", {\n href: accountSiteUrl,\n target: \"_blank\",\n rel: \"noreferrer\",\n className: \"button button-primary\"\n }, __(\"Manage licenses in the customer center\")));\n })), /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n style: {\n margin: \"10px 0\"\n }\n })), modifiableEntries.length > 0 && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n style: {\n display: showTermFields ? \"block\" : \"none\"\n }\n }, /*#__PURE__*/React.createElement(PluginUpdateTermFields, {\n pluginUpdate: pluginUpdate\n })), footer))));\n});\nexport { PluginUpdateForm, PLUGIN_UPDATE_FORM_LAYOUT, PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM };","import { observer } from \"mobx-react\";\nimport { __, _i } from \"../../utils\";\nimport { List, Space, Spin, message, Checkbox } from \"antd\";\nimport { ClockCircleOutlined, CloudServerOutlined, CloudUploadOutlined } from \"@ant-design/icons\";\nconst PluginUpdateLicenseList = observer(({\n onDeactivate,\n pluginUpdate\n}) => {\n const {\n licensedEntries,\n needsLicenseKeys\n } = pluginUpdate;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(List, {\n itemLayout: \"vertical\",\n size: \"small\",\n dataSource: licensedEntries,\n renderItem: item => {\n const {\n busy,\n installationType,\n blogName,\n code,\n remote,\n programmatically,\n host,\n blog\n } = item;\n return /*#__PURE__*/React.createElement(Spin, {\n spinning: busy\n }, /*#__PURE__*/React.createElement(List.Item, {\n style: {\n paddingLeft: 0,\n paddingRight: 0\n },\n actions: [needsLicenseKeys && /*#__PURE__*/React.createElement(Space, {\n key: \"installationType\"\n }, /*#__PURE__*/React.createElement(CloudServerOutlined, null), installationType === \"production\" ? __(\"Production\") : installationType === \"development\" ? __(\"Development\") : \"n/a\"), remote && /*#__PURE__*/React.createElement(Space, {\n key: \"activatedAt\"\n }, /*#__PURE__*/React.createElement(ClockCircleOutlined, null), __(\"Activated %s\", new Date(remote.licenseActivation.activatedAt).toLocaleString(document.documentElement.lang))), remote && /*#__PURE__*/React.createElement(Space, {\n key: \"telemetryDataSharingOptIn\"\n }, /*#__PURE__*/React.createElement(CloudUploadOutlined, null), remote.licenseActivation.telemetryDataSharingOptIn ? __(\"Telemetry data sharing enabled\") : __(\"Telemetry data sharing disabled\")), !programmatically && /*#__PURE__*/React.createElement(\"a\", {\n key: \"deactivate\",\n className: \"button-link\",\n onClick: async () => {\n try {\n await item.deactivate();\n } catch (e) {\n message.error(e.responseJSON.message);\n }\n\n onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate(item);\n }\n }, __(\"Deactivate\"))].filter(Boolean)\n }, /*#__PURE__*/React.createElement(List.Item.Meta, {\n title: blogName,\n description: needsLicenseKeys ? /*#__PURE__*/React.createElement(React.Fragment, null, __(\"Your license key\"), \": \", /*#__PURE__*/React.createElement(\"code\", null, code)) : /*#__PURE__*/React.createElement(React.Fragment, null, __(\"Your installation is fully activated.\"), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n marginTop: 15\n }\n }, /*#__PURE__*/React.createElement(\"a\", {\n rel: \"noreferrer\",\n href: __(\"https://devowl.io/knowledge-base/real-cookie-banner-upgrade-free-to-pro-version/\"),\n className: \"button\",\n target: \"_blank\"\n }, __(\"Enter license key to unlock PRO features\"))))\n }), programmatically && /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-info inline below-h2 notice-alt\",\n style: {\n margin: \"0 0 10px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{/a}} for host {{code}}%s{{/code}} (Blog ID: %d). Please remove the filter to deactivate the license!\", host, blog), {\n code: /*#__PURE__*/React.createElement(\"code\", null),\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: \"https://docs.devowl.io/real-cookie-banner/hooks/DevOwl_RealProductManager_License_Programmatic_$slug.html\",\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n })))));\n }\n }), /*#__PURE__*/React.createElement(\"p\", {\n style: {\n textAlign: \"right\"\n }\n }, /*#__PURE__*/React.createElement(Checkbox, {\n disabled: pluginUpdate.busy,\n checked: pluginUpdate.announcementsActive,\n onChange: e => pluginUpdate.setAnnouncementActive(e.target.checked)\n }, __(\"Show announcements for this plugin\"))));\n});\nexport { PluginUpdateLicenseList };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useEffect } from \"react\";\nimport { observer } from \"mobx-react\";\nimport { useStores } from \"../../store\";\nimport { Divider, Spin } from \"antd\";\nimport { PluginUpdateForm, PluginUpdateLicenseList } from \".\";\nimport { _i, __ } from \"../../utils\";\nconst PluginUpdateErrorNotice = observer(({\n slug\n}) => {\n var _error$responseJSON;\n\n const error = useStores().pluginUpdateStore.pluginUpdateFetchErrors.get(slug);\n const errorMessage = error === null || error === void 0 ? void 0 : (_error$responseJSON = error.responseJSON) === null || _error$responseJSON === void 0 ? void 0 : _error$responseJSON.message;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"notice notice-error inline below-h2 notice-alt\",\n style: {\n margin: \"20px 0\"\n }\n }, /*#__PURE__*/React.createElement(\"p\", null, _i(__(\"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{/a}}.\", errorMessage ? \" (\".concat(errorMessage, \")\") : \"\"), {\n a: /*#__PURE__*/React.createElement(\"a\", {\n href: __(\"https://devowl.io/knowledge-base/wordpress-rest-api-does-not-respond/\"),\n target: \"_blank\",\n rel: \"noreferrer\"\n })\n })));\n});\n/**\n * Embed the license form and list of activated licenses into your app.\n * Please consider, that this embed does not provide any buttons, please provide\n * them yourself with `<button form=\"license-form-$slug\"`>\n */\n\nconst PluginUpdateEmbed = observer(({\n formProps = {},\n listProps = {},\n slug\n}) => {\n const {\n pluginUpdateStore\n } = useStores();\n const {\n busy,\n pluginUpdates,\n pluginUpdateFetchErrors\n } = pluginUpdateStore;\n const pluginUpdate = pluginUpdates.get(slug);\n const showHeadline = (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) > 0 && (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.licensedEntries.length) > 0;\n useEffect(() => {\n try {\n pluginUpdateStore.fetchPluginUpdate(slug);\n } catch (e) {// Silence is golden.\n }\n }, [slug]);\n return pluginUpdateFetchErrors.get(slug) ? /*#__PURE__*/React.createElement(PluginUpdateErrorNotice, {\n slug: slug\n }) : busy || !pluginUpdate ? /*#__PURE__*/React.createElement(Spin, {\n spinning: true\n }) : /*#__PURE__*/React.createElement(\"div\", null, showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\",\n style: {\n marginTop: 0\n }\n }, __(\"Not yet licensed\")), /*#__PURE__*/React.createElement(PluginUpdateForm, _extends({}, formProps, {\n pluginUpdate: pluginUpdate\n })), showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\"\n }, __(\"Already licensed\")), pluginUpdate.licensedEntries.length > 0 && /*#__PURE__*/React.createElement(PluginUpdateLicenseList, _extends({}, listProps, {\n pluginUpdate: pluginUpdate\n })));\n});\nexport { PluginUpdateErrorNotice, PluginUpdateEmbed };","import { useCallback, useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react\";\nimport { useStores } from \"../../store\";\nimport { Divider, Modal, Spin } from \"antd\";\nimport { __ } from \"../../utils\";\nimport { PluginUpdateForm, PluginUpdateLicenseList, PluginUpdateErrorNotice } from \".\";\nconst PluginUpdateModal = observer(() => {\n const [doReloadAfterClose, setDoReloadAfterClose] = useState(false);\n const {\n pluginUpdateStore\n } = useStores();\n const {\n busy,\n modalPlugin,\n pluginUpdates,\n pluginUpdateFetchErrors\n } = pluginUpdateStore;\n const pluginUpdate = modalPlugin ? pluginUpdates.get(modalPlugin) : undefined;\n const showHeadline = (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) > 0 && (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.licensedEntries.length) > 0;\n const handleCancel = useCallback(() => {\n if (doReloadAfterClose) {\n const {\n checkUpdateLink\n } = pluginUpdate;\n\n if (checkUpdateLink) {\n window.location.href = checkUpdateLink;\n } else {\n window.location.reload();\n }\n } else {\n pluginUpdateStore.hideModal();\n }\n }, [doReloadAfterClose, pluginUpdateStore, pluginUpdate]);\n const handleChange = useCallback(() => setDoReloadAfterClose(true), [setDoReloadAfterClose]);\n const error = pluginUpdateFetchErrors.get(modalPlugin);\n useEffect(() => {\n document.body.classList[modalPlugin ? \"add\" : \"remove\"](\"rpm-wpc-antd-modal-open\");\n }, [modalPlugin]);\n return modalPlugin ? /*#__PURE__*/React.createElement(Modal, {\n visible: true,\n okButtonProps: {\n form: \"license-form-\".concat(pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.slug),\n htmlType: \"submit\",\n style: {\n display: (pluginUpdate === null || pluginUpdate === void 0 ? void 0 : pluginUpdate.unlicensedEntries.length) === 0 || error ? \"none\" : undefined\n }\n },\n cancelButtonProps: {\n style: {\n display: \"none\"\n }\n },\n onCancel: handleCancel,\n okText: __(\"Save\"),\n title: pluginUpdate ? /*#__PURE__*/React.createElement(\"span\", {\n style: {\n fontWeight: \"normal\"\n }\n }, /*#__PURE__*/React.createElement(\"strong\", null, pluginUpdate.name, \":\"), \" \", __(\"License settings\")) : \"\",\n width: 800\n }, error ? /*#__PURE__*/React.createElement(PluginUpdateErrorNotice, {\n slug: modalPlugin\n }) : busy || !pluginUpdate ? /*#__PURE__*/React.createElement(Spin, {\n spinning: true\n }) : /*#__PURE__*/React.createElement(\"div\", null, showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\",\n style: {\n marginTop: 0\n }\n }, __(\"Not yet licensed\")), /*#__PURE__*/React.createElement(PluginUpdateForm, {\n onSave: handleChange,\n pluginUpdate: pluginUpdate\n }), showHeadline && /*#__PURE__*/React.createElement(Divider, {\n type: \"horizontal\",\n orientation: \"left\"\n }, __(\"Already licensed\")), pluginUpdate.licensedEntries.length > 0 && /*#__PURE__*/React.createElement(PluginUpdateLicenseList, {\n onDeactivate: handleChange,\n pluginUpdate: pluginUpdate\n }))) : null;\n});\nexport { PluginUpdateModal };","/* istanbul ignore file: we do not need to care about the entry point file as errors are detected through integration tests (E2E) */\n\n/**\n * The entry point for the admin side wp-admin resource.\n */\nimport { render } from \"react-dom\";\nimport { message, ConfigProvider, Avatar, Card, Form, Space } from \"antd\";\nimport \"./style/antd.less\";\nimport { listenHashPluginUpdate, listenPluginDeactivation, listenPluginUpdateLinkClick } from \"./others\";\nimport { PluginUpdateModal, Provider } from \"./components\";\nimport { ready } from \"./utils\"; // Configure prefix for root (https://bit.ly/3wb2pv9)\n\nConfigProvider.config({\n prefixCls: process.env.ANTD_PREFIX\n});\nmessage.config({\n top: 50\n});\nlistenPluginDeactivation();\nready(() => {\n // Create main component for all available features (e.g. license modal)\n const node = document.createElement(\"div\");\n document.body.appendChild(node);\n render( /*#__PURE__*/React.createElement(Provider, null, /*#__PURE__*/React.createElement(PluginUpdateModal, null)), node);\n listenPluginUpdateLinkClick();\n listenHashPluginUpdate();\n});\nexport * from \"./others\";\nexport * from \"./components\";\nexport * from \"./wp-api\";\nexport * from \"./store\"; // Provide some UI elements so other plugins can use the same antd class prefix e.g. extending the update modal form\n// Currently only used for Real Media Library as it does not yet use an own class prefix\n\nexport { Avatar, Card, Form, Space };","/**\n * Wait DOM is ready depending on a state.\n *\n * - `interactive`: Defer scripts are executing, but DOM is ready\n * - `complete`: All scripts including deferred ones are executed and DOM is ready\n *\n * @see https://stackoverflow.com/a/65430734/5506547\n * @see https://stackoverflow.com/a/51980980/5506547\n */\nconst ready = (fn, state = \"complete\") => {\n return new Promise(resolve => {\n if (document.readyState === state) {\n fn === null || fn === void 0 ? void 0 : fn();\n resolve();\n } else {\n document.addEventListener(\"readystatechange\", () => {\n if (document.readyState === state) {\n fn === null || fn === void 0 ? void 0 : fn();\n resolve();\n }\n });\n }\n });\n};\n\nexport { ready };","module.exports = React;","module.exports = ReactDOM;","module.exports = mobx;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t826: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkdevowlWp_realProductManagerWpClient\"] = self[\"webpackChunkdevowlWp_realProductManagerWpClient\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [764], () => (__webpack_require__(8428)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","devowlWp_utils","_class","_descriptor","OptionStore","BaseOptions","constructor","rootStore","super","this","pureSlug","pureSlugCamelCased","runInAction","Object","assign","window","prototype","observable","configurable","enumerable","writable","initializer","locationRestAnnouncementActive","path","method","RouteHttpVerb","locationRestPluginUpdatePatch","locationRestPluginUpdateSkipPost","FACTORY_MEMO","request","args","createRequestFactory","locationRestLicenseRetry","locationRestLicenseDelete","_descriptor2","_descriptor3","_descriptor4","_descriptor5","_descriptor6","_descriptor7","_descriptor8","_descriptor9","_descriptor10","License","license","store","retry","flow","busy","result","location","params","slug","blogId","blog","set","e","console","log","deactivate","_descriptor11","_descriptor12","_descriptor13","_descriptor14","_descriptor15","_descriptor16","_descriptor17","_descriptor18","_descriptor19","PluginUpdate","licensedEntries","licenses","filter","code","unlicensedEntries","noUsageEntries","noUsage","modifiableEntries","programmatically","isLicensed","length","pluginUpdate","setAnnouncementActive","state","success","announcementsActive","update","data","invalidKeysError","undefined","fromResponse","_e$responseJSON","_e$responseJSON$data","responseJSON","invalidKeys","skip","_e$responseJSON2","_e$responseJSON2$data","forEach","push","computed","getOwnPropertyDescriptor","action","locationRestPluginUpdateGet","PluginUpdateStore","showInModal","modalPlugin","fetchPluginUpdate","pluginUpdates","pluginUpdateFetchErrors","delete","hideModal","Map","configure","enforceActions","RootStore","context","contextMemo","createContextFactory","optionStore","pluginUpdateStore","StoreProvider","get","me","useStores","Provider","children","React","createElement","prefixCls","createLocalizationFactory","concat","__","_i","locationRestPluginFeedbackPost","FEEDBACK_FORM_LAYOUT","labelCol","span","wrapperCol","FEEDBACK_FORM_LAYOUT_MARGIN_BOTTOM","marginBottom","FeedbackModal","initialValues","plugin","name","privacyPolicy","privacyProvider","onClose","onDeactivate","reasons","useMemo","incompatible","temp","other","form","formName","visible","setVisible","useState","setBusy","handleClose","useCallback","confirm","handleFinish","async","reason","note","email","_responseJSON$data","_responseJSON$data$bo","_responseJSON$data$bo2","body","indexOf","_responseJSON$data2","_responseJSON$data2$b","_responseJSON$data2$b2","message","afterClose","onCancel","footer","key","type","onClick","className","disabled","htmlType","title","Fragment","HeartTwoTone","twoToneColor","spinning","id","onFinish","label","style","required","rules","keys","map","choice","value","width","float","noStyle","shouldUpdate","prevValues","nextValues","getFieldValue","autoSize","minRows","answerTerms","valuePropName","transform","zoom","a","href","target","rel","split","margin","marginTop","listenPluginDeactivation","document","addEventListener","names","currentUserFullName","others","link","matches","node","appendChild","render","unmountComponentAtNode","preventDefault","stopImmediatePropagation","CLICK_HANDLER_PLUGIN_UPDATE_MODAL_ATTRIBUTE","listenPluginUpdateLinkClick","_e$target","getAttribute","HASH_HANDLER_PLUGIN_UPDATE_MODAL_PREFIX","listenHashPluginUpdate","hash","startsWith","substr","PluginUpdateTermFields","allowsTelemetry","allowsAutoUpdates","allowsNewsletter","PLUGIN_UPDATE_FORM_LAYOUT_MARGIN_BOTTOM","newsletter","LearnMoreTag","url","useStyle","cursor","open","QuestionCircleFilled","PLUGIN_UPDATE_FORM_LAYOUT","PluginUpdateForm","onSave","onFailure","forceFormValidateStatus","setForceFormValidateStatus","needsLicenseKeys","accountSiteUrl","licenseKeyHelpUrl","potentialNewsletterUser","firstName","showBlogName","showNetworkWideUpdateIssueNotice","allowNoUsage","installationType","hint","_hint$help$match","help","match","autoUpdates","terms","telemetry","showTermFields","setShowTermFields","handleSave","formLicenses","meta","values","newMeta","JSON","stringify","foundLicense","k","setFieldsValue","onFinishFailed","strong","onChange","fields","field","index","licenseBusy","blogName","host","lastBlogPutError","useHint","isLicenseMaxUsagesReached","debug","errors","customHelp","fieldKey","pattern","placeholder","addonBefore","display","PluginUpdateLicenseList","itemLayout","size","dataSource","renderItem","item","remote","paddingLeft","paddingRight","actions","CloudServerOutlined","ClockCircleOutlined","Date","licenseActivation","activatedAt","toLocaleString","documentElement","lang","CloudUploadOutlined","telemetryDataSharingOptIn","Boolean","description","textAlign","checked","PluginUpdateErrorNotice","_error$responseJSON","error","errorMessage","PluginUpdateEmbed","formProps","listProps","showHeadline","useEffect","orientation","PluginUpdateModal","doReloadAfterClose","setDoReloadAfterClose","handleCancel","checkUpdateLink","reload","handleChange","classList","okButtonProps","cancelButtonProps","okText","fontWeight","top","fn","Promise","resolve","readyState","ready","module","exports","ReactDOM","mobx","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","every","splice","r","n","getter","__esModule","d","definition","o","defineProperty","g","globalThis","Function","obj","prop","hasOwnProperty","call","Symbol","toStringTag","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_AT-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 09:41+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_AT","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
1
+ {"translation-revision-date":"2022-11-14 16:46+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_AT","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/real-cookie-banner-upgrade-kostenlose-auf-pro-version\/"],"Enter license key to unlock PRO features":["Lizenzschl\u00fcssel eingeben, um PRO-Funktionen freizuschalten"],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_CH-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 09:41+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_CH","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
1
+ {"translation-revision-date":"2022-11-14 16:46+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_CH","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/real-cookie-banner-upgrade-kostenlose-auf-pro-version\/"],"Enter license key to unlock PRO features":["Lizenzschl\u00fcssel eingeben, um PRO-Funktionen freizuschalten"],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_CH_informal-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 09:41+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_CH_informal","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
1
+ {"translation-revision-date":"2022-11-14 16:46+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_CH_informal","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/real-cookie-banner-upgrade-kostenlose-auf-pro-version\/"],"Enter license key to unlock PRO features":["Lizenzschl\u00fcssel eingeben, um PRO-Funktionen freizuschalten"],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_DE-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 09:41+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_DE","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
1
+ {"translation-revision-date":"2022-11-14 16:46+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_DE","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Bist du sicher, dass du das Feedback-Formular verlassen m\u00f6chtest?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass du gehst"],"Please give us feedback why you deactivate %s.":["Bitte gib uns Feedback, warum du %s deaktivierst."],"Please provide a reason!":["Bitte gib einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte gib eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte gib einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tige, dass du die Datenschutzbestimmungen zur Kenntnis genommen hast."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlaube uns, dir per E-Mail zu antworten und wir werden uns zeitnah bei dir melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir dir im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/de\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tige, dass du die Datenschutzerkl\u00e4rung gelesen hast!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte gib deinen Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte gib deine E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachte, dass wir dir eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem du auf den Aktivierungslink in der E-Mail geklickt hast, erh\u00e4ltst du den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Deine Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiviere deine %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um alle Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigst du eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erh\u00e4ltst du Antworten auf Supportanfragen und Ank\u00fcndigungen in deinem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Du verwendest eine WordPress-Multisite. Aufgrund von technischen Beschr\u00e4nkungen von WordPress kann %s in WordPress-Multisites nur dann automatische Updates erhalten, wenn das Plugin netzwerkweit aktiviert ist. Du kannst das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktiviere %s netzwerkweit oder f\u00fchre regelm\u00e4\u00dfige Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte gib einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hle einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Du kannst jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwendest Du \"{{strong}}Entwicklung{{\/strong}}\", wenn Deine Seite noch nicht live ist oder es sich um eine Staging-Umgebung deiner Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwendest du, sobald deine Website \u00f6ffentlich ist. Du kannst den Installations-Typen sp\u00e4ter jederzeit \u00e4ndern, indem du die Lizenz deaktivierst und erneut aktivierst."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalte Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Dein Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Deine Installation ist vollst\u00e4ndig aktiviert."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/real-cookie-banner-upgrade-kostenlose-auf-pro-version\/"],"Enter license key to unlock PRO features":["Lizenzschl\u00fcssel eingeben, um PRO-Funktionen freizuschalten"],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, du hast den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entferne den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass du deine WordPress-Instanz so konfiguriert hast, dass die WordPress REST API blockiert ist. Wie du damit umgehen kannst, erf\u00e4hrst du {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-de_DE_formal-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 09:41+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_DE_formal","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Sind Sie sich sicher, dass Sie das Feedback-Formular verlassen m\u00f6chten?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass Sie gehen"],"Please give us feedback why you deactivate %s.":["Bitte geben Sie uns Feedback, warum Sie %s deaktivieren."],"Please provide a reason!":["Bitte geben Sie einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte geben Sie eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte geben Sie einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tigen Sie, dass Sie die Datenschutzbestimmungen zur Kenntnis genommen haben."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlauben Sie uns, Ihnen per E-Mail zu antworten und wir werden uns zeitnah bei Ihnen melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir Ihnen im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tigen Sie, dass Sie die Datenschutzerkl\u00e4rung gelesen haben!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte geben Sie Ihren Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte geben Sie Ihre E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachten Sie, dass wir Ihnen eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem Sie auf den Aktivierungslink in der E-Mail geklickt haben, erhalten Sie den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Ihre Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktivieren Sie Ihre %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um zahlreiche Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigen Sie eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erhalten Sie Antworten auf Supportanfragen und Ank\u00fcndigungen in Ihrem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Sie verwenden eine WordPress-Multisite. Aufgrund technischer Beschr\u00e4nkungen von WordPress kann %s automatische Updates in WordPress-Multisites nur erhalten, wenn das Plugin netzwerkweit aktiviert ist. Sie k\u00f6nnen das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktivieren Sie %s netzwerkweit oder f\u00fchren Sie die regelm\u00e4\u00dfigen Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte geben Sie einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hlen Sie einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Sie k\u00f6nnen jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwenden Sie \"{{strong}}Entwicklung{{\/strong}}\", wenn Ihre Seite noch nicht live ist oder es sich um eine Staging-Umgebung Ihrer Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwenden Sie, sobald Ihre Website \u00f6ffentlich ist. Sie k\u00f6nnen den Installationstyp sp\u00e4ter jederzeit \u00e4ndern, indem Sie die Lizenz deaktivieren und erneut aktivieren."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Sie haben den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalten Sie Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Ihr Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Ihre Installation ist vollst\u00e4ndig aktiviert."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Sie haben den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entfernen Sie den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass Sie Ihre WordPress-Instanz so konfiguriert haben, dass Sie die WordPress REST API blockiert haben. Wie Sie damit umgehen k\u00f6nnen, erfahren Sie {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
1
+ {"translation-revision-date":"2022-11-14 16:46+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"de_DE_formal","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Upgrade auf PRO-Version"],"Plugin does not work":["Plugin funktioniert nicht"],"Not the features I want":["Nicht die gew\u00fcnschten Funktionen"],"Incompatible with themes\/plugins":["Inkompatibel mit Themes\/Plugins"],"Lack of documentation":["Fehlende Dokumentation"],"Found a better plugin":["Besseres Plugin gefunden"],"Temporary deactivation":["Tempor\u00e4re Deaktivierung"],"Other":["Anderes"],"Are you sure you want to leave the feedback form?":["Sind Sie sich sicher, dass Sie das Feedback-Formular verlassen m\u00f6chten?"],"Skip & Deactivate":["\u00dcberspringen & Deaktivieren"],"Deactivate":["Deaktivieren"],"Too bad you are leaving":["Schade, dass Sie gehen"],"Please give us feedback why you deactivate %s.":["Bitte geben Sie uns Feedback, warum Sie %s deaktivieren."],"Please provide a reason!":["Bitte geben Sie einen Grund an!"],"What could we do better?":["Was k\u00f6nnten wir besser machen?"],"Email for answer\/solution":["E-Mail f\u00fcr Antwort\/L\u00f6sung"],"Please provide a valid e-mail address!":["Bitte geben Sie eine g\u00fcltige E-Mail an!"],"Name":["Name"],"Please provide a name!":["Bitte geben Sie einen Namen an!"],"Please confirm that you have checked the privacy policy.":["Bitte best\u00e4tigen Sie, dass Sie die Datenschutzbestimmungen zur Kenntnis genommen haben."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Ich w\u00fcrde gerne eine Antwort auf meine Frage erhalten. Zu diesem Zweck stimme ich der Datenverarbeitung meines Feedbacks und meiner E-Mail-Adresse zu. Ich habe die %s {{a}}Datenschutzerkl\u00e4rung{{\/a}} gelesen und stimme dieser zu."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Erlauben Sie uns, Ihnen per E-Mail zu antworten und wir werden uns zeitnah bei Ihnen melden!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Gibt es Probleme beim Einrichten oder bei der Benutzung des Plugins? Vielleicht k\u00f6nnen wir Ihnen im Support helfen. {{a}}Kontakt zum Support{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["Updates, die Fehlerkorrekturen und neue Funktionen enthalten, werden automatisch heruntergeladen und installiert."],"Please confirm that you have read the privacy policy!":["Bitte best\u00e4tigen Sie, dass Sie die Datenschutzerkl\u00e4rung gelesen haben!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Ich erlaube, technische Daten \u00fcber diese WordPress-Installation auf den Update-Server von %1$s zu \u00fcbertragen und aktuelle Ank\u00fcndigungen zu erhalten. Diese Daten werden f\u00fcr die Lizenzaktivierung und Update-Funktionalit\u00e4t ben\u00f6tigt. Ich habe die {{a}}Datenschutzerkl\u00e4rung{{\/a}} von %1$s gelesen."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Ich erlaube die Erhebung von Telemetrie-Daten \u00fcber die Nutzung dieses WordPress-Plugins in Einklang mit der %1$s {{a}}Datenschutzerkl\u00e4rung{{\/a}}. Diese Daten enthalten keine pers\u00f6nlichen Informationen \u00fcber die Nutzer des Plugins. Die gesammelten Daten werden verwendet, um dir den bestm\u00f6glichen Support zu bieten und das Plugin zu verbessern."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Ich m\u00f6chte den %1$s Newsletter mit WordPress News, Angeboten und Produktneuheiten (ca. 1-2 pro Monat) per E-Mail erhalten. Ich habe die %1$s {{a}}Datenschutzerkl\u00e4rung {{\/a}} gelesen. Ich wei\u00df, dass ich den Newsletter jederzeit abbestellen kann."],"First name":["Vorname"],"Please enter your first name!":["Bitte geben Sie Ihren Vornamen ein!"],"Email":["E-Mail"],"Please enter your email address!":["Bitte geben Sie Ihre E-Mail-Adresse ein!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Bitte beachten Sie, dass wir Ihnen eine E-Mail zur Best\u00e4tigung zusenden werden. Erst nachdem Sie auf den Aktivierungslink in der E-Mail geklickt haben, erhalten Sie den Newsletter."],"Learn more":["Mehr erfahren"],"Your license has been activated!":["Ihre Lizenz wurde aktiviert!"],"Activate your %s PRO license to receive regular updates and support.":["Aktivieren Sie Ihre %s PRO Lizenz, um regelm\u00e4\u00dfige Updates und Support zu erhalten."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["Um zahlreiche Vorteile von %s nutzen zu k\u00f6nnen, {{strong}}ben\u00f6tigen Sie eine kostenlose Lizenz{{\/strong}}. Nach der Lizenzaktivierung erhalten Sie Antworten auf Supportanfragen und Ank\u00fcndigungen in Ihrem Plugin (z.B. auch Hinweise auf Rabattaktionen der PRO-Version)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":["Sie verwenden eine WordPress-Multisite. Aufgrund technischer Beschr\u00e4nkungen von WordPress kann %s automatische Updates in WordPress-Multisites nur erhalten, wenn das Plugin netzwerkweit aktiviert ist. Sie k\u00f6nnen das Plugin netzwerkweit aktivieren, es aber trotzdem nur f\u00fcr bestimmte Websites lizenzieren."],"Please enable %s network-wide or take care of regular updates manually! ":["Bitte aktivieren Sie %s netzwerkweit oder f\u00fchren Sie die regelm\u00e4\u00dfigen Updates manuell durch! "],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/das-limit-der-aktivierten-clients-fuer-diese-lizenz-wurde-bereits-erreicht\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["Installationstyp und Lizenzschl\u00fcssel f\u00fcr {{strong}}%s{{\/strong}}"],"Installation type and license key":["Installationstyp und Lizenzschl\u00fcssel"],"Please enter a valid license key!":["Bitte geben Sie einen g\u00fcltigen Lizenzschl\u00fcssel ein!"],"Please choose an installation type!":["Bitte w\u00e4hlen Sie einen Installationstyp!"],"Installation type":["Installationstyp"],"Development":["Entwicklung"],"Production":["Produktion"],"Select installation type\u2026":["Installationstyp ausw\u00e4hlen\u2026"],"What is an installation type?":["Was ist ein Installationstyp?"],"You can use each license in both production and development environments.":["Sie k\u00f6nnen jede Lizenz sowohl in Produktions- als auch in Entwicklungsumgebungen verwenden."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["Allgemein gesprochen verwenden Sie \"{{strong}}Entwicklung{{\/strong}}\", wenn Ihre Seite noch nicht live ist oder es sich um eine Staging-Umgebung Ihrer Website handelt. \"{{strong}}Produktion{{\/strong}}\" verwenden Sie, sobald Ihre Website \u00f6ffentlich ist. Sie k\u00f6nnen den Installationstyp sp\u00e4ter jederzeit \u00e4ndern, indem Sie die Lizenz deaktivieren und erneut aktivieren."],"I do not want to license and use the plugin for this site within my multisite.":["Ich m\u00f6chte das Plugin nicht f\u00fcr diese Website innerhalb meiner Multisite lizenzieren und verwenden."],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Diese Lizenz kann nicht manuell aktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Sie haben den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Leider ist bei der Aktivierung der Lizenz etwas schiefgelaufen."],"Retry activation":["Aktivierung wiederholen"],"Manage licenses in the customer center":["Verwalten Sie Lizenzen im Kundencenter"],"Activated %s":["%s aktiviert"],"Telemetry data sharing enabled":["Teilen von Telemetrie-Daten aktiviert"],"Telemetry data sharing disabled":["Teilen von Telemetrie-Daten deaktiviert"],"Your license key":["Ihr Lizenzschl\u00fcssel"],"Your installation is fully activated.":["Ihre Installation ist vollst\u00e4ndig aktiviert."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/real-cookie-banner-upgrade-kostenlose-auf-pro-version\/"],"Enter license key to unlock PRO features":["Lizenzschl\u00fcssel eingeben, um PRO-Funktionen freizuschalten"],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Diese Lizenz kann nicht manuell deaktiviert werden, da sie programmatisch konfiguriert ist. Das hei\u00dft, Sie haben den {{a}}Aktivierungsfilter{{\/a}} f\u00fcr den Host {{code}}%s{{\/code}} (Blog-ID: %d) verwendet. Bitte entfernen Sie den Filter, um die Lizenz zu deaktivieren!"],"Show announcements for this plugin":["Ank\u00fcndigungen f\u00fcr dieses Plugin anzeigen"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":["Etwas ist schiefgelaufen%s. Es k\u00f6nnte sein, dass Sie Ihre WordPress-Instanz so konfiguriert haben, dass Sie die WordPress REST API blockiert haben. Wie Sie damit umgehen k\u00f6nnen, erfahren Sie {{a}}hier{{\/a}}."],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/de\/wissensdatenbank\/wordpress-rest-api-antwortet-nicht\/"],"Not yet licensed":["Noch nicht lizenziert"],"Already licensed":["Bereits lizenziert"],"Save":["Speichern"],"License settings":["Lizenzeinstellungen"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-hu_HU-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-04-04 12:35+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"hu_HU","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Friss\u00edt\u00e9s a PRO verzi\u00f3ra"],"Plugin does not work":["A b\u0151v\u00edtm\u00e9ny nem m\u0171k\u00f6dik"],"Not the features I want":["Nem azokat a funkci\u00f3kat, amelyeket szeretn\u00e9k"],"Incompatible with themes\/plugins":["Nem kompatibilis a t\u00e9m\u00e1kkal\/b\u0151v\u00edtm\u00e9nyekkel"],"Lack of documentation":["A dokument\u00e1ci\u00f3 hi\u00e1nya"],"Found a better plugin":["Tal\u00e1ltam egy jobb b\u0151v\u00edtm\u00e9nyt"],"Temporary deactivation":["Ideiglenes deaktiv\u00e1l\u00e1s"],"Other":["M\u00e1s"],"Are you sure you want to leave the feedback form?":["Biztosan elhagyja a visszajelz\u00e9si \u0171rlapot?"],"Skip & Deactivate":["Kihagy\u00e1s \u00e9s deaktiv\u00e1l\u00e1s"],"Deactivate":["Deaktiv\u00e1l\u00e1s"],"Too bad you are leaving":["K\u00e1r, hogy elmegy"],"Please give us feedback why you deactivate %s.":["K\u00e9rj\u00fck, adjon visszajelz\u00e9st, hogy mi\u00e9rt deaktiv\u00e1lja a %s b\u0151v\u00edtm\u00e9nyt."],"Please provide a reason!":["K\u00e9rj\u00fck, indokolja meg!"],"What could we do better?":["Mit csin\u00e1lhatn\u00e1nk jobban?"],"Email for answer\/solution":["E-mail a v\u00e1lasz\u00e9rt\/megold\u00e1s\u00e9rt"],"Please provide a valid e-mail address!":["K\u00e9rj\u00fck, val\u00f3s email c\u00edmet adjon meg!"],"Name":["N\u00e9v"],"Please provide a name!":["K\u00e9rem adjon meg nevet!"],"Please confirm that you have checked the privacy policy.":["K\u00e9rj\u00fck, er\u0151s\u00edtse meg, hogy elolvasta az adatv\u00e9delmi szab\u00e1lyzatot."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Szeretn\u00e9k v\u00e1laszt kapni k\u00e9r\u00e9semre. E c\u00e9lb\u00f3l hozz\u00e1j\u00e1rulok visszajelz\u00e9sem \u00e9s e-mail c\u00edmem adatkezel\u00e9s\u00e9hez. Elolvastam \u00e9s tudom\u00e1sul vettem a %s {{a}}Adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Engedje meg, hogy e-mailben v\u00e1laszoljunk, \u00e9s a lehet\u0151 leghamarabb felvessz\u00fck \u00d6nnel a kapcsolatot!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Probl\u00e9m\u00e1k vannak a b\u0151v\u00edtm\u00e9ny be\u00e1ll\u00edt\u00e1s\u00e1val vagy haszn\u00e1lat\u00e1val? Tal\u00e1n tudunk seg\u00edteni a t\u00e1mogat\u00e1sban. {{a}}Kapcsolatfelv\u00e9tel az \u00fcgyf\u00e9lszolg\u00e1lattal{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["A hibajav\u00edt\u00e1sokat \u00e9s \u00faj funkci\u00f3kat tartalmaz\u00f3 friss\u00edt\u00e9sek let\u00f6lt\u00e9se \u00e9s telep\u00edt\u00e9se automatikusan megt\u00f6rt\u00e9nik."],"Please confirm that you have read the privacy policy!":["K\u00e9rj\u00fck, er\u0151s\u00edtse meg, hogy elolvasta az adatv\u00e9delmi szab\u00e1lyzatot!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Enged\u00e9lyezem a WordPress telep\u00edt\u00e9s\u00e9vel kapcsolatos m\u0171szaki adatok k\u00fcld\u00e9s\u00e9t a %1$ friss\u00edt\u00e9si szerver\u00e9re, \u00e9s megkapom a leg\u00fajabb \u00e9rtes\u00edt\u00e9seket. Ezek az adatok a licenc aktiv\u00e1l\u00e1s\u00e1hoz \u00e9s a friss\u00edt\u00e9si funkci\u00f3khoz sz\u00fcks\u00e9gesek. Elolvastam \u00e9s tudom\u00e1sul vettem a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Enged\u00e9lyezem a WordPress b\u0151v\u00edtm\u00e9ny haszn\u00e1lat\u00e1val kapcsolatos telemetriai adatok gy\u0171jt\u00e9s\u00e9t a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveinek{{\/a}} megfelel\u0151en. Ezek az adatok nem tartalmaznak semmilyen szem\u00e9lyes inform\u00e1ci\u00f3t a b\u0151v\u00edtm\u00e9ny felhaszn\u00e1l\u00f3ir\u00f3l. Az \u00f6sszegy\u0171jt\u00f6tt adatokat a lehet\u0151 legjobb t\u00e1mogat\u00e1s \u00e9s a b\u0151v\u00edtm\u00e9ny fejleszt\u00e9se \u00e9rdek\u00e9ben haszn\u00e1ljuk fel."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Szeretn\u00e9m megkapni a %1$ h\u00edrlevelet WordPress h\u00edrekkel, \u00e9rt\u00e9kes\u00edt\u00e9ssel \u00e9s term\u00e9kaj\u00e1nlatokkal (kb. 1-2 havonta) e-mailben. Elolvastam a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}, \u00e9s elfogadom azt. Tudom, hogy a h\u00edrlev\u00e9lr\u0151l b\u00e1rmikor leiratkozhatok."],"First name":["Vezet\u00e9kn\u00e9v"],"Please enter your first name!":["K\u00e9rj\u00fck, adja meg a keresztnev\u00e9t!"],"Email":["Email"],"Please enter your email address!":["K\u00e9rj\u00fck, adja meg e-mail c\u00edm\u00e9t!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Felh\u00edvjuk figyelm\u00e9t, hogy visszaigazol\u00f3 e-mailt k\u00fcld\u00fcnk \u00d6nnek. Csak akkor kapja meg a h\u00edrlevelet, ha az e-mailben tal\u00e1lhat\u00f3 aktiv\u00e1l\u00f3 linkre kattintott."],"Learn more":["Tudj meg t\u00f6bbet"],"Your license has been activated!":["A licence aktiv\u00e1lva lett!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiv\u00e1lja % PRO licenc\u00e9t, hogy rendszeres friss\u00edt\u00e9seket \u00e9s t\u00e1mogat\u00e1st kapjon."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["A %s \u00f6sszes el\u0151ny\u00e9nek kihaszn\u00e1l\u00e1s\u00e1hoz {{strong}}ingyenes licenc sz\u00fcks\u00e9ges{{\/strong}}. A licenc aktiv\u00e1l\u00e1sa ut\u00e1n v\u00e1laszokat kap a t\u00e1mogat\u00e1si k\u00e9r\u00e9sekre \u00e9s bejelent\u00e9sekre a b\u0151v\u00edtm\u00e9ny\u00e9ben (p\u00e9ld\u00e1ul \u00e9rtes\u00edt\u00e9seket a PRO verzi\u00f3 kedvezm\u00e9nyes akci\u00f3ir\u00f3l)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":[""],"Please enable %s network-wide or take care of regular updates manually! ":[""],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["A(z) {{strong}}%s{{\/strong}} telep\u00edt\u00e9si t\u00edpusa \u00e9s licenckulcsa"],"Installation type and license key":["A telep\u00edt\u00e9s t\u00edpusa \u00e9s licenckulcsa"],"Please enter a valid license key!":["K\u00e9r\u00fck adjon meg egy \u00e9rv\u00e9nyes licenckulcsot!"],"Please choose an installation type!":["K\u00e9rj\u00fck, v\u00e1lasszon telep\u00edt\u00e9si m\u00f3dot!"],"Installation type":["Telep\u00edt\u00e9s t\u00edpusa"],"Development":["Fejleszt\u00e9s"],"Production":["Produkci\u00f3"],"Select installation type\u2026":["V\u00e1lassza ki a telep\u00edt\u00e9s t\u00edpus\u00e1t\u2026"],"What is an installation type?":["Mi a telep\u00edt\u00e9s t\u00edpusa?"],"You can use each license in both production and development environments.":["Az egyes licenceket \u00e9les \u00e9s fejleszt\u0151i k\u00f6rnyezetben egyar\u00e1nt haszn\u00e1lhatja."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["\u00c1ltal\u00e1noss\u00e1gban elmondhat\u00f3, hogy a \u201e{{strong}}Fejleszt\u00e9s{{\/strong}}\u201d kifejez\u00e9st akkor haszn\u00e1lja, ha webhelye m\u00e9g nem \u00e9l, vagy a webhely \u00e1tmeneti k\u00f6rnyezetben \u00fczemel. A \u201e{{strong}}Produkci\u00f3{{\/strong}}\u201d az, amit akkor haszn\u00e1l, ha webhelye akt\u00edv. B\u00e1rmikor megv\u00e1ltoztathatja a telep\u00edt\u00e9s t\u00edpus\u00e1t a licenc deaktiv\u00e1l\u00e1s\u00e1val, majd \u00fajb\u00f3li aktiv\u00e1l\u00e1s\u00e1val."],"I do not want to license and use the plugin for this site within my multisite.":[""],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Ez a licenc nem aktiv\u00e1lhat\u00f3 manu\u00e1lisan, mert programozottan van konfigur\u00e1lva. Ez azt jelenti, hogy az {{a}}aktiv\u00e1ci\u00f3s sz\u0171r\u0151t{{\/a}} haszn\u00e1lta a(z) {{code}}%s{{\/code}} (Blog ID: %d) hoszthoz. Sajnos hiba t\u00f6rt\u00e9nt a licenc aktiv\u00e1l\u00e1sakor."],"Retry activation":["Aktiv\u00e1l\u00e1s \u00fajrapr\u00f3b\u00e1l\u00e1sa"],"Manage licenses in the customer center":["Licencek kezel\u00e9se az \u00fcgyf\u00e9lk\u00f6zpontban"],"Activated %s":["Aktiv\u00e1lva: %s"],"Telemetry data sharing enabled":["Telemetriai adatmegoszt\u00e1s enged\u00e9lyezve"],"Telemetry data sharing disabled":["A telemetriai adatmegoszt\u00e1s letiltva"],"Your license key":["Az \u00d6n licenckulcsa"],"Your installation is fully activated.":["A telep\u00edt\u00e9s sikeresen aktiv\u00e1lva van."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Ezt a licencet nem lehet manu\u00e1lisan deaktiv\u00e1lni, mert programozottan van konfigur\u00e1lva. Ez azt jelenti, hogy az {{a}}aktiv\u00e1ci\u00f3s sz\u0171r\u0151t{{\/a}} haszn\u00e1lta a(z) {{code}}%s{{\/code}} (Blog ID: %d) hoszthoz. A licenc inaktiv\u00e1l\u00e1s\u00e1hoz t\u00e1vol\u00edtsa el a sz\u0171r\u0151t!"],"Show announcements for this plugin":["Bejelent\u00e9sek megjelen\u00edt\u00e9se ehhez a b\u0151v\u00edtm\u00e9nyhez"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":[""],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":[""],"Not yet licensed":[""],"Already licensed":[""],"Save":["Ment\u00e9s"],"License settings":["Licencbe\u00e1ll\u00edt\u00e1sok"]}}}
1
+ {"translation-revision-date":"2022-04-04 12:35+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"hu_HU","plural-forms":"nplurals=2; plural=n != 1;"},"Upgrade to PRO Version":["Friss\u00edt\u00e9s a PRO verzi\u00f3ra"],"Plugin does not work":["A b\u0151v\u00edtm\u00e9ny nem m\u0171k\u00f6dik"],"Not the features I want":["Nem azokat a funkci\u00f3kat, amelyeket szeretn\u00e9k"],"Incompatible with themes\/plugins":["Nem kompatibilis a t\u00e9m\u00e1kkal\/b\u0151v\u00edtm\u00e9nyekkel"],"Lack of documentation":["A dokument\u00e1ci\u00f3 hi\u00e1nya"],"Found a better plugin":["Tal\u00e1ltam egy jobb b\u0151v\u00edtm\u00e9nyt"],"Temporary deactivation":["Ideiglenes deaktiv\u00e1l\u00e1s"],"Other":["M\u00e1s"],"Are you sure you want to leave the feedback form?":["Biztosan elhagyja a visszajelz\u00e9si \u0171rlapot?"],"Skip & Deactivate":["Kihagy\u00e1s \u00e9s deaktiv\u00e1l\u00e1s"],"Deactivate":["Deaktiv\u00e1l\u00e1s"],"Too bad you are leaving":["K\u00e1r, hogy elmegy"],"Please give us feedback why you deactivate %s.":["K\u00e9rj\u00fck, adjon visszajelz\u00e9st, hogy mi\u00e9rt deaktiv\u00e1lja a %s b\u0151v\u00edtm\u00e9nyt."],"Please provide a reason!":["K\u00e9rj\u00fck, indokolja meg!"],"What could we do better?":["Mit csin\u00e1lhatn\u00e1nk jobban?"],"Email for answer\/solution":["E-mail a v\u00e1lasz\u00e9rt\/megold\u00e1s\u00e9rt"],"Please provide a valid e-mail address!":["K\u00e9rj\u00fck, val\u00f3s email c\u00edmet adjon meg!"],"Name":["N\u00e9v"],"Please provide a name!":["K\u00e9rem adjon meg nevet!"],"Please confirm that you have checked the privacy policy.":["K\u00e9rj\u00fck, er\u0151s\u00edtse meg, hogy elolvasta az adatv\u00e9delmi szab\u00e1lyzatot."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["Szeretn\u00e9k v\u00e1laszt kapni k\u00e9r\u00e9semre. E c\u00e9lb\u00f3l hozz\u00e1j\u00e1rulok visszajelz\u00e9sem \u00e9s e-mail c\u00edmem adatkezel\u00e9s\u00e9hez. Elolvastam \u00e9s tudom\u00e1sul vettem a %s {{a}}Adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["Engedje meg, hogy e-mailben v\u00e1laszoljunk, \u00e9s a lehet\u0151 leghamarabb felvessz\u00fck \u00d6nnel a kapcsolatot!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["Probl\u00e9m\u00e1k vannak a b\u0151v\u00edtm\u00e9ny be\u00e1ll\u00edt\u00e1s\u00e1val vagy haszn\u00e1lat\u00e1val? Tal\u00e1n tudunk seg\u00edteni a t\u00e1mogat\u00e1sban. {{a}}Kapcsolatfelv\u00e9tel az \u00fcgyf\u00e9lszolg\u00e1lattal{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["A hibajav\u00edt\u00e1sokat \u00e9s \u00faj funkci\u00f3kat tartalmaz\u00f3 friss\u00edt\u00e9sek let\u00f6lt\u00e9se \u00e9s telep\u00edt\u00e9se automatikusan megt\u00f6rt\u00e9nik."],"Please confirm that you have read the privacy policy!":["K\u00e9rj\u00fck, er\u0151s\u00edtse meg, hogy elolvasta az adatv\u00e9delmi szab\u00e1lyzatot!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["Enged\u00e9lyezem a WordPress telep\u00edt\u00e9s\u00e9vel kapcsolatos m\u0171szaki adatok k\u00fcld\u00e9s\u00e9t a %1$ friss\u00edt\u00e9si szerver\u00e9re, \u00e9s megkapom a leg\u00fajabb \u00e9rtes\u00edt\u00e9seket. Ezek az adatok a licenc aktiv\u00e1l\u00e1s\u00e1hoz \u00e9s a friss\u00edt\u00e9si funkci\u00f3khoz sz\u00fcks\u00e9gesek. Elolvastam \u00e9s tudom\u00e1sul vettem a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["Enged\u00e9lyezem a WordPress b\u0151v\u00edtm\u00e9ny haszn\u00e1lat\u00e1val kapcsolatos telemetriai adatok gy\u0171jt\u00e9s\u00e9t a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveinek{{\/a}} megfelel\u0151en. Ezek az adatok nem tartalmaznak semmilyen szem\u00e9lyes inform\u00e1ci\u00f3t a b\u0151v\u00edtm\u00e9ny felhaszn\u00e1l\u00f3ir\u00f3l. Az \u00f6sszegy\u0171jt\u00f6tt adatokat a lehet\u0151 legjobb t\u00e1mogat\u00e1s \u00e9s a b\u0151v\u00edtm\u00e9ny fejleszt\u00e9se \u00e9rdek\u00e9ben haszn\u00e1ljuk fel."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["Szeretn\u00e9m megkapni a %1$ h\u00edrlevelet WordPress h\u00edrekkel, \u00e9rt\u00e9kes\u00edt\u00e9ssel \u00e9s term\u00e9kaj\u00e1nlatokkal (kb. 1-2 havonta) e-mailben. Elolvastam a %1$ {{a}}adatv\u00e9delmi ir\u00e1nyelveit{{\/a}}, \u00e9s elfogadom azt. Tudom, hogy a h\u00edrlev\u00e9lr\u0151l b\u00e1rmikor leiratkozhatok."],"First name":["Vezet\u00e9kn\u00e9v"],"Please enter your first name!":["K\u00e9rj\u00fck, adja meg a keresztnev\u00e9t!"],"Email":["Email"],"Please enter your email address!":["K\u00e9rj\u00fck, adja meg e-mail c\u00edm\u00e9t!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["Felh\u00edvjuk figyelm\u00e9t, hogy visszaigazol\u00f3 e-mailt k\u00fcld\u00fcnk \u00d6nnek. Csak akkor kapja meg a h\u00edrlevelet, ha az e-mailben tal\u00e1lhat\u00f3 aktiv\u00e1l\u00f3 linkre kattintott."],"Learn more":["Tudj meg t\u00f6bbet"],"Your license has been activated!":["A licence aktiv\u00e1lva lett!"],"Activate your %s PRO license to receive regular updates and support.":["Aktiv\u00e1lja % PRO licenc\u00e9t, hogy rendszeres friss\u00edt\u00e9seket \u00e9s t\u00e1mogat\u00e1st kapjon."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["A %s \u00f6sszes el\u0151ny\u00e9nek kihaszn\u00e1l\u00e1s\u00e1hoz {{strong}}ingyenes licenc sz\u00fcks\u00e9ges{{\/strong}}. A licenc aktiv\u00e1l\u00e1sa ut\u00e1n v\u00e1laszokat kap a t\u00e1mogat\u00e1si k\u00e9r\u00e9sekre \u00e9s bejelent\u00e9sekre a b\u0151v\u00edtm\u00e9ny\u00e9ben (p\u00e9ld\u00e1ul \u00e9rtes\u00edt\u00e9seket a PRO verzi\u00f3 kedvezm\u00e9nyes akci\u00f3ir\u00f3l)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":[""],"Please enable %s network-wide or take care of regular updates manually! ":[""],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["A(z) {{strong}}%s{{\/strong}} telep\u00edt\u00e9si t\u00edpusa \u00e9s licenckulcsa"],"Installation type and license key":["A telep\u00edt\u00e9s t\u00edpusa \u00e9s licenckulcsa"],"Please enter a valid license key!":["K\u00e9r\u00fck adjon meg egy \u00e9rv\u00e9nyes licenckulcsot!"],"Please choose an installation type!":["K\u00e9rj\u00fck, v\u00e1lasszon telep\u00edt\u00e9si m\u00f3dot!"],"Installation type":["Telep\u00edt\u00e9s t\u00edpusa"],"Development":["Fejleszt\u00e9s"],"Production":["Produkci\u00f3"],"Select installation type\u2026":["V\u00e1lassza ki a telep\u00edt\u00e9s t\u00edpus\u00e1t\u2026"],"What is an installation type?":["Mi a telep\u00edt\u00e9s t\u00edpusa?"],"You can use each license in both production and development environments.":["Az egyes licenceket \u00e9les \u00e9s fejleszt\u0151i k\u00f6rnyezetben egyar\u00e1nt haszn\u00e1lhatja."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["\u00c1ltal\u00e1noss\u00e1gban elmondhat\u00f3, hogy a \u201e{{strong}}Fejleszt\u00e9s{{\/strong}}\u201d kifejez\u00e9st akkor haszn\u00e1lja, ha webhelye m\u00e9g nem \u00e9l, vagy a webhely \u00e1tmeneti k\u00f6rnyezetben \u00fczemel. A \u201e{{strong}}Produkci\u00f3{{\/strong}}\u201d az, amit akkor haszn\u00e1l, ha webhelye akt\u00edv. B\u00e1rmikor megv\u00e1ltoztathatja a telep\u00edt\u00e9s t\u00edpus\u00e1t a licenc deaktiv\u00e1l\u00e1s\u00e1val, majd \u00fajb\u00f3li aktiv\u00e1l\u00e1s\u00e1val."],"I do not want to license and use the plugin for this site within my multisite.":[""],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["Ez a licenc nem aktiv\u00e1lhat\u00f3 manu\u00e1lisan, mert programozottan van konfigur\u00e1lva. Ez azt jelenti, hogy az {{a}}aktiv\u00e1ci\u00f3s sz\u0171r\u0151t{{\/a}} haszn\u00e1lta a(z) {{code}}%s{{\/code}} (Blog ID: %d) hoszthoz. Sajnos hiba t\u00f6rt\u00e9nt a licenc aktiv\u00e1l\u00e1sakor."],"Retry activation":["Aktiv\u00e1l\u00e1s \u00fajrapr\u00f3b\u00e1l\u00e1sa"],"Manage licenses in the customer center":["Licencek kezel\u00e9se az \u00fcgyf\u00e9lk\u00f6zpontban"],"Activated %s":["Aktiv\u00e1lva: %s"],"Telemetry data sharing enabled":["Telemetriai adatmegoszt\u00e1s enged\u00e9lyezve"],"Telemetry data sharing disabled":["A telemetriai adatmegoszt\u00e1s letiltva"],"Your license key":["Az \u00d6n licenckulcsa"],"Your installation is fully activated.":["A telep\u00edt\u00e9s sikeresen aktiv\u00e1lva van."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":[""],"Enter license key to unlock PRO features":[""],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["Ezt a licencet nem lehet manu\u00e1lisan deaktiv\u00e1lni, mert programozottan van konfigur\u00e1lva. Ez azt jelenti, hogy az {{a}}aktiv\u00e1ci\u00f3s sz\u0171r\u0151t{{\/a}} haszn\u00e1lta a(z) {{code}}%s{{\/code}} (Blog ID: %d) hoszthoz. A licenc inaktiv\u00e1l\u00e1s\u00e1hoz t\u00e1vol\u00edtsa el a sz\u0171r\u0151t!"],"Show announcements for this plugin":["Bejelent\u00e9sek megjelen\u00edt\u00e9se ehhez a b\u0151v\u00edtm\u00e9nyhez"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":[""],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":[""],"Not yet licensed":[""],"Already licensed":[""],"Save":["Ment\u00e9s"],"License settings":["Licencbe\u00e1ll\u00edt\u00e1sok"]}}}
vendor/devowl-wp/real-product-manager-wp-client/languages/frontend/json/real-product-manager-wp-client-ru_RU-168726dbe96b3ce427e7fedce31bb0bc.json CHANGED
@@ -1 +1 @@
1
- {"translation-revision-date":"2022-07-06 06:05+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"ru_RU","plural-forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},"Upgrade to PRO Version":["\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u043e PRO \u0432\u0435\u0440\u0441\u0438\u0438"],"Plugin does not work":["\u041f\u043b\u0430\u0433\u0438\u043d \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442"],"Not the features I want":["\u041c\u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438"],"Incompatible with themes\/plugins":["\u041d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e \u0441 \u043c\u043e\u0435\u0439 \u0442\u0435\u043c\u043e\u0439 \u0438\u043b\u0438 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u043c"],"Lack of documentation":["\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438"],"Found a better plugin":["\u041d\u0430\u0448\u0435\u043b \u043f\u043b\u0430\u0433\u0438\u043d \u043f\u043e\u043b\u0443\u0447\u0448\u0435"],"Temporary deactivation":["\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u044e"],"Other":["\u0414\u0440\u0443\u0433\u043e\u0435"],"Are you sure you want to leave the feedback form?":["\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438?"],"Skip & Deactivate":["\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438 \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c"],"Deactivate":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c"],"Too bad you are leaving":["\u0416\u0430\u043b\u044c, \u0447\u0442\u043e \u0442\u044b \u0443\u0435\u0437\u0436\u0430\u0435\u0448\u044c"],"Please give us feedback why you deactivate %s.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u0435 \u043d\u0430\u043c \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0435 %s."],"Please provide a reason!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u0443!"],"What could we do better?":["\u0427\u0442\u043e \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043b\u0443\u0447\u0448\u0435?"],"Email for answer\/solution":["Email \u0434\u043b\u044f \u043e\u0442\u0432\u0435\u0442\u0430\/\u0440\u0435\u0448\u0435\u043d\u0438\u044f"],"Please provide a valid e-mail address!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0447\u0442\u044b!"],"Name":["\u0418\u043c\u044f"],"Please provide a name!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0438\u043c\u044f!"],"Please confirm that you have checked the privacy policy.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["\u042f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0441\u0432\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u0414\u043b\u044f \u044d\u0442\u043e\u0439 \u0446\u0435\u043b\u0438 \u044f \u0434\u0430\u044e \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0435\u0433\u043e \u043e\u0442\u0437\u044b\u0432\u0430 \u0438 \u043c\u043e\u0435\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 email. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b %s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 \u043d\u0435\u0439."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["\u041f\u043e\u0437\u0432\u043e\u043b\u044c\u0442\u0435 \u043d\u0430\u043c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0432\u0430\u043c \u043f\u043e email, \u0438 \u043c\u044b \u0441\u0432\u044f\u0436\u0435\u043c\u0441\u044f \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["\u0415\u0441\u0442\u044c \u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u0430? \u041c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c, \u043d\u0430\u0448\u0430 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0432\u0430\u043c. {{a}}\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0432 \u0441\u043b\u0443\u0436\u0431\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u043d\u043e\u0432\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438."],"Please confirm that you have read the privacy policy!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["\u042f \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u044d\u0442\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 WordPress \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 %1$s \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f. \u042d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} %1$s."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["\u042f \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0442\u0435\u043b\u0435\u043c\u0435\u0442\u0440\u0438\u0438 (\u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430) WordPress \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 %1$s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}}. \u042d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043b\u0438\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u0445 \u043f\u043b\u0430\u0433\u0438\u043d\u0430. \u0421\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430\u0438\u043b\u0443\u0447\u0448\u0435\u0439 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u0430."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["\u042f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443 %1$s \u0441 \u043d\u043e\u0432\u043e\u0441\u0442\u044f\u043c\u0438 WordPress, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u043e \u043f\u0440\u043e\u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 1-2 \u0440\u0430\u0437\u0430 \u0432 \u043c\u0435\u0441\u044f\u0446) \u043d\u0430 email. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b %1$s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 \u043d\u0435\u0439. \u042f \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u043c\u043e\u0433\u0443 \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438 \u043d\u0430 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443 \u0432 \u043b\u044e\u0431\u043e\u0435 \u0432\u0440\u0435\u043c\u044f."],"First name":["\u0418\u043c\u044f"],"Please enter your first name!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u0432\u043e\u0435 \u0438\u043c\u044f!"],"Email":["Email"],"Please enter your email address!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u0432\u043e\u0439 email!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043c\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043c \u0432\u0430\u043c email \u0434\u043b\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f. \u0422\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0432\u044b \u043d\u0430\u0436\u043c\u0435\u0442\u0435 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0432 email, \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043d\u043e\u0432\u043e\u0441\u0442\u043d\u0443\u044e \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443."],"Learn more":["\u0423\u0437\u043d\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435"],"Your license has been activated!":["\u0412\u0430\u0448\u0430 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430!"],"Activate your %s PRO license to receive regular updates and support.":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0439\u0442\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e %s PRO, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["\u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 %s {{strong}}, \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u0430 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0430\u044f \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f{{\/strong}}. \u041f\u043e\u0441\u043b\u0435 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432 \u0441\u043b\u0443\u0436\u0431\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0432\u0430\u0448\u0435\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0430\u043a\u0436\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u0441\u043a\u0438\u0434\u043e\u0447\u043d\u044b\u0445 \u0430\u043a\u0446\u0438\u044f\u0445 PRO-\u0432\u0435\u0440\u0441\u0438\u0438)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":[""],"Please enable %s network-wide or take care of regular updates manually! ":[""],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0434\u043b\u044f {{strong}}%s{{\/strong}}"],"Installation type and license key":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447"],"Please enter a valid license key!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447!"],"Please choose an installation type!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438!"],"Installation type":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438"],"Development":["\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430"],"Production":["\u0420\u0430\u0431\u043e\u0447\u0430\u044f"],"Select installation type\u2026":["\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438\u2026"],"What is an installation type?":["\u041a\u0430\u043a\u043e\u0439 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438?"],"You can use each license in both production and development environments.":["\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u0443\u044e \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043a\u0430\u043a \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435, \u0442\u0430\u043a \u0438 \u0432 \u0441\u0440\u0435\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["\u0412\u043e\u043e\u0431\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \"{{strong}}Development{{\/strong}}\", \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442 \u0435\u0449\u0435 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0438\u043b\u0438 \u044d\u0442\u043e \u0441\u0440\u0435\u0434\u0430 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u0441\u0430\u0439\u0442\u0430. \"{{strong}}Production{{\/strong}}\" - \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435, \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043b\u044e\u0431\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0432 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0432 \u0435\u0435 \u0441\u043d\u043e\u0432\u0430."],"I do not want to license and use the plugin for this site within my multisite.":[""],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["\u042d\u0442\u0443 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043d\u0435\u043b\u044c\u0437\u044f \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440 {{a}}\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438{{\/a}} \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0430 {{code}}%s{{\/code}} (Blog ID: %d). \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a."],"Retry activation":["\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044f"],"Manage licenses in the customer center":["\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f\u043c\u0438 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432"],"Activated %s":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043e %s"],"Telemetry data sharing enabled":["\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430"],"Telemetry data sharing disabled":["\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0430"],"Your license key":["\u0412\u0430\u0448 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447"],"Your installation is fully activated.":["\u0412\u0430\u0448\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430."],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["\u042d\u0442\u0443 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043d\u0435\u043b\u044c\u0437\u044f \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440 {{a}}\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438{{\/a}} \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0430 {{code}}%s{{\/code}} (ID \u0431\u043b\u043e\u0433\u0430: %d). \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u0434\u0430\u043b\u0438\u0442\u0435 \u0444\u0438\u043b\u044c\u0442\u0440 \u0434\u043b\u044f \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438!"],"Show announcements for this plugin":["\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":[""],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/"],"Not yet licensed":[""],"Already licensed":[""],"Save":["\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c"],"License settings":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"]}}}
1
+ {"translation-revision-date":"2022-07-06 06:05+0000","generator":"WP-CLI\/2.7.0","source":"index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"ru_RU","plural-forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},"Upgrade to PRO Version":["\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u043e PRO \u0432\u0435\u0440\u0441\u0438\u0438"],"Plugin does not work":["\u041f\u043b\u0430\u0433\u0438\u043d \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442"],"Not the features I want":["\u041c\u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438"],"Incompatible with themes\/plugins":["\u041d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e \u0441 \u043c\u043e\u0435\u0439 \u0442\u0435\u043c\u043e\u0439 \u0438\u043b\u0438 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u043c"],"Lack of documentation":["\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438"],"Found a better plugin":["\u041d\u0430\u0448\u0435\u043b \u043f\u043b\u0430\u0433\u0438\u043d \u043f\u043e\u043b\u0443\u0447\u0448\u0435"],"Temporary deactivation":["\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u044e"],"Other":["\u0414\u0440\u0443\u0433\u043e\u0435"],"Are you sure you want to leave the feedback form?":["\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438?"],"Skip & Deactivate":["\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438 \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c"],"Deactivate":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c"],"Too bad you are leaving":["\u0416\u0430\u043b\u044c, \u0447\u0442\u043e \u0442\u044b \u0443\u0435\u0437\u0436\u0430\u0435\u0448\u044c"],"Please give us feedback why you deactivate %s.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u0435 \u043d\u0430\u043c \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0435 %s."],"Please provide a reason!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u0443!"],"What could we do better?":["\u0427\u0442\u043e \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043b\u0443\u0447\u0448\u0435?"],"Email for answer\/solution":["Email \u0434\u043b\u044f \u043e\u0442\u0432\u0435\u0442\u0430\/\u0440\u0435\u0448\u0435\u043d\u0438\u044f"],"Please provide a valid e-mail address!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0447\u0442\u044b!"],"Name":["\u0418\u043c\u044f"],"Please provide a name!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0438\u043c\u044f!"],"Please confirm that you have checked the privacy policy.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438."],"I would like to receive a response to my request. For this purpose, I agree to the data processing of my feedback and my e-mail address. I have read and acknowledge the %s {{a}}Privacy Policy{{\/a}}.":["\u042f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0441\u0432\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u0414\u043b\u044f \u044d\u0442\u043e\u0439 \u0446\u0435\u043b\u0438 \u044f \u0434\u0430\u044e \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0435\u0433\u043e \u043e\u0442\u0437\u044b\u0432\u0430 \u0438 \u043c\u043e\u0435\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 email. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b %s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 \u043d\u0435\u0439."],"Allow us to reply to you by email and we will get back to you as soon as possible!":["\u041f\u043e\u0437\u0432\u043e\u043b\u044c\u0442\u0435 \u043d\u0430\u043c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0432\u0430\u043c \u043f\u043e email, \u0438 \u043c\u044b \u0441\u0432\u044f\u0436\u0435\u043c\u0441\u044f \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f!"],"Are there any problems with the setup or use of the plugin? Maybe we can help you in the support. {{a}}Contact support{{\/a}}.":["\u0415\u0441\u0442\u044c \u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u0430? \u041c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c, \u043d\u0430\u0448\u0430 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0432\u0430\u043c. {{a}}\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0432 \u0441\u043b\u0443\u0436\u0431\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438{{\/a}}."],"https:\/\/devowl.io\/support\/":["https:\/\/devowl.io\/support\/"],"Updates containing bug fixes and new features will be downloaded and installed automatically.":["\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u043d\u043e\u0432\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438."],"Please confirm that you have read the privacy policy!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438!"],"I allow to transfer technical data about this WordPress installation to the update server of %1$s and get latest announcements. This data is required for license activation and update functionality. I have read the {{a}}privacy policy{{\/a}} of %1$s.":["\u042f \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u044d\u0442\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 WordPress \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 %1$s \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f. \u042d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} %1$s."],"I allow telemetry data about the use of this WordPress plugin to be collected in accordance with the %1$s {{a}}privacy policy{{\/a}}. This data does not include any personal information about users of the plugin. Collected data will be used to provide you with the best possible support and to improve the plugin.":["\u042f \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0442\u0435\u043b\u0435\u043c\u0435\u0442\u0440\u0438\u0438 (\u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430) WordPress \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 %1$s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}}. \u042d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043b\u0438\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u0445 \u043f\u043b\u0430\u0433\u0438\u043d\u0430. \u0421\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430\u0438\u043b\u0443\u0447\u0448\u0435\u0439 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u0430."],"I would like to receive the %1$s newsletter with WordPress news, sales and product offers (approx. 1-2 per month) by email. I have read the %1$s {{a}}privacy policy{{\/a}}. I know that I can unsubscribe from the newsletter at any time.":["\u042f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443 %1$s \u0441 \u043d\u043e\u0432\u043e\u0441\u0442\u044f\u043c\u0438 WordPress, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u043e \u043f\u0440\u043e\u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 1-2 \u0440\u0430\u0437\u0430 \u0432 \u043c\u0435\u0441\u044f\u0446) \u043d\u0430 email. \u042f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b %1$s {{a}}\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438{{\/a}} \u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 \u043d\u0435\u0439. \u042f \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u043c\u043e\u0433\u0443 \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438 \u043d\u0430 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443 \u0432 \u043b\u044e\u0431\u043e\u0435 \u0432\u0440\u0435\u043c\u044f."],"First name":["\u0418\u043c\u044f"],"Please enter your first name!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u0432\u043e\u0435 \u0438\u043c\u044f!"],"Email":["Email"],"Please enter your email address!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u0432\u043e\u0439 email!"],"Please note that we will send you a confirmation e-mail. Only when you have clicked on the activation link in the email will you receive the newsletter.":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043c\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043c \u0432\u0430\u043c email \u0434\u043b\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f. \u0422\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0432\u044b \u043d\u0430\u0436\u043c\u0435\u0442\u0435 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0432 email, \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043d\u043e\u0432\u043e\u0441\u0442\u043d\u0443\u044e \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0443."],"Learn more":["\u0423\u0437\u043d\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435"],"Your license has been activated!":["\u0412\u0430\u0448\u0430 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430!"],"Activate your %s PRO license to receive regular updates and support.":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0439\u0442\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e %s PRO, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443."],"To use all advantages of %s {{strong}}you need a free license{{\/strong}}. After license activation you will receive answers to support requests and announcements in your plugin (e.g. also notices for discount actions of the PRO version).":["\u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 %s {{strong}}, \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u0430 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0430\u044f \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f{{\/strong}}. \u041f\u043e\u0441\u043b\u0435 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432 \u0441\u043b\u0443\u0436\u0431\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0432\u0430\u0448\u0435\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0430\u043a\u0436\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u0441\u043a\u0438\u0434\u043e\u0447\u043d\u044b\u0445 \u0430\u043a\u0446\u0438\u044f\u0445 PRO-\u0432\u0435\u0440\u0441\u0438\u0438)."],"You are using a WordPress mulisite. Due to technical limitations of WordPress core, %s can receive automatic updates in WordPress multisites only if the plugin is enabled network-wide. You can enable the plugin network-wide, but still only license it for specific sites.":[""],"Please enable %s network-wide or take care of regular updates manually! ":[""],"https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/":["https:\/\/devowl.io\/knowledge-base\/the-limit-of-activated-clients-for-this-license-has-already-been-reached\/"],"Installation type and license key for {{strong}}%s{{\/strong}}":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0434\u043b\u044f {{strong}}%s{{\/strong}}"],"Installation type and license key":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447"],"Please enter a valid license key!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447!"],"Please choose an installation type!":["\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438!"],"Installation type":["\u0422\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438"],"Development":["\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430"],"Production":["\u0420\u0430\u0431\u043e\u0447\u0430\u044f"],"Select installation type\u2026":["\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438\u2026"],"What is an installation type?":["\u041a\u0430\u043a\u043e\u0439 \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438?"],"You can use each license in both production and development environments.":["\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u0443\u044e \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043a\u0430\u043a \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435, \u0442\u0430\u043a \u0438 \u0432 \u0441\u0440\u0435\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438."],"Generally speaking, you use \"{{strong}}Development{{\/strong}}\" when your site is not yet live, or it is a staging environment of your site. \"{{strong}}Production{{\/strong}}\" is what you use once your site is live. You can change the installation-type at any time by deactivating the license and activate it again.":["\u0412\u043e\u043e\u0431\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \"{{strong}}Development{{\/strong}}\", \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442 \u0435\u0449\u0435 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0438\u043b\u0438 \u044d\u0442\u043e \u0441\u0440\u0435\u0434\u0430 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u0441\u0430\u0439\u0442\u0430. \"{{strong}}Production{{\/strong}}\" - \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435, \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0438\u043f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043b\u044e\u0431\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0432 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0432 \u0435\u0435 \u0441\u043d\u043e\u0432\u0430."],"I do not want to license and use the plugin for this site within my multisite.":[""],"This license cannot be activated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Unfortunately, there went something wrong while activating the license.":["\u042d\u0442\u0443 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043d\u0435\u043b\u044c\u0437\u044f \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440 {{a}}\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438{{\/a}} \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0430 {{code}}%s{{\/code}} (Blog ID: %d). \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a."],"Retry activation":["\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044f"],"Manage licenses in the customer center":["\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f\u043c\u0438 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432"],"Activated %s":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043e %s"],"Telemetry data sharing enabled":["\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430"],"Telemetry data sharing disabled":["\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0430"],"Your license key":["\u0412\u0430\u0448 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447"],"Your installation is fully activated.":["\u0412\u0430\u0448\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430."],"https:\/\/devowl.io\/knowledge-base\/real-cookie-banner-upgrade-free-to-pro-version\/":["https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/"],"Enter license key to unlock PRO features":[""],"This license cannot be deactivated manually because it is configured programmatically. That means you have used the {{a}}activation filter{{\/a}} for host {{code}}%s{{\/code}} (Blog ID: %d). Please remove the filter to deactivate the license!":["\u042d\u0442\u0443 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044e \u043d\u0435\u043b\u044c\u0437\u044f \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440 {{a}}\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438{{\/a}} \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0430 {{code}}%s{{\/code}} (ID \u0431\u043b\u043e\u0433\u0430: %d). \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u0434\u0430\u043b\u0438\u0442\u0435 \u0444\u0438\u043b\u044c\u0442\u0440 \u0434\u043b\u044f \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438!"],"Show announcements for this plugin":["\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430"],"Something has gone wrong%s. It could be that you have configured your WordPress instance in such a way that you have blocked the WordPress REST API. Find out how to deal with this {{a}}here{{\/a}}.":[""],"https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/":["https:\/\/devowl.io\/knowledge-base\/wordpress-rest-api-does-not-respond\/"],"Not yet licensed":[""],"Already licensed":[""],"Save":["\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c"],"License settings":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"]}}}
vendor/devowl-wp/real-product-manager-wp-client/package.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "name": "@devowl-wp/real-product-manager-wp-client",
3
- "version": "1.13.14",
4
  "private": true,
5
  "description": "A WordPress client for Real Product Manager",
6
  "homepage": "https://devowl.io",
@@ -103,7 +103,7 @@
103
  "@devowl-wp/phpcs-config": "^0.1.4",
104
  "@devowl-wp/phpunit-config": "^0.1.4",
105
  "@devowl-wp/ts-config": "^0.1.6",
106
- "@devowl-wp/utils": "^1.12.22",
107
  "@devowl-wp/webpack-config": "^0.2.4",
108
  "@types/grunt": "~0.4.25",
109
  "@types/jest": "~26.0.23",
1
  {
2
  "name": "@devowl-wp/real-product-manager-wp-client",
3
+ "version": "1.13.15",
4
  "private": true,
5
  "description": "A WordPress client for Real Product Manager",
6
  "homepage": "https://devowl.io",
103
  "@devowl-wp/phpcs-config": "^0.1.4",
104
  "@devowl-wp/phpunit-config": "^0.1.4",
105
  "@devowl-wp/ts-config": "^0.1.6",
106
+ "@devowl-wp/utils": "^1.12.23",
107
  "@devowl-wp/webpack-config": "^0.2.4",
108
  "@types/grunt": "~0.4.25",
109
  "@types/jest": "~26.0.23",
vendor/devowl-wp/real-product-manager-wp-client/src/Utils.php CHANGED
@@ -105,8 +105,12 @@ class Utils {
105
  * @return string Can be empty, e.g. for WP CLI and WP Cronjob when Object Cache is active
106
  */
107
  public static function getCurrentHostname() {
108
- // Check if constant is defined (https://wordpress.org/support/article/changing-the-site-url/#edit-wp-config-php)
109
- if (\defined('WP_SITEURL')) {
 
 
 
 
110
  $site_url = \constant('WP_SITEURL');
111
  } else {
112
  $site_url = self::getOptionRaw('siteurl', site_url());
105
  * @return string Can be empty, e.g. for WP CLI and WP Cronjob when Object Cache is active
106
  */
107
  public static function getCurrentHostname() {
108
+ // Multisite subdomain installations are forced to use the `home_url` option
109
+ // See also https://github.com/WordPress/WordPress/blob/4e4016f61fa40abda4c0a0711496f2ba50a10563/wp-includes/ms-blogs.php#L249
110
+ $isMultisiteSubdomainInstallation =
111
+ is_multisite() && \defined('SUBDOMAIN_INSTALL') && \constant('SUBDOMAIN_INSTALL');
112
+ if (!$isMultisiteSubdomainInstallation && \defined('WP_SITEURL')) {
113
+ // Constant is defined (https://wordpress.org/support/article/changing-the-site-url/#edit-wp-config-php)
114
  $site_url = \constant('WP_SITEURL');
115
  } else {
116
  $site_url = self::getOptionRaw('siteurl', site_url());
vendor/devowl-wp/real-utils/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
6
  ## 1.8.15 (2022-11-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ ## 1.8.16 (2022-11-15)
7
+
8
+ **Note:** This package (@devowl-wp/real-utils) has been updated because a dependency, which is also shipped with this package, has changed.
9
+
10
+
11
+
12
+
13
+
14
  ## 1.8.15 (2022-11-09)
15
 
16
 
vendor/devowl-wp/real-utils/package.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "name": "@devowl-wp/real-utils",
3
- "version": "1.8.15",
4
  "private": true,
5
  "description": "Create cross-selling ads, about page, rating and newsletter input for WP Real plugins.",
6
  "homepage": "https://devowl.io",
@@ -102,7 +102,7 @@
102
  "@devowl-wp/phpcs-config": "^0.1.4",
103
  "@devowl-wp/phpunit-config": "^0.1.4",
104
  "@devowl-wp/ts-config": "^0.1.6",
105
- "@devowl-wp/utils": "^1.12.22",
106
  "@devowl-wp/webpack-config": "^0.2.4",
107
  "@types/grunt": "~0.4.25",
108
  "@types/jest": "~26.0.23",
1
  {
2
  "name": "@devowl-wp/real-utils",
3
+ "version": "1.8.16",
4
  "private": true,
5
  "description": "Create cross-selling ads, about page, rating and newsletter input for WP Real plugins.",
6
  "homepage": "https://devowl.io",
102
  "@devowl-wp/phpcs-config": "^0.1.4",
103
  "@devowl-wp/phpunit-config": "^0.1.4",
104
  "@devowl-wp/ts-config": "^0.1.6",
105
+ "@devowl-wp/utils": "^1.12.23",
106
  "@devowl-wp/webpack-config": "^0.2.4",
107
  "@types/grunt": "~0.4.25",
108
  "@types/jest": "~26.0.23",
vendor/devowl-wp/utils/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
 
 
 
6
  ## 1.12.22 (2022-11-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ ## 1.12.23 (2022-11-15)
7
+
8
+
9
+ ### fix
10
+
11
+ * use POST method to recreate new nonce instead of GET to avoid CDN cache issues (CU-33dwm27)
12
+
13
+
14
+
15
+
16
+
17
  ## 1.12.22 (2022-11-09)
18
 
19
 
vendor/devowl-wp/utils/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var devowlWp_utils;(()=>{"use strict";var t,e={550:(t,e,o)=>{o.r(e),o.d(e,{AbstractCategory:()=>ot,AbstractCategoryCollection:()=>nt,AbstractPost:()=>tt,AbstractPostCollection:()=>et,BaseOptions:()=>n,ClientCollection:()=>H,ClientModel:()=>$,RouteHttpVerb:()=>i,SuspenseChunkTranslation:()=>st,addCorruptRestApi:()=>T,applyQueryString:()=>w,commonRequest:()=>R,commonUrlBuilder:()=>v,createContextFactory:()=>l,createLocalizationFactory:()=>j,createRequestFactory:()=>N,getWebpackPublicPath:()=>a,handleCorrupRestApi:()=>C,locationRestPluginGet:()=>L,nonceDeprecationPool:()=>P,parseResult:()=>O,qs:()=>d,sprintf:()=>q,trailingslashit:()=>s,untrailingslashit:()=>r,useChunkTranslation:()=>rt});class n{constructor(){this.slug=void 0,this.textDomain=void 0,this.version=void 0,this.restUrl=void 0,this.restNamespace=void 0,this.restRoot=void 0,this.restQuery=void 0,this.restNonce=void 0,this.restRecreateNonceEndpoint=void 0,this.publicUrl=void 0,this.chunkFolder=void 0,this.chunks=void 0}static slugCamelCase(t){return t.replace(/-([a-z])/g,(t=>t[1].toUpperCase()))}static getPureSlug(t,e=!1){return e?n.slugCamelCase(t):t}}const r=t=>t.endsWith("/")||t.endsWith("\\")?r(t.slice(0,-1)):t,s=t=>"".concat(r(t),"/"),a=t=>{const e=window[t.replace(/-([a-z])/g,(t=>t[1].toUpperCase()))];return"".concat(e.publicUrl).concat(e.chunkFolder,"/")};var i,c=o(363);function l(t){const e=(0,c.createContext)(t);return{StoreContext:e,StoreProvider:({children:o})=>React.createElement(e.Provider,{value:t},o),useStores:()=>(0,c.useContext)(e)}}!function(t){t.GET="GET",t.POST="POST",t.PUT="PUT",t.DELETE="DELETE",t.PATCH="PATCH"}(i||(i={}));var h=o(11),u=o.n(h),d=o(282),p=o(840),f=o.n(p),m=o(25),y=o.n(m);function w(t,e,o){return t.search=d.stringify(o?u().all([d.parse(t.search),...e]):e,!0),t}function v({location:t,params:e={},nonce:o=!0,options:n,cookieValueAsParam:a}){const c=new URL(n.restRoot),l=d.parse(c.search),h=l.rest_route||c.pathname,u=[];let p=t.path.replace(/:([A-Za-z0-9-_]+)/g,((t,o)=>(u.push(o),e[o])));const m={};for(const t of Object.keys(e))-1===u.indexOf(t)&&(m[t]=e[t]);a&&(m._httpCookieInvalidate=y()(JSON.stringify(a.map(f().get))));const{search:v,pathname:b}=new URL(t.path,window.location.href);if(v){const t=d.parse(v);for(const e in t)m[e]=t[e];p=b}c.protocol=window.location.protocol;const g=s(h)+r(t.namespace||n.restNamespace)+p;return l.rest_route?l.rest_route=g:c.pathname=g,o&&n.restNonce&&(l._wpnonce=n.restNonce),w(c,l),["wp-json/","rest_route="].filter((t=>c.toString().indexOf(t)>-1)).length>0&&t.method&&t.method!==i.GET&&w(c,[{_method:t.method}],!0),w(c,[n.restQuery,m],!0),c.toString()}const b={},g={};async function P(t,e){if(void 0!==e){const o=g[t]||new Promise((async(o,n)=>{try{const r=await window.fetch(e);if(r.ok){const e=await r.text();t===e?n():(b[t]=e,o(e))}else n()}catch(t){n()}}));return g[t]=o,o}{if(void 0===t)return;await Promise.all(Object.values(g));let e=t;for(;b[e]&&(e=b[e],b[e]!==t););return Promise.resolve(e)}}const k="notice-corrupt-rest-api";async function E(t,e=(async()=>{})){const o=document.getElementById(k);if(o){if(o.querySelector("ul").innerText.indexOf(t)>-1)return;try{await e()}catch(e){o.style.display="block";const n=document.createElement("li");n.innerHTML="<code>".concat(t,"</code>"),o.childNodes[1].appendChild(n),o.scrollIntoView({behavior:"smooth",block:"end",inline:"nearest"})}}}function T({method:t},e){t===i.GET&&(e?E(e,(()=>{throw new Error})):(window.detectCorruptRestApiFailed=(window.detectCorruptRestApiFailed||0)+1,window.dispatchEvent(new CustomEvent(k))))}function C(t,e=!1){window.detectCorruptRestApiFailed=window.detectCorruptRestApiFailed||0;const o=async()=>{if(window.detectCorruptRestApiFailed>0||e)for(const e of Object.keys(t))E(e,t[e])};let n;const r=()=>{clearTimeout(n),n=setTimeout(o,1e3)};r(),window.addEventListener(k,r)}async function O(t,e,o){if(204===e.status)return{};const n=e.clone();try{return await e.json()}catch(e){const r=await n.text();if(""===r&&[i.DELETE,i.PUT].indexOf(o)>-1)return;let s;console.warn("The response of ".concat(t," contains unexpected JSON, try to resolve the JSON line by line..."),{body:r});for(const t of r.split("\n"))if(t.startsWith("[")||t.startsWith("{"))try{return JSON.parse(t)}catch(t){s=t}throw s}}var x=o(916),_=o.n(x);async function R({location:t,options:e,request:o,params:n,settings:r={},cookieValueAsParam:s,multipart:a=!1,sendRestNonce:c=!0}){const l=t.namespace||e.restNamespace,h=v({location:t,params:n,nonce:!1,options:e,cookieValueAsParam:s});["wp-json/","rest_route="].filter((t=>h.indexOf(t)>-1)).length>0&&t.method&&t.method!==i.GET?r.method=i.POST:r.method=t.method||i.GET;const d=new URL(h),p=-1===["HEAD","GET"].indexOf(r.method);!p&&o&&w(d,[o],!0);const f=d.toString();let m;p&&(m=a?_()(o,"boolean"==typeof a?{}:a):JSON.stringify(o));const y=await P(e.restNonce),b=void 0!==y,g=u().all([r,{headers:{..."string"==typeof m?{"Content-Type":"application/json;charset=utf-8"}:{},...b&&c?{"X-WP-Nonce":y}:{},Accept:"application/json, */*;q=0.1"}}]);let k;g.body=m;try{k=await window.fetch(f,g)}catch(t){throw T(r,l),console.error(t),t}if(!k.ok){let s,i=!1;try{if(s=await O(f,k,t.method),"private_site"===s.code&&403===k.status&&b&&!c&&(i=!0),"rest_cookie_invalid_nonce"===s.code&&b){const{restRecreateNonceEndpoint:t}=e;try{await P(y,t),i=!0}catch(t){}}}catch(t){}if(i)return await R({location:t,options:e,multipart:a,params:n,request:o,sendRestNonce:!0,settings:r});T(r);const l=k;throw l.responseJSON=s,l}return O(f,k,t.method)}function N(t){return{urlBuilder:e=>v({...e,options:{restNamespace:t.restNamespace,restNonce:t.restNonce,restQuery:t.restQuery,restRoot:t.restRoot}}),request:e=>R({...e,options:{restNamespace:t.restNamespace,restNonce:t.restNonce,restQuery:t.restQuery,restRoot:t.restRoot,restRecreateNonceEndpoint:t.restRecreateNonceEndpoint}})}}var S=o(449);const D=wp.i18n,F=wp;var A=o.n(F);function q(t,...e){return D.sprintf(t,...e)}function j(t){const{wpi18nLazy:e}=window;if(e&&e[t]&&A()&&A().i18n)for(const o of e[t])A().i18n.setLocaleData(o,t);return{_n:function(e,o,n,...r){return q(D._n(e,o,n,t),...r)},_nx:function(e,o,n,r,...s){return q(D._nx(e,o,r,n,t),...s)},_x:function(e,o,...n){return q(D._x(e,o,t),...n)},__:function(e,...o){return q(D.__(e,t),...o)},_i:function(t,e){return(0,S.Z)({mixedString:t,components:e})}}}const L={path:"/plugin",method:i.GET};var U=o(921),z=o(888);const Z=mobx;var G,W,I,M,Q;let H=(Q=M=class{constructor(){(0,U.Z)(this,"entries",W,this),(0,U.Z)(this,"busy",I,this),this.annotated=void 0,this.get=(0,Z.flow)((function*(t){const{request:e,params:o,clear:n=!1}=t||{};this.busy=!0;try{const{path:t,namespace:r}=this.annotated,s=yield this.annotated.request({location:{path:t,method:i.GET,namespace:r},request:e,params:o});n&&this.entries.clear();for(const t of s){const e=this.instance(t),o=this.entries.get(e.key);o?o.data=e.data:this.entries.set(e.key,e)}}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.getSingle=(0,Z.flow)((function*(t){if(!this.annotated.singlePath)throw new Error("There is no getSingle method allowed");const{request:e,params:o}=t||{};this.busy=!0;try{const{singlePath:t,namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:t,method:i.GET,namespace:n},request:e,params:o}),s=this.instance(r);this.entries.set(s.key,s)}catch(t){throw console.log(t),t}finally{this.busy=!1}})),setTimeout((()=>{this.annotated||console.error("You have not used the @ClientCollection.annotate annoation together with this class!")}),0)}},M.annotate=t=>e=>class extends e{constructor(...e){super(...e),this.annotated=t}},G=Q,W=(0,z.Z)(G.prototype,"entries",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),I=(0,z.Z)(G.prototype,"busy",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),G);var J,V,B,Y,X,K;let $=(K=X=class{get key(){var t;return null===(t=this.data)||void 0===t?void 0:t[this.annotated.keyId]}constructor(t,e={}){(0,U.Z)(this,"data",V,this),(0,U.Z)(this,"collection",B,this),(0,U.Z)(this,"busy",Y,this),this.annotated=void 0,this.persist=(0,Z.flow)((function*(t){if(!this.annotated.create)throw new Error("There is no persist method allowed");this.busy=!0;try{const{create:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.POST,namespace:n},request:this.transformDataForPersist(),params:t||{}});this.fromResponse(r),this.collection.entries.set(this.key,this),this.afterPersist()}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.patch=(0,Z.flow)((function*(t){if(!this.annotated.patch)throw new Error("There is no patch method allowed");this.busy=!0;try{const{patch:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.PATCH,namespace:n},request:this.transformDataForPatch(),params:{[this.annotated.keyId]:this.key,...t||{}}});this.fromResponse(r),this.afterPatch()}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.delete=(0,Z.flow)((function*(t){if(!this.annotated.delete)throw new Error("There is no delete method allowed");this.busy=!0;try{const{delete:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.DELETE,namespace:n},params:{[this.annotated.keyId]:this.key,...t||{}}});return this.collection.entries.delete(this.key),this.afterDelete(),r}catch(t){throw console.log(t),t}finally{this.busy=!1}})),setTimeout((()=>{this.annotated||console.error("You have not used the @ClientModel.annotate annoation together with this class!")}),0),(0,Z.runInAction)((()=>{this.collection=t,this.data=e}))}fromResponse(t){return(0,Z.set)(this.data,t),this}transformDataForPersist(){return this.data}transformDataForPatch(){throw new Error("If you want to use patch method, you need to implement transformDataForPatch!")}afterPersist(){}afterPatch(){}afterDelete(){}},X.annotate=t=>e=>class extends e{constructor(...e){super(...e),this.annotated=t}},J=K,V=(0,z.Z)(J.prototype,"data",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),B=(0,z.Z)(J.prototype,"collection",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=(0,z.Z)(J.prototype,"busy",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,z.Z)(J.prototype,"key",[Z.computed],Object.getOwnPropertyDescriptor(J.prototype,"key"),J.prototype),J);class tt extends ${transformDataForPersist(){var t,e;const o={...super.transformDataForPersist()};return o.title=null===(t=o.title)||void 0===t?void 0:t.rendered,o.content=null===(e=o.content)||void 0===e?void 0:e.rendered,delete o._links,delete o.link,o}transformDataForPatch(){return this.transformDataForPersist()}}class et extends H{}class ot extends ${transformDataForPersist(){const t={...super.transformDataForPersist()};return delete t._links,delete t.link,t}transformDataForPatch(){return this.transformDataForPersist()}}class nt extends H{}function rt(t,{chunks:e,publicUrl:o,textDomain:n,version:r}){const s=e[t.split("?")[0]],a=!!s,[i,l]=(0,c.useState)(!1),h=(0,c.useCallback)((async t=>{const e=window;e.wpi18nLazy=e.wpi18nLazy||{},e.wpi18nLazy.chunkUrls=e.wpi18nLazy.chunkUrls||[];const{chunkUrls:s}=e.wpi18nLazy,i="".concat(o,"languages/json/").concat(n,"-").concat(t,".json");if(a&&-1===s.indexOf(i)){s.push(i);try{const t=await window.fetch("".concat(i,"?ver=").concat(r)),{locale_data:{messages:e}}=await t.json();A().i18n.setLocaleData(e,n)}catch{}}}),[o,n]);return(0,c.useEffect)((()=>{a?Promise.all(s.map(h)).then((()=>{l(!0)})):l(!0)}),[a,h]),i}const st=({children:t,chunkFile:e,fallback:o,options:n})=>{const r=rt(e,n());return React.createElement(React.Fragment,null,r?t:o)}},363:t=>{t.exports=React}},o={};function n(t){var r=o[t];if(void 0!==r)return r.exports;var s=o[t]={exports:{}};return e[t].call(s.exports,s,s.exports,n),s.exports}n.m=e,t=[],n.O=(e,o,r,s)=>{if(!o){var a=1/0;for(h=0;h<t.length;h++){for(var[o,r,s]=t[h],i=!0,c=0;c<o.length;c++)(!1&s||a>=s)&&Object.keys(n.O).every((t=>n.O[t](o[c])))?o.splice(c--,1):(i=!1,s<a&&(a=s));if(i){t.splice(h--,1);var l=r();void 0!==l&&(e=l)}}return e}s=s||0;for(var h=t.length;h>0&&t[h-1][2]>s;h--)t[h]=t[h-1];t[h]=[o,r,s]},n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t={826:0};n.O.j=e=>0===t[e];var e=(e,o)=>{var r,s,[a,i,c]=o,l=0;if(a.some((e=>0!==t[e]))){for(r in i)n.o(i,r)&&(n.m[r]=i[r]);if(c)var h=c(n)}for(e&&e(o);l<a.length;l++)s=a[l],n.o(t,s)&&t[s]&&t[s][0](),t[s]=0;return n.O(h)},o=self.webpackChunkdevowlWp_utils=self.webpackChunkdevowlWp_utils||[];o.forEach(e.bind(null,0)),o.push=e.bind(null,o.push.bind(o))})();var r=n.O(void 0,[764],(()=>n(550)));r=n.O(r),devowlWp_utils=r})();
2
  //# sourceMappingURL=index.js.map
1
+ var devowlWp_utils;(()=>{"use strict";var t,e={550:(t,e,o)=>{o.r(e),o.d(e,{AbstractCategory:()=>ot,AbstractCategoryCollection:()=>nt,AbstractPost:()=>tt,AbstractPostCollection:()=>et,BaseOptions:()=>n,ClientCollection:()=>H,ClientModel:()=>$,RouteHttpVerb:()=>i,SuspenseChunkTranslation:()=>st,addCorruptRestApi:()=>T,applyQueryString:()=>w,commonRequest:()=>R,commonUrlBuilder:()=>v,createContextFactory:()=>l,createLocalizationFactory:()=>j,createRequestFactory:()=>S,getWebpackPublicPath:()=>a,handleCorrupRestApi:()=>C,locationRestPluginGet:()=>L,nonceDeprecationPool:()=>P,parseResult:()=>O,qs:()=>d,sprintf:()=>q,trailingslashit:()=>s,untrailingslashit:()=>r,useChunkTranslation:()=>rt});class n{constructor(){this.slug=void 0,this.textDomain=void 0,this.version=void 0,this.restUrl=void 0,this.restNamespace=void 0,this.restRoot=void 0,this.restQuery=void 0,this.restNonce=void 0,this.restRecreateNonceEndpoint=void 0,this.publicUrl=void 0,this.chunkFolder=void 0,this.chunks=void 0}static slugCamelCase(t){return t.replace(/-([a-z])/g,(t=>t[1].toUpperCase()))}static getPureSlug(t,e=!1){return e?n.slugCamelCase(t):t}}const r=t=>t.endsWith("/")||t.endsWith("\\")?r(t.slice(0,-1)):t,s=t=>"".concat(r(t),"/"),a=t=>{const e=window[t.replace(/-([a-z])/g,(t=>t[1].toUpperCase()))];return"".concat(e.publicUrl).concat(e.chunkFolder,"/")};var i,c=o(363);function l(t){const e=(0,c.createContext)(t);return{StoreContext:e,StoreProvider:({children:o})=>React.createElement(e.Provider,{value:t},o),useStores:()=>(0,c.useContext)(e)}}!function(t){t.GET="GET",t.POST="POST",t.PUT="PUT",t.DELETE="DELETE",t.PATCH="PATCH"}(i||(i={}));var h=o(11),u=o.n(h),d=o(282),p=o(840),f=o.n(p),m=o(25),y=o.n(m);function w(t,e,o){return t.search=d.stringify(o?u().all([d.parse(t.search),...e]):e,!0),t}function v({location:t,params:e={},nonce:o=!0,options:n,cookieValueAsParam:a}){const c=new URL(n.restRoot),l=d.parse(c.search),h=l.rest_route||c.pathname,u=[];let p=t.path.replace(/:([A-Za-z0-9-_]+)/g,((t,o)=>(u.push(o),e[o])));const m={};for(const t of Object.keys(e))-1===u.indexOf(t)&&(m[t]=e[t]);a&&(m._httpCookieInvalidate=y()(JSON.stringify(a.map(f().get))));const{search:v,pathname:b}=new URL(t.path,window.location.href);if(v){const t=d.parse(v);for(const e in t)m[e]=t[e];p=b}c.protocol=window.location.protocol;const g=s(h)+r(t.namespace||n.restNamespace)+p;return l.rest_route?l.rest_route=g:c.pathname=g,o&&n.restNonce&&(l._wpnonce=n.restNonce),w(c,l),["wp-json/","rest_route="].filter((t=>c.toString().indexOf(t)>-1)).length>0&&t.method&&t.method!==i.GET&&w(c,[{_method:t.method}],!0),w(c,[n.restQuery,m],!0),c.toString()}const b={},g={};async function P(t,e){if(void 0!==e){const o=g[t]||new Promise((async(o,n)=>{try{const r=await window.fetch(e,{method:"POST"});if(r.ok){const e=await r.text();t===e?n():(b[t]=e,o(e))}else n()}catch(t){n()}}));return g[t]=o,o}{if(void 0===t)return;await Promise.all(Object.values(g));let e=t;for(;b[e]&&(e=b[e],b[e]!==t););return Promise.resolve(e)}}const k="notice-corrupt-rest-api";async function E(t,e=(async()=>{})){const o=document.getElementById(k);if(o){if(o.querySelector("ul").innerText.indexOf(t)>-1)return;try{await e()}catch(e){o.style.display="block";const n=document.createElement("li");n.innerHTML="<code>".concat(t,"</code>"),o.childNodes[1].appendChild(n),o.scrollIntoView({behavior:"smooth",block:"end",inline:"nearest"})}}}function T({method:t},e){t===i.GET&&(e?E(e,(()=>{throw new Error})):(window.detectCorruptRestApiFailed=(window.detectCorruptRestApiFailed||0)+1,window.dispatchEvent(new CustomEvent(k))))}function C(t,e=!1){window.detectCorruptRestApiFailed=window.detectCorruptRestApiFailed||0;const o=async()=>{if(window.detectCorruptRestApiFailed>0||e)for(const e of Object.keys(t))E(e,t[e])};let n;const r=()=>{clearTimeout(n),n=setTimeout(o,1e3)};r(),window.addEventListener(k,r)}async function O(t,e,o){if(204===e.status)return{};const n=e.clone();try{return await e.json()}catch(e){const r=await n.text();if(""===r&&[i.DELETE,i.PUT].indexOf(o)>-1)return;let s;console.warn("The response of ".concat(t," contains unexpected JSON, try to resolve the JSON line by line..."),{body:r});for(const t of r.split("\n"))if(t.startsWith("[")||t.startsWith("{"))try{return JSON.parse(t)}catch(t){s=t}throw s}}var x=o(916),_=o.n(x);async function R({location:t,options:e,request:o,params:n,settings:r={},cookieValueAsParam:s,multipart:a=!1,sendRestNonce:c=!0}){const l=t.namespace||e.restNamespace,h=v({location:t,params:n,nonce:!1,options:e,cookieValueAsParam:s});["wp-json/","rest_route="].filter((t=>h.indexOf(t)>-1)).length>0&&t.method&&t.method!==i.GET?r.method=i.POST:r.method=t.method||i.GET;const d=new URL(h),p=-1===["HEAD","GET"].indexOf(r.method);!p&&o&&w(d,[o],!0);const f=d.toString();let m;p&&(m=a?_()(o,"boolean"==typeof a?{}:a):JSON.stringify(o));const y=await P(e.restNonce),b=void 0!==y,g=u().all([r,{headers:{..."string"==typeof m?{"Content-Type":"application/json;charset=utf-8"}:{},...b&&c?{"X-WP-Nonce":y}:{},Accept:"application/json, */*;q=0.1"}}]);let k;g.body=m;try{k=await window.fetch(f,g)}catch(t){throw T(r,l),console.error(t),t}if(!k.ok){let s,i=!1;try{if(s=await O(f,k,t.method),"private_site"===s.code&&403===k.status&&b&&!c&&(i=!0),"rest_cookie_invalid_nonce"===s.code&&b){const{restRecreateNonceEndpoint:t}=e;try{await P(y,t),i=!0}catch(t){}}}catch(t){}if(i)return await R({location:t,options:e,multipart:a,params:n,request:o,sendRestNonce:!0,settings:r});T(r);const l=k;throw l.responseJSON=s,l}return O(f,k,t.method)}function S(t){return{urlBuilder:e=>v({...e,options:{restNamespace:t.restNamespace,restNonce:t.restNonce,restQuery:t.restQuery,restRoot:t.restRoot}}),request:e=>R({...e,options:{restNamespace:t.restNamespace,restNonce:t.restNonce,restQuery:t.restQuery,restRoot:t.restRoot,restRecreateNonceEndpoint:t.restRecreateNonceEndpoint}})}}var N=o(449);const D=wp.i18n,F=wp;var A=o.n(F);function q(t,...e){return D.sprintf(t,...e)}function j(t){const{wpi18nLazy:e}=window;if(e&&e[t]&&A()&&A().i18n)for(const o of e[t])A().i18n.setLocaleData(o,t);return{_n:function(e,o,n,...r){return q(D._n(e,o,n,t),...r)},_nx:function(e,o,n,r,...s){return q(D._nx(e,o,r,n,t),...s)},_x:function(e,o,...n){return q(D._x(e,o,t),...n)},__:function(e,...o){return q(D.__(e,t),...o)},_i:function(t,e){return(0,N.Z)({mixedString:t,components:e})}}}const L={path:"/plugin",method:i.GET};var U=o(921),z=o(888);const Z=mobx;var G,W,I,M,Q;let H=(Q=M=class{constructor(){(0,U.Z)(this,"entries",W,this),(0,U.Z)(this,"busy",I,this),this.annotated=void 0,this.get=(0,Z.flow)((function*(t){const{request:e,params:o,clear:n=!1}=t||{};this.busy=!0;try{const{path:t,namespace:r}=this.annotated,s=yield this.annotated.request({location:{path:t,method:i.GET,namespace:r},request:e,params:o});n&&this.entries.clear();for(const t of s){const e=this.instance(t),o=this.entries.get(e.key);o?o.data=e.data:this.entries.set(e.key,e)}}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.getSingle=(0,Z.flow)((function*(t){if(!this.annotated.singlePath)throw new Error("There is no getSingle method allowed");const{request:e,params:o}=t||{};this.busy=!0;try{const{singlePath:t,namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:t,method:i.GET,namespace:n},request:e,params:o}),s=this.instance(r);this.entries.set(s.key,s)}catch(t){throw console.log(t),t}finally{this.busy=!1}})),setTimeout((()=>{this.annotated||console.error("You have not used the @ClientCollection.annotate annoation together with this class!")}),0)}},M.annotate=t=>e=>class extends e{constructor(...e){super(...e),this.annotated=t}},G=Q,W=(0,z.Z)(G.prototype,"entries",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Map}}),I=(0,z.Z)(G.prototype,"busy",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),G);var J,V,B,Y,X,K;let $=(K=X=class{get key(){var t;return null===(t=this.data)||void 0===t?void 0:t[this.annotated.keyId]}constructor(t,e={}){(0,U.Z)(this,"data",V,this),(0,U.Z)(this,"collection",B,this),(0,U.Z)(this,"busy",Y,this),this.annotated=void 0,this.persist=(0,Z.flow)((function*(t){if(!this.annotated.create)throw new Error("There is no persist method allowed");this.busy=!0;try{const{create:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.POST,namespace:n},request:this.transformDataForPersist(),params:t||{}});this.fromResponse(r),this.collection.entries.set(this.key,this),this.afterPersist()}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.patch=(0,Z.flow)((function*(t){if(!this.annotated.patch)throw new Error("There is no patch method allowed");this.busy=!0;try{const{patch:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.PATCH,namespace:n},request:this.transformDataForPatch(),params:{[this.annotated.keyId]:this.key,...t||{}}});this.fromResponse(r),this.afterPatch()}catch(t){throw console.log(t),t}finally{this.busy=!1}})),this.delete=(0,Z.flow)((function*(t){if(!this.annotated.delete)throw new Error("There is no delete method allowed");this.busy=!0;try{const{delete:{path:e,method:o},namespace:n}=this.annotated,r=yield this.annotated.request({location:{path:e,method:o||i.DELETE,namespace:n},params:{[this.annotated.keyId]:this.key,...t||{}}});return this.collection.entries.delete(this.key),this.afterDelete(),r}catch(t){throw console.log(t),t}finally{this.busy=!1}})),setTimeout((()=>{this.annotated||console.error("You have not used the @ClientModel.annotate annoation together with this class!")}),0),(0,Z.runInAction)((()=>{this.collection=t,this.data=e}))}fromResponse(t){return(0,Z.set)(this.data,t),this}transformDataForPersist(){return this.data}transformDataForPatch(){throw new Error("If you want to use patch method, you need to implement transformDataForPatch!")}afterPersist(){}afterPatch(){}afterDelete(){}},X.annotate=t=>e=>class extends e{constructor(...e){super(...e),this.annotated=t}},J=K,V=(0,z.Z)(J.prototype,"data",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return{}}}),B=(0,z.Z)(J.prototype,"collection",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=(0,z.Z)(J.prototype,"busy",[Z.observable],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),(0,z.Z)(J.prototype,"key",[Z.computed],Object.getOwnPropertyDescriptor(J.prototype,"key"),J.prototype),J);class tt extends ${transformDataForPersist(){var t,e;const o={...super.transformDataForPersist()};return o.title=null===(t=o.title)||void 0===t?void 0:t.rendered,o.content=null===(e=o.content)||void 0===e?void 0:e.rendered,delete o._links,delete o.link,o}transformDataForPatch(){return this.transformDataForPersist()}}class et extends H{}class ot extends ${transformDataForPersist(){const t={...super.transformDataForPersist()};return delete t._links,delete t.link,t}transformDataForPatch(){return this.transformDataForPersist()}}class nt extends H{}function rt(t,{chunks:e,publicUrl:o,textDomain:n,version:r}){const s=e[t.split("?")[0]],a=!!s,[i,l]=(0,c.useState)(!1),h=(0,c.useCallback)((async t=>{const e=window;e.wpi18nLazy=e.wpi18nLazy||{},e.wpi18nLazy.chunkUrls=e.wpi18nLazy.chunkUrls||[];const{chunkUrls:s}=e.wpi18nLazy,i="".concat(o,"languages/json/").concat(n,"-").concat(t,".json");if(a&&-1===s.indexOf(i)){s.push(i);try{const t=await window.fetch("".concat(i,"?ver=").concat(r)),{locale_data:{messages:e}}=await t.json();A().i18n.setLocaleData(e,n)}catch{}}}),[o,n]);return(0,c.useEffect)((()=>{a?Promise.all(s.map(h)).then((()=>{l(!0)})):l(!0)}),[a,h]),i}const st=({children:t,chunkFile:e,fallback:o,options:n})=>{const r=rt(e,n());return React.createElement(React.Fragment,null,r?t:o)}},363:t=>{t.exports=React}},o={};function n(t){var r=o[t];if(void 0!==r)return r.exports;var s=o[t]={exports:{}};return e[t].call(s.exports,s,s.exports,n),s.exports}n.m=e,t=[],n.O=(e,o,r,s)=>{if(!o){var a=1/0;for(h=0;h<t.length;h++){for(var[o,r,s]=t[h],i=!0,c=0;c<o.length;c++)(!1&s||a>=s)&&Object.keys(n.O).every((t=>n.O[t](o[c])))?o.splice(c--,1):(i=!1,s<a&&(a=s));if(i){t.splice(h--,1);var l=r();void 0!==l&&(e=l)}}return e}s=s||0;for(var h=t.length;h>0&&t[h-1][2]>s;h--)t[h]=t[h-1];t[h]=[o,r,s]},n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t={826:0};n.O.j=e=>0===t[e];var e=(e,o)=>{var r,s,[a,i,c]=o,l=0;if(a.some((e=>0!==t[e]))){for(r in i)n.o(i,r)&&(n.m[r]=i[r]);if(c)var h=c(n)}for(e&&e(o);l<a.length;l++)s=a[l],n.o(t,s)&&t[s]&&t[s][0](),t[s]=0;return n.O(h)},o=self.webpackChunkdevowlWp_utils=self.webpackChunkdevowlWp_utils||[];o.forEach(e.bind(null,0)),o.push=e.bind(null,o.push.bind(o))})();var r=n.O(void 0,[764],(()=>n(550)));r=n.O(r),devowlWp_utils=r})();
2
  //# sourceMappingURL=index.js.map
vendor/devowl-wp/utils/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///./lib/options.tsx","webpack:///./lib/helpers.tsx","webpack:///./lib/factory/ajax/routeHttpVerbEnum.tsx","webpack:///./lib/factory/context.tsx","webpack:///./lib/factory/ajax/commonUrlBuilder.tsx","webpack:///./lib/factory/ajax/nonceDeprecationPool.tsx","webpack:///./lib/factory/ajax/corruptRestApi.tsx","webpack:///./lib/factory/ajax/parseResult.tsx","webpack:///./lib/factory/ajax/commonRequest.tsx","webpack:///./lib/factory/ajax/createRequestFactory.tsx","webpack:///external var \"wp['i18n']\"","webpack:///external var \"wp\"","webpack:///./lib/factory/i18n.tsx","webpack:///./lib/wp-api/rest.plugin.get.tsx","webpack:///external var \"mobx\"","webpack:///./lib/wp-api/objects/clientCollection.tsx","webpack:///./lib/wp-api/objects/clientModel.tsx","webpack:///./lib/wp-api/objects/post/abstractPost.tsx","webpack:///./lib/wp-api/objects/post/abstractPostCollection.tsx","webpack:///./lib/wp-api/objects/post/abstractCategory.tsx","webpack:///./lib/wp-api/objects/post/abstractCategoryCollection.tsx","webpack:///./lib/hooks/useChunkTranslation.tsx","webpack:///./lib/components/suspenseChunkTranslation.tsx","webpack:///external var \"React\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * See PHP file inc/Assets.php.\n */\nclass BaseOptions {\n constructor() {\n this.slug = void 0;\n this.textDomain = void 0;\n this.version = void 0;\n this.restUrl = void 0;\n this.restNamespace = void 0;\n this.restRoot = void 0;\n this.restQuery = void 0;\n this.restNonce = void 0;\n this.restRecreateNonceEndpoint = void 0;\n this.publicUrl = void 0;\n this.chunkFolder = void 0;\n this.chunks = void 0;\n }\n\n /**\n * Convert a slug like \"my-plugin\" to \"myPlugin\". This can\n * be useful for library naming (window[\"\"] is bad because the hyphens).\n */\n static slugCamelCase(slug) {\n return slug.replace(/-([a-z])/g, g => g[1].toUpperCase());\n }\n /**\n * Get the slug from the current process (webpack) instead of the PHP plugin output.\n * For some cases you need to use that.\n */\n\n\n static getPureSlug(slug, camelCase = false) {\n return camelCase ? BaseOptions.slugCamelCase(slug) : slug;\n }\n\n}\n\nexport { BaseOptions };","const untrailingslashit = str => str.endsWith(\"/\") || str.endsWith(\"\\\\\") ? untrailingslashit(str.slice(0, -1)) : str;\n\nconst trailingslashit = str => \"\".concat(untrailingslashit(str), \"/\"); // Allows to make an interface extension and make some properties optional (https://git.io/JeK6J)\n\n\n/**\n * You need to manually put the following code snippet in each of your entry points to enable\n * \"on the fly\" public path for chunks:\n *\n * ```\n * __webpack_public_path__ = getWebpackPublicPath(process.env.slug);\n * ```\n *\n * @see https://webpack.js.org/guides/public-path/#on-the-fly\n */\nconst getWebpackPublicPath = slug => {\n const options = window[slug.replace(/-([a-z])/g, g => g[1].toUpperCase())];\n return \"\".concat(options.publicUrl).concat(options.chunkFolder, \"/\");\n};\n\nexport { untrailingslashit, trailingslashit, getWebpackPublicPath };","var RouteHttpVerb;\n\n(function (RouteHttpVerb) {\n RouteHttpVerb[\"GET\"] = \"GET\";\n RouteHttpVerb[\"POST\"] = \"POST\";\n RouteHttpVerb[\"PUT\"] = \"PUT\";\n RouteHttpVerb[\"DELETE\"] = \"DELETE\";\n RouteHttpVerb[\"PATCH\"] = \"PATCH\";\n})(RouteHttpVerb || (RouteHttpVerb = {}));\n\nexport { RouteHttpVerb };","import { createContext, useContext } from \"react\";\n/* istanbul ignore next: no logic in this factory! */\n\n/**\n * Create context relevant objects to use within React.\n *\n * @param object\n * @returns\n */\n\nfunction createContextFactory(object) {\n /**\n * MobX stores collection\n */\n const StoreContext = /*#__PURE__*/createContext(object);\n /**\n * MobX HOC to get the context via hook.\n *\n * @param children\n */\n\n const StoreProvider = ({\n children\n }) => /*#__PURE__*/React.createElement(StoreContext.Provider, {\n value: object\n }, children);\n /**\n * Get all the MobX stores via a single hook.\n */\n\n\n const useStores = () => useContext(StoreContext);\n\n return {\n StoreContext,\n StoreProvider,\n useStores\n };\n}\n\nexport { createContextFactory };","import { trailingslashit, untrailingslashit } from \"../../helpers\";\nimport { RouteHttpVerb } from \".\";\nimport deepMerge from \"deepmerge\";\nimport qs from \"querystringify\";\nimport Cookie from \"js-cookie\";\nimport sha1 from \"sha-1\";\n\nfunction applyQueryString(url, query, merge) {\n url.search = qs.stringify(merge ? deepMerge.all([qs.parse(url.search), ...query]) : query, true);\n return url;\n}\n/**\n * Build an URL for a specific scheme.\n *\n * @param param0\n */\n\n\nfunction commonUrlBuilder({\n location,\n params = {},\n nonce = true,\n options,\n cookieValueAsParam\n}) {\n const apiUrl = new URL(options.restRoot);\n const query = qs.parse(apiUrl.search);\n const permalinkPath = query.rest_route || apiUrl.pathname; // Determine path from permalink settings\n // Find dynamic parameters from URL bindings (like /user/:id)\n\n const foundParams = [];\n let path = location.path.replace(/:([A-Za-z0-9-_]+)/g, (match, group) => {\n foundParams.push(group);\n return params[group];\n });\n const getParams = {}; // Find undeclared body params (which are not bind above) and add it to GET query\n\n for (const checkParam of Object.keys(params)) {\n if (foundParams.indexOf(checkParam) === -1) {\n getParams[checkParam] = params[checkParam]; // We do not need `encodeURIComponent` as it is supported by `querystringify` already\n }\n } // Calculate invalidator for cookie values\n\n\n if (cookieValueAsParam) {\n getParams._httpCookieInvalidate = sha1(JSON.stringify(cookieValueAsParam.map(Cookie.get)));\n } // Find parameters from passed location\n\n\n const {\n search: pathSearch,\n pathname: fixedPathName\n } = new URL(location.path, window.location.href);\n\n if (pathSearch) {\n const parsed = qs.parse(pathSearch);\n\n for (const pathSearchEntry in parsed) {\n getParams[pathSearchEntry] = parsed[pathSearchEntry];\n }\n\n path = fixedPathName;\n } // Force protocol from parent location\n\n\n apiUrl.protocol = window.location.protocol; // Set path depending on permalink settings\n\n const usePath = trailingslashit(permalinkPath) + untrailingslashit(location.namespace || options.restNamespace) + path;\n\n if (query.rest_route) {\n query.rest_route = usePath; // eslint-disable-line @typescript-eslint/naming-convention\n } else {\n apiUrl.pathname = usePath; // Set path\n } // Append WordPress REST nonce\n\n\n if (nonce && options.restNonce) {\n query._wpnonce = options.restNonce;\n } // Determine if non-GET verbs should always use `POST`\n\n\n applyQueryString(apiUrl, query);\n\n if ([\"wp-json/\", \"rest_route=\"].filter(s => apiUrl.toString().indexOf(s) > -1).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n applyQueryString(apiUrl, [{\n _method: location.method\n }], true);\n } // Build final search\n\n\n applyQueryString(apiUrl, [options.restQuery, getParams], true);\n return apiUrl.toString();\n}\n\nexport { commonUrlBuilder, applyQueryString, qs };","const pool = {};\nconst recreateFetchPool = {};\n/**\n * A REST nonce in WordPress is only valid for 12 hours (can be configured). However, if it gets\n * invalid, the REST endpoints return a `403` error which signals us, we should recreate the nonce.\n * To avoid multiple recreations, we memorize the newly created nonce in a pool.\n */\n\nasync function nonceDeprecationPool(nonce, restRecreateNonceEndpoint) {\n if (typeof restRecreateNonceEndpoint !== \"undefined\") {\n const resultPromise = // Reuse already sent request\n recreateFetchPool[nonce] || new Promise( // eslint-disable-next-line no-async-promise-executor\n async (resolve, reject) => {\n try {\n const recreateFetch = await window.fetch(restRecreateNonceEndpoint);\n\n if (recreateFetch.ok) {\n const newNonce = await recreateFetch.text();\n\n if (nonce === newNonce) {\n reject();\n } else {\n pool[nonce] = newNonce;\n resolve(newNonce);\n }\n } else {\n reject();\n }\n } catch (e) {\n reject();\n }\n });\n recreateFetchPool[nonce] = resultPromise;\n return resultPromise;\n } else {\n if (typeof nonce === \"undefined\") {\n return undefined;\n } // Wait until all nonces are refreshed\n\n\n await Promise.all(Object.values(recreateFetchPool));\n let returnNonce = nonce;\n\n while (pool[returnNonce]) {\n returnNonce = pool[returnNonce];\n\n if (pool[returnNonce] === nonce) {\n break;\n }\n }\n\n return Promise.resolve(returnNonce);\n }\n}\n\nexport { nonceDeprecationPool };","import { RouteHttpVerb } from \".\";\nconst NOTICE_ID = \"notice-corrupt-rest-api\"; // eslint-disable-next-line @typescript-eslint/no-empty-function\n\nasync function addToNotice(namespace, onlyWhen = async () => {}) {\n const notice = document.getElementById(NOTICE_ID); // Only in backend and when a corrupt REST API detected\n\n if (notice) {\n // Already shown as \"defect\"?\n if (notice.querySelector(\"ul\").innerText.indexOf(namespace) > -1) {\n return;\n }\n\n try {\n await onlyWhen();\n } catch (e) {\n notice.style.display = \"block\";\n const li = document.createElement(\"li\");\n li.innerHTML = \"<code>\".concat(namespace, \"</code>\");\n notice.childNodes[1].appendChild(li);\n notice.scrollIntoView({\n behavior: \"smooth\",\n block: \"end\",\n inline: \"nearest\"\n });\n }\n }\n}\n/**\n * Set a request as failing so the endpoint is probably corrupt (see `corruptRestApi.tsx`)\n *\n * Please consider the following:\n *\n * > The fetch() function will automatically throw an error for network errors but not for HTTP errors such as 4xx or 5xx responses.\n *\n * @see https://jasonwatmore.com/post/2021/10/09/fetch-error-handling-for-failed-http-responses-and-network-errors\n */\n\n\nfunction addCorruptRestApi({\n method\n}, addNamespaceImmediate) {\n if (method === RouteHttpVerb.GET) {\n if (addNamespaceImmediate) {\n addToNotice(addNamespaceImmediate, () => {\n throw new Error();\n });\n } else {\n window.detectCorruptRestApiFailed = (window.detectCorruptRestApiFailed || 0) + 1;\n window.dispatchEvent(new CustomEvent(NOTICE_ID));\n }\n }\n}\n/**\n * Register a new endpoint which needs to resolve to a valid JSON result. In this way we\n * can detect a corrupt REST API namespace e. g. it is blocked through a security plugin.\n */\n\n\nfunction handleCorrupRestApi(resolve, forceRerequest = false) {\n // Initially set\n window.detectCorruptRestApiFailed = window.detectCorruptRestApiFailed || 0;\n\n const fnCheck = async () => {\n // Only in backend and when a corrupt REST API detected\n if (window.detectCorruptRestApiFailed > 0 || forceRerequest) {\n for (const namespace of Object.keys(resolve)) {\n addToNotice(namespace, resolve[namespace]);\n }\n }\n };\n\n let checkTimeout;\n\n const fnThrottled = () => {\n clearTimeout(checkTimeout);\n checkTimeout = setTimeout(fnCheck, 1000);\n };\n\n fnThrottled();\n window.addEventListener(NOTICE_ID, fnThrottled);\n}\n\nexport { addCorruptRestApi, handleCorrupRestApi };","import { RouteHttpVerb } from \".\";\n/**\n * Get the result of the `Response`. It also handles multiline responses, e. g.\n * a PHP `Notice:` message is output through a conflicting plugin:\n *\n * If you are using a verb like `DELETE` or `PUT` the response may be empty and this\n * function will return `undefined`.\n *\n * @see https://developer.mozilla.org/de/docs/Web/HTTP/Methods/DELETE\n */\n\nasync function parseResult(url, result, method) {\n // A `204 No content` response has no body, so we do not need to parse anything\n if (result.status === 204) {\n return {};\n }\n\n const cloneForFallback = result.clone();\n\n try {\n return await result.json();\n } catch (e) {\n // Something went wrong, try each line as result of a JSON string\n const body = await cloneForFallback.text(); // Respect empty responses for given verbs (DELETE, PUT)\n\n if (body === \"\" && [RouteHttpVerb.DELETE, RouteHttpVerb.PUT].indexOf(method) > -1) {\n return undefined;\n }\n\n console.warn(\"The response of \".concat(url, \" contains unexpected JSON, try to resolve the JSON line by line...\"), {\n body\n });\n let lastError;\n\n for (const line of body.split(\"\\n\")) {\n if (line.startsWith(\"[\") || line.startsWith(\"{\")) {\n try {\n return JSON.parse(line);\n } catch (e) {\n lastError = e;\n }\n }\n }\n\n throw lastError;\n }\n}\n\nexport { parseResult };","import { parseResult, nonceDeprecationPool, applyQueryString, commonUrlBuilder, RouteHttpVerb, addCorruptRestApi } from \".\";\nimport deepMerge from \"deepmerge\";\nimport jsonFormData from \"json-form-data\";\nconst CONTENT_TYPE_JSON = \"application/json;charset=utf-8\"; // Fix: Return type of exported function has or is using name 'FormatOptions'\n// from external module \"/home/mg/vscode-workspace/devowl-wp/node_modules/@types/json-form-data/index\" but cannot be named.\n// type MultiPartOptions = Parameters<typeof jsonFormData>[1];\n\n/**\n * Build and execute a specific REST query.\n *\n * @see urlBuilder\n * @returns Result of REST API\n * @throws\n */\nasync function commonRequest({\n location,\n options,\n request: routeRequest,\n params,\n settings = {},\n cookieValueAsParam,\n multipart = false,\n sendRestNonce = true\n}) {\n const namespace = location.namespace || options.restNamespace;\n const url = commonUrlBuilder({\n location,\n params,\n nonce: false,\n options,\n cookieValueAsParam\n }); // Use global parameter (see https://developer.wordpress.org/rest-api/using-the-rest-api/global-parameters/)\n\n if ([\"wp-json/\", \"rest_route=\"].filter(s => url.indexOf(s) > -1).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n settings.method = RouteHttpVerb.POST;\n } else {\n settings.method = location.method || RouteHttpVerb.GET;\n } // Request with GET/HEAD method cannot have body\n\n\n const apiUrl = new URL(url);\n const allowBody = [\"HEAD\", \"GET\"].indexOf(settings.method) === -1;\n\n if (!allowBody && routeRequest) {\n applyQueryString(apiUrl, [routeRequest], true);\n }\n\n const apiUrlBuilt = apiUrl.toString(); // Determine body\n\n let body;\n\n if (allowBody) {\n if (multipart) {\n // Let's create a multipart request...\n body = jsonFormData(routeRequest, typeof multipart === \"boolean\" ? {} : multipart);\n } else {\n // It is a usual JSON request, we do not need to send a multipart request\n body = JSON.stringify(routeRequest);\n }\n } // Do the request\n\n\n const restNonce = await nonceDeprecationPool(options.restNonce);\n const hasRestNonce = typeof restNonce !== \"undefined\";\n const init = deepMerge.all([settings, {\n headers: { ...(typeof body === \"string\" ? {\n \"Content-Type\": CONTENT_TYPE_JSON\n } : {}),\n ...(hasRestNonce && sendRestNonce ? {\n \"X-WP-Nonce\": restNonce\n } : {}),\n Accept: \"application/json, */*;q=0.1\"\n }\n }]);\n init.body = body; // Do not make body merge-able\n\n let result;\n\n try {\n result = await window.fetch(apiUrlBuilt, init);\n } catch (e) {\n // window.fetch does not throw by default, so there must be an error with the network or Ad-blocker\n addCorruptRestApi(settings, namespace);\n console.error(e);\n throw e;\n } // `window.fetch` does not throw an error if the server response an error code.\n\n\n if (!result.ok) {\n let responseJSON = undefined;\n let replay = false;\n\n try {\n responseJSON = await parseResult(apiUrlBuilt, result, location.method); // wordpress.com private site compatibility\n\n /* istanbul ignore if */\n\n if (responseJSON.code === \"private_site\" && result.status === 403 && hasRestNonce && !sendRestNonce) {\n replay = true;\n } // Refresh nonce automatically\n\n /* istanbul ignore if */\n\n\n if (responseJSON.code === \"rest_cookie_invalid_nonce\" && hasRestNonce) {\n const {\n restRecreateNonceEndpoint\n } = options;\n\n try {\n await nonceDeprecationPool(restNonce, restRecreateNonceEndpoint);\n replay = true;\n } catch (e) {// Silence is golden.\n }\n }\n } catch (e) {// Silence is golden.\n }\n\n if (replay) {\n return await commonRequest({\n location,\n options,\n multipart,\n params,\n request: routeRequest,\n sendRestNonce: true,\n settings\n });\n }\n\n addCorruptRestApi(settings);\n const resultAny = result;\n resultAny.responseJSON = responseJSON;\n throw resultAny;\n }\n\n return parseResult(apiUrlBuilt, result, location.method);\n}\n\nexport { commonRequest };","import { commonUrlBuilder, commonRequest } from \"./\";\n/**\n * Create a uri builder and request function for your specific plugin depending\n * on the rest root and additional parameters.\n *\n * @param options\n * @see urlBuilder\n * @see request\n */\n\nfunction createRequestFactory(options) {\n const urlBuilder = passOptions => commonUrlBuilder({ ...passOptions,\n options: {\n restNamespace: options.restNamespace,\n restNonce: options.restNonce,\n restQuery: options.restQuery,\n restRoot: options.restRoot\n }\n });\n\n const request = passOptions => commonRequest({ ...passOptions,\n options: {\n restNamespace: options.restNamespace,\n restNonce: options.restNonce,\n restQuery: options.restQuery,\n restRoot: options.restRoot,\n restRecreateNonceEndpoint: options.restRecreateNonceEndpoint\n }\n });\n\n return {\n urlBuilder,\n request\n };\n}\n\nexport { createRequestFactory };","const __WEBPACK_NAMESPACE_OBJECT__ = wp['i18n'];","const __WEBPACK_NAMESPACE_OBJECT__ = wp;","// @see https://github.com/Automattic/wp-calypso/blob/master/packages/i18n-calypso/src/index.js\nimport interpolate from \"interpolate-components\";\nimport * as wpi18n from \"@wordpress/i18n\";\nimport wp from \"wp\";\n\nfunction sprintf(message, ...args) {\n return wpi18n.sprintf(message, ...args);\n}\n/**\n * Create multiple functions for a specific plugin so they can be localized.\n *\n * @param slug The slug which you have registered your i18n assets\n * @returns\n */\n\n\nfunction createLocalizationFactory(slug) {\n const {\n wpi18nLazy\n } = window;\n\n if (wpi18nLazy && wpi18nLazy[slug] && wp && wp.i18n) {\n for (const localeData of wpi18nLazy[slug]) {\n wp.i18n.setLocaleData(localeData, slug);\n }\n }\n /**\n * Translates and retrieves the singular or plural form based on the supplied number.\n * For arguments sprintf is used, see http://www.diveintojavascript.com/projects/javascript-sprintf for\n * specification and usage.\n *\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#_n\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#sprintf\n */\n\n\n function _n(single, plural, count, ...args) {\n return sprintf(wpi18n._n(single, plural, count, slug), ...args);\n }\n /**\n * Translates and retrieves the singular or plural form based on the supplied number, with gettext context.\n * For arguments sprintf is used, see http://www.diveintojavascript.com/projects/javascript-sprintf for\n * specification and usage.\n *\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#_n\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#sprintf\n */\n\n\n function _nx(single, plural, context, count, ...args) {\n return sprintf(wpi18n._nx(single, plural, count, context, slug), ...args);\n }\n /**\n * Retrieve translated string with gettext context.\n * For arguments sprintf is used, see http://www.diveintojavascript.com/projects/javascript-sprintf for\n * specification and usage.\n *\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#_n\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#sprintf\n */\n\n\n function _x(single, context, ...args) {\n return sprintf(wpi18n._x(single, context, slug), ...args);\n }\n /**\n * Retrieve the translation of text.\n * For arguments sprintf is used, see http://www.diveintojavascript.com/projects/javascript-sprintf for\n * specification and usage.\n *\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#_n\n * @see https://github.com/WordPress/gutenberg/tree/master/packages/i18n#sprintf\n */\n\n\n function __(single, ...args) {\n return sprintf(wpi18n.__(single, slug), ...args);\n }\n /**\n * This function allows you to interpolate react components to your translations.\n * You have to pass an already translated string as argument! For this you can use the other\n * i18n functions like _n() or __().\n *\n * A translation can look like this: \"Hello {{a}}click me{{/a}}.\" and you have to pass\n * a component with key \"a\".\n */\n\n\n function _i(translation, components) {\n return interpolate({\n mixedString: translation,\n components\n });\n }\n\n return {\n _n,\n _nx,\n _x,\n __,\n _i\n };\n}\n\nexport { createLocalizationFactory, sprintf };","import { RouteHttpVerb } from \"../factory\";\nexport const locationRestPluginGet = {\n path: \"/plugin\",\n method: RouteHttpVerb.GET\n};","const __WEBPACK_NAMESPACE_OBJECT__ = mobx;","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _class2, _temp;\n\nimport { RouteHttpVerb } from \"../../factory\";\nimport { observable, flow } from \"mobx\";\nlet ClientCollection = (_class = (_temp = _class2 = class ClientCollection {\n constructor() {\n _initializerDefineProperty(this, \"entries\", _descriptor, this);\n\n _initializerDefineProperty(this, \"busy\", _descriptor2, this);\n\n this.annotated = void 0;\n this.get = flow(function* (data) {\n const {\n request,\n params,\n clear = false\n } = data || {};\n this.busy = true;\n\n try {\n const {\n path,\n namespace\n } = this.annotated;\n const response = yield this.annotated.request({\n location: {\n path,\n method: RouteHttpVerb.GET,\n namespace\n },\n request,\n params\n }); // Save cookies as models\n\n clear && this.entries.clear();\n\n for (const row of response) {\n const instance = this.instance(row);\n const existing = this.entries.get(instance.key);\n\n if (!existing) {\n this.entries.set(instance.key, instance);\n } else {\n // Update stale data\n existing.data = instance.data;\n }\n }\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.getSingle = flow(function* (data) {\n if (!this.annotated.singlePath) {\n throw new Error(\"There is no getSingle method allowed\");\n }\n\n const {\n request,\n params\n } = data || {};\n this.busy = true;\n\n try {\n const {\n singlePath,\n namespace\n } = this.annotated;\n const row = yield this.annotated.request({\n location: {\n path: singlePath,\n method: RouteHttpVerb.GET,\n namespace\n },\n request,\n params\n }); // Save cookie as model\n\n const instance = this.instance(row);\n this.entries.set(instance.key, instance);\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n setTimeout(() => {\n if (!this.annotated) {\n console.error(\"You have not used the @ClientCollection.annotate annoation together with this class!\");\n }\n }, 0);\n }\n\n}, _class2.annotate = annotate => {\n return constructor => {\n return class extends constructor {\n constructor(...args) {\n super(...args);\n this.annotated = annotate;\n }\n\n };\n };\n}, _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"entries\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return new Map();\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n})), _class);\nexport { ClientCollection };","import _initializerDefineProperty from \"@babel/runtime/helpers/initializerDefineProperty\";\nimport _applyDecoratedDescriptor from \"@babel/runtime/helpers/applyDecoratedDescriptor\";\nimport _initializerWarningHelper from \"@babel/runtime/helpers/initializerWarningHelper\";\n\nvar _class, _descriptor, _descriptor2, _descriptor3, _class2, _temp;\n\nimport { RouteHttpVerb } from \"../../factory\";\nimport { observable, computed, set, flow, runInAction } from \"mobx\";\nlet ClientModel = (_class = (_temp = _class2 = class ClientModel {\n get key() {\n var _this$data;\n\n return (_this$data = this.data) === null || _this$data === void 0 ? void 0 : _this$data[this.annotated.keyId];\n }\n\n constructor(collection, data = {}) {\n _initializerDefineProperty(this, \"data\", _descriptor, this);\n\n _initializerDefineProperty(this, \"collection\", _descriptor2, this);\n\n _initializerDefineProperty(this, \"busy\", _descriptor3, this);\n\n this.annotated = void 0;\n this.persist = flow(function* (params) {\n if (!this.annotated.create) {\n throw new Error(\"There is no persist method allowed\");\n }\n\n this.busy = true;\n\n try {\n const {\n create: {\n path,\n method\n },\n namespace\n } = this.annotated;\n const response = yield this.annotated.request({\n location: {\n path,\n method: method || RouteHttpVerb.POST,\n namespace\n },\n request: this.transformDataForPersist(),\n params: params || {}\n });\n this.fromResponse(response);\n this.collection.entries.set(this.key, this);\n this.afterPersist();\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.patch = flow(function* (params) {\n if (!this.annotated.patch) {\n throw new Error(\"There is no patch method allowed\");\n }\n\n this.busy = true;\n\n try {\n const {\n patch: {\n path,\n method\n },\n namespace\n } = this.annotated;\n const response = yield this.annotated.request({\n location: {\n path,\n method: method || RouteHttpVerb.PATCH,\n namespace\n },\n request: this.transformDataForPatch(),\n params: { ...{\n [this.annotated.keyId]: this.key\n },\n ...(params || {})\n }\n });\n this.fromResponse(response);\n this.afterPatch();\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n this.delete = flow(function* (params) {\n if (!this.annotated.delete) {\n throw new Error(\"There is no delete method allowed\");\n }\n\n this.busy = true;\n\n try {\n const {\n delete: {\n path,\n method\n },\n namespace\n } = this.annotated;\n const response = yield this.annotated.request({\n location: {\n path,\n method: method || RouteHttpVerb.DELETE,\n namespace\n },\n params: { ...{\n [this.annotated.keyId]: this.key\n },\n ...(params || {})\n }\n });\n this.collection.entries.delete(this.key);\n this.afterDelete();\n return response;\n } catch (e) {\n console.log(e);\n throw e;\n } finally {\n this.busy = false;\n }\n });\n setTimeout(() => {\n if (!this.annotated) {\n console.error(\"You have not used the @ClientModel.annotate annoation together with this class!\");\n }\n }, 0);\n runInAction(() => {\n this.collection = collection;\n this.data = data;\n });\n }\n\n fromResponse(response) {\n set(this.data, response);\n return this;\n } // eslint-disable-next-line @typescript-eslint/member-ordering\n\n\n /**\n * Transform the class-hold data to POSTable data. This can be useful if e. g.\n * one property differs from the response property schema.\n */\n transformDataForPersist() {\n return this.data;\n }\n /**\n * Create your conditionals here and return only changed values.\n */\n\n\n transformDataForPatch() {\n throw new Error(\"If you want to use patch method, you need to implement transformDataForPatch!\");\n }\n\n afterPersist() {// Silence is golden.\n }\n\n afterPatch() {// Silence is golden.\n }\n\n afterDelete() {// Silence is golden.\n }\n\n}, _class2.annotate = annotate => constructor => {\n return class extends constructor {\n constructor(...args) {\n super(...args);\n this.annotated = annotate;\n }\n\n };\n}, _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"data\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return {};\n }\n}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"collection\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"busy\", [observable], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n}), _applyDecoratedDescriptor(_class.prototype, \"key\", [computed], Object.getOwnPropertyDescriptor(_class.prototype, \"key\"), _class.prototype)), _class);\nexport { ClientModel };","import { ClientModel } from \"..\";\n\nclass AbstractPost extends ClientModel {\n transformDataForPersist() {\n var _data$title, _data$content;\n\n const data = { ...super.transformDataForPersist()\n };\n data.title = (_data$title = data.title) === null || _data$title === void 0 ? void 0 : _data$title.rendered;\n data.content = (_data$content = data.content) === null || _data$content === void 0 ? void 0 : _data$content.rendered;\n delete data._links;\n delete data.link;\n return data;\n }\n\n transformDataForPatch() {\n return this.transformDataForPersist();\n }\n\n}\n\nexport { AbstractPost };","import { ClientCollection } from \"..\";\n\nclass AbstractPostCollection extends ClientCollection {}\n\nexport { AbstractPostCollection };","import { ClientModel } from \"..\";\n\nclass AbstractCategory extends ClientModel {\n transformDataForPersist() {\n const data = { ...super.transformDataForPersist()\n };\n delete data._links;\n delete data.link;\n return data;\n }\n\n transformDataForPatch() {\n return this.transformDataForPersist();\n }\n\n}\n\nexport { AbstractCategory };","import { ClientCollection } from \"..\";\n\nclass AbstractCategoryCollection extends ClientCollection {}\n\nexport { AbstractCategoryCollection };","import { useCallback, useEffect, useState } from \"react\";\nimport wp from \"wp\";\n/**\n * @param chunkFile Use `__webpack_get_script_filename__`\n */\n\nfunction useChunkTranslation(chunkFile, {\n chunks,\n publicUrl,\n textDomain,\n version\n}) {\n const suffixes = chunks[chunkFile.split(\"?\")[0]]; // We need to remove the query argument from `output.chunkFilename`\n\n const exists = !!suffixes;\n const [done, setDone] = useState(false);\n const fetchTranslationBySuffix = useCallback(async suffix => {\n // Do never load twice\n const w = window;\n w.wpi18nLazy = w.wpi18nLazy || {};\n w.wpi18nLazy.chunkUrls = w.wpi18nLazy.chunkUrls || [];\n const {\n chunkUrls\n } = w.wpi18nLazy;\n const urlToJson = \"\".concat(publicUrl, \"languages/json/\").concat(textDomain, \"-\").concat(suffix, \".json\");\n\n if (exists && chunkUrls.indexOf(urlToJson) === -1) {\n chunkUrls.push(urlToJson);\n\n try {\n const response = await window.fetch(\"\".concat(urlToJson, \"?ver=\").concat(version));\n const {\n locale_data: {\n messages\n }\n } = await response.json();\n wp.i18n.setLocaleData(messages, textDomain);\n } catch {// Silence is golden.\n }\n }\n }, [publicUrl, textDomain]);\n useEffect(() => {\n if (exists) {\n Promise.all(suffixes.map(fetchTranslationBySuffix)).then(() => {\n setDone(true);\n });\n } else {\n setDone(true);\n }\n }, [exists, fetchTranslationBySuffix]);\n return done;\n}\n\nexport { useChunkTranslation };","import { useChunkTranslation } from \"../hooks\";\n\nconst SuspenseChunkTranslation = ({\n children,\n chunkFile,\n fallback,\n options\n}) => {\n const done = useChunkTranslation(chunkFile, options());\n return /*#__PURE__*/React.createElement(React.Fragment, null, done ? children : fallback);\n};\n\nexport { SuspenseChunkTranslation };","module.exports = React;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t826: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkdevowlWp_utils\"] = self[\"webpackChunkdevowlWp_utils\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [764], () => (__webpack_require__(550)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","BaseOptions","constructor","this","slug","textDomain","version","restUrl","restNamespace","restRoot","restQuery","restNonce","restRecreateNonceEndpoint","publicUrl","chunkFolder","chunks","static","replace","g","toUpperCase","camelCase","slugCamelCase","untrailingslashit","str","endsWith","slice","trailingslashit","concat","getWebpackPublicPath","options","window","RouteHttpVerb","createContextFactory","object","StoreContext","createContext","StoreProvider","children","React","createElement","Provider","value","useStores","useContext","applyQueryString","url","query","merge","search","commonUrlBuilder","location","params","nonce","cookieValueAsParam","apiUrl","URL","permalinkPath","rest_route","pathname","foundParams","path","match","group","push","getParams","checkParam","Object","keys","indexOf","_httpCookieInvalidate","JSON","stringify","map","pathSearch","fixedPathName","href","parsed","pathSearchEntry","protocol","usePath","namespace","_wpnonce","filter","s","toString","length","method","GET","_method","pool","recreateFetchPool","async","nonceDeprecationPool","resultPromise","Promise","resolve","reject","recreateFetch","fetch","ok","newNonce","text","e","all","values","returnNonce","NOTICE_ID","addToNotice","onlyWhen","notice","document","getElementById","querySelector","innerText","style","display","li","innerHTML","childNodes","appendChild","scrollIntoView","behavior","block","inline","addCorruptRestApi","addNamespaceImmediate","Error","detectCorruptRestApiFailed","dispatchEvent","CustomEvent","handleCorrupRestApi","forceRerequest","fnCheck","checkTimeout","fnThrottled","clearTimeout","setTimeout","addEventListener","parseResult","result","status","cloneForFallback","clone","json","body","DELETE","PUT","lastError","console","warn","line","split","startsWith","parse","commonRequest","request","routeRequest","settings","multipart","sendRestNonce","POST","allowBody","apiUrlBuilt","hasRestNonce","init","headers","Accept","error","responseJSON","replay","code","resultAny","createRequestFactory","urlBuilder","passOptions","wp","sprintf","message","args","createLocalizationFactory","wpi18nLazy","localeData","_n","single","plural","count","_nx","context","_x","__","_i","translation","components","mixedString","locationRestPluginGet","mobx","_class","_descriptor","_descriptor2","_class2","_temp","ClientCollection","annotated","get","flow","data","clear","busy","response","entries","row","instance","existing","key","set","log","getSingle","singlePath","annotate","super","prototype","observable","configurable","enumerable","writable","initializer","Map","_descriptor3","ClientModel","_this$data","keyId","collection","persist","create","transformDataForPersist","fromResponse","afterPersist","patch","PATCH","transformDataForPatch","afterPatch","delete","afterDelete","runInAction","computed","getOwnPropertyDescriptor","AbstractPost","_data$title","_data$content","title","rendered","content","_links","link","AbstractPostCollection","AbstractCategory","AbstractCategoryCollection","useChunkTranslation","chunkFile","suffixes","exists","done","setDone","useState","fetchTranslationBySuffix","useCallback","w","chunkUrls","urlToJson","suffix","locale_data","messages","useEffect","then","SuspenseChunkTranslation","fallback","Fragment","module","exports","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","obj","prop","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","id","chunkLoadingGlobal","self","forEach","bind","__webpack_exports__"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///./lib/options.tsx","webpack:///./lib/helpers.tsx","webpack:///./lib/factory/ajax/routeHttpVerbEnum.tsx","webpack:///./lib/factory/context.tsx","webpack:///./lib/factory/ajax/commonUrlBuilder.tsx","webpack:///./lib/factory/ajax/nonceDeprecationPool.tsx","webpack:///./lib/factory/ajax/corruptRestApi.tsx","webpack:///./lib/factory/ajax/parseResult.tsx","webpack:///./lib/factory/ajax/commonRequest.tsx","webpack:///./lib/factory/ajax/createRequestFactory.tsx","webpack:///external var \"wp['i18n']\"","webpack:///external var \"wp\"","webpack:///./lib/factory/i18n.tsx","webpack:///./lib/wp-api/rest.plugin.get.tsx","webpack:///external var \"mobx\"","webpack:///./lib/wp-api/objects/clientCollection.tsx","webpack:///./lib/wp-api/objects/clientModel.tsx","webpack:///./lib/wp-api/objects/post/abstractPost.tsx","webpack:///./lib/wp-api/objects/post/abstractPostCollection.tsx","webpack:///./lib/wp-api/objects/post/abstractCategory.tsx","webpack:///./lib/wp-api/objects/post/abstractCategoryCollection.tsx","webpack:///./lib/hooks/useChunkTranslation.tsx","webpack:///./lib/components/suspenseChunkTranslation.tsx","webpack:///external var \"React\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * See PHP file inc/Assets.php.\n */\nclass BaseOptions {\n constructor() {\n this.slug = void 0;\n this.textDomain = void 0;\n this.version = void 0;\n this.restUrl = void 0;\n this.restNamespace = void 0;\n this.restRoot = void 0;\n this.restQuery = void 0;\n this.restNonce = void 0;\n this.restRecreateNonceEndpoint = void 0;\n this.publicUrl = void 0;\n this.chunkFolder = void 0;\n this.chunks = void 0;\n }\n\n /**\n * Convert a slug like \"my-plugin\" to \"myPlugin\". This can\n * be useful for library naming (window[\"\"] is bad because the hyphens).\n */\n static slugCamelCase(slug) {\n return slug.replace(/-([a-z])/g, g => g[1].toUpperCase());\n }\n /**\n * Get the slug from the current process (webpack) instead of the PHP plugin output.\n * For some cases you need to use that.\n */\n\n\n static getPureSlug(slug, camelCase = false) {\n return camelCase ? BaseOptions.slugCamelCase(slug) : slug;\n }\n\n}\n\nexport { BaseOptions };","const untrailingslashit = str => str.endsWith(\"/\") || str.endsWith(\"\\\\\") ? untrailingslashit(str.slice(0, -1)) : str;\n\nconst trailingslashit = str => \"\".concat(untrailingslashit(str), \"/\"); // Allows to make an interface extension and make some properties optional (https://git.io/JeK6J)\n\n\n/**\n * You need to manually put the following code snippet in each of your entry points to enable\n * \"on the fly\" public path for chunks:\n *\n * ```\n * __webpack_public_path__ = getWebpackPublicPath(process.env.slug);\n * ```\n *\n * @see https://webpack.js.org/guides/public-path/#on-the-fly\n */\nconst getWebpackPublicPath = slug => {\n const options = window[slug.replace(/-([a-z])/g, g => g[1].toUpperCase())];\n return \"\".concat(options.publicUrl).concat(options.chunkFolder, \"/\");\n};\n\nexport { untrailingslashit, trailingslashit, getWebpackPublicPath };","var RouteHttpVerb;\n\n(function (RouteHttpVerb) {\n RouteHttpVerb[\"GET\"] = \"GET\";\n RouteHttpVerb[\"POST\"] = \"POST\";\n RouteHttpVerb[\"PUT\"] = \"PUT\";\n RouteHttpVerb[\"DELETE\"] = \"DELETE\";\n RouteHttpVerb[\"PATCH\"] = \"PATCH\";\n})(RouteHttpVerb || (RouteHttpVerb = {}));\n\nexport { RouteHttpVerb };","import { createContext, useContext } from \"react\";\n/* istanbul ignore next: no logic in this factory! */\n\n/**\n * Create context relevant objects to use within React.\n *\n * @param object\n * @returns\n */\n\nfunction createContextFactory(object) {\n /**\n * MobX stores collection\n */\n const StoreContext = /*#__PURE__*/createContext(object);\n /**\n * MobX HOC to get the context via hook.\n *\n * @param children\n */\n\n const StoreProvider = ({\n children\n }) => /*#__PURE__*/React.createElement(StoreContext.Provider, {\n value: object\n }, children);\n /**\n * Get all the MobX stores via a single hook.\n */\n\n\n const useStores = () => useContext(StoreContext);\n\n return {\n StoreContext,\n StoreProvider,\n useStores\n };\n}\n\nexport { createContextFactory };","import { trailingslashit, untrailingslashit } from \"../../helpers\";\nimport { RouteHttpVerb } from \".\";\nimport deepMerge from \"deepmerge\";\nimport qs from \"querystringify\";\nimport Cookie from \"js-cookie\";\nimport sha1 from \"sha-1\";\n\nfunction applyQueryString(url, query, merge) {\n url.search = qs.stringify(merge ? deepMerge.all([qs.parse(url.search), ...query]) : query, true);\n return url;\n}\n/**\n * Build an URL for a specific scheme.\n *\n * @param param0\n */\n\n\nfunction commonUrlBuilder({\n location,\n params = {},\n nonce = true,\n options,\n cookieValueAsParam\n}) {\n const apiUrl = new URL(options.restRoot);\n const query = qs.parse(apiUrl.search);\n const permalinkPath = query.rest_route || apiUrl.pathname; // Determine path from permalink settings\n // Find dynamic parameters from URL bindings (like /user/:id)\n\n const foundParams = [];\n let path = location.path.replace(/:([A-Za-z0-9-_]+)/g, (match, group) => {\n foundParams.push(group);\n return params[group];\n });\n const getParams = {}; // Find undeclared body params (which are not bind above) and add it to GET query\n\n for (const checkParam of Object.keys(params)) {\n if (foundParams.indexOf(checkParam) === -1) {\n getParams[checkParam] = params[checkParam]; // We do not need `encodeURIComponent` as it is supported by `querystringify` already\n }\n } // Calculate invalidator for cookie values\n\n\n if (cookieValueAsParam) {\n getParams._httpCookieInvalidate = sha1(JSON.stringify(cookieValueAsParam.map(Cookie.get)));\n } // Find parameters from passed location\n\n\n const {\n search: pathSearch,\n pathname: fixedPathName\n } = new URL(location.path, window.location.href);\n\n if (pathSearch) {\n const parsed = qs.parse(pathSearch);\n\n for (const pathSearchEntry in parsed) {\n getParams[pathSearchEntry] = parsed[pathSearchEntry];\n }\n\n path = fixedPathName;\n } // Force protocol from parent location\n\n\n apiUrl.protocol = window.location.protocol; // Set path depending on permalink settings\n\n const usePath = trailingslashit(permalinkPath) + untrailingslashit(location.namespace || options.restNamespace) + path;\n\n if (query.rest_route) {\n query.rest_route = usePath; // eslint-disable-line @typescript-eslint/naming-convention\n } else {\n apiUrl.pathname = usePath; // Set path\n } // Append WordPress REST nonce\n\n\n if (nonce && options.restNonce) {\n query._wpnonce = options.restNonce;\n } // Determine if non-GET verbs should always use `POST`\n\n\n applyQueryString(apiUrl, query);\n\n if ([\"wp-json/\", \"rest_route=\"].filter(s => apiUrl.toString().indexOf(s) > -1).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n applyQueryString(apiUrl, [{\n _method: location.method\n }], true);\n } // Build final search\n\n\n applyQueryString(apiUrl, [options.restQuery, getParams], true);\n return apiUrl.toString();\n}\n\nexport { commonUrlBuilder, applyQueryString, qs };","const pool = {};\nconst recreateFetchPool = {};\n/**\n * A REST nonce in WordPress is only valid for 12 hours (can be configured). However, if it gets\n * invalid, the REST endpoints return a `403` error which signals us, we should recreate the nonce.\n * To avoid multiple recreations, we memorize the newly created nonce in a pool.\n */\n\nasync function nonceDeprecationPool(nonce, restRecreateNonceEndpoint) {\n if (typeof restRecreateNonceEndpoint !== \"undefined\") {\n const resultPromise = // Reuse already sent request\n recreateFetchPool[nonce] || new Promise( // eslint-disable-next-line no-async-promise-executor\n async (resolve, reject) => {\n try {\n const recreateFetch = await window.fetch(restRecreateNonceEndpoint, {\n method: \"POST\"\n });\n\n if (recreateFetch.ok) {\n const newNonce = await recreateFetch.text();\n\n if (nonce === newNonce) {\n reject();\n } else {\n pool[nonce] = newNonce;\n resolve(newNonce);\n }\n } else {\n reject();\n }\n } catch (e) {\n reject();\n }\n });\n recreateFetchPool[nonce] = resultPromise;\n return resultPromise;\n } else {\n if (typeof nonce === \"undefined\") {\n return undefined;\n } // Wait until all nonces are refreshed\n\n\n await Promise.all(Object.values(recreateFetchPool));\n let returnNonce = nonce;\n\n while (pool[returnNonce]) {\n returnNonce = pool[returnNonce];\n\n if (pool[returnNonce] === nonce) {\n break;\n }\n }\n\n return Promise.resolve(returnNonce);\n }\n}\n\nexport { nonceDeprecationPool };","import { RouteHttpVerb } from \".\";\nconst NOTICE_ID = \"notice-corrupt-rest-api\"; // eslint-disable-next-line @typescript-eslint/no-empty-function\n\nasync function addToNotice(namespace, onlyWhen = async () => {}) {\n const notice = document.getElementById(NOTICE_ID); // Only in backend and when a corrupt REST API detected\n\n if (notice) {\n // Already shown as \"defect\"?\n if (notice.querySelector(\"ul\").innerText.indexOf(namespace) > -1) {\n return;\n }\n\n try {\n await onlyWhen();\n } catch (e) {\n notice.style.display = \"block\";\n const li = document.createElement(\"li\");\n li.innerHTML = \"<code>\".concat(namespace, \"</code>\");\n notice.childNodes[1].appendChild(li);\n notice.scrollIntoView({\n behavior: \"smooth\",\n block: \"end\",\n inline: \"nearest\"\n });\n }\n }\n}\n/**\n * Set a request as failing so the endpoint is probably corrupt (see `corruptRestApi.tsx`)\n *\n * Please consider the following:\n *\n * > The fetch() function will automatically throw an error for network errors but not for HTTP errors such as 4xx or 5xx responses.\n *\n * @see https://jasonwatmore.com/post/2021/10/09/fetch-error-handling-for-failed-http-responses-and-network-errors\n */\n\n\nfunction addCorruptRestApi({\n method\n}, addNamespaceImmediate) {\n if (method === RouteHttpVerb.GET) {\n if (addNamespaceImmediate) {\n addToNotice(addNamespaceImmediate, () => {\n throw new Error();\n });\n } else {\n window.detectCorruptRestApiFailed = (window.detectCorruptRestApiFailed || 0) + 1;\n window.dispatchEvent(new CustomEvent(NOTICE_ID));\n }\n }\n}\n/**\n * Register a new endpoint which needs to resolve to a valid JSON result. In this way we\n * can detect a corrupt REST API namespace e. g. it is blocked through a security plugin.\n */\n\n\nfunction handleCorrupRestApi(resolve, forceRerequest = false) {\n // Initially set\n window.detectCorruptRestApiFailed = window.detectCorruptRestApiFailed || 0;\n\n const fnCheck = async () => {\n // Only in backend and when a corrupt REST API detected\n if (window.detectCorruptRestApiFailed > 0 || forceRerequest) {\n for (const namespace of Object.keys(resolve)) {\n addToNotice(namespace, resolve[namespace]);\n }\n }\n };\n\n let checkTimeout;\n\n const fnThrottled = () => {\n clearTimeout(checkTimeout);\n checkTimeout = setTimeout(fnCheck, 1000);\n };\n\n fnThrottled();\n window.addEventListener(NOTICE_ID, fnThrottled);\n}\n\nexport { addCorruptRestApi, handleCorrupRestApi };","import { RouteHttpVerb } from \".\";\n/**\n * Get the result of the `Response`. It also handles multiline responses, e. g.\n * a PHP `Notice:` message is output through a conflicting plugin:\n *\n * If you are using a verb like `DELETE` or `PUT` the response may be empty and this\n * function will return `undefined`.\n *\n * @see https://developer.mozilla.org/de/docs/Web/HTTP/Methods/DELETE\n */\n\nasync function parseResult(url, result, method) {\n // A `204 No content` response has no body, so we do not need to parse anything\n if (result.status === 204) {\n return {};\n }\n\n const cloneForFallback = result.clone();\n\n try {\n return await result.json();\n } catch (e) {\n // Something went wrong, try each line as result of a JSON string\n const body = await cloneForFallback.text(); // Respect empty responses for given verbs (DELETE, PUT)\n\n if (body === \"\" && [RouteHttpVerb.DELETE, RouteHttpVerb.PUT].indexOf(method) > -1) {\n return undefined;\n }\n\n console.warn(\"The response of \".concat(url, \" contains unexpected JSON, try to resolve the JSON line by line...\"), {\n body\n });\n let lastError;\n\n for (const line of body.split(\"\\n\")) {\n if (line.startsWith(\"[\") || line.startsWith(\"{\")) {\n try {\n return JSON.parse(line);\n } catch (e) {\n lastError = e;\n }\n }\n }\n\n throw lastError;\n }\n}\n\nexport { parseResult };","import { parseResult, nonceDeprecationPool, applyQueryString, commonUrlBuilder, RouteHttpVerb, addCorruptRestApi } from \".\";\nimport deepMerge from \"deepmerge\";\nimport jsonFormData from \"json-form-data\";\nconst CONTENT_TYPE_JSON = \"application/json;charset=utf-8\"; // Fix: Return type of exported function has or is using name 'FormatOptions'\n// from external module \"/home/mg/vscode-workspace/devowl-wp/node_modules/@types/json-form-data/index\" but cannot be named.\n// type MultiPartOptions = Parameters<typeof jsonFormData>[1];\n\n/**\n * Build and execute a specific REST query.\n *\n * @see urlBuilder\n * @returns Result of REST API\n * @throws\n */\nasync function commonRequest({\n location,\n options,\n request: routeRequest,\n params,\n settings = {},\n cookieValueAsParam,\n multipart = false,\n sendRestNonce = true\n}) {\n const namespace = location.namespace || options.restNamespace;\n const url = commonUrlBuilder({\n location,\n params,\n nonce: false,\n options,\n cookieValueAsParam\n }); // Use global parameter (see https://developer.wordpress.org/rest-api/using-the-rest-api/global-parameters/)\n\n if ([\"wp-json/\", \"rest_route=\"].filter(s => url.indexOf(s) > -1).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n settings.method = RouteHttpVerb.POST;\n } else {\n settings.method = location.method || RouteHttpVerb.GET;\n } // Request with GET/HEAD method cannot have body\n\n\n const apiUrl = new URL(url);\n const allowBody = [\"HEAD\", \"GET\"].indexOf(settings.method) === -1;\n\n if (!allowBody && routeRequest) {\n applyQueryString(apiUrl, [routeRequest], true);\n }\n\n const apiUrlBuilt = apiUrl.toString(); // Determine body\n\n let body;\n\n if (allowBody) {\n if (multipart) {\n // Let's create a multipart request...\n body = jsonFormData(routeRequest, typeof multipart === \"boolean\" ? {} : multipart);\n } else {\n // It is a usual JSON request, we do not need to send a multipart request\n body = JSON.stringify(routeRequest);\n }\n } // Do the request\n\n\n const restNonce = await nonceDeprecationPool(options.restNonce);\n const hasRestNonce = typeof restNonce !== \"undefined\";\n const init = deepMerge.all([settings, {\n headers: { ...(typeof body === \"string\" ? {\n \"Content-Type\": CONTENT_TYPE_JSON\n } : {}),\n ...(hasRestNonce && sendRestNonce ? {\n \"X-WP-Nonce\": restNonce\n } : {}),\n Accept: \"application/json, */*;q=0.1\"\n }\n }]);\n init.body = body; // Do not make body merge-able\n\n let result;\n\n try {\n result = await window.fetch(apiUrlBuilt, init);\n } catch (e) {\n // window.fetch does not throw by default, so there must be an error with the network or Ad-blocker\n addCorruptRestApi(settings, namespace);\n console.error(e);\n throw e;\n } // `window.fetch` does not throw an error if the server response an error code.\n\n\n if (!result.ok) {\n let responseJSON = undefined;\n let replay = false;\n\n try {\n responseJSON = await parseResult(apiUrlBuilt, result, location.method); // wordpress.com private site compatibility\n\n /* istanbul ignore if */\n\n if (responseJSON.code === \"private_site\" && result.status === 403 && hasRestNonce && !sendRestNonce) {\n replay = true;\n } // Refresh nonce automatically\n\n